скачать рефераты
  RSS    

Меню

Быстрый поиск

скачать рефераты

скачать рефератыРеферат: Администрирование локальных сетей

когда пользовательский init процесс запрашивает их. (независимо от

текущего run level системы).

Они в корне отличается от run levels в которые boot init никогда не

входит a, b, or c.  Также выполнение процессов из этих run-levels

никогда не меняет текущий run level системы.

Более того, процессы запущенные с rul-level a, b, или c не терминируются когда boot init изменяет run-level системы. Процессы терминируются лишь когда соответствующая строка inittab помечена как off в поле action или полностью удалена из inittab или система загружается в однопользовательский режим.

action                     определяет действия этой строки файла, которые могут принимать следующие значения:

boot                        выполнять процесс только во время чтения inittab исключительно при загрузке системы. Boot init стартует процесс не дожидаясь его окончания и по его завершении не рестартует его заново.

bootwait               выполнять процесс только во время чтения inittab исключительно при загрузке системы. Boot init стартует процесс дожидается  его окончания и по его завершении не рестартует его заново.

initdefault            процесс выполняется только во время начальной

загрузки. Boot init использует эту строку если она существует для того чтобы определить в какой run-level входить в самом начале.   Если в этой строке указано несколько run-levels то запускается с наибольшим номером. Если run-level не указан то стартует по умолчанию run-level c номером 6. Если строка initdefaul не найдена в /etc/inittab то при старте системы будет запрошено на какой run-level запускать систему.

off                          если процесс асоцированный с этой строкой в данный момент запущен то послать ему предупреждающий сигнал (SIGTERM) и подождать 20 секунд его завершения, после чего принудительно завершить его сигналом SIGKILL. Если процесс не запущен – игнорировать эту строку.

once                       Когда boot init стартует run level который совпадает с указанным в этой строке он не дожидается его окончания и после окончания не запускает его вновь. Если boot init запускает новый run level но процесс все еще в запущеном состоянии от предыдущего run-level то процесс не перестартовывается.

ondemand            Эта инструкция есть синоним инструкции respawn за исключением того что она используется только с “a”, “b”, или “c” значениями run-level.

powerfail               Запустить процесс асоциированный с этой строкой только в том случае если boot init получит сигнал power-fail signal (SIGPWR).

powerwait             Запустить процесс асоциированный с этой строкой

только в случае если boot init получит power-fail signal (SIGPWR) и ждать пока процесс завершит работу перед запуском любых других процессов из inittab.

respawn                 Если процесс не запущен, то запустить его не дожидаясь окончания (прподолжив сканирование inittab). После завершения процесса  запустить его заново. Если процесс запущен – то  ничего не делать продолжив сканирование inittab.

 sysinit                    процессы содержащиеся в строках этого типа будут запускаться перед тем как boot init попытается получить доступ к системной консоли. Это подразумевает что процессы будут запускаться только для инициализации устройств на которых boot init может получать run level информацию. Boot init ожидает завершение процессов запущенных с этим параметром.

wait                        Когда boot init запускает run-level с этим параметром, он ждет завершения процесса. Любые сканирования  файла inittab пока boot init находится на томже run level являються причиной игнорирования этой строки в файле inittab.

process                   это шелл скрипт который запускается из шела созданного системным вызовом fork() как "sh -c 'exec command'.

Запуск  init может сопровождаться следующими аргументами:

/sbin/init [0|1|2|3|4|5|6|S|s|Q|q|a|b|c]

агрументы означают следующее:

0-6          перевод системы на уровень от 0 до 6

a|b|c       выполнение действий из файла из строк inittab eкоторые помечены как

специальный run-level a, b, или c без изменения значения текущего run-level.

Q|q          реинициализация файла  inittab без изменения значения текущего run-level

S|s           перевод системы в однопользовательский режим, при этом логическая

системная консоль /dev/syscon изменяется на тот терминал с которого была

запущена команда.

Остановка системы

Для остановки системы Вы должны иметь права администратора (пользователь с UID=0). Различают два вида остановки системы, первый это перевод системы в однопользовательский режим, при котором все пользовательские и системные процессы работающие в многопользовательском режиме завершаются, и доступ к машине остается лишь через логическую системную консоль (тот терминал с которого была запущена команда). Такой режим часто бывает необходим во время бэкапа или восстановления данных, при установке нового оборудования или програмного обеспечения. После этого для возврата назад в многопользовательский режим нужно воспользоваться командой init. Второй вид остановки системы – это полная остановка системы с последующим выключением питания. Остановка системы может быть произведена как с применением команд hpux, так  и с использованием SAM. При использовании SAM в разделе Routine Tasks выбрать пункт System shutdown а затем тип шатдауна:

·     Halt system                                  - полная остановка системы

·     Reboot                                           - перезагрузка системы

·     Go to single user state                 - перевод системы в однопользовательский режим

При использовании hpux комманд необходимо выполнить переход в корневой каталог (т.к. нельзя размонтировать файловые системы которые используются просцессами), а затем выполнить команду shutdown с одним из параметров:

·     cd /

·     shutdown –h now                      - немедленная остановка системы

·     shutdown –r now                       - немедленная перезагрузка системы

·     shutdown                                    - немедленный перевод системы в

  однопользовательский режим

·     shutdown –h 300                 - остановка системы через пять минут.

  При этом раз в всем залогиненым пользователям

будет посылаться уведомление о предстоящей

остановке системы.

Команда shutdown переключает  логическую системную консоль /dev/syscon изменяется на тот терминал с которого была запущена команда. shutdown использует программу /usr/sbin/wall для посылки сообщения о остановке или перезагрузки системы на все терминалы на которых есть асктивные пользователи. По умолчанию лишь администратор системы обладает правами на остановку системы, однако существует файл /etc/shutdown.allow который позволяет выполнять остановку системы (но не перевод в однопользовательский режим)  пользователям не имеющих администраторских прав. В этом файле указывается имя пользователя и имя системы (для случая кластеров) которую пользователь может остановить. Симвод # исполдьзуется для комментариев, символ + обозначает любое имя. Например:

# пользователь user1 может останавливать систему systemA и systemB

systemA user1

systemB user1

# администратор может останавливать все системы

+ root

# любой пользователь может остановить систему systemC

systemC  +

Отсутствие файла /etc/shutdown.allow или отсутствие в нем администратора (root) не может помешать администратору остановить систему.

После запуска, shutdown выполняет:

·     сброс на диск всех суперблоков файловых систем находящихся в памяти

·      установку real UID в 0

·      широковещательную посылку сообщения всем пользователям

·      запуск /sbin/rc для выполнения корректного завершения всех основных системных и пользовательских программ

·      выполнение  пргораммы reboot для реальной остановки или перезагрузки системы.

Так же как и при старте, во время остановки системы используется скрипт /etc/rc . Если стартовый скрипт линк (например /sbin/rcN.d/S123test) в последовательности N имеет стоп действие, соответствующий остановочный скрипт должен быть помещен в последовательность

N-1 (/sbin/rcN-1.d/K200test).  Действия запущенные на уровне N должны быть остановлены на уровне N-1. Поэтому остановка системы (т.е., переход с уровня 3 напрямую в уровень 0) приведет к корректному завершению всех подсистем путем вызова соответствующих остановочных скриптов.

Помомо команды shutdown существует команда rebooot которая выполняет похожие действия. Например reboot –h вызывает остановку системы а reboot без параметров перезагрузку. Между командами reboot и shutdown есть принципиальная разница. reboot всем процессам в системе (кроме самой себя J) посылает 9-й сигнал, который процесс не может перехватить или обработать и после этого вызывает остановку или перезагрузку системы. Поэтому не рекомендуется использовать эту команду в системах где есть критически важные приложения (например сервера баз данных) которые требуют корректной остановки.

Конфигурирование ядра системы

Для большинства систем вполне хватает стандартной конфигурации ядра, однако в ряде случаев оговоренных ниже возникает необходимость переконфигурирования ядра. К этим случаям можно отнести:

·     Добавление или удаление периферии (драйверов устройств) а также псевдодрайверов. В случае удаления периферии удалять драйвер устройства из ядра совсем не обязательно, но крайне желательно, т.к. в этом случае ядро будет меньше по обьему и будет работать более эффектино. Прежде чем удалять драйвер устройства убедитесь не зависят ли от него драйвера других устройств проверив файлы в директории /usr/conf/master.d в таблицах зависимости в секции DRIVER_DEPENDENCY. Особое внимание следует обратить на файл core-hpux.

·     Изменение системных параметров (tunable parameters). В тех случаях когда система работает с большим количеством пользователей часто возникает необходимость изменения стандартных системных параметров. Эти параметры определяются в секции TUNABLE в файлах /usr/conf/master.d. Большинство из них находится в файле core-hpux.

·     Инсталирование специализированного програмного обеспечения HP (подсистем). Если вы добавляете в систему специализированное програмное обеспечение например поддержку LAN,  ATM, FDDI и.т.п в этом случае также требуется модификация ядра.

·     Добавление файловых систем отлдичных от HFS.

·     Добавление, удаление или модификация swap и (или) dump областей, устройства консоли или корневой файловой системы.

Драйвера по своим возможностям а также по методу доступа и управлению ими можно разделить на три основных типа:

·     Символьные драйвера. Работа с этими драйверами происходит в побайтном режиме без использования буферного кэша. К таким драйверам можно отнести драйвера таких устройств как драйвера последовательных портов, терминалов, магнитных лент …

·     Блочные драйвера. Этот тип драйверов позволяет проводить обмен блоками данных. Так например обмен с диском происходит фиксироваными блоками (секторами), даже в том случае если идет операция с данными количество которых меньше размера блока всеравно физически будет прочитан или записан один блок. При работе эти драйвера используют системный буферный кэш.

·     Драйвера низкого уровня (raw drivers) Этот тип драйверов производит обмен с блочными устройствами напрямую минуя буферный кэш с ситемы.

Кроме драйверов устройств существует множество других драйверов не имеющих непосредственного отношения к периферии компьютера. Такие драйвера называются псевдодрайверами. Вот примеры некоторых из них:

                /dev/kmem           обеспечивает доступ к физической памяти компьютера

                /dev/mem             обеспечивает доступ к виртуальной памяти ядра

/dev/null                нулевое устройство. Призаписи в него данные удаляются, а при чтении считывается 0 байт

lvm                         (Logical Volume Manager) обеспечивает построение и доступ к логическим дискам

Драйвера адресуются старшим номером устройства (major number). Помимо него также существует младший номер (minor number) для адресации одного из клонов драйвера. Например в случае с драйвером диска младший номер может означать номер диска.

$ ls -l /dev/dsk/

total 0

brw-r--r--   1 root       sys         31 0x002000 Jun 10  1996 c0t2d0

brw-r--r--   1 root       sys         31 0x005000 Jun 10  1996 c0t5d0

brw-r--r--   1 root       sys         31 0x006000 Jun 10  1996 c0t6d0

$ ls -l /dev/rdsk/

total 0

crw-r-----   1 root       sys        188 0x002000 Jun 10  1996 c0t2d0

crw-r-----   1 root       sys        188 0x005000 Jan  3 16:47 c0t5d0

crw-r-----   1 root       sys        188 0x006000 Jun 10  1996 c0t6d0

Первая команда выводит файлы блочных дисковых устройств, вторая файлы raw дисковых устройств. Как создаются файлы устройств будет показано чуть позже. Доступ к драйверу осуществляется через специальную структуру данных называемою коммутатором устройств каждый элемент которой содержит указатели на соответствующие функции драйвера (d_open(), d_close(), d_strategy(), d_read(), d_write(), d_ioctl, d_xpoll(), d_intr(), …), так называемые точки входа. Старший номер является указателем на элемент коммутатора устройств. Блочные и символьные устройства имеют свои собственные коммутаторы. Список драйверов можно посмотреть воспользовавшись программой lsdev.

9.   Изменение системных параметров

К одним из основных системных параметров относится параметр MAXUSERS который является макросом на основании которого вычисляются множество других параметров (например nproc вычисляется как 20+8*MAXUSERS). Этот параметр не указывает, как может показаться на первый взгляд на максимальное число пользователей в системе. На системах с небольшим количеством пользователей (рабочие станции) он обычно равен 32, на больших системах (T500) его значение может превышать 200. Перечислим краткий список основных системных параметров:

Параметр

Значение по умолчанию

Описание

dbc_max_pct 50 Максимальный размер буферного кэша в процентах от обьема RAM
maxdsiz 67108864 Максимальный размер сегмента данных
maxssiz 8388608 Максимальный размер стека
maxtsiz 67108864 Максимальный размер сегмента кода
maxfiles 60 Максимальное количество открытых файлов на процесс
maxuprc 75 Максимальное число процессов пользователя
maxusers 32 Макрос через который определяются большинство других параметров
nfile 2172 Максимальное число открытых файлов в системе
nflock 200 Максимальное количество заблокированных файлов
npty 60 Максимальное количество псевдотерминалов в системе
semmns 128 Максимальное количество семафоров
shmmax 67108864 Максимальный обьем разделяемой памяти
shmmni 200 Максимальное количество идентификаторов разделяемой памяти
shmseg 120 Максимальное количество сегментов разделяемой памяти на процесс

Для изменения системных параметров можно воспользоваться утилитой SAM либо выполнить изменения конфигурационных файлов и пересобрать ядро вручную. При использовании SAM после запуска sam необходимо:

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31


Новости

Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

  скачать рефераты              скачать рефераты

Новости

скачать рефераты

© 2010.