Системное администрирование может быть трудоемкой и трудоемкой работой, и многие веб-разработчики специально назначают эти обязанности сотруднику или сисадмину по контракту, чтобы обеспечить оптимальную работу серверов.
Однако не каждый веб-бизнес экономически готов нанять административный персонал и самостоятельно решать эти задачи. Во-вторых, не каждый веб-дизайнер или разработчик имеет опыт системного администратора и часто учится на лету.
Командная строка может быть пугающей, но также очень удобной, когда обязанности требуют мониторинга производительности и контроля запущенных процессов на сервере. Для тех, кто обращается к своим серверам через telnet или защищенную оболочку (SSH), ниже перечислены две функции командной строки, которые могут помочь вам в повседневном надзоре за веб-серверами.
Мониторинг производительности
Команды top и ps дают ценную информацию о том, что работает на вашем сервере, и какие ресурсы используются.
Инструмент top (много информации, набрав man top в командной строке), показывает список запущенных процессов и ресурсы, которые они используют (CPU, RAM, space). Команда имеет опции для сортировки результатов и является интерактивной, постоянно обновляется.
Команда ps предоставляет список запущенных процессов, с которыми пользователь инициировал процесс или службу, использование ресурсов и продолжительность выполнения процесса.
Я склонен использовать ps -aux, в котором перечислены все запущенные процессы всех пользователей, в том числе и без терминалов (например, демоны, которые запускаются при загрузке сервера).
Список включает в себя идентификатор процесса (PID), который полезен, если вам нужно остановить запущенный процесс или определить службу, которая не авторизована.
Команда kill использует PID для остановки (или уничтожения) процесса. Обратите внимание, что уничтожение некорректно прерывает запущенный процесс, поэтому убедитесь, что вы хотите остановить процесс или приложение перед его использованием. Традиционно вам нужны права суперпользователя, чтобы выполнить команду kill (или быть пользователем root).
Я включил снимок экрана команды top, запущенной в моей системе OS X, в качестве примера предоставленной статистики. Я часто оставляю терминал открытым с максимальной эффективностью при ручном мониторинге сервера в течение любого длительного периода времени.