|
Навигация
|
Главная » Windows Администрирование Linux для начинающих (LPIC-1), тема 106Источник: IBM developerWorks Россия Ян Шилдс (Ian Shields) Этот раздел содержит материал для темы 1.106.2 экзамена 102 Администрирование Linux для начинающих (LPIC-1). Тема имеет рейтинг 3.В этом разделе вы научитесь:
Уровни выполнения определяют, какие задачи могут быть выполнены в текущем состоянии (или на текущем уровне выполнения) системы Linux. Каждая система Linux поддерживает три базовых уровня выполнения и один или более уровней для обычной работы. Базовые уровни выполнения показаны в Таблице 3.
Уровень выполнения по умолчанию При запуске Linux уровень выполнения по умолчанию определяется из строки id: файла /etc/inittab. Листинг 15 показывает типичную строку для такой системы, как Red Hat Enterprise Linux, использующей уровень выполнения 5 для системы X Window.Листинг 15. Уровень выполнения по умолчанию из ./etc/inittab
Изменение уровня выполнения Есть несколько способов изменить уровень выполнения. Чтобы сделать постоянное изменение, можно отредактировать /etc/inittab и изменить уровень выполнения по умолчанию, как вы только что видели. Если вам нужно только перевести систему на другой уровень выполнения, у вас есть пара способов сделать это. Например, представьте, что вы только что установили новое ядро, и вам нужно добавить некоторые модули после того, как система загрузилась с новым ядром, но до загрузки системы X Window. Вы, возможно, захотите перевести систему на уровень выполнения 3, чтобы выполнить это. Вы делаете это во время загрузки, редактируя строку ядра (GRUB) или добавляя параметр после имени выбранной системы (LILO). Используйте одну цифру для указания желаемого уровня выполнения (в данном случае 3). Например, вы можете изменить строку из Листинга 5, который вы видели в предыдущем разделе, как показано в Листинге 16. Листинг 16. Установка уровня выполнения по умолчанию во время загрузки
Как только вы закончили вашу работу на уровне выполнения 3, вы, возможно, захотели переключиться на уровень выполнения 5. К счастью, вам не надо перезагружать систему. Вы можете использовать команду telinit , чтобы сообщить процессу init, на какой уровень выполнения он должен переключиться.Вы можете определить текущий уровень выполнения, используя команду runlevel , которая помимо текущего показывает и предыдущий уровень выполнения. Если первый выведенный символ - 'N', то уровень выполнения не менялся с того момента, как система была загружена. Листинг 17 иллюстрирует проверку и изменение уровня выполнения.Листинг 17. Проверка и изменение уровня выполнения
Если вы используете команду ls , чтобы отобразить длинный листинг команды telinit , вы увидите, что в действительности она является символьной ссылкой на команду init . Команда init знает, каким образом она была вызвана, и ведет себя соответственно. Поскольку init обычно имеет PID 1, она также достаточно инеллектуальна, чтобы знать, если вы запустили ее с помощью init а не telinit . В этом случае она предполагает, что вы хотите, чтобы она вела себя так, как будто вы вызвали telinit вместо нее. Например, вы можете использовать int 5 вместо telinit 5 , чтобы переключиться на уровень выполнения 5.Однопользовательский режим В отличие от таких операционных систем для персональных компьютеров, как DOS или Windows, Linux по свей сути является многопользовательской системой. Однако, бывают ситуации, когда это становится проблемой, например, когда вам нужно восстановить основную файловую систему или базу данных, или установить и протестировать какое-нибудь новое оборудование. Уровень выполнения 1, или однопользовательский режим , - это ваше решение для таких ситуаций. Фактическая реализация зависит от дистрибутива, но обычно вы попадаете в оболочку с минимальными возможностями. Обычно отсутствует поддержка сети, нет (или очень мало) запущенных демонов. На некоторых системах вы должны пройти аутентификацию, но на других вы заходите прямо в оболочку как суперпользователь. Однопользовательский режим может быть вашим спасителем, но вы можете также разрушить систему, поэтому будьте осторожны всякий раз, когда заходите в систему с правами суперпользователя. Также как и с переключением на обычные многопользовательские уровни выполнения, вы можете переключиться на однопользовательский режим, используя telinit 1 . Как видно из Таблицы 3, 's' и 'S' - это псевдонимы для уровня выполнения 1, так что вместо этого вы можете, например, использовать telinit s .Команды остановки Помимо использования telinit или init для остановки работы пользователей и перехода в однопользовательский режим, вы также можете вызвать команду shutdown . Команда shutdown отсылает сообщения с предупреждением всем зарегистрированным пользователям и блокирует дальнейшие входы в систему. Затем она посылает сигнал init о переключении уровней выполнения. После этого процесс init посылает всем запущенным процессам сигнал SIGTERM, давая им шанс сохранить данные или корректно завершить работу. После 5 секунд или другой задержки, если она указана, init посылает сигнал SIGKILL, чтобы насильно завершить все оставшиеся процессы.По умолчанию shutdown переключается на уровень выполнения 1 (однопользовательский режим). Вы можете указать ключ -h , чтобы остановить систему, или ключ -r , чтобы перезагрузиться. Стандартное сообщение выводится вместе с любым указанным вами сообщением. Время можно задать как абсолютное время в формате hh:mm или как относительное время n , где n - количество минут до выключения. Для немедленной остановки используйте now , что эквивалентно +0 .Если вы вызвали остановку с задержкой, и время еще не прошло, у вас есть возможность отменить остановку, нажав Ctrl-c, если команда работает в настоящий момент, или вызвав shutdown с ключом -c для отмены отложенной остановки. Листинг 18 содержит несколько примеров использования shutdown , а также отмены этой команды.Листинг 18. Примеры остановки
Вы, возможно, заметили, что наш последний пример не вызвал сообщения с предупреждением. Если время до остановки превышает 15 минут, то сообщение не посылается раньше, чем за 15 минут до этого события, как показано в Листинге 19. Листинг 19 также показывает использование ключа -t для увеличения задержки между сигналами SIGTERM и SIGKILL от 5 секунд до 60.Листинг 19. Другой пример остановки
Убедимся, что система перезагрузилась обратно на уровень выполнения 3, что видно из использования команд runlevel и uptime в Листинге 21.Листинг 21. Другой пример перезагрузки системы
Также возможно использовать telinit (или init ) для остановки или перезагрузки системы. Также как и в других случаях использования telinit , пользователям не будет послано никаких сообщенийs, и команда выполнится немедленно, хотя между сигналами SIGTERM и SIGKILL и существует задержка. Про допольнительные ключи telinit , init и shutdown смотрите в соответствующих страницах руководства man.Остановка, перезагрузка и отключение питания Вам следует знать еще несколько команд, связанных с остановкой и перезагрузкой.
shutdown .Для получения информации о ключах, которые можно использовать с этими командами, а также более подробной информации об их работе, обращайтесь к страницам руководства man. Конфигурация уровня выполнения Теперь вы, возможно, будете удивлены, почему нажатие Ctrl-Alt-Delete на некоторых системах вызывает перезагрузку, и как вообще конфигурируется поведение уровня выполнения. Помните поле
в /etc/inittab? Что ж, существует еще несколько полей в /etc/inittab, а также набор инициализирующих скриптов в таких каталогах, как rc1.d или rc5.d, где цифра обозначает уровень выполнения, к которому применяются скрипты из этого каталога. Листинг 22 содержит строку для Ctrl-Alt-Delete, таким образом, вы видите, почему это вызывает перезагрузку системы. Листинг 22. Отлавливание ctrl-alt-delete
Скрипты, используемые init при запуске системы, изменении уровня выполнения или остановке системы, обычно хранятся в каталогах /etc/init.d или /etc/rc.d.init.d. Наборы символьных ссылок в каталогах rc n .d, по одному каталогу для каждого уровня выполнения n , определяют запускается ли скрипт при входе на уровень выполнения, или останавливается при выходе из него. Эти ссылки начинаются с "K" или "S", за которыми следует число из двух цифр и имя службы, как показано в Листинге 23.Листинг 23. Скрипты init
Здесь вы видите, что службы audit и autofs имеют K nn вхождений во всех уровнях выполнения и S nn вхождений для обеих в уровнях выполнения 3 и 5. "S" означает, что служба запускается при входе на уровень выполнения, в то время как "K" означает, что она должна быть остановлена. Компонент nn в имени ссылки определяет приоритетный порядок, по которому служба должна быть запущена или остановлена. В этом примере audit запускается до autofs и останавливается после.Для большей информации о командах init и inittab обращайтесь к страницам руководства man.Symantec Solutions - безопасность и эффективное управление Windows. Microsoft отменяет 22 экзамена. Потоки в Visual Basic (исходники). Драйверы: Realtek HD Audio Codec Driver R1.89 для Windows 2000/XP/2003 и Windows Vista (download). Драйверы: Realtek HD Audio Codec Driver R1.90 для Windows 2000/XP/2003 и Windows Vista (download). Главная » Windows |
© 2024 Team.Furia.Ru.
Частичное копирование материалов разрешено. |