Денис Колисниченко - Linux: Полное руководство Страница 63
- Категория: Компьютеры и Интернет / Программное обеспечение
- Автор: Денис Колисниченко
- Год выпуска: -
- ISBN: -
- Издательство: -
- Страниц: 158
- Добавлено: 2020-11-04 18:52:01
Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних просмотр данного контента СТРОГО ЗАПРЕЩЕН! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту pbn.book@yandex.ru для удаления материала
Денис Колисниченко - Linux: Полное руководство краткое содержание
Прочтите описание перед тем, как прочитать онлайн книгу «Денис Колисниченко - Linux: Полное руководство» бесплатно полную версию:Данная книга представляет собой великолепное руководство по Linux, позволяющее получить наиболее полное представление об этой операционной системе. Книга состоит из трех частей, каждая из которых раскрывает один из трех основных аспектов работы с Linux: Linux для пользователя, сетевые технологии Linux (и методика настройки Linux-сервера), программирование Linux. В книге охвачен очень широкий круг вопросов, начиная с установки и использования Linux «в обычной жизни» (офисные пакеты, игры, видео, Интернет), и заканчивая описанием внутренних процессов Linux, секретами и трюками настройки, особенностями программирования под Linux, созданием сетевых приложений, оптимизацией ядра и др.Изложение материала ведется в основном на базе дистрибутивов Fedora Cora (Red Hat) и Mandriva (Mandrake). Однако не оставлены без внимания и другие дистрибутивы SuSe, Slackware, Gentoo, Alt Linux, Knоppix. Дается их сравнительное описание, a по ходу изложения всего материала указываются их особенности.Книга написана известными специалистами и консультантами по использованию Linux, авторами многих статей и книг по Linux, заслуживших свое признание в самых широких Linux-кругах. Если вы желаете разобраться в особенностях Linux и познать ее внутренний мир, эта книга — ваш лучший выбор.
Денис Колисниченко - Linux: Полное руководство читать онлайн бесплатно
Если вы хотите сами создать сценарий для запуска своего демона, можете воспользоваться шаблоном, приведенным в листинге 9.3.
Листинг 9.3. Шаблон для запуска демона
#!/bin/bash
#
# Подключаем библиотеку функций
. /etc/init.d/functions
#
# Определяем параметры
case "$!" in
start)
# Запуск демона
echo "Starting my_daemon..."
daemon my_daemon
touch /var/lock/subsys/my_daemon
;;
stop)
# Останов демона
killproc my_daemon
rm -f /var/lock/subsys/my_daemon
rm -f /var/run/my_daemon.pid
;;
status)
# Выводим статистику работы
;;
restart | reload)
# действия, выполняемые при перезагрузке демона
;;
*)
# Произошел вызов без параметров
echo "Usage: my_daemon {start|stop|status|restart|reload}"
exit 1
esac
exit 0
После того, как в процессе инициализации системы будет выполнен загрузочный сценарий уровня но умолчанию, последним выполняется сценарий /etc/rc.local. Выполнив все сценарии, init переходит к другим записям в /etc/inittab, относящимся к текущему уровню. Обычно там остаются только перезапускаемые (respawn) действия: процессы, которые init запускает в фоне, а когда какой-нибудь из них завершается, запускает вновь. Так ведут себя процессы *getty, обслуживающие виртуальные консоли, и менеджер дисплеев системы X Window. Инициализация системы считается законченной, когда запушены все перезапускаемые процессы и init остается только следить за ними.
9.2. Команды управления процессами
9.2.1. Иерархия процессов: ps и pstree
О том, что команда ps позволяет просмотреть сведения обо всех процессах, протекающих в системе в данный момент, вы уже знаете (п.3.2). С ключом -f эта команда выводит как PID самого процесса, так и PPID его родителя, то есть по ее выводу можно восстановить всю структуру дерева процессов до их общего предка — процесса init. «Древовидный» взгляд может понадобиться, например, если вам нужно уничтожить целую группу процессов, происходящих от общего предка: в этом случае вы можете не убивать их по очереди, а просто послать сигнал TERM их родительскому процессу.
Команда pstree представляет дерево процессов сразу в наглядном виде:
$ pstree
init┬acpid
├atd
├bonobo-activati
...
├crond
├gconfd-2
├gdm-binary──gdm-binary┬X
│ └gnome-session
├gnome-panel
├gnome-settings-
├gnome-terminal┬bash─pstrее
│ ├bash─su─bash─man─sh─sh—i┬less
│ │ └─nroff—iconv
│ ├bash─su─bash
│ └gnome-pty-helpe
...
├syslogd
├udevd
└xinetd
Ключ -p выводит вместе с именем процесса его PID, а ключ -u — имя пользователя, запустившего процесс. Если в качестве аргумента указать PID, то команда выведет не все дерево, а только ветку потомков процесса с этим PID. Имя пользователя в качестве аргумента требует вывести все ветки процессов, запущенных этим пользователем: у них общего предка может и не быть.
9.2.2. Информация о ресурсах системы: команды free, df, du
Команда free показывает общее количество занятой и свободной памяти: физической, в разделе подкачки и в буферах ядра. По умолчанию объем памяти выводится в килобайтах, а ключи -b и -m позволяют измерять его в байтах и мегабайтах соответственно.
Ключ -s <число> требует опрашивать систему непрерывно, через каждые <число> секунд, пока вы не прервете выполнение команды, нажав Ctrl+С.
Команды df (disk free) и du (disk usage) показывают, сколько места доступно и занято на жестком диске.
Утилита df выводит сведения о дисковом пространстве на всех смонтированных в данный момент файловых системах — как локальных, так и сетевых:
$ df
Файловая система 1K-блоков Исп Доступно Исп% смонтирована на
/dev/hda4 22200824 4630864 16442200 22% /
/dev/hda2 101105 8383 87501 9% /boot
/dev/hda6 10221420 1737440 8483980 17% /mnt/win_disk_e
//user5/share 7543680 4623488 2920192 62% /mnt/win_user5
С ключом -i команда df измеряет дисковое пространство не в блоках, а в индексных дескрипторах (п.2.2.1), а с ключом -T показывает тип файловой системы. О других ключах можно узнать, как обычно, на man-странице.
Команда du показывает, сколько места занимает каждый подкаталог каталогов, указанных в качестве аргумента (если аргументы не указаны, то это будет текущий каталог), и подсчитывает общий итог. Если у вас недостаточно прав на просмотр некоторых подкаталогов, то итог будет отличаться от правильного на размер запрещенных каталогов.
9.2.3. Процессы в реальном времени: команда top
Команда top предназначена для наблюдения за процессами в реальном времени и интерактивного управления ими. Терминал, на котором запущена программа top, превращается в окно, разделенное на области (рис. 9.4, сверху вниз):
♦ сведения о системе — продолжительность текущего сеанса, количество задач, использование памяти и процессора, средняя длина очереди задач, ожидающих выполнения (load average) и т.п.;
♦ командная строка;
♦ заголовки столбцов;
♦ область задач. Задачи в терминологии top — это не только пользовательские процессы — потомки init, но и системные процессы — части ядра.
Рис. 9.4. Программа top запущена на виртуальном терминале
Каждые несколько секунд (по умолчанию 3 секунды) окно обновляется.
В командную строку можно вводить команды управления самими задачами или порядком отображения сведений в окне программы top. Вот некоторые из таких команд:
♦ h — вызов справки;
♦ q — завершение работы программы (для выхода можно нажать и комбинацию Ctrl+C);
♦ u — показывать только процессы, запущенные определенным пользователем (следует указывать его регистрационное имя, а не UID);
♦ d — изменить интервал обновления;
♦ f — добавить или удалить столбцы;
♦ F — изменить столбец, по которому сортируются задачи. По умолчанию это %CPU — доля использованного процессорного времени, но можно сортировать, например, по убыванию объема занятой памяти;
♦ i — переключатель отображения: либо все задачи, либо только активные (в состоянии Running);
♦ k — отправить процессу сигнал. Программа спросит у вас PID процесса, а затем номер или название сигнала. По умолчанию посылается сигнал TERM;
♦ r — изменить приоритет процесса.
Количество и порядок отображаемых свойств процесса (столбцов) можно изменять. Всего доступно 26 свойств процесса (нумеруемых буквами английского алфавита), и соответствующие им заголовки столбцов перечислены в секции DESCRIPTIONS of Fields man-страницы команды top. На рис. 9.4 (команда top запущена с настройками по умолчанию) отображены следующие свойства:
♦ PID — PID процесса;
♦ USER — регистрационное имя владельца процесса;
♦ PR — приоритет;
♦ NI — показатель уступчивости (см. п.9.2.4);
♦ VIRT — занятая виртуальная память в килобайтах;
♦ RES — физическая (без подкачки) память, занятая процессом;
♦ SHR — объем разделяемой памяти, используемой процессом;
♦ S — состояние процесса;
♦ %CPU — доля процессорного времени, доставшаяся процессу с момента последнего обновления экрана;
♦ %MEM — доля занятой процессом физической памяти;
♦ TIME+ — процессорное время, израсходованное с момента запуска процесса, в секундах с сотыми долями;
♦ COMMAND — либо имя исполняемого файла программы, либо вся командная строка с аргументами. Режим переключается вводом в командную строку команды «с».
Процесс может находиться в одном из следующих состояний, отображаемых в столбце «S»:
♦ R (Running) — активен, то есть находится в основной памяти и ждет выделения ему процессорного времени либо уже выполняется;
♦ S (Sleeping) — выгружен из основной памяти;
♦ T (Traced) — приостановлен, например, в ходе отладки;
Жалоба
Напишите нам, и мы в срочном порядке примем меры.