Администрирование локальных сетей
Рефераты >> Программирование и компьютеры >> Администрирование локальных сетей

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

Максимальное количество сегментов разделяемой памяти на процесс


Страница: