|
Поиск по сайту:
Главная
О проекте
Web-мастеру
HTML & JavaScript
SSI
Perl
PHP
XML & XSLT
Unix Shell
MySQL
Безопасность
Хостинг
Другое
|
|
Глава 13. Команды системного администрирования
Управление заданиями
- ps
-
Process
Statistics: Список
исполняющихся в данный момент процессов. Обычно
вызывается с ключами ax, вывод
команды может быть обработан командами grep или sed, с
целью поиска требуемого процесса (см. Пример 11-11 и Пример 27-2).
bash$ ps ax | grep sendmail
295 ? S 0:00 sendmail: accepting connections on port 25
- pstree
-
Список исполняющихся процессов в виде "дерева". С ключом -p -- вместе с именами процессов отображает
их PID.
- top
-
Выводит список наиболее активных процессов. С ключом
-b -- отображение ведется в
обычном текстовом режиме, что дает возможность анализа
вывода от команды внутри сценария.
bash$ top -b
8:30pm up 3 min, 3 users, load average: 0.49, 0.32, 0.13
45 processes: 44 sleeping, 1 running, 0 zombie, 0 stopped
CPU states: 13.6% user, 7.3% system, 0.0% nice, 78.9% idle
Mem: 78396K av, 65468K used, 12928K free, 0K shrd, 2352K buff
Swap: 157208K av, 0K used, 157208K free 37244K cached
PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND
848 bozo 17 0 996 996 800 R 5.6 1.2 0:00 top
1 root 8 0 512 512 444 S 0.0 0.6 0:04 init
2 root 9 0 0 0 0 SW 0.0 0.0 0:00 keventd
...
- nice
-
Запускает фоновый процесс с заданным приоритетом.
Приоритеты могут задаваться числом из диапазона от 19
(низший приоритет) до -20 (высший приоритет). Но только
root может указать значение
приоритета меньше нуля (отрицательные значения). См. так
же команды renice,
snice и skill.
- nohup
-
Запуск команд в режиме игнорирования сигналов
прерывания и завершения, что предотвращает завершение
работы команды даже если пользователь, запустивший ее,
вышел из системы. Если после команды не указан символ
&, то она будет
исполняться как процесс "переднего плана". Если
вы собираетесь использовать nohup в сценариях, то вам потребуется
использовать его в связке с командой wait, чтобы не породить процесс "зомби".
- pidof
-
Возвращает идентификатор процесса (pid) по его
имени. Поскольку многие команды управления процессами,
такие как kill и renice, требуют указать pid процесса,
а не его имя, то pidof
может сослужить неплохую службу при идентификации
процесса по его имени. Эта коменда может рассматриваться
как приблизительный эквивалент внутренней переменной
$PPID.
bash$ pidof xclock
880
Пример 13-5. Использование команды pidof при
остановке процесса
#!/bin/bash
# kill-process.sh
NOPROCESS=2
process=xxxyyyzzz # Несуществующий процесс.
# Только в демонстрационных целях...
# ... чтобы не уничтожить этим сценарием какой-нибудь процесс.
#
# Если с помощью этого сценария вы задумаете разрыватть связь с Internet, то
# process=pppd
t=`pidof $process` # Поиск pid (process id) процесса $process.
# pid требует команда 'kill' (невозможно остановить процесс, указав его имя).
if [ -z "$t" ] # Если процесс с таким именем не найден, то 'pidof' вернет null.
then
echo "Процесс $process не найден."
exit $NOPROCESS
fi
kill $t # В некоторых случаях может потребоваться 'kill -9'.
# Здесь нужно проверить -- был ли уничтожен процесс.
# Возможно так: " t=`pidof $process` ".
# Этот сценарий мог бы быть заменен командой
# kill $(pidof -x process_name)
# но это было бы не так поучительно.
exit 0
- fuser
-
Возвращает идентификаторы процессов, использующих
указанный файл(ы) или каталог. С ключом -k, завершает найденые процессы. Может с
успехом использоваться для защиты системы, особенно в
сценариях разграничения доступа к системным службам.
- cron
-
Планировщик заданий. С его помощью выполняются такие
задачи, как очистка и удаление устаревших файлов
системных журналов, обновление базы данных slocate. Это суперпользовательская
версия команды at (хотя любой
пользователь может создать собственную таблицу crontab). Эта утилита запускается как
фоновый процесс-daemon и
выполняет задания, находящиеся в файле /etc/crontab.
|
В некоторых дистрибутивах Linux, в качестве crond используется версия cron от Matthew Dillon.
|
Назад | Вперед
Содержание (общее) | Содержание раздела
Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
|
|
|