Книга
Книга
Билл Кэлкинс
Solaris 8:
Сертификация системногоадминистратора
торгсао-*адм«1мкмй до*
DiaSoft
Solaris 8
System Administrator Certification
Itraining guide!
Bill Calkins
Solaris 8:Сертификациясистемногоадминистратора
Билл Кэлкинс
I торгом^одатмкхмй лом
5 DiaSoft
УДК 004.45
ББК 32.973.26-018.1
К 98 Билл Кэлкинс
К 98 Solaris 8: Сертификация системного администратора. Пер. с англ. /Билл Кэлкинс. - К.: ООО «ТИД «ДС», 2003. - 928 с.
ISBN 966-7992-20-9
Компанией Sun Microsystems разработаны программы сертификации, позволяющие оценить реальные знания специалистов в области системного администрирования Solaris 8 с получением международного сертификата.
В данное издание вошли два курса: первый (310-011) из которых позволяет приобрести знания и навыки для эффективного решения базовых задач администрирования, а во втором (310-012), углубленном, освещаются более сложные вопросы администрирования ОС Solaris, включая обслуживание несложных сетей и поддержку прикладного программного обеспечения.
Отличительная особенность этой книги - возможность использовать ее как основу для обучения специалистов в области системного администрирования операционной системы Solaris 9.
ББК 32.973.26-018.1
Authorized translation from the English language edition, entitled «Solaris 8 Training Guide: System Adminiatrator Certification», publishing by New Riders Press,
Copyright © 2002
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from Pearson Education, Inc.
Russian language edition published by Diasoft Publishing.
Copyright © 2002
Лицензия предоставлена издательством New Riders Press.
Все права зарезервированы, включая право на полное или частичное воспроизведение в какой бы то ни было форме.
ISBN 966-7992-20-9 (рус.)ISBN 1-57870-259-3 (англ.)ISBN 966-7992-20-9 (рус.)ISBN 1-57870-259-3 (англ.)©ООО «ТИД «ДС», 2003
ISBN 966-7992-20-9 (рус.)
ISBN 1-57870-259-3 (англ.)
ISBN 966-7992-20-9 (рус.)
ISBN 1-57870-259-3 (англ.)
© New Riders Press, 2002
© Оформление. ООО «ТИД «ДС», 2003■
Гигиеническое заключение № 77.99.6.953.П.438.2.99 от 04.02.1999
Содержание
КНИГА I. Часть 1 27
Глава 1. Запуск и закрытие системы28
Введение 30
Загрузка системы30
Включение питания31
Фазы аппаратной и программной загрузки31
Фаза инициализации ядра32
Фаза IN IT39
Использование сценариев управления для останова и запуска служб44
Добавление сценариев в каталоги управления запуском44
Закрытие системы48
Команды закрытия системы48
Останов системы в целях восстановления52
Выключение питания53
Резюме53
Примените ваши знания54
Глава 2. OpenBoot60
Введение62
Среда OpenBoot62
Единство версий программного обеспечения одно и многопроцессорных систем63
Доступ к среде OpenBoot64
Задачи встроенного программного обеспечения OpenBoot64
Архитектура OpenBoot65
Интерфейс OpenBoot66
Монитор с ограниченными возможностями66
Монитор Forth67
Получение справки в среде OpenBoot67
Полные имена устройств в PROM69
Псевдонимы устройств OpenBoot72
NVRAM - энергонезависимое ОЗУ среды OpenBoot73
Программа nvedit78
Защита среды OpenBoot79
Диагностика среды OpenBoot 80
Управление вводом/выводом83
Загрузка84
Ядро операционной системы89
Резюме96
Примените ваши знания97
Глава 3. Установка программного обеспечения Solaris 8106
Введение108
Требования и подготовка к инсталляции программного обеспечения Solaris 8.109
Неподдерживаемые архитектуры Sun4c110
Минимальные системные требования 111
Терминология программного обеспечения 111
Пакет программного обеспечения 111
Кластеры программного обеспечения и кластеры конфигурации 111
Носители информации113
Конфигурация устанавливаемой системы113
Дисковые системы хранения данных117
Основные соображения по вопросу планирования размеров разделов119
Размещение разделов на нескольких дисках120
Драйверы устройств121
Имя физического устройства121
Имя образца устройства122
Имя логического устройства122
Файлы блочных и символьных устройств123
Методы инсталляции программного обеспечения Solaris 8124
Интерактивный метод124
Метод JumpStart124
Пользовательский метод инсталляции JumpStart125
Метод инсталляции Web Start 125
Инсталляция через сеть126
Процесс инсталляции Solaris126
Резюме128
Примените ваши знания129
Глава 4. Управление пакетами программного обеспечения137
Введение138
Инструменты для управления программным обеспечением139
Добавление и удаление пакетов программного обеспечения140
Использование каталога спула141
Добавление пакетов программного обеспечения с использованием Admintool142
Удаление пакетов программного обеспечения с использованием Admintool 143
Реестр программных продуктов Solaris144
Просмотр и проверка инсталлированных пакетов146
Программные заплаты147
Инсталляция заплаты148
Удаление заплаты150
Общие руководящие принципы 151
Резюме151
Примените ваши знания152
Глава 5. Создание учетных записей пользователя156
Введение158
Добавление учетной записи пользователя с помощью Admintool158
Удаление учетной записи пользователя с помощью Admintool163
Внесение изменений в учетную запись пользователя с помощью Admintool164
Добавление группы с помощью Admintool165
Управление учетными записями пользователей и групп из командной строки165
Добавление учетных записей пользователей через командную строку166
Внесение изменений в учетные записи пользователей через командную строку167
Удаление через командную строку учетных записей пользователей168
Добавление через командную строку учетных записей групп168
Внесение изменений через командную строку в учетные записи групп пользователей168
Удаление учетных записей групп пользователей через командную строку. 169
Установка пользовательских файлов инициализации169
Настройка пользовательских файлов инициализации170
Исходный каталог173
Службы имен173
Резюме174
Примените ваши знания174
Глава 6. Введение в файловые системы180
Введение183
Определение файловой системы183
Определение геометрии диска184
Контроллер диска184
Список дефектов184
Метка диска185
Таблица разделов185
Типы файловых систем Solaris185
Дисковые файловые системы185
Сетевые файловые системы185
Виртуальные файловые системы186
Части диска187
Информация о конфигурации диска189
Использование утилиты format для создания частей диска190
Часть диска под названием Free Hog193
Использование утилиты format для модифицирования разделов193
Восстановление информации о разделах диска195
Логические тома196
Составные части файловой системы UFS197
Загрузочный блок199
Суперблок199
Индексный дескриптор200
Блок хранения200
Свободные блоки 200
Создание файловой системы UFS200
Понятие пользовательских параметров файловой системы202
Размер логического блока202
Размер фрагмента203
Минимально свободное пространство203
Межблочный промежуток (Gap)204
Тип оптимизации205
Количество индексных дескрипторов и количество байт на один индексный дескриптор205
Операции с файловой системой205
Синхронизация файловой системы205
Восстановление файловых систем206
Монтирование файловых систем209
Отображение смонтированных файловых систем211
Монтирование файловой системы с большими файлами212
Монтирование файловой системы с разрешенным протоколированием UFS213
Отображение дискового пространства, используемого файловой системой213
Отображение информации о размерах каталогов214
Управление использованием дискового пространства пользователями215
Резюме216
Примените ваши знания217
Глава 7. Файловые системы Solaris: дополнительные темы224
Введение226
Создание файловой системы226
Команда labelit229
Команда volcopy229
Настройка файловых систем230
Команда fstyp233
Большие и малые файлы234
Монтирование файловой системы234
/etc/mnttab237
Демонтирование файловой системы238
Команда fuser239
Менеджер томов240
Локализация проблем менеджера томов247
Информация о файловых системах250
Резюме252
Примените ваши знания253
Глава 8. Обеспечение безопасности системы262
Введение265
Физическая защита265
Управление доступом к системе266
Где сохраняется информация учетной записи пользователя268
Командные процессоры ограниченного доступа271
Управление доступом к файлам 271
Действующие идентификаторы пользователя и группы273
Принятая по умолчанию маска пользователя273
Sticky-бит274
Списки ACL274
Установка корректного маршрута278
Программы с полномочиями setuid и setgid279
Аудит пользователей280
Наблюдение за пользователями и использованием системы280
Проверка зарегистрированных в системе пользователей282
Безопасность в сети285
Брандмауэры285
Службы сетевой защиты285
TCP Wrappers287
Файл /etc/default/login287
Модемы287
Доверяемый хост288
Файл /etc/hosts.equiv288
Файл .rhosts289
FTP с ограничением доступа289
Безопасность доступа суперпользователя291
Ограничение доступа с привилегиями суперпользователя291
Наблюдение за доступом с привилегиями суперпользователя292
Программа SUDO293
ASET294
Общепринятые технологии защиты296
Резюме296
Примените ваши знания298
Глава 9. Управление процессами309
Введение311
Просмотр процессов311
Команда pgrep315
Команда prstat317
Менеджер процессов среды СОЕ320
Использование сигналов323
Планирование процессов327
Планирование приоритетов328
Изменение приоритета процесса, выполняемого в режиме разделения времени, при помощи команды nice329
Изменение планируемого приоритета процессов при помощи команды priocntl330
Использование средств пакетной обработки в Solaris331
Конфигурирование crontab331
Планирование одиночного системного события (команда at)334
Системный журнал336
Другие важные файлы, в которых протоколируется информация339
Резюме340
Примените ваши знания341
Глава 10. Службы печати LP348
Введение349
Служба печати операционной системы Solaris350
Каталоги службы печати LP351
Спулер печати351
Демоны печати LP352
Установка аппаратных средств353
Соединение Ethernet354
Параллельное соединение354
Последовательное соединение354
Установка программного обеспечения354
Версии BSD программного обеспечения печати из SVR4355
Версии сервера и клиента печати357
Конфигурирование программного обеспечения принтера в среде Solaris358
Использование принтера, отсутствующего в меню типов принтеров361
Администрирование принтеров362
Удаление принтеров и управление доступом к ним362
Создание классов принтеров364
Проверка статуса принтера365
Управление очередями принтеров366
Перезапуск планировщика печати371
Установка для пользователя принятого по умолчанию принтера372
Модифицирование принтера при помощи Admintool372
Резюме374
Примените ваши знания375
Глава 11. Резервное копирование и восстановление385
Введение387
Носители информации для резервного копирования387
Утилиты резервного копирования и восстановления операционной системы Solaris388
Утилита tar388
Примеры использования утилиты tar389
Утилита dd390
Примеры использования утилиты dd390
Утилита cpio391
Примеры использования утилиты cpio392
Резервное копирование файлов с использованием режима copy-out393
Восстановление файлов с использованием режима copy-in393
Режим pass394
Утилита рах394
Примеры использования утилиты рах397
Утилита ufsdump397
Примеры использования утилиты ufsdump402
Утилита ufsrestore403
Примеры использования утилиты ufsrestore405
Восстановление корневой файловой системы или файловой системы /usr407
Дополнительные замечания к вопросу о восстановлении файлов409
Резюме409
Примените ваши знания410
Глава 12. Написание сценариев и программ оболочек415
Введение417
Основы сценариев командных процессоров417
Выбор оболочки для использования418
Переменные командного процессора Bourne420
Использование кавычек420
Разделители421
Переменные командного процессора422
Встроенные команды424
Условные выражения командного процессора425
Условные выражения && и ||425
Программы true и false425
Условное выражение if426
Программа test426
Оператор case428
Команды повторения действий429
Цикл for429
Цикл while430
Цикл until430
Функции оболочки430
Резюме431
Примените ваши знания432
КНИГА II. Часть 2439
Глава 13. Сетевое окружение Solaris440
Введение442
Фундаментальные основы сетей442
Топологии443
Модели443
Протоколы443
Аппаратные средства450
Планирование сети452
Установка сети и файлы конфигурации453
/etc/hostname. interface453
/etc/nodename453
/etc/defaultdomain 453
/etc/inet/hosts453
/etc/defaultrouter455
IP адресация (IPv4) и классы сетей455
КлассА456
Класс В456
Класс С456
Классы D и Е456
Планирование IP-адресации457
Сетевые службы457
Служба имен458
Команды протокола TCP/IP459
telnet459
rlogin459
ftp460
rep460
rsh461
rexec461
rwho461
finger461
rup461
ping461
spray 463
Сопровождение сети464
Резюме465
Примените ваши знания467
Глава 14. Псевдофайловыесистемы и область своппинга в Solaris.... 473
Введение474
Файловая система процессов (proofs)475
Временная файловая система (TMPFS)476
Файловая система файловых дескрипторов (fdfs)478
Файловая система своппинга (swapfs)479
Резюме489
Примените ваши знания490
Глава 15. Инсталляция сервера495
Введение496
Сервер496
Предварительные требования к серверу498
Инсталляция Solaris 8 на сервере498
Инсталляция программного обеспечения с использованием интерактивной
программы инсталляции500
Резюме512
Примените ваши знания513
Глава 16. Администрирование устройств и управление
дисками516
Введение517
Драйверы устройств518
Имя физического устройства518
Автоконфигурация устройств523
Имя экземпляра525
Главные и дополнительные номера устройств528
Имя логического устройства530
Блочные и низкоуровневые устройства531
Управление виртуальными томами532
Solstice DiskSuite533
StorEdge Volume Manager535
Резюме537
Примените ваши знания538
Глава 17. Среда NFS547
Введение549
Серверы и клиенты550
Служба NFS в Solaris550
Демоны службы NFS553
Установка NFS553
Защита информации от несанкционированного доступа в среде NFS557
Монтирование дистанционной файловой системы558
WebNFS563
Как разрешить доступ через WebNFS564
Использование браузера для получения доступа к URL в среде NFS 565
CacheFS566
Создание кэша566
Мониторинг кэша570
Удаление кэша572
Проверка согласованности573
AutoFS574
Таблицы службы AutoFS576
Главная таблица576
Прямая таблица580
Косвенная таблица584
Когда следует использовать автомонтирование587
. Резюме588
Примените ваши знания589
Глава 18. Служба имен601
Введение603
Общий обзор служб имен603
Файлы /etc604
NIS604
Структура сети NIS605
Определение вашей потребности в серверах NIS606
Определение хостов, которые будут серверами NIS606
Информация, управляемая с помощью NIS606
Планирование вашего домена NIS610
Конфигурирование главного сервера NIS611
Установка клиентов NIS622
Установка подчиненных серверов NIS623
NIS+624
Иерархическая структура пространства имен625
Таблицы службы имен NIS+625
Защита информации в NIS+627
Аутентификация627
Авторизация627
Аутентификация по стандарту DES629
DNS629
Протокол LDAP631
Резюме632
Примените ваши знания633
Глава 19. Консоль управления Solaris и пакет Solaris AdminSuite642
Введение643
Консоль управления Solaris644
Использование SMC645
Solaris AdminSuite653
Использование Solaris AdminSuite653
Резюме660
Примените ваши знания661
Глава 20. Ролевое управление доступом RBAC665
Введение666
Использование RBAC667
Компоненты RBAC671
Расширенная база данных атрибутов пользователей (user_attr)672
База данных авторизаций (auth_attr)673
База данных профилей прав доступа (prof_attr)675
База данных атрибутов выполнения (exec_attr)677
Резюме679
Примените ваши знания680
Глава 21. JumpStart685
Введение687
Общий обзор687
Подготовка к пользовательской инсталляции JumpStart689
Что происходите процессе пользовательской инсталляции JumpStart?690
Загрузочный сервер690
Инсталляционный сервер694
Конфигурационный сервер696
Файл правил698
Проверка файла правил706
Начальный и конечный сценарии707
Создание файлов классов и ключевые слова таких файлов708
backup_media709
boot_device710
client_arch711
client_root711
client_swap712
cluster712
dontuse713
filesys713
installjype715
geo716
isa_bits716
layout_constraint717
locale718
num_clients719
package719
partitioning;719
root_device720
system_type720
usedisk720
Тестирование файлов классов721
Файл sysidcfg723
Ключевые слова службы имен, доменного имени и сервера имен724
Ключевые слова, относящиеся к сети725
Установка пароля суперпользователя726
Установка системной локали, терминала, часового пояса и сервера службы времени727
Установка JumpStart в среде службы имен728
Установка клиентов728
Пример инсталляции JumpStart730
Установка инсталляционного сервера730
Создание каталога JumpStart731
Установка конфигурационного сервера 731
Установка клиентов732
Запуск клиентов733
Резюме735
Примените ваши знания736
КНИГА III. Итоговый обзор743
Быстрые факты. Сертификация системного администратора Solaris744
Запуск системы744
Команды закрытия системы746
OpenBoot746
Установка программного обеспечения Solaris 8747
Администрирование пакетов программного обеспечения749
Установка учетных записей пользователей 750
Введение в файловые системы753
Отчет об использовании дискового пространства файловой системой755
Файловые системы Solaris: дополнительные темы755
Безопасность системы756
Управление процессами759
Использование команды kill760
Планирование одиночного системного события (at)761
Служба печати LP761
Резервное копирование и восстановление762
Написание сценариев и программ оболочек762
Сетевая среда Solaris763
Определения понятий, используемых в сетях764
Сетевые аппаратные средства764
Команды протокола TCP/IP765
Классы сетей765
Сети класса А766
Сети класса В766
Сети класса С766
Сети класса D и Е766
Псевдофайловые системы и область своппинга в Solaris766
Инсталляция сервера767
Администрирование устройств и управление дисками768
Среда NFS769
WebNFS770
CacheFS771
AutoFS771
Службы имен771
Служба имен NIS771
NIS+773
Аутентификация по стандарту DES773
DNS773
LDAP774
Консоль управления Solaris774
Solaris AdminSuite774
Ролевое управление доступом775
JumpStart775
Советы по обучению и подготовке к экзамену777
Обучение как процесс777
Советы по обучению778
Стратегии обучения778
Макро и микростратегии обучения778
Активные стратегии обучения779
Стратегии на основе здравого смысла779
Предварительное самотестирование779
Советы по подготовке к экзамену780
Соберем все вместе781
Дополнительные советы по подготовке к экзаменам781
В процессе экзаменационной сессии782
Практический экзамен783
Вопросы практического экзамена783
Ответы на вопросы практического экзамена792
КНИГА IV. ПРИЛОЖЕНИЯ 797
Приложение A. Web Start798
Минимальные системные требования для Solaris Web Start799
Инсталляция Solaris с использованием технологииWeb Start799
Резюме811
Приложение В. Администрирование и конфигурирование CDE .... 812
Менеджер регистрации813
Запуск сервера регистрации813
Останов сервера регистрации 814
Отображение экрана регистрации на локальном дисплее814
Менеджер сеансов815
Поиск сценария $HOME/.dtprofile816
Берем сценарии Xsession.d в качестве исходных817
Настройка приветствия817
Установка маршрутов поиска файлов для рабочегостола817
Сборка доступных приложений818
Поиск файла .profile или файла .login некоторого пользователя818
Запуск демона передачи сообщений ToolTalk818
Загрузка ресурсов сеанса819
Запуск сервера цветов819
Запуск менеджера рабочих областей820
Запуск приложений сеанса821
Передняя панель821
Настройка рабочих областей822
Сброс всех пользовательских установок в исходное состояние825
Действия и типы данных825
Менеджер приложений827
Оболочка DTKSH829
Резюме829
Приложение С. История Solaris831
Как все это начиналось831
1965-1969 годы832
1970-1972 годы832
1973-1979 годы833
1982-1983 годы834
1984-1987 годы835
1988-1992 годы835
1993 год835
2001 год837
2002 год838
Операционная система Solaris839
Этапы развития Solaris840
Приложение D. Обзор процесса сертификации842
Путь к сертификации842
Получение сертификатов по операционной системе Solaris 8842
Сертификат системного администратора по операционной системе Solaris 8 от фирмы Sun842
Сертификат сетевого администратора по операционной системе Solaris 8 от фирмы Sun843
Как планировать экзамены843
Приложение Е. Содержимое прилагаемого диска CD-ROM844
ExamGear844
Эксклюзивная электронная версия текста настоящей книги844
Информация об авторских правах и дискламация845
Приложение F. Использование ExamGear - программного руководства по обучению846
Имитация экзамена846
Качество вопросов846
Дизайн интерфейса846
Инструментальные средства обучения847
Эффективная среда обучения847
Автоматическое отслеживание прогресса обучения847
Как работает ExamGear848
Интерфейс’848
База данных848
Инсталляция и регистрация ExamGear, Training Guide Edition848
Требования848
Инсталляция ExamGear849
Удаление ExamGear, Training Guide Edition с вашего компьютера850
Использование ExamGear, Training Guide Edition850
Общее описание работы программного обеспечения850
Опции меню851
Запуск сеанса работы в режиме обучения852
Запуск практического экзамена855
Типы вопросов и как на них отвечать855
Маркировка вопросов и учет оставшегося времени858
Экран Item Review859
Экран Examination Score Report863
Проверка Web-сайта864
FAQ864
Получение обновлений864
Каталог Web-сайтов для получения обновлений865
Контакты с издательством New Riders Publishing865
Техническая поддержка866
Обслуживание клиентов866
Обновления программного продукта866
Предложения и замечания866
Лицензионное соглашение866
Программное обеспечение и документация867
Условия настоящей лицензии и ответственность867
Название867
Обновления867
Ограниченная гарантия и дискламация867
Ограничение ответственности 868
Разное869
Ограничение прав Правительства Соединенных Штатов Америки869
А вот что говорят о книге рецензенты
"Я считаю, что эта книга не только может быть источником информации для подготовки к экзамену, но также и всесторонним справочником по данному предмету. Она охватывает такие предметные области, как консоль управления Solaris, КВАС (ролевое управление доступом) и ACL’s (списки управления доступом), которые иногда освещаются в других материалах. К тому же, примеры поясняются со столь подробным описанием экранов, что вам даже не нужно будет находиться перед рабочей станцией, чтобы изучить тему. Эта книга создает ощущение курса, читаемого опытным преподавателем, и хорошо накладывается на ваш график рабочего времени. Я намереваюсь рекомендовать это руководство всем компаниям, с которыми работаю, и я настоятельно рекомендую его любому, кто стремится к получению сертификации по Solaris, или любому, кому необходим подробный справочник по Solaris 8."
Брайан Ховард (Brian Howard), системный инженер и представитель компании Sun Microsystems по операционной среде Solaris.
"Эта книга очень проста в чтении и очень хорошо воспринимается. Приятно то, что оглавление точно очерчивает, какие предметные области обсуждаются, увязывая их с тематикой тестирования. Эта книга является очень ценной для вашей подготовки к сертификационному тестированию."
Дэвид Шолтен (David Scholten), ведущий специалист в области информационных технологий, компания Smiths Industries.
"Это прекрасно написанная книга, полностью охватывающая Solaris 8 и включающая в себя некоторые крупицы информации, которую я не нашел ни в одном другом месте. Ролевое управление доступом - новая функциональная особенность Solaris 8, и книга содержит первое обсуждение этой темы, которое отнюдь не кажется прямым воспроизведением страниц руководства Solaris. Только одно это объяснение стоит целой книги. К тому же книга включает подробное обсуждение псевдофайловых систем, продвинутая тема, которая еще не понята большинством администраторов."
Сэлвин Шульц (Selwyn Schultz), системный администратор UNIX, компания Herman Miller Corporation.
"Эта книга очень хорошо организована и очень хорошо читается. Она является полной и точной и при этом не перегружает читателя ненужным техническим жаргоном. Прилагаемый компакт-диск превосходит другие диски, которые я анализировал."
Джон Гилберт (John Gilbert), инструктор, колледж El Paso Community College
Об авторе
Билл Кэлкинс (Bill Calkins) является владельцем и президентом Pyramid Consulting, фирмы, которая занимается компьютерным обучением и консалтингом и расположена недалеко от Grand Rapids, штат Мичиган. Он специализируется в области внедрения и администрирования открытых систем, а также является владельцем www.unixed.com, Web-сайта, который предоставляет оперативные материалы для обучения UNIX. Автор имеет более чем 18-летний опыт администрирования, консультирования и обучения системам UNIX в более 100 различных компаниях. Билл создал несколько учебников по UNIX, ставших в настоящее время бестселлерами, они используются университетами и другими учебными заведениями во всем мире:
Solaris 2.6 Administrator Certification Training Guide, Part I, (Издатель: New Riders Publishing, ISBN: 157870085X)
Solaris 2.6 Administrator Certification Training Guide, Part II, (Издатель: New Riders Publishing, ISBN: 1578700868)
Solaris 7 Administrator Certification Training Guide, Part I and II, (Издатель: New Riders Publishing, ISBN: 1578702496)
Кроме того, он сотрудничал с Sun Press в качестве технического редактора и внес основной вклад в следующие недавно изданные технические руководства:
Solaris 7 Reference (Автор: Janice Winsor; Издатель: Prentice Hall PTR, ISBN: 0130200484)
Solaris 8 System Administrator’s Reference Guide (Автор: Janice Winsor; Издатель: Prentice Hall PTR, ISBN: 0130277010)
Профессиональные интересы Билла охватывают консалтинг, написание книг, преподавание и разработку учебных материалов, доступных на web-сайтах.
Билл проработал преподавателем как в корпоративных, так и в университетских организациях и помог тысячам администраторов получить сертификат. Его опыт охватывает все разновидности UNIX, включая Solaris, HP-UX, AIX, IRIX, Linux и SCO. Когда он не работает в упомянутой области, то пишет книги по UNIX, проводит тренировочные и общеобразовательные семинарские занятия по различным разделам системного администрирования. Автор опирается на собственный многолетний опыт в области системного администрирования и обучения, предлагая уникальный подход к обучению UNIX.
О технических редакторах
Грант Карстенсен (Grant Carstensen) обеспечивал техническое понимание с точки зрения конечного пользователя, будучи одним из тех, кто занимается подготовкой системных администраторов Solaris 8 к сертификационным экзаменам. Он является ведущим системным администратором в Computer Sciences Corporation (CSC), главным провайдером служб информационных технологий, расположенных в Эль Сегандо (El Segundo), штат Калифорния. Он имеет свыше 17 лет опыта работы в области информационных технологий, восемь из которых - с различными разновидностями UNIX. В течение последних пятилет он сосредоточился на системном и сетевом администрировании главным образом в средах SunOS и Solaris. Недавно он был руководителем технический группы и помощником менеджера проекта новой инсталляции, в которой было реализовано соединение сер-
веров фирмы Sun, работающих под управлением Solaris 8, серверов фирмы Compaq, работающих под управлением Windows NT 4.0, и рабочих станций Dell Precision, работающих под управлением Windows 2000 Professional; в проекте использовалось 18 отдельных локальных сетей TCP/IP, выполненных на волоконно-оптических и медных средах передачи данных в сетях Ethernet и Gigabit Ethernet. Грант имеет степень бакалавра в области биз- иес-администрирования и информационных систем и получает большое удовлетворение от проведения в течение 16 лет заочного курса сертификации в области ремонта микрокомпьютеров и программирования (на языке КОБОЛ).
Джон Филкокс (John Philcox) является владельцем и директором компании Mobile Ventures Limited, которая занимается компьютерным консалтингом и базируется в Челтен- хэм (Cheltenham), графство Глостершир (Gloucestershire) в Соединенном Королевстве, специализируясь на системах UNIX и сетях. Он имеет свыше 20 лет опыта работы в области информационных технологий, 14 из которых - со средами SunOS и Solaris. Джон является сертифицированным системным администратором Solaris, а также членом Institution of Analysts and Programmers (сообщества аналитиков и программистов) и сотрудником Institute of Management of Information Systems (института управления в области информационных систем). Он работал с множеством больших сетей от различных поставщиков как в общественном, так и в частном секторе бизнеса. Джон является автором книги Solaris System Management и техническим редактором книг Solaris 2.6 Administrator Certification Guide, Part II; Solaris 7 Administrator Certification Guide, Part I and II; Solaris 8 Security, все эти издания опубликованы издательством New Riders.
Посвящение
Я хочу еще раз поблагодарить мою семью за поддержку в процессе реализагщи этого проекта. При подготовке данной книги так же, как прошлых версий, казалось, что отпуска задерживаются навсегда и время, предназначенное семье, теряется в попытках уложиться в срок.
Спасибо моей жене Гленде, которая была моим личным секретарем при работе над этой книгой. Еста бы я полагался на свои собственные навыки набора текстов, эта книга не была бы сделана в срок. Я обещаю, что буду пытаться освоить набор текстов прежде, чем выйдет следующая версия. Я благодарен Виллу (моему самому старшему сыну) за то, что он присматривал за детьми, что позволяло маме набирать тексты.
Благодарности
Я хотел бы еще раз поблагодарить технических редакторов, которые работали со мной последние два года. Джон Филкокс и Грант Карстенсен, я очень ценю ваш вклад. Это была большая коллективная работа, и книга не была бы закончена без вашей помощи.
Джинни Монро, моему редактору-разработчику, спасибо, что облегчили мою работу с помощью ваших красных чернил, за ваш тяжкий труд и за долгие часы, которые помогли мне уложиться в срок.
Благодарю также Джефа Рилея, моего благоприобретенного редактора. Вы всегда отвечали мне, когда бы я ни обратился к вам с вопросом. Кроме того, вы смеялись над моим искаженным чувством юмора, что помогло мне сохранить темп на заключительных стадиях этого проекта. На днях мы будем играть вместе в гольф и поговорим обо всем этом. Оставайся с нами.
К вам, читатель. Спасибо за приобретение моих книг и предоставление замечаний, которые позволяли улучшить их содержание с каждым новым выпуском. Эта книга не была бы тем, чем она является, если бы не ваш ценный вклад все эти годы. Возможно, материал этой книги поможет вам повысить свою квалификацию, продвинуть карьеру и достичь цели - получить сертификат. Удачи вам и всего наилучшего!
Множество людей, работавших за сценой, сделали эту книгу именно такой. Я не знаю, как это все происходило, но эта книга - плод больших коллективных усилий. Большое спасибо каждому, кто редактирует текст, устанавливает шрифты, печатает страницы и рассылает книгу. Мои усилия пропали бы впустую, если бы не ваш тяжкий труд.
От издательства New Riders
Как читатель настоящей книги Вы являетесь нашим самым главным критиком и комментатором. Мы очень ценим Ваше мнение и хотим знать, что мы делаем правильно, что могли бы сделать лучше, какие наши публикации Вы еще хотели бы увидеть, и, вообще, хотим услышать любые полезные слова, которые Вы готовы сказать нам удобным для Вас способом.
Как заместитель директора издательства New Riders я приветствую Ваши комментарии. Вы можете отправлять их по факсу, по электронной почте, либо писать мне непосредственно, сообщая, что Вам понравилось в этой книге, а что - нет. Мне хотелось бы знать Ваше мнение и о том, как мы можем сделать наши книги еще лучше. Когда Вы будете писать мне, пожалуйста, проаерьте, что не забыли указать англоязычное название данной книги, ее стандартный международный номер и автора, а также Ваше собственное имя и номер телефона или факса. Я внимательно проанализирую Ваши комментарии и ознакомлю с ними авторов и редакторов, которые работали над настоящей книгой.
Пожалуйста, имейте в виду, что я не имею возможности помочь Вам в разрешении технических проблем, связанных с тематикой этой книги, а также то, что из-за большого объема сообщений электронной почты, приходящей на мое имя, мне трудно ответить на каждое входящее сообщение.
Мой факс:317-581-4663
Мой адрес электронной почты:stephanie.wall@newriders.com
Мой почтовый адрес:Stephanie Wall
Associate Publisher
New Riders Publishing
201 West 103rd Street
Indianapolis, IN 46290 USA
Посетите наш Web-сайт
www.newriders.com
На нашем Web-сайте вы найдете информацию о других наших книгах, об авторах, с которыми мы сотрудничаем, найдете обновления для книг и сможете загрузить файлы, найдете предложения по карьерному росту, познакомитесь с экспертами в данных технологиях, с календарем выставок и других профессиональных событий, в которых мы будем участвовать. Мы надеемся на встречу с вами.
Обратитесь по адресу www.newriders.com и щелкните ссылку Contact, если вы:
Имеете комментарии или вопросы по этой книге.
Хотите сообщить об ошибках, которые обнаружили в этой книге.
Имеете предложение по созданию книги или заинтересованы в написании книг для издательства New Riders.
Хотели бы, чтобы мы выслали вам один из наших авторских комплектов.
Являетесь экспертом в компьютерной тематике или технологии и заинтересованы в том, чтобы стать рецензентом или техническим редактором.
Хотите найти дистрибьютора наших изданий в вашем регионе.
Являетесь преподавателем или инструктором и хотите предварительно ознакомиться с книгами издательства New Riders, чтобы заказать их для использования в учебном процессе. Включите в тело письма ваше имя, названия учебного заведения и факультета, адрес, номер телефона, ваши рабочие дни/часы, название материалов, которые вы используете в настоящее время, их регистрационный номер на вашем факультете, а также ваш запрос на получение настольных/ ознакомительных материалов или любую дополнительную информацию.
Позвоните или отправьте нам факс
Вы можете позвонить нам по бесплатному номеру телефона 1-800-571-5840 + 9 + 3500 (спросить New Riders). Если вы находитесь за пределами Соединенных Штатов Америки, пожалуйста, позвоните нам по телефону 1-317-581-3500 и спросите издательство New Riders. Если хотите, можете послать нам сообщение по факсу 1-317-581-4663, в графе "Attention:" укажите "New Riders".
ПРИМЕЧАНИЕ.'
Техническая поддержка для настоящей книги. Хотя мы приветствуем стремление начинающих пользователей к получению из наших книг как можно большего объема полезной информации, однако, вам следует иметь в виду, что наши книги не рассчитаны на самый начальный уровень знаний неопытных пользователей. Это предположение отражается в краткости и стенографическом характере изложения некоторых учебных материалов.
Издательство New Riders будет непрерывно работать над тем, чтобы создавать понятно написанные, тщательно проверенные и отрецензированные книги по технологии, отвечающей самым высоким образовательным стандартам и отличающейся творческим дизайном. Мы более всего ценим наших клиентов, вот почему мы работаем в этом бизнесе. Однако мы не можем гарантировать каждому из тысяч людей, кто покупает и применяет наши книги, что мы сможем работать с вами индивидуально по учебным материалам или содержанию книг, по которым у вас могли бы возникнуть вопросы. Мы рекомендуем читателям, которые нуждаются в помощи при работе с упражнениями или другими материалами в наших книгах, - особенно нуждающимся в помощи незамедлительно - использовать множество ресурсов, которые могут предоставить наши технологические и технические сообщества, в особенности множество онлайновых групп пользователей и списки доступных серверов.
Как пользоваться этой книгой
Издательство New Riders постаралось сделать свою серию книг Руководство по обучению такой, чтобы обеспечить максимально возможную доступность информации при изучении сертификационных материалов. Далее вы имеете возможность ознакомиться со многими учебными особенностями, включенными в книги этой серии именно для того, чтобы достичь поставленной цели.
Ключ к открытию главы
Каждая глава начинается с нескольких особенностей, предназначенных максимально эффективно использовать время, отводимое на изучение данного материала.
Запуск и закрытие системыЗапуск и закрытие системыПеречень тем:Каждая глава начинается с перечня тем.Перечень тем:Каждая глава начинается с перечня тем.ТемыЭта глава охватывает следующие темы экзамена для системных администраторов.ТемыЭта глава охватывает следующие темы экзамена для системных администраторов.Поннманиепроцесса загрузки системыПоннманиепроцесса загрузки системы► Системный администратор должен понимать процесс загрузки системы в целом. начиная с правильной последовательности включения питания компьютера вплоть до шагов. которые выполняются при вводе системы в многопользовательский режим.► Системный администратор должен понимать процесс загрузки системы в целом. начиная с правильной последовательности включения питания компьютера вплоть до шагов. которые выполняются при вводе системы в многопользовательский режим.Объяснения тем:
Запуск и закрытие системы
Запуск и закрытие системы
Перечень тем:
Каждая глава начинается с перечня тем.
Перечень тем:
Каждая глава начинается с перечня тем.
Темы
Эта глава охватывает следующие темы экзамена для системных администраторов.
Темы
Эта глава охватывает следующие темы экзамена для системных администраторов.
Поннманиепроцесса загрузки системы
Поннманиепроцесса загрузки системы
► Системный администратор должен понимать процесс загрузки системы в целом. начиная с правильной последовательности включения питания компьютера вплоть до шагов. которые выполняются при вводе системы в многопользовательский режим.
► Системный администратор должен понимать процесс загрузки системы в целом. начиная с правильной последовательности включения питания компьютера вплоть до шагов. которые выполняются при вводе системы в многопользовательский режим.
Непосредственно после формулировки следует объяснение конкретной темы, предоставляя информацию, более доходчиво определяющую эту тему относительно экзамена. Поскольку сам список тем
Выполнение инициализации ядраВыполнение инициализации ядраГлава 1Глава 1иногда может быть непо-иногда может быть непо-нятен, то объяснения именно и предназначены для того, чтобы растолковать любые неясности, полагаясь на авторский опыт прохождения тестирования.нятен, то объяснения именно и предназначены для того, чтобы растолковать любые неясности, полагаясь на авторский опыт прохождения тестирования.Процесс инициализации ядра охватывает несколько этапов. Понимание того, как ядро Solaris конфигурируется, располагается и загружается в память, является критически важным для системного администрирования.
Выполнение инициализации ядра
Выполнение инициализации ядра
Глава 1
Глава 1
иногда может быть непо-
иногда может быть непо-
нятен, то объяснения именно и предназначены для того, чтобы растолковать любые неясности, полагаясь на авторский опыт прохождения тестирования.
нятен, то объяснения именно и предназначены для того, чтобы растолковать любые неясности, полагаясь на авторский опыт прохождения тестирования.
Понимание и управление уровнями запуска
Уровни запуска определяют, какие процессы и службы запускаются на различных стадиях загрузки системы. Вам будет необходимо знать все уровни запуска, доступные в системе Solaris.
Содержание
(Введение
Загрузку системы
(Включение питания фазы аппаратной и программной загрузки фаза инициализации ядра фаза 1%1Т
Использование сценариев управления для останова и запуску слуяф
Фобавление сценариев в каталоги управления запускам
Закрытие системы
Хоманды закрытия системы
Останов системы в целях.восстановления
(Выключение питания
(Резюме
Примените вати знания
Содержание главы: Обучение всегда идет более эффективно, когда вы одновременно можете видеть и общее, и частности. Чтобы предоставить вам визуальный образ того, как увязаны между собой темы и разделы в конкретной главе, в начале каждой главы вы сможете найти ее содержание. Вы также можете использовать это содержание для упрощения поиска конкретной темы или раздела.
Стратегия обучения:Каэюдая тема требует индивидуального подхода к изучению. Чтобы убедить вас в этом, издательство New^_, Riders включило описание подхода к изучению материала главы и, в частности, увязало эту стратегию с экзаменом.Стратегия обучения:Каэюдая тема требует индивидуального подхода к изучению. Чтобы убедить вас в этом, издательство New^_, Riders включило описание подхода к изучению материала главы и, в частности, увязало эту стратегию с экзаменом.Стратегия обучения
Стратегия обучения:
Каэюдая тема требует индивидуального подхода к изучению. Чтобы убедить вас в этом, издательство New^_, Riders включило описание подхода к изучению материала главы и, в частности, увязало эту стратегию с экзаменом.
Стратегия обучения:
Каэюдая тема требует индивидуального подхода к изучению. Чтобы убедить вас в этом, издательство New^_, Riders включило описание подхода к изучению материала главы и, в частности, увязало эту стратегию с экзаменом.
Вот стратегия, которая поможет вам подготовиться к экзамену:
При изучении настоящей главы рекомендуется выполнять каждый пошаговый процесс, описанный ниже, на какой-нибудь системе Sun. К сожалению, компьютеры на платформе Intel, работающие под управлением Solaris 8, не предоставляют среду OpenBoot, необходимую для практического освоения каждой темы, которая описывается в настоящей главе. Помимо практического выполнения отдельных шагов, попрактикуйтесь с различными опциями, предназначенными для загрузки системы.
В процессе загрузки наблюдайте за сообщениями системы и ознакомьтесь самостоятельно с каждым этапом процесса загрузки. Следите за сообщениями системы, появляющимися в процессе запуска. Вы должны понимать каждое сообщение, которое отображается в процессе загрузки, начиная с включения питания компьютера вплоть до перехода системы в многопользовательский режим.
Убедитесь, что вы основательно разобрались во всех состояниях запуска системы, в том числе, когда и где используется каждое из этих состояний. Кроме этого, вы должны понимать сценарии управления запуском и то. как они влияют на системные службы. Попрактикуйтесь в написании своих собственных сценариев управления запуском
Инструктивные особенности в самой главе
Настоящая книга включает в себя большое количество и разные виды информации. Множество различных элементов специально предназначено для того, чтобы помочь вам идентифицировать информацию по ее предназначению и по важности с точки зрения экзамена, а также предоставить различные способы изучения изложенного материала. Вы сможете самостоятельно определить, сколько внимания следует уделять тем или иным элементам в зависимости от ваших целей. Познакомившись с различными формами представления информации, вы узнаете, какая информация будет важна для вас при прохождении тестирования, а какая - в вашей практической деятельности.
sfejKPPBET. .v.,.-»»ij^S.-
Если вы не хотите, чтобы конкретный сценарий запускался при входе в определенное состояние Inlt, замените заглавную букау S или К в префиксе имени сценария на какой-нибудь другой символ; можно использовать те же, но строчные буквы - в или к. Запускаются только те файлы, имена которых начинаются с заглавной буквы S или К. Например, для отключения конкретного сценария измените его имя S99mount на a99mount.
Совет: Советы, приводимые на полях, предоставляют вам конкретные рекомендации, связанные с будущим экзаменам. Такие советы могут относиться к тому, какой материал и как именно выносится (или не выносится) на экзамен. Советы могут также содержать мнемонические правила или специфические особенности сертификационного экзамена.
В операционной системе Solaris 8 введена новая особенность (функция), которая дает возможность завершить работу зависшей системы. Новая последовательность нажатия клавиш для останова системы выглядит следующим образом: <RETURN> <T1LDE> (тильда, на клавиатуре вверху и слева) «CONTROL В>; эта последовательность эквивалентна последовательности Stop*A. Между нажатием клавиш должен выдерживаться интарвал более 0.5 секунды, а вся полная строка символов должна быть введана за время, не превышающее пяти секунд. Это справедливо только для последовательных устройств, работающих в режиме консолей, и не справедливо для систем, имеющих собственную клавиатуру. Если ваша консоль подсоединена к последовательному порту через какой-нибудь модем, еы можете поспать команду останова (Stop*А или L1*A) через окно подсказки, набрав последовательность символов *# (тильда и знак фунта).
Примечание: Примечания содержат различные виды полезной информации, такие как практические советы относительно технологии или администрирования, исторические предпосылки терминов и технологий или вспомогательные комментарии по выпускам промышленных образцов.
ПРЕДУПРЕЖДЕНИЕ!-‘1? Ж?$6$У№^
Не вносите изменений в файл /etc/system, пока не будете уверены в результате. Хорошим правилом является обязательное создание резервной копии любого системного файла, в который вы вносите изменения, на случай, если потребуется восстановить исходное состояние. Ошибки во введенных данных могут воспрепятствовать выполнению загрузки системы. Если процесс загрузки завершился аварийно из-за непригодного к использованию файла /etc/system, загрузите систему, воспользовавшись опцией интерактивной загрузки, а именно: boot -а. Когда потребуется ввести имя системного файла, введите имя файла разервной копии.
Предупреждение: При использовании сложных информационных технологий всегда существует потенциальная опасность ошибок или даже катастроф, которые могут происходить из-за ненадлежащего применения конкретной технологии. Предупреждения, приводимые по тексту, нацелены подготовить вас к таким потенциальным проблемам.
Процесс интерактивной загрузки
Шаг за шагом: Шаг за шагом - это удобные практические рекомендации, которые проведут вас через конкретную задачу или функцию, относящуюся к экзаменационным темам.Шаг за шагом: Шаг за шагом - это удобные практические рекомендации, которые проведут вас через конкретную задачу или функцию, относящуюся к экзаменационным темам.В ответ на приглашение ок введите boot -а и нажмите клавишу Enter.
Шаг за шагом:
Шаг за шагом - это удобные практические рекомендации, которые проведут вас через конкретную задачу или функцию, относящуюся к экзаменационным темам.
Шаг за шагом:
Шаг за шагом - это удобные практические рекомендации, которые проведут вас через конкретную задачу или функцию, относящуюся к экзаменационным темам.
Программа загрузки приглашает вас к диалогу.
Нажмите клавишу Enter для использования ядра, принятого по умолчанию (файл /kernel/unix), в ответ на запрос или введите имя ядра, подлежащего использованию при загрузке системы, и нажмите клавишу Enter,
В ответ на запрос нажмите клавишу Enter для использования маршрута по
умолчанию к каталогу модулей или введите маршрут и нажмите клавишу
Нажмите Enter для использования файла /etc/system или введите имя системного файла и нажмите Enter.
В ответ иа запрос нажмите клавишу Enter для использования принятого по
умолчанию типа корневой файловой системы (файловая система ufs для загрузки с локального диска или файловая система nfs для бездисковых клиентов).
Нажмите клавишу Enter для использования принятого по умолчанию физического имени корневого устройства или введите имя корневого устройства.
Рисунки:
Детальные рисунки помогут улучшить ваше понимание текста.
Расширенный обзор и возможности для самопроверки
В конце каждой главы, наряду с некоторыми обобщающими элементами, вы найдете раздел, который называется "Примените ваши знания", дающий несколько различных методов проверки вашего понимания материала и обобщения того, что вы изучили.
В конце каждой главы появляется список ключевых терминов. Это именно те термины, в знании которых вы должны убедиться. Вы должны понимать эти термины и на экзамене уметь дать их определения.В конце каждой главы появляется список ключевых терминов. Это именно те термины, в знании которых вы должны убедиться. Вы должны понимать эти термины и на экзамене уметь дать их определения.Ключевые термины: Ключевые термины
В конце каждой главы появляется список ключевых терминов. Это именно те термины, в знании которых вы должны убедиться. Вы должны понимать эти термины и на экзамене уметь дать их определения.
В конце каждой главы появляется список ключевых терминов. Это именно те термины, в знании которых вы должны убедиться. Вы должны понимать эти термины и на экзамене уметь дать их определения.
Начальная загрузка (bootstrapping) Загрузочный блок (bootblock) Состояние запуска (run state) Состояние инициализации (init state) Однопользовательский режим (single-user mode) Многопользовательский режим (multiuser mode) Сценарий управления запуском (run control script) Интерактивная загрузка (interactive boot) Загрузка с реконфигурацией (reconfiguration boot)
Резюме: Перед разделом, который озаглавлен "Примените ваши знания", вы найдете краткие выводы по главе, которое обобщают и делает обзор того, что вы должны были изучить.Резюме: Перед разделом, который озаглавлен "Примените ваши знания", вы найдете краткие выводы по главе, которое обобщают и делает обзор того, что вы должны были изучить.Упражнения:Эти действия предоставляют вам возможность освоить определенные практические задачи. Наша цель состоит в том, чтобы повысить ваше мастерство в работе с определенным программным продуктом или технологией. Вы должны уметь решать подобные задачи, чтобы успешно пройти экзамен.Упражнения:Эти действия предоставляют вам возможность освоить определенные практические задачи. Наша цель состоит в том, чтобы повысить ваше мастерство в работе с определенным программным продуктом или технологией. Вы должны уметь решать подобные задачи, чтобы успешно пройти экзамен.Обзорные вопросы: — Эти вопросы с краткими ответами на них позволят быстро оценить ваше понимание того, что вы только что прочитали в данной главе.Обзорные вопросы: — Эти вопросы с краткими ответами на них позволят быстро оценить ваше понимание того, что вы только что прочитали в данной главе.— Резюме
Резюме:
Перед разделом, который озаглавлен "Примените ваши знания", вы найдете краткие выводы по главе, которое обобщают и делает обзор того, что вы должны были изучить.
Резюме:
Перед разделом, который озаглавлен "Примените ваши знания", вы найдете краткие выводы по главе, которое обобщают и делает обзор того, что вы должны были изучить.
Упражнения:
Эти действия предоставляют вам возможность освоить определенные практические задачи. Наша цель состоит в том, чтобы повысить ваше мастерство в работе с определенным программным продуктом или технологией. Вы должны уметь решать подобные задачи, чтобы успешно пройти экзамен.
Упражнения:
Эти действия предоставляют вам возможность освоить определенные практические задачи. Наша цель состоит в том, чтобы повысить ваше мастерство в работе с определенным программным продуктом или технологией. Вы должны уметь решать подобные задачи, чтобы успешно пройти экзамен.
Обзорные вопросы: — Эти вопросы с краткими ответами на них позволят быстро оценить ваше понимание того, что вы только что прочитали в данной главе.
Обзорные вопросы: — Эти вопросы с краткими ответами на них позволят быстро оценить ваше понимание того, что вы только что прочитали в данной главе.
В настоящей главе приведен обзор процедур запуска и закрытия операционной системы Solaris. Обсуждались, в частности, такие вопросы, как включение питания системы в правильной последовательности, вход в ППЗУ OpenBoot, загрузка системы и загрузка ядра.
Далее были описаны различные состояния init, детально раскрыт вопрос запуска процессов и служб Solaris, начиная с загрузки и кончая переходом в многопользовательский режим работы. Системный администратор может управлять этими службами путем добавления и удвле- ния сценариев управления запуском.
Наконец, особенно важным является правильное выполнение закрытия системы, поскольку целостность данных может быть подвергнута опасности, если ие выполнить закрытия должным образом. Были последовательно описаны различные команды, используемые для закрытия системы.
В следующей главе более подробно описывается OpenBoot. В последующих главах вы больше узнаете об операционной среде Solaris и, поскольку это очень важно, об аппаратных средствах компьютера. Хорошие знания этих двух компонентов являются весьма существенными и помогут адекватно справляться с проблемами запуска системы.
Загрузка системы
Это упражнение проведет вас через этапы включения питанья и загрузки системы. Оцениваемое время- 5 минут
Включите питание всех периферийных устройств, если таковые существуют в дайной системе.
Если параметр auto-boot среды OpenBoot установлен в значение false, то вскоре после включения питания системы вы увидите приглашение ок. Если система установлена в режим auto-boot, то на экране вы увидите сообщение, подобное приведенному ниже:
SunOS Release 5.8 Version Oeneric_108621-04 64-bit
Copyright 1983-2000 Sun Microsystems, Inc. All rights reserved.
Вы увидите систему, начинающую процесс загрузки. Прервите процесс загрузки, нажав клавиши Stop+A. На экране появится приглашение ок.
После приглашения ок введите команду boot для загрузки системы.
Обзорные вопросы
Выберите последовательность событий, которая наилучшим образом описывает процесс загрузки системы.
—— А.Фаза загрузки из ППЗУ, фаза программной загрузки, фаза инициали
зации ядра, фаза init
Фаза программной загрузки, фаза загрузки из ППЗУ, фаза инициализации ядра, фаза init
Фаза программной загрузки, фаза загрузки из ППЗУ, фаза init, фаза инициализации ядра
Фаза загрузки из ППЗУ, фаза программной загрузки, фаза init, фаза инициализации ядра
Что состоит из небольшого статического ядра и множества динамически загружаемых модулей?
Ядро операционной системы
ufsboot
С. Оболочка
Загрузочный блок
Ответы и объяснения: — Для каждого обзорного и экзаменационного вопросов вы найдете исчерпывающие объяснения, которые расположены в конце этого разделаОтветы и объяснения: — Для каждого обзорного и экзаменационного вопросов вы найдете исчерпывающие объяснения, которые расположены в конце этого раздела Ответы на обзорные вопросы
Ответы и объяснения: — Для каждого обзорного и экзаменационного вопросов вы найдете исчерпывающие объяснения, которые расположены в конце этого раздела
Ответы и объяснения: — Для каждого обзорного и экзаменационного вопросов вы найдете исчерпывающие объяснения, которые расположены в конце этого раздела
А. Процесс загрузки последовательно проходит следующие четыре фазы, загрузку из ППЗУ, программную загрузку, инициализацию ядра. iuit.
А. Ядро операционной системы состоит из двух статических частей, файлы которых называются genunix и unix. Причем, genunix представляет собой независимый от платформы, общий файл ядра; unix представляет собой часть ядра, специфическую для данной компьютерной платформы. Когда выполняется загрузка системы, программа ufsboot объединяет в памяти эти два файла и множество динамически загружаемых модулей для формирования рабочего ядра операционной системы.
Введение
Автор настоящей книги занимается обучением системных администраторов Solaris свыше 12 лет. Эта книга содержит учебный материал, который автор использует в своих базовом и расширенном учебных курсах по администрированию Solaris. Эти курсы за прошедшие годы помогли тысячам людей стать сертифицированными администраторами Solaris. Настоящая книга представляет собой третье издание Solaris Training Guide: System Administrator Certification ("Руководство по обучению Solaris: сертификация системного администратора"). Впервые она была написана для Solaris 2.6, затем для версии 7 и вот теперь - для версии 8. Администраторы во всем мире использовали эту книгу в тех случаях, когда инструкции учебного центра фирмы Sun были либо недоступны, либо выходили за рамки их бюджета. Многие из вас написали автору свои истории успеха, предложения и комментарии. Ваши предложения - это то, что продолжает повышать ценность настоящего руководства по обучению.
Настоящая книга предоставляет материалы по обучению для любого человека, который заинтересован стать сертифицированным системным администратором фирмы Sun по операционной системе Solaris 8. Используя эту книгу в качестве руководства по обучению, вы сэкономите много времени и сил для поиска информации, необходимой вам при сдаче сертификационного экзамена. Настоящая книга достаточно подробно охватывает экзаменационные темы, чтобы неопытный системный администратор смог изучить их и применить полученные знания в реальных жизненных ситуациях. Опытные читатели обнаружат, что в этой книге материал изложен полно и лаконично, что делает ее ценным руководством по обучению. Настоящая книга - это не шпаргалка и не средство для зубрежки перед экзаменом; это именно руководство по обучению. Другими словами, она не просто дает ответы на вопросы, которые вам будут задавать на экзамене. Автор убежден в том, что настоящая книга охватывает экзаменационные темы достаточно подробно - от начала до конца. Если вы не уверены в своих знаниях по каким-либо экзаменационным темам, эта книга обучит вас всему, что вы должны знать. После прочтения каждой главы оцените ваши знания по пройденному материалу, используя для этого обзорные вопросы в конце каждой главы. Когда вы завершите изучение одной из книг, воспользуйтесь программой ExamGear на прилагаемом диске CD-ROM, чтобы оценить ваши знания экзаменационных тем. Прилагаемый диск содержит типовые вопросы, с которыми вам, вероятно, предстоит встретиться на реальных экзаменах. На Web-сайте www.unixed.com доступно большее количество типовых вопросов, поэтому не забудьте посетить его, там вы сможете найти дополнительные материалы для обучения.
Как эта книга сможет помочь вам
Настоящая книга обучит вас, как управлять операционной системой Solaris 8. Она предлагает вам самоуправляемый учебный курс по всем предметным областям, которые выносятся на сертификационные экзамены, включая инсталляцию, конфигурирование и администрирование операционного окружения Solaris 8. Вы получите конкретные навыки, чтобы управлять системой и, в частности, стать сертифицированным системным администратором фирмы Sun по операционной системе Solaris 8.
По всему тексту настоящей книги автор предоставляет вам полезные советы и реальные примеры, с которыми ему приходилось сталкиваться в качестве системного администратора. Кроме того, приведены полезные, реальные упражнения, которые помогут вам практичес-
ки отработать изученный материал. Структура настоящей книги излагается в следующих разделах.
ф Организация: Настоящая книга организована в соответствии с тематикой конкретного экзамена. Каждая тема, которую вы должны знать для инсталляции, конфигурирования и администрирования Solaris 8, представлена в настоящей книге. Автор постарался представить темы в порядке, максимально приближенном к последовательности, заданной фирмой Sun. Однако при этом автор без колебаний изменял последовательность изложения материала в тех случаях, когда это требовалось для максимального упрощения освоения материала. Кроме того, автор постарался воспользоваться перечисленными способами, чтобы сделать информацию доступной для восприятия:
Настоящее введение включает полный список экзаменационных разделов и тем.
Каждая глава начинается со списка предлагаемых тем.
Каждая глава также начинается с содержания, которое предоставляет вам краткий обзор излагаемого материала и номера страниц, на которых вы сможете найти конкретные разделы.
Ф Инструктивные особенности. Настоящее издание предназначено предоставить вам множество способов для изучения и закрепления экзаменационного материала. Вот некоторые из наиболее полезных методов:
Объяснения тем. Как уже отмечалось ранее, каждая глава начинается с перечня предложенных в ней тем. Непосредственно после формулировки следует объяснение конкретной темы, предоставляя информацию, более доходчиво определяющую эту тему в свете экзамена.
Стратегия обучения. В начале каждой главы помещена также стратегия изучения материала, увязывающая его с конкретным экзаменом.
Перерывы для обзоров и резюме. Критически важная информация обобщается в различных местах настоящей книги в виде списков или таблиц. Каж-
' дая глава также заканчивается краткими выводами.
Ключевые термины. Перед окончанием каждой главы появляется список ключевых терминов.
Примечания. Примечания приводятся по тексту и содержат различные виды полезной информации, такой как практические советы относительно технологии или администрирования, исторические предпосылки терминов и технологий или вспомогательные комментарии по выпускам промышленных образцов.
Предупреждения. При использовании сложных информационных технологий всегда существует потенциальная опасность ошибок или даже катастроф, которые могут происходить из-за ненадлежащего применения конкретной технологии. Предупреждения, приводимые по тексту, нацелены подготовить вас к таким потенциальным проблемам.
Советы. Советы, приводимые по тексту, предоставляют вам конкретные рекомендации, связанные с будущим экзаменом. Такие советы могут относиться к тому, какой материал и как именно выносится (или не выносится) на экзамен. Советы могут также содержать мнемонические правила или специфические особенности сертификационного экзамена.
Шаг за шагом. Шаг за шагом - это удобные практические рекомендации, которые проведут вас через конкретную задачу или функцию, относящуюся к экзаменационным темам.
Упражнения. Упражнения находятся в конце каждой главы в разделе "Примените ваши знания" и предоставляют вам практические возможности для учебы и оценки полученных знаний.
ф Расширенные возможности практического тестирования. Настоящая книга предоставляет вам многочисленные возможности, чтобы вы смогли на практике оценить ваши знания и готовность к сдаче экзамена. Практические возможности включают в себя следующее:
Обзорные вопросы. Эти вопросы появляются в конце каждой главы в разделе "Примените ваши знания". Они позволят быстро оценить ваше понимание того, что вы только что прочитали в данной главе. Ответы на указанные вопросы представлены в отдельном разделе, который озаглавлен "Ответы на обзорные вопросы".
Практический экзамен. Практический экзамен для каждого сертификационного экзамена включен в "Итоговый обзор" (этот вопрос будет обсуждаться позднее).
ExamGear. Специальная версия программного обеспечения ExamGear, которая помещена на прилагаемом к настоящей книге диске CD-ROM, предоставляет вам еще большее количество практических вопросов, с которыми вы, вероятно, столкнетесь на реальных экзаменах. Эти вопросы уже находятся на компакт-диске, их нужно просто "разблокировать, чтобы вы могли обратиться к ним.
ПРИМЕЧАНИЕ'
Описание программного обеспечения ExamGear представлено в приложении F.
ф Итоговый обзор. Эта часть книги предоставляет вам три ценных средства для подготовки к экзамену:
Быстрые факты. Эта сжатая версия информации, содержащейся в настоящей книге, будет чрезвычайно полезна вам для последнего обзора.
Советы по обучению и подготовке к экзамену. Прочтите этот раздел пораньше, он поможет вам разработать собственную стратегию обучения. Этот раздел предлагает ценные советы для экзаменационного дня и информацию относительно форматов экзаменационных вопросов, таких как адаптивное тестирование и вопросы на основе рассмотрения конкретного случая.
Практический экзамен. В этой части представлен полный практический экзамен с вопросами, написанными в стиле, аналогичном используемому на реальном экзамене. Воспользуйтесь практическим экзаменом, чтобы оценить вашу готовность к сдаче реального экзамена.
ф Приложения. Настоящая книга также включает в себя ценные приложения, в том числе историю развития операционной системы Solaris (приложение С), краткий обзор процесса сертификации Solaris (приложение D), описание содержимого прилагаемого диска CD-ROM (приложение Е) и указания по применению программного обеспечения ExamGear (приложение F).
Эти и все остальные, упоминавшиеся ранее, особенности настоящей книги, дадут вам возможность полностью подготовиться к экзамену.
Соглашения, используемые в книге
ф Команды. В пошаговых примерах и упражнениях, команды, которые вам следует вводить с клавиатуры, отображены специальным моноширинным шрифтом.
Ф Аргументы и опции. В командном синтаксисе опции и аргументы команды заключены в угловые скобки <>. Символы, набранные курсивом в угловых скобках, обозначают то, что вы фактически введете с клавиатуры. Вводить сами угловые скобки <> не нужно.
Ip -d<printer пате> <filename> <return>
ф Использование мыши. При использовании меню и окон вы выбираете их элементы с помощью мыши. Выражение "щелкните кнопку..." или,скажем, "щелкните пункт меню" означает, что вы должны поместить указатель мыши на указанную экранную кнопку или на пункт меню, а затем выполнить щелчок левой кнопкой мыши, удерживая указатель. Ниже приведена принятая по умолчанию раскладка кнопок для трехкнопочной мыши:
Левая кнопкаВыбор
Средняя кнопкаПеренос/корректировка
Правая кнопкаМеню
Кнопка выбора используется, чтобы выбирать объекты и активизировать элементы управления. Средняя кнопка мыши сконфигурирована либо для переноса, либо для корректировки. По умолчанию она установлена для переноса, то есть, с помощью этой кнопки можно перетащить или отпустить (оставить) элементы списка или текста. Вы сначала используете левую кнопку мыши для выделения текста, а затем - среднюю кнопку, чтобы переместить этот текст в другое окно или повторно выдать команду. Средняя кнопка также может применяться, чтобы перемещать окна относительно экрана. Правая кнопка мыши, кнопка меню, используется для того, чтобы отображать и выбирать опции из всплывающих меню.
Ф Опции меню. Названия меню и опций, которые появляются в них, разделяются запятыми. Например, запись "Выберите File, Open" означает, что вам нужно открыть меню File и выбрать опцию Open.
ф Символ продолжения кода (команды). Если какая-нибудь строка кода слишком длинна, чтобы поместиться на одной строке страницы, то она разрывается и затем продолжается на следующей строке. Продолжению предшествует символ обратной наклонной черты.
Читательская аудитория
Настоящая книга предназначена для любого, кто имеет базовые знания операционной системы UNIX и хочет узнать больше о системном администрировании Solaris. Планируете ли Вы стать сертифицированным специалистом или нет, эта книга послужит отправной точкой к вашему становлению в качестве системного администратора Solaris. В
настоящем издании представлен тот же самый учебный материал, который используется автором в преподаваемом им учебном курсе системного администрирования Solaris. Настоящая книга охватывает как базовые, так и расширенные разделы системного администрирования, которые необходимо изучить прежде, чем вы начнете осуществлять управление операционной системой Solaris. Цель автора состояла в том, чтобы представить материал в доступной форме и написать текст, который является простым для чтения и понимания. Единственным предварительным требованием является то, чтобы вы ранее использовали UNIX, прослушали базовый учебный курс по UNIX для пользователей или изучили соответствующий учебный материал таким образом, чтобы понимать основные команды и синтаксис UNIX. До того как вы начнете управлять Solaris, очень важно, чтобы вы реально работали в UNIX.
По состоянию на август 2002 года базовый учебный курс проводился под управлением Solaris 8 (SunOS 5.8 - воплощение System V, релиз 4 от фирмы Sun). В этом курсе изучаются такие темы:
Обзор операционной системы Unix
особенности и преимущества Unix
история и эволюция Unix
стандартизация в Unix
структура системы
Установление взаимодействия
запуск сеанса Unix
использование CDE (окна)
применение базовых команд Unix
понимание синтаксиса команд Unix
использование страниц руководства (man pages) для получения помощи в Unix Введение в файловую систему
рассмотрение файлов и каталогов Unix
перемещение по файловой системе
использование полных и частичных маршрутов
понимание текущего и родительского каталогов
Управление файлами
создание каталогов
копирование файлов и каталогов
перемещение и переименование файлов и каталогов
удаление файлов и каталогов •
использование метасимволов оболочек
Полномочия Unix
понимание полномочий
полномочия доступа к файлам
полномочия доступа к каталогам
Фильтры переназначения и конвейеры
изучение стандартного ввода, стандартного вывода и стандартного файла ошибок
использование фильтров
использование конвейеров
Применение редактора vi
создание и редактирование файла
Введение в сценарии оболочек
создание простых сценариев оболочек
По окончанию этого курса вы должны приобрести базовые знания по Unix и должны уметь:
войти и выйти из Solaris
применять инструменты CDE
составлять командные строки для выполнения разных функций
перемещаться по дереву каталогов
манипулировать текстовыми файлами
создавать файлы и каталоги
выполнять резервное копирование и восстановление пользовательских файлов и каталогов
менять полномочия доступа к файлам и каталогам
работать с текстовым редактором vi
идентифицировать и модифицировать файлы инициализации
применять особенности оболочек, чтобы рационализировать исполнение команд
использовать базовые сетевые команды
использовать команды для поиска каталогов и файлов
получать список активных пользовательских процессов и выборочно уничтожать их Помимо базового учебного курса по UNIX существует еще и расширенный курс, затрагивающий следующие темы:
Оболочки и переменные Unix
понимание оболочек Unix
отображение принятых по умолчанию переменных
создание/удаление пользовательских переменных
команда stty для установки типов терминалов (backspace и т.д.) Пользовательское окружение в командном процессоре Korn
файлы .ехгс и .profile
модифицирование переменной PATH
Пользовательское окружение в командном процессоре С
файлы .cshrc и .login
модифицирование переменной PATH
Использование псевдонимов и функций
введение в концепцию псевдонимов
использование функций
как сделать ваши псевдонимы и функции постоянными
удаление псевдонимов и функций
Редактирование команд п их история (протоколирование команд)
редактирование команд с использованием "fc"
использование истории команд для их повторного вызова
сохранение истории (протокола) команд в файле
Состояние системы и информация команд
определение состояния вашей системы и пользователя
определение расположения команд
Средства многозадачности
ознакомление с многозадачным режимом
управление заданиями и фоновыми процессами
использование таблицы процессов для управления процессами
ознакомление с задержанными и фоновыми заданиями
Расширенное управление файлами
создание ссылок
применение команды find для обнаружения файлов
использование команды grep для поиска содержимого файла
ознакомление с командой egrep
обработка файлов с помощью awk, tr и sed
Архивирование файлов с помощью TAR
управление пространством, занимаемым файлом
архивирование файлов и каталогов
сжатие файлов
Печать
команды ip, Ipstat и cancel
По окончанию расширенного курса Unix вы должны уметь:
работать с переменными оболочек
идентифицировать и модифицировать файлы инициализации оболочек
использовать псевдонимы и функции
применять особенности оболочек, чтобы рационализировать исполнение команд
использовать базовые сетевые команды
использовать команды для поиска каталогов и файлов
получать список активных пользовательских процессов и выборочно уничтожать их
использовать утилиты расширенного управления файлами
создавать архивы при помощи tar
использовать службу печати 1р
Знание базового и расширенного курсов Unix - необходимое условие освоения принципов администрирования Solaris и последующей, успешной сдачи экзамена на получение сертификата системного администратора фирмы Sun.
Эта книга также предназначена для опытных системных администраторов, которые хотят получить сертификат. Чтобы сдать сертификационные экзамены, вы должны иметь глубокие знания основных принципов администрирования Solaris. Настоящая книга поможет вам выполнить обзор основных принципов, необходимых для сдачи сертификационных экзаменов.
Сертификационные экзамены системного администратора фирмы Sun
Чтобы стать сертифицированным системным администратором фирмы Sun, вы должны пройти два экзамена: 310-011 (Часть I) и 310-012 (Часть II). Первая часть сертификационного экзамена - предварительное условие для второй части. Вы не сможете получить сертификат до тех пор, пока не пройдете оба экзамена. Кроме того, даже если вы уже были сертифицированы по операционной системе Solaris 2.6 или Solaris 7, вы все равно должны сдать экзамены 310-011 и 310-012, чтобы получить сертификат по операционной системе Solaris 8.
Остерегайтесь фальшивок. Автору приходилось видеть некоторые Web-сайты, продвигающие свои собственные программы сертификации, так что сначала тщательно оцените их предложения. Программы сертификации, продвигаемые этими сайтами-это отнюдь не то же самое, что программа фирмы Sun, и вы не сможете получить сертификат от фирмы Sun до тех пор, пока не пройдете экзамены в центре тестирования, сертифицированном фирмой Sun. Посетите Web-сайт автора (www.unixed.com) для получения ссылок на реальные экзамены и информации относительно программы сертификации фирмы Sun, если вы сомневаетесь.
Экзамен 310-011
Тематика экзамена 310-011 охватывает следующие разделы.
Системные понятия
Установление соответствия между терминами системного администрирования и их соответствующими определениями. Вы также должны будете распознавать различные опции команд, представленные на страницах руководства (man page).
Загрузочное PROM
Знание того, как прервать работу системы, которая не откликается на команды. Понимание методов, которые обычно используются для манипулирования пользовательскими псевдонимами устройств.
Инсталляция
Описание последовательности операций, требуемых для выполнения инсталляций программного обеспечения операционной среды Solaris 8 на автономной системе, подсоединенной к сети. Идентификация функций команд, используемых для администрирования пакетов программного обеспечения. Понимание процессов инсталляции, проверки и удаления заплат операционной системы.
Инициализация и закрытие
Установление соответствия между уровнями запуска, или выполнения, Solaris 8 и их функциональным назначением. Понимание функций файлов или каталогов, к которым выполняется обращение в процессе загрузки. Знание команд, которые применяются для изменения уровня запуска системы до заданного состояния.
Администрирование пользователей
Понимание всех аспектов администрирования пользователей и групп.
Защита информации от несанкционированного доступа
Понимание порядка установки и проверки полномочий доступа к файлам и каталогам. Вы также должны знать команды, которые обычно используются для создания, модифицирования и удаления ACLs (Access Control Lists - списков управления доступом).
Управление процессами
Знание команд, отображающих информацию обо всех активных процессах в системе. Понимание эффекта посылки конкретного сигнала какому-нибудь процессу. Знание различных методов, используемых для завершения какого-нибудь активного процесса.
Файловые системы
Перечисление различных типов файловых систем для операционной системы Solaris. Знание конфигурационных файлов, связанных с монтированием и предоставлением доступа к файловым системам на всех типах носителей информации.
Файлы и каталоги
Знание методов и команд, используемых для управления файлами и каталогами. Понимание различных типов файлов, каталогов, ссылок и файлов устройств.
Процесс загрузки
Понимание процесса загрузки в целом, а также знание различных файлов конфигурации и сценариев запуска.
Конфигурирование дисков
Знание того, как добавить дисковые устройства к системе. Вы также должны знать файлы устройств, связанные с дисковыми накопителями.
Форматирование
Понимание того, как следует пользоваться утилитой format.
Резервное копирование и восстановление информации
Знание функциональных возможностей различных утилит копирования, архивирования и восстановления в среде Solaris 8. Способность идентифицировать команды и операции, необходимые для копирования и восстановления файловой системы.
Базовый командный синтаксис
Понимание того, как следует осуществлять навигацию по структуре каталогов Solaris 8.
Знание различных метасимволов и того, как они могут быть использованы для обращения к файлам и каталогам в пределах дерева каталогов. Знание команд, необходимых для вывода списка содержимого каталогов и определения типа файлов внутри каталога. Знание команд, применяемых для манипулирования файлами и каталогами.
Текстовый редактор
Умение использовать текстовый редактор vi. Вы должны знать три основных режима работы этого редактора, знать, как позиционировать и перемещать курсор, создавать и удалять текст, копировать или перемещать текст. Вы также должны знать, как использовать функции поиска и замещения в текстовом редакторе vi.
Дистанционное соединение
Понимание того, как следует выполнять операции на дистанционных системах, и знание команд дистанционной оболочки. Знание подсистемы команд, используемых утилитой ftp для передачи файлов между локальной и дистанционной системами.
Экзамен 310-012
Тематика экзамена 310-012 охватывает следующие разделы.
Взаимодействие "клиент-сервер"
Знание всех типов серверов и клиентов, используемых в сетевой среде Solaris 8.
Сетевая среда Solaris
Определение функций каждого уровня в семиуровневой модели OSI и модели TCP/IP. Перечисление особенностей и функций Ethernet. Описание характеристик протоколов RARP и ARP. Идентификация команд, отображающих информацию о локальном сетевом интерфейсе. Описание взаимоотношения между службой RPC и процессом rpcbind и того, как получить список зарегистрированных служб RPC. Идентификация операций, необходимых для запуска и останова сетевых служб через командную строку.
Системный журнал Solaris
Понимание системного журнала и его конфигурирования. Знание синтаксиса конфигурационного файла системного журнала и его влияния на поведение системного журнала.
Управление дисками
Знание утилит, используемых для создания, проверки и монтирования файловых систем. Понимание различий между физическими и виртуальными дисками. Перечисление преимуществ приложения для администрирования виртуальных дисков. Идентификация характеристик и функций пакетов программного обеспечения Solstice DiskSuite и Sun StorEdge Volume Manager.
Псевдофайловые системы и область своппинга в Solaris
Понимание псевдофайловых систем Solaris. Понимание своппинга и всех шагов, которые необходимо выполнить для создания и добавления области подкачки к системе.
Среда NFS
Понимание функций сервера и клиента NFS. Знание того, как сделать совместно используемые ресурсы доступными и недоступными для монтирования. Знание того, как разрешить автоматическое монтирование ресурсов на клиенте NFS.
AutoFS
Понимание преимуществ использования утилиты automount и каждого из типов таблиц автомонтирования. Знание того, как следует сконфигурировать, запустить и остановить автомонтировщик.
CacheFS
Понимание того, как следует сконфигурировать кэшированную файловую систему. Знание команд, используемых для мониторинга и управления кэшированной файловой системой.
Службы имен
Понимание назначения каждого типа служб имен, доступных в Solaris 8, сравнение и сопоставление их функциональных возможностей. Знание того, как следует сконфигурировать файл переключателя для каждого типа служб имен.
NIS
Понимание процессов и компонентов главного сервера, подчиненного сервера и клиента NIS; знание операций, которые необходимо выполнить для их конфигурирования. Понимание операций, которые необходимо выполнить, чтобы добавлять, модифицировать и распространять таблицу отображения NIS.
Ролевое управление доступом (RBAC)
Понимание функции ролевого управления доступом в среде Solaris 8.
Консоль управления Solaris и пакет Solstice AdminSuite
Понимание особенностей консоли управления Solaris и пакета Solaris AdminSuite.
Автоматическая инсталляция JumpStart
Понимание назначения каждого из трех серверов JumpStart. Вы должны знать все команды, которые используются для установки и модифицирования сеанса JumpStart между сервером и его клиентами. Короче говоря, вы должны знать все о конфигурировании сеанса Solaris JumpStart. Иногда случается так, что экзаменационные темы изменяются или меняются местами. Настоятельно рекомендуется, чтобы прежде, чем вы начнете работать с этой книгой, вы посетили бы Web-сайт автора по адресу www.unixed.com, чтобы получить самый последний список экзаменационных тем, перечень замеченных в настоящей книге опечаток, актуальные примеры экзаменационных вопросов и любые другие последние новости об этих экзаменах. Автор обеспечит всю информацию, которая потребуется вам для сдачи экзамена; все, что вам нужно сделать - это просто выделить время. Изучение тем экзамена - это первый этап вашей подготовки; следующим этапом должна стать практическая подготовка. Вы должны иметь доступ к системе, работающей под управлением Solaris 8, чтобы практически отработать все, что вы узнали. Если только вы не обладаете сверхъестественной памятью, то будет достаточно сложно сдать экзамены без практики. Хотя лучше иметь систему Sun Sparc или Sun Ultra, загрузите свободно распространяемую копию Solaris 8 для персонального компьютера иа платформе Intel; такой машины будет вполне достаточно, чтобы попрактиковаться. Актуальные ссылки для получения этого программного обеспечения вы также сможете найти по адресу www.unixed.com.
Четвертая часть настоящей книги содержит приложения. Они предоставляют некоторые дополнительные материалы, на которые делаются ссылки по всему тексту этой книги. Хотя материал, включенный в приложения, не выносится на экзамен, эти разделы предлагают вам полезную фоновую и дополнительную информацию о темах, с которыми вы столкнетесь на экзамене.
В конце настоящей книги находится тестовый компакт-диск ExamGear, который подготовит вас к тем вопросам, с которыми вы можете столкнуться на экзамене. Это полноценное тестирование ваших знаний по всем экзаменационным темам. Если вы недостаточно подготовлены в какой-нибудь области, образцы вопросов помогут вам определить эту область, чтобы вы смогли возвратиться к соответствующей главе и повторно изучить эту тему.
Что является новым в среде Solaris 8
Настоящий раздел охватывает некоторые из новых особенностей, появившихся в Solaris 8, которые не были доступны в Solaris 7. Хотя большинство изменений являются незначительными, важно обратить внимание на те различия, которые применимы к системному администрированию. Имя базовой операционной системы-SunOS 5.8. Усовершенствова-
ния в этом выпуске включают в себя следующее:
Ф Реестр продуктов Solaris, который представляет собой инструмент, используемый для управления инсталлированным программным обеспечением с помощью Solaris Web Start 3.0 или команд управления Solaris, таких как pkgadd.
ф Команда devfsadm предоставляет усовершенствованный механизм для управления специальными файлами устройств в каталогах /dev и /devices. Команда devfsadm заменяет команды drvconfig, devlinks, disks, tapes, ports и audlink.
Ф CDE версии 1.4 предоставляет следующее:
Редактор "горячих клавиш", который позволяет пользователям автоматизировать повторно выполняемые задачи.
Инструмент sdtimage для захвата экранного изображения.
Подсказки, предоставляющие краткое описание пиктограммы просто при наведении курсора на данную пиктограмму.
Расширенная панель управления (Control Panel) для настройки рабочего стола.
Программное обеспечение sync для синхронизации данных календаря, электронной почты, блокнота и адресной книги рабочего стола с PDA (Personal Desktop Assistant - персональным ассистентом рабочего стола), таким как Palm Pilot.
Audio Mixer (аудиомикшер-устройство, предназначенное для наложения и смешивания аудиосигналов от различных источников).
Ф Язык программирования PERL 5 сейчас включается в операционную среду Solaris 8.
ф Реализована поддержка USB (Universal Serial Bus - универсальной последовательной шины) на системах с архитектурой Intel.
ф На дистрибутивном компакт-диске находится множество свободно распространяемых инструментов и библиотек, в том числе:
bash. Интерпретатор командного языка, совместимый с соответствующей оболочкой
gzip. Утилита сжатия данных GNU zip
zip. Утилита сжатия и упаковки файлов
• Множество других утилит и программ
ф Принудительная возможность отсоединения, позволяющая команде amount демонтировать файловую систему независимо от того, используется ли она в данное время.
ф Файловая система UDE (Universal Disk Format-универсальный дисковый формат) для обмена данными на дисках CD-ROM и DVD-ROM.
ф Обновления, обеспечивающие условное (отсроченное) время доступа на файловых системах UFS.
ф Теперь в комплекте Solaris 8 поставляется Web-сервер Apache и соответствующие модули.
ф Программа sendmail версии 8.9.3.
ф Новое поколение протокола Internet под названием lpv6.
ф Протоколирование на сервере NFS.
Ф GUI для администратора DHCP, предоставляющий графический интерфейс на основе технологии Java для конфигурирования и управления сервером Solaris DHCP (Dynamic Host Configuration Protocol - протокол динамической настройки хостов) и базой данных DHCP.
ф Дистанционная консоль с улучшенными возможностями для локализации проблем на дистанционных системах.
ф Новые команды для управления несколькими центральными процессорами и для мониторинга процессов, такие как cpustat, cputrack и prstat.
ф RBAC (Role-Based Access Control - Ролевое управление доступом), позволяющее администраторам предоставлять ограниченные возможности администрирования обычным пользователям, которые не являются суперпользователями.
ф SMC версии 2.0 (Solaris Management Console - консоль управления Solaris) - набор инструментальных средств с графическим интерфейсом пользователя, облегчающих администрирование ваших серверов.
ф Инсталляция Web Start Flash, которая предоставляет вам возможность создать единственную эталонную инсталляцию операционной среды Solaris на какой- нибудь машине, а затем реплицировать (распространять) эту инсталляцию на несколько машин.
Были перечислены только основные расширения, относящиеся к системному администрированию. Для получения полного перечня изменений и расширений в Solaris 8 обратитесь к коллекции документов "What’s New" по адресу http://docs.sun.com.
Рекомендации по сдаче экзамена
Более подробные советы вы сможете найти в разделе, который озаглавлен "Советы по обучению и подготовке к экзамену", и по тексту настоящей книги, однако в процессе обучения вам следует иметь в виду следующие рекомендации:
ф Прочтите весь материал. Настоящая книга включает также информацию, которая не входит в перечень экзаменационных тем, чтобы лучше подготовить вас к экзамену и к реальной практической работе. Прочтите весь материал, чтобы воспользоваться этими преимуществами.
ф Выполняйте пошаговые примеры и заключительные упражнения в каждой главе. Это поможет вам приобрести необходимый опыт.
ф Используйте вопросы для оценивания ваших знаний. Каждая глава содержит обзорные и экзаменационные вопросы. Используйте их, чтобы самостоятельно оценить свои знания и определить, какие материалы вы должны проработать повторно.
ф Просмотрите перечень экзаменационных тем. Разработайте ваши собственные вопросы и примеры для каждой перечисленной темы. Если вы сможете разработать несколько вопросов по каждому разделу и ответить на них, вам будет не сложно сдать экзамен.
ф Расслабьтесь и выспитесь перед сдачей экзамена. Время, отведенное для
сдачи экзамена, ограничено. Однако, если вы хорошо подготовились и владеете администрированием сети Solaris, у вас будет достаточно времени, чтобы ответить на все вопросы. Убедитесь, что вы хорошо отдохнули, чтобы справиться с тем напряжением, которое будет накладывать на вас ограничение времени в процессе сдачи экзамена.
ф Если вы не знаете ответа на какой-нибудь вопрос, просто пропустите его и не тратьте время впустую. Не ленитесь в процессе экзамена и отвечайте на все вопросы настолько быстро, насколько это возможно.
ф Посетите Web-сайт автора по адресу www.unixed.com. На этом сайте вы сможете найти следующее:
Самые последние изменения, которые фирма Sun может внести в сам экзамен или в перечень его тем. Вам следует учитывать, что фирма Sun вносит изменения в свои экзамены достаточно часто. Удостоверьтесь, что вы проверили эти изменения непосредственно перед сдачей экзамена.
Страницу FAQ с часто задаваемыми вопросами и замеченными опечатками относительно настоящей книги или экзаменов.
Ссылки на другие информационные Web-сайты.
Дополнительные практические вопросы и образцы экзаменов.
Онлайновый форум, где вы сможете обсудить проблемы, связанные с сертификацией, с другими системными администраторами.
■• Дополнительные учебные материалы, программы обучения и семинары,
относящиеся к сертификации по Solaris.
Непосредственно с этого Web-сайта вы также можете послать автору сообщение электронной почты с вопросами и комментариями по этой книге. Автор всегда старается ответить лично каждому корреспонденту.
Когда вы почувствуете себя достаточно уверенно, сдавайте реальные экзамены и становитесь сертифицированным системным администратором. Не забудьте отправить автору сообщение электронной почты и рассказать, как вы сдавали экзамены:
wcalkins@unixed.com.
КНИГА
ЧАСТЬ 1;
Запуск и закрытие системы
OpenBoot
Установка программного обеспечения Solaris 8
Управление пакетами программного обеспечения
Создание учетных записей пользователей
Введение в файловые системы
Файловые системы Solaris: дополнительные темы
Обеспечение безопасности системы
Управление процессами
Служба печати LP
Резервное копирование и восстановление
Написание сценариев и программ оболочек
Глава 1Глава 1
Глава 1
Глава 1
Запуск и закрытие системы
Темы
Эта глава охватывает следующие темы экзамена для системных администраторов.
Понимание процесса загрузки системы
Системный администратор должен понимать процесс загрузки системы в целом, начиная с правильной последовательности включения питания компьютера вплоть до шагов, которые выполняются при вводе системы в многопользовательский режим.
Выполнение инициализации ядра
Процесс инициализации ядра охватывает несколько этапов. Понимание того, как ядро Solaris конфигурируется, располагается и загружается в память, является критически важным для системного администрирования.
Понимание и управление уровнями запуска
Уровни запуска определяют, какие процессы и службы запускаются на различных стадиях загрузки системы. Вам будет необходимо знать все уровни запуска, доступные в системе Solaris.
Использование сценариев управления для останова или запуска служб
Системный администратор добавляет и модифицирует сценарии управления для настройки запуска процессов и служб в системе Solaris. От него требуется детальное понимание программ и конфигурационных файлов, используемых на различных уровнях запуска.
Выполнение закрытия системы
Правильное закрытие системы является критически важным. Понимание технологий корректного закрытия обеспечивает целостность данных в вашей системе. Существует несколько способов закрытия системы, системный администратор должен понимать достоинства и недостатки каждого из них.
Знание действий, требуемых для прерывания зависания системы
Иногда традиционные методы закрытия могут не произвести должного эффекта на безответной (зависшей) или потерпевшей аварию системе. Эта глава дает первоначальные сведения о том, когда и как использовать такие альтернативные методы закрытия для безопасного отключения системы.
Содержание
® ведение30
Загрузка системы30
(Включение питания31
фазы аппаратной и программной загрузку31
фаза инициализации ядра32
фаза UNIT39
^Использование сценариев управления для останова и запуску слух^44
(Подавление сценариев в каталоги управления запуском44
Закрытие системы48
команды закрытия системы48
Останов системы в целях.восстановления52
(Выключение питания53
Резюме53
Примените ваши знания54
Стратегия обучения
Вот стратегия, которая поможет вам подготовиться к экзамену:
При изучении настоящей главы рекомендуется выполнять каждый пошаговый процесс, описанный далее, на какой-нибудь системе Sun. К сожалению, компьютеры на платформе Intel, работающие под управлением Solaris 8, не предоставляют среду OpenBoot, необходимую для практического освоения каждой темы, которая описывается в настоя-
щей главе. Помимо практического выполнения отдельных шагов, попрактикуйтесь с различными опциями, предназначенными для загрузки системы.
В процессе загрузки наблюдайте за сообщениями системы и ознакомьтесь самостоятельно с каждым этапом процесса загрузки. Следите за сообщениями системы, появляющимися в процессе запуска. Вы должны понимать каждое сообщение, которое отображается в процессе загрузки, начиная с включения питания компьютера вплоть до перехода системы в многопользовательский режим.
Убедитесь, что вы основательно разобрались во всех состояниях запуска системы, в том числе, когда и где используется каждое из этих состояний. Кроме этого, вы должны понимать сценарии управления запуском и то, как они влияют на системные службы. Попрактикуйтесь в написании своих собственных сценариев управления запуском.
Наконец, научитесь закрывать систему. Убедитесь, что вам понятны преимущества и недостатки каждого из представленных здесь методов закрытия системы.
Введение
Запуск требует понимания принципов работы аппаратных средств и функций операционной системы, необходимых для перевода системы в состояние запуска. В настоящей главе обсуждаются операции, которые операционная система должна выполнить, начиная с включения питания и вплоть до получения приглашения на регистрацию. Кроме этого, настоящая глава охватывает шаги, выполнение которых необходимо для корректного закрытия системы. После прочтения этой главы вы поймете, как загрузить операционную систему от компонента среды OpenBoot под названием PROM (Programmable Read-Only Memory - программируемое постоянное запоминающее устройство, или ППЗУ) и какие операции должны быть выполнены для запуска ядра и системных процессов UNIX.
Загрузка системы
Начальная загрузка (bootstrapping) представляет собой процесс, реализуемый компьютером для загрузки и исполнения загружаемой операционной системы. Название было порождено фразой "pulling yourself up by your bootstraps" (совершенствование собственными силами). Машинные команды, необходимые для выполнения процедуры начальной загрузки, хранятся в ППЗУ.
Процесс загрузки проходит следующие фазы:
Фаза загрузки от ППЗУ. После включения питания компьютера ППЗУ отображает на экране идентификационную информацию системы и запускает процедуры самодиагностики для проверки аппаратных средств и памяти. Затем ППЗУ загружает первичную программу загрузки, именуемую bootblk.
Фаза программной загрузки. Программа bootblk находит и исполняет, загружая в память, вторичную программу загрузки под названием ufsboot из файловой системы ufs. Будучи загружена, программа ufsboot загружает ядро операционной системы.
Фаза инициализации ядра. Следует отметить, что ядро операционной системы инициализирует само себя и начинает загружать модули, используя для чтения файлов программу ufsboot. После того, как ядро загрузит модули, необходимые для монтирования корневой файловой системы, оно выгружает из памяти программу ufsboot и продолжает работу, используя собственные ресурсы. Ядро запускает операционную систему UNIX, монтирует необходимые файловые системы и запускает процесс /sbin/init для ввода систе-
мы в состояние "инициализации по умолчанию" ("initdefault"), которое определено в файле /etc/inittab.
Фаза IN IT. Ядро создает некоторый пользовательский процесс и запускает процесс /sbin/init, который запускает остальные процессы, считывая информацию/etc/inittab.
Процесс /sbin/init запускает сценарии rc (run control - управления запуском), которые исполняют последовательность других сценариев. Эти сценарии (/sbin/rc*) проверяют и монтируют файловые системы, запускают различные процессы и выполняют задачи обслуживания операционной системы.
Включение питания
ПРЕДУПРЕЖДЕНИЕ.>
Всегда подсоединяйте кабели до включения, иначе рискуете повредить вашу систему.
Перед включением питания убедитесь в надежности всех кабельных соединений. Проверьте кабели SCSI, которые подключают к компьютеру внешние дисковые и ленточные накопители, а также привод CD-ROM, чтобы убедиться в правильности их соединения. Проверьте сетевое подключение. Кроме того, убедитесь в правильности подключения клавиатуры и монитора. Незакрепленные кабели могут вызвать аварийное завершение еще в процессе запуска операционной системы.
Правильная последовательность включения питания оборудования выглядит следующим образом: в первую очередь включите любые периферийные устройства (такие как внешние дисковые или ленточные накопители), а затем включите питание системы.
Фазы аппаратной и программной загрузки
Процесс начальной загрузки начинается после включения питания, когда становится доступной информация, находящаяся в микросхеме ППЗУ. Фирма Sun называет эту информацию встроенным программным обеспечением OpenBoot, которое исполняется немедленно после включения питания. Более подробно OpenBoot описывается в главе 2, однако, поскольку это часть процесса загрузки, здесь вкратце описывается данное программное обеспечение.
Основной задачей встроенного программного обеспечения OpenBoot является загрузка операционной системы либо с какого-нибудь устройства массовой памяти, либо из сети.
OpenBoot содержит программу, называемую монитором, которая управляет системой до тех пор, пока не станет доступным ядро операционной системы. При включении питания монитор запускает процедуру самотестирования POST (Power-on self-test), которая проверяет аппаратные средства и память компьютера. Если при тестировании не было обнаружено никаких ошибок, автоматический процесс загрузки продолжается далее. OpenBoot включает в себя набор машинных команд, которые размещают в памяти и запускают программу загрузки системы и, в конечном итоге, запускают операционную систему UNIX.
Программа загрузки хранится в предопределенной области (сектора с 1 по 15) на системном жестком диске, на CD-ROM или на другом загрузочном устройстве, эта область именуется загрузочным блоком (bootblk). Этот загрузочный блок отвечает за загрузку вторичной программы загрузки (которая называется ufsboot и находится в файловой системе ufs на загрузочном устройстве) в память компьютера. Маршрут, ведущий к программе ufsboot, записывается в загрузочном блоке, который устанавливается утилитой installboot операционной системы Solaris.
Программа ufsboot находит и загружает в память ядро операционной системы, состо- яшее из двух частей. Ядро включает в себя два статических компонента, файлы которых называются genunix и unix. Файл genunix представляет собой независящий от платформы, общий файл ядра; файл unix представляет собой часть ядра, специфическую для данной компьютерной платформы. Когда выполняется загрузка системы, программа ufsboot объединяет эти два файла в памяти для формирования рабочего ядра.
Ядро, детально описываемое далее в настоящей главе, является той частью операционной системы, которая продолжает работать в течение всего времени, пока не будет выполнено закрытие системы.
Фаза инициализации ядра
OpenBoot PROM автоматически выдает команду boot, если параметр auto-boot установлен в значение true (по умолчанию) и если OpenBoot PROM не находится в полностью защищенном режиме. Более подробно этот режим описывается в главе 2. Система автоматически начинает процесс загрузки после включения питания, и вы не видите приглашения ок. Для прерывания процесса автоматической загрузки нажмите Stop+A. На экране появляется приглашение ок. Опции команды boot перечислены в таблице 1.1.
Таблица 1.1 Опции команды boot'
ОпцияОписание
аИнтерактивная загрузка
гЗагрузка с реконфигурацией
sЗагружает в однопользовательский режим
VВыполняет загрузку в подробном (многословном) режиме
Например, командная строка ok boot -v загружает систему в подробном режиме, который обеспечивает вывод на экран полного листинга системных сообщений в течение фазы загрузки. Опция -v также может быть использована с другими опциями для получения расширенного вывода.
Программа загрузки отвечает за загрузку в память ядра UNIX и за передачу указанному ядру управления системой. Команда boot должна иметь доступ к параметру OpenBoot под названием boot-device. Псевдоним, присвоенный устройству загрузки (disk или disk#), сообщает загрузочному устройству, где находится ядро операционной системы и как выполнить его запуск. Например, псевдоним disk предполагает следующий маршрут загрузки:
/sbus@1,f8000000/esp@0,40000/sd@3,0:а.
Команда boot
Неинтерактивная команда boot автоматически загружает систему, используя в качестве маршрута загрузки значение по умолчанию. Начните процесс неинтерактивной загрузки путем ввода следующей команды в ответ на приглашение OpenBoot:
ok boot
Система будет загружаться без какого-либо диалога.
В процессе интерактивной загрузки (boot -а) происходят остановы и запрашивается входная информация. Система предлагает диалоговое окно, в котором отображаются зна-
чения параметров загрузки, принятые по умолчанию, и предоставляется возможность внести изменения в эти значения. Вполне возможно, что вы захотите воспользоваться интерактивной загрузкой для внесения временных изменений в системный файл или в ядро. Интерактивная загрузка позволяет провести тестирование внесенных изменений и легко выполнить восстановление при возникновении каких-нибудь проблем.
Шаг за шагом.
Процесс интерактивной загрузки
В ответ на приглашение ок введите boot -а и нажмите клавишу Enter. Программа загрузки приглашает вас к диалогу.
Нажмите клавишу Enter для использования ядра, принятого по умолчанию (файл /kernel/unix), в ответ на запрос или введите имя ядра, подлежащего использованию при загрузке системы, и нажмите клавишу Enter.
В ответ на запрос нажмите клавишу Enter для использования маршрута по умолчанию к каталогу модулей или введите маршрут и нажмите клавишу Enter.
Нажмите Enter для использования файла /etc/system или введите имя системного файла и нажмите Enter.
В ответ назапрос нажмите клавишу Enter для использования принятого по умолчанию типа корневой файловой системы (файловая система ufs для загрузки с локального диска или файловая система nfs для бездисковых клиентов).
Нажмите клавишу Enter для использования принятого по умолчанию физического имени корневого устройства или введите имя корневого устройства.
Приведенный ниже вывод демонстрирует образец сеанса интерактивной загрузки: ок ok boot -а
Boot device: ' /pci@lf,0/pci@l,l/ide@3/disk@0,0:а File and args: -a Enter filename [kernel/sparcv9/unix]: Enter default directory for modules [/platform/SUNW,Ultra-5_10/kernel /platform/sun4u/kernel /kernel /usr/kernel]: Name of system file [etc/system]:
SunOS Release 5.8 Version Generic_108621-04 64-bit.
Copyright 1983-2000 Sun Microsystems, Inc. All rights reserved, root filesystem type [ufs]: Enter physical name of root device [/pci@If,0/pci@1,l/ide@ 3/disk@0,0:a]: configuring IPv4 interfaces: hmeO. configuring IPv6 interfaces: hmeO. Hostname: unknown metainit: unknown: there are no existing databases The system is coming up. Please wait, checking ufs filesystems
/dev/rdsk/c0t0d0s5: is clean. /dev/rdsk/c0t0d0s7: is clean. /dev/rdsk/c0t0d0s6: is clean. Starting IPv6 neighbor discovery. Setting default IPv6 interface for multicast: add net ffOO::/8: gateway fe80::aOO:20ff:fea2:6382 starting rpc services: rpcbind done. Setting default IPv4 interface for multicast: add net 224.0/4: syslog service starting, syslogd: line 24: WARNING: loghost could not be resolved Print services started, volume management starting. Mar 13 09:21:48 The system is ready, ultras console login:
Чтобы увидеть в процессе загрузки более подробную информацию, воспользуйтесь опцией -v:
ok boot -v
Система выдаст более подробную информацию: ok boot -v Resetting ...
Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 270MHz), No Keyboard OpenBoot 3.15, 128 MB memory installed, Serial #10642306. Ethernet address 8:0:20:a2:63:82, Host ID: 80a26382.
Initializing Memory
Rebooting with command: boot -v Boot device: /pci@If,0/pci@l,l/ide@3/disk@0,0:a File and args: -v
SunOS Release 5.8 Version Generic_108621-04 64-bit Copyright 1983-2000 Sun Microsystems, Inc. All rights reserved. Ethernet address = 8:0:20:a2:63:82 mem = 131072K (0x8000000) avail mem = 122306560 root nexus = Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 270MHz) pcipsyO at root: UPA Oxlf 0x0 pcipsyO is /pci@lf,0 PCI-device: pci@l,l, simbaO simbaO is /pci@lf,0/pci@l,l PCI-device: pci@l, simbal simbal is /pci@lf,0/pci@l PCI-device: ide@ 3, uataO uataO is /pci81f,0/pci@l,l/ide@3 dadO at pcil095,6460 target 0 lun 0 dadO is /pci@lf,0/pci@l,l/ide@3/dad@0,0
<ST34321A cyl 8892 alt 2 hd 15 sec 63> root on /pci0If,O/pci01,l/ide03/disk0O,0:a fstype ufs PCI-device: ebus@l, ebusO powerO at sbusO: offset 14,724000 powerO is /pci0If,O/pci01,l/ebus01/power014,724000 suO at ebusO: offset 14,3083f8 suO is /pci0If,O/pci01,l/ebus01/su014,3083f8 sul at ebusO: offset 14,3062f8 sul is /pci0If,O/pci01,l/ebus0l/su014,3062f8 seO at ebusO: offset 14,400000 seO is /pci01f,O/pci01,l/ebus0l/se014,400000 cpuO: SUNW,UltraSPARC-IIi (upaid 0 impl 0x12 ver 0x13 clock 270 MHz) configuring IPv4 interfaces: SUNW,hme0 : PCI IO 2.0 (Rev Id = cl) Found PCI-device: network01,l, hmeO hmeO is /pci01f,O/pci01,l/network01,l hmeO.
configuring IPv6 interfaces: hmeO. Hostname: unknown metainit: unknown: there are no existing databases
dump on /dev/dsk/cOtOdOsl size 420 MB SUNW,hme0 : Internal Transceiver Selected. SUNW,hme0 : Auto-Negotiated 100 Mbps Half-Duplex Link Up The system is coming up. Please wait, checking ufs filesystems /dev/rdsk/c0t0d0s5: is clean. /dev/rdsk/c0t0d0s7: is clean. /dev/rdsk/c0t0d0s6: is clean.
Starting IPv6 neighbor discovery.
Setting default IPv6 interface for multicast: add net ff00::/8: gateway fe80::a00:20ff:fea2:6382 starting rpc services: rpcbind done.
Setting default IPv4 interface for multicast: add net 224.0/4: syslog service starting.
syslogd: line 24: WARNING: loghost could not be resolved Print services started.
Mar 13 11:04:03 unknown pseudo: pseudo-device: todO Mar 13 11:04:03 unknown genunix: todO is /pseudo/tod00 Mar 13 11:04:03 unknown pseudo: pseudo-device: pmOMar 13 11:04:03 unknown genunix: pmO is\ /pseudo/pm00 Mar 13 11:04:04 unknown simba: PCI-device: SUNW,m64B02, m640 Mar 13 11:04:04 unknown genunix: m640 is /pci0If,O/pci01,l/SUNW,m64B02 Mar 13 11:04:04 unknown m64: m64#0: 1152x900, 4M mappable, rev 4750.7cvolume management starting.
Mar 13 11:04:06 unknown pseudo: pseudo-device: volO Mar 13 11:04:06 unknown genunix: volO is /pseudo/vol00
Маг 13 11:04:07 unknown scsi: sdO at uataO: target 2 lun 0
Mar 13 11:04:07 unknown genunix: sdO is /pci@If,0/pci@1,l/ide@3/sd02,0
Mar 13 11:04:09 unknown ebus: fdO at ebusO: offset 14,3023f0
Mar 13 11:04:09 unknown genunix: fdO is /pci@If,O/pci01,l/ebus@1/ fdthree@14,3023f0
Mar 13 11:04:15 unknown snmpdx:
The system is ready.
ultraS console login:
ПРИМЕЧАНИЕ.?.
В данном случае на экран будет выведено несколько страниц информации, поэтому рекомендуется подключить команду dmesg через канал к команде more, как показано здесь: /usr/sbin/dmesg|more.
Если вы не находитесь за системной консолью и не можете видеть информацию, выводимую на экран в процессе загрузки, то можно воспользоваться командой UNIX под названием dmesg для отображения процесса загрузки либо просмотреть эту информацию в файле /var/adm/messages.
Для просмотра сообщений, выводимых на экран в процессе загрузки, используйте один из приведенных ниже методов:
ф В ответ на приглашение UNIX наберите /usr/sbin/dmesg и нажмите клавишу Enter. Отображаются сообщения загрузки.
ф В ответ на приглашение UNIX наберите more /var/adm/messages и нажмите клавишу Enter.
Состояния запуска системы
ПРЕДУПРЕЖДЕНИЕ * ■ у _ -^v-. .
Не вносите изменений в файл /etc/system, пока не будете уверены в результате. Хорошим правилом является обязательное создание резервной копии любого системного файла, в который вы вносите изменения, на случай, если потребуется восстановить исходное состояние. Ошибки во введенных данных могут воспрепятствовать выполнению загрузки системы. Если процесс загрузки завершился аварийно из-за непригодного к использованию файла /etc/system, загрузите систему, воспользовавшись опцией интерактивной загрузки, а именно: boot-а. Когда потребуется ввести имя системного файла, введите имя файла резервной копии.
После того, как команда boot инициирует ядро, начинается выполнение нескольких фаз процесса запуска системы. Первой задачей OpenBoot является загрузка ядра операционной системы. Как установлено по умолчанию, файл ядра называется /kernel/unix и расположен в корневом (/) разделе на диске, маршрут к которому определяется в ППЗУ с помощью псевдонима disk. .
Ядро состоит из небольшой статической базовой части и большого количества загружаемых модулей ядра. Многие модули ядра операционной системы загружаются автоматически в процессе загрузки системы, другие, такие как драйверы устройств, загружаются ядром с диска по мере возникновения необходимости. Когда ядро загрузилось, система считывает файл /etc/system. Параметры этого файла определяют, какие именно модули будут загружаться ядром в процессе загрузки системы. Иногда возникает необходимость в изменении параметров ядра, которые содержатся в указанном файле, для настройки производительности системы.
После того, как управление системой передается ядру, система начинает процесс инициализации и переходит в одно из восьми состояний запуска, называемых также состояниями инициализации, как это описано в таблице 1.2. Поскольку состояние запуска 4 в настоящее время не применяется, фактически существует только семь используемых состояний запуска.
Таблица 1.2 Восемь состояний запуска системой и
Состояние запуска
Описание
0
Останавливает системные службы и демоны. Завершает все работающие процессы. Демонтирует все файловые системы.
S, s
Однопользовательское состояние (основной режим работы системного администратора). Только суперпользователь допускается к регистрации за системной консолью, а любые пользователи, зарегистрированные в системе, выводятся из нее на этом уровне запуска. Все ранее смонтированные файловые системы остаются монтированными и доступными. Все службы, за исключением самых главных служб операционной системы, закрываются в определенной последовательности.
1
Однопользовательское состояние (режим работы системного администратора). Остаются доступными все файловые системы, а любой зарегистрированный пользователь остается зарегистрированным. Все службы, за исключением самых главных служб операционной системы, закрываются в определенной последовательности.
2
Обычная работа в многопользовательском режиме без совместно используемых файловых систем NFS. Устанавливается переменная часового пояса. Монтируется файловая система /usr. Очищаются каталоги /tmp и /var/tmp. Загружаются сетевые интерфейсы и запускаются процессы. Запускается демон сгоп. Очищаются tmp-файлы uucp. Запускается система 1р (служба печати). Стартует демон sendmail.
3
Обычная работа в многопользовательском режиме с совместно используемыми файловыми системами NFS. Выполняются все задачи уровня 2. Стартуют демоны NFS.
4
Альтернативный многопользовательский режим (в настоящее время не используется).
5
Состояние выключения питания. Система закрыввется таким образом, чтобы можно было безопасно отключить питание. Если возможно, автоматически выключается питание систем, поддерживающих такую особенность.
6
Выполняется перезагрузка системы.
ПРИМЕЧАНИЕ
Различие между уровнем запуска 1 и уровнем запуска S,s заключается в том, что на уровне запуска 1 пользователи могут оставаться зарегистрированными. Если вы выдадите команду initS, сеансы пользователей завершаются. Если вы выдадите команду init 1, то пользователи, вошедшие в систему к этому моменту времени, не будут выведены из нее. Уровень 1 позволяет системному администратору выполнять обслуживание системы в то время, когда имеются зарегистрированные в ней пользователи. Однако все службы, за исключением самых главных служб опервционной системы, закрываются. Уровень S позволяет проводить такой вид обслуживания, как выполнение резервного копирования, когда все пользователи должны быть выведены из системы.
Состояние init, в котором функционирует система, определяет перечень служб и ресурсов, доступных пользователям. При подготовке к выполнению какой-нибудь задачи системного администрирования необходимо определить, какое состояние init является
приемлемым для ее выполнения. Используйте таблицу 1.3, чтобы определить, какое состояние следует использовать для конкретной задачи. Система в любой момент времени может работать только в одном состоянии init.
Таблица 1.3 Назначение каждого из восьми состояний запуска системы
Состояние init
Когда следует использовать это состояние
0
Для закрытия системы, чтобы можно было безопасно отключить питание компьютера (режим системного администратора).
S,s
Однопользовательское состояние (режим системного администратора). Этот уровень запуска используется в тех случаях, когда системный администратор решает задачи, требующие, чтобы все пользователи были выведены из системы. К числу таких задач относится, например, выполнение резервных копий уровня 0 или ремонт файловых систем. Любая функция, требующая, чтобы системный администратор работал в однопользовательском режиме, должна быть запущена на рассматриваемом уровне.
1
Однопользовательское состояние (режим системного администратора). Этот уровень запуска используется в тех случаях, когда системный администратор решает задачи администрирования и не хочет, чтобы дополнительные пользователи входили в систему. К числу таких задач относится, например, выполнение резервных копий или проверка файловых систем, в настоящее время не используемых зарегистрированными пользователями.
2
Для нормальной работы, когда не требуется организация разделяемого доступа к локальным файловым системам. Сразу несколько пользователей могут получить доступ к системе и к файловой системе в целом. Запускаются все демоны кроме сервера NFS и syslog Используйте этот уровень запуска в тех случаях, когда вы хотите быть уверены, что дистанционные компьютеры не смогут монтировать локальные файловые системы (более подробно NFS описывается в главе 17), или когда вы хотите, чтобы демон syslogd бездействовал.
3
Для нормальной работы, когда доступно совместное использование ресурсов NFS. Это обычный уровень запуска для большинства систем.
4
Альтернативный многопользовательский режим (в настоящее время не используется).
5
Состояние выключения питания. Система закрывается таким образом, чтобы можно было безопасно отключить питание. Если возможно, автоматически выключается питание систем, поддерживающих такую особенность. Все пользователи выводятся из системы, а службы операционной системы останавливаются в определенной последовательности.
6 .
Для закрытия системы (до уровня запуска 0) и последующей перезагрузки на многопользовательский уровень или на любой другой, который определен в файле inittab в качестве уровня по умолчанию.
Своппер
Первой задачей ядра является запуск процесса своппера (swapper). Процесс своппера является именно тем компонентом ядра, который планирует работу всех остальных процессов. Своппер имеет идентификатор процесса 0 и назван sched. Его первой задачей является запуск процесса init.
ПРИМЕЧАНИЕ .
В предыдущих версиях этот процесс назывался swapper и был переименован в sched в Solaris 8.
Фаза INIT
Команда /sbin/init генерирует процессы для установки системы, основываясь на инструкциях, заданных в файле /etc/inittab. Процесс init является родительским процессом всех остальных процессов. Он анализирует содержимое файла /etc/inittab с целью определения последовательности запуска остальных процессов и того, что следует делать, когда один из этих процессов завершится. Каждый компонент файла /etc/inittab имеет следующие поля:
id:runlevel:action:process
Более подробное описание каждого поля представлено в таблице 1.4.
Таблица 1.4 Поля файла inittab
Поле
Описание
id
Уникальный идентификатор
runlevel
Уровень запуска
action
Как следует запускать процесс
process
Имя команды, подлежащей исполнению
Следующий пример представляет содержимое по умолчанию файла /etc/inittab:
ар::sysinit:/sbi /autopush -f /etc/iu.ap
ар•:sysinit:/sbin/soconfig -f /etc/sock2path
fs::sysinit:/sbin/rcS sysinit >/dev/msglog 2<>/dev/msglog </dev/console is:3:initdefault:
p3:S1234:powerfail:/usr/sbin/shutdown -y -i5 -gO >/dev/msglog 2<>/dev/
msglog
sS:s:wait:/sbin/rcS>/dev/msglog 2<>/dev/msglog </dev/console
sO:0:wait:/sbin/гсО>/dev/msglog 2<>/dev/msglog </dev/console
si:1:respawn:/sbin/rcl>/dev/msglog 2<>/dev/msglog </dev/console
s2:23:wait:/sbin/rc2>/dev/msglog 2<>/dev/msglog </dev/console
s3:3:wait:/sbin/гсЗ>/dev/msglog 2<>/dev/msglog </dev/console
s5:5:wait:/sbin/rc5>/dev/msglog 2<>/dev/msglog </dev/console
s6: 6: wait.:/sbin/гсб>/dev/msglog 2<>/dev/msglog </dev/console
fw:0:wait:/sbin/uadmin 2 0>/dev/msglog 2<>/dev/msglog </dev/console
of:5:wait:/sbin/uadmin 2 6 >/dev/msglog 2<>/dev/msglog </dev/console
rb:6:wait:/sbin/uadmin 2 1>/dev/msglog 2<>/dev/msglog </dev/console
sc:234:respawn:/usr/lib/saf/sac -t 300
co:234:respawn:/usr/lib/saf/ttymon -g -h -p "'uname -n' console login: " -T sun -d /dev/console -1 console -m Idterm, ttcompat
Когда система загружается впервые, процесс init запускает все процессы с меткой sysinit из файла inittab. Элемент initdefault из файла /etc/inittab определяет уровень запуска по умолчанию. В приведенном ранее примере по умолчанию установлен уровень запуска 3 (многопользовательский режим с возможностью совместного использования се-
тевых файлов). Демон init запускает каждый процесс, связанный с этим уровнем запуска (то есть каждый элемент, содержащий значение 3 в поле runlevel). Каждый процесс запускается на основе использования элемента из поля action. Это поле может принимать одно из значений, перечисленных в таблице 1.5.
Таблица 1.5 Поля gctl^h йз файла inittab " .■; J,:.
ПолеОписание
sysinitЭто поле заставляет выполнять соответствующий процесс до тех пор,
пока процесс init не попытается получить доступ к системной консоли через ее приглашение. Процесс init ожидает завершения данного процесса и только после этого продолжает считывание файла inittab.
powerfailСистема приняла сигнал о нарушении в электропитании.
waitЭто поле вынуждает ожидать завершения данной команды перед пере
ходом к следующему элементу с тем же самым уровнем запуска.
respawninit будет перезапускать данный процесс, если он "умер".
гс-сценарии
Каждое init-состояние имеет соответствующие наборы сценариев управления запуском, называемых гс-сценарии и расположенных в каталоге /sbin; сценарии предназначены для управления каждым из этих состояний. Существуют следующие сценарии:
гсО гс! гс2 гсЗ гс5 гс 6 rcS
ПРИМЕЧАНИЕ
Многие сценарии запуска операционной системы Solaris могут быть идентифицированы благодаря префиксу или суффиксу "rc" (run control - управление запуском).
Процесс init исполняет сценарии /sbin/rc<«>, каждый из которых, в свою очередь, исполняет некоторые наборы других сценариев, находящихся в каталоге /etc. Для каждого гс-сценария из каталога /sbin соответствующий каталог, именуемый /etc/rc<«>.d, содержит сценарии выполнения различных действий для данного уровня запуска. Например, каталог/etc/rc2.d содержит файлы, используемые для запуска и останова процессов уровня 2. При загрузке системы гс-сценарии запускаются в порядке их нумерации до тех пор, пока не будет достигнут уровень запуска по умолчанию; например, чтобы получить уровень запуска 3, запускаются сценарии /sbin/rcl, /sbin/rc2 и /sbin/гсЗ.
ПРИМЕЧАНИЕ,
Хотя сценарии в каждом каталоге возникают как файлы, каждый каталог rc<n>.d содержит жесткие ссылки на каталог /etc/init.d. В других UNIX-системах сценарии запуска иногда обнаруживаются в каталогах /sbin/rc<n>.d и /etc/rc<n>.d. Ссылки в Solaris были организованы таким образом, чтобы пользователи, привыкшие к особенностям других разновидностей UNIX (таких как HP-UX, SunOS и так далее), могли легко найти файлы запуска. Кроме того, они могли бы перенести любые сценарии
в другую систему, и благодаря ссылкам отпадает необходимость во внесении изменений. Наконец, за счет помещения всех сценариев в одно место - в каталог /etc/init.d - удобнее находить сценарий, необходимый для запуска или для останова какой-нибудь конкретной функции, поскольку не нужно искать его во всех каталогах /etc/rc<n>.d.
Все сценарии управления запуском также размещаются в каталоге /etc/init.d. Эти файлы ссылаются на соответствующие сценарии управления запуском в каталогах /etc/rc<n>.d.
Ниже приведен список сценариев запуска, по умолчанию размещенных в каталоге /etc/rc2.d, которые были помещены в этот каталог при инсталляции операционной системы. Как описано далее, системный администратор будет добавлять в этот каталог заказанные сценарии:
Is /etc/rc2.d КОSmipagent K07dmi K07snmdx K16apache K28nfs.server
README
S01MOUNTFSYS
S05RMTMPFILES
S101U
S20sysetup
S21perf
S30sysid.net S4011c2 S47asppp S69inet S70uucp
S711dap.client
S71rpc
S71sysid.sys
S72autoinstall
S72inetsvc
S72slpd
S73cachefs.daemon
S73nfs.client
S74autofs
S74syslog
S74xntpd
S75cron
S75savecore
S76nscd
S801p
S80PRESERVE
S80spc
S85power
S88sendmail
S88utmpd
S89bdconfig S90wbem S92volmgt S93cacheos.finish S94ncalogd S951vm.sync S96ab2mgr S99audit S99dtlogin
Сценарии /etc/rc<n>.d всегда запускаются в порядке, определяемом кодом ASCII. Любое число, которое следует за первой буквой (S или К) имени сценария, определяет порядок, в котором будет запущен данный сценарий. Имена, следующие за числами, не связаны с порядком запуска этих сценариев. Имена сценариев имеют следующий синтаксис: [K,S] [#] [A—Z]
Файлы, начинающиеся с буквы К, запускаются для завершения (kill - уничтожить) какого-нибудь системного процесса; начинающиеся с буквы S - для запуска (start - запустить) системного процесса. В приведенных списках обобщаются действия каждого сценария управления уровнем запуска.
Сценарий /sbin/rcO запускает сценарии /etc/rcO.d, которые выполняют следующие функции:
^ Останавливают системные службы и демоны
^ Завершают все запущенные процессы ф Демонтируют все файловые системы
Для перевода системы в однопользовательский режим сценарий /sbin/rcS запускает сценарии /etc/rcS.d, которые выполняют следующие функции:
Ф Устанавливают минимальную сеть
ф Монтируют файловую систему /usr, если это необходимо ф Устанавливают имя системы
ф Проверяют корневую файловую систему и файловую систему /usr ф Монтируют псевдосистемы (/proc и /dev/fd)
ф Перестраивают соответствующие элементы описания устройств (для загрузок с реконфигурацией)
ф Проверяют и монтируют другие файловые системы для однопользовательского режима
Уровень запуска init S аналогичен уровню запуска 1 за исключением того, что все файловые системы монтируются и являются доступными.
. СОВЕТ , •.v-
Используйте уровень запуска init S для выполнения задач системного администрирования, когда вы хотите иметь уверенность в том, что другие пользователи не смогут войти и получить доступ к системе.
Сценарий /sbin/rcl запускает сценарии /etc/rcl.d и делает следующее:
ф Останавливает системные службы и демоны за исключением наиболее важных служб операционной системы
ф Делает доступными все файловые системы и разрешает всем пользователям, вошедшим в систему, оставаться в системе
ф Переводит систему в однопользовательский режим
Сценарий /sbin/rc2 устанавливает переменную часового пояса TIMEZONE, запускает сценарии /etc/rc2.d и выполняет следующее:
ф Монтирует все файловые системы
ф Разрешает дисковые квоты, если, по крайней мере, одна файловая система была смонтирована с опцией квоты
ф Сохраняет временные файлы редактора в каталоге /usr/preserve
ф Удаляет любые файлы в каталоге /tmp
ф Конфигурирует учетную систему по использованию ресурсов
ф Конфигурирует маршрутизатор, принятый по умолчанию
ф Устанавливает домен N1S
ф Устанавливает сетевую маску для ifconfig
Ф Перезагружает систему с инсталляционного носителя или сервера загрузки, если там существует/.PREINSTALL или /AUTO1NSTALL
ф Запускает демоны initd, rpcbind и named
ф Запускает демон (kerbd) со стороны клиента Kerberos
ф Запускает демоны NIS (ypbind) и NIS+ (rpc.nisd)
ф Запускает службу keyserv
ф Запускает демоны statd, lockd, xntpd. void и utmpd
ф Монтирует все компоненты NFS
ф Запускает automount
ф Запускает cron
ф Запускает демоны службы печати 1р
ф Запускает демон sendmail
Сценарий /sbin/гсЗ запускает сценарии /etc/rc3.d и выполняет следующее:
Ф Очищает sharetab
ф Запускает nfsd
ф Запускает mountd
Ф Если загружается сервер, запускает демоны rarpd, rpld и rpc.bootparamd
Сценарии /sbin/rc5 и /sbin/гсб запускают сценарии /etc/rcO.d и выполняют следующее:
Ф Снимают все активные процессы
ф Демонтируют все файловые системы
Использование сценариев управления для останова и запуска служб
Преимущество индивидуальных сценариев для каждого уровня запуска состоит в том. что вы можете запускать эти сценарии индивидуально для отключения процессов в Solaris без перезагрузки системы или изменения ее init-состояний..
Например, путем ввода командной строки /etc/init.d/nfs.server stop и последующего нажатия клавиши Enter можно отключить сервер NFS. После внесения необходимых изменений в конфигурацию системы можно перезапустить сервер NFS путем ввода командной строки /etc/init.d/nfs.server start и последующего нажатия клавиши Enter.
Для проверки того, является ли конкретная служба остановленной или запущенной, используйте команду pgrep:
pgrep -f <service>
Утилита pgrep анализирует активные процессы в системе и возвращает список идентификаторов процессов. Подробное описание этой команды приведено в главе 9.
Добавление сценариев в каталоги управления запуском
Если вы добавляете какой-нибудь сценарий, поместите его в каталог /etc/init.d и создайте ссылку на соответствующий каталог rc<n>.d. Присвойте соответствующие номера и имена новым сценариям, чтобы они запускались должным образом.
Шаг за шагом
1.2 Добавление сценария управления запуском
Зарегистрируйтесь как суперпользователь.
Добавьте в каталог /etc/init.d следующий сценарий:
ср <filename> /etc/init.d
chmod 0744 /etc/init.d/<filename>
chown root:sys /etc/init.d/<filename>
Создайте ссылки на соответствующий каталог rc<n>.d:
cd /etc/init.d
In <filename> /etc/rc2.d/S<nnfilename>
In <filename> /etc/rc<n>.d/K<nnfilename>
Используйте команду Is, чтобы убедиться, что данный сценарий имеет ссылки в указанных каталогах:
# Is -1 /etc/init.d/ /etc/rc2.d/ /etc/rc<n>.d/
Приведенный далее пример создает некоторый сценарий управления запуском, именуемый "program", который будет запускаться на уровне 2 и останавливаться на уровне 0:
ср program /etc/init.d
cd /etc/init.d
In /etc/init.d/program /etc/rc2.d/SlOOprogram
In /etc/init.d/program /etc/rcO.d/KlOOprogram
Is -1 /etc/init.d /etc/rc2.d /etc/rcO.d
Система отобразит следующее
/etc/init.d: total 250
-rwxr--r--
3
root
sys
171
Jan
5
2000
ANNOUNCE
-rwxr--j
c——
3
root
sys
1881
Jan
5
2000
MOUNTFSYS
-rwxr--:
c——
2
root
sys
256
Jan
5
2000
PRESERVE
-rw-r—J
c—
1
root
sys
681
Jan
5
2000
README
-rwxr--j
C——
2
root
sys
2004
Jan
5
2000
RMTMPFILES
-rwxr—]
r--
1
root
sys
833
Jan
5
2000
acct
-rwxr--]
c—
1
root
sys
392
Mar
16
2000
acctadm
-rwxr—]
c—
6
root
sys
572
Dec
14
2000
apache
-rwxr--J
r--
5
root
sys
365
Jan
5
2000
asppp
-rwxr--]
5
root
sys
447
Jan
5
2000
audit
-rwxr—]
c—
5
root
sys
364
Jan
5
2000
autofs
-rwxr-xr-x
2
root
other
1558
Dec
16
1999
autoinstall
-rwxr--]
2
root
1153
Jan
5
2000
buildmnttab
-rwxr—r
.—
1
root
271
Dec
7
1999
buttons_n_dials-setup
-rwxr--]
2
root
sys
1101
Jan
5
2000
cachefs.daemon
-rwxr—J
:—
2
root
sys
392
Jan
5
iooo
cachefs.root
-rwxr--i
*—
2
root
sys
5705
Jan
5
2000
cacheos
-rwxr--]
2—
2
root
sys
364
Jan
5
2000
cacheos.finish
-rwxr--]
:—
2
root
sys
517
Jan
5
2000
coreadm
-rwxr--]
5
root
sys
504
Jan
5
2000
cron
-rwxr--]
r--
3
root
sys
1426
Feb
26
09:40
devfsadm
-rwxr--]
:--
1
root
sys
904
Jan
5
2000
devlinks
-rwxr--]
:--
1
root
sys
413
Jan
5
2000
dhcp
-rwxr--]
:—
2
root
sys
494
Jan
5
2000
dhcpagent
-rwxr--]
:--
1
root
sys
469
Jan
5
2000
drvconfig
-rwxr--]
:--
5
root
sys
2804
Dec
2
1999
dtlogin
-rwxr--]
:—
5
root
sys
1201
Jan
5
2000
inetinit
-rwxr—J
:—
5
root
sys
7134
Jan
5
2000
inetsvc
-rwxr--]
:—
6
root
sys
861
Jan
5
2000
init.dmi
-rwxr--]
.—
6
root
sys
404
Jan
5
2000
init.snmpdx
-rwxr--]
?--
5
root
sys
1131
Feb
23
09:29
init.wbem
-rwxr--]
:—
2
root
sys
382
Feb
26
09:40
initpcihpc
-rwxr--]
2
root
sys
441
Jan
5
2000
initpcmcia
-rwxr--]
:—
2
root
sys
761
Jan
5
2000
keyraap
-rwxr—1
5
root
sys
413
Jan
5
2000
Idap.client
-rwxr--]
:—
5
root
sys
359
Jan
5
2000
llc2
-rwxr--]
:—
5
root
sys
460
Jan
5
2000
LP
-rwxr--i
:—
6
root
sys
344
Mar
20
2000
mipagent
-rwxr--i
:--
1
root
ys
491
Jan
5
2000
mkdtab
-rwxr--]
r--
5
root
sys
522
Dec
14
2000
ncad
-rwxr--i
2
root
sys
2445
Jan
5
2000
ncakmod
-rwxr--i
:—
5
root
sys
1181
Jan
5
2000
ncalogd
-rwxr—1
:—
2
root
sys
8972
Jul
10
2000
network
—rwxr——i
:—
3
root
sys
836
Jan
5
2000
nfs.client
-rwxr--i
2--
6
root
sys
080
Jan
5
2000
nfs.server
j 2-100
—rwxr——r——
5
root
sys
514
Jan
5
2000
ns cd
-rwxr--r--
1
root
sys
398
Jan
5
2000
pcmcia
-rwxr—r--
2
root
sys
989
Jan
5
2000
perf
-rwxr--r--
5
root
sys
1787
Jan
5
2000
power
-rw-r—Г——
3
root
other
0
Jul
19
08:59
program
-rwxr—r—
2
root
sys
3193
Jan
5
2000
rootusr
-rwxr--r—
5
root
sys
2839
Jan
5
2000
rpc
-rwxr—r--
2
root
sys
2519
Jan
5
2000
savecore
-rwxr—r—
5
root
sys
1471
Jan
5
2000
sendmail
-rwxr--r—
5
root
sys
525
Jan
5
2000
slpd
-rwxr--r--
5
root
sys
610
Jan
5
2000
spc
-rwxr—r—
2
root
sys
2405
Jan
5
2000
standardmounts
-rwxr—Г——
2
root
sys
611
Jan
5
2000
sysetup
-rwxr-xr-x
2
root
other
1995
Dec
16
1999
sysid.net
-rwxr-xr-x
2
root
other
1498
Dec
16
1999
sysid.sys
-rwxr--r--
5
root
sys
911
Jan
5
2000
syslog
-rwxr--r--
1
root
sys
304
Jan
5
2000
uf s__quota
-rwxr—r——
5
root
sys
597
Jan
5
2000
utmpd
-rwxr—r
2
root
sys
327
Jan
5
2000
uucp
-rwxr--r--
5
root
sys
391
Jan
5
2000
volmgt
-rwxr--r--
5
root
sys
945
Jan
5
2000
xntpd
/etc/rcO. d:
total 122
-rwxr--r--
3
root
sys
171
Jan
5
2000
K00ANNOUNCE
-rwxr--r—
6
root
sys
344
Mar
20
2000
K06mipagent
-rwxr—r——
6
root
sys
861
Jan
5
2000
K07dmi
-rwxr--r--
6
root
sys
404
Jan
5
2000
K07snmpdx
-rw-r—Г——
3
root
other
0
Jul
19
08:59
KlOOprogram
-rwxr—Г--
5
root
sys
2804
Dec
2
1999
KlOdtlogin
-rwxr--r--
6
root
sys
572
Dec
14
2000
K16apache
-rwxr--r--
6
root
sys
3080
Jan
5
2000
K28nfs.server
-rwxr--r--
5
root
sys
447
Jan
5
2000
КЗ 3audit
-rwxr—r—
5
root
sys
522
Dec
14
2000
K34ncad
-rwxr—r— —
5
root
sys
1181
Jan
5
2000
K34ncalogd
-rwxr--r--
5
root
sys
391
Jan
5
2000
КЗ 5volmgt
-rwxr—r— —
5
root
sys
1471
Jan
5
2000
K36sendmail
-rwxr--r--
5
root
sys
597
Jan
5
2000
K36utmpd
-rwxr—r——
5
root
sys
1131
Feb
23
09:29
K36wbem
-rwxr—r——
5
root
sys
1787
Jan
5
2000
K37power
-rwxr—Г——
5
root
sys
460
Jan
5
2000
K391p
-rwxr--r—
5
root
sys
610
Jan
5
2000
КЗ 9spc
-rwxr--r--
5
root
sys
504
Jan
5
2000
K40cron
-rwxr--r--
5
root
sys
514
Jan
5
2000
K40nscd
-rwxr—r—
5
root
sys
911
Jan
5
2000
K40syslog
-rwxr--r
5
root
sys
945
Jan
5
2000
K40xntpd
-rwxr--r--
5
root
sys
364
Jan
5
2000
K41autofs
-rwxr—r——
5
root
sys
413
Jan
5
2000
K411dap.client
-rwxr--r--
3
root
sys
836
Jan
5
2000
K41nfs.client
—rwxr——r——
5
root
sys
2839
Jan
5
2000
K41rpc
-rwxr--r--
5
root
sys
525
Jan
5
2000
K41slpd
-rwxr--r--
5
root
sys
7134
Jan
5
2000
K42inetsvc
-rwxr--r--
5
root
sys
11201
Jan
5
2000
K43inet
-rwxr--r—
5
root
sys
1365
Jan
5
2000
KSOasppp
-rwxr—r--
5
root
sys
359
Jan
5
2000
K5211c2
-rwxr—r—
3
root
sys
1426
Feb
26
09:40
K83devfsadm
-rwxr—r—
2
root
sys
494
Jan
5
2000
K90dhcpagent
/etc/rc2 . d:
total 160
-rwxr—r—
6
root
sys
344
Mar
20
2000
K06mipagent
-rwxr--r--
6
root
sys
861
Jan
5
2000
K07dmi
-rwxr—r— —
6
root
sys
404
Jan
5
2000
K07snmpdx
-rwxr--r--
6
root
sys
572
Dec
14
2000
Kl 6apache
-rwxr--r--
6
root
sys
3080
Jan
5
2000
K28nfs.server
—rw—r——r——
1
root
sys
1369
Jan
5
2000
README
—rwxr——r——
3
root
sys
1881
Jan
5
2000
S01MOUNTFSYS
-rwxr--r--
2
root
sys
2004
Jan
5
2000
S05RMTMPFILES
-rw-r—r—
3
root
other
0
Jul
19
08:59
SlOOprogram
-rwxr--r--
2
root
sys
611
Jan
5
2000
S20sysetup
-rwxr—r—
2
root
sys
989
Jan
5
2000
S21perf
-rwxr-xr-x
2
root
other
1995
Dec
16
1999
S30sysid.net
-rwxr--r—
5
root
sys
359
Jan
5
2000
S4011c2
-rwxr—r—
5
root
sys
1365
Jan
5
2000S
47asppp
-rwxr--r--
5
root
sys
11201
Jan
5
2000
S69inet
-rwxr—r--
2
root
sys
327
Jan
5
2000 S70uucp
-rwxr--r--
5
root
sys
413
Jan
5
2000
S711dap.client
-rwxr--r--
5
root
sys
2839
Jan
5
2000
S71rpc
-rwxr-xr-x
2
root
other
1498
Dec
16
1999
S71sysid.sys
-rwxr-xr-x
2
root
other
1558
Dec
16
1999
S72autoinstall
-rwxr--r--
5
root
sys
7134
Jan
5
2000
S72inetsvc
-rwxr--r--
5
root
sys
525
Jan
5
2000
S72slpd
-rwxr--r--
2
root
sys
1101
Jan
5
2000
S73cachefs.daemon
-rwxr--r—
3
root
sys
836
Jan
5
2000
S73nfs.client
-rwxr—r— —
5
root
sys
364
Jan
5
2000
S74autofs
—rwxr——r——
5
root
sys
911
Jan
5
2000
S74syslog
—rwxr——r——
5
root
sys
945
Jan
5
2000
S74xntpd
-rwxr--r--
5
root
sys
504
Jan
5
2000
S75cron
-rwxr—r——
2
root
sys
2519
Jan
5
2000
S75savecore
-rwxr—r——
5
root
sys
514
Jan
5
2000
S76nscd
-rwxr—Г——
2
root
sys
256
Jan
5
2000
S80PRESERVE
-rwxr—r—
5
root
sys
460
Jan
5
2000
S801p
-rwxr—r——
5
root
sys
610
Jan
5
2000
S80spc
-rwxr—r--
5
root
sys
1787
Jan
5
2000
S85power
-rwxr--r--
5
root
sys
1471
Jan
5
2000
S88sendmail
-rwxr--r—
5
root
sys
597
Jan
5
2000
S88utmpd
Irwxrwxrwx
1
root
other
31
Jun
25
15:57
S89bdconfig-> \
../init.d/buttons
_n__di a 1 s - s e tup
-rwxr--r
5
root
sys
1131
Feb
23
09:29
S90wbem
-rwxr--r--
5
root
sys
391
Jan
5
2000
S92volmgt
-rwxr--r~-
2
root
sys
364
Jan
5
2000
S93cacheos.finish
-rwxr—r—
5
root
sys
1181
Jan
5
2000
S94ncalogd
-rwxr--r--
5
root
sys
522
Dec
14
2000
S95ncad
-rwxr--r—
5
root
sys
447
Jan
5
2000
S99audit
-rwxr--
5
root
sys
2804
Dec
2
1995
S99dtlogin
СОВЕТ
Если вы не хотите, чтобы конкретный сценарий запускался при входе в определенное состояние init, замените заглавную букву S или К в префиксе имени сценария на какой-нибудь другой символ; можно использовать те же, но строчные буквы - s или к. Запускаются только те файлы, имена которых начинаются с заглавной буквы S или К. Например, для отключения конкретного сценария измените его имя S99mount на s99mount.
Закрытие системы
Операционная система Solaris была разработана для непрерывной работы: семь дней в неделю, 24 часа в сутки. Однако иногда возникает необходимость закрытия системы для выполнения задач администрирования. В других случаях какое-нибудь приложение может явиться причиной некорректной работы системы, поэтому операционная система должна быть остановлена для уничтожения запущенных процессов, а затем - перезапущена.
ПРЕДУПРЕЖДЕНИЕ ■
Некорректное выполнение закрытия системы может привести к потере данных и повреждению файловых систем.
Вы можете закрыть систему несколькими способами, используя для этого различные команды UNIX. Для Solaris важным является правильная последовательность выполнения операций закрытия. Когда система загружается, происходит запуск сразу нескольких процессов. Они должны быть закрыты до выключения питания компьютера. Кроме того, возможно, что информация кэшировалась в памяти и еще не переписана на диск. Процесс закрытия Solaris включает в себя закрытие запущенных процессов, сброс информации (из памяти) на диск и демонтирование файловых систем.
СОВЕТ
Для исключения риска неправильного закрытия системы при аварии электропитания используйте источник бесперебойного литания - UPS (uninterruptible power supply), который способен должным образом закрыть систему перед отключением питания.
Команды закрытия системы
При подготовке к закрытию необходимо определить, какие из перечисленных ниже команд подходят для конкретной системы и ближайшей задачи:
/usr/sbin/shutdown
/sbin/init
/usr/sbin/halt
/usr/sbin/reboot
/usr/sbin/poweroff
Stop+A или Ll+А (эти команды следует использовать в качестве последнего средства; обратите внимание на следующее предупреждение).
ПРЕДУПРЕЖДЕНИЕ
Использование последовательности нажатия клавиш Stop+A (или L1+A) мгновенно прекращает функционирование операционной системы и должно применяться лишь в крайнем случае.
Первые три команды инициируют процедуры закрытия системы, завершают все запущенные процессы, записывают данные на диск и закрывают системное программное обеспечение до соответствующего уровня запуска. Команда /usr/sbin/reboot выполняет все вышеперечисленные задачи, однако затем она выполняет повторную загрузку системы в состояние, определенное по умолчанию как initdefault в файле /etc/inittab. Причем команда /usr/ sbin/poweroff эквивалентна команде init 5. Последняя команда, которая фактически представляет собой последовательность нажагий клавиш, безусловно останавливает систему.
Команда /usr/sbin/sh utdown
Используйте команду shutdown в случае закрытия многопользовательской системы. Команда shutdown посылает предупреждающее сообщение всем пользователям, зарегистрированным в системе, ожидает 60 секунд (по умолчанию), а затем закрывает систему до однопользовательского состояния. Опция этой команды (-g) позволит выбрать другое значение времени ожидания по умолчанию. Опция -i позволяет определить состояние init, до которого будет закрыта система, по умолчанию - до уровней запуска.
Команда shutdown выполняет "чистое" закрытие системы - это означает, что все системные процессы и службы завершаются нормально и файловые системы синхронизируются. Для использования команды shutdown необходимо иметь привилегии суперпользователя.
Когда инициируется команда shutdown, все пользователи, вошедшие в систему с помощью опции -п, и все монтированные системные ресурсы получают некоторое предупреждение о предстоящем закрытии системы, а затем они получают некоторое окончательное сообщение. Исходя из выше изложенного, на сервере с несколькими пользователями команду shutdown рекомендуется применять через команду init.
Шаг за шагом. .
. Закрытие системы
В качестве суперпользователя, чтобы обнаружить зарегистрированных пользователей, введите следующую команду:
# who
На экране отображается список пользователей, зарегистрированных в системе. Возможно вы захотите отправить почтовое или какое-нибудь широковещательное сообщение для информирования пользователей о закрытии системы.
Закройте систему, воспользовавшись следующей командой закрытия:
# shutdown -i<init-state> -g<grace-period> -у
СОВЕТ f. \;
При использовании команды shutdown или команды init вы можете захотеть отправить пользователям более подробное уведомление о любом запланированном закрытии системы через сообщение электронной почты.
Ниже описываются опции команды shutdown:■
-i<init-state>
Вводит систему в состояние init, отличное от состояния S по умолчанию. Возможные значения этой опции 0, 1, 2, 5 и 6.
-g<grace-period>
Устанавливает время в секундах перед закрытием системы. Значение, задаваемое этой опцией по умолчанию, равно 60.
-y
Продолжает закрывать систему без вмешательства администратора; в противном случае вам будет предложено продолжить процесс закрытия системы по истечении 60 секунд. Если вы используете команду shutdown -у, то приглашения продолжать закрытие не будет; в противном случае вам будет задан вопрос Do you want to continue? (у or n) (Хотите продолжить? (да или нет)).
Команда /sbin/init
Используйте команду init для закрытия системы, работающей в однопользовательском режиме, или для изменения уровня запуска системы. Синтаксис этой команды имеет следующий вид:
init <run level>
Параметр <run level> - это любой уровень запуска, описанный в таблице 1.2. Кроме этого, параметр <run level> может принимать значение а, b или с, которое передает системе указание обрабатывать только те элементы из файла /etc/inittab, для которых установлен соответственно уровень запуска а, b или с. Это псевдосостояния, которые могут быть определены для запуска определенных команд, однако они не могут стать причиной изменения текущего уровня запуска. Параметр <run level> может также принимать значение Q или q, которое передает системе указание провести повторный анализ файла /etc/inittab.
Вы можете использовать команду init для перевода системы в состояние выключения питания (init 0) или в состояние однопользовательского режима (init 1). Например, для перевода системы с текущего уровня запуска на уровень запуска 1 введите следующую команду:
init 1
Отклик системы будет иметь следующий вид:
INIT: New run level: 1
Changing to state 1.
Unmounting remote filesystems: /vol nfs done.
System services are now being stopped.
Mar 14 13:13:22 unknown /usr/sbin/vold[475] : problem unmounting /vol.- Interrupted system call
Mar 14 13:13:22 unknown pseudo: pseudo-devioe: todO
Mar 14 13:13:22 unknown genunix: todO is /pseudo/tod@0
Mar 14 13:13:22 unknown pseudo: pseudo-device: pmO
Mar 14 13:13:22 unknown genunix: pmO is /pseudo/pm@0
Print services stopped.
Маг 14 13:13:22 unknown syslogd: going down on signal 15
Killing user processes: done.
Change to state 1 has been completed.
Type control-d to proceed with normal startup,
(or give root password for system maintenance):
ПРИМЕЧАНИЕ:
Для совместимости доступна команда telinit. Она представляет собой ссылку на /usr/sbin/init.
В качестве другого примера рассмотрим случай, когда вы внесли изменения в файл /etc/inittab и хотите заставить систему повторно прочесть этот файл и реализовать внесенные в него изменения. Введите следующую команду:
init q
Никаких системных сообщений на экран выведено не будет, а файл inittab будет проанализирован повторно.
Команда /usr/sbin/halt
Используйте команду halt, когда система должна быть остановлена немедленно, но при этом можно не оповещать текущих пользователей. Команда halt закрывает систему без задержки и не предупреждает других пользователей о ее закрытии.
Команда /usr/sbin/reboot
Используйте команду reboot для закрытия системы, работающей в однопользовательском режиме, и последующего перевода ее в многопользовательский режим. Команда reboot не предупреждает других пользователей системы о ее закрытии.
В Solaris команды reboot и halt выполняют безусловное закрытие системных процессов. Эти команды закрывают систему гораздо быстрее, чем команда shutdown, однако делают это не так аккуратно, поскольку эти команды не выполняют сценарии прекращения процессов, которые находятся в каталогах /etc/rc<n>.d. Никакие сообщения пользователям не отправляются. Команды reboot и halt не уведомляют всех зарегистрированных пользователей и смонтированные системные ресурсы о приближающемся закрытии, однако они выполняют синхронизацию файловых систем.
В некоторых случаях быстрота такой перезагрузки является удобной при определенных обстоятельствах, таких как выполнение перезагрузки из состояния однопользовательского режима. Кроме того, удобной является возможность передачи аргументов в среду OpenBoot через команду reboot; например, команда
reboot -- -rs
будет выполнять перезагрузку системы па уровень запуска s.
Команда /usr/sbin/poweroff
Команда poweroff эквивалентна команде init 5.
ПРИМЕЧАНИЕ . ..
Применение команды init ипи shutdown - наиболее надежный способ закрытия системы, поскольку они используют сценарии управления запуском для завершения выполняющихся процессов и
закрывают систему с минимальной потерей данных. Команды reboot и halt не выполняют надлежащим образом сценарии управления запуском и не предпочтительны для закрытия системы.
Останов системы в целях восстановления
Иногда бывает так, что система может не отреагировать на определенные выше команды init. Система, которая не отвечает ни на одну команду, включая reboot и halt, называется "crashed" (разрушенной) или "hung" (зависшей) системой. Если вы попытались использовать обсуждавшиеся только что команды, но не получили отклика системы, можете нажать клавиши Stop+A или L1+A для возврата к загрузочному ППЗУ (конкретная последовательность нажатия клавиш для останова системы зависит от типа используемой вами клавиатуры). На терминалах, подключенных к последовательному порту, нажимайте для этого клавишу Break.
. ■ ПРИМЕЧАНИЕ с <
В операционной системе Solaris 8 введена новая особенность (функция), которая дает возможность завершить работу зависшей системы. Новая последовательность нажатия клавиш для останова системы выглядит следующим образом: <RETURN> <TILDE> (тильда, на клавиатуре вверху и слева) cCONTROL В>; эта последовательность эквивалентна последовательности Stop+A. Между нажатием клавиш должен выдерживаться интервал более 0.5 секунды, а вся полная строка символов должна быть введена за время, не превышающее пяти секунд. Это справедливо только для последовательных устройств, работающих в режиме консолей, и не справедливо для систем, имеющих собственную клавиатуру. Если ваша консоль подсоединена к последовательному порту через какой-нибудь модем, вы можете послать команду останова (Stop+A или L1+A) через окно подсказки, набрав последовательность символов -# (тильда и знак фунта).
Ниже приведен пример того, как отключить зависшую систему:
■ ^аг.за-шагом \
Отключение зависшей системы
Используйте последовательность клавиш, прекращающую работу вашей системы (Stop+A, или L1+A).
Монитор отображает приглашение ППЗУ: ок.
Наберите команду sync для синхронизации дисков:
ok sync
После того, как на экране появится сообщение системы синхронизации, нажмите еще раз последовательность клавиш, прекращающую работу вашей системы.
Введите подходящую команду reset для сброса (переустановки) аппаратных средств компьютера и запуска процесса загрузки системы:
ok reset
После получения сообщения login: войдите в систему и введите следующую командную строку для проверки того, что система загрузилась на заданный уровень запуска:
# who -г
Система возвращает следующий ответ:
run-level 3 Jun 9 09:19 3 0 S
Выключение питания
Вы должны выключать питание аппаратных средств только после закрытия файловых систем. Выключайте питание всех устройств только после того, как система закроется. Если необходимо, отсоедините также кабели электропитания. Когда питание может быть восстановлено, используйте следующую последовательность действий для включения системы и периферийных устройств.
Шагзашагом .. ■,:
Включение питания
Подсоедините кабели электропитания.
Включите все периферийные устройства, такие как дисковые накопители, ленточные накопители и принтеры.
Включите процессор и монитор.
Резюме
В настоящей главе приведен обзор процедур запуска и закрытия операционной системы Solaris. Обсуждались, в частности, такие вопросы, как включение питания системы в правильной последовательности, вход в ППЗУ OpenBoot, загрузка системы и загрузка ядра.
Далее были описаны различные состояния init, детально раскрыт вопрос запуска процессов и служб Solaris, начиная с загрузки и кончая переходом в многопользовательский режим работы. Системный администратор может управлять этими службами путем добавления и удаления сценариев управления запуском.
Наконец, особенно важным является правильное выполнение закрытия системы, поскольку целостность данных может быть подвергнута опасности, если не выполнить закрытия должным образом. Были последовательно описаны различные команды, используемые для закрытия системы.
В следующей главе более подробно описывается OpenBoot. В последующих главах вы больше узнаете об операционной среде Solaris и, поскольку это очень важно, об аппаратных средствах компьютера. Хорошие знания этих двух компонентов являются весьма существенными и помогут адекватно справляться с проблемами запуска системы.
Ключевые термины
Начальная загрузка (bootstrapping)
Загрузочный блок (bootblock)
Состояние запуска (run state)
Состояние инициализации (init state)
Однопользовательский режим (single-user mode)
Многопользовательский режим (multiuser mode)
Сценарий управления запуском (run control script)
Интерактивная загрузка (interactive boot)
Загрузка с реконфигурацией (reconfiguration boot)
Примените ваши знания
Предупреждение: поскольку некоторые шаги, включенные в приведенные ниже упражнения, в случае их неправильного выполнения могут сделать систему незагружаемой, не выполняйте эти упражнения на реальной вычислительной системе.
Загрузка системы
Это упражнение проведет вас через этапы включения питания и загрузки системы. Оцениваемое время: 5 минут
Включите питание всех периферийных устройств, если таковые существуют в данной системе.
Если параметр auto-boot среды OpenBoot установлен в значение false, то вскоре после включения питания системы вы увидите приглашение ок. Если система установлена в режим auto-boot, то на экране вы увидите сообщение, подобное приведенному ниже:
SunOS Release 5.8 Version Generic_108621-04 64-bit
Copyright 1983-2000 Sun Microsystems, Inc. All rights reserved.
Вы увидите систему, начинающую процесс загрузки. Прервите процесс загрузки, нажав клавиши Stop+A. На экране появится приглашение ок.
После приглашения ок введите команду boot для загрузки системы.
Загрузка альтернативного ядра
В этом упражнении вы попрактикуетесь в загрузке системы с использованием резервной копии файла /etc/system. Воспользуйтесь этим приемом, если ваш файл /etc/system когда-нибудь окажется поврежденным или не загружаемым.
Оцениваемое время: 15 минут
Войдите в систему в качестве суперпользователя.
Создайте резервную копию файла /etc/system, набрав для этого следующую командную строку.
ср /etc/system /etc/system.orig
Теперь удалите файл /etc/system, введя для этого следующую командную строку: rm /etc/system
Остановите систему:
/usr/sbin/shutdown -у -g0 -i0
После приглашения ok загрузите систему, используя интерактивную опцию, чтобы ввести имя резервной копии файла /etc/system. Наберите для этого следующую команду:
boot -а
Вы получите приглашение ввести имя файла ядра и имя каталога по умолчанию для модулей операционной системы. В ответ на каждый из этих вопросов введите <return>. Затем появится приглашение использовать по умолчанию файл /etc/system:
Примените ваши знания
Name of system file [etc/system]:
В ответ введите следующую командную строку:
/etc/system.orig
Далее вам будет предложено ввести тип корневой файловой системы и физическое имя корневого устройства. В ответ на каждый из этих вопросов введите <return>.
Когда система будет готова к работе, войдите в систему в качестве суперпользователя и поместите исходный файл /etc/system обратно на свое место:
ср /etc/system.orig /etc/system
Использование сценариев управления запуском
В настоящем упражнении вы попрактикуетесь в создании сценариев управления запуском и закроете систему.
Оцениваемое время: 10 минут
Войдите в систему как суперпользователь и перейдите в каталог /etc/init.d. Скопируйте файл с именем 1р в файл с именем test.
cd /etc/init.d
ср Ip test
Воспользуйтесь текстовым редактором vi для редактирования файла test. Замените строку 16, которая читается как
[ -f /usr/lib/lpsched ] && /usr/lib/lpsched
на строку
echo ""; /usr/bin/banner "Ready"; echo ""
Теперь замените строку 20, которая в настоящее время читается как
[ -f /usr/lib/lpshut ] && /usr/lib/lpshut
на следующую строку:
echo ""; /usr/bin/banner "System going down"; echo ""
Убедитесь, что этот сценарий test исполняется должным образом с аргументами start и stop.
./test start
./test stop
Перейдите в каталог/etc/rc2.d и создайте жесткую ссылку на только что созданный сценарий test.
cd /etc/rc2.d
In /etc/init.d/test S22test
Перейдите в каталог /etc/rcS.d и создайте другую ссылку на сценарий test, который будет запускаться, когда система перейдет на уровень запуска S.
cd /etc/rcS.d
In /etc/init.d/test K99test
Закройте систему до однопользовательского режима и проследите вывод на консоль. Появилось ли сообщение о закрытии системы из сценария K99test?
init S
Теперь остановите систему.
/usr/shin/shutdown -у -gO -iO
После приглашения ок загрузите систему еще раз и посмотрите системные сообщения на консоли. Появилось ли сообщение о запуске системы из сценария S22test?
boot
Обзорные вопросы
Выберите последовательность событий, которая наилучшим образом описывает процесс загрузки системы.
Фаза загрузки из ППЗУ, фаза программной загрузки, фаза инициализации ядра, фаза in it
Фаза программной загрузки, фаза загрузки из ППЗУ, фаза инициализации ядра, фаза init
Фаза программной загрузки, фаза загрузки из ППЗУ, фаза init, фаза инициализации ядра
Фаза загрузки из ППЗУ, фаза программной загрузки, фаза init, фаза инициализации ядра
Что состоит из небольшого статического ядра и множества динамически загружаемых модулей?
Ядро операционной системы
ufsboot
Оболочка
Загрузочный блок
Сколько используемых системных состояний запуска имеет по умолчанию операционная система Solaris 8?
3
7
6
8
В данном состоянии запуска все файловые системы остаются доступными, а любой пользователь, вошедший в систему, может оставаться в системе. Все службы, за исключением наиболее общих служб операционной системы, закрываются в определенной последовательности.
A. S
1
2
D. О
Что запускает ядро операционной системы в первую очередь?
sched
Примените ваши знания
init
ufsboot
Загружает загружаемые модули
Как можно просмотреть позднее системные сообщения, отображаемые на экране в процессе начальной загрузки?
Путем выдачи команды dmesg
Путем просмотра файла /var/messages
Путем выдачи команды sysdef
Путем просмотра файла /etc/boot.log
Какую команду следует ввести после приглашения ок для загрузки системы в однопользовательский режим?
A. boot
boot -s
boot -а
D. boot -п
Какая команда, введенная после приглашения ок, останавливает процесс загрузки и запрашивает ввод данных?
A. boot -i
boot -а
boot -v
D. boot -s
Какая из перечисленных ниже программ анализирует содержимое файла /etc/inittab для определения порядка запуска других процессов и того, что следует делать, когда один из этих процессов завершается?
A. init
boot
ядро
своппер
Какая последовательность операций является правильной в том случае, если система зависла и не отвечает?
Stop+A, sync, reset
Stop+A, boot
Stop+A, reset
Stop+A, reset, sync, boot
Какая из перечисленных ниже команд эквивалентна команде init 5?
poweroff
halt
reboot
D. boot -s
Какая из перечисленных ниже программ отвечает за исполнение ufsboot?
bootblock
ядро
init
boot
Какая команда используется для изменения уровней запуска?
run
init
kill
su
Оператор respawn в файле /etc/inittab выполняет следующие функции:
Повторно стартует команду
Перезагружает систему
Перезапускает все системные процессы
Ожидает завершения некоторой команды
Где находятся сценарии запуска для состояния запуска 3?
В /etc/rc.boot
В /etc/гсЗ
В/etc/гсЗ.d
В /sbin/гсЗ
Какой метод является наилучшим для добавления сценария перехода в состояние запуска 3?
Добавить этот сценарий в /usr/local/bin
Добавить этот сценарий в /etc/init.d и связать его с /etc/гсЗ.d
Добавить этот сценарий в каталог /etc/гсЗ.d и создать ссылку на /etc/init.d
Добавить этот сценарий в /sbin/гсЗ
Ответы на обзорные вопросы
А. Процесс загрузки последовательно проходит следующие четыре фазы: загрузку из ППЗУ, программную загрузку, инициализацию ядра, init.
А. Ядро операционной системы состоит из двух статических частей, файлы которых называются genunix и unix. Причем, genunix представляет собой независимый от платформы, общий файл ядра; unix представляет собой часть ядра, специфическую для данной компьютерной платформы. Когда выполняется загрузка системы, программа ufsboot объединяет эти два файла и множество динамически загружаемых модулей в памяти для формирования рабочего ядра операционной системы.
В. Solaris 8 имеет восемь состояний запуска, однако поскольку состояние 4 в настоящее время не используется, то фактически существует всего семь используемых состояний.
Примените ваши знания
В. Уровень запуска 1 представляет однопользовательский режим работы (режим системного администратора), в котором все файловые системы остаются доступными и любой пользователь, вошедший в систему, может оставаться в системе. Все службы, за исключением наиболее общих служб операционной системы, закрываются в определенной последовательности.
А. Первой задачей ядра операционной системы является запуск своппера, которым является компонентом ядра, планирующим работу всех остальных процессов. Процесс своппера имеет идентификатор 0 и наименование sched. Его первой задачей является запуск процесса ink.
А. Для просмотра информации, которая отображалась в процессе начальной загрузки, следует воспользоваться командой dmesg.
В. После приглашения ок среды OpenBoot наберите команду boot -s для загрузки системы в однопользовательский режим.
В. Команда boot -а выполняет интерактивную загрузку. С помощью этой опции (-а) вы будете получать приглашения ввести имя ядра, имя по умолчанию каталога модулей, имя системного файла, тип корневой файловой системы и имя корневого устройства.
А. Команда /sbin/init генерирует процессы для установки системы, основываясь на инструкциях, заданных в файле /etc/inittab. Процесс ink является родительским для всех остальных процессов. Он анализирует содержимое файла /etc/inittab для определения последовательности запуска остальных процессов и того, что следует делать, когда один из этих процессов завершится.
А. Остановите операционную систему, используя последовательность завершения Stop+A. Введите команду sync для синхронизации дисков. После приглашения ок наберите команду reset для сброса (переустановки) аппаратных средств и запуска процесса загрузки.
А. Команда poweroff эквивалентна команде ink 5, которая переводит систему в состояние запуска 5 - в состояние выключения электропитания.
А. Программа bootblk находит и исполняет, загружая ее в память, вторичную программу загрузки по имени ufsboot из файловой системы ufs.
В. Для изменения уровней запуска используйте команду ink.
А. Оператор respawn в файле /etc/inittab будет инициировать перезапуск процесса, если этот процесс "умер".
С. Соответствующий каталог, именуемый /etc/rc<n>.d, содержит сценарии для выполнения различных действий применительно к данному уровню запуска. Например, сценарии запуска для уровня 3 находятся в каталоге /etc/rc3.d.
В. Для добавления сценария к состоянию запуска 3 занесите этот сценарий в каталог/etc/init.d и свяжите его посредством жесткой ссылки с каталогом /etc/rc3.d.
Глава 2Глава 2OpenBootOpenBoot
Глава 2
Глава 2
OpenBoot
OpenBoot
Темы
В этой главе вы ознакомитесь со следующими темами, связанными с тестированием:
Понимание среды, архитектуры и интерфейса OpenBoot
Системный администратор должен иметь представление о следующей теме, свя
занной с OpenBoot:
Получение справки в среде OpenBoot
Вы должны понимать все команды, доступные в OpenBoot. Кроме того, полезно владеть справочными средствами OpenBoot для получения дополнительной информации по командам и их параметрам.
Умение использовать команды OpenBoot PROM (ППЗУ OpenBoot) для просмотра информации о конфигурации системы
Системный администратор должен понимать, как идентифицировать аппаратные компоненты с помощью средств OpenBoot PROM. Вы должны будете полностью понять, как использовать команды OpenBoot для установки и модификации параметров конфигурации, которые управляют процессом загрузки системы и поведением аппаратных средств.
Установка и отображение полных имен устройств в PROM
Устройства имеют уникальные имена, представляющие как тип конкретного устройства, так и его расположение в структуре системной адресации, которая называется деревом устройств. Важно, чтобы вы разобрались с компонентами имен устройств, с командами, используемыми для анализа дерева устройств, и с псевдонимами устройств.
Манипулирование пользовательскими псевдонимами устройств
Вы должны понимать, как устанавливать и отображать псевдонимы постоянных и временных устройств в OpenBoot.
Установка защиты OpenBoot
В этой главе описано, как установить защиту таким образом, чтобы только авторизованные пользователи имели доступ к интерфейсу и командам OpenBoot.
Использование команд OpenBoot PROM для выполнения основных видов тестирования аппаратных средств
Вы узнаете, как проводить диагностику оборудования системы через ППЗУ OpenBoot, чтобы проверить подключение периферийных устройств.
Использование команды boot
Вы познакомитесь с различными методами запуска системы в однопользовательском и многопользовательском режимах. .
Загрузка ядра
В качестве системного администратора вы должны знать все этапы загрузки ядра, чтобы быть готовым справляться с проблемами, возникающими при запуске системы.
Системный администратор должен понимать основные функции среды OpenBoot, которая включает в себя PROM (programmable read-only memory - программируемое постоянное запоминающее устройство, или ППЗУ). Также необходимо отчетливое понимание того, как использовать многие из команд OpenBoot и устанавливать и модифицировать каждый из параметров конфигурации, которые управляют процессом загрузки системы и поведением аппаратных компонентов.
Содержание
(Введение62
Среда OpenBoot62
•Единство версий программного обеспечения одно и многопроцессорньи^систем63
•Docmyn череде OpenBoot64
Задачи встроенного программного обеспечения OpenBoot64
Лрхитетуп^ра OpenBoot65
Интерфейс OpenBoot66
•Монитор с ограниченными возможностями66
Монитор Tort Я67
Получение справку в среде Open<Boot67
Полные имена устройств в ФРОМ69
Псевдонимы устройств OpenSoot72
9МуКМ — энергонезависимое ОЗУ среды Open<Boot73
Программа nvecfit78
Защита среды Open<Boot79
Фиагностика среды Open<Boot80
Управление вводом/выводом83
Загрузка84
Хдро операционной системы89
Резюме96
Примените ваши знания
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
При изучении настоящей главы рекомендуется практически выполнять каждый пошаговый процесс, описанный далее, на одной из систем Sun. К сожалению, компьютеры на платформе Intel, работающие под управлением Solaris 8, не предоставляют среды OpenBoot, необходимой для практического освоения каждой темы, которая описывается в настоящей главе. Попрактикуйтесь в работе со средой OpenBoot, используя различные команды, представленные в настоящей главе.
Определите аппаратную конфигурацию вашей системы Sun, используя различные команды OpenBoot, представленные в настоящей главе. Ознакомьтесь самостоятельно со всеми устройствами вашей системы. Вы должны уметь идентифицировать каждый компонент оборудования по его имени маршрута устройства.
Попрактикуйтесь в создании псевдонимов временных и постоянных устройств. Кроме этого, обязательно установите различные системные параметры OpenBoot, которые описываются в настоящей главе.
Наконец, попрактикуйтесь в загрузке системы с использованием различных, описанных здесь методов. Разберитесь, как загрузить альтернативное ядро или системный файл.
Введение
В главе 1 был представлен общий обзор запуска системы, приведено введение в среду OpenBoot и описаны особенности /sbin/init, уровней запуска и сценариев управления запуском. В этой главе представлено более детальное описание встроенного программного обеспечения OpenBoot и загрузки ядра операционной системы.
Среда OpenBoot
Пользовательский интерфейс аппаратного уровня, который отображается на экране до того, как запускается операционная система, носит название ОВР (OpenBoot PROM). Среда OpenBoot базируется на интерактивном командном интерпретаторе, который пре-
доставляет доступ к расширенному набору функций для развертывания аппаратного и программного обеспечения, локализации неисправностей и отладки. Встроенное программное обеспечение ОВР хранится в гнездовом загрузочном PROM (Programmable Read-Only Memory - программируемом постоянном запоминающем устройстве, или ППЗУ), состоящем из двух установленных на системной плате микросхем по 8 Кбайт каждая: собственно PROM (ППЗУ), которое содержит расширенное встроенное программное обеспечение, обеспечивающее доступ к написанным пользователем драйверам загрузки, и еще расширенную диагностику, и микросхема NVRAM (Non-Volatile Random-Access Memory- энергонезависимого оперативного запоминающего устройства, или энергонезависимого ОЗУ).
Микросхема NVRAM содержит определяемые пользователем параметры системы и доступные ему в режиме записи области памяти управляемых диагностических процедур, макрокоманд и псевдонимов устройств. NVRAM - это именно то место, где хранится информация системной идентификации, такая как идентификатор компьютера (HOSTID), его адрес в сети Ethernet и TOD (time of day - время дня). Единственная литиевая батарея обеспечивает сохранность энергонезависимого ОЗУ и часов. Многие программные пакеты в целях лицензирования используют хранящийся здесь идентификатор компьютера; следовательно, важно, чтобы эта микросхема могла быть удалена и установлена в любую сменную системную плачу.
Текущая версия OpenBoot-третья, и именно эта версия описывается в настоящей главе. В зависимости от времени изготовления вашего компьютера в нем может быть установлено PROM (ППЗУ) версии 1,2 или 3. Первая версия встроенного программного обеспечения для PROM была внедрена в Sun SPARCstation 1. Первой версией OpenBoot PROM была версия 2, которая впервые появилась в вычислительной системе Sun SPARCstation 2. Версия 3 в настоящее время доступна в вычислительных системах серии Ultra. В версии 3 архитектуры OpenBoot достигнуто существенное расширение функциональности по сравнению с загрузочными PROM более старых вычислительных систем фирмы Sun. Одной из замечательных особенностей встроенного программного обеспечения OpenBoot является программируемый интерфейс пользователя, построенный на основе языка интерактивного программирования Forth. В языке Forth последовательности команд пользователя могут быть объединены в форме законченной программы. Эта возможность предоставляет достаточно мощный инструмент для отладки аппаратного и программного обеспечения. Другим преимуществом версии 3 архитектуры OpenBoot является функция обновления флэш-памяти. Вы можете обновить встроенное программное обеспечение версии 3, не заменяя микросхему PROM.
ПРИМЕЧАНИЕ ...
В среде Intel отсутствуют OpenBoot PROM и NVRAM. В вычислительных системах Intel до запуска ядра операционной системы управление компьютером осуществляется ROM (read only memory - постоянным запоминающим устройством) системы BIOS (basic input/output system - базовой системы ввода-вывода), которая представляет собой интерфейс встроенного программного обеспечения на персональном компьютере.
Единство версий программного обеспечения одно и многопроцессорных систем
Перечисленные ниже вычислительные системы имеют только одну системную плату, на которой установлено одно загрузочное устройство PROM с микросхемой NVRAM:
<$> SPARCstation 4, 5, 10 и 20
<$> ULTRA 1,2, 5, 10, 30, 60, 80, 220, 250, 240, 420 и 450
Все остальные вычислительные системы могут быть сконфигурированы с несколькими системными платами, для них характерно специальное расположение загрузочного PROM и NVRAM. Ниже перечислены некоторые аспекты многопроцессорных вычислительных систем, о которых вы должны иметь представление:
3> Эти системы имеют плату часов для наблюдения за фоновыми подключениями.
3> Идентификатор компьютера (HOSTID) и его Ethernet-адрес хранятся на плате часов и автоматически загружаются в NVRAM всех процессорных плат после завершения процедуры POST (power-on self test - самотестирования при включении питания).
3> Содержимое PROM каждого процессора сравнивается и проверяется с помощью контрольных сумм.
ф Процессор, установленный в самый нижний разъем, является главным.
ф Каждый центральный процессор запускает свою собственную процедуру POST.
Доступ к среде OpenBoot
Вы можете получить доступ к среде OpenBoot посредством использования одной из следующих команд, ранее обсуждаемых в главе 1:
3> Путем останова операционной системы.
3> Путем одновременного нажатия клавиш Stop и A (Stop+A). На терминалах, подключаемых к последовательному порту, нажмите клавишу Break.
3> При первоначальном включении питания системы. Если ваша система не сконфигурирована для автоматического запуска, она остановится с появлением интерфейса пользователя. Если же система сконфигурирована для автоматического запуска, можно выполнить останов системы в интерфейсе пользователя, нажав клавиши Stop+A сразу после возникновения баннера (заголовка) консоли, но до начала старта операционной системы.
3> Если аппаратные средства системы обнаружат какую-нибудь неустранимую ошибку. (Эта процедура известна под названием "Watchdog Reset" - "переустановка по сторожевому таймеру").
ПРИМЕЧАНИЕ..
В операционной системе Solaris 8 введена новая функция, которая предоставляет возможность принудительного завершения работы зависшей системы. Новая последовательность нажатия клавишей для останова системы имеет вид Enter+~+Ctrl+B и эквивалентна нажатию клавиш Stop+A. Между нажатием символов должен выдерживаться интервал более 0.5 секунды, а вся строка символов целиком должна быть введена менее, чем за пять секунд. Это справедливо только для последовательных устройств, работающих в режиме консолей, и не справедливо для систем, имеющих собственную клавиатуру. Если ваша консоль подсоединена к последовательному порту через модем, вы можете послать команду прерывания (Stop+A или L1+A) через окно подсказки, набрав последовательность символов -# (тильда плюс знак фунта).
Задачи встроенного программного обеспечения OpenBoot
Далее перечислены основные задачи встроенного программного обеспечения OpenBoot:
3> Тестирование и инициализация аппаратных средств системы.
ф Определение конфигурации аппаратных средств.
3> Запуск операционной системы либо с устройства массовой памяти, либо из сети.
Ф Предоставление средств интерактивной отладки для тестирования аппаратного и программного обеспечения.
ф Обеспечение возможностей модификации и управления конфигурацией запуска системы, в том числе параметрами NVRAM.
/ f РЕДУ^РЕЖ^Е^\
Перевод системы в OpenBoot PROM с использованием клавиш Stop+A или клавиши Break мгновенно прекращает функционирование операционной системы, но этот способ должен применяться только в крайнем случае для перезапуска компьютера.
В частности, OpenBoot будет исполнять следующие задачи, необходимые для инициализации ядра операционной системы:
Отображать на экране информацию системной идентификации, а затем запускать процедуры диагностического самотестирования для проверки оборудования и памяти вычислительной системы. Эти проверки известны под названием POST (Power-On Self Test - процедура самотестирования при включении питания).
Загружать первичную программу запуска под названием bootblk с принятого по умолчанию устройства.
Программа bootblk находит, загружает в память и исполняет вторичную программу запуска под названием ufsboot,.
Программа ufsboot загружает ядро операционной системы.
Архитектура OpenBoot
Архитектура OpenBoot обеспечивает повышенную функциональность и переносимость по сравнению с патентованными вычислительными системами некоторых других поставщиков аппаратного обеспечения. Хотя эта архитектура под названием OpenBoot была впервые внедрена фирмой Sun Microsystems на вычислительных системах семейства SPARC (Scaleable Processor Architecture - архитектура, масштабируемая (наращиваемая) за счет процессоров), ее проект является процессоро-независимым. Ниже приведены некоторые характерные функциональные возможности встроенного программного обеспечения OpenBoot:
Ф Драйверы устройств plug-ini (быстрого подключения). Драйвер, который может быть загружен с plug-in устройства, такого как шина SBus. Упомянутый драйвер может быть использован для загрузки операционной системы с такого устройства либо для отображения текста на устройстве до того, как операционная система активизирует собственные драйверы ус тройств. Указанная возможность позволяет отслеживать устройства ввода/вывода, не изменяя при этом PROM.
Ф Интерпретатор FCode. Драйверы plug-ini написаны на машинно-независимом интерпретируемом языке программирования, который называется FCode. Каждое PROM системы OpenBoot содержит интерпретатор FCode. Это позволяет использовать одно и то же устройство с одним и тем же драйвером на компьютерах, имеющих различный набор команд центрального процессора.
Ф Дерево устройств. Устройства, называемые узлами, присоединяются к ведущему компьютеру через иерархию взаимосвязанных шин на дереве устройств. Узел, представляющий шину по физическому адресу ведущего компьютера, является
корневым узлом этого дерева. Как пользователь, так и операционная система могут определять конфигурацию аппаратных средств путем просмотра дерева устройств.
Основные узлы дерева вместе со своими дочерними обычно представляют шины и связанные с ними контроллеры, если таковые имеются. Каждый такой узел определяет некоторое физическое адресное пространство, которое позволяет отличить одно из устройств, подсоединенных к конкретному узлу, от других. Каждому потомку такого узла присваивается некоторый физический адрес в адресном пространстве родительского узла. Физический адрес в общем случае представляет собой некоторую физическую характеристику, уникальную для данного устройства (адрес шины или номер разъема, в который установлено данное устройство). Именно использование физических адресов для идентификации устройств предотвращает возможность изменения их адресов при установке или удалении других устройств.
ф Программируемый интерфейс пользователя. Пользовательский интерфейс OpenBoot основывается на применении языка программирования Forth, который предоставляет некоторую интерактивную среду программирования. Forth - это язык, используемый для организации непосредственного взаимодействия между людьми и компьютерами. Он может быть быстро расширен и адаптирован к специальным потребностям и различным системам аппаратного обеспечения. Forth используется не только фирмой Sun, а и другими поставщиками аппаратных средств, например, Hewlett-Packard.
ПРИМЕЧАНИЕ ..
Если вы заинтересованы в получении более подробной информации по языку программирования Forth, обратитесь к документу ANSI ХЗ.215-1994 Национального Института Стандартизации США.
Интерфейс OpenBoot
Встроенное программное обеспечение OpenBoot предоставляет интерфейс командной строки для пользователя, находящегося за системной консолью. На более старых системах фирмы Sun, таких как SPARCstationlO и SPARCstation20, этот интерфейс командной строки имел два режима работы: монитор с ограниченными возможностями (Restricted Monitor) и монитор Forth (Forth Monitor).
Монитор с ограниченными возможностями
Такой монитор предоставляет простой набор команд для инициирования загрузки системы, возобновления ее работы или перехода в режим монитора Forth. Монитор с ограниченными возможностями также используется для реализации защиты системы.
Приглашением этого монитора является знак "больше" (>). Когда вы входите в режим монитора с ограниченными возможностями, на экране появляются следующие команды, одну из которых можно ввести:
Type b (boot), с (continue), or n (new command mode) >
Команды перечисляются в таблице 2.1.
Табл йца 2.1 Команды монитора с ^ра^ичей^1Мй возможностями ■ Л . (Re$t(icteti Мбп1$ог|к^’э<-.>; .
Команда
Описание
ь
Загружает операционную систему.
с
Возобновляет исполнение остановленной программы.
п
Входит в режим монитора Forth (обычно этот режим называется "new com-mand model" - новый командный режим).
Монитор Forth
Этот монитор принят по умолчанию в среде OpenBoot, он является интерактивным командным интерпретатором, предоставляющим доступ к расширенному набору функций диагностики аппаратного и программного обеспечения. Эти функции доступны для любого пользователя, имеющего доступ к системной консоли.
Приглашением Монитора Forth является слово ок. Когда вы входите в режим Монитора Forth, на экране отображается следующая строка:
Type help for more information ok
На более старых системах SPARCstation вы сможете покинуть режим Forth Monitor и перейти в режим Restricted Monitor путем ввода следующей командной строки:
ok old-mode
"Старый режим" - режим монитора с ограниченными возможностями - не доступен на вычислительных системах семейства UltraSparc.
ПРИМЕЧАНИЕ
Когда система остановлена, на экране отображается приглашение монитора PROM. Тип приглашения зависит от вашей вычислительной системы. Старые системы фирмы Sun, такие как семейства Sun4/nnn, используют в качестве приглашения PROM знак "больше" (>). Более новые вычислительные системы фирмы Sun используют в качестве приглашения слово ок, однако поддерживают и приглашение >. На более новых системах фирмы Sun для переключения с приглашение > на приглашение ок введите п после приглашения >.
Получение справки в среде OpenBoot
Находясь в среде OpenBoot, вы можете с помощью команды help в любое время получить справку по различным командам языка программирования Forth. Варианты синтаксиса команды help для использования из приглашения ок приведены в таблице 2.2.
Таблица 2.2 Справка>в среде OpenBoot
Команда
Описание
help
Выводит на экран инструкции по использованию справочной системы и перечень доступных категорий справки.
help <category>
Отображает справку по всем командам в данной категории. Использует только первое слово из описания категории.
help <command>
Отображает справку по конкретной команде.
В связи с обилием команд справка доступна только по наиболее используемым.
В приведенном далее примере команда help демонстрируется без аргументов:
ok help
Система отвечает на эту команду следующим образом: Enter 'help command-name' or 'help category-name' for more help (Use ONLY the first word of a category description) Examples: help select -or- help line Main categories are: Repeated loops Defining new commands Numeric output Radix (number base conversions) Arithmetic Memory access Line editor System and boot configuration parameters Select I/O devices Floppy eject Power on reset Diag (diagnostic routines) Resume execution File download and boot nvramrc (making new commands permanent) ok
Если вы хотите посмотреть справочные сообщения для всех команд, входящих, например, в категорию diag, введите следующую командную строку:
ok help diag
Система отвечает на эту команду следующим образом:
test <device-specifier> Run selftest method for specified device
Examples:
test
floppy -
est
floppy
disk drive
test
net-
test
net
test
scsi -
test
scsi
test-all
Execute
test for all
devices with
selftest
method
watch-clock Show ticks of real-time clock watch-net Monitor network broadcast packets watch-net-all Monitor broadcast packets on all net interfaces probe-scsi Show attached SCSI devices probe-scsi-all Show attached SCSI devices for all host adapters ok
Если вы хотите получить справку по конкретной команде, введите следующую командную строку:
ok help test
Справочная система ответит таким образом: test <device-specifier> Run selftest method for specified device Examples: test floppy - test floppy disk drive
test net
-test net
test scsi
-test scsi
test-all
Execute test for all devices with selftest method
watch-clock
Show ticks of real-time clock
watch-net
Monitor network broadcast packets
watch-net-all
Monitor broadcast packets on all net interfaces
probe-scsi
Show attached SCSI devices
probe-scsi-all ok
Show attached SCSI devices for all host adapters
Полные имена устройств в PROM
Встроенное программное обеспечение OpenBoot работает непосредственно с аппаратными устройствами системы. Каждое устройство имеет уникальное имя, представляющее как тип этого устройства, так и расположение устройства в структуре системной адресации, которая называется деревом устройств. Встроенное программное обеспечение формирует дерево всех устройств на основе информации, собранной POST. Дерево устройств загружается в память и используется ядром операционной системы в процессе загрузки для идентификации всех сконфигурированных устройств. В приведенном примере демонстрируется маршрут как полное имя устройства для системы с архитектурой SBus, такой как SPARCstation20:
/sbus@if,O/esp@0, 40000/sd@3,0:a
А в этом примере демонстрируется полное имя маршрута некоторого устройства для системы с шиной PCI, такой как Ultra5:
/pci@lf,0/pci@1,l/ide@3/disk
В следующем примере демонстрируется дисковое устройство системы Ultra с шиной PCI-SCSI:
/pci@If,O/pci@l/isptwo@4/sd@3,О
Маршрут как полное имя некоторого устройства представляет собой последовательность имен узлов, разделенную символами косой черты (/). Корнем этого дерева является узел машины, который не именуется в явном виде, однако обозначается ведущим символом косой черты. Имя маршрута каждого устройства имеет следующую форму:
driver-name@unit-address:device-arguments
Компоненты имени маршрута устройства описываются в таблице 2.3.
Таблица 2.3 Параметры имени маршрута устройства■
ПараметрОписание
driver-nameПригодная для чтения человеком символьная строка, содержащая от 1
до 31 символов, в число которых входят буквы, цифры и следующие знаки препинания:,._ + -
Различаются символы верхнего и нижнего регистров. В некоторых случаях имя устройства включает наименования его изготовителя и модели, разделенные запятой. Обычно в качестве наименования изготовителя используются публикуемые символы акционерной компании, набранные прописными буквами (например, SUNW.hmeO). Для встроенных устройств наименование изготовителя обычно опускается (например, sbus или pci).
Продолжение таблицы 2.3
Параметр
Описание
Перед параметром адреса должен быть записан символ @; он служит в качестве разделителя между именем драйвера (driver-name) и адресом устройства (unit-address).
unit-address
Некоторая текстовая строка, представляющая физический адрес данного устройства в адресном пространстве его родительского узла. Точное значение конкретного адреса зависит от шины, к которой подсоединено устройство. В приведенном ниже примере:
/sbus@If,0/esp@ 0,40000/sd@3,0: a
выражение 1f,0 представляет адрес на главной системной шине, поскольку в рассматриваемом примере устройство SBus подключено непосредственно к главной системной шине.
Выражение 0,40000 представляет собой номер разъема на шине SBus. В рассматриваемом примере устройство подключено к разъему 0 шины SBus со смещением 40000.
Выражение 3,0 представляет SCSI-интерфейс и номер логического устройства. В рассматриваемом примере дисковое устройство подключено к шине SCSI как адресат 3, логическое устройство 0.
device-arguments
Текстовая строка, формат которой зависит от конкретного устройства. Этот параметр может использоваться для передачи дополнительной информации программному обеспечению устройства. В приведенном ниже примере
/sbus@lf,0/scsi@2,l/sd@3,0:а
аргументом дискового устройства является "а". Программное обеспечение драйвера этого устройства интерпретирует его аргумент как раздел диска, поэтому рассматриваемый маршрут устройства ссылается на дисковый раздел "а".
Команда show-devs среды OpenBoot используется для получения информации об устройствах и для отображения имен маршрутов устройств на экране. Эта команда отображает все устройства, известные системе и находящиеся непосредственно ниже данного устройства в иерархии устройств. Команда show-devs без параметров используется для отображения полного дерева устройств. Синтаксис этой команды выглядит следующим образом: show-devs [device-path]
В качестве примера может служить следующая командная строка:
ok show-devs
В ответ система выводит следующую информацию: /II,TMS39OZ5O0 f,f8fffffc /eccmemctl@f,0 /virtual-memory®0,0 /шетогуЭ 0,0 /obi о /iommu@f,60000000 /openprom /aliases /options /packages
/obio/power9О,aOIOOO
/obio/auxio@0,800000
/obio/SUNW,fdtwo@0,700000
/obio/interrupt@0,400000
/obio/counter@0,300000
/obio/eeprom90,200000
/obio/zs8 0,0
/obio/zs@ 0,100000
/iommu@f,e0000000/sbus@f,eOOOlOOO
/iommu@f,e0000000/sbus@f,e0001000/cgsix@ 2,0
/iommuef,e0000000/sbus@f,e0001000/SUNW,DBRIe@f,8010000
/iommu@f,e0000000/sbus9f,e0001000/SUNW,bpp@f,4800000
/iommu@f,eOOOO000/sbus@f,e0001000/ledma@ f,400010
/iommu9f,e0000000/sbus9f,e0001000/espdma@f,400000
/iommu@ f, e0000000/sbus9f, e0001000/SUNW,DBRIe@f, 8010000/mmcodec
/iommu9f,e0000000/sbus@f,e0001000/ledma@f,400010/le9f,c00000
/iommu@f,e0000000/sbus9f,e0001000/espdma@f,400000/esp@f,800000
/iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp9f,800000/st
/iommu9f,e0000000/sbus@f,e0001000/espdma@f,400000/esp9f,800000/sd
/packages/obp-tftp
/packages/deblocker
/packages/disk-label
Команды, используемые для анализа дерева устройств, перечислены в таблице 2.4.
Таблица 2.4 Команды для.просмотра дерева устройств'.
Команда
Описание
properties
Отображает имена и свойства текущего узла.
dev device path
Выбирает заданный узел устройства, делая его текущим.
dev node-name
Выполняет поиск узла с заданным именем в поддереве ниже текущего узла и выбирает первый найденный.
dev..
Выбирает родительский узел текущего узла.
dev/
Выбирает корневой узел машины.
device-end
Покидает дерево устройств.
"device-path" find-device
Выбирает заданный узел устройства, работает аналогично команде dev.
Is
Отображает имена дочерних узлов текущего узла.
pwd
Отображает имя маршрута устройства текущего узла.
see wordname
Декомпилирует заданное слово (устанавливает устройство по указанному имени).
show-devs [device-path]
Отображает все устройства, известные системе и находящиеся непосредственно ниже данного устройства в иерархии устройств. Команда show-devs без параметров используется для отображения полного дерева устройств.
words
Отображает наименования методов текущего узла.
"device-path" select-dev
Выбирает заданное устройство и делает его активным узлом.
Псевдонимы устройств OpenBoot
Имена маршрутов устройств могут быть достаточно длинными и сложными для ввода. Концепция псевдонимов устройств, повсеместно известная в UNIX, позволяет заменить длинное имя каким-нибудь коротким. Псевдоним представляет имя маршрута устройства целиком, а вовсе не его часть. Например, псевдоним diskO может представлять следующий маршрут устройства:
/sbus@1,f8OOOOOO/esp90, 40000/sd@3,0:а
Встроенное программное обеспечение OpenBoot имеет предопределенные псевдонимы обычно используемых устройств, они перечислены в таблице 2.5; поэтому вам не часто потребуется набирать полное имя устройства.
Таблица 2/5 Предопределенные, ^J
Псевдоним
Имя маршрута устройства
disk
/pci@1f,0/pci@1,1/ide@3/disk@0,0
diskO
/pci@1f,0/pci@1,1/ide@3/disk@0,0
diski
/р ci @ 1 f, 0/p ci @ 1,1 /ide @3/d is k@ 1,0
disk2
/pci@ 1 f, 0/pci@ 1,1 /ide @3/d isk @2,0
disk3
/pci@1f,0/pci@1,1/ide@3/disk@3,0
cdrom
/pci@1f,0/pci@1,1/ide@3/cdrom@2,0:f
ПРИМЕЧАНИЕ■,
Имена маршрутов устройств могут различаться на различных компьютерных платформах. Псевдонимы устройств, приведенные в таблице 2.5, соответствуют системе Sun UltraS.
Если вы добавляете дисковый накопитель или меняете назначение начального накопителя, то вам может потребоваться изменить псевдонимы их устройств. В таблице 2.6 описывается команда devalias, которая используется для анализа, создания и изменения псевдонимов среды OpenBootr-
Таблица 2.6 Команда devalias
КомандаОписание
devaliasdevalias_aliasdevalias_alias device-pathdevaliasdevalias_aliasdevalias_alias device-pathОтображает все псевдонимы текущих устройств.
devalias
devalias_alias
devalias_alias device-path
devalias
devalias_alias
devalias_alias device-path
Отображает имя маршрута устройства, соответствующего псевдониму alias.
Определяет псевдоним, представляющий устройство device-path.
ПРИМЕЧАНИЕ■
Если такой псевдоним уже существует, то новое значение переопределяет старое.
В приведенном ниже примере показано создание псевдонима устройства с именем disk3, представляющего диск SCSI и имеющего в системе SPARCstationlO идентификатор 3:
devalias disks /iommu/sbus/espdma9f,4OOOOO/esp9f,8OOOOO/sd93,О
Для подтверждения правильности заданного псевдонима наберите команду devalias, в ответ система выведет все псевдонимы устройств:
ok devalias
screen disks
/iommu9f,e0000000/sbus9f,e0001000/cgsix92,0
/iommu/sbus/espdma9f,400000/esp@f,800000/sd@0,0
floppy scsi
/obio/SUNW,fdtwo
/iommu/sbus/espdma@f,4OOOOO/esp9f,800000
net-aui
/iommu/sbus/ledma9f,400010:aui/le@f,cOOOOO
net-tpe net
/iommu/sbus/ledma9f,400010:tpe/le@f,cOOOOO
/iommu/sbus/ledma@f,400010/le@f,cOOOOO
disk cdrom
/iommu/sbus/espdma@f,400000/esp@f,800000/sd@3,0
/iommu/sbus/espdma9f,4OOOOO/esp9f,800000/sd@6,0:d
tape tapeO tapel disk3 disk?
/iommu/sbus/espdma9f,4OOOOO/esp9f,800000/st@4,0 /iommu/sbus/espdma9f,4OOOOO/esp9f,800000/st@4,0 /iommu/sbus/espdma9f,400000/esp@f,800000/st@5,0 /iommu/sbus/espdma9f,400000/esp@f,800000/sd@3,0 /iommu/sbus/espdma@f,400000/esp@f,800000/sd@2,0
diskl
/iommu/sbus/espdma@f,400000/esp@f,800000/sd@l,0
diskO
/iommu/sbus/espdma9f,400000/esp@f,800000/sd@3,0
ttyb ttya keyboard! keyboard
/obio/zs90,100000 :b /obio/zs90,100000:a
/obio/zs@0,0:forcemode /obio/zs? 0,0
Псевдонимы, определенные пользователем, теряются после переустановки системы или выключения и повторного включения электропитания, если не создать постоянный псевдоним. Если вы хотите создать постоянные псевдонимы, то можете либо вручную сохранить команду devalias в области NVRAM (non-volatile RAM энергонезависимого ОЗУ), называемой nvramrc, либо воспользоваться командами nvalias и nvunalias. Далее огщсан процесс конфигурирования постоянных установок в NVRAM на вычислительных системах фирмы Sun.
NVRAM - энергонезависимое ОЗУ среды OpenBoot
Переменные системной конфигурации сохраняются в энергонезависимом оперативном запоминающем устройстве, или ОЗУ. Эти переменные среды OpenBoot определяют стартовую конфигурацию компьютера и соответствующие коммуникационные характеристики. Вы можете модифицировать значения переменных конфигурации, и при этом любые внесенные изменения сохраняют свое действие даже после выключения и повторного включения электропитания. Однако переменные конфигурации должны подстраиваться очень тщательно.
В таблице 2.7 описываются переменные конфигурации NVRAM среды OpenBoot, их значения по умолчанию и их функции.
Таблица 2.7 Переменные NVRAM
ПеременнаяЗначение поумолчаниюauto-boot?trueПеременнаяЗначение поумолчаниюauto-boot?trueОписание
ПеременнаяЗначение по
умолчанию
auto-boot?true
ПеременнаяЗначение по
умолчанию
auto-boot?true
Если эта переменная принимает логическое значение true ("истина"), после включения питания или после аппаратного сброса выполняется автоматический запуск системы.
Продолжение таблицы 2.7
Переменная
Значение no умолчанию
Описание
boot-command
boot
Команда, которая исполняется, если переменная autoboot? принимает значение true.
boot-device
disk или net
Устройство, с которого выполняется запуск системы: disk - с диска, net - из сети.
boot-file
Пустая строка
Аргументы, передаваемые стартующей программе.
diag-device
net
Исходное устройство для запуска диагностики.
diag-file
Пустая строка
Аргументы, передаваемые стартующей программе в режиме диагностики.
diag-switch?
false
Если эта переменная принимает логическое значение true, выполняется запуск системы в режиме диагностики.
fcode-debug?
false
Если эта переменная принимает логическое значение true, включает поля имен plug-in устройств на языке FCode.
input-device
keyboard
Устройство ввода для консоли (обычно это клавиатура (keyboard), ttya или ttyb).
nvramrc
Пустое значение
Содержимое области энергонезависимого ОЗУ, которая называется nvramrc.
oem-banner
Пустая строка
Если переменная oem-banner? принимает логическое значение true, включается заголовок OEM (Original Equipment Manufacturer - поставщика оригинального оборудования).
oem-banner?
false
Если эта переменная принимает логическое значение true, используется заказной заголовок поставщика оригинального оборудования.
oem-logo
Отсутствует значение по умолчанию
Если переменная oem-logo? принимает логическое значение true, включается заказной логотип поставщика оригинального оборудования в форме массива байт и отображается в шестнадцатеричном виде.
oem-logo?
false
Если эта переменная имеет логическое значение true, используется заказной логотип поставщика оригинального оборудования; в противном случае используется логотип фирмы Sun.
output-device
screen
Устройство вывода для консоли (обычно это экран (screen), ttya или ttyb).
sbus-probe-list
0123
Определяет, какие разъемы шины SBus и в какой последовательности следует проверять.
screen-#columns
80
Определяет количество столбцов на экране (количество символов, отображаемых в строке).
screen^frows
34
Определяет количество строк на экране.
security-#badlogins
Отсутствует значение по умолчанию
Определяет допустимое количество неудачных попыток ввода пароля.
security-mode '
попе
Определяет уровень защиты встроенного программного обеспечения (возможные значения: попе (защита отсутствует), command (команда) или full (полная)).
Продолжение таблицы 2.7
Переменная
Значение по умолчанию
security-password
Отсутствует значение по умолчанию
use-nvramrc?
false
Описание
Определяет пароль для защиты встроенного отсутствует программного обеспечения (на экране никогда не отображается).
Если эта переменная принимает логическое значение true, в процессе запуска системы исполняются команды, записанные в области nvramrc.
примечание.
На более старых системах семейства SPARC значения по умолчанию различных переменных конфигурации могут отличаться, поскольку на них используются устаревшие версии встроенного программного обеспечения OpenBoot. Как уже отмечалось выше, в настоящей главе описывается версия 3 встроенного программного обеспечения OpenBoot.
Переменные конфигурации NVRAM могут быть просмотрены и изменены путем использования команд, перечисленных в таблице 2.8.
Таблица 2.8 Просмотр или изменение переменных конфигурации
Команда
Описание
password
Устанавливает пароль защиты NVRAM.
printenv
Отображает на экране текущее значение и значение по умолчанию для каждой переменной конфигурации. Для просмотра текущего значения некоторой именованной переменной введите printenv<parameter name>.
setenv variable value
Присваивает конкретной переменной данное десятичное или текстовое значение. Изменения являются постоянными, однако они часто вступают в силу только после перезапуска системы.
set-default variable
Переустанавливает значение данной переменной в значение, установленное по умолчанию.
set-defaults
Переустанавливает значения всех переменных конфигурации в значения, установленные для них по умолчанию.
Приведенные далее примеры иллюстрируют использование команд, описанных в таблице 2.8.
Все команды вводятся после приглашения ок среды OpenBoot.
ok printenv
Система отвечает следующим образом:
Variable Name tpe-link-test? scsi-initiator-id keyboard-click? keymap ttyb-rts-dtr-off ttyb-ignore-cd ttya-rts-dtr-off ttya-ignore-cd ttyb-mode
ValueDefaultValue
truetrue
77
falsefalse
falsefalse
truetrue
falsefalse
truetrue
9600,8,n,l,-9600,8,n,l,-
ttya-mode
9600,8,n,l,-
9600,8,n,l,-
pcia-probe-list
1,2,3,4
1,2,3,4
pcib-probe-list
1,2,3
1,2,3
mfg-mode
off
off
diag-level
max
max
#power-cycles
89
system-board-serial#
system-board-date
fcode-debug?
false
false
output-device
screen
screen
input-device
keyboard
keyboard
load-base
16384
16384
boot-command
boot
boot
auto-boot?
false
true
watchdog-reboot?
false
false
diag-file
diag-device
net
net
boot-file
boot-device
disk:a disk net
disk net
local-mac-address?
false
false
ans i-termina1?
true
true
screen-#columns
80
80
screen-#rows
34
34
silent-mode?
false
false
use-nvramrc?
false
false
nvramrc
security-mode
none
security-password
security-#badlogins
0
oem-logo
oem-logo?
false
false
oem-banner
oem-banner?
false
false
hardware-revision
last-hardware-update
diag-switch?
false
false
ПРИМЕЧАНИЕ.
В зависимости от версии встроенного программного обеспечения OpenBoot, установленного у вас, команда printenv может давать несколько отличающиеся результаты. В данном примере использовалась система, работающая под управлением версии 3.15 встроенного программного обеспечения OpenBoot.
Для присвоения переменной auto-boot? значения false введите следующую команду:
ok setenv auto-boot? false
Для проверки выполненной установки введите такую команду:
ok printenv auto-boot?
Система ответит следующим образом:
auto-boot? false true
Для присвоения данной переменной значения, установленного по умолчанию, введите следующую командную строку:
ok set-default auto-boot?
Для проверки выполненной установки введите такую команду:
ok printenv auto-boot?
Система ответит следующим образом:
auto-boot? true true
Для присвоения всем переменным значений, установленных для них в качестве значений по умолчанию, введите следующую командную строку:
ok set-defaults
Можно также устанавливать значения этих переменных конфигурации из командной строки UNIX посредством выдачи команды eeprom. Для выдачи этих команд вы должны быть зарегистрированы в системе с привилегиями суперпользователя, и хотя любой пользователь может просмотреть значение какого-нибудь параметра, однако только суперпользователь может изменить его значение. Например, для присвоения переменной auto-boot? значения true введите следующую команду после приглашения UNIX:
eeprom auto-boot?=true
Любой пользователь из приглашения UNIX может просмотреть значения переменных конфигурации среды OpenBoot:
/usr/sbin/eeprom
Например, чтобы из командной строки изменить значение параметра security-password среды OpenBoot, вы должны зарегистрироваться в системе с привилегиями суперпользователя и выдать следующую команду:
example# eeprom security-password=
Changing PROM password:
New password:
Retype new password:
Устанавливаемый пароль должен иметь длину от нуля до восьми символов. Любые символы после восьмого игнорируются. Вам нет необходимости выполнять перезапуск сис темы, изменения вступят в силу сразу же после ввода указанной команды.
ПРЕДУПРЕЖДЕНИЕ
Установка режима защиты информации и пароля может привести к невозможности загрузки системы, если вы забудете пароль. Эту защиту невозможно взломать иначе, как путем отправки процессорной платы в фирму Sun для выполнения переустановки PROM. Вопросы защиты среды OpenBoot обсуждаются далее в настоящей главе.
Будучи выданной без параметров, команда eeprom будет отображать все установки конфигурации аналогично команде printenv среды OpenBoot.
Команды NVRAM, перечисленные в таблице 2.9, могут быть использованы для модификации псевдонимов устройств таким образом, чтобы они оставались постоянными даже после перезапуска системы.
Таблица 2.9 Команды NVRAM.•■
КомандаОписание
nvalias alias device-path Сохраняет команду nvalias alias device-path в NVRAMRC (Заданный псевдоним сохраняется до тех пор, пока не выполнится команда nvunalias или set-defaults). Включает переменную use-nvramrc?.
nvunalias aliasУдаляет соответствующий псевдоним из NVRAMRC.
Например, в системе SPARCstationlO для постоянного создания псевдонима устройства с именем disk3, представляющего диск с интерфейсом SCSI и имеющего целевой идентификатор 3, введите следующую командную строку:
nvalias disk3/iommu/sbus/espdma9f,400000/esp9f,800000/sd93,О
ПРИМЕЧАНИЕ ,;‘
Если вы изменили установки параметров NVRAM на некоторой системе семейства SPARC, а система после этого перестала запускаться, то имеется возможность вернуть значения переменных в значения, установленные для них по умолчанию, непрерывно удерживая в нажатом состоянии клавиши Stop+N в процессе включения компьютера. Немедленно после включения питания системы SPARC нажимайте эти клавиши и удерживайте их нажатыми в течение нескольких секунд или до тех пор, пока не увидите заголовок, если его отображение возможно. Это хороший способ установить переменные NVRAM в некоторое известное состояние.
Программа nvedit
На вычислительных системах, оснащенных PROM версии 1 .х или 2.x, команда nvalias может быть недоступна. На таких системах при создания пользовательских псевдонимов устройств вам придется использовать команду nvedit. Программа nvedit представляет собой построчный текстовый редактор, который непосредственно редактирует содержимое NVRAMRC, имеет набор команд редактирования и работает в некотором временном буфере. Ниже приведен пример сеанса работы с программой nvedit:
ok setenv use-nvramrc? true
Система отвечает следующим образом:
use-nvramrc? = true
ok nvedit
0: devalias pgx24 /pci@If,0/pci@1,l/SUNW,m64B
devalias diskO /pci@If,0/pci91,l/ide@3/disk80,0
<Control-C>
ok nvstore
ok reset
Resetting
ok boot diskO
В приведенном примере использовалась программа nvedit для создания постоянного псевдонима устройства с именем diskO. Для выхода из текстового редактора использовалась комбинация Ctrl+C. Команда nvstore позволила сделать данное изменение постоянно хранящимся в NVRAMRC. Была выдана команда reset для переустановки системы, которая затем была загружена при помощи команды boot с устройства diskO.
В таблице 2.10 приведены некоторые из основных команд, которые вы сможете использовать при работе с построчным редактором nvedit.
Таблица 2.10 Команды редактора nvedit
КомандаКомандаСмысловое содержаниеСмысловое содержание
Команда
Команда
Смысловое содержание
Смысловое содержание
ctrl+c ctrl+u delete return ctrl+b ctrl+f ctrl+p ctrl+n
Обеспечивает выход из редактора.
Удаляет текущую строку.
Удаляет предыдущие символы.
Закрывает текущую и открывает новую строку.
Возвращает курсор на один символ.
Перемещает курсор на один символ вперед.
Возвращает курсор на одну строку.
Перемещает курсор на один строку вперед.
Защита среды OpenBoot
Любой пользователь, который имеет доступ к клавиатуре компьютера, может получать доступ в среду OpenBoot и изменить ее параметры, пока вы не установите переменные защиты информации в среде OpenBoot. Эти переменные перечислены в таблице 2.11.
Таблица 2.11 Переменные защиты информации в среде OpenBoot
Переменная
Описание
security-mode
Ограничивает набор операций, которые пользователи могут выполнять из приглашения OpenBoot.
security-password
Это пароль защиты встроенного программного обеспечения, и он никогда не отображается на экране. Не устанавливайте значение данной переменной непосредственно. Эта переменная устанавливается с помощью команды password.
security-#badlogins
Количество неудачных попыток ввода пароля.
ПРЕДУПРЕЖДЕНИЕ
Важно помнить свой пароль и установить его до установки режима защиты информации. Если вы забудете этот пароль, то не сможете использовать свою систему; вам придется обратиться в службу технической поддержки вашего поставщика, чтобы опять сделать возможной загрузку машины.
Для установки пароля защиты информации введите следующую командную строку в приглашении ок:
ok password
ok New password (only first 8 chars are used)i <enter password>
ok Retype new password: <enter password>
Ранее уже демонстрировалось, как изменить параметр security-password из командной строки среды OpenBoot. После задания некоторого пароля вы можете установить значения переменных защиты информации, которые наиболее соответствуют условиям вашей среды.
Параметр security-mode ограничивает использование команд среды OpenBoot. Когда вы присвоите этому параметру одно из трех значений, приведенных в таблице 2.12, дос туп к командам будет защищен паролем. Синтаксис для установки параметра security-mode выглядит следующим образом:
setenv security-mode <value>
В качестве значения <value> вы можете ввести одно из трех значений, приведенных в таблице 2.12.
Таблица 2.12 Возможности защиты информации в среде OpenBoot
Значение
Описание
full
Все команды OpenBoot, за исключением команды до, требуют ввода пароля. Этот режим защиты информации является режимом максимальных ограничений.
command
Все команды OpenBoot, за исключением команд boot и до, требуют ввода пароля.
none
Ввод пароля не требуется (это значение по умолчанию).
В следующем примере среда OpenBoot настраивается таким образом, чтобы все команды, за исключением boot и go, требовали ввода пароля:
setenv security-mode command
Когда параметру security-mode присвоено значение command, пароль не требуется, если вы вводите команду boot без аргумента или набираете команду go. Любая другая команда потребует ввода пароля, включая использование команды boot с аргументом.
Несколько следующих примеров показывают, когда может потребоваться пароль, если параметру security-mode присвоено значение command:
ok bootПарольне требуется.
ок доПарольне требуется.
ok bootvmunixПарольтребуется.
Система отображает приглашение ввести пароль следующим образом:
PasswordПри вводепароля оннеотображаетсянаэкране,
ok reset-allПароль требуется.
Система отображает приглашение ввести пароль следующим образом:
PasswordНабирайтепароль.
NoteПри вводепароля оннеотображаетсянаэкране.
Если ввести неправильный пароль, то последует задержка, примерно равная Ю секундам, прежде, чем появится новое приглашение. Количество допускаемых попыток ввода пароля хранится в переменной security-#badlogins. Синтаксис в данном случае выглядит следующим образом:
setenv security-#badlogins <variable>
Например, вы можете установить количество попыток, равное четырем, введя следующую команду:
setenv security-#badlogins 4
Диагностика среды OpenBoot
В среде OpenBoot могут быть запущены различные процедуры диагностики аппаратных средств системы. Эти процедуры могут использоваться для анализа и разрешения проблем, связанных с аппаратным обеспечением и сетью. Команды диагностики приведены в таблице 2.13.
Таблица 2.13 Команды диагностики среды OpenBoot
Команда
Описание
probe-scsi
Идентифицирует устройства, присоединенные к шине SCSI.
probe-ide
Идентифицирует устройства, присоединенные к шине PCI.
test device-specifier
Выполняет тестирование заданного устройства методом самодиагностики. Например:
команда test floppy проверяет дисковод гибких дисков (если он установлен в системе).
команда test net проверяет сетевое соединение.
test-all [device-specifier]
Тестирует все устройства, которые находятся ниже заданного узла на дереве устройств, с помощью встроенного метода самодиагностики. Если аргумент device-specifier отсутствует, выполняется проверка всех устройств, начиная с корневого узла.
watch-clock
Проверяет функцию системных часов.
watch-net
Контролирует сетевое соединение.
В приведенных ниже примерах использованы некоторые из диагностических возможностей OpenBoot. В первом примере используется команда probe-scsi для идентификации всех устройств с интерфейсом SCSI, подключенных к конкретной шине SCSI. Эта команда является удобной для определения целевых идентификаторов SCSI, используемых в данный момент времени, или для проверки того, что все устройства подключены и идентифицированы системой.
ok probe-scsi
Система отвечает следующим образом:
Target 1
Unit 0 DiskSEAGATE ST1120N 833400093849
Copyright 1992 Seagate
All rights reserved 0000
Target 3
Unit 0 Disk MAXTOR LXT-213S SUN2074.20
СОВЕТ
Используйте команду probe-scsi для определения свободного целевого идентификатора открытого интерфейса SCSI перед подключением какого-нибудь ленточного накопителя, привода CD-ROM, дискового накопителя или любого другого периферийного устройства с интерфейсом SCSI. Будут обнаружены только включенные устройства, поэтому убедитесь, что каждое устройство включено. Используйте эту команду после установки какого-нибудь устройства с интерфейсом SCSI, чтобы убедиться, что это устройство подсоединено правильно и система видит его. Кроме того, примените эту команду, если вы подозреваете неисправность кабеля или соединения. Если в вашей системе имеется несколько шин SCSI, используйте команду probe-scsi-all.
В этом примере используется команда probe-ide для идентификации всех устройств с интерфейсом IDE, присоединенных к шине PCI:
ok probe-ide
Device 0( Primary Master )
ATA Model: ST34321A
Device 1( Primary Slave )
Net Present
Device 2( Secondary Master )
Removable ATAPI Model: CRD-8322B
Device 3( Secondary Slave )
Not Present
В следующем примере проверяется видеосистема компьютера, и выполняются разные другие тесты:
ok test all
Для тестирования дисковода гибких дисков с целью определения правильности его функционирования поместите отформатированный гибкий диск высокой плотности в данный дисковод и введите такую команду:
ok test floppy
Система должна ответить следующим образом:
Testing floppy disk system. A formatted disk should be in the drive.
Test succeeded.
Type eject-floppy to remove the disk.
Для извлечения гибкого диска введите команду eject-floppy.
В таблице 2.14 описаны другие команды среды OpenBoot, которые могут быть использованы для сбора информации о данной системе.
КомандаОписаниеbannerОтображает заголовок, выводимый при включении питания.show-sbusОтображает список установленных и протестированных устройств, подключенных к шине SBus.enet-addrОтображает текущий Ethernet-адрес..idpromОтображает содержимое ID PROM в отформатированном виде..trapsОтображает список типов внутренних прерываний вычислительной системы SPARC..versionОтображает версию и дату создания PROM..speedОтображает частоту центрального процессора и шины.show-devsОтображает список всех установленных и протестированных устройств.КомандаОписаниеbannerОтображает заголовок, выводимый при включении питания.show-sbusОтображает список установленных и протестированных устройств, подключенных к шине SBus.enet-addrОтображает текущий Ethernet-адрес..idpromОтображает содержимое ID PROM в отформатированном виде..trapsОтображает список типов внутренних прерываний вычислительной системы SPARC..versionОтображает версию и дату создания PROM..speedОтображает частоту центрального процессора и шины.show-devsОтображает список всех установленных и протестированных устройств.
Команда
Описание
banner
Отображает заголовок, выводимый при включении питания.
show-sbus
Отображает список установленных и протестированных устройств, подключенных к шине SBus.
enet-addr
Отображает текущий Ethernet-адрес.
.idprom
Отображает содержимое ID PROM в отформатированном виде.
.traps
Отображает список типов внутренних прерываний вычислительной системы SPARC.
.version
Отображает версию и дату создания PROM.
.speed
Отображает частоту центрального процессора и шины.
show-devs
Отображает список всех установленных и протестированных устройств.
Команда
Описание
banner
Отображает заголовок, выводимый при включении питания.
show-sbus
Отображает список установленных и протестированных устройств, подключенных к шине SBus.
enet-addr
Отображает текущий Ethernet-адрес.
.idprom
Отображает содержимое ID PROM в отформатированном виде.
.traps
Отображает список типов внутренних прерываний вычислительной системы SPARC.
.version
Отображает версию и дату создания PROM.
.speed
Отображает частоту центрального процессора и шины.
show-devs
Отображает список всех установленных и протестированных устройств.
В приведенном ниже примере используется команда banner для отображения типа центрального процессора, объема оперативной памяти, адреса в сети Ethernet, HOSTID (идентификатора компьютера), версии и даты создания PROM:
ok banner
Система отвечает следующим образом:
Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 270MHz), No Keyboard
OpenBoot 3.15, 128 MB memory installed, Serial #10642306.
Ethernet address 8:0:20:a2:63:82, Host ID: 80a26382.
Чтобы операционная система Solaris 8 работала правильно, номер версии PROM должен быть 1.1 или выше. Используйте команду banner для определения того, какая версия PROM установлена в вашей системе.
В следующем примере используется команда .version для отображения версии встроенного программного обеспечения OpenBoot и даты создания PR.OM.
Введите такую командную строку:
ok .version
Система отвечает следующим образом:
Release 3.15 Version 2 created 1998/11/10 10:35
ОВР 3.15.2 1998/11/10 10:35.
POST 2.3.1 1998/08/07 16:33
В следующем примере показано, как использовать команду .enet-addr для отображения адреса в сети Ethernet.
Наберите следующую команду: •
ok .enet-addr
Система отвечает следующим образом:
8:0:2О:1а:с7:еЗ
Для вывода информации о центральном процессоре введите командную строку: ok .speed
Система отвечает следующим образом:
CPU
Speed :
270.00MHz
UPA
Speed :
090.00MHz
PCI
Bus A :
33MHz
PCI
Bus В :
33MHz
Управление вводом/выводом
В качестве основного средства общения между средой OpenBoot и пользователем используется консоль. В состав консоли входит некоторое устройство ввода, используемое для получения информации, поставляемой пользователем, и некоторое устройство вывода, используемое для передачи информации пользователю. Как правило, консоль является либо сочетанием текстового/графического устройства отображения и клавиатуры, либо ASCII- терминалом, подключенным к последовательному порту.
Переменные конфигурации, относящиеся к управлению консолью, перечислены в таблице 2.15.
ПеременнаяОписание
input-device
Устройство ввода для консоли (обычно это клавиатура (keyboard), ttya или ttyb).
output-device
Устройство вывода для консоли (обычно это экран (screen), ttya или ttyb).
screen-#columns
Количество столбцов на экране (по умолчанию 80 символов в строке).
screen-#rows
Количество строк на экране (по умолчанию 34 строки).
Вы можете использовать эти переменные для присвоения параметрам консоли значений по умолчанию, используемых при включении питания компьютера. Новые значения не будут использоваться до тех пор, пока питание не будет выключено и повторно включено либо пока не будет выполнен перезапуск вычислительной системы.
Если для параметра input-device вы выберете значение keyboard (клавиатура) и это устройство не включено, то ввод информации осуществляется через порт tty а как аварийное устройство. Если при включении питания вычислительной системы клавиатура не обнаруживается, система будет искать tty а - последовательный порт для системной консоли и будет использовать его для всех операций ввода/вывода.
Коммуникационные параметры последовательного порта могут быть определены путем установки переменных конфигурации для указанного порта. Эти переменные приведены в таблице 2.16.
Тяблдц3^ 6 0эд$ре><н1^конфи^ порта
Переменная
Текущее значение
Значение по умолчанию
ttyb-rts-dtr-off
false
false
ttyb-ignore-cd
true
true
ttya-rts-dtr-off
false
false
ttya-ignore-cd
true
true
ttyb-mode
9600,8,n,1,-
9600,8,n,1,-
ttya-mode
9600,8, n,1,-
9600,8,n,1,-
Ниже приведены слева направо значения переменной конфигурации ttya-mode:
Скорость передачи в бодах: 110, 300, 1200, 4800, 9600, 19200 Биты данных: 5, 6, 7, 8
Четность: n (попе - нет), е (even - чет), о (odd - нечет), m (mark - маркер) , s (space - пробел)
Стоповые биты: 1, 1.5, 2
Подтверждение связи: - (попе - нет), h (hardware - аппаратное: RTS/CTS), s (software - программное: XON/XOFF)
Загрузка
Основной функциональной задачей встроенного программного обеспечения OpenBoot является запуск вычислительной системы. Запуск представляет собой процесс загрузки и исполнения какой-нибудь автономной программы. Примером такой автономной программы является операционная система или диагностический монитор. В рамках настоящего обсуждения под автономной программой понимается ядро операционной системы. После того, как ядро загружено, оно запускает операционную систему UNIX, монтирует необходимые файловые системы и стартует процесс /sbin/init для перевода системы в состояние инициализации, принятое по умолчанию и определенное в файле /etc/inittab. Этот процесс подробно рассматривался в главе 1.
Запуск системы может быть инициирован либо автоматически, либо путем ввода некоторой команды через интерфейс пользователя. Обычно запуск системы называется про-
цедурой начальной загрузки. На большинстве вычислительных систем SPARC-архитектуры процедура начальной загрузки состоит из следующих основных фаз:
Включается электропитание аппаратных средств вычислительной системы.
Встроенное программное обеспечение системы (PROM) исполняет POST (процедуру самотестирования при включении питания). Форма и объем этих тестовых проверок зависят от версии встроенного программного обеспечения, которое используется в вашей системе.
После того, как все тесты будут успешно завершены, встроенное программное обеспечение пытается выполнить автоматическую загрузку, если была установлена соответствующая переменная конфигурации (auto-boot?) среды OpenBoot.
Процесс запуска OpenBoot показан ниже:
Sun Ultra 5/10 UPA/PCI (UltraSPARC-IIi 270MHz), No Keyboard OpenBoot 3.15, 128 MB memory installed, Serial #10642306. Ethernet address 8:0:20:a2:63:82, Host ID: 80a26382. Rebooting with command: boot Boot device: disk:a File and args: SunOS Release 5.8 Version Generic_108621-04 64-bit Copyright 1983-2000 Sun Microsystems, Inc. All rights reserved, configuring IPv4 interfaces: hmeO. configuring IPv6 interfaces: hmeO. Hostname: ultra metainit: unknown: there are no existing databases The system is coming up. Please wait, checking ufs filesystems /dev/rdsk/c0t0d0s5: is clean. /dev/rdsk/c0t0d0s7: is clean. /dev/rdsk/c0t0d0s6: is clean. Starting IPv6 neighbor discovery.Setting default IPv6 interface\ for multicast: add net ff00::/8: gateway fe80::a0 0:20ff:fea2:6382 starting rpc services: rpcbind done. Setting default IPv4 interface for multicast: add net 224.0/4: gateway unknown syslog service starting, syslogd: line 24: WARNING:loghost could not be resolved Print services started, volume management starting.
Mar 23 13:19:33 unknown snmpdx: The system is ready, ultra console login:
Процесс запуска системы управляется рядом переменных конфигурации. Те переменные конфигурации, которые оказывают влияние на процесс запуска системы, описаны в таблице 2.17.
Таблица 2.17 Переменные конфигурации процесса загрузки
Переменная
Описание
auto-boot?
Эта переменная определяет, будет ли система автоматически запускаться после выполнения ее переустановки или включения питания компьютера. По умолчанию эта переменная принимает логическое значение true. Когда происходит включение питания, система автоматически запускается на установленный по умолчанию уровень.
boot-command
Эта переменная определяет команду, которая будет исполняться, если переменная auto-boot? принимает логическое значение true. Значением по умолчанию для переменной boot-command является команда boot без каких-либо аргументов командной строки.
diag-switch?
Если эта переменная имеет логическое значение true, выполняется запуск системы в режиме диагностики. По умолчанию эта переменная принимает логическое значение false.
boot-device
Эта переменная содержит имя устройства запуска, которое используется по умолчанию, если среда OpenBoot функционирует не в режиме диагностики.
boot-file
Эта переменная содержит аргументы запуска по умолчанию, которые используются, если среда OpenBoot функционирует не в режиме диагностики. По умолчанию эта переменная не содержит аргументов. (Подробности применения этой переменной представлены в таблице 2.18.)
diag-device
Эта переменная содержит имя устройства запуска, которое используется по умолчанию для режима диагностики. По умолчанию эта переменная принимает значение net. (Подробности применения этой переменной представлены в таблице 2.18.)
diag-file
Эта переменная содержит аргументы запуска, которые используются по умолчанию для режима диагностики. По умолчанию эта переменная не содержит аргументов. (Подробности применения этой переменной представлены в таблице 2.18.)
Обычно переменная auto-boot? будет иметь логическое значение true, переменная boot-command будет принимать значение boot, и среда OpenBoot не будет находиться в режиме диагностики. Следовательно, после первичного включения питания вычислительной системы или после выполнения ее переустановки система будет автоматически загружаться с устройства, определенного значением переменной boot-device, и исполнять программу с аргументами, определенными значением переменной boot-fde. Команда boot и ее опции описываются в таблице 2.18.
Команда boot имеет следующий синтаксис:
boot [ОВР name] [filename] [options] [flags]
ОпцияОпцияАргументы [ОВР name], [filename], [options] и [flags] являются необязательными.
Опция
Опция
Описание
ОВР nameЭтот аргумент определяет обозначения OpenBoot PROM. Например, на
настольных SPARC-системах выражение /sbus/esp@0,800000/sd@3,0:a указывает на SCSI-диск (sd), который имеет целевой адрес 3, номер логического устройства 0 на шине SCSI с ведущим адаптером esp, включенным в разъем 0. Аналогичное имя в OpenBoot PROM может выступать некоторым псевдонимом устройства: diskO (дисковод гибких дисков
Продолжение таблицы 2.18
Опция
Описание
на 3 1/2 дюйма), net (адаптер сети Ethernet) или tape (накопитель на магнитной ленте с интерфейсом SCSI). Если данная опция не определена и diagnostic-mode? возвращает логическое значение true, то процедура загрузки использует устройство, определённое переменой конфигурации diag-device.
filename
Определяет имя автономной программы, которая будет запущена (например, kernel/unix). По умолчанию будет запущена программа корневого раздела по имени /platform/platform-name/kernel/unix. Если опция filename определена, то она задается относительно корня выбранного устройства и раздела. В протианом случае программа boot использует значение переменной конфигурации boot-file или переменной diag-file, основываясь на параметре diag-switch?.
options
-а
Программа запуска интерпретирует этот флаг как "Спроси меня" и запрашивает имя программы, подлежащей загрузке.
-f
При запуске системы типа Autoclient эта опция заставляет программу boot обойти локальный кэш клиента и считывает все файлы через сеть с файл-сервера данного клиента. Эта опция игнорируется асеми вычислительными системами, не относящимися к типу Autoclient. Затем опция -f передается в запускаемую автономную программу.
-г
В процессе запуска эта опция, подробно описываем в главе 16, инициирует реконфигурацию триггероа устройства.
flags
Программа boot передает все флаги запуска в программу, имя которой определено значением filename. Эти флаги не интерпретируются программой boot. В следующем разделе приведена более подробная информация по опциям, доступным для использования с запускаемой по умолчанию автономной программой kernel/unix.
Если вы хотите запустить принятую по умолчанию программу, когда переменная autoboot? принимает логическое значение false, можно воспользоваться несколькими опциями, доступными для запуска системы из приглашения ок.
Когда вы набираете следующую команду:
boot
то компьютер будет запускаться с принятого по умолчанию устройства без использования каких-либо аргументов. Это устанавливается в переменной boot-device.
Введите следующую командную строку:
boot [ОВР паше]
Когда вы определили явным образом какое-нибудь имя (name) из OpenBoot PROM (или ОВР), например disk3, то компьютер будет запускаться с заданного устройства без использования каких-либо аргументов.
Ниже приведен пример такого варианта:
boot disk3
Компьютер будет загружаться с дискового накопителя, определенного псевдонимом устройства по имени disk3. Затем будет загружена принятая по умолчанию автономная программа kernel/unix.
Введите следующую команду:
boot [options]
Когда вы определили явным образом опции команды boot, машина будет использовать заданные аргументы для запуска с принятого по умолчанию устройства.
Вот пример такого варианта:
boot -а
После этого система запросит для загрузки имя автономной программы. Если вы зададите принятую по умолчанию программу kernel/unix, вам будет предложено ввести имя каталога, содержащего модули ядра операционной системы. (Подробная информация по модулям ядра приведена в следующем разделе.)
Введите следующую командную строку:
boot [ОВР name] [options]
Когда вы задали команду boot с явно определенными устройством запуска и аргументами, машина будет запускаться с заданного устройства и с использованием заданных аргументов.
Ниже приведен такой вариант:
boot disk3 -а
При выполнении этого примера будут возникать такие же приглашения, как и в предыдущем примере, за исключением того, что теперь вы определили другое устройство для запуска системы. Эта система стартует от загрузочного блока с дискового устройства, определенного псевдонимом по имени disk3.
В процессе запуска системы OpenBoot выполняет следующие задачи:
Встроенное программное обеспечение может перезапустить машину, если какая-нибудь клиентская программа была выполнена с момента последнего перезапуска. В качестве клиентской программы обычно выступает операционная система или загрузчик операционной системы, однако команда boot также может быть использована для загрузки и исполнения других типов программ, таких как диагностические. Например, если вы только что выдали команду test net, то, когда в следующий раз будет выдана команда boot, система будет перезапущена до старта.
Программа boot загружается в память, используя протокол, зависящий от типа выбранного устройства. Вы можете выполнить запуск системы с жесткого диска, магнитной ленты, гибкого диска или из сети. Процедура запуска с диска может считать некоторое фиксированное количество блоков от начала диска, тогда как процедура запуска с магнитной ленты - определенный файл.
Загруженная программа boot исполняется. В дальнейшем поведение программы boot может управляться строкой argument, если она была передана команде boot через командную строку.
Программа, которая загружается и исполняется в процессе запуска системы - это вторичная программа загрузки, назначение которой-загрузка заданной автономной программы. Программой загрузки второго уровня является либо ufsboot, когда запуск производится с какого-нибудь диска, либо inetboot, когда запуск производится через сеть.
Если запуск производится с диска, процесс начальной загрузки состоит из двух концептуально различных фаз: первичный запуск и вторичный запуск. OpenBoot PROM пред-
полагает, что программа для выполнения фазы первичного запуска (bootblk) находится в основном загрузочном блоке, который занимает на устройстве запуска сектора с I по 15. Загрузочный блок создается с использованием команды installboot. В процессе инсталляции программного обеспечения загрузочный блок обычно устанавливается, поэтому нет никакой необходимости выдавать эту команду, если только вы не восстанавливаете поврежденный загрузочный блок. Для инсталляции загрузочного блока на диске c0t3d0s0 введите следующую командную строку:
installboot /usr/platform/1uname -i' /lib/fs/ufs/bootblk /dev/rdsk/c0t3d0s0
Вы не можете видеть загрузочный блок. Он находится в защищенной области диска, не подлежащей просмотру. Программа, находящаяся в области загрузочного блока, будет загружать вторичную программу запуска, которая называется ufsboot.
В процессе исполнения команды boot, если было указано имя файла, то оно рассматривается как имя автономной программы запуска, которая подлежит загрузке. Если имя маршрута задано в относительной форме (не начинается со слэша), то программа ufsboot будет искать автономную программу запуска в платформо-зависимом маршруте поиска. Другими словами, относительный маршрут к автономной программе будет начинаться с префикса lplatforml<platforrn-narne>. При этом выражение <platform-name> будет специфичным для используемого вами аппаратного обеспечения.
С другой стороны, если маршрут к имени файла является абсолютным, то программа boot будет использовать именно заданный маршрут. Затем программа запуска загрузит автономную программу и передаст ей управление системой.
ПРИМЕЧАНИЕ - • • ’ - ’ .
Используйте команду uname -I для определения имени платформы вашей системы. Например, на системе SPARCstationlO маршрут будет иметь следующий вид: /platform/SUNW,SPARCstation-10. Для определения имени класса аппаратного обеспечения (hardware-class-name) вашей системы используйте команду uname -m; например, для SPARCstationlO имя класса аппаратного обеспечения будет иметь следующий вид: sun4m. Если вы заглянете в каталог /platform, то увидите, что / platform/SUNW,SPARCstation-10 является просто ссылкой на /platform/sun4m.
В приведенном ниже примере показано, как задать автономную программу запуска из приглашения ок:
ok boot disks kernel/unix -s
В этом примере OpenBoot PROM будет искать первичную программу запуска (bootblk) на устройстве с псевдонимом disks (/iommu/sbus/espdma@f,400000/esp@f,800000/sd@0,0). Затем первичная программа запуска загрузит программу ufsboot. Эта программа, в свою очередь, будет загружать автономную программу по имени /platform/SUNW,SPARCstation- 10/kernel/unix, используя флаг -s. Обычно вторичная программа запуска, такая как kernel/ unix, принимает аргументы в форме filename -flags, где filename - это маршрут к автономной программе, a -flags - это список опций, который будет передан данной автономной программе. В приведенном примере будет загружаться ядро операционной системы, которое описывается в следующее разделе. Флаг -s инструктирует ядро загружать систему в однопользовательском режиме.
Ядро операционной системы
Программа ufsboot, которая была описана в предыдущем разделе, загружает ядро операционной системы. Специфичное для данной компьютерной платформы ядро опера-
ционной системы, используемое программой ufsboot, называется /platform/' uname -m ' / kernel/unix.
Ядро операционной системы инициализирует само себя и начинает загружать модули, используя программу ufsboot для чтения файлов. После того, как ядро операционной системы загрузило достаточное количество модулей для монтирования корневой файловой системы, оно лишает управления программу ufsboot и продолжает работу, используя собственные ресурсы. Ядро создает пользовательский процесс и запускает процесс /sbin/ init, который, в свою очередь, запускает другие процессы путем считывания файла /etc/ inittab. (Процесс /sbin/init описывается в главе 1.)
Ядро операционной системы Solaris 8 является динамически конфигурируемым. Оно состоит из небольшого статического ядра и множества динамически загружаемых модулей. Модуль ядра - это аппаратный или программный компонент, который используется для выполнения какой-нибудь конкретной задачи в данной системе. Типичным примером загружаемого модуля ядра служит драйвер устройства, который загружается, когда данное устройство становится доступным. Драйверы, файловые системы, модули STREAMS и другие модули загружаются автоматически по мере того, как в них возникает необходимость, либо в процессе запуска системы, либо во время выполнения. После того, как модули перестают использоваться, они могут быть выгружены из памяти. Модули сохраняются в памяти до тех пор, пока эта память не потребуется для других целей. Информацию о модулях, которые в настоящее время загружены в память системы, можно получить с помощью команды modinfo.
Когда ядро операционной системы загружается, оно считывает файл /etc/system, в котором сохраняется информация по системной конфигурации. Этот файл модифицирует параметры ядра и обращение с загружаемыми модулями. В частности, этот файл управляет следующими аспектами:
ф Маршрутом поиска модулей, подлежащих загрузке по умолчанию в процессе загрузки системы, а также модулей, которые не будут загружены в процессе загрузки системы
ф Модулями, которые будут принудительно загружены во время загрузки системы, а не при первом обращении к ним
ф Типом и именем корневого устройства
ф Новыми значениями, предназначенными по умолчанию для переопределения параметров ядра операционной системы
Ниже приведен пример взятого по умолчанию файла /etc/system:
*ident "0(#)system 1.1897/06/27 SMI" /* SVR4 1.5 */
*
* SYSTEM SPECIFICATION FILE *
* moddir:
*
♦Set the search path for modules. This has a format similar to the
♦csh path variable. If the module isn't found in the first directory ♦it tries the second and so on. The default is /kernel /usr/kernel
♦Example:
♦moddir: /kernel /usr/kernel /other/modules * root device and root filesystem configuration: *
♦The following may be used to override the defaults provided by ♦the boot program: *
♦rootfs:Set the filesystem type of the root.
*
♦rootdev:Set the root device. This should be a fully
*expanded physical pathname. The default is the
*physical pathname of the device where the boot
*program resides. The physical pathname is
*highly platform and configuration dependent.
* ♦Example: *rootfs:ufs
*rootdev:/sbus01,f8OOOOOO/esp00,8OOOOO/sd03,0:a
*
♦(Swap device configuration should be specified in /etc/vfstab.) * exclude:
♦Modules appearing in the moddir path which are NOT to be loaded, ♦even if referenced. Note that "exclude' accepts either a module name, ♦or a filename which includes the directory.
♦Examples: *exclude: win
*exclude: sys/shmsys
* forceload:
♦Cause these modules to be loaded at boot time, (just before mounting ♦the root filesystem) rather than at first reference. Note that ♦forceload expects a filename which includes the directory. Also ♦note that loading a module does not necessarily imply that it will ♦be installed.
♦Example: *forceload: drv/foo
* set:
♦Set an integer variable in the kernel or a module to a new value. ♦This facility should be used with caution. See system(4).
♦Examples: *
♦To set variables in 'unix1:
*set nautopush*32
* set maxusers=40
*
*To set a variable named ’debug* in the module named ’test module’
*set test module:debug ■ 0x13
Файл /etc/system содержит команды в следующей форме:
set parameter=value
ПРИМЕЧАНИЕ ';:s. '<■.
Команды могут быть длиной не более 80 символов, а строки комментариев должны начинаться с символа "звездочка" (*) и заканчиваться символом newline (новой строки).
Например, установка параметра ядра операционной системы MAXUSERS выполняется в файле /etc/system с помощью следующей строки: set maxusers = 40
Команды, которые воздействуют на загружаемые модули, имеют следующую форму:
set module:variable=value
Если системному администратору необходимо изменить какой-нибудь настраиваемый параметр в файле /etc/system, то для проверки правильности внесенных изменений может использоваться команда sysdef. Команда sysdef выводит на экран список все аппаратных и системных устройств, загружаемых модулей, а также значения выбранных настраиваемых параметров ядра операционной системы. Ниже приведен вывод, созданный командой sysdef:
* Hostid.
80а26382 *
sun4m Configuration * *
* Devices * packages (driver not attached) terminal-emulator (driver not attached) deblocker (driver not attached) obp-tftp (driver not attached) disk-label (driver not attached) SUNW,builtin-drivers (driver not attached) sun-keyboard (driver not attached) ufs-file-system (driver not attached) chosen (driver not attached) openprom (driver not attached) client-services (driver not attached) options, instance #0 aliases (driver not attached)
memory (driver not attached) virtual-memory (driver not attached) pci, instance #0 pci, instance #0 ebus, instance #0 auxio (driver not attached) power, instance #0 SUNW,pll (driver not attached) se, instance #0 su, instance #0 su, instance #1 ecpp (driver not attached) fdthree, instance #0 eeprom (driver not attached) flashprom (driver not attached) SUNW,CS4231 (driver not attached) network, instance #0 SUNW,m64B, instance #0 ide, instance #0 disk (driver not attached) cdrom (driver not attached) dad, instance #0 sd, instance #0 pci, instance #1 pci (driver not attached) pcil08e,1000 (driver not attached) SUNW,qfe (driver not attached) pcil08e,1000 (driver not attached) SUNW,qfe (driver not attached) pcil08e,1000 (driver not attached) SUNW,qfe (driver not attached) pcil08e,1000 (driver not attached) SUNW,qfe (driver not attached) SUNW,UltraSPARC-IIi (driver not attached) pseudo, instance #0 clone, instance #0 ip, instance #0 ip6, instance #0 top, instance #0 tcp6, instance #0 udp, instance #0 udp6, instance #0
<Truncated output> *
* Loadable Objects *
Loadable Object Path = /platform/SUNW,Ultra-5_10/kernel *
misc/platmod
misc/sparcv9/platmod *
Loadable Object Path = /platform/sun4u/kernel *
dacf/sparcv9/consconfig_dacf
drv/db21554
drv/dma
drv/ebus
drv/fd
drv/ledma
drv/pci_pci
drv/pcipsy
drv/power
<List of devices truncated> *
System Configuration *
swap files swapfile dev swaplo blocks free Zdev/dsk/cOtOdOsl 136,1 16 1048928 976384 *
* Tunable Parameters *
2482176 maximum memory allowed in buffer cache (bufhwm)
1898
maximum number of processes
(v.v_proc)
99
maximum global priority in
sys class (MAXCLSYSPRI)
1893
maximum processes per user
id (v.v_maxup)
30
auto update time limit in seconds (NAUTOUP)
25
page stealing low water mark (GPGSLO)
5
fsflush run rate (FSFLUSHR)
25
minimum resident memory for
avoiding deadlock (MINARMEM)
25
minimum swapable memory for
avoiding deadlock (MINASMEM)
Utsname Tunables *
5.8 release (REL) unknownnode name (NODE)
SunOSsystem name (SYS)
Generic_108528-07 version (VER) *
* Process Resource Limit Tunables (Current:Maximum) *
Infinity:Infinity cpu time
Infinity:Infinity file size
Infinity:Infinity heap size
0x0000000000800000:Infinity stack size
Infinity:Infinity core file size
0x0000000000000100:0x0000000000000400 file descriptors Infinity:Infinity mapped memory
* Streams Tunables
9 maximum number of pushes allowed (NSTRPUSH) 65536 maximum stream message size (STRMSGSZ) 1024 max size of ctl part of message (STRCTLSZ) *
* IPC Messages module is not loaded
* IPC Semaphores
10semaphore identifiers (SEMMNI)
60semaphores in system (SEMMNS)
30undo structures in system (SEMMNU)
25max semaphores per id (SEMMSL)
10 max operations per semop call (SEMOPM)
10 max undo entries per process (SEMUME) 32767 semaphore maximum value (SEMVMX) 16384 adjust on exit max value (SEMAEM)
* IPC Shared Memory *
1048576max shared memory segment size (SHMMAX)
min shared memory segment size (SHMMIN)
100 shared memory identifiers (SHMMNI)
max attached shm segments per process (SHMSEG)
* Time Sharing Scheduler Tunables
60 maximum time sharing user priority (TSMAXUPRI) SYS system class name (SYS_NAME)
После запуска системы для подтверждения внесенных изменений также может быть использована команда adb (absolute debugger - абсолютный отладчик), однако пользоваться ею следует крайне осторожно.
ПРЕДУПРЕЖДЕНИЕ{
Команда adb может изменять параметры ядра на работающей системе и при неправильном использовании может привести к аварийной ситуации. Выполняйте следующие процедуры очень осторожно. Некорректные элементы файла /etc/system или неправильное использование команды adb может привести к повреждению системы, аварии или невозможности перезапуска.
Если интересующий вас параметр ядра не отображается при использовании команды sysdef (например, параметр MAXUSERS), примените команду adb. Если вы вошли в систему как суперпользователь, в приглашении UNIX введите следующую командную строку:
adb -k /dev/ksyms /dev/mem
Файл /dev/ksyms - это специальный драйвер, который предоставляет некоторый образ таблицы символов (идентификаторов) ядра. Эту возможность можно использовать для анализа информации в памяти. Команда adb возвратит объем физической памяти (в шестнадцатеричном формате, в виде количества страниц размером по 4 Кбайт) следующим образом:
physmem 3dec
После этого вы не получите приглашения, однако отладчик adb запущен и готов к приему команд. Для контроля настраиваемых параметров при работе в adb используйте следующий синтаксис:
<parameter>/DОтображает значение целочисленного параметра в десятичном виде
<parameter>/XОтображает значение целочисленного параметра в шестнадцатерич
ном виде
При этом <parameter> заменяется анализируемым идентификатором ядра. Так команда:
maxusers/D
будет отображать значение параметра MAXUSERS в десятичном виде, как показано ниже: maxusers: 40
Наберите команду shminfo shmmax/D для отображения размера максимального сегмента разделяемой памяти. Система отвечает следующим образом:
shminfo_shmmax: 1048576
Выйдите из среды отладчика adb, для чего введите команду $q и нажмите клавишу Enter.
Программа MDB (Modular Debugger - модульный отладчик) представляет собой отладочный инструмент нового поколения для операционной среды Solaris, который обладает обратной совместимостью с отладчиком adb. Более подробная информация по модульному отладчику приведена в руководстве Solaris Modular Debugger Guide.
Резюме
Настоящая глава содержит полное описание среды OpenBoot, в том числе PROM, NVRAM и ядра операционной системы.
В это главе было рассказано, как получить доступ к среде OpenBoot, а также описаны различные команды, доступные для тестирования аппаратного обеспечения вычислительной системы и получения информации о нем.
Была описана архитектура среды OpenBoot и объяснено, как OpenBoot реализует управление различными аппаратными устройствами. Используя программируемый интерфейс пользователя, доступный в среде OpenBoot, системный администратор может установить несколько параметров для управления аппаратным обеспечением системы и периферийными устройствами.
В настоящей главе также объяснялись принципы построения имен устройств. На всем протяжении этой книги будут использоваться различные имена устройств, применяемые в операционной системе Solaris. Очень важно, чтобы вы понимали каждое из этих имен. Эта
Примените ваши знания
тема будет еще раз затронута в главе 16, где будут более подробно рассматриваться устройства и их драйверы. Наряду с именами устройств, было объяснено, как следует устанавливать временные и постоянные псевдонимы устройств.
Наконец, было описано, как защитить среду OpenBoot от несанкционированного доступа, и более подробно изложены темы, которые уже обсуждались в предыдущей главе - загрузка системы и ядра операционной системы.
Эта глава и глава 1 охватывают вопросы запуска системы в предположении, что операционная система была ранее инсталлирована и сконфигурирована. В следующей главе будут рассмотрены вопросы инсталляции операционной системы Solaris из OpenBoot PROM.
Ключевые термины
OpenBoot
Загрузочный блок (bootblock)
Программа вторичной загрузки ufsboot
ОВР (OpenBoot PROM)
NVRAM
PROM
POST
Дерево устройств (Device tree)
Полное имя устройства (Full device name)
Псевдоним устройства (Device Alias)
Загрузка (Boot)
Ядро операционной системы (Kernel)
Примените ваши знания
УПРАЖНЕНИЕЛ'у'-
Использование команд среды OpenBoot
В предложенных упражнениях вы будете останавливать вычислительную систему и использовать команды среды OpenBoot для установки параметров и сбора основной информации о вашей системе.
Оцениваемое время: 15 минут
Выдайте надлежащую команду OpenBoot для отображения заголовка, как показано:
banner
Установите параметры в их предусмотренные по умолчанию значения, как показано:
reset-all
Выведите на экран список разделов справочной системы OpenBoot:
help
Воспользуйтесь командой banner для получения следующей информации о вашей системе:
ROM revision: (версия ПЗУ)
MB of installed memory: (объем установленной памяти в Мбайт) System type: (тип вычислительной системы) System serial number: (серийный номер вычислительной системы) Ethernet address: (Ethernet-адрес) HOST ID: (идентификатор машины)
Используя команду printenv, выведите следующий список параметров ОВР: output-device input-device auto-boot?
boot-device
Установите параметр auto-boot? в значение false для предотвращения автоматической загрузки системы после сброса (перезапуска).
В приглашении ок среды OpenBoot наберите следующую командную строку: setenv auto-boot? false
Убедитесь, что нужное значение было установлено: printenv auto-boot?
А теперь в приглашении UNIX опять верните параметр auto-boot? в значение true, для чего введите следующую командную строку: eeprom auto-boot?=true
Переведите систему обратно на уровень инициализации (запуска) 0 и убедитесь, что параметр auto-boot? установлен в значение true.
Используйте следующие команды для вывода на экран списка дисковых накопителен, присоединенных к вашей системе:.
probe-scsi
probe-scsi-all
probe-ide
Объясните основные различия между этими командами.
: предупреждение ;:
Если любая из этих команд возвращает предупреждение, что система может зависнуть, если вы продолжите работу, введите л для исключения запуска соответствующей команды. Выполните команду reset-all перед тем, как повторно выполнять команду probe, а затем ответьте у на указанное предупреждение.
Выведите целевой номер и тип устройства для каждого из устройств с интерфейсом SCSI, присоединенных к вашей системе, используя команды среды OpenBoot, перечисленные в пункте 7.
Из приглашения OpenBoot определите ваше загрузочное устройство, принятое по умолчанию, для чего введите следующую командную строку:
printenv boot-device
Примените ваши знания
Воспользуйтесь командой OpenBoot под названием show-disks для получения листинга дисковых накопителей вашей системы, для чего введите следующую команду:
show-disks
Отобразите полный маршрут устройства по его псевдониму disk4, для чего введите следующую командную строку:
devalias disk4
Создайте постоянный псевдоним SCSI-устройства с именем disk4, который указывает на целевой адрес 4, для чего введите:
nvalias disk4 /iommu/sbus/espdmaSf,400000/esp@f,800000/sd@4,О
Перезапустите систему и убедитесь, что псевдоним устройства по-прежнему установлен:
reset
devalias disk4
Загрузите систему, зарегистрируйтесь как суперпользователь и воспользуйтесь командой еергош для вывода списка всех параметров NVRAM.
Воспользуйтесь командой еергош для вывода только установки параметра bootdevice, для чего введите следующую командную строку:
eeprom boot-device
Из приглашения OpenBoot переустановите параметр boot-device вето значение по умолчанию:
set-default boot-device
Из приглашения OpenBoot выполните удаление псевдонима disk4, для чего введите следующую команду:
nvunalias disk4
Перезапустите систему и убедитесь, что disk4 больше не существует, для чего введите такие команды:
reset
printenv
Опять установите для параметров среды OpenBoot предусмотренные по умолчанию значения, как показано ниже:
set-defaults
Обзорные вопросы
Пользовательский интерфейс аппаратного уровня, который вы видите на экране перед тем, как стартует операционная система, называется:
OpenBoot
EEPROM
Встроенное программное обеспечение (firmware)
Boot PROM
В каком из перечисленных ниже компонентов хранится информация по системной идентификации, такая как HOSTID (идентификатор машины)?
Встроенное программное обеспечение (firmware)
Open Boot
NVRAM
Ядро операционной системы
Какая задача (задачи) выполняется (выполняются) средствами среды OpenBoot? Выберите два ответа.
Исполнение POST
Загрузка bootblk
Исполнение ufsboot
Загрузка ядра операционной системы
Какая из перечисленных ниже задач не является задачей встроенного программного обеспечения среды OpenBoot?
Тестирование и инициализация аппаратных средств системы
Загрузка ядра
Запуск операционной системы либо с устройства массовой памяти, либо из сети
Обеспечение модификации и управления конфигурацией запуска системы параметрами NVRAM
Что из перечисленного ниже присоединяется к главному компьютеру через иерархию взаимосвязанных шин на дереве устройств?
Платы SBUS
Периферийные устройства с интерфейсом SCSI
Драйверы plug-in устройств
D. Узлы
Какой тип устройства обозначает следующая запись: /pci@lf,0/pci@l,l/ide@3/disk?
Полное имя маршрута устройства
Физическое устройство
Логическое устройство
Экземпляр (объекта некоторого типа)
Какая из перечисленных ниже команд используется для получения информации об устройствах и отображения имен маршрутов устройств в OpenBoot?
show-devs
dmesg
pwd
sysdef
Какая из перечисленных ниже команд используется для создания временного псевдонима устройства с именем disk3?
A.setenv disk.3 /iommu/sbus/espdma@f,400000/esp@f,800000/sd@3,0
Примените ваши знания
set disk3 /iommu/sbus/espdma@f,400000/esp@f,800000/sd@3,0
nvalias disk3 /iommu/sbus/espdma@f,400000/esp@f,800000/sd@3,0
devalias disk3 /iommu/sbus/espdma@f,400000/esp@f,800000/sd@3,0
Если вы хотите создать постоянные псевдонимы в NVRAM, возникающие после перезагрузки системы, то какую из перечисленных ниже команд необходимо использовать для этого?
A. devalias
nvalias
setenv
eeprom
Какая из переменных NVRAM указывает устройство, с которого будет запускаться система?
boot-device
boot-file
output-device
input-device
Какая из перечисленных ниже команд не может быть использована для модификации переменных NVRAM?
A. set-defaults
setenv
nvalias
set-default
Если система не будет запускаться из-за ошибки в какой-нибудь из переменных, хранящихся в NVRAM, то какая из перечисленных ниже команд, исполняемая из приглашения OpenBoot, обеспечит переустановку значений указанных переменных в их значения по умолчанию?
set-default <variable>
Stop+N
set-defaults
D. Ctrl+N
Какая из перечисленных ниже команд может быть использована для ограничения набора операций, которые пользователи смогут выполнять из приглашения OpenBoot?
security-password
security-mode
set-secure
set-security
Какая из перечисленных ниже команд может быть использована в среде OpenBoot для тестирования всех устройств, имеющих встроенные методы самодиагностики и находящихся на дереве устройств ниже заданного узла?
diag
probe-scsi
test-all
D. test
Какая опция должна использоваться с командой boot среды OpenBoot, чтобы вы получили приглашение ввести имя загружаемой автономной программы?
A. -v
-f
-s
D. -а
Что находится на устройстве запуска в блоках с 1 по 15?
A. bootblk
superblock (суперблок)
ядро
ufsboot
Что из перечисленного ниже загружает ядро операционной системы?
A. ufsboot
openBoot
bootblk
D. init
Какая из перечисленных ниже команд выводит список всех аппаратных и системных устройств, загружаемых модулей, а также значения выбранных настраиваемых параметров ядра?
more /var/adm/messages
adb
dmesg
sysdef
В каком каталоге сохраняются имена физических устройств?
A. /var
/dev
/kernel
D. /devices
Е. /etc
Какую из перечисленных ниже клавиатурных комбинаций можно ввести для прерывания системы, которая не отвечает?
Ctrl+B .
Ctrl+C
Stop+A
Ctrl+Alt+Delete
Примените ваши знания
Ctrl'-Break
Какую функцию выполняет программа ufsboot?
Загружает загрузочный блок с устройства запуска, принятого по умолчанию
Загружает ядро
Находит и исполняет вторичную программу запуска
Запускает POST (процедуру самотестирования при включении питания) для проверки аппаратных средств и памяти системы
Какую функцию выполняет параметр auto-boot?, установленный в OpenBoot PROM?
Выполняет автоматическую загрузку системы после включения питания или перезапуска
Устанавливает устройство запуска по умолчанию
Выполняет перезагрузку системы после ее сброса по сигналу сторожевой схемы
Автоматически выполняет перезагрузку системы после того, как был сгенерирован файл системного ядра
Какая из перечисленных команд используется для установки параметра auto-boot?
setenv auto-boot?=false
set auto-boot=false
eeprom auto-boot?=false
D. nvset
Какую команду вы должны набрать для отображения установок всех параметров среды OpenBoot, таких как boot-device и ttya-mode?
nvalias
devalias
printenv
D. show all
Какую команду вы должны набрать для проверки целевых идентификаторов всех устройств с интерфейсом SCSI, подключенных ко всем контроллерам SCSI?
test-all
probe-scsi
probe-scsi-all
test-scsi
Какой из приведенных ниже файлов считывает ядро операционной системы в процессе зафузки? (Это тот файл, в котором сохраняется информация о системной конфигурации.)
/etc/system
/platform/<arch>/kernel/unix
/etc/inittab
D. /kernel/unix
Ответы на обзорные вопросы
А. Пользовательский интерфейс аппаратного уровня, который вы видите на экране перед тем, как стартует операционная система, называется OpenBoot PROM (ОВР).
С. NVRAM - это то место, где хранится информация по системной идентификации, такая как HOSTID, Ethernet-адрес и часы истинного времени (time of day (TOD) clock).
А, В. Две основные задачи, которые выполняет встроенное программное обеспечение OpenBoot - это запуск POST и загрузка загрузочного блока.
В. OpenBoot запускает POST для инициализации аппаратных средств системы и также загружает первичную программу запуска, bootblk, с устройства, принятого по умолчанию. Первичная программа запуска, bootblk, находит и исполняет вторичную программу запуска, ufsboot, загружая ее в память. Начиная с этого момента, вторичная программа запуска, ufsboot, загружает ядро операционной системы.
D. Устройства, называемые узлами, присоединяются к главному компьютеру через иерархию взаимосвязанных шин на дереве устройств. Узел, представляющий шину по основному физическому адресу главного компьютера, формирует корневой узел дерева устройств.
А. Полное имя маршрута некоторого устройства представляет собой последовательность имен узлов, разделенных слэшами (/). Корнем этого дерева является узел машины, который не именуется в явном виде, однако обозначается в виде ведущего слэша. Имя маршрута каждого устройства имеет следующую форму:
driver-name@unit-address:device-arguments
А. Команда OpenBoot по имени show-devs используется для получения информации об устройствах и отображения имен маршрутов устройств.
D. Используйте команду devalias для создания временного псевдонима устройства с именем disk3 следующим образом:
devalias disk3 /iommu/sbus/espdma@f,400000/esp@f,800000/sd@3,О
В. Используйте команду nvalias для создания постоянного псевдонима в NVRAM, который останется действующим после перезагрузки вычислительной системы.
А. Переменная boot-device, хранящаяся в NVRAM, содержит имя устройства, с которого по умолчанию будет запускаться вычислительная система.
С. Используйте одну из следующих команд для модификации параметров NVRAM: setenv, set-default и set-defaults.
В. Для переустановки переменных NVRAM в их значения по умолчанию одновременно нажмите клавиши Stop+N при включении электропитания машины.
В. Команда среды OpenBoot по имени security-mode ограничивает набор операций, которые пользователи смогут выполнять в приглашении OpenBoot.
С. Команда среды OpenBoot по имени test-all тестирует все устройства, которые имеют встроенные методы самодиагностики и находятся ниже заданного узла на дереве устройств.
D. Чтобы вы получили приглашение ввести имя автономной программы для загрузки, выдайте команду boot среды OpenBoot с опцией -а.
А. На устройстве запуска в блоках с 1 по 15 находится программа bootblk.
А. Ядро операционной системы загружает вторичная программа запуска, ufsboot.
Примените ваши знания
р. Используйте команду sysdef для вывода списка всех аппаратных и системных устройств, загружаемых модулей, а также значений выбранных настраиваемых параметров ядра.
D. Имена физических устройств сохраняются в каталоге/devices.
С. Для прерывания системы, которая не отвечает, нажмите одновременно клавиши Stop+A.
В. Программа ufsboot загружает ядро операционной системы.
А. Переменная auto-boot? определяет, будет ли система автоматически запускаться после выполнения системного сброса (перезапуска) или включения питания. По умолчанию эта переменная принимает логическое значение true. Когда происходит включение питания, система автоматически запускается на установленный по умолчанию уровень.
D. Команда eeprom auto-boot?=false используется для установки параметра auto-boot?.
С. Для отображения всех установок параметров среды OpenBoot из ее приглашения введите команду printenv.
С. Воспользуйтесь командой probe-scsi-all для проверки целевых идентификаторов всех устройств с интерфейсом SCSI, подключенных ко всем контроллерам SCSI.
А. Когда загружается ядро операционной системы, оно считывает файл /etc/system. в котором сохраняется информация по системной конфигурации. Этот файл модифицирует параметры ядра операционной системы и определяет обработку загружаемых модулей.
Глава 3
Установка программного обеспечения Solaris 8
Темы
Эта глава описывает этапы, которые должен выполнить системный администратор для инсталляции операционной системы Solaris 8 на автономном компьютере, подключенном к сети. Эти этапы включают выполнение следующих работ:
Подготовка к инсталляции программного обеспечения Solaris 8
При инсталляции операционной системы предлагается список, требуемые пункты которого вам предстоит отметить. Важно, чтобы вы собрали необходимую информацию прежде, чем начнете процесс инсталляции.
Проверка выполнения минимальных системных требований программного обеспечения Solaris 8
Для инсталляции и запуска Solaris 8 на некоторой вычислительной системе вы должны проверить, что аппаратные средства этой системы соответствуют минимальному набору требований.
Понимание терминологии программного обеспечения Solaris
Чтобы понять конкретное диалоговое окно, которое будет представлено инсталляционной программой, вам необходимо знать терминологию фирмы Sun и то, как происходит связывание модулей программного обеспечения Solaris.
Выбор конфигурации операционной системы для инсталляции
Потребуется выбрать тип конфигурации операционной системы, которую вы хотите инсталлировать. В этой главе будет описан каждый из доступных типов конфигурации.
Понимание дисковых систем хранения информации и их разделов
В процессе инсталляции необходимо будет установить диски и дисковые разделы. Чтобы установить их правильно, прежде всего потребуется понять концепции, лежащие в основе хранения информации на дисках и разбивки дисков на разделы. Затем вам нужно будет подумать над тем, каким образом вы хотите хранить данные на дисках вычислительной системы.
Понимание драйверов устройств
Драйверы устройств управляют каждым устройством, присоединенным к вашей системе, причем, некоторые устройства используют несколько драйверов устройств. Прежде чем инсталлировать операционную систему, вы должны убедиться, что все устройства подключены и функционируют. В этой главе разъясняются вопросы, связанные с драйверами устройств, позволяющие вам распознать и проверить все устройства, присоединенные к системе.
Знание методов инсталляции программного обеспечения Solaris 8
В настоящей главе будет описано пять методов, которые могут быть использованы для инсталляции операционной системы. Все эти методы описаны таким образом, чтобы вы смогли определить, какой из них лучше подходит для вашей инсталляции.
Инсталляция операционной системы Solaris 8
В настоящей главе обрисован процесс инсталляции операционной системы.
Содержание
(Введение108
требования и подготовку ^инсталляции программного обеспечения Solaris 8109
Неподдерживаемые архитектуры 8ип4сПО
Минимальные системные требования111
терминология программного обеспечения111
Накут программного обеспечения111
"Кластеры программного обеспечения и кластеры конфигурации111
Носители информации113
Конфигурация устанавливаемой систелш113
Фискрвые системы хранения данных.117
Основные соображения по вопросу планирования размеров разделов119
(Размещениеразделов на несколькихдисках.120
Фрайверы устройств121
Имя физического устройства121
Имя образца устройства122
Имя логического устройства122
файлы блочныхисимвольныхустройств123
Методы инсталляции программного обеспечения Solaris 8124
Интерактивный метод124
Метод jumpStart124
Пользовательский метод инсталляции jumpStart125
Метод инсталляции 1Д2еб Start125
Инсталляция через сеть126
Процесс инсталляции Solaris126
(Резюме128
Примените ваши знания129
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
Разберитесь с каждым из пяти методов, используемых для инсталляции операционной системы. Прежде всего вы должны понимать различия между методами, а также представлять, где и когда использовать каждый метод инсталляции.
Изучите все требования для инсталляции операционного окружения Solaris 8.
Разберитесь со всей терминологией и понятиями, описанными в настоящей главе, а также с терминами, обозначенными в конце главы. На экзамене легко возникают неожиданные повороты событий: может понадобиться каждая из концепций.
Разберитесь со всеми вопросами, описанными в разделе "Дисковые системы хранения данных". Разберитесь с различными драйверами и именами устройств. Убедитесь, что вы понимаете вопросы, связанные с разбивки диска на разделы.
Наконец, практикуйтесь в использовании всех команд, представленных в настоящей главе до тех пор, пока не сможете выполнять и описывать каждую команду по памяти. Кроме того, практически инсталлируйте операционное окружение Solaris 8 на вычислительной системе Sun или Intel не менее трех раз или до тех пор, пока не сможете выполнять задачу по памяти.
Введение
Процесс инсталляции операционной системы Solaris состоит из трех фаз: конфигурирование системы, инсталляция системы и так называемые постинсталляционные задачи - установка принтеров, сетевых подключений и создание условий для возникновения пользователей системы. В настоящей главе описываются различные конфигурации системы и инсталляция операционной системы Solaris на рабочей станции. В главе 15 процесс описывается более подробно, особенно в части инсталляции Solaris на серверах.
Требования и подготовка к инсталляции программного обеспечения Solaris 8
Первым этапом при выполнении инсталляции является определение того, поддерживается ли ваш тип вычислительной системы операционной системой Solaris 8. Во-вторых, вам необходимо принять решение относительно того, какую системную конфигурацию вы хотите установить, и выяснить, располагаете ли вы достаточным свободным местом на диске для ее поддержки.
В процессе подготовки к инсталляции Solaris 8 используйте таблицу 3.1, чтобы проверить, поддерживается ли ваш тип вычислительной системы. Кроме того, убедитесь, что вы располагаете достаточным свободным местом на диске для инсталляции Solaris и всех пакетов программ, которые вы планируете. Материалы раздела "Терминология программного обеспечения", который находится далее в настоящей главе, помогут вам оценить размер дискового пространства, необходимый для поддержки операционной системы Solaris.
Чтобы определить тип вашей системы, используйте команду uname-m. Система сообщит группу и наименование платформы вашей системы. Сравните ответ системы с содержимым столбца Группа платформы в таблице 3.1. Используйте команду uname -ш, чтобы проверить, поддерживают ли платформы Sun окружение Solaris 8. На Sun Ukra5 система возвращает sun4u как наименование группы, к которой относится эта платформа.
■ Таблица 3.1 Платформы фирмы Sun, ко^ые^^ .
Вычислительная
Наименование
Гоуппа
система
платформы
платформы
На базе процессоров х86
i86pc
i86pc
SPARCserver 1000/1000Е
SUNW, SPARCserver-1000
sun4d
SPARCcenter 2000/2000Е
SUNW, SPARCcenter-2000
sun4d
SPARCstation 4
SUNW, SPARCstation-4
sun4m
SPARCstation 5
SUNW, SPARCstation-5
sun4m
SPARCstation 10
SUNW, SPARCstation-10
sun4m
SPARCstation 10SX
SUNW, SPARCstation-10SX
sun4m
SPARCstation 20
SUNW, SPARCstation-20
sun4m
SPARCstation LX
SUNW, SPARCstation-LX
sun4m
SPARCclassic
SUNW, SPARCclassic
sun4m
Системы Ultra 1
SUNW, Ultra-1
sun4u
Системы Ultra 1 Enterprise
SUNW, Ultra-1
sun4u
Системы Ultra 2
SUNW, Ultra-2
sun4u
Системы Ultra 2 Enterprise
SUNW, Ultra-2
sun4u
Ultra Enterprise 150
SUNW, Ultra-1
sun4u
ВычислительнаяНаименованиеГоуппасистемаплатформыплатформыUltra Enterprise 250SUNW, Ultra-2sun4uUltra 450SUNW, Ultra-4sun4uUltra Enterprise 450SUNW, Ultra-4sun4uUltra Enterprise 3000, 3500, 4000, 4500, 5000, 5500, 6000, 6500, 10000SUNW, Ultra-Enterprisesun4uUltra 5SUNW, Ultra-5/10sun4uUltra 10SUNW, Ultra-5/10sun4uUltra 30SUNW, Ultra-30sun4uUltra 60SUNW, Ultra-60sun4uUltra 80SUNW, Ultra-60sun4uSun Blade 100, 1000'SUNW, Blade-100sun4uSun Blade 1000SUNW, Blade-1000sun4uSun Fire 280R, 880, 6800, 4810, 4800, 3800SUNW, Sun-Firesun4uВычислительнаяНаименованиеГоуппасистемаплатформыплатформыUltra Enterprise 250SUNW, Ultra-2sun4uUltra 450SUNW, Ultra-4sun4uUltra Enterprise 450SUNW, Ultra-4sun4uUltra Enterprise 3000, 3500, 4000, 4500, 5000, 5500, 6000, 6500, 10000SUNW, Ultra-Enterprisesun4uUltra 5SUNW, Ultra-5/10sun4uUltra 10SUNW, Ultra-5/10sun4uUltra 30SUNW, Ultra-30sun4uUltra 60SUNW, Ultra-60sun4uUltra 80SUNW, Ultra-60sun4uSun Blade 100, 1000'SUNW, Blade-100sun4uSun Blade 1000SUNW, Blade-1000sun4uSun Fire 280R, 880, 6800, 4810, 4800, 3800SUNW, Sun-Firesun4uПродолжение таблицы 3.1Продолжение таблицы 3.1
Вычислительная
Наименование
Гоуппа
система
платформы
платформы
Ultra Enterprise 250
SUNW, Ultra-2
sun4u
Ultra 450
SUNW, Ultra-4
sun4u
Ultra Enterprise 450
SUNW, Ultra-4
sun4u
Ultra Enterprise 3000, 3500, 4000, 4500, 5000, 5500, 6000, 6500, 10000
SUNW, Ultra-Enterprise
sun4u
Ultra 5
SUNW, Ultra-5/10
sun4u
Ultra 10
SUNW, Ultra-5/10
sun4u
Ultra 30
SUNW, Ultra-30
sun4u
Ultra 60
SUNW, Ultra-60
sun4u
Ultra 80
SUNW, Ultra-60
sun4u
Sun Blade 100, 1000'
SUNW, Blade-100
sun4u
Sun Blade 1000
SUNW, Blade-1000
sun4u
Sun Fire 280R, 880, 6800, 4810, 4800, 3800
SUNW, Sun-Fire
sun4u
Вычислительная
Наименование
Гоуппа
система
платформы
платформы
Ultra Enterprise 250
SUNW, Ultra-2
sun4u
Ultra 450
SUNW, Ultra-4
sun4u
Ultra Enterprise 450
SUNW, Ultra-4
sun4u
Ultra Enterprise 3000, 3500, 4000, 4500, 5000, 5500, 6000, 6500, 10000
SUNW, Ultra-Enterprise
sun4u
Ultra 5
SUNW, Ultra-5/10
sun4u
Ultra 10
SUNW, Ultra-5/10
sun4u
Ultra 30
SUNW, Ultra-30
sun4u
Ultra 60
SUNW, Ultra-60
sun4u
Ultra 80
SUNW, Ultra-60
sun4u
Sun Blade 100, 1000'
SUNW, Blade-100
sun4u
Sun Blade 1000
SUNW, Blade-1000
sun4u
Sun Fire 280R, 880, 6800, 4810, 4800, 3800
SUNW, Sun-Fire
sun4u
Продолжение таблицы 3.1
Продолжение таблицы 3.1
Фирма Sun заявляет, что не все платформы и периферийные устройства, перечисленные в настоящей главе, являются совместимыми. За информацией о поддержке обратитесь к своему авторизованному провайдеру (поставщику услуг) технической поддержки фирмы Sun.
Неподдерживаемые архитектуры Sun4c
Следующие вычислительные системы архитектуры sun4c более не поддерживаются:
$> SPARCstation SLC
$> SPARCstation ELC
$> SPARCstation IPC
$> SPARCstation IPX
$> SPARCstation 1
$> SPARCstation 1 +
$> SPARCstation 2
$> SPARCstation Voyager
$> SPARC Xterminal 1
С помощью команды format проверьте раздел 2, чтобы убедиться, что ваш дисковый накопитель является достаточно большим для загрузки Solaris. Для правильного использования этой команды обратитесь к главе 6. Как описано в главе 6, раздел 2 представляет полный диск.
Минимальные системные требования
Компьютер должен соответствовать приведенным ниже требованиям прежде, чем вы сможете установить операционную систему Solaris 8 с использованием интерактивного метода инсталляции:
$> Вычислительная система должна иметь как минимум 64 Мбайт оперативной памяти. Требования по памяти определяются несколькими факторами, в число которых входит количество активных пользователей и приложений, которые вы планируете запускать.
$> Solaris 8 распространяется только на дисках CD-ROM, поэтому система должна либо иметь локальный привод CD-ROM, либо иметь доступ к нему по сети.
$> Требуется как минимум 2.3 Гбайт дискового пространства. В следующем разделе рассматриваются требования по размеру свободного дискового пространства для конкретного программного обеспечения Solaris, которое вы планируете инсталлировать. Кроме этого, добавьте дисковое пространство для поддержки требований вашего окружения по размеру области своппинга (подкачки).
$> Вычислительная система должна иметь архитектуру SPARC или Intel.
Терминология программного обеспечения
Операционная система Solaris поставляется на дисках CD-ROM в виде пакетов программ. Пакеты сгруппированы в кластеры. В следующих разделах описывается схема пакетирования операционной системы Solaris.
Пакет программного обеспечения
Пакет программного обеспечения представляет собой некоторый набор файлов и каталогов в определенном формате. Он описывает некоторое прикладное программное обеспечение, такое как страницы справочного руководства и поддержку построчно-печатаю- щего устройства. Операционная система Solaris 8 содержит приблизительно восемьдесят пакетов программного обеспечения, которые суммарно занимают примерно 900 Мбайт дискового пространства.
Пакет программного обеспечения Solaris представляет собой стандартный способ поставки связанного и несвязанного программного обеспечения. Пакеты управляются командами администрирования и обычно идентифицируются с помощью соглашения по именованию, SUNWxxx.
Кластеры программного обеспечения и кластеры конфигурации
Пакеты программного обеспечения группируются в кластеры, которые представляют собой логические наборы пакетов программ. Например, кластер страниц оперативного справочного руководства содержит один пакет. Некоторые кластеры содержат несколько пакетов, например, кластер JavaVM 1.0, содержащий компилятор Java J1T, демонстрационные программы JavaVM, пакет разработчиков JavaVM, страницы справочного руководства JavaVM и среду выполнения JavaVM.
Для вычислительных систем с архитектурой SPARC кластеры программного обеспечения, чтобы упростить процесс инсталляции, сгруппированы в пять кластеров конфигу-
рации. Во время инсталляции вам будет предложено включить один из пяти кластеров конфигурации. В состав этих пяти кластеров входят: поддержка ядра системы, поддержка конечного пользователя, поддержка системы разработчика, полный дистрибутив и полный дистрибутив с поддержкой системы OEM (Original Equipment Manufacturer - изготовитель оригинального оборудования). Приведенный ниже список описывает каждый кластер конфигурации:
Ф Поддержка ядра системы. Для собственно программного обеспечения кластера требуется 258 Мбайт дискового пространства. Однако фирма Sun рекомендует для этого кластера 718 Мбайт: для поддержки программного обеспечения, области своппинга и прочих накладных расходов. Этот кластер конфигурации включает в себя минимальное программное обеспечение, необходимое для загрузки и запуска Solaris на некоторой вычислительной системе. В его состав входят некоторое сетевое программное обеспечение и драйверы, необходимые лишь для запуска среды OpenWindows без собственно ее программного обеспечения.
Ф Поддержка системы конечного пользователя. Для собственно программного обеспечения кластера требуется 767 Мбайт дискового пространства. Однако фирма Sun рекомендует 1.6 Гбайт: для поддержки программного обеспечения, области своппинга и прочих накладных расходов. Этот кластер конфигурации включает в себя программное обеспечение поддержки ядра системы плюс программное обеспечение конечного пользователя, в состав последнего входят программное обеспечение OpenWindows и программное обеспечение CDE (Common Desktop Environment - общей настольной среды).
Ф Поддержка системы разработчика. Для собственно программного обеспечения кластера требуется 1.8 Гбайт дискового пространства. Однако фирма Sun рекомендует 1.9 Гбайт: для поддержки программного обеспечения, области своппинга и прочих накладных расходов, необходимых для поддержки данного кластера. Этот кластер конфигурации включает в себя программное обеспечение конечного пользователя, библиотеки, страницы справочного руководства и инструментарий для разработки программного обеспечения. В состав данного кластера не входят компиляторы и отладчики, они приобретаются отдельно.
Ф Полный дистрибутив системы. Только для программного обеспечения кластера требуется 1.13 Гбайт дискового пространства. Однако фирма Sun рекомендует 2.3 Гбайт: для поддержки программного обеспечения, области своппинга и прочих накладных расходов, необходимых для поддержки данного кластера. Этот кластер конфигурации включает в себя полную версию операционной системы Solaris 8.
Ф Полный дистрибутив плюс поддержка системы OEM. Только для программного обеспечения кластера требуется 1.6 Гбайт дискового пространства. Однако фирма Sun рекомендует 2.4 Гбайт: для поддержки программного обеспечения, области своппинга и прочих накладных расходов, необходимых для поддержки данного кластера. Этот кластер конфигурации включает в себя полную версию операционной системы Solaris 8 и дополнительно к ней расширенную поддержку аппаратных средств.
Последний кластер доступен только для вычислительных систем фирмы Sun, но не для версии операционной системы Solaris на платформе Intel.
ПРИМЕЧАНИЕ г
Для каждого кластера.конфигурации в рекомендуемом объеме дискового пространства учтены область своппинга и необходимые накладные расходы. Для области своппинга (подкачки) необходимо как минимум 320 Мбайт, однако может потребоваться и больше. По умолчанию Solaris Web Start выделяет для области подкачки 512 Мбайт.
Носители информации
Программное обеспечение операционной системы Solaris 8 распространяется на дисках CD-ROM и называется "инсталляционный комплект носителей". Этот комплект носителей поставляется в двух версиях: для платформы Intel и для платформы SPARC. Если у вас имеется вычислительная система фирмы Sun, инсталлируйте версию для платформы SPARC. Если вы планируете установить Solaris на персональном компьютере, используйте версию для платформы Intel. Кроме того, для каждого типа платформы существуют внутренняя и международная версии комплекта носителей. Внутренняя версия для платформы SPARC состоит из четырех компакт-дисков, которые имеют следующую маркировку:
3» Solaris 8 Installation English SPARC Platform Edition - англоязычный выпуск инсталляции Solaris 8 для платформы SPARC
3> Solaris 8 Software CD 1 of 2 SPARC Platform Edition - выпуск программного обеспечения Solaris 8 для платформы SPARC, первый компакт-диск из двух
Ф Solaris 8 Software CD 2 of 2 SPARC Platform Edition - выпуск программного обеспечения Solaris 8 для платформы SPARC, второй компакт-диск из двух
?> Solaris 8 Documentation CD (English SPARC / Intel Platform Edition) - компактдиск с документацией no Solaris 8 (выпуск для платформы SPARC / Intel на английском языке)
Международная версия комплекта носителей доступна для применения за пределами Соединенных Штатов. В состав международной версии входят те же компакт-диски, что и в состав внутренней, плюс некоторые дололнительные:
Ф Solaris 8 Documentation European SPARC / Intel Platform Edition - компакт-диск с документацией no Solaris 8 (европейский выпуск для платформы SPARC / Intel)
Ф Solaris 8 Documentation Asian SPARC / Intel Platform Edition - компакт-диск c документацией no Solaris 8 (азиатский выпуск для платформы SPARC / Intel)
Версия комплекта носителей операционной системы Solaris 8 для платформы Intel включает те же самые компакт-диски, что и версия для платформы SPARC, и дополнительно к ним гибкий диск, маркированный "Solaris 8 Device Configuration Assistant Intel Platform Edition" - "Ассистент конфигурирования операционной системы Solaris 8, выпуск для платформы Intel". Чтобы начать инсталляцию на платформе Intel, вы должны сначала выполнить загрузку с гибкого диска ассистента конфигурирования устройств. На вычислительных системах фирмы Sun в этом нет необходимости. Ассистент конфигурирования устройств выполнит конфигурирование устройств на персональном компьютере и сообщит, когда нужно установить компакт-диск с операционной системой Solaris 8.
Конфигурация устанавливаемой системы
Перед инсталляцией операционной системы вам необходимо определить конфигурацию системы, которая будет установлена. Конфигурация определяется по способу доступа
к корневой (/) и пользовательской (/usr) файловым системам и областью своппинга. Существуют следующие конфигурации системы:
?> Server (сервер)
?> Clients (клиентские конфигурации), в число которых входят:
Diskless clients (бездисковые клиенты)
JavaStation clients (клиенты JavaStation) 1
Клиенты типа Solstice AutoClients
Stand-alone systems (автономные вычислительные системы)
Сервер
Серверная система содержит такие локально инсталлированные файловые системы:
Ф Корневую (/) файловую систему, файловую систему /usr, а также область своппинга (подкачки)
Ф Файловые системы /export, /export/swap и /export/home, которые поддерживают системы клиентов и предоставляют пользователям исходные каталоги
Ф Каталог, или файловая система /opt для хранения прикладного программного обеспечения
Еще серверы могут содержать программное обеспечение для поддержки других систем, в том числе:
Ф Службы операционной системы для бездисковых клиентов и систем типа AutoClient
Ф Образ компакт-диска операционной системы Solaris и загрузочное программное обеспечение для сетевых вычислительных систем, чтобы выполнять дистанционные инсталляции
Ф Каталог JumpStart для сетевых систем, чтобы выполнять пользовательские инсталляции JumpStart
ПРИМЕЧАНИЕ
Многие системные администраторы интересуются, имеется ли в операционной системе Solaris 8 поддержка бездисковых клиентов и AutoClient. Многих озадачила собственная документация фирмы Sun. Во время написания этой главы в первом томе "Solaris 8 System Administration Guide Volume 1" ("Руководства по системному администрированию Solaris 8") говорилось, что клиенты типа AutoClient и бездисковые клиенты не поддерживаются версией Solaris 8. В документе Solaris 8 Release Notes за июль 2001 года фирма Sun сообщила, что программное обеспечение Solstice AdminSuite 2.3 более не поддерживается. Любые попытки запустить Solstice AdminSuite 2.3 для конфигурирования Solstice AutoClient или бездискового клиента приведут к аварийной ситуации, "заплаты" для этой версии не доступны и не планируются. В версии Solaris 8 за июль 2001 появились новые команды управления бездисковыми клиентами. Более подробная информация содержится в файлах smosservice (1 Мбайт) и smdiskless (1 Мбайт). Так что поддержка клиентских систем типа AutoClient и бездисковых клиентов все еще доступна в операционной системе Solaris 8, несмотря на то, что в первом томе "Solaris 8 System Administration Guide Volume 1" утверждается, что это не так. Просто клиенты AutoClient и бездисковые клиенты не поддерживаются программным пакетом Solstice AdminSuite.
Клиент
Клиент представляет собой систему, использующую дистанционные службы некоторого сервера. Некоторые клиенты имеют ограниченные возможности по хранению дан-
ных на локальном диске или вообще не имеют дисковых накопителей, поэтому для своего функционирования они должны рассчитывать на дистанционные файловые системы, предоставляемые сервером. Примерами клиентов этого типа являются бездисковые клиенты, клиенты типов AutoClient и JavaStation.
Другие клиенты могут использовать дистанционные службы (такие как инсталляция программного обеспечения) с некоторого сервера, однако их функционирование не привязано столь уж жестко к серверу. Хорошим примером клиента этого типа является автономная вычислительная система, которая имеет собственный жесткий диск, содержащий корневую систему, файловые системы /usr и /export/home, а также область своппинга.
Бездисковый клиент
Такой клиент представляет собой систему без локального жесткого диска. Подобная система зависит от сервера и в части программного обеспечения, и в части области хранения данных. Операционная система в данном случае размещается на некотором сервере в сети. Бездисковый клиент загружается с сервера, дистанционно монтирует свою корневую файловую систему, файловые системы /usr и /export/home, размещает на сервере область своппинга и с него же получает все необходимые данные. Любые созданные файлы сохраняются на том же сервере.
Бездисковый клиент генерирует достаточно большой сетевой трафик, поскольку ему необходим постоянный доступ к функциям операционной системы на сервере и доступ через сеть к области виртуальной памяти. Бездисковый клиент не может функционировать, если он отсоединен от сети или его сервер является недоступным.
Клиент JavaStation
Этот клиент предназначен для нулевого администрирования; такой клиент оптимизирует Java. Клиент JavaStation использует все преимущества сети для доставки необходимой информации из приложений, написанных на языке Java, и служб, для получения законченной интегрированной системы и управления сетью. Этот тип клиента может создавать значительный сетевой трафик, поэтому убедитесь в том, что ваша сеть обладает необходимой пропускной способностью. Клиент JavaStation не имеет локального администрирования; загрузка, администрирование и хранение данных осуществляются серверами через сеть.
AutoClient
Такая система практически идентична бездисковому клиенту за исключением того, что она кэширует все необходимое системное программное обеспечение с некоторого сервера. Системы типа AutoClient используют бездисковую технологию Solaris и технологию CacheFS. Технология CacheFS представляет собой механизм общего применения, выполняющий кэширование файловой системы и повышающий производительность и масштабируемость за счет уменьшения нагрузки на сервер и сеть. Подробное описание CacheFS содержится в главе 17. Система AutoClient обладает следующими характеристиками:
Ф Она требует применения локального жесткого диска объемом 100 Мбайт или более для своппинга и кэширования. Ее корневая файловая система и файловая система /usr находятся на одном из серверов сети, однако они кэшируются локально.
Ф Эта система может быть установлена таким образом, чтобы она могла сохранить доступ к своим кэшированным корневой файловой системе и файловой
системе /usr, даже когда сервер недоступен.
Ф Она зависит от серверов в части предоставления других файловых систем и прикладного программного обеспечения.
Ф Эта система не содержит постоянных данных, что делает ее устройством FRU (Field-Replaceable Unit - допускающим замену в условиях эксплуатации).
Система типа AutoClient использует локальный жесткий диск для области своппинга (подкачки) и для кэширования индивидуальной корневой файловой системы и файловой системы /usr из файловых систем сервера. Системный администратор может обслуживать несколько систем AutoClient с одного централизованного места, такая конфигурация является весьма рациональной. При этом не требуется вносить изменения на отдельных системах. Вы должны получить лицензию для каждой системы AutoClient, которую хотите добавить к вашей сети.
В таблице 3.2 приведен краткий обзор каждой системной конфигурации. В ней показано, какие файловые системы являются локальными, а какие - доступны через сеть.
'?Табд.11ца^;Д^и^
Тип
Локальные
Локальная
Дистанционные
системы
файловые
область
файловые
системы
своппинга
системы
Сервер
Корневая файловая система, /usr, /home, /opt/export, /export/home
Имеется
Имеются, но необязательно
JavaStation
Отсутствуют
Отсутствует
/home
Бездисковый клиент
Отсутствуют
Отсутствует
Корневая файловая система, файловые системы /usr и /home, область своппинга
AutoClient
Кэшированные корневая файловая система и файловая система /usr
Имеется
/var
Автономная система
Корневая файловая система,/usr и /export/home
Имеется
Имеются, но необязательно
Автономная система
Ее операционная система загружается на локальный жесткий диск, а сама система настраивается таким образом, чтобы запускаться независимо от других систем. Операционная система может взаимодействовать по сети с другими автономными системами. Сетевая автономная система может использовать информацию совместно с другими системами сети, но может функционировать и самостоятельно, поскольку она имеет собственный жесткий диск достаточного объема для размещения на нем корневой файловой системы, файловых систем /usr и /export/home, а также области своппинга. Автономная система имеет локальный доступ к программному обеспечению операционной системы, исполняемым модулям, области виртуальной памяти, а также к пользовательским файлам. Иногда автономная система будет
получать доступ к данным сервера или же через сервер к приводу CD-ROM или накопителю на магнитной ленте, если указанные устройства недоступны локально.
Сравнение характеристик производительности клиентов и автономных систем
Системный администратор принимает решение о том, какую конфигурацию системы следует использовать, исходя из доступных аппаратных средств и из стремления максимально упростить задачу администрирования сети. При этом обязательно учитывает, имеет ли конкретная вычислительная система локальный жесткий диск, достаточно большой для размещения на нем всей операционной системы целиком, и смогут ли особенности системных конфигураций типа AutoClient, бездисковый клиент или JavaStation облегчить решение задач администрирования дистанционных систем. Чаще всего для упрощения системного администрирования в больших сетях используются конфигурации AutoClient. Поскольку операционная система загружается с сервера, обслуживание с централизованного рабочего места операционной системы конкретной рабочей станции реализуется достаточно просто. С другой стороны, бездисковые клиенты используются в тех случаях, когда дисковое пространство на конкретной рабочей станции ограничено, но поскольку своппинг все же выполняется через сеть, необходимо учитывать и ее пропускную способность.
Проанализировав каждый тип системы с точки зрения производительности и простоты обслуживания, вы увидите, что автономная система имеет наилучшую производительность, однако такая система наиболее сложна для администрирования. Бездисковый клиент прост в администрировании, однако он имеет наихудшую производительность среди других типов клиентов.
Система типа AutoClient также проста в администрировании и при этом имеет лучшую производительность, чем бездисковый клиент. Ио мере уменьшения стоимости дисковых накопителей и с учетом того несомненного факта, что пропускная способность сети сегодня является весьма ценным ресурсом, система типа AutoClient обычно является лучшей альтернативой, чем бездисковый клиент, и даже лучшей, чем система JavaStation.
Система типа JavaStation отличается наибольшей простотой администрирования, однако требует большей пропускной способности сети, чем система AutoClient. Кроме того, в данном случае приложения и службы, которые вы планируете запускать, должны быть основаны на языке программирования Java.
Дисковые системы хранения данных
Прежде чем начать инсталлировать систему, необходимо подумать о том, как вы хотите хранить данные на ее дисках. При наличии одного диска решение будет тривиальным. Если в системе имеется несколько дисков, вы должны принять решение, какие диски следует использовать для размещения операционной системы, какие - для области своппинга (подкачки), а какие - для данных пользователей.
Операционная система Solaris разбивает диски на части, которые называются разделами (partitions), или частями (slices). Диск Solaris не может быть разделен на более чем семь разделов.
Почему может потребоваться разбивка диска на несколько разделов? Некоторые администраторы не делают этого, они используют весь диск как один раздел. При использовании единственного раздела все пространство на данном диске доступно любому пользова-
телю. Когда системный администратор создает раздел, все его пространство доступно только той файловой системе, которая на нем смонтирована. Если другая файловая система на том же самом диске выходит за пределы отведенного ей пространства, то невозможно позаимствовать часть пространства из другого раздела, не проведя повторной разбивки диска. Однако разбивка диска может предоставить некоторые преимущества. Ниже приведены некоторые причины, по которым вы захотите произвести разбивку дисков:
Ф Разделы позволяют более точно управлять созданием резервных копий. Команды UNIX, такие как ufsdump, работают с целыми файловыми системами. В целях резервного копирования вы можете захотеть отделить данные и область своппин- га от прикладного программного обеспечения, чтобы ускорить выполнение копий с помощью команды ufsdump. Например, вы можете захотеть выполнять ежедневное резервное копирование только данных. С другой стороны, для копирования корневой файловой системы и файловой системы /usr потребуется переводить систему в однопользовательский режим работы, поэтому разделение данных позволит вам ускорить резервирование и уменьшить время простоя.
Ф Если одна из файловых систем окажется поврежденной, остальные файловые системы останутся нетронутыми. Если потребуется провести операцию восстановления, то файловую систему меньшего размера вы сможете восстановить быстрее. Кроме того, в тех случаях, когда данные отделены от системного программного обеспечения, вы сможете модифицировать файловые системы без закрытия системы или без перезагрузки программного обеспечения операционной системы.
^ Разделы позволяют контролировать размер дискового пространства, выделенного для некоторого вида работ или для некоторого типа использования.
Ф Если файловые системы монтируются дистанционно с других вычислительных систем, вы можете разрешать совместное использование только тех данных, доступ к которым является необходимым, а не всего системного диска.
Процесс инсталляции предоставляет возможность для создания разделов. Начните со схемы разбивки по умолчанию, которая поддерживается инсталляционной программой, устанавливающей корневую (/) файловую систему, файловые системы своппинга и /usr. Эта схема устанавливает необходимые разделы требуемых размеров, основываясь на кластере программного обеспечения, выбранном для инсталляции. Ниже описана типовая схема разбивки для системы с единственным дисковым накопителем:
Ф Корневая файловая система и файловая система /usr. Обычно Solaris создает для собственных нужд две файловые системы: корневую и /usr. Инсталляционная программа определяет необходимое вам дисковое пространство. Большинство файлов в этих двух разделах являются статическими. Информация в двух упомянутых файловых системах не будет увеличиваться в размерах до тех пор, пока вы позднее не добавите пакеты программного обеспечения. Если после установки Solaris планируется добавлять программное обеспечение сторонних разработчиков, убедитесь, что вы увеличили этот раздел в достаточной степени для размещения дополнительных файлов, которые придется загружать. Система не будет работать должным образом, если корневая файловая система заполняется полностью.
Ф Область своппинга (swap), или подкачки. Эта область диска не содержит файлов внутри себя. В операционной системе UNIX вы можете иметь больше про-
грамм, чем может разместиться в памяти. Части, которые не требуются в памяти в данный момент времени, передаются в область подкачки и освобождают физическую память для других активных процессов. Своппинг в специально выделенном для этого разделе является хорошим решением по двум причинам. Во-первых, разделы подкачки являются изолированными, и, таким образом, они не могут быть перенесены на магнитную ленту при выполнении ежедневного резервного копирования. Во-вторых, раздел подкачки может быть помещен в такую область диска, которая обеспечит оптимизацию производительности вычислительной системы.
Ф Файловая система /home. На однодисковой вычислительной системе все, что не относится к корневой файловой системе, файловой системе /usr или к области своппинга, должно располагаться в отдельном разделе, /home - это то место, где могут размещаться пользовательские файлы.
ф Необязательная файловая система /var. Операционная система Solaris использует эту область для файлов системных журналов, спулеров печати и сообщений электронной почты. Имя /var является сокращением от "variable" (переменная), поскольку данная файловая система содержит файлы, которые не являются статическими, а имеют переменный размер. В один из дней каталог спулера печати может оказаться пустым, в другой день он может содержать несколько файлов по 1 Мбайт. Эта отдельная файловая система создается для предохранения корневой файловой системы и файловой системы /usr от переполнения подобными файлами. Если файловая система /var не существует, убедитесь, что вы сделали корневую файловую систему большего размера.
ф Необязательная файловая система /opt. По умолчанию программа инсталляции операционной системы Solaris загружает в эту область необязательные пакеты программного обеспечения. Кроме этого, приложения сторонних разработчиков обычно также загружаются в /opt. Если данная файловая система отсутствует, то программа инсталляции помещает необязательное программное обеспечение в корневую файловую систему. Если файловая система /opt не существует, убедитесь, что вы сделали корневую файловую систему большего размера.
Файловые системы предоставляют способ разделения данных, однако, когда некоторая файловая система выходит за рамки отведенного ей дискового пространства, вы не можете увеличить ее или позаимствовать у другой файловой системы часть неиспользуемого ею пространства. Следовательно, лучший способ разбивки диска - это создание минимального количества файловых систем с достаточным пространством для расширения. Дополнительная информация по планированию и созданию файловых систем приведена в главах 6 и 7.
Основные соображения по вопросу планирования размеров разделов
Планирование пространства диска и раздела на диске зависит от множества факторов: от количества пользователей, требований со стороны приложений, количества и размеров файлов и баз данных. Ниже приведены некоторые основные соображения, которые определяют ваши требования к организации дискового пространства:
Ф Выделяйте дополнительное дисковое пространство для каждого выбранного языка (например, для китайского, японского, корейского языков).
$> Если вам необходима поддержка печати или электронной почты, создайте какой-нибудь раздел для отдельной файловой системы /var и выделите дополнительное дисковое пространство. Необходимо оценить количество и размер сообщений электронной почты и файлов печати, чтобы правильно определить размер этого раздела.
Ф Выделите дополнительное дисковое пространство на каком-нибудь сервере, который будет представлять домашние (исходные) файловые системы пользователей. Как и в предыдущем случае, количество пользователей и размер создаваемых ими файлов будут определять размер этой файловой системы. По умолчанию каталоги /home обычно находятся в файловой системе /export.
$> Выделите дополнительное дисковое пространство на каком-нибудь сервере для бездисковых клиентов или систем Solstice AutoClient.
$> Убедитесь, что для области своппинга выделено достаточное дисковое пространство. Факторами, которые определяют размер области подкачки, являются количество пользователей и требования со стороны приложений. Проконсультируйтесь с поставщиками используемых вами приложений относительно требований к размеру области своппинга. Поставщики обычно предоставляют некоторую формулу для вычисления размера области своппинга, необходимой для каждого приложения.
ф Определите, какие пакеты программного обеспечения вы будете инсталлировать, и вычислите общий объем требуемого дискового пространства. При планировании дискового пространства не забывайте, что интерактивная программа инсталляции операционной системы Solaris позволяет вам добавлять или удалять из выбранного кластера отдельные пакеты программного обеспечения.
Ф Создавайте минимальное количество файловых систем. По умолчанию иитер-ак- тивная программа инсталляции Solaris ограничивается созданием только корневой файловой системы и файловой системы /usr, хотя, если выделено дисковое пространство для служб операционной системы, создается также файловая система /export. Создание минимального количества файловых систем поможет в дальнейшем при выполнении обновлений и расширений, поскольку отдельные файловые системы ограничены границами их частей. Не скупитесь на дисковое пространство для создаваемых файловых систем, особенно для корневой файловой системы и файловой системы /usr. Эти файловые системы не могут быть увеличены без полной перезагрузки операционной системы.
ф Вычислите дополнительное дисковое пространство для совместно упакованного (copackaged) программного обеспечения или программного обеспечения сторонних разработчиков.
Размещение разделов на нескольких дисках
Хотя один диск большой емкости может хранить все разделы и соответствующие файловые системы, часто для хранения разделов и файловых систем используются два или более дисков.
/ nWE4AH||E.vl^.
Вы не можете разделить какой-нибудь раздел между двумя или более дисками.
Например, один диск может хранить корневую файловую системы, область своппин- га и файловую систему /usr; при этом второй диск может быть использован для хранения файловой системы /export/home и других файловых систем, содержащих данные пользователей. В многодисковой схеме тот диск, который содержит корневую файловую систему, файловую систему /usr и область подкачки, называется системным диском. Остальные диски называются вторичными, или несистемными дисками.
Размещение файловых систем вычислительной системы на нескольких дисках позволяет модифицировать файловые системы и разделы на вторичных дисках без закрытия или перезагрузки программного обеспечения операционной системы. Кроме того, использование нескольких дисков позволяет распределять рабочую нагрузку между различными системами ввода-вывода и дисковыми накопителями настолько равномерно, насколько это возможно, например, путем равномерного распределения каталогов /home и разделов своп- пинга по различным дискам.
Наличие более чем одного диска повышает количество операций ввода-вывода. За счет распределения нагрузки ввода-вывода между несколькими дисками можно исключить образование узких мест.
ШМЫГАНИЕ
Хорошим способом повышения производительности вычислительной системы является создание более чем одного раздела подкачки и размещение каждого из них на отдельном дисковом накопителе. Когда системе требуется подкачка, операции дискового ввода-вывода распределяются между несколькими устройствами.
Драйверы устройств
Компьютер обычно использует широкий спектр разнообразных периферийных устройств и устройств массовой памяти, таких как дисковые накопители с интерфейсом SCSI, клавиатура, мышь, а также некоторые виды устройств резервного копирования на магнитных носителях. Другими часто используемыми устройствами являются приводы CD-ROM, принтеры и плоттеры.
Операционная система Solaris общается с периферийными устройствами через файлы устройств. Прежде чем Solaris сможет установить связь с устройством, операционная система должна иметь драйвер устройства-низкоуровневую программу, которая позволяет ядру системы общаться с некоторой частью аппаратных средств. Драйвер выступает в роли "переводчика" между операционной системой и частью аппаратных средств.
Когда система загружается в первый раз, ядро создает иерархию устройств, чтобы представить все устройства, подключенные к данной вычислительной системе. Устройства в среде Solaris описываются тремя различными способами с использованием трех различных соглашений о наименовании устройств: физическое имя устройства, имя образца и логическое имя устройства. Системный администратор должен разбираться в именах устройств при использовании команд управления дисками, файловыми системами и другими устройствами.
Имя физического устройства
Представляет полное имя маршрута данного устройства. Файлы физических устройств обнаруживаются в каталоге /devices и для них используется следующее соглашение об именовании устройств:
/devices/sbusgl,f8000000/esp@0,40000/sd@3,0:a
Вы можете отобразить имена устройств путем использования одной из команд, перечисленных в таблице 3.3.
Таблица 3.3 Отображение имен физических устройств . ...
КомандаОписание
prtconfОтображает информацию по системной конфигурации, включая общее
количество памяти и конфигурацию устройств так, как она описана иерархией вычислительной системы. Выходная информация, отображаемая этой командой, зависит от типа системы.
sysdefОтображает информацию о конфигурации устройств, включая аппарат
ные средства, псевдоустройства, загружаемые модули и выбранные параметры ядра операционной системы.
dmesgОтображает диагностические сообщения системы и список присоеди
ненных к ней после последней перезагрузки устройств.
СОВЕТ/ ■.
Используйте вывод команд prtconf и sysdef для определения подключенных к системе дисковых, ленточных устройств и приводов CD-ROM. Вывод этих команд отображает после образцов устройств такое сообщение: driver not attached (драйвер не присоединен). Поскольку некоторый системный процесс всегда наблюдает за этими устройствами, сообщение driver not attached обычно является индикатором того, что за данным образцом устройства не скрывается никакого физического устройства.
Если вы хотите освежить в памяти значения полей, образующих имя физического устройства, обратитесь к главе 1, где эти поля рассматривались подробно. Кроме того, дополнительная информация об устройствах содержится в главе 16.
Имя образца устройства
Имя образца предоставляет ядру операционной системы сокращенное имя для каждого возможного устройства данной системы. Например, sdO и sdl представляют имена образцов для двух дисковых устройств с интерфейсом SCSI. Имена образцов отображаются в файле /etc/path_to_inst и выводятся с помощью команд dmesg, prtconf и sysdef.
Имя логического устройства
Имена логических устройств используются большинством команд файловых систем Solaris для ссылки на устройства. Файлы логических устройств из каталога /dev символически ссылаются на файлы физических устройств из каталога /devices. Имена логических устройств применяются для организации доступа к дисковым устройствам в следующих случаях:
Ф Добавление к системе нового диска
Ф Перемещение диска из одной системы в другую
Ф Доступ (или монтирование) к некоторой файловой системе, находящейся на локальном диске
Ф Резервирование локальной файловой системы
Ф Восстановление файловой системы
Логические устройства собраны в подкаталоги, находящиеся внутри каталога /dev, по типам устройств, как показано в таблице 3.4.
/dev/dsk
Блочный интерфейс к дисковым устройствам
/dev/rdsk
Низкоуровневый, или символьный, интерфейс к дисковым устройствам
/dev/rmt
Ленточные устройства
/dev/term
Устройства, подключенные через последовательные линии передачи
данных
/dev/cua
Модемы для коммутируемых линий связи
/dev/pts
Псевдотерминалы
/dev/fbs
Буферы кадра, или буферы дисплея
/dev/sad
Административный драйвер STREAMS
Файлы логических устройств имеют главные и дополнительные номера, указываю
щие на драйверы устройств, аппаратные адреса и другие характеристики. Более того, имя
файла устройства должно удовлетворять определенному соглашению по наименованиям.
Логическое имя устройства для дискового накопителя имеет следующий формат:
/dev/[i
г] dsk/cxtxdxsx
Поля имени логического устройства описаны в таблице 3.5.
Таблица 3.5 Имя логического устройства для дискового накопителя
Поле
Описание
сх
Ссылается на номер контроллера SCSI
1х
Ссылается на целевой номер шины SCSI
dx
Ссылается на номер диска (это поле всегда принимает значение 0 за
исключением дисковых массивов хранения информации)
sx
Ссылается на номер части или раздела диска
Таблица3.4 ■ Рдзмёщенйё'уётро.йств<
Тип устройства
Каталог
Ниже приведено два примера имен файлов логических устройств для дисковых накопителей:
Ф /dev/dsk/cot3dOso. Ссылается на раздел 0 дискового накопителя с интерфейсом SCSI, который имеет целевой идентификатор 3 на SCSI-контроллере 0. Это буферизованное устройство.
Ф /dev/rdsk/cot3doso. Ссылается на раздел 0 дискового накопителя с интерфейсом SCSI, который имеет целевой идентификатор 3 на SCSI-контроллере 0. Это низкоуровневое устройство.
Файлы блочных и символьных устройств
Некоторые устройства, такие как дисковые накопители, имеют элемент как в каталоге /dev/dsk, так и в каталоге /dev/rdsk. Каталог /dev/dsk ссылается на файл блочного, или буферизованного устройства, тогда как каталог /dev/rdsk ссылается на файл символьного, или низкоуровневого устройства. Буква "г" в обозначении символизирует слово "raw" ("низкоуровневое"). Команды администрирования дисков и файлов требуют применения либо
низкоуровневого, либо блочного интерфейса устройства. Используемый файл устройства определяет, будут ли операции ввода-вывода обрабатываться в блочном или в символьном режиме, и обычно упоминается как тип операций ввода-вывода.
Файлы блочных устройств передают данные с использования системных буферов для ускорения операций ввода-вывода. Устройства хранения информации - такие как накопители на магнитной ленте, дисковые накопители и приводы CD-ROM - используют блочноспециальные файлы. В большинстве случае операционная система Solaris осуществляет доступ к диску через буферизованное устройство. Данные буферизуются, или кэшируются, в памяти до тех пор, пока буфер не заполнится, а затем записываются на диск.
Интерфейсы символьных устройств передают только небольшие объемы данных, по одному символу за один раз. При использовании файла символьного устройства данные записываются непосредственно надиск, минуя системные буферы ввода-вывода. Буферизацией управляет прикладная программа. Символьный интерфейс ввода-вывода используют терминалы, принтеры, плоттеры и устройства хранения информации.
Различные команды требуют использования различных интерфейсов файлов устройств. Когда команда требует интерфейс символьного устройства, указывайте подкаталог /dev/ rdsk. Когда команда требует интерфейс блочного устройства, указывайте подкаталог /dev/ dsk. Если вы не уверены, требует ли команда использования /dev/dsk или /dev/rdsk, обратитесь к страницам оперативного руководства по данной команде.
Методы инсталляции программного обеспечения
Solaris 8
Вы можете использовать один из пяти методов для инсталляции программного обеспечения Solaris: интерактивный метод, метод JumpStart, пользовательский метод инсталляции JumpStart, метод Web Start, инсталляция через сеть.
Интерактивный метод
Интерактивная программа инсталляции Solaris проводит вас шаг за шагом через процесс инсталляции программного обеспечения. Указанная интерактивная программа не позволяет инсталлировать за один раз все программное обеспечение (программное обеспечение Solaris и совместно с ним упакованное программное обеспечение) на вашу систему; эта программа инсталлирует только программное обеспечение SunOS. После инсталляции программного обеспечения Solaris вы должны инсталлировать остальное программное обеспечение, упакованное совместно с Solaris, используя соответствующие инсталляционные программы этих остальных пакетов.
Метод JumpStart
Метод инсталляции JumpStart предоставляет возможность инсталлировать программное обеспечение Solaris на какую-нибудь новую вычислительную систему путем установки соответствующего компакт-диска в привод CD-ROM и включения питания этой вычислительной системы. Никакого диалога с программой инсталляции при этом не требуется. Инсталлируемые компоненты программного обеспечения определяются по умолчанию некоторым профилем (файлам с совокупностью параметров), который выбирается на основе модели и емкости диска конкретной системы.
Все новые вычислительные системы, построенные на базе архитектуры SPARC, содержат программное обеспечение JumpStart (прединсталлированный образ загрузки), предварительно установленное на загрузочный диск. Вы можете инсталлировать программное обеспечение JumpStart на существующие системы с помощью команды re-preinstall.
Пользовательский метод инсталляции JumpStart
Этот метод инсталляции, который раньше носил название Auto-Install, позволяет автоматически и идентичным образом инсталлировать множество систем с одной и той же конфигурацией без необходимости индивидуально конфигурировать каждую из них. Пользовательский метод инсталляции JumpStart требует предварительной установки конфигурационных файлов еще до того, как системы смогут быть инсталлированы, однако это наиболее эффективный с экономической точки зрения метод, особенно если необходимо выполнить большой объем инсталляций.
ПРИМЕЧАНИЕ < .
На новой системе, поставляемой фирмой Sun, инсталляционное программное обеспечение по умолчанию определяется некоторым профилем, который выбирается на основе модели системы и емкости ее дисков; при этом вы не можете выбирать, какое программное обеспечение будет инсталлировано. Убедитесь, что конфигурация JumpStart соответствует вашему окружению. Система загружает дистрибутивную группу конечного пользователя и устанавливает минимальный размер области своппинга. Разделы и их размеры устанавливаются путем использования параметров по умолчанию, которые могут не соответствовать тем приложениям, которые вы планируете инсталлировать.
Когда может возникнуть желание воспользоваться методом JumpStart? Представьте себе, что вам необходимо инсталлировать программное обеспечение Solaris на 50 системах. Из этих 50 систем 25 находятся в техническом подразделении в качестве автономных систем с кластером конфигурации полного дистрибутива, а другие 25 - в группе информационных систем с кластером конфигурации дистрибутива разработчика. Метод JumpStart позволяет вам установить некоторый конфигурационный файл для каждого из подразделений и инсталлировать операционную систему идентичным образом на всех вычислительных системах. Такой подход облегчает инсталляцию за счет ее автоматизации, обеспечивая при этом совместимость между системами.
Метод инсталляции JumpStart, который является темой второго экзамена, подробно описан в главе 21.
Метод инсталляции Web Start
Solaris Web Start- "виртуальный ассистент", который был разработан фирмой Sun для инсталляции программного обеспечения на основе браузера. Используя Solaris Web Start и Web-браузер фирмы Sun, вы можете выбрать либо инсталляцию по умолчанию, либо заказать опцию customize, чтобы инсталлировать только то программное обеспечение, которое вы хотите, включая кластер конфигурации Solaris, утилиты Solstice и другое программное обеспечение, упакованное совместно с Solaris. Из среды Web-браузера фирмы Sun создается инсталляционный профиль, который используется методом Solaris Jump-Start для инсталляции программного обеспечения Solaris и других выбранных программных продуктов с минимальным вмешательством в сам процесс инсталляции. Метод Web Start упрощает создание конфигурационного файла для метода инсталляции JumpStart.
В Solaris 8 появился метод инсталляции Web Start Flash, позволяющий создать единственную эталонную инсталляцию операционного окружения Solaris на какой-нибудь маши-
не, которая в данном случае называется главной. После инсталляции операционной системы на этой главной машине вы можете по мере необходимости добавлять или удалять программное обеспечение и модифицировать информацию о системной конфигурации. Затем вы можете тиражировать эту инсталляцию на ряд систем, которые называются клонированными машинами.
Метод инсталляции Web Start, который является темой второго экзамена, подробно описан в приложении А.
Инсталляция через сеть
Поскольку программное обеспечение Solaris распространяется на компакт-диске, для его инсталляции вычислительная система должна иметь доступ к устройству CD-ROM. Однако если у вас нет локального привода CD-ROM, вы можете настроить данную систему для инсталляции с дистанционного CD-ROM или с образа компакт-диска на дистанционном дисковом накопителе. Дистанционный образ компакт-диска Solaris должен быть предоставлен некоторым сервером инсталляции, который имеет либо копию компакт-диска Solaris на жестком диске, либо компакт-диск Solaris, монтируемый от устройства CD- ROM этого сервера. Инсталляция операционной системы через сеть удобна в тех случаях, когда локальный привод CD-ROM не доступен.
Процесс инсталляции Solaris
Программное обеспечение Solaris инсталлируется с использованием инструментальной программы Solaris Install, которая представляет собой графический интерфейс пользователя, дружественный и простой в применении. Этот раздел содержит обзор процесса инсталляции на некоторой вычислительной системе фирмы Sun с использованием интерактивной программы. Более подробный обзор интерактивной процедуры инсталляции Solaris 8 приведен в главе 15.
ПРЕДУПРЕЖДЕНИЕ •
Описанная ниже процедура переинсталлирует вашу операционную систему. Это означает, что она уничтожит все данные на целевых файловых системах.
Интерактивная программа инсталляции выводит на экран различные меню и запрашивает от вас ввод данных. Программа Install позволяет вернуться назад к предшествующим экранам, если вы допустили ошибку; она в действительности ничего не делает на вашей системе до тех пор, пока программа инсталляции не дойдет до конца и не сообщит, что готова начать процесс загрузки. В процессе инсталляции через экранную кнопку Help всегда доступна справочная система.
Если вы намерены обновить программное обеспечение Solaris или установить его на работающей системе, выполните перечисленные ниже операции для закрытия системы, а затем приступайте к инсталляции.
ПРИМЕЧАНИЕ .
Описанная здесь инсталляция ориентирована на вычислительную систему фирмы Sun. Чтобы начать инсталляцию на персональном компьютере архитектуры Intel, вставьте гибкий магнитный диск Device Configuration Assistant (Ассистент конфигурирования устройств) и загрузитесь с этого диска. Вы получите указание установить инсталляционный компакт-диск операционной системы Solaris после того, как будет выполнено конфигурирование устройств персонального компьютера.
Шагзашагом '
Закрытие системы и запуск инсталляции Solaris 8
Станьте суперпользователем (получите в системе его привилегии).
Выдайте команду shutdown. Эта команда переведет систему в однопользовательское состояние путем останова оконной системы, оставив для вас на консоли только приглашение суперпользователя. Такой процесс занимает примерно одну минуту.
Выдайте команду halt. Эта команда поместит вас в среду PROM. Вы узнаете, что находитесь в среде PROM, увидев на экране либо приглашение ок, либо приглашение >.
Вставьте компакт-диск, маркированный Solaris 8 Software CD 1 of 2, в устройство CD-ROM и загрузите систему с этого компакт-диска.
В приглашении ок введите команду boot cdrom.
Система загружается с этого CD-ROM. Процесс загрузки достаточно медленный, но о том, что он идет, свидетельствует мигание светодиода на приводе CD-ROM. В конечном итоге система запускает графический интерфейс пользователя и представляет вам программу инсталляции Solaris. Для инсталляции программного обеспечения Solaris на данную вычислительную систему следуйте инструкциям на экране. Следует иметь под рукой перечисленную далее информацию, поскольку программа инсталляции будет запрашивать ее:
Ф Hostname. Это имя данной системы. Такие имена должны быть короткими, простыми для произношения и набранными в нижнем регистре (строчными буквами); длина имени не должна превышать 64 символа. Если данная система входит в сеть, ее имя должно быть уникальным.
Ф IP-адрес. Эту информацию необходимо получить у вашего IP-координатора. Примером IP-адреса служит 192.9.200.1. IP-адреса должны быть уникальными для каждой системы в вашей сети. Для большого сайта или для сайта, присутствующего в Internet, вы должны получить уникальный IP-адрес от NIC (Network Information Center - сетевого информационного центра), чтобы быть уверенным, что ни одна другая сеть не использует этот адрес. На рабочих станциях некоторых сайтов используется DHCP (Dynamic Host Configuration Protocol - протокол динамической настройки хостов) для автоматического присвоения IP- адреса, что будет подробнее описано в главе 18.
Ф Subnet mask (маска подсети). Убедитесь, что вместе с IP-адресом вы получили максу подсети, используемую на вашем сайте. На существующей системе эта информация может быть получена из файла /etc/netmasks.
Ф lpv6. Вам будет задан вопрос о том, должна ли быть инсталлирована поддержка lpv6, протокола следующего поколения сети Internet.
Ф N1S, N1S+, DNS, LDAP или NONE. Вы должны указать, какая служба имен будет использоваться вашей системой: N1S (Network Information Service - сетевая информационная служба, метод распределения имен, используемый на рабочих станциях фирмы Sun), N1S+, DNS (Domain Name System - служба имен доменов), LDAP (Lightweight Directory Access Protocol - облегченный протокол доступа к каталогам). Если вы не используете ни одну из перечисленных служб имен, выберите
NONE. Более подробная информация по этому вопросу приведена в главе 18.
Ф Зашита информации. Вам будет задан вопрос о том, должна ли быть сконфигурирована служба зашиты Kerberos. Служба Kerberos предоставляет избирательную мощную аутентификацию на уровне пользователя или на уровне сервера, основанную на криптографии с симметричным ключом. Запросите вашу внутреннюю службу безопасности, требуется ли Kerberos.
ф Timezone (часовой пояс). Вам необходимо знать географический регион и часовой пояс, в котором будет осуществляться эксплуатация данной системы.
Ф Root password (пароль суперпользователя). В процессе инсталляции вам будет предложено назначить пароль для учетной записи суперпользователя.
Ф Language (язык). Определите, какой язык будет использоваться при инсталляции операционного окружения Solaris 8.
После того, как программа инсталляции завершит сбор информации, она запросит разрешение на начало собственно процесса инсталляции. Когда процесс инсталляции будет завершен, вам будет предложено ввести пароль суперпользователя. Убедитесь, что вы выполнили этот этап и предоставили пароль защиты.
На этом завершается процесс инсталляции операционной системы Solaris.
Резюме
В настоящей главе.описаны основы инсталляции системы. Описаны подготовительные операции, которые системный администратор должен выполнить перед инсталляцией Solaris 8. В настоящей главе также обращается внимание на темы и терминологию, которой вы должны будете владеть для сдачи первого экзамена на звание сертифицированного системного администратора операционной системы Solaris.
В других главах настоящей книги различные процедуры инсталляции - JumpStart, Web Start и инсталляция сервера с использованием интерактивной программы инсталляции - обсуждаются более детально, чтобы подготовить вас к сдаче второго экзамена. В последующих главах также обсуждаются процедуры, выполняемые после завершения процесса инсталляции, такие как установка очередей заданий на печать, добавление пользователей и настройка процедуры резервного копирования.
Ключевые термины
Группа платформы
Наименование платформы
Носитель информации для инсталляции
Пакет программного обеспечения
Кластер программного обеспечения
Кластеры конфигурации
Область своппинга (подкачки)
Сервер
Клиент
Бездисковый клиент
Глава 3. Установка программного обеспечения Solaris 8129 Примените ваши знания
Клиент типа AutoClient
Автономная система
Раздел диска
Драйвер устройства
Имя физического устройства
Имя образца
Имя логического устройства
Блочное устройство
Символьное устройство
Hostname
IP-адрес
IPV6
* УПРАЖНЕНИЯ‘:
Примените ваши знания
Подготовка к инсталляции операционной среды Solaris 8
В настоящем упражнении вы выполните операции, необходимые для подготовки инсталляции операционной системы Solaris 8 на автономной вычислительной системе, включенной в сеть.
Оцениваемое время: 15 минут
Определите тип вашей вычислительной системы, воспользовавшись для этого следующей командой:
uname -m
Относится ли она к поддерживаемым типам платформ, перечисленным в таблице 3.1, и имеется ли у вас комплект инсталляционных носителей Solaris 8 для данной платформы?
Идентифицируйте периферийное оборудование, подключенное к вашей вычислительной системе, и определите имена устройств для привода CD-ROM и дискового накопителя, который будет использоваться в качестве загрузочного устройства. Для идентификации перечисленных устройств используйте команды prtconf, sysdef и dmesg, описанные в настоящей главе.
Убедитесь в соответствии вашей вычислительной системы минимальным системным требованиям со стороны операционной системы Solaris 8. Если система не отвечает указанным минимальным требованиям, вы не сможете инсталлировать Solaris 8. Определите объем установленной оперативной памяти следующим образом:
prtconf | grep Memory
Имеется ли в составе данной вычислительной системы привод CD-ROM?
Определите размер дискового пространства с помощью команды format и вы-
ведите листинг, информирующий о размере раздела 2, убедившись при этом, что вы выбрали корректное имя для загрузочного устройства.
ПРИМЕЧАНИЕ
Применение команды format описано в главе 7.
Определите кластер программного обеспечения, который вы хотите инсталлировать, и размер требуемого дискового пространства. Сравните полученное значение с общим объемом диска, который был определен на предыдущем этапе. Например, если размер раздела 2 данного диска был определен равным I, 3 Гбайт и предполагается установить кластер полного дистрибутива операционной системы Solaris 8, то этого дискового пространства будет недостаточно для завершения процесса инсталляции.
Спланируйте требования к хранению информации в соответствии с методикой, описанной в разделе "Дисковые системы хранения данных". Определите файловые системы и размеры разделов, которые вы хотите создать с помощью инсталляционной программы.
Получите следующую информацию, которая потребуется программе инсталляции операционной системы Solaris 8:
Каково имя (hostname) данной вычислительной системы? Используйте команду hostname для определения имени существующей системы или запросите это имя у вашего сетевого администратора.
Будет ли’использоваться статический IP-адрес или должен использоваться протокол DHCP? Используйте команду ifconfig для определения 1Р-адреса существующей системы или обратитесь к вашему IP-координатору для получения IP-адреса. В главе 13 приведена более подробная информация по применению команды ifconfig для определения IP-адреса системы.
Нужно ли разрешить использование Ipv6, протокола следующего поколения сети Internet?
'ПРИ^А^Е^^^'
Разрешение использовать IPV6 не будет иметь эффекта, если данная машина не входит в сеть, которая предоставляет услуги протокола IPV6. Если разрешено использовать IPV6, служба протокола IPV4 перестанет действовать.
Используется ли какая-нибудь служба имен, например, NIS, N1S+, DNS или LDAP? Более подробная информация по службам имен приведена в главе 18.
Должна ли быть сконфигурирована служба защиты Kerberos? Запросите вашу внутреннюю службу безопасности относительно Kerberos.
К какому часовому поясу (Восточная часть, Центральная часть или Аляска - речь идет о США) относится ваш географический регион?
В процессе инсталляции вам будет предложено назначить пароль для учетной записи суперпользователя.
Определите, какой язык будет использоваться при инсталляции операционной среды Solaris 8.
Гпава 3, Установка программного обеспечения Solaris 8 IJl Примените ваши знания
Обзорные вопросы
Какой минимальный объем оперативной памяти требуется для инсталляции операционной системы Solaris 8?
А. 16 Мбайт
32 Мбайт
64 Мбайт
D. 128 Мбайт
Какую команду лучше всего использовать для определения наименования группы вашей аппаратной платформы?
A. uname -а
В. sysdef
С. arch
D. uname -m
Что такое кластер программного обеспечения?
Группа файлов и каталогов, которые описывают какое-нибудь программное приложение.
Логический набор пакетов программного обеспечения.
Любое программное обеспечение, которое можетбыть инсталлировано на платформе Solaris.
Набор файлов, образующих какое-нибудь программное приложение.
Что такое пакет программного обеспечения?
Группа файлов и каталогов, которые описывают какое-нибудь программное приложение.
Логический набор пакетов программного обеспечения.
Набор файлов, образующих какое-нибудь программное приложение.
Набор файлов и каталогов.
Что из ниже перечисленного имеется в некоторой системе типа AutoClient?
Локальный жесткий диск и локальная область своппинга; корневая файловая система и файловая система /usr кэшируются с сервера сети.
Локальный жесткий диск отсутствует; корневая файловая система и файловая система /usr кэшируются в оперативной памяти с некоторого дистанционного сервера.
Локальный жесткий диск и локальная корневая файловая система, однако файловая система /usr кэшируется с некоторого дистанционного сервера.
Локальный жесткий диск, локальная корневая файловая система и файловая система /usr, однако область своппинга находится на некотором дистанционном сервере.
Что из нижеперечисленного не является одним из пяти кластеров конфигурации в системе Solaris 8?
Кластер поддержки полной системы.
Кластер поддержки конечного пользователя.
Кластер поддержки системы разработчика.
Кластер полного дистрибутива с системой поддержки поставщиков оборудования.
Какие файловые системы создаются по умолчанию инсталляционной программой Solaris?
/, /opt, /usr, /var, а также swap (область своппинга)
/,/usr,/var, а также swap
I, /usr, /var, /usr/openwin, /opt, а также swap
/, /usr, а также swap
Какое из приведенных ниже утверждений наилучшим образом описывает имя физического устройства?
Представляет полное имя маршрута некоторого устройства.
Эквивалентно целевому идентификатору интерфейса SCSI.
Актуальное наименование некоторого устройства, например, disk (диск), tape (лента) и т.д.
Представляет ядру сокращенное имя некоторого устройства данной системы.
Какая из перечисленных далее команд используется для отображения информации о конфигурации устройств, включая аппаратные средства вычислительной системы, псевдоустройства, загружаемые модули и параметры ядра операционной системы?
dmesg
sysdef
prtconf
D. uname
Что означает часть "tY" в стандартном соглашении о наименовании (вида cXtYdZ) файлов устройств?
Плату контроллера, к которой присоединено данное устройство.
Целевой адрес интерфейса SCSI для данного устройства.
LUN (Logical Unit Number - номер логического устройства) для данного устройства.
Функциональный номер, который содержится на плате "Core I/O".
Что из нижеперечисленного представляет собой имя символьного устройства?
/dev/dsk/cOt3dOsO
/dev/rdsk/cOt3dOsO
/dev/cua
/devices/sbus@l,f8000000/esp@0,40000/sd@3,0:a
Какое из приведенных ниже утверждений наилучшим образом описывает имя образца?
Сокращенное имя, представляющее ядру каждое возможное устройство данной системы.
Символическая ссылка на файл физического устройства.
Глава 3. Установка программного обеспечения Solaris 8 из Примените ваши знания
Полное имя маршрута для некоторого устройства.
Адрес интерфейса SCSI дискового накопителя.
В каком из перечисленных каталогов находятся подкаталоги логических устройств?
A. /dev
/devices
/kernel
D. /
Что из нижеперечисленного не является допустимым методом инсталляции Solaris 8?
Инсталляция через подсеть■
Интерактивная инсталляция
Инсталляция с дистанционного привода CD-ROM на систему этой же подсети
Метод инсталляция Web Start
Какое из приведенных утверждений наилучшим образом описывает имя логического устройства?
Символическая ссылка на файл физического устройства.
Представляет ядру сокращенное имя каждого возможного устройства системы.
Представляет полное имя маршрута для некоторого устройства.
Определяет адрес интерфейса SCSI дискового накопителя.
Какое из приведенных ниже утверждений характеризует символьное устройство?
Интерфейсы символьных устройств передают только небольшой объем данных, по одному символу за один раз.
Для файла символьного устройства данные записываются непосредственно на диск, минуя системные буферы ввода вывода.
Процессом буферизации управляет прикладная программа.
Все вышеперечисленные (А, В, С) утверждения.
Какое из приведенных ниже утверждений не является справедливым для пакета программного обеспечения?
Пакет программного обеспечения представляет собой группу файлов и каталогов, которая описывает некоторое программное приложение, такое как страницы справочного руководства или поддержка построчно-печатаюшего устройства.
Пакет программного обеспечения представляет собой общепринятый способ поставки стандартного и нестандартного программного обеспечения.
Пакеты программного обеспечения группируются в кластеры программного обеспечения.
Управление пакетами программного обеспечения осуществляется с помощью команды installf.
Какой этап является первым при инсталляции новой операционной системы на рабочей станции UNIX?
Оповещение пользователей
Повторная разбивка жесткого диска
Поиск носителя с исходным дистрибутивом
Выполнение полного резервного копирования
Какой из нижеперечисленных кластеров конфигурации программного обеспечения не является допустимым и не может быть выбран в процессе инсталляции операционной среды Solaris 8?
Core (поддержки ядра системы)
Client (поддержки клиента)
End User (поддержки конечного пользователя)
Developer (поддержки разработчика)
В каких случаях используется пользовательский метод инсталляции JumpStart?
Для инсталляции программного обеспечения Solaris на 50 идентичных системах
Для запуска системы, которая отказывается загружаться
Для установки систем AutoClient на сервер
Для интерактивного проведения вас шаг за шагом через процесс инсталляции программного обеспечения Solaris
В каких случаях используется Web Start?
Для установки вашего сервера в качестве Web-сервера
Для запуска принятого по умолчанию браузера Internet, такого как Netscape
Чтобы упростить создание файла конфигурации для метода инсталляции JumpStart
Для установки программного обеспечения на некоторой дистанционной системе через Web.
Какая из перечисленных ниже команд служит наилучшим способом закрытия системы?
A. shutdown
halt
reboot
Stop+A
Ответы на обзорные вопросы
С. Система, на которой вы будете инсталлировать Solaris 8, должна иметь как минимум 64 Мбайт оперативной памяти.
D. Для определения типа вашей вычислительной системы воспользуйтесь командой uname -m. В ответ будут возвращены группа вашей платформы и наименование платформы вычислительной системы.
В. Пакеты программного обеспечения группируются в кластеры программного обеспечения, которые представляют собой логические наборы пакетов программного обеспечения.
А. Пакет программного обеспечения представляет собой некоторый набор файлов и каталогов в определенном формате. Такая группа файлов и каталогов описывает некоторое программное приложение.
Глава 3, Установка программного обеспечения Solaris 8132) Примените ваши знания
А. Система AutoClient использует свой локальный жесткий диск для области своп- пинга и для кэширования индивидуальной корневой файловой системы и файловой системы /usr из файловых систем некоторого сервера.
А. В состав пяти кластеров конфигурации входят следующие кластеры: поддержки ядра системы, поддержки конечного пользователя, поддержки системы разработчика, полного дистрибутива системы, полного дистрибутива с системой поддержки поставщиков оборудования.
D. Схема разбивки по умолчанию, которая прилагается к инсталляционной программе, позволяет устанавливать корневую файловую систему, файловую систему /usr и область своппинга.
А. Имя физического устройства представляет полное имя маршрута для данного устройства. Файлы физических устройств находятся в каталоге /devices и для них используется следующее соглашение по наименованию устройств:
/devices/sbus@l,f8OOOOOO/esp00,40000/sd@3,0:а
В. Команда sysdef отображает информацию о конфигурации устройств, включая аппаратные средства системы, псевдоустройства, загружаемые модули и выбранные параметры ядра.
В. Поля имени логического устройства cXtYdZ имеют следующий смысл:
сХ Ссылается на номер контроллера SCSI
tY Ссылается на целевой номер шины SCSI
dZ Ссылается на номер диска (это поле всегда имеет значение 0, за исключением дисковых массивов хранения информации)
В. В имени символьного устройства, /dev/rdsk/c0t3d0s0, каталог/rdsk ссылается на файл символьного, или низкоуровневого устройства. Буква "г" в rdsk обозначает слово "raw" ("низкоуровневое").
А. Имя образца представляет ядру сокращенное имя для каждого возможного устройства данной системы. Например, sdO и sdl представляют имена образцов для двух дисковых устройств с интерфейсом SCSI.
А. Имена логических устройств используются большинством команд файловых систем Solaris для ссылки на устройства. Файлы логических устройств из каталога /dev символически ссылаются на файлы физических устройств из каталога /devices.
А. Операционная среда Solaris 8 не может быть инсталлирована через подсеть.
А. Файлы логических устройств из каталога /dev символически ссылаются на файлы физических устройств из каталога /devices.
D. Интерфейсы символьных устройств передают только небольшие объемы данных, по одному символу за один раз. Для файла символьного устройства данные записываются непосредственно надиск, минуя системные буферы ввода-вывода. Буферизацией управляет прикладная программа. Символьный интерфейс ввода вывода используют терминалы, принтеры, плоттеры и устройства хранения информации.
D. Команда installf используется для добавления файла к базе данных инсталляции программного обеспечения, а не для управления пакетами программного обеспечения.
D. Первым этапом инсталляции операционной системы является выполнение полного резервного копирования на магнитную ленту, поскольку процесс инсталляции уничтожит все данные на диске.
В. В состав пяти кластеров конфигурации входят такие кластеры: поддержки ядра системы, поддержки конечного пользователя, поддержки системы разработчика, полного дистрибутива системы, полного дистрибутива с системой поддержки поставщиков оборудования.
А. Пользовательский метод инсталляции JumpStart позволяет автоматически и идентичным образом инсталлировать множество систем с одной и той же конфигурацией без необходимости индивидуально конфигурировать каждую из них.
С. Web Start упрощает создание конфигурационного файла для метода инсталляции JumpStart.
А. Наилучший и рекомендованный метод закрытия системы Solaris реализует команда shutdown.
Глава 4Глава 4
Глава 4
Глава 4
Управление пакетами программного обеспечения
Темы
В настоящей главе рассматривается следующая контрольная тема:
Понимание инструментальных средств управления программным обеспечением
Фирма Sun предоставляет несколько стандартных инструментов для управления программным обеспечением на платформе Solaris. В настоящей главе описаны все инструменты, обеспечивающие решение перечисленных ниже задач:
Добавление и удаление пакетов программного обеспечения
Просмотр списка и контроль инсталлированных пакетов программного обеспечения
Инсталляция и удаление программных заплат
Одна из основных обязанностей системного администратора - это добавление и удаление пакетов программного обеспечения Solaris, в том числе программных заплат. Полное понимание методов и команд, используемых для выполнения указанных задач, является критически важным для администратора.
Содержание
(Введение138
Инструменты для управления программным обеспечением139
Фобавление и удаление пакетов программного обеспечения140
Использование каталога спула141
Фобавление пакетов программного обеспечения с использованием ydmintool142
(удаление пакетов программного обеспечения с использованием54dmtntoo[143
Феестр программных, продуктов Solaris144
Просмотр и проверка инсталлированных_пакетов146
Программные заплаты147
Инсталляция заплаты148
Удаление заплаты150
Общие руководящие принципы151
(Резюме151
Примените ваши знания152
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
Предполагается, что при изучении настоящей главы вы практически, шаг за шагом, выполните приведенные примеры как на вычислительной системе фирмы Sun, так и на вычислительной системе с архитектурой Intel, работающей под управлением операционной системы Solaris. Выполняйте все приведенные примеры шаг за шагом до тех пор, пока не сможете выполнять эти операции по памяти.
Тщательно изучите все инструменты, используемые для управления программным обеспечением на платформе Solaris. Разберитесь, какой из инструментов лучше применить в том или ином конкретном случае.
Разберитесь с терминологией, используемой в настоящей главе для описания того, как фирма Sun упаковывает свое программное обеспечение. Для большего удобства наиболее важные термины перечислены в конце настоящей главы. Многие из этих терминов встретятся вам на реальном экзамене.
Наконец, убедитесь, что вы хорошо понимаете процесс наложения заплат на операционную систему. Обратите особое внимание на то, как получать заплаты, как инсталлировать их и как проверить, какие заплаты были наложены на вашу систему.
Введение
Системный администратор несет ответственность за управление всем инсталлированным программным обеспечением. Инсталляция и удаление программного обеспечения являются типовой задачей, которая выполняется достаточно часто. В главе 3 был описан процесс инсталляции операционной системы Solaris. Настоящая глава объясняет, как добавлять и удалять дополнительные приложения после установки операционной системы.
Фирма Sun и ее сторонние разработчики поставляют программные продукты в виде пакета программного обеспечения. Термин пакет в данном случае относится к методу
распространения и инсталляции программного обеспечения на системах, где эти продукты будут применяться. Пакет программного обеспечения представляет собой набор файлов и каталогов в определенном формате, соответствующем ABI (Application Binary Interface - двоичному интерфейсу прикладных программ), который является дополнением к определению интерфейса System V. Операционная среда Solaris предоставляет набор утилит, интерпретирующих формат ABI и предоставляющих средства для инсталляции или удаления пакета программного обеспечения или для проверки его инсталляции.
Инструменты для управления программным обеспечением
Операционная система Solaris предоставляет инструментальные средства для добавления или удаления программного обеспечения из системы. Эти средства описаны в таблице 4.1. Таблица 4.1 Инструменты для упр^дления прогдэаммйШобеспечениё^
КомандаОписание
Управление программным обеспечением из командной строки
pkgaddДобавляет к системе пакеты программного обеспечения
pkgrmУдаляет из системы пакеты программного обеспечения
pkgchkПроверяет правильность инсталляции пакета программного обеспечения
pkginfoОтображает информацию о пакете программного обеспечения
pkgaskСохраняет ответы в файле ответов таким образом, чтобы они могли
быть автоматически представлены в процессе инсталляции
pkgparamОтображает значения параметров пакета программного обеспечения
Управление программным обеспечением из графического интерфейса пользователя
admintoolВызывается из среды CDE (Common Desktop Environment - общая на
стольных среда) или из среды OpenWindows
Реестр программныхУправляет всеми компонентами вашего программного обеспечения Solaris
продуктов Solaris
(Solaris Product Registry)
Для загрузки или удаления пакетов программного обеспечения используйте команды pkgadd и pkgrm непосредственно из командной строки. Для автоматизации процесса инсталляции программного обеспечения команды pkgadd и pkgrm могут быть включены в сценарии. Многие сторонние поставщики применяют в сценариях команду pkgadd как средство для инсталляции создаваемого программного обеспечения.
С другой стороны, Admintool предоставляет простой в использовании интерфейс для инсталляции и удаления пакетов программного обеспечения. Фактически он представляет собой графический интерфейс пользователя к командам pkgadd и pkgrm. Применение графического интерфейса Admintool - это удобный способ для просмотра уже установленного программного обеспечения или находящегося на инсталляционном носителе. Если вы недостаточно хорошо знакомы с соглашениями по наименованию пакетов програм-
много обеспечения, если вы неуверенно чувствуете себя, работая с опциями командной строки, или если вы каждый раз управляете программным обеспечением только на одной системе, то убедитесь, что Admintool является простым способом для добавления и удаления пакетов программного обеспечения.
Новым в версии Solaris 8 является реестр программных продуктов Solaris (Product Registry), который представляет собой систему для обслуживания записей программных продуктов, инсталлированных в системе Solaris. В состав реестра программных продуктов входит инструмент GUI (Graphical User Interface - графический интерфейс пользователя), существенно упрощающий управление вашим программным обеспечением. Реестр программных продуктов позволяет инсталлировать, просматривать или деинсталлировать пакеты или кластеры программного обеспечения Solaris.
Добавление и удаление пакетов программного обеспечения
Когда вы добавляете пакет программного обеспечения, команда pkgadd распаковывает и копирует файлы с инсталляционного носителя, скажем, с диска CD-ROM, на локальный жесткий диск системы. Файлы применяемых пакетов поставляются в формате пакетов и не могут быть использованы непосредственно.
Команда pkgadd интерпретирует управляющие файлы пакета программного обеспечения, а затем распаковывает файлы программного продукта и инсталлирует их на локальный жесткий диск системы. Перед инсталляцией дополнительного прикладного программного обеспечения следует знать следующие основные положения:
ф Названия пакетов программного обеспечения фирмы Sun всегда начинаются с префикса SUNW, например, SUNWvolr, SUNWadmap и SUNWab2m. Названия пакетов сторонних разработчиков обычно начинаются с префикса, который соответствует фирменным символам данной компании.
ф Для просмотра уже установленного программного обеспечения можно применить команду pkginfo или программу Admintool.
ф Программное обеспечение клиентов может частично размещаться на сервере, а частично - на клиентской машине. В подобных случаях приходится добавлять программное обеспечение как на сервер, так и в систему клиента.
ф Вам необходимо знать, куда будет инсталлировано конкретное программное обеспечение, и при этом следует убедиться, что файловая система имеет требуемое дисковое пространство для хранения этого прикладного программного обеспечения. Если вам известно наименование программного пакета, можно воспользоваться командой pkgparam, чтобы определить, куда будет загружен данный пакет. Например, для получения информации о пакете SUNWvolr, введите следующую командную строку:
pkgparam -d /cdrom/cdromO/sO/Solaris_2.8/Product SUNWvolr SUNW_PKGTXPE
SUNW_PKGTYPE -это специальный параметр, сообщающий, куда будет инсталлирован пакет программного обеспечения Solaris. Если в конкретном пакете параметр SUNWPKGTYPE не установлен, pkgparam возвращает пустую строку. Для пакетов программного обеспечения фирмы Sun это обозначает, что данный пакет будет инсталлирован в каталог /opt.
Не всегда можно сказать, какое значение имеет идентификатор (pkgid) конкретного пакета программного обеспечения или приложения до тех пор, пока этот пакет или приложение не будет действительно инсталлировано. Иногда сопроводительная документация, поставляемая вместе с пакетом, содержит его идентификатор. В других случаях для получения информации об идентификаторе конкретного пакета программного обеспечения или приложения требуется связаться с поставщиком.
Система сообщает местоположение, где будет сохранено данное приложение:
root
Хотя команды pkgadd и pkgrm не направляют свою выходную информацию в стандартное местоположение, они контролируют, инсталлирован или удален данный программный продукт. Команды pkgadd и pkgrm сохраняют информацию о пакете, который был инсталлирован или удален, в базе данных программных продуктов. При обновлении этой базы данных команды pkgadd и pkgrm ведут учет всех программных продуктов, инсталлированных на данной системе.
ПРЕДУПРЕЖДЕНИЕ‘
Когда вы удаляете какой-нибудь пакет, команда pkgrm удаляет все файлы, связанные с данным пакетом, если только эти файлы не используются совместно с другими пакетами. Если файлы используются еще и другим пакетом, вы получите предупреждение от системы, что другие пакеты также используют эти файлы, и запрос о том, хотите ли вы, несмотря ни на что, удалить их. Удаляйте прикладное программное обеспечение только с помощью команды pkgrm. Некоторые системные администраторы удаляют какое-нибудь приложение просто путем удаления каталога, содержащего это программное обеспечение. При использовании такого метода файлы, относящиеся к данному приложению и находящиеся в других каталогах, упускаются из виду. Применяя команду pkgrm, вы сможете гарантированно удалить все файлы, имеющие отношение к данному пакету.
Использование каталога спула
Для удобства вы можете скопировать часто инсталлируемые пакеты программного обеспечения в какой-нибудь каталог спула. Если вы копируете пакеты в принятый по умолчанию каталог спула, /var/spool/pkg, то при использовании команды pkgadd вам нет необходимости определять исходное местоположение данного пакета. По умолчанию команда pkgadd будет в поисках любого пакета, определенного в командной строке, обращаться в каталог /var/spool/pkg.
ПРИМЕЧАНИЕ„.
Копирование пакетов в каталог спула - это не то же самое, что инсталляция пакетов в систему.
..1Ца(|^^агоМ://^^^';. " // .
Добавление пакета в каталог спула
Чтобы добавить пакет в каталог спула по имени /var/spool/pkg, выполните следующие действия:
Зарегистрируйтесь в системе как суперпользователь.
Убедитесь, что каталог спула существует.
Добавьте пакет программного обеспечения в каталог спула с помощью команды pkgadd:
pkgadd -d <device-name> -s <spooldir> <pkgid> где
опция -d <device-name> определяет абсолютный маршрут к данному программному пакету; <device-name> может быть маршрутом к устройству, произвольному каталогу или каталогу спула.
опция -s <spooldir> определяет имя каталога спула, в который будет помещен данный пакет программного обеспечения. Вы должны определить значение <spooldir> - имя каталога, в который будет помещено данное программное обеспечение.
необязательный аргумент <pkgid> задает имя одного или имена нескольких пакетов, разделенные пробелами, которые должны быть добавлены в каталог спула. Если этот аргумент опущен, команда pkgadd копирует все доступные пакеты.
С помощью команды pkginfo проверьте, что пакет был скопирован в каталог спула:
pkginfo -d <spooldir> | grep <pkgid>
Команда pkginfo будет возвращать строку информации о пакете, если он был должным образом скопирован в каталог спула. Если данная команда возвращает пустую строку, это означает, что пакет не был успешно скопирован в каталог спула.
Ниже приведен пример того, как скопировать пакет программного обеспечения:
pkgadd -d /cdrom/sol_8_sparc/sO/Solaris_8/Product -s /var/spool/\ pkg SUNWaudio
Transferring <SUNWaudio> package instance
pkginfo -d /var/spool/pkg system SUNWaudio Audio/ applications
Добавление пакетов программного обеспечения с использованием Admintool
Настоящий раздел описывает порядок добавления пакетов программного обеспечения с использованием Admintool.
Шаг за шагом
Инсталляция дополнительного прикладного программного обеспечения с использованием Admintool
Процедура инсталляции дополнительного прикладного программного обеспечения с использованием Admintool выглядит следующим образом:
Зарегистрируйтесь в системе как суперпользователь и запустите Admintool, для чего введите команду admintool.
Рисунок 4.1. Главное меню Users.Рисунок 4.1. Главное меню Users.На экране появляется главное меню Users, как показано на рисунке 4.1.
Рисунок 4.1. Главное меню Users.
Рисунок 4.1. Главное меню Users.
Выберите Browse, Software. Появляется окно Software, показанное на рисунке 4.2.
Выберите Edit, Add. На экране появляется окно Set Source Media, как показано на рисунке 4.3.
Задайте маршрут к носителю с инсталляционным программным обеспечением. Маршрут по умолчанию задает каталог, к которому монтируется компактдиск SPARC Solaris CD, используемый для инсталляции приложения. Щелкните кнопку ОК для отображения на экране окна Add Software, показанного на рисунке 4.4.
В разделе Software окна Add Software щелкните кнопку, соответствующую программному обеспечению, которое вы хотите инсталлировать. После выбора всех необходимых пакетов щелкните кнопку Add.
Для каждого инсталлируемого пакета возникает окно, отображающее вывод процесса инсталляции. После завершения инсталляции обновляется окно Software, теперь оно отображает только что добавленные пакеты.
РисуНОК 4.2. Окно Software.РисуНОК 4.2. Окно Software.Рисунок 4.3. Окно Set Source Media.Рисунок 4.3. Окно Set Source Media....Whr«w«rt»rfM ’jai*i^gf4eH4^№****»*wb s ** *'**•|..>4Nw#GXWi*»agiWW*lytWuw^ . .•"J,рКМ^МЯХ вb"»5e4,. лвмзй 1’...Whr«w«rt»rfM ’jai*i^gf4eH4^№****»*wb s ** *'**•|..>4Nw#GXWi*»agiWW*lytWuw^ . .•"J,рКМ^МЯХ вb"»5e4,. лвмзй 1’РисуНОК 4.4. Окно Add Software.РисуНОК 4.4. Окно Add Software.Удаление пакетов программного обеспечения с использованием Admintool
РисуНОК 4.2. Окно Software.
РисуНОК 4.2. Окно Software.
Рисунок 4.3. Окно Set Source Media.
Рисунок 4.3. Окно Set Source Media.
...Whr«w«rt»rfM ’
jai*i^gf4eH4^№****»*wb s ** *'**•
|..>4Nw#GXWi*»agiWW*lytWuw^ . .•"J
,рКМ^МЯХ вb
"»5e4,. лвмзй 1’
...Whr«w«rt»rfM ’
jai*i^gf4eH4^№****»*wb s ** *'**•
|..>4Nw#GXWi*»agiWW*lytWuw^ . .•"J
,рКМ^МЯХ вb
"»5e4,. лвмзй 1’
РисуНОК 4.4. Окно Add Software.
РисуНОК 4.4. Окно Add Software.
Для удаления пакетов программного обеспечения с использованием Admintool выполните описанные ниже процедуры.
-Шаг за шагом .:
Удаление прикладного программного обеспечения
Процедура удаления прикладного программного обеспечения выполняется следующим образом:
Запустите Admintool, если она еще не была запущена, и выберите Browse. Software. Открывается окно Software, как показано на рисунке 4.5.
Выберите пакет программного обеспечения, который вы хотите удалить, а затем Edit, Delete. Появляется сообщение, запрашивающее подтверждение на удаление выбранного программного обеспечения (см. рисунок 4.6).
Рисунок 4.5. Окно Software.Рисунок 4.5. Окно Software.AdminiDol: WarningAdminiDol: Warning;. Do ywirtolly wapt to Delete thO,rp«owmg software? if '2,.,-; - suNwthM-: .
Рисунок 4.5. Окно Software.
Рисунок 4.5. Окно Software.
AdminiDol: Warning
AdminiDol: Warning
, Delete j, . . j toncelj
Рисунок 4.6. Подтверждение удаления выбранного программного обеспечения.
Для каждого удаляемого пакета возникает окно, в котором запрашивается подтверждение перед удалением данного программного обеспечения. В ответ введите у, п или q. Если вы выбрали удаление, в окне отобразится вывод данного процесса удаления.
Реестр программных продуктов Solaris
Реестр программных продуктов Solaris позволяет выполнять следующие операции:
ф Просмотр списка инсталлированного и зарегистрированного программного обеспечения, а также некоторых его атрибутов
Ф Поиск и запуск программы-инсталлятора
Ф Инсталляция дополнительных программных продуктов
Ф Деинсталляция программного обеспечения
Основное различие между реестром программных продуктов и другими инструментами заключается в том, что этот реестр был разработан с целью обеспечения совместимости с более новыми мастерами инсталляции и методом инсталляции Web Start 3.0.
Для запуска реестра программных продуктов Solaris введите следующую команду:
/usr/bin/prodreg
Возникает окно реестра программных ■ продуктов, что показано на рисунке 4.7.
РИСУНОК 4.7. Окно Solaris Product Registry.РИСУНОК 4.7. Окно Solaris Product Registry.Для просмотра содержимого системного реестра выполните двойной щелчок левой кнопкой мыши на изображении папки слева от наименования System Registry. Реестр развернется, и в окне будет показано его содержимое. Щелкните любую папку в перечне для получения более подробной ин-формации о соответствующем пакете. Если щелкнуть папку System Registry, показанную на рисунке 4.7, а затем - DiskSuite 4.2.1, появится информация, представленная на рисунке 4.8.
РИСУНОК 4.7. Окно Solaris Product Registry.
РИСУНОК 4.7. Окно Solaris Product Registry.
8pHwere.tttieeDtf'tn6of»rt«flegi«tiy. •P О «лит <ew<y "" "%► П Solaria 4 l«Г I8pHwere.tttieeDtf'tn6of»rt«flegi«tiy. •P О «лит <ew<y "" "%► П Solaria 4 l«Г IРисуНОК 4.8. System Registry: информация о пакете DiskSuite.РисуНОК 4.8. System Registry: информация о пакете DiskSuite.t Oew»»»^.^frQoui »C33NMe «*12364 ве*QLiwUegmde *.0 3*"oowe oe»™™t Oew»»»^.^frQoui »C33NMe «*12364 ве*QLiwUegmde *.0 3*"oowe oe»™™b*NW№b*NW№f . **м*«.4магаиММИмх 1f . **м*«.4магаиММИмх 1ТВЫИ»»ЗМИШ!»Аи. •* 4$*» Ewy Лесе* .Sww 1,6 'ТВЫИ»»ЗМИШ!»Аи. •* 4$*» Ewy Лесе* .Sww 1,6 '
8pHwere.tttieeDtf'tn6of»rt«flegi«tiy. •P О «лит <ew<y "" "%
► П Solaria 4 l«Г I
8pHwere.tttieeDtf'tn6of»rt«flegi«tiy. •P О «лит <ew<y "" "%
► П Solaria 4 l«Г I
РисуНОК 4.8. System Registry: информация о пакете DiskSuite.
РисуНОК 4.8. System Registry: информация о пакете DiskSuite.
t Oew»»»^.^
frQoui »C33NMe «*12364 ве
*QLiwUegmde *.0 3*"oowe oe»™™
t Oew»»»^.^
frQoui »C33NMe «*12364 ве
*QLiwUegmde *.0 3*"oowe oe»™™
b*NW№
b*NW№
f . **м*«.
4магаиММИмх 1
f . **м*«.
4магаиММИмх 1
ТВЫИ»»ЗМИШ!»Аи. •
* 4$*» Ewy Лесе* .Sww 1,6 '
ТВЫИ»»ЗМИШ!»Аи. •
* 4$*» Ewy Лесе* .Sww 1,6 '
• 4 oeecwrriow Vmtfiw M|M9*IMH. О** Mremuy| * kovpoeew sv*t блеклее abbreviations
( : HNSr ALL LOCATION FLAGS >
f ^INSTALLATION SOURCE, cd Sown f«*> A«< кЛммемосес abbreviation, tun ami uiriwuaa ..^JjggfrMAMAPW F'"$ IJMMSTAU...^.^
•i VMMMflUAMulML.
Помимо вывода информации обо всех инсталлированных на вашей системе продуктах, реестр программных продуктов Solaris следует применять для проверки их целостности. Выполните описанные ниже операции для просмотра перечня инсталлированного программного обеспечения. Увидев пакет, который вы хотите проверить, щелкните его имя в окне под названием Software Installed. Если весь программный продукт или его часть пропущена (потеряна), то после атрибута Installed From отображается сообщение Missing files in one or more components.
Инсталляция программного обеспечения с использованием реестра программных продуктов Solaris
Для инсталляции программного обеспечения с использованием реестра програм-мных продуктов Solaris выполните следующие операции:
Зарегистрируйтесь в системе как суперпользователь.
Вставьте в привод CD-ROM диск, содержащий программное обеспечение, которое вы хотите добавить в данную систему. Когда вы вставите компактдиск, Volume Manager (менеджер томов) автоматически смонтирует этот диск.
Запустите реестр программных продуктов Solaris, как было описано выше в
4.4.5.5.6.6.настоящем разделе.Щелкните кнопку New Install в нижней части окна Solaris Product Registry. Возникает диалоговое окно Select Installer, которое изначально указывает на каталог /cdrom.Когда вы найдете интересующую вас программу-инсталлятор, щелкните ее имя в окне Files, а затем щелкните кнопку ОК.Запускается выбранный вами инсталлятор. Следуйте его указаниям для инсталляции программного обеспечения.настоящем разделе.Щелкните кнопку New Install в нижней части окна Solaris Product Registry. Возникает диалоговое окно Select Installer, которое изначально указывает на каталог /cdrom.Когда вы найдете интересующую вас программу-инсталлятор, щелкните ее имя в окне Files, а затем щелкните кнопку ОК.Запускается выбранный вами инсталлятор. Следуйте его указаниям для инсталляции программного обеспечения.
4.
4.
5.
5.
6.
6.
настоящем разделе.
Щелкните кнопку New Install в нижней части окна Solaris Product Registry. Возникает диалоговое окно Select Installer, которое изначально указывает на каталог /cdrom.
Когда вы найдете интересующую вас программу-инсталлятор, щелкните ее имя в окне Files, а затем щелкните кнопку ОК.
Запускается выбранный вами инсталлятор. Следуйте его указаниям для инсталляции программного обеспечения.
настоящем разделе.
Щелкните кнопку New Install в нижней части окна Solaris Product Registry. Возникает диалоговое окно Select Installer, которое изначально указывает на каталог /cdrom.
Когда вы найдете интересующую вас программу-инсталлятор, щелкните ее имя в окне Files, а затем щелкните кнопку ОК.
Запускается выбранный вами инсталлятор. Следуйте его указаниям для инсталляции программного обеспечения.
Вы также можете воспользоваться реестром программных продуктов Solaris для удаления программного обеспечения, выполняя следующие операции:
СОа^за шагом '’’-.
Деинсталляция программного обеспечения с использованием реестра программных продуктов Solaris
Для деинсталляции программного обеспечения перейдите в окно Solaris Product Registry и выполните следующие операции:
Щелкните папку System Registry в окне Software Installed, а затем щелкните имя пакета программного обеспечения, который хотите удалить. Прочтите атрибуты программного обеспечения, чтобы убедиться, что это именно тот пакет, который вы хотите деинсталлировать.
Щелкните кнопку Uninstall <software_product_name> (с именем выбранного продукта) в нижней части окна Solaris Product Registry. Выбранный программный продукт деинсталлируется.
Просмотр и проверка инсталлированных пакетов
Вы можете в любое время воспользоваться реестром программных продуктов Solaris, инструментом Admintool или выдать из командной строки команду pkginfo для получения полного перечня программного обеспечения, инсталлированного в системе. Графический пользовательский интерфейс реестра программных продуктов будет отображать информацию об инсталлированном программном обеспечении, которая была описана в предыдущем разделе и продемонстрирована на рисунке 4.8. Окно Software из Admintool отображает все инсталлированное программное обеспечение, когда вы выбираете Browse, Soft
ware (см. рисунок 4.9).
»• |M8><1»• |M8><1
»• |M8>
<1
»• |M8>
<1
йж wpiteitriw ЗА i Axfco «*= pro*?»»t3.6.i ArteFS,- XRw>-5 »?/Swwie ■ ■йж wpiteitriw ЗА i Axfco «*= pro*?»»t3.6.i ArteFS,- XRw>-5 »?/Swwie ■ ■
йж wpiteitriw ЗА i Axfco «*= pro*?»»t3.6.i ArteFS,- XRw>-5 »?/Swwie ■ ■
йж wpiteitriw ЗА i Axfco «*= pro*?»»t3.6.i ArteFS,- XRw>-5 »?/Swwie ■ ■
То/й» 6.7/GenericТо/й» 6.7/GenericРисунок 4.9. Окно Software.Рисунок 4.9. Окно Software.feet P*rtbeiLwi*e<6.5.<".,:-^r.; r*jeeie1feet P*rtbeiLwi*e<6.5.<".,:-^r.; r*jeeie1
То/й» 6.7/Generic
То/й» 6.7/Generic
Рисунок 4.9. Окно Software.
Рисунок 4.9. Окно Software.
feet P*rtbeiLwi*e<6.5.<".,:-^r.; r*
jeeie1
feet P*rtbeiLwi*e<6.5.<".,:-^r.; r*
jeeie1
<4 Г
..xC№ 4им£«р»г •*#» Mtw 1.3 < «<•«•* W” 4Д
-iy«8.b»4Vee*:8e€t*R*4:a.-. •',>tesxioF8
•■-A^tlf.BeirUon <W)tiitiaW 1.3■ CX .HEUt*UHilMK-i,3
Itotl.- spwtte
На рисунке 4.10 показана работа команды pkginfo, выданной из командной строки вместе с командой more, что позволяет выводит информацию по одной странице за один раз.
Рисунок 4.10. Вывод команды pkginfo.
* bkginfo Imore apolIcation HPNP systemsuNWatam
JfitAdmln for Unix
Solaris Documentation server Lookup
8
system
SUWab/r
Solaris Documentation Server
system
5UNWab2s
Solaris Documentation Server
system
SUWdb2u
Solaris Documentation Server
3
system
SUWd.CC r
System Accounting, (Root)
system
SUWacCu
System Accounting. (Usr)
system
suwadmao
system administration applications
system
SUNWadmc
System administration core libraries
^vstpm
SuNwacmfw
System a Network Administration Fr&mrwork
system
suwadinr
System a Network Administration Root
V;
system
Suwapper
ppp/IF asynchronous Ppp daemon conftguratton fll
system
SUNWapppu
PPP/IP Asynchronous PPP daemon ana PPP login set-
system
SUWarc
Archive Libraries
system
SUW&st
Automated Security Enhancement Tools
system
SUNWatfsr
AutOrS. (Root)
system
SUWatfsu
AUtoFS. (USr)
SU Wane to
Audio applications
system
SUWaudmo
Audio demo programs
system
SUNWbCp
SunOS 4.x Binary Compatibility
system еме
SUNVibnur
Networking UUCP Utilities, (Root)
ft
В таблице 4.2 представлены некоторые файлы и каталоги,.используемые для управления пакетами программного обеспечения.
Т9Мца<2 .<PawH<t9W9!№i^4W. -
Имя файла или каталога Описание
/var/sadm/install/contents Таблица пакетов программного обеспечения для полной системы. Этот файл информирует о каждом компоненте программного обеспечения: принятый по умолчанию уровень его полномочий, пакет, к которому он принадлежит.
/opt/<pkgname>Предпочтительное местоположение для инсталляции нестандартных
пакетов, поставляемых отдельно от системы. .
/etc/opt/<pkgname>Предпочтительное местоположение для файлов регистрации из нестан
дартных пакетов.
Программные заплаты
Еще одной задачей системного управления является "наложение" заплат на программное обеспечение системы. Заплата - это решение некоторой обнаруженной проблемы в программном обеспечении. Фирма Sun будет поставлять пользователям несколько программных заплат, чтобы такие проблемы могли быть разрешены до появления следующего выпуска программного обеспечения. Существующее программное обеспечение получается из пакета определенного формат, соответствующего требованиям интерфейса ABI.
Заплаты идентифицируются с помощью уникальных алфавитно-числовых строк. Вначале идет базовый код заплаты, далее - символ дефиса, затем - некоторое число, которое представляет собой номер выпуска заплаты. Например, заплата 110453-01 - это заплата операционной системы Solaris 8 для исправления возникшей в Admintool проблемы.
У вас может возникнуть желание узнать больше о заплатах, которые были установлены ранее. В таблице 4.3 показаны команды, которые предоставляют полезную информацию о заплатах, уже установленных на некоторой системе.
pkgparam <pkgid> PATCHLIST
Показывает все заплаты, наложенные на пакет с идентификатором pkgid.
pkgparam <pkgid> PATCH INFO
<patch-number>
Показывает дату инсталляции и имя сетевого узла (машины), с которого была наложена данная заплата. Аргумент <pkgid> - это имя пакета (например, SUNWadmap), a <patch-number> - это номер конкретной заплаты.
patchadd -R client_root_path -p
Показывает все заплаты, наложенные на некоторую клиентскую машину с консоли сервера.
Таблица 4.3 Полезные команды для реал изации заплат
КомандаФункциональное назначение
showrev -р
Показывает все заплаты, наложенные на систему.
patchadd -р
Показывает все заплаты, наложенные на систему.
patchrm <patchname>
Удаляет заданную заплату. Аргументт <patchname> - это имя заплаты, подлежащей удалению.
Инсталляция заплаты
Пользователи фирмы Sun могут получить доступ к заплатам защиты информации или другим рекомендуемым заплатам через World Wide Web или через FTP с анонимным доступом. Клиенты фирмы Sun, которые заключили контракт на сервисное обслуживание, могут получить доступ к расширенному набору заплат и полной базе данных, информирующей о заплатах. Эта информация также доступна через World Wide Web или через FTP с анонимным доступом, кроме того, она регулярно распространяется на дисках CD-ROM.
Подробная информация о том, как инсталлировать и удалять заплату, обычно содержится в файле Install.info, поставляемом с каждой заплатой. Кроме того, каждая заплата содержит файл README, содержащий конкретную информацию по заплате.
Заплаты поставляются в трех различных форматах. Заплаты операционной системы Solaris 8 поставляются в zip-формате, например, 104945-02.zip. Поэтому в операционной системе Solaris 8 для извлечения файлов заплат из архива следует использовать команду unzip, как показано в приведенном ниже примере:
/usr/bin/unzip 104945-02.zip
Для версии 2.6 и более ранних версий заплаты могут поставляться в сжатом tar-формате, например, 104945-02.tar.Z. Используйте команду zcat для распаковки данного типа файла заплаты и команду tar для создания каталогов данной заплаты, как показано ниже:
/usr/bin/zcat 104945-02.tar.Z | tar xvf -
Другие заплаты Solaris могут поставляться в виде tar-файлов, сжатых с помощью программы gzip, например, 104945-02.tar.gz, Для извлечения сжатого с помощью программы gzip файла из tar-архива используйте команду gzcat, которая распакует данный тип файла и создаст каталоги заплаты, что и показано ниже:
/usr/bin/gzcat 104945-02.tar. gz | tar xvf
Для инсталляции заплат, имеющих формат каталогов, в системе Solaris 8 применяется команда patchadd. Она должна запускаться суперпользователем, а ее синтаксис имеет следующий вид:
patchadd [-d] [-u] [-В backout_dir}
Команда patchadd описана в таблице 4.4.
Общая опция
Описание
-d
Не создает резервных копий файлов, на которые накладывается заплата. Причем, заплата не может быть удалена, если при ее инсталляции применялась эта опция. По умолчанию команда patchadd сохраняет копии всех обновляемых файлов таким образом, чтобы данная заплата могла быть удалена в случае необходимости. Не используйте опцию -d, если данная заплата не прошла тестирование с положительными результатами.
-Р
Отображает список наложенных в настоящее время заплат.
-и
Инсталлирует данную заплату безусловным образом, отключив проверку достоверности. Заплата инсталлируется даже в том случае, если некоторые из файлов, на которые будет накладываться данная заплата, были изменены со времени их исходной инсталляции.
-В <backout_dir>
Сохраняет данные, возвращающие к исходному состоянию, в каталоге, отличном от каталога базы данных пакета. Задавайте <backout_dir> как абсолютное имя маршрута.
Продолжение таблицы 4.4
Общая опцияОписание
М <patch_dir> <patch_id> Определяет заплаты, которые будут инсталлированы. С помощью опилиции - М задавайте местоположение каталога заплаты и ее номер, зада-
М <patch_dir> <patch_frle Н$1>вайте атрибут <patch_dir> как абсолютное имя маршрута к каталогу, содержащему буферизованные заплаты. Задавайте <patch_id> как номер данной заплаты. Вы также можете задать несколько атрибутов <patch_id> путем задания параметра <patch_file list> как имени файла, содержащего заплаты, которые будут инсталлированы. Далее в настоящем разделе приведен пример на рассмотренный случай.
R <client_root_path>Помещает все файлы заплат, сгенерированные командой patchadd, в ка
талог <client_root_path>. Этот каталог содержит загружаемую корневую файловую систему клиента сточки зрения сервера. Задавайте данное имя <client_root_path> как абсолютное имя маршрута к началу дерева каталогов, под которым будут размещены все файлы заплат, сгенерированные командой patchadd. Пример смотрите далее в настоящем разделе.
Приведенные ниже примеры демонстрируют процесс добавления заплат к вашей вычислительной системе. Однако прежде, чем вы инсталлируете заплаты, необходимо высказать одно предупреждение. Как говорит личный опыт и закон Мерфи, кое-что может "пойти не туда". Поскольку с помощью заплаты вы модифицируете операционную систему, настоятельно рекомендуется перед загрузкой заплат выполнить резервное копирование системы. Хотя эта работа может потребовать больших затрат времени и показаться не очень нужной, не забывайте, что авария электропитания в процессе инсталляции заплаты способна полностью разрушить файловые системы. Бывает и так, что сценарий инсталляции заплаты окажется дефектным и заплата загрузится некорректно. Если своевременно не выполнить резервного копирования, придется полностью переинсталлировать операционную систему.
. \ ПРИМЕЧАНИЕ.
Дополнительные опции команды patchadd, связанные с защитой информации, можно найти на страницах оперативного руководства по операционной системе Solaris.
В приведенном ниже примере демонстрируется инсталляция заплаты на автономной системе:
patchadd /var/spool/patch/104945-02
В этом примере демонстрируется инсталляция нескольких заплат. Аргумент patchlist указывает файл, содержащий перечень заплат, подлежащих инсталляции:
patchadd -М /var/spool/patch patchlist
В следующем примере демонстрируется инсталляция нескольких заплат на клиентскую систему, имеющую имя clientl:
patchadd -R /export/root/clientl -p
Когда вы инсталлируете заплату, команда patchadd копирует файлы из каталога заплаты на локальный диск системы. А если более конкретно, то команда patchadd выполняет две операции:
Определяет номер версии операционной системы Solaris на управляющей и на целевой машинах.
$> Обновляет файл pkginfo из пакета данной заплаты, добавляя к нему информацию о заплатах, которые устарели из-за инсталляции текущей, о других заплатах, которые требуются для данной заплаты, и о заплатах, которые несовместимы с данной заплатой.
Команда patchadd не будет инсталлировать заплату в следующих случаях:
$> Пакет не полностью инсталлирован на машине.
$> Архитектура заплаты отличается от системной архитектуры.
$> Версия заплаты не соответствует версии инсталлированного пакета.
$> Уже существует заплата с тем же самым базовым кодом и с более поздним номером версии.
$> Данная заплата не совместима с другой, ранее инсталлированной. Каждая инсталлированная заплата сохраняет эту информацию в собственном файле pkginfo.
$> Инсталлируемая заплата требует наличия другой заплаты, которая не инсталлирована.
Удаление заплаты
Иногда заплата работает не так, как планировалось, и должна быть удалена из системы. Утилита patchrm, применяемая для удаления некоторой заплаты или для "возврата в исходное состояние" ("back out of), описана в таблице 4.5. Синтаксис этой команды имеет следующий вид:
patchrm [-f] [-В backout_dir]
Общие опцииОписание
fПринудительно удаляет заплату независимо от того, была ли данная
заплата подавлена другой заплатой.
В backout_dirУдаляет заплату, данные возврата к исходному состоянию которой были
сохранены в некотором каталоге, отличающемся от каталога базы данных пакета. Эта опция необходима только в том случае, если каталог возврата к исходному состоянию, предоставленный команде patchadd во время инсталляции, был перемещен. Задавайте аргумент backout_dir как абсолютное имя маршрута.
В приведенном ниже примере демонстрируется удаление заплаты на автономной системе:
patchrm 104945-02
Команда patchrm удаляет пакет заплаты из операционной системы Solaris 8 и восстанавливает сохраненные ранее файлы, возвращая данную файловую систему в состояние, которое она имела до того, как была наложена заплата, если только не выполняется одно из четырех условий, приведенных ниже:
$> Заплата была инсталлирована с опцией -d. Эта опция указывает команде patchadd не сохранять копии обновляемых или заменяемых файлов.
$> Заплата устарела после наложения более поздней заплаты.
$> Данная заплата требуется для другой заплаты, которая инсталлирована на данной вычислительной системе.
$> Команда patchrm вызывает pkgadd для восстановления пакетов, сохраненных при первоначальной инсталляции заплаты.
Общие руководящие принципы
Некоторые пакеты программного обеспечения не соответствуют требованиям интерфейса ABI; следовательно, они не могут быть инсталлированы с использованием инструмента Admintool или команды pkgadd. Для инсталляции программных продуктов, обеспечение которых не соответствует требованиям интерфейса ABI, следуйте конкретным указаниям от поставщика по инсталляции данного продукта. Ниже приведено несколько дополнительных руководящих принципов, которых следует придерживаться при инсталляции нового программного обеспечения:
$> Будьте всегда особенно осторожны при работе с пакетами сторонних разработчиков или со свободно копируемыми программами. Убедитесь, что данное программное обеспечение было протестировано и свободно от вирусов перед тем, как инсталлировать его на рабочую систему.
$> Убедитесь, что данный пакет программного обеспечения работает под Solaris 8.
$> Обязательно прочтите специальные инструкции по загрузке, которые содержатся в замечаниях поставщика к данному выпуску программного обеспечения. В этих инструкциях могут содержаться сведения о параметрах, которые должны быть модифицированы, или рекомендуемых заплатах для программного обеспечения, которые должны быть наложены.
$> Не инсталлируйте заплаты, если на это нет прямых указаний от фирмы Sun или от вашего поставщика программного обеспечения. Некоторые заплаты не проходят тщательного тестирования, особенно когда они используются совместно с другими заплатами. В результате могут возникнуть нежелательные проблемы с производительностью вычислительной системы.'
ПРИМЕЧАНИЕ
Для кажцого выпуска программного обеспечения фирма Sun обычно имеет некоторый набор заплат, предварительно собранный в пакет, который называется "Recommended and Security Patches" ("Рекомендуемые и безопасные заплаты"). Эти заплаты проходят тщательное тестирование, и фирма Sun рекомендует добавлять их в кажаую систему после завершения инсталляции исходного программного обеспечения.
Добавление и удаление пакетов программного обеспечения является одной из наиболее простых задач, с которыми вы столкнетесь, занимаясь системным администрированием. Как и для любого компьютерного программного обеспечения, вы должны, прежде всего, загрузить новые пакеты программного обеспечения или заплаты на нерабочую систему в целях их тестирования. Только после того, как данное программное обеспечение будет тщательно протестировано, вы можете инсталлировать его на рабочую систему.
Резюме
В настоящей главе описаны вопросы управления пакетами программного обеспечения. Вначале были изложены методы, которые фирма Sun использует для упаковки ее стандартного и нестандартного программного обеспечения. Затем описываются инструменты и методы, используемые для инсталляции, проверки и удаления этих пакетов программного обеспечения в системе Solaris.
Кроме этого, было отмечено, что выявленные иногда недостатки программного обеспечения приходится исправлять. Вы изучили, как получить, инсталлировать и, в случае необходимости, деинсталлировать заплаты для программного обеспечения.
В главе 11 будет описано, как создавать резервную копию на магнитной ленте всего, что было установлено. Надлежащим образом выполненная копия позволит вам сэкономить время в случае возникновения какого-нибудь отказа аппаратных средств системы. При помощи такой резервной копии вы сможете избежать повторного выполнения всех операций, связанных с инсталляцией пакетов программного обеспечения и созданием учетных записей пользователей системы.
В последующих главах описываются процессы конфигурирования некоторых пакетов программного обеспечения, которые следует инсталлировать, таких как служба печати LP (глава 10), NFS (глава 17), NIS (глава 18), пакет Solstice AdminSuite (глава 19) и CDE (приложение В).
Ключевые термины
Пакет программного обеспечения
Заплата для программного обеспечения
Каталог спула программного обеспечения
Стандартный пакет программного обеспечения
Нестандартный пакет программного обеспечения
Сжатый tar-файл
Файл списка заплат для программного обеспечения
Примените ваши знания
Управление пакетом программного обеспечения
Настоящее упражнение проведет вас через процесс инсталляции, проверки и удаления программного обеспечения под управлением операционной системы Solaris с использованием командной строки.
Оцениваемое время: 20 минут
Выведите список пакетов программного обеспечения, которые в настоящее время инсталлированы на вашей системе, для чего введите следующую команду:
pkginfo
Выведите на экран информационный листинг в длинном формате для пакета SUNWman, инсталлированного на вашей системе.
pkginfo -1 SUNWman
Какие значения, выведенные в этом листинге, используются данным пакетом в качестве статуса, даты инсталляции, количества файлов и блоков?
Удалите пакет SUNWdoc из вашей системы:
pkgrm SUNWdoc
Проверьте, что данный пакет программного обеспечения действительно был удален, для чего повторите первый пункт настоящих упражнений.
А теперь вам предстоит повторно инсталлировать пакет программного обеспечения. Зарегистрируйтесь как суперпользователь и вставьте инсталляционный
Глава 4. Управление пакетами программного обеспечения 1JJ Примените ваши знания
компакт-диск Solaris 8 в привод CD-ROM. Воспользуйтесь командой pkgadd для помещения пакета SUNWdoc в область спула, принятую по умолчанию, для чего введите следующую командную строку:
pkgadd -d /cdrom/sol_8_u3_sparc/sO/Solaris_8/Product -s /var/ \ pool/pkg SUNWdoc
Воспользуйтесь следующей командой для проверки наличия пакета SUNWdoc в области спула:
pkginfo -d /var/spool/pkg
Понаблюдайте за выводимыми на экран сообщениями и проверьте, что данный пакет включен в каталог спула /var/spool/pkg.
Повторно инсталлируйте пакет программного обеспечения SUNWdoc из области спула:
pkgadd
Когда появится соответствующее приглашение, выберите пакет SUNWdoc; пакет будет повторно инсталлирован.
Для удаления пакета SUNWdoc из области спула введите следующую командную строку:
pkgrm -s /var/spool/pkg
Выберите пакет SUNWdoc, и этот пакет будет удален из каталога спула.
Теперь вы можете воспользоваться командой pkgchk для проверки завершения инсталляции, имени маршрута, файлового содержимого и атрибутов файлов пакета SUNWdoc:
pkgchk SUNWdoc.
Обзорные вопросы
Какие из перечисленных ниже команд используются для получения информации о пакете программного обеспечения?
pkgadd
pkgchk
pkgparam
pkginfo
Какие из перечисленных ниже команд используются для проверки правильности инсталляции пакета программного обеспечения?
pkgadd
pkgchk
pkgask
pkginfo
Какие из перечисленных ниже методов используются для удаления пакетов программного обеспечения из системы?
pkgrm
rm -г
Admintool
Все вышеперечисленное
С чего обычно начинается имя пакета программного обеспечения?
С аббревиатуры пакета программного обеспечения
С фирменного знака компании-разработчика пакета
SUNW
С чего угодно по выбору поставщика данного пакета программного обеспечения
Какие из перечисленных ниже команд используются для подготовки сжатого tar- файла заплаты (с расширением имени ".Z") к инсталляции и позволяют сэкономить приблизительно 25% временно используемого дискового пространства?
' installpatch-u 104945-02 .tar.Z
installpatch -f 104945-02.tar.Z
/usr/bin/zcat 104945-02.tar.Z | tar xvf -
unzip 104945-02.tar.Z | tar xvf -
Какие из перечисленных ниже команд используются для отображения всех заплат, наложенных на систему? Выберите все применимые команды.
patchadd -р
pkginfo
showrev -р
Все вышеперечисленные
Какие из перечисленных ниже команд используются для удаления заплаты?
A. uninstall
pkgrm -s■
patchrm
D. rm -г
В каких формах фирма Sun осуществляет распространение заплат для программного обеспечения? Выберите все применимые формы.
Через FTP-сайт фирмы Sun
С помощью электронной почты
На диске CD-ROM
На магнитной ленте
Какие из перечисленных ниже задач могут быть решены с использованием реестра программных продуктов Solaris? Выберите все возможное.
Просмотр перечня инсталлированного программного обеспечения
Деинсталляция программного обеспечения
Вызов программы-инсталлятора
Непосредственное редактирование пакетов программного обеспечения с помощью редактора реестра
Глава 4. Управление пакетами программного обеспечения 1 JJ Примените ваши знания
Какие из перечисленных ниже опций не создают резервных копий "заштопанных" файлов при инсталляции заплаты с использованием команды patchadd?
-f
-р
-В
D. -d
Какие из условий, перечисленных ниже, будут препятствовать инсталляции заплаты?
Инсталлируемая заплата требует наличия другой заплаты, которая не инсталлирована.
Данная заплата не совместима с другой заплатой, которая была инсталлирована ранее.
Данная заплата была удалена.
Версия заплаты не является самой последней версией на день инсталляции.
Все вышеперечисленные.
Ответы на обзорные вопросы
D. Для отображения информации о пакете программного обеспечения используется команда pkginfo.
В. Для проверки правильности инсталляции пакета программного обеспечения используется команда pkgchk.
А. Для удаления пакетов программного обеспечения из системы используется команда pkgrm.
В. Имя пакета программного обеспечения обычно начинается с фирменного знака компании-разработчика пакета.
С. Заплаты могут поставляться в сжатом tar-формате, например, 104945-02.tar.Z. Используйте команду zcat для распаковки данного типа файла заплаты.
А, С. Для отображения всех заплат, наложенных на систему, используйте команду patchadd -р или команду showrev -р.
С. Для удаления заплаты используйте команду patchrm.
А, В, С. Заплаты для программного обеспечения поставляются клиентам фирмы Sun следующими способами: через FTP-сайт фирмы Sun, с помощью электронной почты и на диске CD-ROM.
А, В, С. Следующие задачи могут быть решены путем использования реестра программных продуктов Solaris: просмотр перечня инсталлированного программного обеспечения, деинсталляция программного обеспечения или вызов программы-инсталлятора для инсталляции дополнительного программного обеспечения.
D. Команда patchadd с опцией -d не создает резервных копий файлов, на которые будут накладываться заплаты.
А, В. Условия, перечисленные ниже, могут препятствовать инсталляции заплаты:
Инсталлируемая заплата требует наличия другой заплаты, которая не инсталлирована.
Данная заплата не совместима с другой заплатой, которая была инсталлирована ранее.
Глава 5Глава 5
Глава 5
Глава 5
Создание учетных записей пользователей
Темы
В настоящей главе рассматриваются следующие контрольные темы:
Использование инструмента Admintool или командной строки для добавления, удаления или изменения учетных записей пользователей
Управление учетными записями пользователей при помощи Admintool представляет собой эффективный способ добавления, модификации или удаления учетных записей пользователей. Поскольку это стандартный вид деятельности для системных администраторов, требуется полное понимание функций, заложенных в Admintool.
Установка, настройка и управление файлами инициализации
Сеансы пользователей настраиваются с применением файлов инициализации, к которым система обращается всякий раз, когда пользователь регистрируется в ней. В настоящей главе будет описано управление каждым из файлов инициализации.
Администрирование домашних каталогов пользователей
Управление системой включает детальный контроль и управление персональными каталогами пользователей. Системный администратор несет ответственность за защиту данных общего пользования и персональных данных в этих каталогах.
Содержание
(Введение158
Фобавление учетной записи пользователя с помощью ^ifmintoof158
‘Удаление учетной записи пользователя с помощью Jltfmintoof163
(Внесение изменений в учетную запись пользователя с помощью Л(бтгп1оо(164
Фобавление группы с помощью 54<£mintoo(165
Управление учетными записями пользователей и групп из командной строку 165
Фобавление учетных.записей пользователей через командную строку166
(Внесение изменений в учетные записи пользователей через командную строку167
Удаление через командную строкуучетныхзаписей пользователей168
Фобавление через командную строку учетных. записей групп168
(Внесение изменений через командную строку в учетные записи групп пользователей168
Удалениеучетных_записей групп пользователей через командную строку169
Установка пользовательскухфайлов инициализации169
'Настройка пользовательскухфайлов инициализации170
Исходный каталог173
Службы имен173
(Резюме174
(Примените ваши знания174
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
В процессе чтения настоящей главы попрактикуйтесь в выполнении примеров, предоставленных для систем фирмы Sun или Intel, работающих под управлением операционной системы Solaris 8. Тренируйтесь в выполнении этих операций до тех пор, пока не сможете выполнять их по памяти.
Убедитесь, что вы понимаете каждый атрибут, связанный с учетной записью пользователя (эти атрибуты описаны в таблице 5.3), такой как идентификатор UID (User IDentifier - идентификатор пользователя), первичная группа, принятый по умолчанию командный процессор и т.д.
Используйте Admintool для добавления пользователей к вашей системе и установки файлов инициализации, которые описываются в настоящей главе. Меняйте атрибуты учетной записи, такие как принятый по умолчанию командный процессор, группа и значение UID. Модифицируйте переменные в файлах инициализации каждого пользователя, чтобы увидеть результаты.
Попрактикуйтесь в использовании инструментов командной строки для добавления, внесения изменений или удаления учетных записей пользователей, они обязательно будут на экзамене. Поэтому убедитесь, что вы досконально понимаете каждую из этих команд. Продолжайте практиковаться в применении этих команд до тех пор, пока не сможете выполнять их по памяти.
Введение
Доступ к некоторой вычислительной системе осуществляется только через учетные записи регистрации пользователей, установленные системным администратором. Учетная запись пользователя включает в себя информацию, которая необходима для его регистрации в системе: регистрационное имя пользователя, пароль, исходный (домашний) каталог данного пользователя и файлы инициализации, используемые при регистрации. Учетные записи могут принадлежать случайным гостям, которым требуется доступ к нескольким файлам в режиме "только для чтения", или обычным пользователям, которые работают в режиме разделения информации между несколькими подразделениями компании.
В таблице 5.1 перечисляются методы и инструменты, которые доступны в операционной системе Solaris для добавления в нее новых учетных записей пользователей.
Среда
Рекомендуемый инструмент
Доступность
На дистанционных и/или локальных системах в сетевой службе имени (NIS, NIS+)
Менеджер пользователей и групп (графический интерфейс пользователя) из состава пакета Solstice AdminSuite
В качестве отдельного программного продукта
Локальная система
Admintool (графический интерфейс пользователя)
Входит в состав операционной системы
Solaris 8
Командная строка
Окно терминала (среда СОЕ или инструмент оболочки или командный инструмент (среда OpenWindows)
Входит в состав операционной системы
Solaris 8
Как и в случае многих других команд UNIX, метод, использующий командную строку для добавления учетных записей пользователей, является сложным и запутанным. По этой причине фирма Sun включила средства управления учетными записями пользователей в состав Solaris Admintool. Инструмент Admintool обладает графическим интерфейсом пользователя, спроектированным с целью упрощения некоторых стандартных задач системного администрирования. Admintool предоставляет системному администратору некоторый меню-ори- ентированный интерфейс, куда более простой в использовании, чем ориентированный на применение кода ASCII и предоставляемый в приглашении командной строки. Admintool не изменяет карт, или таблиц, службы имен при использовании NIS или NIS+; эта задача реализуется с помощью отдельно поставляемого программного продукта, который называется Solstice AdminSuite. Указания по применению пакета Solstice AdminSuite содержатся в главе 19. В настоящей главе описывается порядок использования Admintool и командной строки для управления учетными записями пользователей на конкретной системе.
Добавление учетной записи пользователя с помощью Admintool
Для выполнения задач администрирования, таких как добавление учетных записей пользователей, администратор должен быть зарегистрирован в системе как суперпользователь либо быть членом группы с идентификатором GID 14 (системный администратор).
ПРИМЕЧАНИЕ <
Когда вы добавляете или модифицируете учетные записи пользователей, Admintool редактирует файлы /etc/passwd, /etc/shadow и /etc/group. В качестве суперпользователя вы можете редактировать эти файлы непосредственно, однако этого не рекомендуется делать. Ошибки, допущенные в любом из вышеперечисленных файлов, могут оказать нежелательное воздействие на всю систему. Подробное описание вышеперечисленных файлов приведено в главе 8.
Первым этапом в процессе установки новой учетной записи является получение от пользователя информации, которая потребуется вам для управления его учетной записью. Вы также должны будете установить полномочия должным образом , чтобы пользователь мог использовать информацию совместно с другими работниками его подразделения. Для начала вам необходимо узнать полное имя пользователя, наименование его подразделения и перечень всех групп, в составе которых будет работать данный пользователь. Для этого целесообразно сесть рядом с пользователем и заполнить некую информационную таблицу, подобную представленной в таблице 5.2, что позволит иметь всю информацию, которая потребуется при установке учетной записи.
Таблица5.2 ^рй|:для:за^
Поле формыОписание
User Name:
Имя пользователя:
UID:
Идентификатор пользователя:
Primary Group:
Первичная группа:
Secondary Groups:
Вторичные группы:
Comment:
Комментарии:
Default Shell:''
Принятая по умолчанию оболочка:
Password Status and Aging:
Статус и дата устаревания пароля:
Home Directory Server Name:
Имя исходного (домашнего) каталога сервера:
Home Directory Path Name:
Маршрут к исходному (домашнему) каталогу:
Mail Server:
Почтовый сервер:
Department Name:
Наименование подразделения:
Department Administrator:
Администратор подразделения;
Manager:
Руководитель подразделения:
Поле формыПоле формыОписаниеОписаниеПродолжение таблицы 5.2Продолжение таблицы 5.2
Поле формы
Поле формы
Описание
Описание
Продолжение таблицы 5.2
Продолжение таблицы 5.2
Employee Name:
Фамилия сотрудника:
Employee Title:
Должность сотрудника:
Employee Status:
Статус сотрудника:
Employee Number:
Личный номер сотрудника:
Start Date:
Начальная дата:
Desktop System Name:
Имя настольной системы (рабочего стола):
Шаг за шагом:#!-Ж$"'Ш*
Добавление нового зарегистрированного пользователя
Для добавления новой учетной записи пользователя выполните следующие операции:
В качестве члена группы системных администраторов (sysadmin) запустите Admintool, для чего наберите admintool в приглашении командной строки.
Появится главное меню Users, как показано на рисунке 5.1.
РисуНОК 5.1. Главное меню Users.
Т. Выберите Edit, Add для отображения окна Add User, как показано на рисунке 5.2.
В этом окне заполните текстовые поля, предназначенные для ввода. Необходимая для заполнения информация описана в таблице 5.3. Если вы не уверены, как следует заполнять какое-нибудь поле, щелкните кнопку Help, чтобы просмотреть определения входных полей данного окна.
После ввода всей необходимой информации щелкните кнопку ОК. В главном окне Users отобразится текущий список учетных записей пользователей.
АйгпйисхЯ: Add User
' user id: 1)004ЙйаЬгу ОенкГУо " "Secondary Groups:1"!
Comment: ЗИдаём’сййп#
Рисунок 5.2.Рисунок 5.2.Окно Add User.Окно Add User.■ Login SlieB:ACCOUNT SECURITY‘ Password:■ Login SlieB:ACCOUNT SECURITY‘ Password:C ! №fcshC ! №fcsh;Qeareti unwfirst login-;Qeareti unwfirst login-
Рисунок 5.2.
Рисунок 5.2.
Окно Add User.
Окно Add User.
■ Login SlieB:
ACCOUNT SECURITY
‘ Password:
■ Login SlieB:
ACCOUNT SECURITY
‘ Password:
C ! №fcsh
C ! №fcsh
;Qeareti unwfirst login-
;Qeareti unwfirst login-
Махобе^кДМахобе^кД
Махобе^кД
Махобе^кД
IRwe- NoneIRwe- NoneAminat ""НОЙЕ DIBECTd«VJ ' С№«0> Нуте^ОИ W ‘Aminat ""НОЙЕ DIBECTd«VJ ' С№«0> Нуте^ОИ W ‘• pxuei/ww^aKijif• pxuei/ww^aKijif
IRwe- None
IRwe- None
Aminat ""
НОЙЕ DIBECTd«VJ ' С№«0> Нуте^ОИ W ‘
Aminat ""
НОЙЕ DIBECTd«VJ ' С№«0> Нуте^ОИ W ‘
• pxuei/ww^aKijif
• pxuei/ww^aKijif
1- .ок1- .окFteseti Cawelj • H»lp-.jFteseti Cawelj • H»lp-.j
1- .ок
1- .ок
Fteseti Cawelj • H»lp-.j
Fteseti Cawelj • H»lp-.j
Таблица 5.2ПолеUser NameТаблица 5.2ПолеUser Namei. Поля записи д^агй$^до^ /Описаниеi. Поля записи д^агй$^до^ /ОписаниеUser IDUser IDНаберите уникальное имя пользователя, которое будет вводиться при регистрации в операционной системе Solaris. Выберите какое-нибудь имя, уникальное для вашей организации. Это имя может содержать от 2 до 8 символов верхнего регистра (A-Z), символов нижнего регистра (a-z) или цифр (0-9), однако в нем не должны использоваться символы подчеркивания или пробелы. Первым символом имени должна быть буква, и, по крайней мере, один символ имени должен быть буквой нижнего регистра (строчной буквой).Введите уникальный идентификатор пользователя (подробнее этот вопрос рассматривается в главе 8). Admintool автоматически назначает следующий доступный идентификатор UID, однако в сетевой среде необходимо убедиться, что данное число не дублируется другим пользователем или на другой системе. Все UID должны быть согласованы по всей сети. Обычно UID представляет собой некоторое число в диапазоне от 100 до 60002, однако его максимальное значение может достигать и 2147483647. Обратите внимание на примечание в описании поля "Primary Group", относящееся к использованию идентификаторов больших, чем 60000.Наберите уникальное имя пользователя, которое будет вводиться при регистрации в операционной системе Solaris. Выберите какое-нибудь имя, уникальное для вашей организации. Это имя может содержать от 2 до 8 символов верхнего регистра (A-Z), символов нижнего регистра (a-z) или цифр (0-9), однако в нем не должны использоваться символы подчеркивания или пробелы. Первым символом имени должна быть буква, и, по крайней мере, один символ имени должен быть буквой нижнего регистра (строчной буквой).Введите уникальный идентификатор пользователя (подробнее этот вопрос рассматривается в главе 8). Admintool автоматически назначает следующий доступный идентификатор UID, однако в сетевой среде необходимо убедиться, что данное число не дублируется другим пользователем или на другой системе. Все UID должны быть согласованы по всей сети. Обычно UID представляет собой некоторое число в диапазоне от 100 до 60002, однако его максимальное значение может достигать и 2147483647. Обратите внимание на примечание в описании поля "Primary Group", относящееся к использованию идентификаторов больших, чем 60000.Primary GroupPrimary GroupВведите имя первичной группы или значение GID (идентификатора группы) для группы, к которой будет относиться данный пользователь. Эту же группу операционная система будет назначать файлам, созданным данным пользователем. Группа 10 (личный состав) - это предопределенная группа, которая подходит для большинства пользователей. Идентификатор GID обычно лежит в диапазоне от 100 до 60002, однако его максимальное значение может достигать 2147483647.Введите имя первичной группы или значение GID (идентификатора группы) для группы, к которой будет относиться данный пользователь. Эту же группу операционная система будет назначать файлам, созданным данным пользователем. Группа 10 (личный состав) - это предопределенная группа, которая подходит для большинства пользователей. Идентификатор GID обычно лежит в диапазоне от 100 до 60002, однако его максимальное значение может достигать 2147483647.
Таблица 5.2
Поле
User Name
Таблица 5.2
Поле
User Name
i. Поля записи д^агй$^до^ /
Описание
i. Поля записи д^агй$^до^ /
Описание
User ID
User ID
Наберите уникальное имя пользователя, которое будет вводиться при регистрации в операционной системе Solaris. Выберите какое-нибудь имя, уникальное для вашей организации. Это имя может содержать от 2 до 8 символов верхнего регистра (A-Z), символов нижнего регистра (a-z) или цифр (0-9), однако в нем не должны использоваться символы подчеркивания или пробелы. Первым символом имени должна быть буква, и, по крайней мере, один символ имени должен быть буквой нижнего регистра (строчной буквой).
Введите уникальный идентификатор пользователя (подробнее этот вопрос рассматривается в главе 8). Admintool автоматически назначает следующий доступный идентификатор UID, однако в сетевой среде необходимо убедиться, что данное число не дублируется другим пользователем или на другой системе. Все UID должны быть согласованы по всей сети. Обычно UID представляет собой некоторое число в диапазоне от 100 до 60002, однако его максимальное значение может достигать и 2147483647. Обратите внимание на примечание в описании поля "Primary Group", относящееся к использованию идентификаторов больших, чем 60000.
Наберите уникальное имя пользователя, которое будет вводиться при регистрации в операционной системе Solaris. Выберите какое-нибудь имя, уникальное для вашей организации. Это имя может содержать от 2 до 8 символов верхнего регистра (A-Z), символов нижнего регистра (a-z) или цифр (0-9), однако в нем не должны использоваться символы подчеркивания или пробелы. Первым символом имени должна быть буква, и, по крайней мере, один символ имени должен быть буквой нижнего регистра (строчной буквой).
Введите уникальный идентификатор пользователя (подробнее этот вопрос рассматривается в главе 8). Admintool автоматически назначает следующий доступный идентификатор UID, однако в сетевой среде необходимо убедиться, что данное число не дублируется другим пользователем или на другой системе. Все UID должны быть согласованы по всей сети. Обычно UID представляет собой некоторое число в диапазоне от 100 до 60002, однако его максимальное значение может достигать и 2147483647. Обратите внимание на примечание в описании поля "Primary Group", относящееся к использованию идентификаторов больших, чем 60000.
Primary Group
Primary Group
Введите имя первичной группы или значение GID (идентификатора группы) для группы, к которой будет относиться данный пользователь. Эту же группу операционная система будет назначать файлам, созданным данным пользователем. Группа 10 (личный состав) - это предопределенная группа, которая подходит для большинства пользователей. Идентификатор GID обычно лежит в диапазоне от 100 до 60002, однако его максимальное значение может достигать 2147483647.
Введите имя первичной группы или значение GID (идентификатора группы) для группы, к которой будет относиться данный пользователь. Эту же группу операционная система будет назначать файлам, созданным данным пользователем. Группа 10 (личный состав) - это предопределенная группа, которая подходит для большинства пользователей. Идентификатор GID обычно лежит в диапазоне от 100 до 60002, однако его максимальное значение может достигать 2147483647.
ПолеПолеSecondary GroupsCommentLogin ShellPasswordSecondary GroupsCommentLogin ShellPasswordMin ChangeMax ChangeMin ChangeMax ChangeПродолжение таблицы 5.3
Поле
Поле
Secondary Groups
Comment
Login Shell
Password
Secondary Groups
Comment
Login Shell
Password
Min Change
Max Change
Min Change
Max Change
Описание
Примечание: для хранения идентификаторов пользователей (UID) и групп (GID) в предыдущих выпусках программного обеспечения Solaris использовались тридцатидвухразрядные типы данных, однако сами значения идентификаторов UID и GID были ограничены максимальной величиной 60000. Начиная с выпуска 2.5.1 и совместимых с ним версий, предельные значения идентификаторов UID и GID были увеличены до максимального значения целого числа со знаком, то есть до 2147483647. Идентификаторы UID и GID, значения которых превышают 60000, не везде применимы, так как несовместимы со многими возможностями операционной системы Solaris, поэтому избегайте использования значений идентификаторов UID и GID больших, чем 60000.
(Необязательное поле). Введите имена или GID, разделенные пробелами, любых дополнительных групп, к которым будет относиться данный пользователь. При этом пользователь может входить не более чем в шестнадцать дополнительных групп.
(Необязательное поле). Введите любые комментарии, такие как полное имя пользователя или его номер телефона.
Щелкните эту кнопку для выбора оболочки, или командного процессора, который будет использовать данный пользователь, например, /bin/ csh. Если ничего не выбрано, то принятым по умолчанию командным процессором является оболочка Bourne (/bin/sh).
Щелкните эту кнопку для определения статуса пароля. Для выбора доступны следующие опции:
Cleared until first login (Пароль очищен до первой регистрации пользователя в системе). Это опция принята по умолчанию. Такая учетная запись не имеет присвоенного атрибута пароля. Пользователю будет предложено ввести пароль при первой регистрации в системе, если только параметру pessreq из файла /etc/default/ login не присвоено значение по.
Account is locked (Учетная запись блокируется). Такая учетная запись пользователя становится недоступной при вводе неправильного пароля и может быть разблокирована путем назначения нового пароля. Данный тип учетной записи предоставляет пользователю доступ к его собственным файлам, но не разрешает регистроваться в системе.
No password; setuid only (Пароль отсутствует; разрешен только setuid). Данный тип учетной записи не дает возможности пользователю самому зарегистрироваться в системе. Но зато позволяет программам, таким как Ip или uucp, запускаться под такой учетной записью, не предоставляя пользователю возможности зарегистрироваться в системе.
Normal password (Обычный пароль). Учетная запись пользователя будет иметь пароль, который вы устанавливаете во всплывающем окне.
(Необязательное поле). Введите минимальное количество дней, допускаемое между сменами пароля. Такая возможность помешает пользователю изменить свой пароль, а затем вернуть его обратно через несколько секунд, в противном случае теряет смысл концепция устаревания пароля. По умолчанию это поле имеет значение 0.
(Необязательное поле). Введите максимальное количество дней, в течение которых пароль будет действителен, до того, как этот пароль может быть изменен; в противном случае данная учетная запись блокируется. Незаполненное поле будет означать, что пароль никогда не меняется.
Продолжение таблицы 5.3
Поле
Описание
Max Inactive
(Необязательное поле). Введите максимальное количество дней, в течение которых учетная запись сохраняется в случае отсутствия доступа пользователя, после чего она автоматически блокируется. Если оставить данное поле пустым, это будет означать, что учетная запись пользователя остается активной вне зависимости оттого, какдолго она не использовалась.
Expiration Date
(Необязательное поле). Введите дату истечения срока действия учетной записи пользователя. Значение None в данном поле означает, что срок действия учетной записи никогда не заканчивается.
Warning
(Необязательное поле). Введите количество дней до истечения срока действия пароля, когда пользователь начнет получать об этом предупреждающие сообщения. Если оставить это поле пустым, то никаких предупреждающих сообщений не будет.
Create Home Dir Check Box
Эта кнопка-флажок предназначена для автоматического создания исходного (домашнего) каталога пользователя.
Path
Используйте это поле для указания на какой-нибудь существующий каталог или для создания нового каталога.
ПРИМЕЧАНИЕ
Для изменения своих паролей пользователи могут ввести в командной строке команду UNIX под названием passwd. Дополнительная информация по установке паролей содержится в главе 8.
Удаление учетной записи пользователя с помощью Admintool
Когда учетная запись пользователя больше не нужна в системе, удалите ее. Решение этой задачи описывается в приведенной ниже процедуре.
Щ^рза шаго^у-.' ■ _ .■
5.2 Использование Admintool для удаления существующей учетной записи пользователя Используйте Admintool для удаления существующей учетной записи пользователя. Процедура удаления учетной записи пользователя выглядит следующим образом:
Запустите Admintool, если он еще не запущен, и выберите Browse, Users.
■2. В окне Users выберите учетную запись пользователя, которую вы хотите удалить.
Выберите Edit, Delete.
На экране появится запрос для подтверждения удаления учетной записи пользователя, как показано на рисунке 5.3.
!“1.. jAdmmtool:№ :
Рисунок 5.3.Подтверждение того, что вы хотите удалить эту учетную запись пользователя.Рисунок 5.3.Подтверждение того, что вы хотите удалить эту учетную запись пользователя.I | Do you really wain to Delete user ‘gcaUdns1? I
Рисунок 5.3.
Подтверждение того, что вы хотите удалить эту учетную запись пользователя.
Рисунок 5.3.
Подтверждение того, что вы хотите удалить эту учетную запись пользователя.
.I
_ J Delete Home Directory!
г . Г I
1 t^tyI Cancel f ।
(Необязательная операция). Щелкните кнопку-флажок Delete Home Directory для удаления домашнего каталога данного пользователя вместе с его содержимым. Если вы не выбрали эту кнопку, учетная запись пользователя будет удалена, однако содержимое его домашнего каталога сохранится.
Когда вы будете готовы удалить учетную запись пользователя, щелкните кнопку ОК. Учетная запись пользователя удаляется из главного окна Users.
Внесение изменений в учетную запись пользователя с помощью Admintool
Если необходимо модифицировать регистрационную информацию, например, для изменения пароля или для отключения учетной записи пользователя, воспользуйтесь пакетом Admintool для внесения изменений в настройки учетной записи.
Шагзашагом’
Внесение изменений в учетную запись пользователя с помощью Admintool
Процесс внесения изменений в учетную запись пользователя выглядит следующим образом:
Запустите Admintool, если он еще не запущен, и выберите Browse, Users.
Выберите элемент учетной записи пользователя, который вы хотите модифицировать.
Выберите Edit, Modify.
В окне Modify User отобразится элемент выбранной учетной записи пользователя, как показано на рисунке 5.4.
Ниже приведены описания некоторых из возможных модификаций учетной записи пользователя:
Блокирование регистрации Выберите пароль: (Account is locked) учетная запись заблокирована.
Изменение пароля пользователя
Сделайте доступной учетную запись пользователя путем изменения статуса пароля на Normal password (обычный пароль) или Cleared Until First Login (пароль очищен до первой регистрации пользователя в системе).
Щелкните ОК, и модификация бу
■ ii USEH ЮЕНПТУ ’I - “ ^««mtiD^iiari’‘> vwriettooa 4It* p^inaty Grt*»}^"|। secpndwy бготкяЛ|:гЛ--у.^ц^*8Ье1;у t~ •- .,■-■; {-AittfcsH •1ACWRWC&BtTY'•■•. . .L • '• '•<•.'.F|a#Wi»n|: •' J Account is tocked .j [,..'.v-iMnChangetil •' . иахОерцеИ " toys.r:! - Max inactive:^ т:-.иау|."• iBqpratoo Dats' Norw None < Nuwy-,i, k (‘j-.. ^(ddAnm/yy^c., _' '■" , jki:HOMFDIRECTORY .•• У •. v/./ "'<y-V^? •уi|- i -OK j ' Apply £ , .л Rexel': " Ca»cei[ Help | .■ ii USEH ЮЕНПТУ ’I - “ ^««mtiD^iiari’‘> vwriettooa 4It* p^inaty Grt*»}^"|। secpndwy бготкяЛ|:гЛ--у.^ц^*8Ье1;у t~ •- .,■-■; {-AittfcsH •1ACWRWC&BtTY'•■•. . .L • '• '•<•.'.F|a#Wi»n|: •' J Account is tocked .j [,..'.v-iMnChangetil •' . иахОерцеИ " toys.r:! - Max inactive:^ т:-.иау|."• iBqpratoo Dats' Norw None < Nuwy-,i, k (‘j-.. ^(ddAnm/yy^c., _' '■" , jki:HOMFDIRECTORY .•• У •. v/./ "'<y-V^? •уi|- i -OK j ' Apply £ , .л Rexel': " Ca»cei[ Help | .дет осуществлена.РисуНОК 5.4. Окно Modify User.
■ i
i USEH ЮЕНПТУ ’
I - “ ^««mtiD^iiari’‘
> vwriettooa 4I
t* p^inaty Grt*»}^"|
। secpndwy бготкяЛ
|:гЛ--у.^ц^*8Ье1;у t~ •- .,■-■; {-AittfcsH •1
ACWRWC&BtTY'•■•. . .
L • '• '•<•.'.F|a#Wi»n|: •' J Account is tocked .j [,.
.'.v-iMnChangetil •
' . иахОерцеИ " toys.
r:! - Max inactive:^ т:-.иау|."• i
Bqpratoo Dats' Norw None < Nuwy-,i, k (‘
j-.. ^(ddAnm/yy^c., _' '■" , j
ki:HOMFDIRECTORY .•• У •. v/./ "'<y-V^
? •уi
|- i -OK j ' Apply £ , .л Rexel': " Ca»cei[ Help | .
■ i
i USEH ЮЕНПТУ ’
I - “ ^««mtiD^iiari’‘
> vwriettooa 4I
t* p^inaty Grt*»}^"|
। secpndwy бготкяЛ
|:гЛ--у.^ц^*8Ье1;у t~ •- .,■-■; {-AittfcsH •1
ACWRWC&BtTY'•■•. . .
L • '• '•<•.'.F|a#Wi»n|: •' J Account is tocked .j [,.
.'.v-iMnChangetil •
' . иахОерцеИ " toys.
r:! - Max inactive:^ т:-.иау|."• i
Bqpratoo Dats' Norw None < Nuwy-,i, k (‘
j-.. ^(ddAnm/yy^c., _' '■" , j
ki:HOMFDIRECTORY .•• У •. v/./ "'<y-V^
? •уi
|- i -OK j ' Apply £ , .л Rexel': " Ca»cei[ Help | .
Добавление группы с помощью Admintool
Может возникнуть необходимость добавить некоторую группу, которая в настоящее время не существует в данной системе. Предположим, что должна быть добавлена группа пользователей по имени engrg (работники технического подразделения).
Щагзэ^Шагом -"•-
Добавление некоторой группы с помощью Admintool
Для добавления новой группы engrg выполните следующие операции:
Запустите Admintool, если он еще не запущен, и выберите Browse, Groups.
Появится окно Groups, как показано на рисунке 5.5.
Выберите Edit, Add.
РисуНОК 5.5. Окно Groups.РисуНОК 5.5. Окно Groups.Появится окно Add Group, как показано на рисунке 5.6. Если вы не уверены в том, как следует заполнять какое-нибудь входное текстовое поле, щелкните кнопку Help, чтобы просмотреть определения полей данного окна.
РисуНОК 5.5. Окно Groups.
РисуНОК 5.5. Окно Groups.
, - ■ Admintool: Adel Croup
I . ■ Group Name: enyr^ :
! - Group 10:: !1.0l.
Meaner» Use).
I OK Apply < Reset I Cancel Help и * * »»•»><’ ^ -, «jp*' T IT *“* *^
Рисунок 5.6. Окно Add Group.
Введите имя новой группы в текстовом поле Group Name.
Введите идентификатор вновь созданной группы в текстовое поле ввода Group ID. Это должен быть уникальный номер.
(Необязательная операция). Введите имена пользователей в текстовом поле ввода Members List. Это перечень пользователей, которые входят во вновь созданную группу. Имена пользователей должны быть разделены запятыми. Список пользователей будет добавлен к данной группе.
Щелкните кнопку ОК. Перечень групп, отображаемый в окне Groups, обновляется для включения вновь созданной группы.
Управление учетными записями пользователей и групп из командной строки
Учетными записями пользователей также можно управлять из командной строки. Хотя использование командной строки гораздо сложнее, чем графического интерфейса Admintool, однако командная строка предоставляет несколько большую гибкость. Операционная сис-
тема Solaris поддерживает команды, перечисленные в таблице 5.4, для установки и управления учетными записями пользователей.
Таблица 5.4 Команды управления учетными записями
Команда
Описание
useradd
Добавляет новую учетную запись пользователя
userdel
Удаляет учетную запись пользователя
usermod
Модифицирует учетную запись пользователя
groupadd
Добавляет новую группу
groupmod
Модифицирует группу (например, изменяет идентификатор или имя группы)
groupdel
Удаляет группу
Добавление учетных записей пользователей через командную строку
С помощью команды useradd вы можете добавить в локальную систему новые учетные записи пользователей. Эта команда добавляет по элементу для каждого нового пользователя в файлы /etc/passwd и /etc/shadow, которые будут описаны в главе 8.
Точно так же, как и Admintool, команда useradd копирует все пользовательские файлы инициализации, найденные в каталоге /etc/skel, в новый исходный каталог данного пользователя. Пользовательские файлы инициализации рассматриваются в следующем разделе настоящей главы.
Начнем с описания команды useradd. Ее синтаксис выглядит следующим образом:
useradd [-u <uid>] [-g <gid>] [-G <gid,gid,...>][-d <dir>] -m [-s
<shell>] [-c <conunent>] [-f <inactive>] [-e <expiration>] <loginname>
Опции команды useradd описаны в таблице 5.5.
Таблица^^пШй^^’
Опция
Описание
-и <uid>
Устанавливает уникальный UID для данного пользователя.
-g <gid>
Задает предопределенный идентификатор GID или наименование группы для данного пользователя. Для данного пользователя это будет первичная группа.
-G <gid>
Определяет членство нового пользователя во вторичных группах. Может быть введено несколько групп, однако их имена должны быть разделены запятыми.
-m
Создает новый исходный (домашний каталог), если он еще не существует.
-s <shell>
Определяет наименование полного маршрута для программы оболочки, которая будет использоваться в качестве командного процессора при регистрации данного пользователя. Если командный процессор не задан, по умолчанию используется программа /bin/sh.
-c <comment>
Это просто комментарий, и обычно он используется для задания полного имени данного пользователя, его местоположения и номера телефона.
-d <directory>
Исходный (домашний) каталог нового пользователя. По умолчанию это каталог <base_dir>l<account_name>, где выражение <base_dir> определяет базовый каталог для новых исходных каталогов регистрации, а выражение <account_name> - новое регистрационное имя.
Продолжение таблицы 5.5
ОпцияОписание
е <expire>Устанавливает дату истечения срока действия для данной учетной запи
си пользователя. Определяет дату, когда данный пользователь больше не сможет зарегистрироваться и получить доступ к учетной записи. После указанной даты данная учетная запись блокируется. Для задания этой даты используйте следующий формат: mm/dd/yy (месяц/день/год).
f <inactive>Устанавливает количество неактивных дней для учетной записи пользо
вателя. Если данная учетная запись пользователя не регистрировалась в системе в течение заданного количества дней, то она блокируется.
k <skeldir>Устанавливает альтернативное местоположение для шаблонов пользо
вательских файлов инициализации пользователя. Файлы из этого каталога будут скопированы в домашний каталог данного пользователя. По умолчанию местоположение каталога шаблонов-/etc/skel.
Кроме перечисленных выше, для команды useradd доступно еще много других опций, хотя большинство из них используется не так уж и часто. Список всех опций команды useradd приведен на страницах оперативного руководства.
В приведенном ниже примере демонстрируется создание новой регистрационной учетной записи для пользователя по имени Bi)) Calkins. Его регистрационное имя будет "bcalkins", его DID будет равен 3000, данный пользователь будет входить в группу other. Система должна будет создать исходный каталог /export/home/bcalkins. По умолчанию в качестве командного процессора будет использоваться программа /bin/ksh, а файлы инициализации будут скопированы из каталога /etc/skel:
useradd -u 3000 -g other -d /export/home/bcalkins -m -s /Ып/ksh -c \
"Bill Calkins, ext. 1111" bcalkins
Внесение изменений в учетные записи пользователей через командную строку
С помощью команды usermod вы можете из командной строки модифицировать существующие учетные записи пользователей. Команда usermod может быть применена для модифицирования большинства опций, которые были использованы при первоначальном создании данной учетной записи пользователя.
Синтаксис команды usermod выглядит следующим образом:
usermod [ -u <uid>] -о [ -g <gid>] [ -G <gid,gid,...>][ -d <dir>]
m [ -s <shell>] [ -c <comment>] [ -1 <newloginname>] [ -f <inactive>] [ -e <expiration>] <loginname>
Опции, используемые для команды usermod, в основном те же самые, что и опции, описанные выше для команды useradd, за исключением тех опций, которые перечислены в таблице 5.6.
Таблица 5.6 Опции командыusermod
ОпцияОписание
-I <newloginname>Изменяет регистрационное имя пользователя данной учетной записи.
-тПеремещает исходный каталог пользователя в новое местоположение,
заданное опцией -d.
ПРИМЕЧАНИЕ:
Хотя с помощью этой команды меняется местоположение исходного каталога, существующие файлы все равно должны быть перенесены вручную из старого каталога в новый.
В приведенном ниже примере демонстрируется изменение имени пользователя с bcalkins на wcalkins. Кроме того, исходный каталог этого пользователя заменяется каталогом /export/home/wcalkins, а принятый по умолчанию командный процессор - оболочкой /bin/ksh.
usermod -d /export/home/wcalkins -m -s /bin/ksh -1 wcalkins bcalkins
Удаление через командную строку учетных записей пользователей
С помощью команды userdel вы можете удалять из системы существующие учетные записи пользователей. Могут быть заданы опции для сохранения или удаления исходного каталога данного пользователя. Синтаксис команды userdel выглядит следующим образом:
userdel [-г] <loginname>
где опция -г удаляет исходный каталог данного пользователя из локальной файловой системы. Если эта опция не задана, удаляется только регистрационное имя, сам домашний каталог остается нетронутым.
В приведенном ниже примере демонстрируется удаление учетной записи пользователя по имени bcalkins, однако его исходный каталог не удаляется:
userdel bcalkins
Добавление через командную строку учетных записей групп
С помощью команды groupadd вы можете добавить к локальной системе новые учетные записи групп пользователей. Эта команда добавляет элемент для новой группы пользователей в файл /etc/group. Синтаксис команды groupadd выглядит следующим образом:
groupadd [-g <gid>] -о <groupname>
где опция -g <gid> присваивает идентификатор вновь созданной группе. Опция -о позволяет дублировать идентификатор группы. Другими словами, один и тот же идентификатор GID может использоваться более чем одним именем группы.
В приведенном ниже примере демонстрируется добавление к данной системе новой группы acct с GID, равным 1000:
groupadd -g 1000 acct
Внесение изменений через командную строку в учетные записи групп пользователей
С помощью команды groupmod вы можете модифицировать определения для заданной группы. Синтаксис команды groupmod выглядит следующим образом:
groupmod [-g <gid>]-o[-n <name>] <groupname>
где опция -g <gid> присваивает новый идентификатор группы, <gid>, данной группе. Опция -о позволяет дублировать идентификатор группы. Другими словами, один и тот же идентификатор GID может использоваться более чем одним именем группы. Опция -п задает новое имя для данной группы.
В приведенном ниже примере демонстрируется изменение GID группы acct на значение 2000:
groupmod -g 2000 acct
Удаление учетных записей групп пользователей через командную строку
С помощью команды groupdel вы можете удалить из локальной системы учетную запись некоторой группы пользователей. Синтаксис команды groupdel выглядит следующим образом:
groupdel <groupname>
В приведенном ниже примере демонстрируется удаление группы acct из локальной системы:
groupdel acct
Установка пользовательских файлов инициализации
Составной частью процесса установки исходного (домашнего) каталога пользователя является предоставление файлов инициализации данного пользователя оболочке, или командному процессору, используемому при регистрации пользователя. Пользовательский файл инициализации представляет собой сценарий командного процессора, который устанавливает рабочую среду для пользователя после того, как он зарегистрируется в системе. С помощью файла инициализации вы можете реализовать любую задачу, которая может быть выполнена в рамках некоторого сценария командного процессора, однако основной задачей файла инициализации пользователя является определение характеристик рабочего окружения, таких как маршрут поиска, переменные окружения и оконная среда. Каждый командный процессор, используемый при регистрации, имеет собственный файл (или файлы) инициализации пользователя, расположенный в его исходном каталоге. Эти файлы запускаются автоматически, когда данный пользователь регистрируется в системе.
Пользовательские файлы инициализации, принятые по умолчанию, такие как .cshrc, .profile и .login, создаются автоматически в домашнем каталоге при добавлении к системе новой учетной записи пользователя. Системный администратор может предварительно определить содержимое этих файлов или выбрать вариант по умолчанию. Для каждого командного процессора системное программное обеспечение Solaris 8 предоставляет по умолчанию пользовательские файлы инициализации, которые находятся в каталоге /etc/ skel каждой системы. Эти файлы перечисляются в таблице 5.7.
Таблица 5.7 Принятые по, уМорчан^
Имя файла
Описание
local.cshrc
Это файл .cshrc, принятый по умолчанию для командного процессора С
local.login
Это файл .login, принятый по умолчанию для командного процессора С
local, prof! Ie
Это файл .profile, принятый по умолчанию для командных процессоров Bourne и Korn
Вы можете использовать эти файлы инициализации в качестве отправной точки и модифицировать их для создания некоторого стандартного набора файлов, предоставляю-
щего рабочее окружение, общее для всех пользователей. Вы также можете модифицировать их, чтобы предоставлять рабочее окружение для различных типов пользователей.
Настройка пользовательских файлов инициализации
Когда пользователь регистрируется в системе, стартующие файлы инициализации командного процессора определяют рабочую среду. Сценарии запуска могут быть модифицированы для установки переменных окружения и маршрутов к каталогам, необходимым конкретным пользователям. Эти стартующие сценарии находятся в исходном каталоге пользователя.
При создании пользовательских файлов инициализации очень важно предоставить пользователям возможность индивидуальной настройки их собственных файлов инициализации. Такая задача может быть решена с помощью централизованно размещенных и глобально распространяемых файлов инициализации пользователей, так называемого сайта файлов инициализации. Такие файлы позволяют вам постоянно вводить новые особенности в рабочие окружения всех пользователей путем редактирования единственного файла инициализации. Локальный файл инициализации, который находится в исходном каталоге конкретного пользователя, поддерживает конфигурацию, специфическую именно для него.
Локальный файл инициализации позволяет пользователям проводить дальнейшую настройку их собственного рабочего окружения. Сайт файлов инициализации находится в каталоге /etc, его содержимое может редактировать только суперпользователь. Эти файлы разработаны для распространения изменений масштаба всего сайта на рабочее окружение всех пользователей. Индивидуальные файлы инициализации находятся в домашнем каталоге каждого пользователя и могут быть настроены владельцем такого каталога. Когда пользователь регистрируется в системе, сначала запускается файл инициализации сайта, а затем файл инициализации, который находится в домашнем каталоге пользователя.
ПРИМЕЧАНИЕ
Не используйте системные файлы инициализации, которые находятся в каталоге /etc (файлы /etc/ profile, /etc/.login), для управления рабочим окружением отдельного пользователя. Это файлы инициализации сайта, которые рассматриваются как глобальные, предназначенные для общего применения; они используются при установке рабочих сред для всех пользователей. Система в первую очередь обеспечиввет запуск такого файла, а затем - пользовательского файла, находящегося в исходном каталоге пользователя.
В сценариях запуска командных процессоров наиболее распространена настройка переменных окружения. В таблице 5.8 описаны переменные окружения и переменные командных процессоров, которые вы возможно захотите применить для настройки пользовательского файла инициализации.
Таблица 5.8 Описание переменных командных процессоров и переменных
ПеременнаяОписание
ARCHУстанавливает архитектуру вычислительной системы пользователя (при
меры возможных значений: sun4, i386). Эта переменная может быть установлена с помощью ARCH=' плате -р1 (в командных процессорах Bourne или Кот) или setenv ARCH 1 uname -р1 (в командном процессоре С). Оболочка не имеет встроенных особенностей, зависящих от значения этой переменной; это просто удобная переменная для организации ветвления внутри сценариев оболочек.
Продолжение таблицы 5.8
Переменная
Описание
history
Устанавливает ведение протокола команд (истории) для командного процессора С.
НОМЕ
Устанавливает маршрут к исходному каталогу пользователя.
LPDEST
Устанавливает принтер по умолчанию для данного пользователя.
PATH (или path в командном процессоре С)
Перечисляет в определенном порядке имена каталогов, которые командный процессор просматривает в поисках программы для запуска, если пользователь вводит какую-нибудь команду. Если конкретный каталог отсутствует в маршруте поиска, пользователи должны набирать в команде полное имя маршрута.
Значение переменной PATH по умолчанию определено в файле .profile (для командных процессоров Bourne или Korn) или в файле .cshrc (для командного процессора С) какчасть процесса регистрации в системе. Важным является порядок перечисления каталогов в маршруте поиска. Когда идентичные команды существуют в различных каталогах, исполняется первая найденная команда с заданным именем. Например, предположим, что значение переменной PATH определяется (в синтаксисе оболочек Bourne и Korn) следующим образом:
PATH=/bin:/usr/bin:/usr/sbin:$HOME/bin, а файл по имени sample находится в каталогах /usr/bin и /home/glenda/bin. Если пользователь вводит команду sample, не определив для нее полное имя маршрута, то используется версия этой команды, найденная в каталоге /usr/bin.
prompt
Определяет приглашение командного процессора С.
TERM (или term в командном Определяет терминал. Эта переменная должна быть переустановлена
процессоре С)
в файле /etc/profile или /etc/.login. Когда пользователь вызывает какой-нибудь редактор, система ищет файл с именем, задаваемым этой переменной окружения. Для определения характеристик терминала система ищет каталог /usr/share/lib/terminfo.
Устанавливает маршрут к почтовому ящику пользователя.
MANPATH
Устанавливает маршрут поиска для страниц системного руководства.
umask
Устанавливает пользовательскую маску, принятую по умолчанию.
Шагза шагом 1 уй■
5.5 Проверка и изменение окружения пользователя
В приведенном далее примере иллюстрируется, как проверить установки окружения пользователя и как их изменить;
Зарегистрируйтесь в системе в качестве обычного пользователя, что позволит вам увидеть окружение пользователя именно так, как он его будет видеть.
Отредактируйте пользовательские файлы инициализации. Следующие пункты настоящего упражнения предлагают некоторые изменения и демонстрируют примеры использования синтаксиса, специфичного для определенных командных процессоров.
Установите принятый по умолчанию маршрут пользователя таким образом, чтобы включить в него исходный каталог и каталоги, или точки монтирования, для оконного окружения и приложений пользователя. Для изменения настройки маршрута добавьте или модифицируйте строку с переменной окружения РАТК.
Для оболочек Bourne и Korn синтаксис выглядит следующим образом:
PATH=/dirnamel:/dirname2:/dirnameS:.; export PATH
Введите следующую строку в файл пользователя по имени $HOME/.profile:
РАТН=$РАТН:/usr/bin:/$НОМЕ/Ып:/net/glrr/filesl/Ып: . ; export PATH
Для командного процессора С синтаксис выглядит следующим образом:
set path =(/dirnamel /dirname2 /dirnameS .)
Введите следующую строку в файл пользователя по имени SHOME/.cshrc:
set path = ($path /usr/bin $HOME/bin /net/glrr/filesl/bin .)
■у»ЛРИМЕЧАН1^Х'^.
Префикс SPATH (для командного процессора К) или Spath (для командного процессора С) добавляет изменения к установкам маршрута пользователя, которые были уже созданы файлом инициализации сайта. Когда вы с помощью описанной процедуры устанавливаете переменную окружения PATH, начальные установки маршрута не переопределяются и не теряются. Также обратите внимание, что точка (.) в конце списка обозначает текущий рабочий каталог. Точка всегда должна быть в конце маршрута, как будет обсуждаться в главе 8.
Проверьте, чтобы переменные окружения, описывающие оконную среду и приложения сторонних разработчиков, были установлены на корректные каталоги. Введите команду env и нажмите Enter:
$ env
HOME=/home/ncalkins
HZ=100
LOGNAME=ncalkins
MAIL=/var/mail/ncalkins
PATH=/usr/bin
SHELL=/bin/sh
TERM=sun
TZ=EST5EDT
$
Добавьте или измените настройки переменных окружения путем ввода любой из приведенных ниже строк:
Для оболочек Bourne или Korn синтаксис выглядит следующим образом:
VAKIABLE=value;export VARIABLE
В приведенном ниже примере демонстрируется установка принятого по умолчанию каталога электронной почты пользователя:
MAIL=/var/mail/ncalkins/export MAIL
Для командного процессора С синтаксис выглядит следующим образом:
setenv VARIABLE value
В следующем примере демонстрируется установка протокола команд (истории) на регистрацию последних 100 команд:
setenv HISTORY 100
Примените ваши знания
Исходный каталог
Исходный (домашний) каталог представляет собой часть файловой системы, выделенную некоторому пользователю для хранения его личных файлов. Размер дискового пространства, выделяемого для домашних каталогов, зависит от типа файлов, создаваемых конкретным пользователем, и от вида выполняемой им работы. Обычно для исходных каталогов выделяется целиком некоторая файловая система, и пользователи разделяют это пространство между собой. Системный администратор должен контролировать домашние каталоги таким образом, чтобы некий пользователь не использовал больше дискового пространства, чем выделенная ему доля. Для контроля объема дискового пространства, которое может занимать пользователь, применяются дисковые квоты. Они подробнее рассматриваются в главе 6.
Домашний каталог может быть расположен либо на локальной системе данного пользователя, либо на каком-нибудь дистанционном файл-сервере. И хотя может использоваться любое имя каталога, однако для удобства домашний каталог в любом случае имеет имя /export/home/<username>. Когда вы помещаете исходный каталог в файловую систему /export/home, он будет доступен по всей сети в том случае, если пользователь регистрируется на различных рабочих станциях. Для большого сайта имеет смысл хранить исходные каталоги на каком-нибудь сервере.
Вне зависимости от того, где сохраняются исходные каталоги, пользователи обычно получают доступ к ним через точку монтирования, которая имеет имя /home/<username>. Когда для монтирования домашних каталогов используется Autofs, вы не имеете полномочий на создание любых каталогов подточкой монтирования /home на любой системе. Причем, система распознает специальный статус точки монтирования /home, когда Autofs находится в активном состоянии. Более подробная информация об Autofs и автоматическом монтировании домашних каталогов приведена в главе 17.
Для получения доступа к домашнему каталогу из любого места сети вы должны всегда ссылаться на него как на SHOME, а не как на /export/home/<username>. Последний способ ссылки является машинно-зависимым и не должен использоваться. Кроме того, любые символические ссылки, созданные в исходном каталоге пользователя, должны использовать относительные маршруты (например, ../../../х/у/х), чтобы эти ссылки действовали независимо от того, где смонтирован домашний каталог. Местоположение исходного каталога пользователя может изменяться. Но если не используются машинно-зависимые имена, вы сохраняете непротиворечивость и уменьшаете объем работ по системному администрированию.
Службы имен
Если приходится управлять учетными записями пользователей на большом сайте, вы возможно захотите использовать какую-нибудь службу имен, такую как N1S или NIS+. Служба имен позволяет сохранять информацию учетных записей пользователей централизованно вместо того, чтобы хранить ее в файле /etc на каждой системе. Если для ведения учетных записей используется какая-нибудь служба имен, пользователи могут переходить с одной системы на другую, используя одну и ту же учетную запись, без необходимости дублировать информацию учетной записи пользователя в файлах /etc на каждой системе сайта. Использование службы имен также способствует централизации и непротиворечивости информации учетных записей пользователей. Службы имен NIS и N1S+ рассматриваются в главе 18.
Резюме
Подведем итоги обсуждения того, как добавлять в систему учетные записи регистрации пользователей. В настоящей главе было описано, как добавлять, модифицировать и удалять учетные записи пользователей как с помощью Admintool, так и из командной строки. Графический интерфейс пользователя, реализованный для пакета Admintool, существенно упрощает процесс управления учетными записями.
Во-вторых, было описано использование файлов инициализации оболочки, или командного процессора, пользователя. Показано, как можно применять эти файлы для настройки рабочей среды пользователя. Кроме того, было описано множество принятых по умолчанию переменных окружения командного процессора, которые управляют средой оболочки пользователя.
Наконец, в настоящей главе был описан исходный (домашний) каталог - часть файловой системы, выделяемая пользователю для хранения его личных файлов.
В данной главе описываются задачи, связанные с управлением учетными записями пользователей. Поскольку большинство пользователей будет использовать оконный интерфейс CDE (Common Desktop Environment - общей настольной среды), то как системному администратору вам также необходимо хорошо ориентироваться в вопросах, связанных с установкой и настройкой СОЕ. Как уже отмечалось ранее, эта тема не входит ни в один из экзаменов, однако она будет рассмотрена позднее в приложении В.
Следующая глава будет посвящена несколько иным вопросам - она представляет собой введение в файловые системы Solaris.
Ключевые термины
Admintool
Идентификатор пользователя (UID)
Группа
Идентификатор группы (GID)
Первичная группа
Вторичная (дополнительная) группа
Оболочка, или командный процессор, регистрации•
Устаревание пароля
Исходный (домашний) каталог
Пользовательский файл инициализации
Переменная оболочки
Примените ваши знания
Управление учетными записями пользователей
В приведенном далее упражнении вы будете использовать Admintool для добавления новых пользователей к вашей системе, блокирования учетных записей пользователей и установки даты устаревания пароля.
Примените ваши знания
Оцениваемое время: 20 минут
После появления на экране графического интерфейса Admintool используйте этот инструмент для добавления следующего списка пользователей:
login
password
shell
UID
PriGID
SecondaryGID
изегЗ
trng
Korn
1003
10
14
изег4
trng
C
1004
10
14
изег5
trng
Bourne
1005
10
lockedl
(lock accnt)
Korn
1006
10
clearedl
(cleared until 1st) login
Bourne
1007
10
nopassl
(no password)
Korn
1008
10
2. Выйдите из системы.
Можете ли вы зарегистрироваться в системе под именем lockedl?
Попытайтесь зарегистрироваться в системе под именем cleared 1 - что происходит при этом?
Может ли root (суперпользователь) с помощью команды su стать пользователем clearedl?
Файлы инициализации пользователя
В приведенном ниже упражнении вам предстоит поработать с пользовательскими файлами инициализации.
Оцениваемое время: 20 минут
Воспользуйтесь текстовым редактором vi для редактирования файла /etc/skel/ local.profile и добавьте к нему приведенные ниже строки для установки следующих переменных:
EDITOR=/usr/bin/vi; export EDITOR
PATH=$PATH:/usr/lib/lp; export EDITOR
Воспользуйтесь Admintool для создания нового пользователя с именем user9, который применяет командный процессор Korn. Зарегистрируйтесь в системе как user9 и проверьте, что все переменные, установленные вами в файле /etc/ skel/local.profile, корректны в окружении данного пользователя, для чего введите следующую команду:
env
Создайте файл .profile для пользователя user9, файл должен включать два псевдонима и устанавливать первичное приглашение для отображения текущего рабочего каталога. Воспользуйтесь текстовым редактором vi для добавления трех приведенных ниже строк к файлу .profile, который находится в исходном каталоге пользователя user9:
alias del='rm -i'
alias hi='echo hello’
PS1=\$PWD' $'
Выйдите из системы и зарегистрируйтесь повторно под тем же самым именем, чтобы проверить, как работает файл .profile. Имеется ли теперь новое приглашение оболочки?
Проверьте, что новые псевдонимы определены, для чего введите следующую команду: alias
Выйдите из системы и зарегистрируйтесь в системе повторно как root.
Воспользуйтесь командой useradd для добавления в систему нового пользователя с именем userlO, установите для него командный процессор Korn в качестве принятого по умолчанию и присвойте ему пароль trng.
Пример: # useradd -и 1010 -д 10 -d \ /export/home/userlO -m -s /bin/ksh -с \ "Solaris Student" userlO # passwd userlO New Passwd: Re-enter new passwd:
Выйдите из системы и зарегистрируйтесь в системе повторно под именем userlO. Составьте список файлов инициализации из вашего исходного каталога, для чего воспользуйтесь командой Is -la.
Какой из этих файлов является таким же, как и файл /etc/skel/local.profile? Скопируйте файл /etc/skel/local.profile в файл .profile.
Выйдите из системы и зарегистрируйтесь повторно под именем userlO. Проверьте, что переменные, установленные в файле .profile для пользователя user9, установлены также и для данного пользователя (переменные PATH и EDITOR). Корректны ли эти переменные?
Обзорные вопросы
Какова максимальная длина имени пользователя?
От I до 8 символов
От 2 до 8 символов
От 1 до 7 символов
Неограниченна
Какой пользователь обычно имеет UID, равный О?
A. root
daemon
adm
Ipr
В какое количество вторичных (дополнительных) групп может входить пользователь? А. В одну В. В 32
С. Без ограничений
D. В 16
Глава 5. Создание учетных записей пользователей1 / / Примените ваши знания.
Какова роль поля Max Change в Admintool при добавлении идентификатора нового пользователя?
Устанавливает минимальное количество дней, которое должно пройти до того, как пользователь сможет использовать новое регистрационное имя
Устанавливает максимальное количество дней, которое допускается между сменами пароля
Устанавливает максимальное количество дней, в течение которых может не наблюдаться доступ к учетной записи; затем эта запись автоматически блокируется
Устанавливает максимальное количество дней бездействия до того, как данная учетная запись будет объявлена неактивной
Какие из перечисленных ниже опций не применимы для установки пароля в случае добавления идентификатора нового пользователя через Admintool?
Пароль очищается до первой регистрации пользователя в системе
Учетная запись пользователя блокируется
Никакого пароля не присвоено
Поручает системе генерацию пароля
Какой из перечисленных ниже способов является наилучшим для удаления регистрационной информации по данному пользователю с одновременным сохранением его файлов?
Удалить регистрационную информацию по данному пользователю, однако перед этим снять отметку кнопки Delete Home Directory.
Изменить пароль для данного регистрационного имени пользователя.
Изменить U1D для данного регистрационного имени пользователя.
Удалить регистрационную информацию по данному пользователю, однако при этом не удалять файлы с помощью команды rm.
Какие из перечисленных ниже файлов не являются пользовательскими файлами инициализации, принятыми по умолчанию?
A. .cshrc
.login
.profile
D. .ехгс
Какой из перечисленных ниже каталогов содержит принятые по умолчанию файлы инициализации операционной системы Solaris?
A. /etc/default
/etc/skel
/etc/dfs
D. /home
Что является примером правильного синтаксиса для установки маршрута по умолчанию в командном процессоре Korn?
PATH=/dirnamel:/dirname2:/dirname3:.; export PATH
setenv path=(/dirnamel/dirname2 /dirname3 .)
set path=(/dirnamel /dirname2 /dirname3 .)
setenv PATH /dirnameI :/dirname2:/dirname3
Что является примером правильного синтаксиса для установки маршрута по умолчанию в командном проц^соре С?■
set path=(/dirname I /dirname2 /dirname3 .)
PATH=/dirnamel :/dirname2:/dirname3:.; export PATH
setenv path=(/dirnamel /dirname2 /dirname3 .)
setenv PATH /dirnamel :/dirname2:/dirname3
Какой из перечисленных ниже файлов содержит информацию о паролях в зашифрованном виде?
/etc/shadow
/etc/passwd
/etc/default/password
/etc/password
Как называется файл инициализации масштаба сайта для оболочки Korn?
/etc/profile
$HOME/.profile
/etc/.profile
/etc/skel/local.profile
Как называется файл инициализации масштаба сайта для оболочки С?
/etc/.login
/etc/login
$HOME/.login
/etc/skel/local.login
Ответы на обзорные вопросы
В. Регистрационное имя пользователя может содержать от 2 до 8 символов верхнего регистра (A-Z), символов нижнего регистра (a-z) или цифр (0-9), однако в нем не должны использоваться символы подчеркивания (_) или пробелы. Первым символом имени должна быть буква, и, по крайней мере, один символ в имени должен быть буквой нижнего регистра.
A. U1D для регистрационного имени root всегда равен 0.
D. Пользователь может входить максимально в 16 вторичных (дополнительных) групп.
В. Поле Max Change устанавливает максимальное количество дней, которое допускается между изменениями пароля.
D. С помощью Admintool нельзя автоматически генерировать пароль для учетной записи пользователя.
А. При удалении учетной записи через Admintool снимите отметку кнопки Delete Home Directory для сохранения всех файлов данного пользователя.
Примените ваши знания
D. При создании учетной записи принятые по умолчанию пользовательские файлы инициализации, такие как .cshrc, .login и .profile, помещаются автоматически в исходный каталог пользователя.
В. Файлы инициализации операционной системы Solaris по умолчанию содержатся в каталоге /etc/skel.
А. Для установки маршрута по умолчанию в оболочке Korn введите следующую командную строку:
PATH=/dirnamel:/dirname2:/dirname3:.; export PATH
А. Для установки маршрута по умолчанию в оболочке С введите следующую командную строку:
set path=(/dirnamel /dirname2 /dirname3.)
А. Для каждой учетной записи пользователя информация по паролям в зашифрованном виде содержится в файле /etc/shadow.
А. Файл инициализации масштаба сайта для командного процессора Korn - это файл /etc/proflle.
А. Файл инициализации масштаба сайта для командного процессора С-это файл /etc/.login.
Глава 6Глава 6Введение в файловые системы
Глава 6
Глава 6
Темы
В настоящей главе рассматриваются следующие контрольные темы:
Определение и понимание файловых систем операционной среды Solaris 8
Настоящая глава содержит введение в различные типы файловых систем, доступных в операционной системе Solaris 8. Система Solaris имеет несколько утилит и опций для создания файловых систем. Системному администратору необходимо знать, как использовать эти утилиты, и понимать воздействие, оказываемое различными опциями на производительность и функциональность.
Понимание геометрии диска
Для правильного конфигурирования дисковых систем хранения данных системному администратору необходимо понимать физическую геометрию таких дисковых устройств.
Понимание вопросов разбивки диска
В дополнение к инсталляции дисковых систем хранения данных системному администратору необходимо понимать концепции выделения дискового пространства.
Сравнение менеджера логических томов (Logical Volume Manager) со стандартными файловыми системами Solaris
В дополнение к традиционным методам выделения дискового пространства на небольших вычислительных системах вам предстоит ознакомиться с усовершенствованными методами выделения дискового пространства на серверах.
Управление и контроль над использованием дискового пространства
После того как дисковые системы хранения данных установлены и сконфигурированы, системному администратору необходимо регулярно контролировать это дисковое пространство, чтобы оно эффективно распределялось и использовалось.
Понимание настройки пользовательских параметров файловых систем
После того как вы инсталлировали аппаратные средства хранения данных и создали на них разделы, вам необходимо понимать тип используемой файловой системы и порядок управления ею. Операционная система Solaris предоставляет множество утилит для создания, проверки, монтирования и отображения информации о файловых системах.
Содержание
(Введение
Определение файловой системы
Определение геометрии диету
'Контроллер диету Списокукфектов Метку диету
ТПаблииа разделов
ЯГипы файловые систем Solaris Фиетувые файловые системы Сетевые файловые системы (Виртуальные файловые системы
Части диету
Информация о конфигурации диету
Использование утилиты format для создания частей диету
Часть диету под названием Tree Иод
Использование утилиты format для модифицирования разделов (Восстановление информации о разделал^диету
Логические тома
Составные части файловой системы 1JTS Загрузочный блок, Суперблок.
Индексный дескриптор
Тло\,хранения Свободные блоку
183183184184184185185185185185186187189190193193195196197199199200200200200183183184184184185185185185185186187189190193193195196197199199200200200200Создание файловой системы 1)TS
183
183
184
184
184
185
185
185
185
185
186
187
189
190
193
193
195
196
197
199
199
200
200
200
200
183
183
184
184
184
185
185
185
185
185
186
187
189
190
193
193
195
196
197
199
199
200
200
200
200
^Понятие пользовательс^ш^параметров файловой системы202
(размер логического блока202
Размер фрагмента203
Минимально свободное пространство203
Межблочный промежутокCjap)204
ШТип оптимизации205
Количество индексныкдескрипторов и количество байт на один индексный дескриптор205
Операции с файловой системой205
Синхронизация файловой системы205
(Восстановление файловыксистем206
Монтирование файловыксистем209
Отображение смонтированных, файле вых. систем211
Монтирование файловой системы с большими файлами212
Монтирование файловой системы с разрешенным протоколированием TjTS213
Отображение дискового пространства, используемого файловой системой213
Отображение информации оразмерах_каталогов' 214
(Управление использованием дискового пространства пользователями215
217217Фезюме216
217
217
Примените ваши знания
Стратегия обучения
Следующая стратегия изучения материала поможет вам подготовиться к экзамену:
Как и при изучении любой другой главы настоящей книги, вам потребуется система, работающая под управлением Solaris 8, для подготовки к экзаменам. Тренируйтесь в выполнении этих упражнений шаг за шагом до тех пор, пока не сможете выполнять их по памяти. Кроме того, когда вы будете практиковаться в создании файловых систем, вам потребуется некоторое свободное дисковое пространство для выполнения упражнений. Для этих целей рекомендуется использовать пустой вторичный диск вычислительной системы.
Изучите досконально все термины, представленные в конце настоящей главы. На экзаменах вам придется часто сталкиваться с ними. Разберитесь самостоятельно с различными типами файловых систем, описанных в настоящей главе, особое внимание обратите на тип UFS и на параметры такой файловой системы. Большинство вопросов на экзамене, так или иначе, касается файловой системы UFS. Кроме того, убедитесь, что вы разобрались с менеджером логических томов. Вам нет необходимости знать, как использовать эту программу - просто разберитесь, что она делает и почему может потребоваться ее применение.
Убедитесь, что вы освоили процесс разбивки диска. Разберитесь, как создавать и удалять разделы диска, уделите особое внимание ограничениям, связанным со стандартными частям диска. Практикуйтесь в разбивке диска с использованием утилиты format до тех пор, пока не выучите этот процесс наизусть.
Наконец, разберитесь, как монтировать и демонтировать файловую систему, а также конфигурировать файл /etc/vfstab. Убедитесь, что вы разобрались со всеми описанными в настоящей главе командами, используемыми для управления файловыми системами и отображения информации о них, в том числе с командами df. fsck и prtvtoc.
Введение
Настоящая глава содержит введение в файловые системы Solaris и предоставляет некоторые фундаментальные концепции, которые потребуются для сдачи первого экзамена. После прочтения этой главы вы будете понимать основы строения дисковых накопителей и их геометрические характеристики. Вы также узнаете, как операционная система Solaris использует некоторый диск для хранения файлов посредством применения файловых систем. Наконец, вы узнаете, как управлять файловыми системами Solaris и как контролировать использование дискового пространства. Более подробные сведения по построению и настройке файловых систем Solaris содержатся в главе 7.
ПРЦ|ИЕЧАНИЕ ЛЛ/L; 1. Ж, Ж. Л
Некоторые темы, поднятые здесь, требуются для сдачи второго экзамена, однако их рассмотрение более уместно именно в этой главе. Если конкретная тема является предметом второго экзамена, об этом будет сделано специальное замечание.
Определение файловой системы
Файловая система - это структура каталогов, используемая для организации файлов и их хранения на диске. Файловая система представляет собой набор файлов и каталогов, которые хранятся на диске в стандартном формате файловой системы UNIX. Все дисковые системы имеют какую-либо файловую систему. В операционной системе UNIX файловые системы имеют два основных компонента: файлы и каталоги. Файл представляет собой реальную информацию в том виде, как она хранится на диске, а каталог - это список имен файлов. В дополнение к отслеживанию имен файлов файловая система должна также отслеживать даты доступа к файлам и права собственности на файлы. Управление файловыми системами UNIX является одной из наиболее важных задач системного администратора. Под управлением конкретной файловой системой подразумевается решение следующих задач: ■
Ф Обеспечение пользователям возможности доступа к данным. Это означает, что файловые системы запущены и работоспособны, полномочия доступа к файлам установлены надлежащим образом и данные доступны.
Ф Защита файловых систем от разрушения файлов и отказов аппаратных средств вычислительной системы. Эта задача решается посредством регулярного контроля файловой системы и правильной организации резервного копирования.
Ф Защита файловых систем от несанкционированного доступа. Только авторизованные пользователи должны иметь доступ к файлам. Данные должны быть защищены от злоумышленников, заинтересованных в получении несанкционированного доступа к ним.
Ф Предоставление пользователям требуемого дискового пространства для хранения их файлов.
Ф Поддержание чистоты файловой системы. Другими словами, в файловой системе должно храниться лишь то, что необходимо, не следует засорять дисковое пространство. Необходимо выполнение определенных процедур, чтобы быть уверенным, что пользователи придерживаются надлежащих соглашений по наименованиям и что данные хранятся организованным образом.
Вам придется столкнуться с использованием термина "файловая система" в нескольких аспектах. Обычно термин "файловая система" описывает некоторый конкретный тип файловой системы (дисковая, сетевая или виртуальная файловая система). Это понятие может также описывать полное дерево файлов, начинающееся с корневого каталога и далее вниз. В другом контексте термин "файловая система" может быть использован для описания структуры дискового пространства, как будет показано далее в настоящей главе.
Программное обеспечение операционной системы Solaris использует архитектуру VFS (Virtual File System - виртуальной файловой системы), которая предоставляет стандартный интерфейс для различных типов файловых систем. Архитектура VFS позволяет ядру операционной системы поддерживать основные операции, такие как чтение, запись и просмотр списка файлов, и при этом от пользователя или программы не требуется знаний о типе файловой системы, лежащей в основе этих операций. Более того, операционная система Solaris предоставляет команды управления файловыми системами, которые позволяют вам проводить обслуживание этих систем.
Определение геометрии диска
Перед тем как создать файловую систему на некотором диске, вам необходимо понимать основы геометрии дискового накопителя. Диски поставляются различных форм и размеров. Количество головок, дорожек, секторов и емкость диска изменяются от одной модели к другой.
Жесткий диск состоит из нескольких отдельных дисковых пластин, смонтированных на общем шпинделе. Данные, которые хранятся на каждой поверхности пластины, записываются и считываются с помощью головок диска. Круговая траектория, которую головка диска отслеживает над поверхностью вращающейся пластины, называется дорожкой.
Каждая дорожка образована из нескольких секторов, которые покрывают ее от начала до конца. Сектор состоит из заголовка, трейлера (записи с контрольной суммой в конце сектора) и 512 байт данных. Заголовок и трейлер содержат информацию для контроля ошибок, которая помогает обеспечивать точность данных. Собранный вместе набор дорожек, которые проходят сквозь каждую поверхность отдельных дисковых пластин для одного и того же положения головок, называется цилиндром.
Контроллер диска
С каждым диском связан контроллер - интеллектуальное устройство, отвечающее за организацию данных на этом диске. Контроллеры некоторых дисков размещаются на отдельной плате электронной схемы (контроллеры дисков с интерфейсом SCSI), а иногда контроллеры интегрированы с дисковым накопителем (контроллеры дисков с интерфейсом 1DE/EIDE).
Список дефектов
Диски могут содержать области, на которые данные не могут быть надежно записаны (или считаны с которых). Такие области носят название дефектов. Контроллер использует информацию, которая содержится в трейлере каждого дискового блока, для определения того, имеются ли в данном блоке дефекты или нет. Когда некоторый блок диагностируется как дефектный, контроллер может получить команду на добавление этого блока к списку дефектов и исключение его из использования в дальнейшем. Последние два цилиндра диска выделяются для решения диагностических задач и хранения списка дефектов данного диска.
Метка диска
На каждом диске выделяется специальная область для хранения информации о контроллере данного диска, его геометрических параметрах и разбивке. Эта информация носит название метки данного диска, или VTOC (Volume Table of Contents - таблица содержимого тома, или оглавление тома).
Разметить диск - значит записать на него информацию о разбивке. Вы обычно присваиваете метку после определения разделов диска. Если вы не присвоили метку диска после создания разделов, эти разделы будут недоступны, поскольку операционная система не имеет возможности узнать об их существовании.
Таблица разделов
Важной составной частью метки диска является таблица разделов, которая определяет разделы диска, границы разделов (в номерах цилиндров) и общий размер всех разделов. Таблица разделов некоторого диска может быть отображена с помощью утилиты format.
Типы файловых систем Solaris
Файловые системы Solaris могут быть отнесены к одной из трех категорий: дисковые, сетевые и виртуальные файловые системы.
Дисковые файловые системы
Дисковые файловые системы размещаются на локальном диске системы. Ниже приведены четыре типа дисковых файловых систем:
Ф Файловая система UFS. Это файловая система UNIX, которая базируется на традиционной файловой системе BSD FAT Fast. Файловая система UFS представляет собой дисковую файловую систему, которая используется в среде Solaris по умолчанию.
Ф Файловая система HSFS. Это файловая система High Sierra и ISO 9660. HSFS используется на дисках CD-ROM и представляет собой файловую систему, доступную только для чтения.
Ф Файловая система PCFS. Это файловая система, которая предоставляет доступ по чтению и записи к данным и программам, находящимся на отформатированных под DOS дисках и написанным для DOS-ориентированных персональных компьютеров.
Ф Файловая система UDF. Новой в версии Solaris 8 является файловая система UDF (Universal Disk Format - универсальный формат диска). Файловая система UDF представляет собой новый индустриальный стандарт формата для хранения информации с использованием технологии оптических носителей, которая называется DVD (Digital Video Disk - цифровой видеодиск, или Digital Versatile Disk-универсальный цифровой диск).
Сетевые файловые системы
Это файловые системы, доступные через сеть. Обычно они размещаются на одной системе и являются доступными для других систем через сеть.
NFS (Network File System - сетевая файловая система) доступна с дистанционных систем. NFS является единственной сетевой файловой системой, доступной в среде Solaris. (NFS подробно рассматривается в главе 17 и входит в перечень тем второго экзамена).
Виртуальные файловые системы
Виртуальные файловые системы, ранее называемые файловыми псевдосистемами, представляют собой виртуальные, или располагающиеся в оперативной памяти, файловые системы, которые создают дублирующие маршруты для других дисковых файловых систем или предоставляют доступ к специальной информации и средствам ядра операционной системы. Большинство виртуальных файловых систем не использует дисковое пространство файловой системы, хотя существует и несколько исключений. Кэширующие файловые системы, например, используют какую-нибудь файловую систему для хранения кэша.
Некоторые виртуальные файловые системы, такие как временная файловая система, могут использовать областьсвоппинга на физическом диске. Ниже приведен перечень наиболее общих типов виртуальных файловых систем:
ф SWAPFS. Файловая система, используемая ядром операционной системы для своппинга. Область подкачки используется в качестве виртуальной памяти, когда у системы недостаточно физической памяти для обработки текущих процессов.
ф PROOFS. Process File System (файловая система процессов) размещается в оперативной памяти. Она содержит перечень активных процессов, упорядоченный по номерам процессов, в каталоге /ргос. Информацию, которая содержится в каталоге /ргос, используют команды, такие как ps. Отладчики и другие инструменты разработки также могут получить доступ к адресному пространству процессов путем использования вызовов файловой системы.
ф LOFS. Loopback File System (файловая система интерфейса обратной петли) позволяет вам создавать новые виртуальные файловые системы. Вы можете получать доступ к файлам, применяя какое-нибудь альтернативное имя маршрута. Полная иерархия данной файловой системы выглядит таким образом, как если бы она дублировалась под /tmp/newroot, включая любые файловые системы, смонтированные с серверов NFS. Любые файлы, имена маршрутов к которым начинаются либо с К либо с /tmp/newroot, являются доступными.
ф CacheFS. Cache File System (кэширующая файловая система) позволяет вам использовать дисковые накопители на локальных рабочих станциях для хранения часто используемых данных с дистанционной файловой системы или диска CD- ROM. Данные, сохраняемые на локальном диске, представляют собой кэш.
ф TMPFS. Временная файловая система использует локальную оперативную память для операций чтения и записи. Поскольку TMPFS использует физическую память и не использует диск, доступ к ее файлам обычно осуществляется гораздо быстрее, чем к файлам UFS. Файлы во временной файловой системе не являются постоянными; они удаляются, когда она демонтируется и когда происходит закрытие или перезагрузка системы. TMPFS является принятой по умолчанию файловой системой для каталога /trap в системном программном обеспечении SunOS. Вы всегда можете копировать и перемещать файлы в каталог /trap и из него точно так же, как вы могли бы делать это с каталогом /trap файловой системы UFS. Когда объем оперативной памяти оказывается недостаточным для хранения всех объектов временной файло-
вой системы, TMPFS использует область своппинга в качестве временного резервного хранилища до тех пор, пока в нем существует достаточно памяти.
ф /var/run. Файловая система /var/run представляет собой новую временную файловую систему в Solaris 8. Файловая система /var/run представляет собой хранилище для временных системных файлов, которые не требуются другим системам. Хранилищем для несистемных временных файлов продолжает оставаться каталог/tmp.
Поскольку/var/run монтируется как расположенная в оперативной памяти, а не как дисковая файловая система, обновление информации в указанном каталоге не вызывает излишнего дискового трафика, который влияет на те системы, где запущено программное обеспечение управления электропитанием. Каталог /var/run не требует управления и не может быть демонтирован с помощью команды umount -а или umountall.
По соображениям защиты информации владельцем каталога /var/run является суперпользователь.
ф MNTFS. Новый тип файловой системы в Solaris 8 представляет MNTFS, которая поддерживает информацию о смонтированных в настоящее время файловых системах. MNTFS будет описана далее в настоящей главе.
Части диска
Диски делятся на области, которые называются частями, или разделами диска. Часть образуется единой совокупностью смежных блоков. Она является физическим подмножеством данного диска (за исключением части 2, которая представляет собой полный диск). Файловая система UNIX строится внутри этих частей диска. Границы части определяются во время форматирования диска с помощью утилиты Solaris под названием format, а информация о частях для конкретного диска может быть просмотрена с помощью команды prtvtoc. Каждая часть диска воспринимается операционной системой и системным администратором так, как если бы это был отдельный дисковый накопитель.
Л примечание
Имена устройств в Solaris используют термин "часть" (и букву "s" - от слова "slice" (часть) в имени устройства). В операционной системе SunOS 4.x части назывались "разделами" ("partitions"). В настоящей книге делается попытка использовать термин "часть" везде, где это возможно; однако некоторые конкретные интерфейсы, такие как команды format и prtvtoc, ссылаются на части как на разделы.
Физический диск состоит из пакета круглых пластин. Данные хранятся на таких пластинах в некоторой цилиндрической структуре. Цилиндры могут быть сгруппированы или изолированы один от другого. Группа цилиндров называется частью диска. Часть определяется ее начальной и конечной точками, отсчитываемыми от центра пакета пластин, который называется шпинделем.
Для определения части администратор задает начальный и конечный цилиндры. Диск может иметь до восьми частей, которые нумеруются от 0 до 7, однако раздел 2 обычно не используется в качестве файловой системы. Вопросы дисковых систем хранения данных и размеры разделов обсуждались в главе 3.
ПРИМЕЧАНИЕ
Иногда какая-нибудь реляционная база данных использует диск целиком и требует наличия одного низкоуровневого раздела. В таком случае удобно использовать часть 2, поскольку она представляет весь диск целиком.
При установке частей диска следует помнить следующие правила:
Ф Каждая часть диска содержит только одну файловую систему.
Ф Никакая файловая система не может распространяться на несколько частей диска.
Ф После создания файловой системы ее размер не может быть увеличен или уменьшен без выполнения повторной разбивки полного диска и восстановления всех данных с резервной копии.
Ф Части не могут охватывать несколько физических дисков; однако, при этом допускается использование нескольких частей с областями своппинга на отдельных физических дисках.
В следующей главе при обсуждении логических томов вы узнаете, как можно обойти некоторые из вышеперечисленных ограничений файловых систем.
Кроме того, при планировании размещения файловых систем следует придерживаться приведенных ниже общих руководящих принципов:
ф Распределяйте рабочую нагрузку между различными системами ввода вывода и различными дисковыми накопителями настолько равномерно, насколько это окажется возможным. Распределяйте каталог/home и каталоги своппинга между несколькими дисками. Единственный диск имеет ограничения на скорость передачи данных. Распределяя эту нагрузку между несколькими дисками, вы сможете повысить производительность экспоненциально. Эта концепция описана в главе 16, где речь пойдет о расслоении страйпинге - технике разделения информации между дисками с использованием пакета DiskSuite.
Ф Сохраняйте проекты или группы внутри одной и той же файловой системы. Это позволит лучше отслеживать данные с точки зрения резервного копирования, восстановления и защиты информации. Некоторые диски могут иметь лучшие характеристики производительности по сравнению с другими дисками.
ф Применяйте более быстрые дисковые накопители для тех файловых систем, которые требуют более быстрого доступа, а более медленные накопители - для хранения данных, к которым не требуется столь быстрый доступ.
Ф Размещайте на каждом диске как можно меньше файловых систем. На системном, или загрузочном, диске вы обычно имеете три части: корневую файловую систему (/), файловую систему /usr и область своппинга. На других дисках создайте одну или, в крайнем случае, две части. Небольшое число объемных частей приводит к меньшей фрагментации файлов, чем множество мелких, переполненных частей диска. Накопители на магнитной ленте высокой емкости и способность утилиты ufsdump обрабатывать многотомные носители обеспечивают возможность выполнения резервного копирования более крупных файловых систем.
Ф Для большинства сайтов не имеет смысла беспокоиться о размещении файлов пользователей подобных типов в одной и той же файловой системе.
ф Иногда вы можете столкнуться с несколькими пользователями, которые постоянно создают маленькие или большие файлы. Вы можете рассмотреть вопрос о создании отдельной файловой системы с множеством индексных дескрипторов для пользователей, которые постоянно создают маленькие файлы. Вопросы об индексных дескрипторах и об изменении количества байт, приходящегося на один индексный дескриптор, будут рассмотрены в настоящей главе несколько позднее.
Информация о конфигурации диска
Как уже отмечалось ранее, информация о конфигурации диска сохраняется в его метке. Если вам известны диск и номер части, вы можете отобразить информацию об этом диске путем использования команды печати оглавления тома под названием prtvtoc. Вы можете определить том посредством задания любой части диска, имеющей ненулевой размер и определенной изданном диске (например, задав имя устройства/dev/rdsk/c0t3d0s2 для полного диска 3 или имя /dev/rdsk/c0t3d0s5 для шестой части этого диска). Если вам известен целевой номер диска, но неизвестно, как он разбит на части, вы можете увидеть информацию для всего диска целиком, задав либо часть 2, либо часть 0. В следующем упражнении будет показано, как можно проанализировать информацию, сохраненную в метке диска, путем использования команды prtvtoc.
№|г за шагом,.
Анализ метки диска путем использования команды prtvtoc
Зарегистрируйтесь в системе с привилегиями суперпользователя.
Введите командную строку prtvtoc /dev/rdsk/cwtwdws/j, а затем нажмите клавишу Enter.
На экране будет отображаться информация для заданного диска и указанной вами части. В следующем пункте отображается информация для полного диска 3.
Введите prtvtoc /dev/rdsk/c0t3d0s2, а затем нажмите Enter.
Система отвечает следующим образом:
* /dev/rdsk/c0t3d0s2 (volume "") partition map
* Dimensions:
*512bytes/sector
*36sectors/track
*9tracks/cylinder
*324sectors/cylinder
*1272cylinders
*1254accessible cylinders
* Flags:
*1:unmountable
*10:read-only
*First Sector Last
Partition
Tag
Flags
Sector
Count
Sector
Mount Directory
2
5
01
0
406296
406295
6
4
00
0
242352
242351
7
0
00
242352
163944
406295
/files?
Команда prtvtoc демонстрирует количество цилиндров и дорожек, а также расположение частей данного диска.
Использование утилиты format для создания частей диска
Прежде, чем вы сможете создать какую-нибудь файловую систему на некотором диске, этот диск должен быть отформатирован и разбит на части с помощью утилиты Solaris под названием format. Форматирование состоит из двух различных процессов:
Ф Запись информации форматирования на диск
Ф Выполнение анализа поверхности диска, и формирование актуального списка дефектов
Когда выполняется форматирование диска, на него наносится информация заголовков и трейлеров. Когда утилита format запускает процедуру анализа поверхности диска, контроллер сканирует диск в поисках дефектов. Необходимо отметить, что дефекты и информация, относящаяся к форматированию, уменьшают общее дисковое пространство, доступное для хранения данных. Вот почему после форматирования новый диск обычно содержит только 90-95% его емкости. Это процентное соотношение изменяется в зависимости от геометрии конкретного диска и уменьшается по мере старения диска и образования на нем большего количества дефектов.
, ПРЕДУПРЕ|одЕНУе & S.
Форматирование и создание частей представляют собой процессы разрушения информации, поэтому, прежде чем приступать к выполнению указанных процессов, убедитесь, что выполнено резервное копирование пользовательских данных.
Подчас не требуется выполнять анализ поверхности, так как многие изготовители поставляют свои дисковые накопители отформатированными и разбитыми на разделы. Вам нет необходимости использовать утилиту format при добавлении дискового накопителя к существующей системе, если только вы не предполагаете, что причиной возникновения проблем являются дефекты диска. Помимо вышеназванной причины, единственной причиной, по которой будет необходимо использовать утилиту format, является ваше желание изменить схему разбивки диска на части.
Утилита format выполняет поиск всех дисковых накопителей, присоединенных к данной системе, и сообщает о них следующую информацию:
ф Местоположение целевого диска
Ф Геометрические характеристики диска
Ф Является ли данный диск отформатированным
Ф Имеются ли на данном диске смонтированные разделы
Кроме того, утилита format применяется при проведении операций восстановления дисков для решения следующих задач:
ф Восстановление меток дисков
ф Исправление дефектных секторов
Ф Форматирование и проведение анализа дисков
ф Разбивка дисков на разделы
ф Нанесение меток на диски: запись имени диска и конфигурационной информации для последующего восстановления
Программа инсталляции операционной системы выполняет разбивку дисков и нанесение меток на них в процессе инсталляции конкретного программного обеспечения Solaris.
Однако у вас может возникнуть необходимость использования утилиты format для выполнения следующих операций:
ф Отображение информации о частях диска ф Разбивка диска на части
ф Форматирование дискового накопителя в случае возникновения проблем ф Восстановление дискового накопителя
Основной причиной, по которой системный администратор использует утилиту format, является разбивка диска на части.
Ша^ шагом ''
Форматирование диска
Процесс создания частей диска выглядит следующим образом:
Зарегистрируйтесь в системе с привилегиями суперпользователя.
- Наберите команду format.
Система отвечает следующим образом:
AVAILABLE DISK SELECTIONS: 0. cOtOdO at scsibusO slave 24 sdO: <SUN0207 cyl 1254 alt 2 hd 9 sec 36> .c0t3d0 at scsibusO slave 0: test sd3: <SUN0207 cyl 1254 alt 2 hd 9 sec 36>
ПРИМЕЧАНИЕ
Нет необходимости набирать команду целиком. После ввода первых двух символов наименования утилита format распознает команду целиком.
Укажите диск, набрав его номер.
Система отвечает следующим образом:
FOBMAT MENU: disk - select a disk type - select (define) a disk type partition - select (define) a partition table current - describe the current disk format - format and analyze the disk repair - repair a defective sector label - write label to the disk analyze - surface analysis defect - defect list management backup - search for backup labels verify - read and display labels save - save new disk/partition definitions inquiry - show vendor, product and revision volname - set 8-character volume name !<cmd> - execute <cmd>, then return quit
На приглашение утилиты format введите partition. На экране отображается меню с разделами диска, format» partition PARTITION MENU:
О - change '0' partition 1 - change '1' partition 2 - change '2' partition 3 - change '3' partition 4 - change '4' partition 5 - change '5' partition 6 - change '6' partition 7 - change '7' partition select - select a predefined table modify - modify a predefined partition table name - name the current table print - display the current table label - write partition map and label to the disk !<cmd> - execute <cmd>, then return quit
Введите команду print для отображения текущей таблицы разделов.
Система отвечает следующим образом:
Part
Tag
Flag
Cylinders
Size
Blocks
0
root
wm
0 - 202
150.66MB
(203/0/0)
308560
1
swap
wu
203 - 332
96.48MB
(130/0/0)
197600
2
backup
wm
0 - 2732
1.98GB
(2733/0/0)
4154160
3
unassigned
wm
333 - 390
43.05MB
(58/0/0)
88160
4
unassigned
wm
391 - 443
39.34MB
(53/0/0)
80560
5
unassigned
wm
444 - 801
265.70MB
(358/0/0)
544160
6
usr
wm
802 - 2182
1.00GB
(1381/0/0)
2099120
7
home
wm
2183 - 2732
408.20MB
(550/0/0)
836000
После выполнения разбивки диска вы должны нанести на него метку, для чего на приглашение команды partition следует набрать команду label:
partition» label
Если вы не нанесете метку на данный накопитель, сделанные вами изменения разделов не сохраняются.
После нанесения метки введите команду quit, чтобы выйти из меню команды partition:
partition» quit
Для выхода из утилиты format введите команду quit еще раз: format> quit
При изменении размеров раздела вы потеряете все данные. Перед тем, как продолжить, убедитесь, что вы скопировали все ваши данные либо на другой диск, либо на магнитную ленту.
Здесь важно обратить внимание на некоторые нежелательные последствия, которые могут возникнуть в процессе определения разделов диска с использованием утилиты format, если не проявить при этом должной аккуратности. Прежде всего, будьте осторожны, чтобы не потерять впустую дисковое пространство. Потери дискового пространства могут возникнуть в том случае, когда вы уменьшаете размер одной части диска и при этом не корректируете начальный номер цилиндра следующей части, примыкающей к данной.
Во-вторых, не допускайте перекрытия частей диска. Перекрытие возникает, когда один или несколько цилиндров выделены более чем для одной части диска. Например, увеличение размера одной части диска без адекватного уменьшения смежной части приведет к возникновению перекрывающихся разделов. Утилита format не будет информировать вас о потерях дискового пространства или о перекрывающихся разделах.
Еще один узелок на память: на стандартных файловых системах UFS не меняйте размеров частей диска, которые используются в настоящее время. Когда какой-нибудь диск с существующими частями повторно размечается или на него наносится новая метка, все имеющиеся данные будут потеряны. Перед проведением повторной разбивки диска скопируйте все данные на магнитную ленту или на другой диск.
Часть диска под названием Free Hog
При использовании утилиты format для изменения размеров автоматически выделяется временная часть, которая расширяется и сокращается, приспособливаясь к операциям изменения размеров частей данного диска. Эта временная часть называется "free hog" (свободное, недоступное дисковое пространство) и представляет собой неиспользуемое пространство на дисковом накопителе. Если некоторая часть диска уменьшается, то одновременно расширяется часть free hog. Часть free hog также используется для выделения дискового пространства тем частям диска, размер которых увеличивается. Однако это не предотвращает возникновения перекрытия частей диска, которое было описано в предыдущем разделе.
Часть free hog существует только тогда, когда вы запускаете утилиту format. Она не сохраняется в качестве постоянной части диска.
Использование утилиты format для модифицирования разделов
Если вам необходимо изменить размеры частей конкретного диска, вы можете либо повторно создать части диска, как это было описано в предыдущем разделе, либо использовать опцию modify утилиты format.
Опция modify позволяет суперпользователю создавать части диска путем определения размера каждой из них без необходимости отслеживать границы начальных цилиндров. Эта опция также позволяет контролировать любое превышение дискового пространства во временной части free hog.
Шагзашагом
Модифицирование части диска
Для модифицирования части диска выполните следующие операции:
Создайте резервную копию ваших данных. Процесс модифицирования частей диска разрушит все данные на диске.■
ПРИМЕЧАНИЕ
Если вы попытаетесь модифицировать смонтированные разделы, то получите сообщение об ошибке, которое гласит Cannot modify disk partitions while it has mounted partitions (He могу модифицировать разделы диска, поскольку они смонтированы).
Зарегистрируйтесь в системе с привилегиями суперпользователя и войдите в меню partition утилиты format, как было описано в упражнении 6.2 (Шаг за шагом).
После вывода на экран существующей схемы разбивки диска введите команду modify, а затем нажмите Enter.
Когда вы введете команду modify, то для диска, который не имеет смонтированных разделов, вы увидите следующую выходную информацию:
Select partitioning base:
О. Current partition table (original) .
All Free Hog
Choose base (enter number) [0]?
4. Нажмите клавишу Enter для выбора варианта по умолчанию. Система отве-
чает следующим образом:
Part
Tag
Flag
Cylinders
Size
Blocks
0
usr
wm
0 - 194
100.26MB
(195/0/0)
205335
1
unassigned
wu
195 - 1167
500.28MB
(973/0/0)
1024569
2
backup
wm
0 - 3983
2.00GB
(3984/0/0)
4195152
3
unassigned
wm
0
0
(0/0/0)
0
4
unassigned
wm
0
0
(0/0/0)
0
5
unassigned
wm
0
0
(0/0/0)
0
6
unassigned
wm
0
0
(0/0/0)
0
7
unassigned
wm
0
0
(0/0/0)
0
Do you wish to continue creating a new partition table based on above table[yes]?
Нажмите Enter для выбора варианта по умолчанию. На экране появится следующее сообщение:
Free Hog partition [6]?
Нажмите Enter для выбора варианта по умолчанию. Если все дисковое пространство является используемым, появится следующее сообщение: Warning: No space available from Free Hog partition. Continue [no]?
ПРИМЕЧАНИЕ■
Часть 6 не отображается, поскольку это временная часть диска под названием free hog.
Введите yes. Вам будет предложено ввести новое значение размера для каж
дого раздела:
Enter size
of
partition
'O' [205335b,
195c,100.26mb,0
.lOgb]:
90m
Enter size
of
partition
'1' [1024569b,973c,500.28mb
0.49gb]
: 450m
Enter size
of
partition
'3' [Ob, 0c,
O.OOmb, O.OOgb]
: <cr>
Enter size
of
partition
'4' [Ob, 0c,
O.OOmb, O.OOgb]
: <cr>
Enter size
of
partition
'5' [Ob, 0c,
O.OOmb, O.OOgb]
: <cr>
Enter size
of
partition
'7' [Ob, 0c,
O.OOmb, O.OOgb]
: <cr>
ПРИМЕЧАНИЕ ; / "
Часть 6, free hog, представляет собой неиспользуемое дисковое пространство. Вы можете захотеть выделить это пространство для другого раздела, чтобы оно не осталось неиспользуемым, либо можете сохранить это пространство и выделить его в следующий раз для какого-нибудь неиспользуемого раздела.
Когда вы закончите менять размер последнего раздела диска, на экране будет отображена приведенная ниже информация, показывающая откорректированную таблицу разделов:
Part Tag
Flag
Cylinders
Size
Blocks
0
usr
wm
0 - 175
90.49MB
(176/0/0)
185328
1
unassigned
wu
176 - 1051
450.40MB
(876/0/0)
922428
2
backup
wm
0 - 3983
2.00GB
(3984/0/0)
4195152
3
unassigned
wm
0
0
(0/0/0)
0
4
unassigned
wm
0
0
(0/0/0)
0
5
unassigned
wm
0
0
(0/0/0)
0
6
unassigned
wm
1052 - 3983
1.47GB
(2932/0/0)
3087396
7
unassigned
wm
0
0
(0/0/0)
0
Okay to make this the current partition table[yes]?
Нажмите Enter для подтверждения правильности модифицированной таблицы разделов. Появится следующее сообщение:
Enter table name (remember quotes):
Присвойте модифицированной таблице имя и нажмите Enter:
Enter table name (remember quotes): c0t3d0.2gb
После ввода имени появится следующее сообщение: Ready to label disk, continue?
Введите yes и нажмите Enter для продолжения.
Введите quit (или q) и нажмите Enter для выхода из меню partition. На экране появится главное меню утилиты format.
Введите quit и нажмите Enter для выхода из утилиты format.
Восстановление информации о разделах диска
С помощью описанной ранее команды prtvtoc всегда полезно сохранять информацию оглавления дискового тома в некотором файле . Эта информация может быть применена позднее для восстановления метки данного диска, если текущее оглавление тома окажется разрушенным или непреднамеренно измененным, а также если вам потребуется заменить дисковый накопитель.
Сохранив выходную информациу команды prtvtoc в некотором файле на другом диске, вы сможете сослаться на этот файл при запуске команды fmthard, последняя обновляет оглавления томов жестких дисков.
Восстановление оглавления тома
Для восстановления оглавления тома выполните следующие операции:
Запустите для данного диска утилиту format и разметьте его с использованием таблицы разделов по умолчанию.
Воспользуйтесь командой fmthard для записи резервной копии оглавления тома обратно на дисковый накопитель. Приведенный ниже пример демонстрирует применение команды fmthard для восстановления разрушенной метки на диске с именем /dev/rdsk/c0t3d0s2. Резервная копия информации оглавления тома находится в файле с именем c0t3d0 в каталоге /vtoc:
fmthard -s /vtoc/c0t3d0s0 /dev/rdsk/c0t3d0s2
Еще одно применение команды fmthard - разбивка нескольких дисков с использованием одной и той же схемы. Возьмите информацию оглавления тома с диска, который вы хотите скопировать (cOtOdO), и запишите ее на новый диск (cltOdO), для чего введите следующую командную строку:
prtvtoc /dev/rdsk/cOtOdOsO I fmthard -s - /dev/rdsk/clt0d0s2
Логические тома
На большом сервере с большим количеством дисковых накопителей стандартные методы разбивки диска на части являются неадекватными и неэффективными. Ограничения, продиктованные стандартными частями диска, предполагают недопустимым, если размер конкретной части превышает размер файловой системы, хранящейся на этой части. Поскольку файловые системы не могут охватывать несколько дисков, то размер конкретной файловой системы ограничен размером ее диска. Другая проблема, связанная со стандартными файловыми системами, заключается в том, что они не могут быть увеличены в размере без разрушения их данных.
Фирма Sun для решения описанных проблем выпустила два пакета программного обеспечения: Solstice DiskSuite и Sun Enterprise Volume Manager. Оба пакета позволяют файловым системам занимать несколько дисков и предусматривают повышение эффективности операций ввода вывода и надежности по сравнению со стандартными файловыми системами Solaris. Мы называет такие типы файловых систем как LVMs (logical volumes - логическими томами).
Пакет программного обеспечения Solstice DiskSuite в настоящее время входит в состав операционной системы Solaris 8. Пакет программного обеспечения Enterprise Volume Manager приобретается отдельно и не является составной частью стандартного дистрибутива операционной системы Solaris. Как правило, пакет программного обеспечения Solstice DiskSuite применяется на мультипакетах фирмы Sun, тогда как пакет программного обеспечения Enterprise Volume Manager - на дисковых массивах Sparc StorEdge. Логические тома, пакеты программного обеспечения Solstice DiskSuite и Enterprise Volume Manager подробно обсуждаются в главе 16 и входят в число тем второго экзамена.
/ ПРИМЕЧАНИЕ ;V;v;.
В случае использовании для инсталляции операционной системы метода Web Start раздел свол- пинга размещается в начале диска, однако все равно называется разделом 1; срезу за ним следует корневой раздел, для которого также сохраняется наименование - раздел 0. Это немного запутывает, однако части диска не обязательно должны располагаться на диске последовательно. Другими словами, часть 1 может начинаться с цилиндра 0 и заканчиваться цилиндром 1271, тогда как часть 0 может начинаться с цилиндра 1272 и заканчиваться цилиндром 1495. Предельный уровень производительности достигается при размещении области подкачки с начального цилиндра, что связано с более высокой скоростью вращения наружного периметра диска. Метод Web Start рассматривается в приложении А.
Составные части файловой системы UFS
UFS представляет собой дисковую файловую систему, которая используется по умолчанию в системном программном обеспечении Solaris. Файловая система UFS обладает следующими особенностями:
^> Флаги состояния. Показывают состояние файловой системы как чистое, стабильное, активное или неизвестное. Наличие флагов состояния исключает проведение дополнительных (излишних) проверок файловой системы. Если файловая система чистая или стабильная, то утилита проверки файловой системы под названием fsck (file system check) не запускается при загрузке системы.
Ф EFT (Extended Fundamental Types - расширенные фундаментальные типы). В их число входят 32-разрядные идентификатор пользователя UID, идентификатор группы GID и номера устройств.
^ Большие файловые системы. Файловая система UFS может иметь размер до 1 Тбайт и содержать стандартные файлы размером до 2 Гбайт. По умолчанию системное программное обеспечение Solaris не поддерживает расслоение дисков, которое требуется для формирования логических частей диска, достаточно больших для файловой системы размером в 1 Тбайт. Эту возможность предоставляют необязательные пакеты программного обеспечения, такие как Solstice DiskSuite.
В процессе инсталляции программного обеспечения Solaris на системном диске создается несколько файловых систем UFS. Это принятые по умолчанию файловые системы фирмы Sun. Их содержание описывается в таблице 6.1.
Таблйца;6,1 Принятые пЬумолчдуиюфа^ерыё^
ЧастьФайловая Описание
дискасистема
ОrootОrootswapswapЯвляется вершиной в иерархическом дереве файлов, хранящем файлы и каталоги, которые формируют операционную систему. Корневой каталог содержит каталоги и файлы, критичные для функционирования системы, такие как ядро, драйверы устройств, а также программы, используемые для загрузки системы. Корневой каталог содержит также каталоги точек монтирования, в которых локальные и дистанционные файловые системы могут быть присоединены к дереву файлов. Корневая файловая система всегда находится в дисковой части 0.
Оroot
Оroot
swap
swap
Предоставляет виртуальную память, или область своппинга (или область подкачки). Область используется в тех случаях, когда вы запускаете программы, слишком большие для того, чтобы разместиться в оперативной памяти компьютера. Операционная среда Solaris по мере необходимости "перекачивает" программы из оперативной памяти на диск и обратно. Хотя в этом и нет технической необходимости, тем не менее, обычно область подкачки размещается в части 1, если только каталог /var не установлен как файловая система. В противном случае файловая система использует часть диска 1, а область своппинга обычно размещается в части 4. Файловая система /var предназначена для хранения файлов и каталогов, которые изменяются или увеличиваются в размерах в течение срока эксплуатации локальной системы. В их число входят системные журналы, файлы резервных копий редакторов vi и ех, файлы спула печати и файлы UUCP. На сервере весьма полезно размещать подобные файлы в отдельной файловой системе.
Продолжение таблицы 6.1
ЧастьФайловая
дискасистема
Описание
2Полный диск
Относится ко всему диску; определяется автоматически утилитой Sun под названием format и программами инсталляции Solaris. Размер этой части диска не должен изменяться.
3/export
Хранит альтернативные версии операционной системы. Эти версии требуются для клиентских систем, архитектура которых отличается от архитектуры сервера. Клиенты с тем же типом архитектуры, что и архитектура сервера, получают исполняемые модули из файловой системы /usr, которая обычно находится в части 6. Файловая система /export, где размещаются исходные каталоги и файловые системы пользователей, также будет совместно использоваться в сети. Более подробно эти вопросы обсуждаются в главе 17.
4/export/swap
Предоставляет пространство виртуальной памяти для клиентских систем.
5/opt
Содержит дополнительные пакеты программного обеспечения фирмы Sun, такие как пакет AdminSuite, а также необязательное программное обеспечение сторонних разработчиков, которое добавляется к системе. Если в процессе инсталляции для данной файловой системы не была выделена часть диска, то каталог/opt помещается в части 0 в корневую файловую систему (/).
6/usr
Хранит команды операционной системы, - называемые также исполняемыми модулями - которые специально разработаны для запуска пользователями. В этой части диска также хранится документация, системные программы (например, init и syslogd) и библиотечные программы. Файловая система /usr включает системные файлы и каталоги, которые могут использоваться совместно с другими пользователями. Файлы, которые могут применяться на всех типах систем (страницы руководства), находятся в каталоге /usr/share.
7/home
Содержит файлы, созданные пользователями; она также называется /export/home. В стандартной системе файловая система /home представляет собой точку монтирования, которой управляет утилита AutoFS. Более подробно этот вопрос рассматривается в главе 17.
Необходимость в создании (или в пересоздании) файловой системы UFS возникает только в тех случаях, когда вы выполняете одну из следующих операций:
ф Добавляете или заменяете диски
ф Изменяете части существующего диска
ф Выполняете полное восстановление файловой системы
Ф Изменяете параметры файловой системы, такие как размер блока или размер свободного пространства
При создании файловой системы UFS дисковая часть делится на группы цилиндров. Затем упомянутая часть делится на блоки для контроля и организации структуры файлов внутри данной группы цилиндров. В файловой системе каждый блок выполняет специфическую функцию. Файловая система UFS имеет следующие четыре типа блоков:
Ф Загрузочный блок (boot block). Хранит информацию, которая используется при выполнении загрузки системы.
Ф Суперблок (superblock). Хранит важную информацию о файловой системе.
Ф Индексный дескриптор (inode). Хранит всю информацию о файле за исключением его имени.
Ф Блок хранения, или блок данных. Хранит данные каждого файла.
Загрузочный блок
Загрузочный блок хранит процедуры, используемые при выполнении загрузки системы. Без загрузочного блока система не загружается. Если файловая система не используется при загрузке системы, загрузочный блок остается пустым. Загрузочный блок появляется только в первой группе цилиндров (группа 0) и занимает первые 8 Кбайт части диска.
Суперблок
Хранит основную информацию о данной файловой системе. Ниже перечислены некоторые наиболее важные объекты, входящие в суперблок:
Ф Размер и статус файловой системы
Ф Метка (имена файловой системы и тома)
ф Размер логического блока файловой системы
Ф Дата и время последнего обновления
Ф Размер группы цилиндров
Ф Количество информационных блоков в группе цилиндров
Ф Блок итоговой информации
Ф Состояние файловой системы (чистая, стабильная или активная)
ф Имя маршрута последней точки монтирования
Без суперблока файловая система становится недоступной для чтения. Суперблок размещается в начале соответствующей части диска и дублируется в каждой группе цилиндров. Поскольку суперблок содержит критически важные данные, при создании файловой системы формируется множество суперблоков.
Копия суперблока каждой файловой системы поддерживается актуальной в оперативной памяти. Если система остановилась прежде, чем была обновлена копия суперблока на диске, самые последние изменения теряются и данная файловая система становится несогласованной. Команда sync инициирует запись данных каждого суперблока, находящегося в оперативной памяти системы, надиск. Программа проверки файловой системы под названием fsck может обнаружить и исправить проблемы, возникающие в тех случаях, когда команда sync не была применена перед закрытием системы.
Вместе с суперблоком хранится блок итоговой информации. Этот блок не дублируется, но группируется с первым суперблоком, обычно в группе цилиндров 0. Этот блок регистрирует изменения, которые имели место в процессе использования файловой системы, а также хранит листинг количества индексных дескрипторов, каталогов, фрагментов и блоков хранения в файловой системе.
Индексный дескриптор
Индексный дескриптор хранит всю информацию о файле за исключением его имени, которое хранится в каталоге. Размер индексного дескриптора равен 128 байт. Информация индексного дескриптора хранится в информационном блоке цилиндра и состоит из следующих элементов:
ф Тип файла (обычный, каталог, блочно-специальный, символьно-специальный, ссылка)
ф Режим файла (набор полномочий на чтение/запись/исполнение)
ф Количество жестких ссылок к данному файлу
ф Идентификатор владельца файла
ф Идентификатор группы, к которой принадлежит данный файл
ф Количество байт в файле
ф Массив из 15 адресов блоков диска
ф Дата и время последнего доступа к файлу
ф Дата и время последнего изменения файла
ф Дата и время создания файла
Максимальное количество файлов в файловой системе UFS определяется количеством индексных дескрипторов, выделенных ей. Количество дескрипторов зависит от размера дискового пространства, выделяемого под каждый индексный дескриптор, и от общего размера файловой системы. По умолчанию один индексный дескриптор выделяется на каждые 2 Кбайт пространства данных. Вы можете изменить выделение, принятое по умолчанию, путем использования опции -1 команды newfs. Этот вопрос подробнее рассматривается в главе 7.
Блокхранения
Блоки хранения, называемые также блоками данных, занимают все остальное дисковое пространство, выделенное для файловой системы. Размер таких блоков определяется в момент создания файловой системы. По умолчанию блоки хранения выделяются с учетом двух размеров: логический блок размером 8 Кбайт и размер фрагментации, равный 1 Кбайт.
Блоки хранения обычного файла хранят его содержимое; блоки хранения каталога - элементы, дающие номер индексного дескриптора и имена файлов в каталоге.
Свободные блоки
Блоки, которые в настоящее время не используются, такие как индексные дескрипторы, блоки косвенной адресации или блоки хранения, помечаются в таблице группы цилиндров как свободные. Эта таблица также отслеживает фрагменты для предотвращения фрагментации, ведущей к снижению производительности диска.
Создание файловой системы UFS
Для создания файловой системы UFS используйте команду newfs. Команда newfs представляет собой удобный интерфейс к команде mkfs, создающей новую файловую систему на некоторой части диска. Следует иметь в виду, что команда newfs является темой второго экзамена.
В системах Solaris 8 информация, которая используется в качестве значений по умолчанию для некоторых параметров, - количество дорожек на один цилиндр и количество секторов на одну дорожку - считывается из метки диска. Команда newfs определяет параметры файловой системы, основываясь на заданных вами опциях и той информации, которая содержится в метке диска. Затем эти параметры передаются mkfs, которая и формирует файловую систему. Хотя вы можете непосредственно использовать команду mkfs, однако она трудна в применении, а многие параметры приходится задавать вручную. Более подробно команда newfs будет обсуждаться в следующем разделе.
Еще до создания на диске файловой системы UFS вы должны его отформатировать и разбить на части. Команда newfs удаляет все данные на части диска и создает скелет структуры каталогов, включая каталог с именем lost+found. После успешного исполнения команды newfs очень важно выполнить команду fsck для проверки целостности файловой системы перед тем, как монтировать ее в первый раз. Команда fsck будет описываться позднее в настоящей главе. После того как вы исполнили команду fsck, данная часть диска готова к монтированию в качестве файловой системы.
Для создания файловой системы UFS на отформатированном и разбитом на части диске вам необходимо знать имя файла низкоуровневого устройства той части диска, которая будет содержать файловую систему.
Убедитесь в корректности имени устройства для рассматриваемой части диска до того, как переходить к следующему этапу работы. При создании новой файловой системы вы сотрете все содержимое этой части диска, но вы же не хотите ошибиться.
ШаГза шагом
Создание файловой системы UFS
Если вы повторно создаете или модифицируете существующую файловую систему UFS, создайте ее резервную копию и демонтируйте эту файловую систему до выполнения описанных ниже операций.
Зарегистрируйтесь в системе как суперпользователь.
Введите командную строку newfs /dev/rdsk/<device-name> и нажмите клавишу Enter. Вы получите запрос о том, хотите ли вы продолжать. Команда newfs требует использования имени низкоуровневого, а не буферизованного устройства. Более подробная информация о низкоуровневых и буферизованных устройствах приведена в главе 16.
Введите у для подтверждения.
В приведенном ниже примере демонстрируется создание файловой системы на устройстве /dev/rdsk/cOt3dOs7.
Станьте суперпользователем, набрав команду su, введите его пароль.
Наберите команду newfs /dev/rdsk/cOt3dOs7.
Система отвечает следующим образом:
newfs: construct a new file system /dev/rdsk/cOt3dOs7 (y/n) ? у /dev/rdsk/c0t3d0s7: 163944 sectors in 506 cylinders of 9 tracks, \
36 sectors
.9MB in 32 cyl groups (16 c/g, 2.65MB/g, 1216 i/g)
super-block backups (for fsck -b #) at: 32, 5264, 10496, 15728, 20960, 26192, 31424, 36656, 41888, 47120, 52352, 57584, 62816, 68048, 73280, 78512, 82976, 88208, 93440, 98672, 103904, 109136, 114368, 119600, 124832, 130064, 135296, 140528, 145760, 150992, 156224, 161456,
Команда newfs использует для создания файловой системы консервативные и безопасные значения параметров, принятые по умолчанию. Вопросы изменения этих значений будут рассматриваться в следующей главе. Ниже приведены значения параметров по умолчанию, используемые командой newfs:
ф Размер блока файловой системы равен 8192.
ф Размер фрагмента (наименьший распределяемый элемент дискового пространства) файловой системы равен 1024 байт.
ф Процент свободного пространства теперь вычисляется по следующей формуле: (64 Мбайт/размер раздела)* 100, округленный до наименьшего ближайшего целого значения и ограниченный между 1% и 10% включительно.
ф Количество байт на один индексный дескриптор равно 2048. Этот параметр управляет количеством дескрипторов, создаваемых для данной файловой системы (из расчета один индексный дескриптор на каждые 2 Кбайт дискового пространства).
Понятие пользовательских параметров файловой системы
Прежде, чем вы решитесь изменять принятые по умолчанию значения параметров файловой системы, которые были присвоены командой newfs, вам следует понять эти параметры. В настоящем разделе описывается каждый из приведенных ниже параметров: ф Размер логического блока ф Размер фрагмента ф Минимально свободное пространство ф Межблочный промежуток (gap)■
ф Тип оптимизации
ф Количество индексных дескрипторов и количество байт на один индексный дескриптор
Размер логического блока
Размер логического блока - это размер блоков, которые ядро операционной системы UNIX использует для чтения или записи файлов. Размер логического блока обычно отличается от размера физического блока (обычно равен 512 байт), последний представляет собой размер наименьшего блока, который может считывать или записывать контроллер диска.
Вы можете задать для файловой системы размер логического блока. После создания файловой системы вы не сможете изменить значение этого параметра без пересоздания файловой системы. На одном и том же диске можно иметь файловые системы с различными размерами логических блоков.
По умолчанию для файловой системы UFS размер логического блока равен 8192 (8 Кбайт). Файловая система UFS поддерживает логические блоки размерами 4096 (4 Кбайт) или 8192 (8 Кбайт, этот размер логического блока является рекомендованным).
Выбирая наилучший размер логического блока для вашей системы, следует учитывать как желаемую производительность, так и доступное пространство. Для большинства файловых систем UFS размер логического блока, равный 8 Кбайт, обеспечивает наилучшую производительность, предоставляя хороший баланс между производительностью диска и использованием пространства в основной памяти и на диске.
В общем случае применение более крупных логических блоков повышает эффективность тех файловых систем, в которых большинство файлов имеет большой размер. Более мелкие логические блоки следует использовать в тех файловых систем, где большинство файлов имеет небольшой размер. Для получения полного отчета о распределении файлов по размеру блоков в некоторой файловой системе можно воспользоваться командой quot -с.
Размер фрагмента
Когда файлы создаются или увеличиваются в размере, они занимают дисковое пространство как в виде полных логических блоков, так и в виде частей логических блоков, которые называются фрагментами. Когда файлу требуется дисковое пространство для хранения данных, сначала выделяются полные логические блоки, а затем для оставшейся части файла - один или несколько фрагментов. Для небольших файлов выделение дискового пространства начинается с фрагментов.
Возможность выделения для файлов фрагментов логических блоков вместо целых блоков экономит дисковое пространство за счет уменьшения его фрагментации, которая возникает из-за наличия неиспользуемых дырок в логических блоках. Размер фрагмента определяется при создании файловой системы UFS. По умолчанию размер фрагмента равен 1 Кбайт. Каждый логический блок может быть разделен на один, два, четыре или восемь фрагментов, что дает размеры фрагментов от 512 байт (только для файловых систем с размером логического блока 4 Кбайт) до 8192 байт (только для файловых систем с размером логического блока 8 Кбайт). Нижняя граница размера фрагмента фактически привязана к размеру сектора диска, который обычно равен 512 байт.
Верхняя граница размера фрагмента может достигать полного размера логического блока, в этом случае фрагмент вообще не является фрагментом. Такая конфигурация может оказаться оптимальной для файловых систем с файлами большого размера, когда приоритетом для вас является производительность, а не экономия дискового пространства.
При выборе размера фрагмента обратите внимание на компромисс между временем и пространством: Малый размер фрагмента экономит дисковое пространство, однако в этом случае требуется больше времени для распределения. В общем случае применение более крупных фрагментов повышает эффективность тех файловых систем, в которых большинство файлов имеет большой размер. Более мелкие фрагменты следует использовать для файловых систем, в которых большинство файлов имеет небольшой размер.
Минимально свободное пространство
Минимально свободное пространство представляет собой процент общего дискового пространства, оставляемого в резерве при создании файловой системы. До Solaris 7
размер этого резерва по умолчанию всегда был равен 10%. В Solaris 7, а теперь и в Solaris 8, минимально свободное пространство определяется автоматически. Этот новый метод вычисления свободного дискового пространства обеспечивает уменьшение его потерь на больших файловых системах.
Свободное пространство является важным фактором, поскольку доступ к файлам становится все менее и менее эффективным по мере наполнения файловой системы. Пока размер свободного пространства сохраняется адекватным, файловая система UFS функционирует эффективно. Когда файловая система заполняется, используя все доступное пользователям дисковое пространство, только суперпользователь может получить доступ к зарезервированному свободному пространству.
Такие команды, как df, сообщают процент дискового пространства, доступного пользователям, за исключением процента, выделенного как минимально свободное пространство. Когда команда сообщает, что более 100% дискового пространства данной файловой системы находится в использовании, часть указанного резерва используется суперпользователем.
Если вы наложили квоты на пользователей, то размер дискового пространства, доступного пользователям, не включает резерв свободного пространства. При помощи команды tunefs вы можете изменить значение минимально свободного пространства для существующей файловой системы.
Межблочный промежуток (Gap)
Ожидаемое минимальное время, измеряемое в миллисекундах, которое требуется центральному процессору, чтобы завершить передачу данных и инициировать новую передачу иа один и тот же цилиндр диска. По умолчанию величина этой задержки зависит от типа диска и обычно оптимизируется для каждого типа.
В процессе записи некоторого файла программы выделения дискового пространства файловой системы UFS пытаются разместить новые блоки на том же самом цилиндре, где находился предыдущий блок данного файла. Указанные программы пытаются также оптимальным образом разместить новые блоки в пределах дорожек, чтобы минимизировать ротацию диска при получении доступа к этим блокам.
Для позиционирования блоков файлов таким образом, чтобы они располагались "удобно для вращения", программы выделения дискового пространства должны иметь информацию о том, как быстро центральный процессор может обслуживать операции передачи данных и сколько времени требуется диску для перехода с одного блока на другой. При помощи опций команды mkfs вы можете определить, как быстро вращается диск и сколько дисковых блоков (секторов) размещается на одной дорожке. Программы выделения дискового пространства используют эту информацию для определения того, сколько миллисекунд потребуется диску для перехода на некоторый блок. Затем, используя ожидаемое время передачи (циклическую задержку), эти программы могут позиционировать, или размещать, блоки таким образом, чтобы следующий блок оказывался прямо под головкой диска, когда система будет готова его прочесть.
Размещайте блоки последовательно только в том случае, если ваша система обладает достаточной производительностью для считывания этих блоков за один оборот диска. Если же система является достаточно медленной, то диск, вращаясь, пропустит начало следующего блока в данном файле и должен будет выполнить полный оборот прежде, чем блок сможет быть считанным, что потребует значительного времени. Вы должны попытаться задать подходящее значение для промежутка между чтением блоков данных на диске таким образом, чтобы головка диска оказывалась над требуемым блоком, как только произойдет очередное обращение к диску.
Тип оптимизации
Тип оптимизации представляет собой либо пространство, либо время. Когда вы выбираете оптимизацию пространства, дисковые блоки выделяются так, чтобы уменьшить фрагментацию и оптимально использовать дисковое пространство. Оптимизация дискового пространства принимается по умолчанию.
Когда вы выбираете оптимизацию времени, дисковые блоки выделяются максимально быстро, при этом их размещению уделяется меньшее внимание. Оптимизация времени представляет собой тип оптимизации по умолчанию в том случае, когда вы устанавливаете минимально свободное пространство в значение, равное 10% или более. При достаточной величине свободного пространства дисковые блоки могут быть выделены эффективно и с минимальной фрагментацией.
С помощью команды tunefs вы можете изменить значение типа оптимизации для существующей файловой системы.
Количество индексных дескрипторов и количество байт на один индексный дескриптор
Количество индексных дескрипторов определяет количество файлов, которые можно иметь в данной файловой системе, поскольку каждый файл имеет один индексный дескриптор. Количество байт на один индексный дескриптор определяет общее количество индексных дескрипторов, создаваемых при построении файловой системы: оно равняется суммарному размеру данной файловой системы, деленному на количество байт, приходящееся на один индексный дескриптор. После выделения индексных дескрипторов вы не сможете поменять их количество без повторного создания файловой системы. .
|1&.да^ЕНАНИЕ: - -,v r:x.v . ■
Куда лучше иметь избыточное количество индексных дескрипторов, чем столкнуться с их недостатком. Если у вас слишком мало индексных дескрипторов, вы можете достичь мвксимвльного количества файлов на некоторой части диска, которая при этом будет практически пустой.
По умолчанию количество байт на один индексный дескриптор равняется 2048 (2 Кбайт), при этом предполагается, что средний размер каждого файла равен или больше 2 Кбайт. Большинство файлов имеет размер больший, чем 2 Кбайт. Файловая система с большим количеством символических ссылок будет иметь меньшее значение среднего размера файла. Если ваша файловая система будет содержать много малых файлов, вы можете присвоить этому параметру меньшее значение.
Операции с файловой системой
В настоящем разделе будут описаны утилиты Solaris, применяемые для создания, проверки, восстановления и монтирования файловых систем. Используйте эти утилиты, чтобы сделать файловые системы доступными для пользователей и убедиться в их надежности.
Синхронизация файловой системы
Файловая система UFS базируется на внутреннем наборе таблиц, которые обеспечивают слежение за индексными дескрипторами, а также за используемыми и доступными блоками. Когда пользователь выполняет некоторую операцию, требующую записи данных
на диск, то информация, подлежащая записи, сначала копируется в некоторый буфер в ядре операционной системы. Обычно обновление информации на диске не производится до тех пор, пока не будет возвращена данная операция записи на диск. В любой заданный момент времени файловая система, находящаяся на диске, может запаздывать по отношению к файловой системе, которая представлена буферами, расположенными в физической памяти системы. Внутренние таблицы, в конце концов, обновляются, когда данный буфер требуется для другого использования или ядро автоматически запускает демон fsflush (это происходит с интервалом в 30 секунд).
Если система останавливается без записи на диск резидентной информации, находящейся в ее оперативной памяти, файловая система на диске окажется в некотором несогласованном состоянии. Если внутренние таблицы файловой системы не синхронизированы надлежащим образом с данными на диске, возникает несогласованность и файловые системы нуждаются в восстановлении. Файловые системы могут быть повреждены или оказаться несогласованными из-за внезапного завершения работы системы в следующих случаях:
ф Авария электропитания
ф Случайное отключение системы
ф Отключение системы без корректного проведения процедуры ее закрытия
ф Выполнение команды Stop+A (L1+A)
ф Ошибка программного обеспечения в ядре операционной системы
ф Отказ аппаратных средств, приведший к неожиданному останову системы
Для предотвращения некорректного останова текущее состояние файловой системы должно быть записано на диск (то есть, должна быть выполнена ее синхронизация) прежде, чем вы остановите центральный процессор или отключите диск.
Восстановление файловых систем
В процессе штатной работы создаются, модифицируются и удаляются файлы. Каждый раз, когда модифицируется какой-нибудь файл, операционная система выполняет некоторую последовательность обновлений файловой системы. Когда система загружается, выполняется автоматическая проверка согласованности файловой системы. Большую часть времени в период проверки файловой системы устраняются любые проблемы, с которыми она сталкивается. Файловые системы проверяются с помощью команды fsck.
В системе Solaris команда fsck использует флаг состояния, который сохраняется в суперблоке, для регистрации статуса данной файловой системы. Этот флаг используется командой fsck для определения, нуждается ли файловая система в проведении проверки на согласованность. Этот флаг состояния используется сценарием /etc/bcheckrc в процессе загрузки системы и командой fsck, когда она запускается из командной строки с опцией -ш. Далее приведены возможные значения состояния:
ф FSCLEAN. Если файловая система была демонтирована должным образом, ее флаг состояния устанавливается в значение FSCLEAN. Любая файловая система с флагом состояния FSCLEAN не проверяется при загрузке системы.
ф FSSTABLE. Данная файловая система монтируется (или была смонтирована), однако не изменилась с момента последней контрольной точки - с момента исполнения команд sync или fsflush - что обычно происходит через каждые 30 секунд. Например, ядро периодически проверяет, не простаивает ли файловая система, и,
если это так, сбрасывает информацию, содержащуюся в суперблоке, обратно на диск и помечает данную файловую систему. В случае отказа системы структура самой файловой системы остается стабильной, однако пользователи могут потерять небольшое количество данных. Файловые системы, помеченные как FSSTABLE, могут пропустить процедуру проверки перед их монтированием.
ф FSACTIVE. Когда файловая система монтируется, а затем модифицируется, ее флаг состояния устанавливается в значение FSACTIVE, и такая файловая система может содержать несогласованности. Файловая система помечается как FSACTIVE перед тем, как любые измененные данные записываются на диск. Когда файловая система корректно демонтируется, ее флаг состояния устанавливается в значение FSCLEAN. Файловая система с флагом состояния FSACTIVE должна быть проверена с помощью команды fsck, поскольку она может быть несогласована. Система не монтирует файловую систему для чте- ния/записи, если только ее состояние не определяется флагом FSCLEAN или FSSTABLE.
ф FSBAD. Если корневая файловая система монтируется, и при этом ее состояние не является FSCLEAN или FSSTABLE, то ее флаг состояния устанавливается в значение FSBAD. Ядро не меняет состояние этой файловой системы на FSCLEAN или FSSTABLE. Корневая файловая система, снабженная признаком FSBAD, в процессе загрузки монтируется только для чтения. Вы можете запустить команду fsck на низкоуровневом корневом устройстве, а затем повторно смонтировать корневую файловую систему для чтения и записи.
Ф FSLOG. Если файловая система была смонтирована с регистрацией UFS, то ее флаг состояния устанавливается в значение FSLOG. Любая файловая система с флагом состояния FSLOG не проверяется при загрузке системы. Монтирование файловой системы из командной строки описывается далее в этой главе.
Команда fsck представляет собой программу многократной проверки файловых систем, которая выполняет последовательные прохождения через каждую файловую систему, проверяет блоки и размеры, имена маршрутов, связность, количество ссылок и таблицу свободных блоков (возможно, перестраивая эту таблицу). Команда fsck также выполняет очистку файловой системы. Фазы (проходы), выполняемые UFS-версией команды fsck, представлены в таблице 6.2.
Фаза команды fsck Выполняемая задача
Фаза 1
Проверяет блоки и размеры
Фаза 2
Проверяет имена маршрутов
Фаза 3
Проверяет связность компонентов фвйловой системы
Фаза 4
Проверяет количество ссылок
Фаза 5
Проверяет группы цилиндров диска
Обычно команда fsck выполняется в неинтерактивном режиме при загрузке, чтобы привести файловые системы в порядок после внезапного останова вычислительной системы, при котором самые последние изменения файловых систем могли быть не записаны надиск. В ходе проверки fsck автоматически исправляет любые несогласованности основных файловых систем, однако не пытается исправить более серьезные ошибки. Команда
fsck исправляет такие несогласованности, которые возникают после внезапного останова системы. В более серьезных ситуациях эта команда сообщает об ошибке и завершает свою работу, что говорит оператору о необходимости запустить fsck вручную.
Определение необходимости проверки файловой системы
Файловые системы должны периодически проверяться с целью выявления несогласованностей, что позволяет исключить неожиданные потери данных. Как уже отмечалось выше, проверка состояния файловой системы выполняется автоматически при загрузке, однако нет необходимости перезагружать систему, чтобы проверить стабильность файловых систем.
6.6 Определение текущего состояния файловой системы
Приведенная ниже процедура описывает метод определения текущего состояния файловых систем и необходимости их исправления:
Станьте суперпользователем.
Наберите fsck -m /dev/rdsk/cntfid/isn и нажмите Enter. Выполняется проверка флага состояния из суперблока заданной вами файловой системы на предмет того, является ли указанная файловая система чистой или требует проверки. Если опустить в командной строке аргумент, описывающий устройство, то проверяются все файловые системы UFS, перечисленные в файле /etc/vfstab, для которых значение параметра, указывающее число прохождений команды fsck, больше 0.
В приведенном примере первая файловая система требует проверки, а вторая - нет: fsck -m /dev/rdsk/c0t0d0s6
** /dev/rdsk/c0t0d0s6
ufs fsck: sanity check: /dev/rdsk/c0t0d0s6 needs checking
fsck -m /dev/rdsk/c0t0d0s7
** /dev/rdsk/c0t0d0s7
ufs fsck: sanity check: /dev/rdsk/c0t0d0s7 okay
Запуск команды feck вручную
Вам может потребоваться вручную проверить файловые системы, когда они не могут быть смонтированы или вы определили, что файловая система не чиста. Свидетельством того, что файловая система нуждается в проверке, служат сообщения об ошибках, отображаемые в окне консоли, или беспричинная авария системы.
Когда вы запускаете команду fsck вручную, она регистрирует каждую обнаруженную несогласованность и исправленные безобидные ошибки. В более серьезных случаях эта команда регистрирует несогласованность и предлагает вам выбрать вариант реагирования. Иногда корректирующие действия, выполняемые командой fsck, приводят к некоторым потерям данных. Объем и серьезность потерь могут быть определены по ее выходной диагностической информации.
Команда feck имеет опцию -у, которая автоматически формирует ответ "да" (yes) на каждый вопрос этой команды. Однако, будьте осторожны! Если команда feck запросит удаление какого-нибудь файла, она ответит сама себе "да", а вы не сможете управлять этим процессом. Хотя, если не удалить такой файл, файловая система останется нечистой и не сможет быть смонтирована.
ЭД^ за шагом
6.7 Проверка файловых систем вручную
Чтобы проверить все файловые системы вручную, выполните следующие операции:
Станьте суперпользователем.
Демонтируйте файловую систему.
Наберите fsck и нажмите Enter.
Проверяются все файловые системы, перечисленные в файле /etc/vfstab, у которых поле pass (значение числа прохождений командой fsck) больше 0. В качестве аргумента команды fsck можно также задать каталог в виде точки монтирования или имя устройства в форме /dev/rdsk/cntndnsn. Команда fsck требует имя файла низкоуровневого устройства.
На экране отображаются сообщения о любых несогласованностях. Единственный способ успешно изменить данную файловую систему и исправить имеющуюся проблему - это отвечать yes на такие сообщения.
Если вы исправляете какие-нибудь ошибки, введите команду fsck и нажмите Enter. Может оказаться, что fsck не в состоянии исправить все ошибки при однократном исполнении. Если вы увидите сообщение FILE SYSTEM STATE NOT SET TO OKAY ("Состояние файловой системы не нормально"), запустите эту команду повторно и продолжайте запускать ее до тех пор, пока она не исполнится чисто, не выдавая сообщений об ошибках.
Переименуйте и переместите любые файлы, помещаемые в каталог lost+found. Отдельные файлы, помещаемые командой fsck в каталог lost+found, переименовываются по номеру их индексного дескриптора, поэтому может оказаться, что достаточно сложно определить, как эти файлы именовались изначально. Если возможно, переименуйте такие файлы и переместите их в исходное местоположение. Вы могли бы воспользоваться командой grep для сопоставления фраз с отдельными файлами и применить команду file для определения типа файлов, их владельцев и так далее. Если в каталог lost+found сбрасывается целый каталог, то в этом случае проще определить его происхождение и переместить в исходное местоположение.
Иногда суперблок файловой системы может оказаться разрушенным, и feck запросит у вас местопоИногда суперблок файловой системы может оказаться разрушенным, и feck запросит у вас местоположение альтернативного суперблока. Для получения этой информации введите следующую команду:ложение альтернативного суперблока. Для получения этой информации введите следующую команду:newfs -Nv Craw device name>где «raw device name> - имя низкоуровневого устройства с альтернативным суперблоком.newfs -Nv Craw device name>где «raw device name> - имя низкоуровневого устройства с альтернативным суперблоком.
Иногда суперблок файловой системы может оказаться разрушенным, и feck запросит у вас местопо
Иногда суперблок файловой системы может оказаться разрушенным, и feck запросит у вас местопо
ложение альтернативного суперблока. Для получения этой информации введите следующую команду:
ложение альтернативного суперблока. Для получения этой информации введите следующую команду:
newfs -Nv Craw device name>
где «raw device name> - имя низкоуровневого устройства с альтернативным суперблоком.
newfs -Nv Craw device name>
где «raw device name> - имя низкоуровневого устройства с альтернативным суперблоком.
Монтирование файловых систем
Создав какую-нибудь файловую систему, необходимо сделать ее доступной. Файловые системы делаются доступными посредством их монтирования. Используя команду mount, вы присоединяете файловую систему к дереву каталогов в заданной точке монтирования, и эта файловая система становится доступной для вычислительной системы. Кор-
невая файловая система монтируется во время выполнения загрузки и не может быть демонтирована. Любая другая файловая система в любой момент времени может быть смонтирована или демонтирована из корневой файловой системы.
Различные методы, применяемые для монтирования файловой системы, описываются в следующих разделах.
Создание элемента в файле /etc/vfstab для монтирования файловых систем
Файл /etc/vfstab (таблица виртуальных файловых систем) содержит список файловых систем, которые будут автоматически монтироваться при выполнении загрузки системы в многопользовательское состояние. Системный администратор помещает элементы в этот файл, определяя тем самым, какие файловые системы будут монтироваться при загрузке. Ниже приведен пример файла/etc/vfstab:
♦device
device
mount
FS
fsck
mount
mount
#to mount
to fsck
point
type
pass
at boot options
/dev/dsк/cOtOdOs0
/dev/rdsk/cOtOdOs 0
/
ufs
1
no
-
/proc
-
/proc
proc
no
-
/dev/dsk/cOtOdOsl
-
-
swap
no
-
swap
-
/ tnp
tmpfs
-
Yes
-
/dev/dsk/c0t0d0s6
/dev/rdsk/c0t0d0s6
/usr
ufs
2
no
-
Zdev/dsk/c0t3d0s7
Zdev/rdsk/c0t3d0s7
/data
ufs
2
no
-
Каждый столбец информации в этом файле соответствует следующему формату:
ф device to mount. Содержит буферизованное устройство, которое соответствует монтируемой файловой системе.
ф device to fsck. Содержит низкоуровневое (символьное) специальное устройство, которое соответствует монтируемой файловой системе. Этот столбец определяет низкоуровневый интерфейс, используемый командой fsck. Используйте тире (-) в случае отсутствия устройства, например, когда речь идет о монтировании области своппинга, /ргос, временной или сетевой файловой системы.
Ф mount point. Принятый по умолчанию каталог точки монтирования.
ф FS type. Содержит тип файловой системы.
ф fsck pass. Это поле содержит число прохождений, используемое командой fsck, для принятия решения о том, следует ли проверять некоторый файл. Когда данное поле содержит символ тире, файловая система не проверяется. Когда данное поле содержит значение, равное или большее единицы, файловая система проверяется последовательно в порядке ее появления в файле /etc/vfstab. Значение числа прохождений не оказывает влияния на последовательность проверки файловой системы.с
ф mount at boot. Определяет, должна ли файловая система автоматически монтироваться при выполнении загрузки системы. Сценарии гс, размещенные в каталоге /etc, определяют, какие именно файловые системы будут монтироваться на каждом уровне запуска системы.
ф mount options. Содержит список опций, разделенных запятыми (использование пробелов не допускается), которые применяются при монтировании файловой системы. Используйте тире, чтобы показать отсутствие опций.
W-rii^iiiiEtw^ ■ А",: ’*■ ■ ^^y^'"- !*
Общим заблуждением является то, что поле pass программы feck якобы определяет последовательность, в которой будут проверяться файловые системы. В программном обеспечении SunOS значение этого поля не влияет на порядок, в котором будут проверяться файловые системы. В процессе загрузки выполняется предварительная проверка каждой файловой системы, которая будет смонтирована с жесткого диска, при этом используется сценарий загрузки /sbin/rcS, который проверяет корневую файловую систему и файловую систему /usr. Затем другие сценарии командного процессора используют команду feck для последовательной проверки каждой дополнительной файловой системы. Эти сценарии не проверяют файловые системы параллельно. Файловые системы проверяются последовательно в процессе загрузки системы, даже если значение поля feck pass для них больше единицы. Значение этого поля может быть любым числом, большим единицы.
Использование командной строки для монтирования файловых систем
Файловые системы могут быть смонтированы из командной строки с помощью команды mount. Команды, представленные в таблице 6.3, используются из командной строки, чтобы монтировать и демонтировать файловые системы.
Команда
Описание
mount
Монтирует заданные файловые системы и дистанционные ресурсы.
mountall
Монтирует все файловые системы, заданные в таблице файловых систем (vfBtab).
umount
Демонтирует заданные файловые системы и дистанционные ресурсы.
umountall
Демонтирует все файловые системы, заданные в таблице файловых систем (vfetab).
-ПРИМЕНАЙЙЕь' , -ч
Файловые системы демонтируются автоматически; этот процесс является составной частью процедуры закрытия системы.
Диски CD-ROM, содержащие файловые системы, должны монтироваться автоматически при установке носителя информации в устройство, если запущен менеджер томов (Volume Manager). Диски, содержащие файловые системы, которые не были смонтированы автоматически, могут быть смонтированы вручную при запуске команды volcheck.
В общем случае части локальных дисков должны быть включены в файл /etc/vfstab, чтобы они автоматически монтировались в процессе загрузки.
Отсоединение файловой системы удаляет ее содержимое из точки монтирования (из каталога). Некоторые задачи администрирования не могут быть выполнены на смонтированной файловой системе. Вы должны демонтировать файловую систему в следующих случаях:
ф Файловая система больше не является необходимой.
ф Вы проверяете и восстанавливаете файловую систему с помощью команды fsck. ф Вы намерены выполнить полное резервное копирование файловой системы.
Отображение смонтированных файловых систем
Всякий раз, когда вы монтируете или демонтируете файловую систему, файл /etc/ mnttab (таблица монтирования) меняется, отображая перечень файловых систем, смонтированных в данный момент времени.
В предыдущих выпусках операционной системы Solaris файл /etc/mnttab представлял собой текстовый файл, хранящий информацию о смонтированных файловых системах. Недостатком такой реализации было то, что его информация могла не соответствовать реальному состоянию смонтированных файловых систем. Когда же файл /etc/mnttab стал реализован как файловая система, информация о смонтированных файловых системах и опциях монтирования может быть более точно отслеживаема ядром. Таким образом, теперь этот файл будет всегда отражать встроенную в ядро таблицу монтирования. A /etc/mnttab - это файловая система MNTFS, которая в режиме только для чтения получает информацию непосредственно от ядра, повествующую о смонтированных файловых системах на локальной вычислительной системе. Файловая система, смонтированная самой первой, будет находиться первой в списке, а смонтированная самой последней - будет последней в списке.
Вы можете отобразить содержимое таблицы монтирования с помощью команды cat или more, однако вы не можете редактировать ее так, как это можно было делать с файлом /etc/vfstab. Ниже приведен пример файла таблицы монтирования:
/dev/dsk/c0t3d0s0
ufs
rw,suid
693186371
/dev/dsk/c0tld0s6
/usr
ufs
rw,suid
693186371
/proc
/proc
proc
rw,suid
693186371
swap
/tmp
tmpfs
rw,dev=0
693186373
Вы также можете увидеть список смонтированных файловых систем, введя /etc/mount из командной строки. Система отвечает следующим образом:
/ on /dev/dsk/c0t3d0s0 read/write/setuid/largeflies on ...
/usr on /dev/dsk/c0t3d0s6 read/write/setuid/largefiles on ...
/proc on /proc read/write/setuid on Fri May 16 11:39:05 1997
/dev/fd on fd read/write/setuid on Fri May 16 11:39:05 1997
/export on /dev/dsk/c0t3d0s3 setuid/read/write/largefiles on ...
/export/home on /dev/dsk/c0t3d0s7 setuid/read/write/largefiles on ...
/export/swap on /dev/dsk/c0t3d0s4 setuid/read/write/largefiles on ...
/opt on /dev/dsk/c0t3d0s5 setuid/read/write/largefiles on ...
/trap on swap read/write on Fri May 16 11:39:07 1997
Бывает ли когда-нибудь необходимо выполнять команду feck на какой-нибудь файловой системе, для которой разрешено протоколирование UFS? Ответ в данном случае положительный. Обычно нет необходимости выполнять команду feck на файловой системе, для которой разрешено протоколирование UFS. Единственным исключением из этого правила является случай, когда журнал протоколирования испорчен. В качестве примера можно привести повреждение носителя информации, которое делает этот журнал непригодным к использованию. В этом случае протоколирование переводит файловую систему в "состояние ошибки", и вы не сможете смонтировать и использовать ее до тех пор, пока не будет запущена программа feck. Наиболее безопасный вариант - всегда запускать feck. Это будет помогать немедленно, если задано протоколирование и файловая система не находится в состоянии ошибки.
Монтирование файловой системы с большими файлами
Опция монтирования largefiles разрешает пользователям монтировать файловую систему, содержащую файлы размером более 2 Гбайт. Опция монтирования largefiles принята по умолчанию для операционной среды Solaris 8. Файловая система, смонтированная с использованием данной опции, может содержать один или несколько файлов размером более 2 Гбайт.
Для отключения такой возможности вы должны явным образом применить опцию монтирования nolargefiles. Опция nolargefiles обеспечивает полную совместимость с ранее существующими возможностями файловой системы, принудительно устанавливая максимальный размер файла, равный 2 Гбайт.
Файловые системы, которые достигли или превысили 90% отведенной им емкости, должны быть очищены от файлов, не являющихся необходимыми. Вы можете сделать это, переместив такие файлы на какой-нибудь диск, или можете удалить эти файлы после получения соответствующих полномочий.
Монтирование файловой системы с разрешенным протоколированием UFS
Новая возможность протоколирования UFS исключает несогласованность файловой системы, что существенно уменьшает время, необходимое для перезагрузки системы. Для разрешения протоколирования UFS на некоторой файловой системе следует использовать опцию -о logging либо в файле /etc/vfstab, либо в качестве опции команды mount.
Протоколирование UFS представляет собой процесс сохранения операций файловой системы в некотором журнале протоколирования прежде, чем транзакции будут применены к данной файловой системе. Поскольку файловая система в этом случае никогда не сможет стать несогласованной, команда fsck обычно может быть обойдена, что сокращает время, необходимое для перезагрузки системы в случае ее аварии либо после некорректного останова.
Журналу UFS выделяются свободные блоки из данной файловой системы. Его размер составляет приблизительно 1 Мбайт на каждый 1 Гбайт файловой системы вплоть до максимального размера в 64 Мбайт. По умолчанию используется опция nologging.
Отображение дискового пространства, используемого файловой системой
Для просмотра емкости каждой смонтированной файловой системы, размера доступного дискового пространства и процента этого пространства, используемого в настоящее время, следует применять команду df и ее опции. Для получения отчета о количестве свободных дисковых блоков и файлов следует использовать команду du (directory usage - использование каталогов).
В приведенном ниже примере демонстрируется применение команды df для отображения информации о дисковом пространстве. Синтаксис этой команды выглядит следующим образом:
df -F fstype -д -k -t <directory>
Пояснения к команде df и ее опциям представлены в таблице 6.4.
Таблицам Крмаэд^ У»;*'-к .У....... . ' 1,
КомандаОписание
dfКоманда df без опций выводит список всех смонтированных файловых
систем и соответствующие им имена устройств. Кроме того, она выводит общее количество используемых блоков размером в 512 байт и количество файлов.
<directory>Каталог, файловую систему которого вы хотите проверить. Отобража
ются имя устройства, количество используемых блоков и файлов.
-F fstype
Отображаются демонтированные файловые системы, имеющие тип fstype, соответствующие им имена устройств, количество используемых блоков размером в 512 байт и количество файлов.
Команда
Описание
Продолжение таблицы 6.4
-кОтображается список файловых систем, количество используемых ки
лобайт, процент используемой емкости и точки монтирования.
-tОтображается как общее количество блоков, так и количество исполь
зуемых блоков для всех смонтированных файловых систем.
В приведенном ниже примере демонстрируется, как отобразить информацию о дисковом пространстве с использованием команды df. Наберите следующую команду:
df -к
Система отвечает следующим образом:
Filesystem
kbytes
used
avail
capacity
Mounted on
/ргос
0
0
0
0%
/proc
/dev/dsk/cOt3d0s0
144799
23880
106440
19%
/
/dev/ds к/ cOt3d0s 6
1016455
496362
459106
52%
/usr
fd
0
0
0
0%
/dev/fd
/dev/dsk/c0t3d0s3
41151
11
37025
1%
/export
/dev/dsk/c0t3d0s7
392503
9
353244
1%
/export/home
/dev/dsk/c0t3d0s4
37351
9
33607
1%
/export/swap
/dev/dsk/c0t3d0s5
255319
187031
42757
82%
/opt
swap
107584
272
107312
1%
/tmp
Вы увидите информацию об использовании дискового пространства для каждой файловой системы, смонтированной в настоящее время.
Отображение информации о размерах каталогов
Применяя команду df, вы отображаете информацию об использовании дискового пространства файловой системой. Для отображения дискового пространства какого-нибудь каталога и всех его подкаталогов в виде блоков по 512 байт существует команда du.
Команда du показывает информацию об использовании дискового пространства каждым файлом в каждом подкаталоге некоторой файловой системы. Для получения листинга размеров каждого подкаталога файловой системы наберите команду cd с указанием имени маршрута, связанного с данной файловой системой, и запустите следующий конвейер:
du -s* I sort -г -п
Конвейер, который использует опции реверсной и числовой сортировки команды sort, обрабатывает большие каталоги. Применяйте команду Is -1 для анализа размеров (в байтах) и времени модификации файлов внутри каждого каталога. Старые файлы и текстовые файлы размером более 100 Кбайт рекомендуется хранить автономно.
В приведенном ниже примере демонстрируется, как с помощью команды du отобразить информацию о дисковом пространстве, используемом каталогом /var/adm. Файлы большего размера отображаются первыми, а опция -к обеспечивает отображение размера файлов в килобайтах (1024 байт). Введите следующую командную строку:
du -k /var/adm I sort -г -п
Система отвечает следующим образом:
92
/var/adm
4
/var/adm/acct
1
/var/adm/sa
1
/var/adm/passwd
1
1
1
/var/adm/log /var/adm/acct/sum /var/adm/acct/nite
1
/var/adm/acct/fiscal
Управление использованием дискового пространства пользователями
Квоты позволяют системным администраторам контролировать размер файловых систем UFS посредством ограничения размера дискового пространства, которое может быть предоставлено отдельным пользователя. Квоты особенно полезны на тех файловых системах, на которых размещаются исходные (домашние) каталоги пользователей. После установки квот они могут быть изменены для уточнения размера дискового пространства или количества индексных дескрипторов, которые могут использоваться пользователями системы. Кроме того, квоты могут быть добавлены или удалены по мере изменения требований системы. Состояние квот можно контролировать. Команды квотирования позволяют администраторам отображать информацию о квотах какой-нибудь файловой системы или проводить поиск пользователей, которые превысили отведенные им квоты.
После того, как вы установили и включили дисковые квоты и квоты индексных дескрипторов, вы можете определить тех пользователей, которые превысили отведенные им квоты. Вы также можете проверить квоты для файловых систем целиком, используя для этого команды, представленные в таблице 6.5.
Таблица 6.5 Команды для проверки квот ''"'л’..»геч..---> ^':м^ 'а,.:?.
КомандаОписание
quotaОтображает информацию о квотах и об использовании дискового про
странства в некоторой файловой системе теми отдельными пользователями, для которых были активизированы квоты.
repquotaОтображает информацию о квотах и об использовании дискового простран
ства всеми пользователями на одной или нескольких файловых системах.
Сегодня вы все реже можете увидеть использование квот, поскольку стоимость дисковой памяти продолжает падать. В большинстве случаев системный администратор просто наблюдает за дисковым пространством для идентификации пользователей, которые могли бы использовать больше, чем им положено по справедливости. Как было показано в настоящем разделе, эту задачу можно решить весьма просто с помощью команды du. Однако на большой системе с множеством пользователей дисковые квоты могут быть эффективным способом для контроля использования дискового пространства.
Резюме
Настоящая глава содержит описание принципов организации дисковых файловых систем и методов управления такими системами. Описаны основные термины, относящиеся к геометрии диска, которые необходимо понять прежде, чем приступать к созданию файловой системы.
Данная глава содержит также введение во все типы файловых систем, доступных на платформе Solaris. Вы должны представлять себе, какую именно файловую систему следует использовать в различных ситуациях, с которыми вы можете столкнуться.
Была описана подготовка диска для установки файловой системы посредством разбивки этого диска на части при помощи утилиты format. Также были обсуждены команды Solaris, используемые для отображения и восстановления информации такого диска.
Был описан процесс создания файловой системы в разделе диска. Были представлены параметры создания файловой системы, влияющие на ее производительность. В этом разделе также содержится детальное описание всех составных частей файловой системы, и когда вам придется создавать файловые системы, вы уже будете знакомы со всей терминологией, которая может при этом встретиться.
Системный администратор должен регулярно контролировать все файловые системы. В настоящей главе были детально описаны команды и утилиты, используемые для решения указанной задачи.
Глава 7 представит введение в некоторые дополнительные аспекты управления файловыми системами, в том числе управление сменными носителями информации, дополнительные темы, связанные с созданием и настройкой файловых систем, пакеты DiskSuite и Solstice Volume Manager. Системные администраторы затрачивают значительное время на решение задач управления и тонкую настройку файловых систем для повышения эффективности вычислительной системы. Следовательно, понимание этой тематики является критически важным для системных администраторов.
Ключевые термины
Файловая система
Метка диска
Таблица разделов
Дисковая файловая система
Сетевая файловая система
Виртуальная файловая система
Часть диска
Часть диска под названием Free Hog
Область своппинга (подкачки)
Логический том
Суперблок
Индексный дескриптор
Блок хранения
Свободный блок
Примените ваши знания
Протоколирование UFS
Дисковая квота
Примените ваши знания
Отображение информации по конфигурации диска
В настоящем упражнении вы определите геометрические параметры и информацию о разбивке на части вашего дискового накопителя.
Оцениваемое время: 20 минут
Зарегистрируйтесь в системе как суперпользователь.
Отобразите и зарегистрируйте информацию по текущей конфигурации вашего диска при помощи команды prtvtoc, как показано ниже:
prtvtoc <raw disk device name>
Каким образом расположены части диска? Какую информацию о геометрических параметрах диска отображает эта команда?
А теперь выполните следующие операции для просмотра информации о вашем диске при помощи утилиты format:
Наберите format. Появится главное меню утилиты, отображающее ваши дисковые накопители. Вам предстоит выбрать диск, имеющий номер 0, поэтому заметьте всю информацию, которая содержится в соответствующей строке.
Введите 0. Таким способом выбирается диск, указанный в списке первым. На экране появится меню под названием Format Menu.
Введите команду partition. На экране появится Partition Menu.
Наберите print. Будет отображена вся информация о разделах выбранного вами диска.
Нажмите Ctrl+D. Вы выходите из утилиты format.
6.2 Создание файловой системы
Для выполнения следующего упражнения требуется, чтобы к вашей системе был подсоединен запасной дисковый накопитель или чтобы на диске была запасная, неиспользуемая часть. Вам предстоит практически создать часть диска, а затем на ней создать файловую систему.
Оцениваемое время: 30 минут
Создайте часть на вашем запасном дисковом накопителе, для чего выполните операции, описанные в одном из первых разделов настоящей главы, который называется "Использование утилиты format для создания частей диска".
При помощи команды newfs создайте файловую систему на новой или неиспользуемой части диска, для чего наберите следующую команду:
newfs <raw device name>
Создайте каталог по имени /test в корневом разделе, для чего введите следующую команду:
mkdir /test
Смонтируйте вновь созданную файловую систему:
mount <block device name> /test
Демонтируйте эту файловую систему, как показано здесь:
umount /test
Просмотрите содержимое файла /etc/vfstab на вашей системе, для чего введите cat /etc/vfstab.
Добавьте следующую строку в файл /etc/vfstab для только что созданной файловой системы таким образом, чтобы эта файловая система автоматически монтировалась при загрузке:
<raw device name> <block device name> /test ufs 2 yes
Перезагрузите вашу систему, для чего введите следующую командную строку:
/usr/sbin/shutdown -у -gO -i6
Проверьте, что данная файловая система была смонтирована автоматически: mount
Обзорные вопросы
Какое из приведенных ниже утверждений не является справедливым относительно частей диска в стандартной системе Solaris?
Каждая часть может хранить только одну файловую систему.
Файловая система не может охватывать несколько частей диска.
Файловая система не может быть увеличена или уменьшена.
Части могут охватывать несколько дисков.’
Где сохраняется информация о конфигурации диска?
В метке диска
В нескольких местах на диске
В суперблоке
В таблице разделов
Что из перечисленного ниже сохраняет процедуры, используемые при загрузке системы?
Загрузочный блок
Суперблок
Индексный дескриптор
Метка диска
Какая из перечисленных далее команд будет отображать информацию о разделах диска?
prtvtoc
sysdef
Примените ваши знания
df-k
sysinfo'
Какая из упомянутых файловых систем не является виртуальной?
/export/home
Tmpfs
Cachefs
D. Procfs
Какая из задач не может быть решена с помощью утилиты format?
Восстановление дефектных секторов
Разбивка диска
Восстановление разрушенных меток диска
Отображение информации об использовании дискового пространства
Что из перечисленного не входит в состав суперблока?
Размер и состояние файловой системы
Размер группы цилиндров
Имя маршрута последней точки монтирования
Загрузочная информация
Какая информация содержится в индексном дескрипторе?
' Тип файла
Информация о каталоге данного файла
Количество байт в файле
Информация логического тома
Какая команда рекомендована для создания файловых систем?
A. admintool
newfs
mkfs
D. format
Какое из приведенных ниже утверждений не является справедливым относительно размеров логического блока?
Размер логического блока представляет собой размер блоков, которые ядро операционной системы UNIX использует для чтения или записи файлов.
По умолчанию размер логического блока равняется 8192 байт.
Больший размер логического блока повышает эффективность файловых систем, в которых большинство файлов большого размера.
Меньший размер логического блока повышает эффективность файловых систем, в которых большинство файлов большого размера.
Чему равно по умолчанию количество байт, приходящееся на один индексный дескриптор?
А.2048
В.1024
С.8192
D. 64
Какое из приведенных ниже названий соответствует наименьшей единице распределения дискового пространства в операционной системе?
Фрагмент
Блок данных.
Логический блок
Байт
Как по-другому называется область своппинга?
Виртуальная память
Устройство запоминания с произвольной выборкой
Раздел С или часть 2
Статическая память
Когда файловая система должна проверяться с помощью команды fsck?
Если файловая система была некорректно демонтирована
После прекращения подачи электроэнергии
Всякий раз, когда файловая система не может быть смонтирована
Когда данные были случайно удалены
Что делает fsck, когда приводит в порядок файловую систему?
Принудительно проверяет файловую систему
Проверяет и исправляет файловую систему в неинтерактивном режиме
Проверяет только те файловые системы, которые доступны для записи
Только определяет, нуждается ли файловая система в проверке
Какой из перечисленных ниже файлов содержит список файловых систем, автоматически монтируемых при загрузке?
/etc/fstab
/etc/dfs/dfstab
/etc/vfstab
/etc/rc2.d/S74autofs
Что делает команда mountain
Автоматически монтирует CD-ROM и гибкий диск
Монтирует все файловые системы, заданные в таблице файловых систем
Разделяет все файловые системы таким образом, чтобы они могли быть смонтированы
Монтирует магнитную ленту в ленточном накопителе
Какая команда (или команды) применяется для отображения информации о дисковом пространстве?
Примените ваши знания
A. du.
df
quota
repquota
Все команды, перечисленные выше
Какая из перечисленных опций применяется для монтирования файловых систем, размер файлов которых превышает 2 Гбайт?
largefiles
nolargefiles
If.
D. nlf
Что вы должны сделать, чтобы разрешить протоколирование UFS на какой-нибудь файловой системе?
Воспользоваться командой mount с опцией -о logging.
Воспользоваться командой mount с опцией -1.
Воспользоваться командой mount с опцией ufslog.
Воспользоваться свойством протоколирования команды newfs при создании файловой системы.
Какой из приведенных вариантов представляет корректный формат элемента в файле /etc/vfstab?
Устройство для монтирования, устройство для fsck, точка монтирования, тип FS, число прохождений fsck, монтирование при загрузке, точка монтирования
Устройство для fsck, устройство для монтирования, точка монтирования, тип FS, число прохождений fsck, монтирование при загрузке, точка монтирования
Точка монтирования, устройство для монтирования, устройство для fsck, точка монтирования, тип FS, число прохождений fsck, монтирование при загрузке
Точка монтирования, устройство для fsck, устройство для монтирования, точка монтирования, тип FS, число прохождений fsck, монтирование при загрузке
Какая из перечисленных ниже команд показывает использование дискового пространства каждым файлом в каждом подкаталоге некоторой файловой системы?
A. du
df
1s
printenv
Какая из перечисленных ниже команд отображает дисковое пространство, занятое смонтированными файловыми системами?
A. df
du
1s
printenv
Ответы на обзорные вопросы
D. Стандартная файловая система Solaris не может охватывать несколько дисков или несколько частей диска. Это возможно только при использовании виртуальных файловых систем (DiskSuite).
А. Информация о конфигурации диска сохраняется в метке диска.
А. Процедуры, используемые при загрузке системы, сохраняет загрузочный блок. Без загрузочного блока система не загружается.
А. Информация о частях конкретного диска может быть просмотрена посредством команды prtvtoc.
А. Перечисленные файловые системы являются виртуальными: swapfs, procfs, lofs, cachefs, tmpfs, /var/run и mntfs.
D. Утилита format применяется для восстановления разрушенных меток дисков, восстановления дефектных секторов, форматирования и анализа дисков, разбивки дисков и нанесения на них меток.
D. Ниже приведены некоторые из наиболее важных объектов, входящих в состав суперблока:
Размер и статус файловой системы
Метка (имена файловой системы и тома)
Размер логического блока файловой системы
Дата и время выполнения последнего обновления
Размер группы цилиндров
Количество блоков данных в группе цилиндров
Итоговый блок данных
Состояние файловой системы (чистая, стабильная или активная)
Имя маршрута к последней точке монтирования
А, С. Индексный дескриптор хранит всю информацию о файле, исключая его имя, которое хранится в каталоге. Информация индексного дескриптора хранится в информационном блоке цилиндра и состоит из следующих элементов:
Тип файла (обычный файл, каталог, блочно-специальный файл, символьно-специальный файл, ссылка и т.д.)
Режим файла (набор полномочий на чтение/запись/исполнение)
Количество жестких ссылок к данному файлу
Идентификатор владельца файла
Идентификатор группы, к которой принадлежит файл
Количество байт в файле
Массив из 15 адресов дисковых блоков
Дата и время последнего доступа к файлу
Дата и время последнего изменения файла
Дата и время создания файла
В. Команда newfs рекомендуется для создания файловых систем.
Примените ваши знания
D. В общем случае использование более крупных логических блоков повышает эффективность файловых систем, в которых большинство файлов большого размера. Более мелкие логические блоки следует применять для тех файловых систем, в которых большинство файлов небольшого размера.
А. По умолчанию количество байт на один индексный дескриптор составляет 2048 (2 Кбайт), при этом предполагается, что средний размер каждого файла равен или больше 2 Кбайт.
А. Размер фрагмента файловой системы представляет собой наименьший распределяемый элемент дискового пространства, который равен 1024 байт.
А. Область своппинга еще называется виртуальной памятью.
А, В, С. Команда fsck должна быть запущена посде прекращения подачи электроэнергии, когда файловая система была некорректно демонтирована или всякий раз, когда файловая система не может быть смонтирована.
В. Обычно при загрузке выполняется команда fsck в неиитерактивном режиме, чтобы привести в порядок файловые системы после внезапного останова вычислительной системы. При этом автоматически исправляются любые несогласованности основных файловых систем, однако не делается попытка исправить более серьезные ошибки. В процессе приведения в порядок файловой системы команда fsck исправляет такие несогласованности, которые возникают после внезапного останова системы. В более серьезных ситуациях эта команда сообщает об ошибке и завершает свою работу.
С. Файл /etc/vfstab содержит список файловых систем, автоматически монтируемых при выполнении загрузки в многопользовательское состояние.
В. Команда mountall монтирует все файловые системы, заданные в таблице файловых систем под названием /etc/vfstab.
Е. Перечисленные команды могут быть применены для отображения информации об использовании дискового пространства: du, df, quota, repquota.
А. Опция монтирования largefiles разрешает пользователям монтировать файловую систему, которая содержит файлы размером более 2 Гбайт.'
А. Воспользуйтесь командой mount с опцией -о logging, чтобы разрешить протоколирование UFS на какой-нибудь файловой системе.
А. Корректный формат элемента в файле /etc/vfstab выглядит следующим образом: устройство для монтирования, устройство для fsck, точка монтирования, тип FS, число прохождений fsck, монтирование при загрузке, точка монтирования
А. Для получения отчета о количестве свободных дисковых блоков и количестве файлов используйте команду du.
А. Команда df без опций выводит список всех смонтированных файловых систем и соответствующие им имена устройств. Кроме того, она выводит общее количество используемых блоков размером по 512 байт и количество файлов.
Глава 7
Файловые системы Solaris: дополнительные темы
Темы
Настоящая глава охватывает следующие экзаменационные темы:
Создание файловой системы
Создание файловых систем представляет собой одну из стандартных задач для системных администраторов. Необходимо полное понимание того, тогда следует использовать и как нужно создавать каждый тип файловой системы, предусмотренный в Solaris 8.
Настройка файловой системы
Solaris предоставляет метод для тонкой настройки многих параметров, присвоенных файловым системам. Системному администратору необходимо понимать эти параметры и регулировать их значения для достижения оптимальной производительности системы.
Использование больших файловых систем
Solaris может работать с приложениями, поддерживающими файлы размером более 2 Гбайт. Однако для работы с такими огромными файлами необходимо должным образом установить параметры файловой системы.
Использование дополнительных опций в процессе монтирования и демонтирования файловых систем
Файловая система каждого типа поддерживает множество опций, управляющих тем, как будет функционировать и исполняться данная файловая система. Системный администратор должен быть хорошо знаком со всеми этими опциями при проведении монтирования и демонтирования файловых систем.
Работа со сменными носителями информации и менеджером томов
Система Solaris имеет средства для управления сменными носителями информации - съемным диском и диском CD-ROM - с помощью менеджера томов. Системному администратору необходимо знать, как включать и отключать это средство, а также понимать связанные с этим конфигурационные файлы.
Получение информации о файловых системах
Системный администратор должен постоянно контролировать и управлять файловыми системами; ему также необходимо владеть различными инструментами для выполнения указанных задач.
Содержание
«Введение226
Создание файловой системы226
Команда labelit229
Команда volcopy229
Застройка файловых, систем230
Команда fstyp233
«Большие и малые файлы234
Монтирование файловой системы234
/etc/mntta6237
демонтирование файловой системы238
Командаfuser239
Менеджер томов240
Локализация проблем менеджера томов247
ЗСнформация офайловыхсистелшх250
Фезюме252
Примените ваши знания253
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
В процессе изучения настоящей главы вы на практике убедитесь, что практически выполнили все приведенные здесь команды на системе фирмы Sun или на компьютере с lntel-архитектурой, которые работают под управлением операционной системы Solaris 8. Обязательно выполните все команды со всеми опциями, описанными в настоящей главе.
Практикуйтесь в выполнении примеров и пошаговых упражнений до тех пор, пока не сможете выполнять их по памяти. Все это - сценарии, которые, что весьма вероятно, встретятся вам на экзамене.
Изучите досконально все термины, представленные в конце настоящей главы. На экзамене вы столкнетесь с некоторыми из них, и от вас потребуется опознать эти термины по их описаниям.
Уделите особое внимание командам newfs и mount/umount. Разберитесь со всеми опциями этих команд и с примерами их применения. Эти темы широко представлены на экзамене.
Введение
В главе 6 было описано, как создавать, проверять, монтировать и отображать файловые системы средствами Solaris 8. Были даны пояснения по структуре файловой системы, геометрическим параметрам диска, частям диска и по утилите format. В главе 16 будут детально рассмотрены дисковые устройства и имена устройств. Хотя глава 16 охватывает темы, вынесенные на вторую часть экзамена, рекомендуется прочесть эту главу для получения ответов на вопросы, которые могут возникнуть после прочтения настоящей главы. Файловые системы и устройства идут рука об руку, однако эти темы не выносятся на один и тот же экзамен; таким образом, вопросы конфигурации устройств и их наименования рассматриваются в книге II.
В настоящей главе будет продолжено обсуждение файловых систем. В частности, будут рассмотрены темы, перечисленные в начале этой главы.
В настоящей главе рассматриваются темы для первой и второй частей экзамена; однако большая часть представленной здесь информации относится к первому экзамену. На второй экзамен выносится ограниченное число вопросов, связанных с файловыми системами. Материалы, относящиеся ко второй части экзамена, будут специально оговорены.
Создание файловой системы
Создание файловых систем - это тема, которая выносится на оба экзамена. В главе 6 уже отмечалось, что команда newfs представляет собой дружественный внешний интерфейс к команде mkfs. Команда newfs автоматически определяет все необходимые параметры для передачи их команде mkfs при создании новых файловых систем. Команда newfs была добавлена в систему Solaris, чтобы облегчить процесс создания новых файловых систем. Настоятельно рекомендуется, чтобы именно команда newfs применялась для создания файловых систем, однако также важно видеть, что происходит на заднем плане с утилитой mkfs. Синтаксис команды mkfs выглядит следующим образом:
/usr/sbin/mkfs [опции] <character device name>
Опции этой команды описываются в таблице 7.1.
ОпцияОписание
FИспользуется для задания типа файловой системы. Если данная опция
опущена, то для определения типа файловой системы проверяются файлы /etc/vfstab и /etc/default/fs.
Опция
Продолжение таблицы 7.1
Описание
-т
Показывает командную строку, которая была использована для создания указанной файловой системы. Никаких изменений с данной файловой системой при этом не производится.
-V
Опция расширенного вывода. Показывает командную строку, однако ничего не исполняет.
-о <specific options>
Это список опций, которые являются специфичными для данного типа файловой системы. Данный список должен иметь следующий формат: после -о следует пробел, а затем идет последовательность пар вида keyword [=value] (ключевое слово [=значение]), разделенных между собой запятыми, причем, пробелы в этой последовательности пар не допускаются.
арс=<п>
Зарезервированное пространство для замещения дефектных блоков на дисках с интерфейсом SCSI. По умолчанию значение этой опции - 0.
N
Лишь выводит пареметры файловой системы, сама она при этом не создается.
nsect=<n>
Количество секторов на одной дорожке для данного диска. По умолчанию значение этой опции - 32.
ntrack=<n>
Количество дорожек на одном цилиндре для данного диска. По умолчанию значение этой опции - 16.
bsize=<n>
Размер логического блока, равный либо 4096 (4 Кбайт), либо 8192 (8 Кбайт). По умолчанию значение этой опции - 8192. Для архитектуры sun4u не поддерживается размер блоков, равный 4096.
fragsize=<bytes>
Наименьшее количество дискового пространства в байтах, выделяемое некоторому файлу. Значение этой опции должно быть степенью числа 2 и выбирается из диапазона от 512 до размера логического блока. Если размер логического блока равен 4096, допустимыми значениями этой опции будут числа 512, 1024, 2048 и 4096. Если размер логического блока равен 8192, это значение также является допустимым. По умолчанию значение этой опции - 1024.
cgsize=<cyls>
Количество цилиндров в одной группе цилиндров. По умолчанию значение этой опции равно 16.
free=<n>
Минимальный процент свободного дискового пространства, необходимый для работы в данной файловой системе. Это пространство находится за пределами дискового пространства, доступного обычным пользователям. После того, как файловая система заполняется до указанного порогового значения, только суперпользователь может продолжать записывать данные в файловую систему. Этот параметр может быть впоследствии изменен при помощи команды tunefs. По умолчанию значение этой опции составляет 10 процентов, однако на больших файловых системах значение minfree определяется автоматически.
nbpi=<value>
Заданная величина value - это количество байт на один индексный дескриптор, что определяет плотность распределения индексных дескрипторов в файловой системе. Эта величина делится на общий размер файловой системы для определения фиксированного количества индексных дескрипторов, подлежащих созданию. Количество индексных дескрипторов должно отражать ожидаемый средний размер файлов в файловой системе. Если желательно иметь меньшее количество индексных дескрипторов, то должна использоваться большая величина value. Для создания большего количества индексных дескрипторов должно быть задано меньшее значение value. По умолчанию значение этой опции равно 2048.
Продолжение таблицы 7.1
Опция
Описание
rps=<rps>
Скорость вращения диска, задаваемая количеством оборотов в секунду. По умолчанию принято значение, равное 60.
opt=<value>
Предпочтительный критерий оптимизации - пространство или время. Атрибут value может принимать значение в или L Задавайте значение в для оптимизации дискового пространства или t - для оптимизации по скорости (времени). По умолчанию значение этой опции - t В общем случае вы должны проводить оптимизацию по времени до тех пор, пока данная файловая система не заполнится более чем на 90%.
gap=<milliseconds>
Циклическая задержка между блоками, заданная в миллисекундах. Обозначает ожидаемое время, требуемое, чтобы полностью прервать операцию передачи данных и инициировать новую передачу данных на тот же самый диск. Атрибут value позволяет решить, какой промежуток должен соблюдаться между последовательно идущими блоками в некотором файле. По умолчанию значение этой опции определяется реально используемым диском.
nrpos=<n>
Это количество различных вращательных положений группы цилиндров. По умолчанию значение этой опции - 8.
maxcontig=<blocks>
Максимальное количество блоков, принадлежащих одному файлу, которые последовательно выделяются перед включением циклической задержки. По умолчанию для файловой системы с блоками по 4 Кбайт значение этой опции равно 14; для файловой системы с блоками по 8 Кбайт значение этой опции равно 7. Этот параметр может быть впоследствии изменен при помощи команды tunefs.
Команда mkfs создает файловую систему на символьном (или низкоуровневом) устройстве, находящемся в каталоге /dev/rdsk. Следует помнить, что не рекомендуется непосредственно запускать команду mkfs, лучше использовать вместо нее более дружественную команду newfs, которая автоматически определяет все необходимые параметры, требующиеся команде mkfs для создания файловой системы. В приведенном ниже примере опция -v команды newfs будет выводить все параметры, передаваемые утилите mkfs. Наберите следующую команду:
newfs -v /dev/rdsk/cOtOdOsO
В ответ система выводит приведенную далее информацию и создает новую файловую систему на устройстве Zdev/rdsk/cOtOdOsO:
newfs: construct a new file system /dev/rdsk/cOtOdOsO: (y/n) ? у
mkfs -F ufs /dev/rdsk/cOtOdOsO 2097576 117 9 8192 1024 32 6 90 4096 t 0 - 1 8 15
Zdev/rdsk/cOtOdOsO: 2097576 sectors in 1992 cylinders of 9 tracks, 117 sectors
1024.2MB in 63 cyl groups (32 c/g, 16.45MB/g, 4096 i/g) super-block backups (for fsck -F ufs -o b=#) at:
33856, 67680, 101504, 135328, 169152, 202976, 236800, 270624, 304448, 338272, 372096, 405920, 439744, 473568, 507392, 539168, 572992, 606816, 640640, 674464, 708288, 742112, 775936, 809760, 843584, 877408, 911232, 945056, 978880, 1012704, 1046528, 1078304, 1112128, 1145952, 1179776, 1213600,1247424,1281248,1315072,1348896,1382720,1416544,1450368,
1484192,1518016,1551840,1585664,1617440,1651264,1685088,1718912,
1752736,1786560,1820384,1854208,1888032,1921856,1955680,1989504,
2023328, 2057152, 2090976,
В этом выводе отображаются все параметры, которые были использованы командой mkfs для создания данной файловой системы, а также местоположение каждой резервной копии суперблока.
Команда labelit
После создания файловой системы с помощью команды newfs можно воспользоваться утилитой labelit для записи или отображения меток на демонтированных дисковых файловых системах. Синтаксис команды labelit выглядит так:
labelit [-F ufs] [-V] <special> [fsname volume]
Присваивание метки файловой системе не является обязательным. Это требуется только в том случае, если вы предполагаете воспользоваться такой программой, как volcopy, которая будет описана позже. Команда labelit описывается в таблице 7.2.
ПараметрОписание
specialЭто имя должно быть разделом физического диска (например, /dev/dsk/
c0t0d0s6).
fsname
Представляет точку монтирования файловой системы (например, корневая файловая система (/), файловая система /home и т.д ).
volumeМожет быть использован для представления имени физического тома.
-FЗадает тип файловой системы, который должен быть указан либо с помо
щью данного параметра, либо через элемент файла /Btc/vfstab. Если не обнаружен ни один подходящий элемент, то используется принятый по умолчанию тип файловой системы, заданный в файле /etc/default/fs.
* Х'^х .- .• ■. X*# w У* Х'^х .- .• ■. X*# w УЕсли параметры fsname и volume на заданы, labelit выводит текущие значения этих меток. ДлинаЕсли параметры fsname и volume на заданы, labelit выводит текущие значения этих меток. ДлинаВыводит командную строку, но не выполняет никаких действий.
* Х'^х .- .• ■. X*# w У
* Х'^х .- .• ■. X*# w У
Если параметры fsname и volume на заданы, labelit выводит текущие значения этих меток. Длина
Если параметры fsname и volume на заданы, labelit выводит текущие значения этих меток. Длина
параметров fsname и volume не должна превышать шесть символов.
В приведенном примере демонстрируется, как с помощью команды labelit присвоить метку разделу диска. Наберите следующее:
labelit -F ufs /dev/rdsk/o0t0d0s6 diskl voll
Система отвечает следующим образом: fsname: diskl.
volume: voll
Команда volcopy
Администратор (суперпользователь) может применять команду volcopy для создания копии файловой системы, которой была присвоена метка. Эта команда работает с файловыми системами UFS, однако перед тем, как будет выдана команда volcopy, данной файловой системе должна быть присвоена метка с помощью команды labelit. Чтобы определить, относится ли файловая система к типу UFS, введите следующую команду: .
fstyp /dev/rdsk/c0t0d0s6
Система отвечает таким образом:
ufs
Команда volcopy может применяться для копирования файловой системы с одного диска на другой.
Синтаксис команды volcopy выглядит следующим образом:
volcopy [options] <fsname> <srcdevice> <volnamel> <destdevice> <volname2>
Команда volcopy описывается в таблице 7.3.
Опция
Описание
-F
Задает тип файловой системы, на которой ведется работа. Тип файловой системы должен быть указан либо с помощью данного параметра, либо через элемент файла /etc/vfstab. Если не обнаружен ни один подходящий элемент, то используется принятый по умолчанию тип файловой системы, заданный в файле /etc/default/fs.
-V
Выводит командную строку, но не выполняет никаких действий.
-а
Требует от оператора ответить "yes" или "по". Если опция -а не задана, команда volcopy выдерживает паузу в 10 секунд перед созданием копии файловой системы.
-о <options>
Список опций, специфичных для данного типа файловой системы. Этот список должен иметь следующий формат: после -о следует пробел, а затем идет последовательность пар вида keyword [=value] (ключевое слово [=значение]), разделенных между собой запятыми, причем пробелы в этой последовательности пар не допускаются.
<fsname>
Представляет точку монтирования копируемой файловой системы (например, корневая файловая система (/), и1 и т. д.).
<srcdevice>/<destdevice>
Раздел диска, задаваемый при помощи низкоуровневого устройства (например, /dev/rdsk/c1t0d0s7, /dev/rdsk/c1t0d1s7 итакдалее).
<srcdevice>/<volname1 >
Устройство и физический том, из которых извлекается копия файловой системы.
<destdevice>/<volname2>
Целевое устройство и физический том.
Длина параметров fsname и volname не должна быть более шести символов; эти параметры записываются в суперблок. В качестве значения параметра volname может быть указано тире (-), что подразумевает использование существующего имени тома.
В приведенном примере демонстрируется, как скопировать содержимое файловой системы /homel (устройство /dev/rdsk/c0t0d0s6) в файловую систему /home2 (устройство /dev/rdsk/c0tld0s6):
volcopy -F ufs diskl Zdev/rdsk/c0t0d0s6 voll Zdev/rdsk/c0tld0s6 vol2
Для копирования файловых систем могут также применяться и другие команды, назовем только некоторые из них: ufsdump, cpio, tar и dd. Эти команды обсуждаются в главе 11.
Настройка файловых систем
Может возникнуть ситуация, когда вы захотите изменить некоторые параметры, установленные при создании файловой системы. Возможно, вы захотите изменить значение параметра minfree, чтобы высвободить некоторое дополнительное дисковое пространство
на большом накопителе. Используя команду tunefs, можно модифицировать следующие параметры файловой системы:
Ф maxcontig
Ф rotdelay
Ф maxbpg
Ф minfree
Ф optimization
Описание этих опций представлено в таблице 7.1.
Синтаксис команды tunefs выглядит следующим образом:
tunefs [-a <maxcontig>][-d <rotdelay>][-е <maxbpg>][-m <minfree>]\
[-o <value>] special/filesystem
Команда tunefs может в считанные секунды разрушить файловую систему. Всегда выполняйте полное резервное копирование файловой системы перед тем, как воспользоваться командой tunefs.
Команда tunefs описывается в таблице 7.4.
ОпцияОписание
-a <maxcontig>-a <maxcontig>-d <rotdelay>-d <rotdelay>-е <maxbpg>-е <maxbpg>-m <minfree>-m <minfree>Определяет максимальное количество последовательно расположенных блоков, которые выкладываются перед введением циклической задержки (см. опцию -d). По умолчанию значение этой опции равно 1, поскольку драйверы большинства устройств требуют прерывания на каждую дисковую операцию. Для драйверов тех устройств, которые могут в рамках единой операции передачи данных соединять в цепочку несколько буферов, установите для этого параметра максимальную длину цепочки блоков.
-a <maxcontig>
-a <maxcontig>
-d <rotdelay>
-d <rotdelay>
-е <maxbpg>
-е <maxbpg>
-m <minfree>
-m <minfree>
Определяет ожидаемое время (в миллисекундах), требуемое, чтобы прервать выполнение передачи данных и инициировать новую передачу данных на тот же самый диск. Этот параметр позволяет решить, какой промежуток должен соблюдаться между последовательно идущими блоками в некотором файле.
Устанавливает максимальное количество блоков, которое может быть выделено из некоторой группы цилиндров любому одиночному файлу прежде, чем начнется выделение блоков из другой группы цилиндров. Обычно значение этого параметра устанавливается приблизительно равным четвертой части общего количества блоков в группе цилиндров. Смысл этого параметра заключается в том, чтобы предотвратить использование одним файлом всех блоков в одной группе цилиндров. Для больших файлов часто приходится выполнять долгий поиск, а если бы таким файлам было бы разрешено занимать все блоки в некоторой группе цилиндров, операция существенно бы упростилась. Для файловых систем с исключительно большими файлами этому параметру должно быть присвоено значительно большее значение.
Задает процент дискового пространства, скрытого от обычных пользователей (пороговое значение минимального свободного пространства). По умолчанию значение этой опции составляет 10 процентов, однако на больших файловых системах значение параметра minfree определяется автоматически.
Продолжение таблицы 7.3 ОпцияОписание
-о <value>Изменяет стратегию оптимизации для данной файловой системы. Зна
чение этой опции или space, или time. Используйте значение space для экономии дискового пространства; а значение time - для организации размещения файлов и минимизации времени доступа. В общем случае оптимизируйте файловую систему по времени, если только она не заполнится более чем на 90%.
<special>/<filesystem> Введите или специальное имя устройства (такое как /dev/rdsk/c0t0d0s6), или имя файловой системы (такое как /home).
Перед использованием команды tunefs файловая система должна быть демонтирована.
Для изменения величины минимального свободного пространства (параметр minfree) на некоторой файловой системе с 10 до 5 процентов, введите следующую командную строку:
tunefs -m5 /dev/rdsk/c0t0d0s6
minimum percentage of free space changes from 10% to 5%
Страницы руководства по команде tunefs рекомендуют, чтобы для параметра minfree было установлено значение, равное 10 процентам, и что если вы установите для него значение меньше указанного, то потеряете производительность системы. Это означает, что 10 процентов дискового пространства недоступны для использования. Это могло быть не так страшно в то время, когда размер дисков исчислялся несколькими сотнями мегабайт, однако на диске емкостью 9 Гбайт вы теряете 900 Мбайт. Упоминание на указанных страницах руководства о потере производительности вводит в заблуждение. На больших дисковых накопителях позволительно уменьшать значение параметра minfree вплоть до 1 процента. Это значение может оказаться практичным и допустимым пределом. Кроме того, с производительностью тоже не возникает проблем, поскольку расположение свободных блоков даже внутри области размером 90 Мбайт является достаточно эффективным. Практичный способ в данном случае заключается в том, чтобы использовать принятое по умолчанию значение параметра minfree, равное 10 процентам для файловых систем размером до 1 Гбайт, и корректировать это значение таким образом, чтобы область минимального свободного пространства была бы не больше, чем 100 Мбайт. Что же касается производительности, то приложения не страдают от меньшего значения параметра minfree. Единственным исключением может выступать корневая (/) файловая система, проявляя предусмотрительность, системный администратор может разрешить больший размер минимального свободного пространства, просто чтобы защитить себя даже в случае, когда корневая файловая система заполнится на 100 процентов.
На больших файловых системах значение параметра minfree определяется автоматически, чтобы не расходовать дисковое пространство впустую. Применяйте команду mkfs -m, которая описана далее, если вы хотите увидеть реальное значение параметра minfree, используемое командой newfs.
Далее, если вы хотите увидеть, какие параметры были использованы при создании файловой системы, выдайте такую команду:
mkfs -m /dev/rdsk/c0t0d0s6
Система отвечает следующим образом:
mkfs -F ufs -о nsect=117,ntrack=9,bsize=8192,fragsize=1024,cgsize=16, free=5,rps=90,nbpi=2062,opt=t,apc=0,gap=0,nrpos=8,maxcontig=15 \ /dev/rdsk/ c0t0d0s6 205334
Команда fstyp
Еще одной полезной командой для просмотра параметров файловой системы является fstyp. Используйте опцию -v для получения полного листинга параметров файловой системы:
fstyp -v /dev/rdsk/c0t0d0s6
Система отвечает следующим образом:
ufs
magic
11954 format
dynamic
time
Bat Oct
; 210:11:06 1999
sblkno
16
cblkno
24
iblkno
32
dblkno
528
sbsize
3072
cgsize
2048
cgoffset 64
egmask OxfffffffO
neg
13
size
102667
blocks
95994
bsize
8192
shift
13
mask
OxffffeOOO
fsize
1024
shift
10
mask
OxfffffcOO
frag
8
shift
3
fsbtodb
1
minfree
5%
maxbpg
2048
optim
time
maxcontig
15
rotdelay
0ms rps
90
csaddr
528
cssize
1024
shift
9
mas
OxfffffeOO
ntrak
9
nsect
117
spe
1053
ncyl
195
cpg
16
bpg
1053
fpg
8424
ipg
3968
nindir
2048
inopb
64
nspf
2
nbfree
11995 ndir
2
nifree
51577
nffree
1
cgrotor
0
fmod
0
ronly
0
fs_reclaim is not set
file system state is valid, fsclean is 1 blocks available in each rotational position
cylinder number 0:
position
0:
0
8
15
22
30
37
44
52
59
position
1:
1
9
16
23
31
38
45
53
60
position
2:
2
10
17
24
39
46
61
position
3:
3
18
25
32
40
47
54
62
position
4:
4
11
19
26
33
41
48
55
63
position
5:
5
12
20
27
34
42
49
56
position
6:
6
13
21
28
35
50
57
64
position
7:
7
14
29
36
43
51
58
65
cylinder
number
1:
position
0:
66
74
81
88
103
110
117
125
position
1:
67
82
89
96
104
111
118
126
position
2:
68
75
83
90
97
105
112
119
127
position
3:
69
76
84
91
98
106
113
120
position
4:
70
77
85
92
99
114
121
128
position
5:
71
78
93
100
107
115
122
129
position
6:
72
79
86
94
101
108
116
123
130
position
7:
73
80
87
95
102
109
124
131
ПрИ|У1ЕЧАНИ1^ -
Всегда полезно выводить опции команды mkfs, использованные на некоторой файловой системе, совместно с информацией, предоставляемой командой prtvtoc. Поместите вывод данных в ваш системный журнал, и уж если вам потребуется перестроить файловую систему из-за отказа дисковода, вы сможете воссоздать ее в точно таком же виде, какой она имела до этого отказа.
Большие и малые файлы
На тридцатидвухразрядной системе большим файлам называется обычный файл, размер которого больше либо равен 2.31 Гбайт. Малым файлом называется обычный файл, размер которого меньше 2 Гбайт. Некоторые утилиты могут обрабатывать большие файлы, а другие - не могут. Утилита называется осведомленной о больших файлах {large-file- aware), если она может обрабатывать большие файлы таким же образом, как и малые. Утилита, осведомленная о больших файлах, может обрабатывать большие файлы в качестве входной информации и может генерировать большие файлы в качестве выходной информации. Утилиты newfs, mkfs, umount, tunefs, labelit и quota работают с большими файлами на файловых системах UFS.
С другой стороны, утилита называется безопасной для больших файлов {large-file-safe), если, сталкиваясь с большими файлами, не приводит к потере или разрушению данных. Если утилита, которая является безопасной для больших файлов, не может правильно обработать большой файл, она возвращает соответствующую ошибку. К утилитам, которые не являются осведомленными о больших файлах, однако являются безопасными для них, относя тся текстовый редактор vi и команды mailx и 1р.
Монтирование файловой системы
В главе 6 были описаны основы процесса монтирования файловых систем. Но в ней умышленно не было описано все множество опций, доступных для команды mount, пока у вас не будет больше времени для их использования. Синтаксис команды mount выглядит следующим образом:
mount -F <fstype> [generic_options] [-о specific_options] [-0]
Опции описаны в таблице 7.5.
Таблица'73 Х°м8ВДа т^.„ .у
Опция
Описание
-F <fstype>
Применяется для задания типа (fstype) файловой системы, на которой ведется работа. Если значение fstype не задано, то тип файловой системы определяется из файла /etc/vfstab или из файлов /etc/default/fs или /etc/dfs/fstypes.
generic_options
Может быть любой из приведенных далее опций:
-т Монтирует данную файловую систему, не создавая при этом элемент в файле /etc/mnttab.
-0 Монтирование с перекрытием. Разрешает данной файловой системе быть смонтированной поверх существующей точки монтирования, делая при этом нижележащую файловую систему недоступной. Если попытаться выполнить монтирование на существующую ранее точку монтирования, не установив при этом данный флаг, то монтирование завершается неуспешно и формируется сообщение об ошибке, а именно: device busy.
Продолжение таблицы 7.5 ОпцияОписание
гМонтирует данную файловую систему только для чтения.
рВыводит список смонтированных файловых систем в фор-
мете файла /etc/vfstab. Эта опция должна быть единственной заданной.
VВыводит список смонтированных файловых систем е рас
ширенном формате. Эта опция должне быть единственной заданной.
VПовторяет полностью командную строку, но не исполняет ко-
менду. Команда umount генерирует командную строку путем использования опций и аргументов, предоставленных пользователем, и добавления к ней информации, полученной из файла /etc/mnttab. Эта опция должна применяться для проверки и подтверждения командной строки.
-оОпределяет опции (specific_options), специфические для конкретного типа
файловой системы. Эти опции могут быть заданы с опцией -о. Если вы задаете несколько опций,раз- деляйте их запятыми, а не пробелами, например: -о го, nosuid.
■-rw|ro Определяет режим доступа к файловой системе: чтение/за-
пись (по умолчанию) или только чтение.
-nosuid Запрещает исполнение в режиме setuid и запрещает открытие устройств на данной файловой системе. Значение этой опции по умолчанию - включить исполнение в режиме setuid и разрешить открытие устройств.
-remount В сочетании с rw повторно монтирует файловую систему в режиме доступа на чтение/запись.
fИмитирует элемент файла /etc/mnttab, но фактически не
монтирует никакие файловые системы.
пМонтирует файловую систему, не создавая при этом эле
мент в файле /etc/mnttab.
-largefiles Определяет, что файловая система может содержать один или несколько файлов размером более 2 Гбайт. Вовсе не обязательно, чтобы файловая система, смонтированная с использованием данной опции, содержала файлы размером более 2 Гбайт, однако эта опция разрешает наличие таких файлов внутри данной файловой системы.
nolargefiles Обеспечивает полную совместимость с предыдущей особенностью файловой системы, принудительно устанавливая максимальный предельный размер файла равным 2 Гбайт.
Приведенные примеры иллюстрируют опции, описанные в таблице 7.5.
Файловая система создается на части sO диска cOtOdO. Каталог, к которому будет монтироваться указанная часть диска, называется /home2. Для монтирования данной файловой системы сначала создайте каталог /home2, а затем введите следующую команду:
mount /dev/dsk/cOtOdOsO /home2
Если данная файловая система смонтирована, вам возвращается приглашение командной строки, других сообщений не будет.
В следующем примере для отображения списка всех смонтированных файловых систем используется команда mount с опцией -v:
mount -v
Система отвечает следующим образом:
/dev/dsk/c0t3d0s0 on / type ufs read/write/setuid/largefiles on Fri Oct 1 13:04:06 1999
/dev/dsk/c0t3d0s6 on /usr type ufs read/write/setuid/largefiles on Fri Oct 1 13:04:06 1999
/proc on /proc type proc read/write/setuid on Fri Oct 1 13:04:06 1999 fd on /dev/fd type fd read/write/setuid on Fri Oct 1 13:04:06 1999 /dev/dsk/c0t3d0sl on /var type ufs read/write/setuid/largefiles on Fri Oct 1 13:04:06 1999 Zdev/dsk/c0t3d0s3 on /export type ufs setuid/read/write/largefiles on Fri Oct 1 13:04:08 1999 /dev/dsk/c0t3d0s5 on /opt type ufs setuid/read/write/largefiles on Fri Oct 1 13:04:08 1999 swap on /top type tmpfs read/write on Fri Oct 1 13:04:08 1999 sparc4:/usr on /net/sparc4/usr type nfs nosuid/remote on Fri Oct 1 13:39:00 1999
Введите команду mountc опцией -p для отображения списка смонтированных файловых систем в формате файла /etc/vfstab:
mount -р
Система отвечает следующим образом:
/dev/dsk/c0t3d0s0 - / ufs - no rw,suid,largefiles /dev/dsk/c0t3d0s6 - /usr ufs - no rw,suid,largefiles /proc - /proc proc - no rw,suid fd - /dev/fd fd - no rw,suid /dev/dsk/c0t3d0sl - /var ufs - no rw,suid,largefiles Zdev/dsk/c0t3d0s3 - /export ufs - no suid,rw,largefiles /dev/dsk/c0t3d0s5 - /opt ufs - no suid,rw,largefiles swap - /tmp tmpfs - no sparc4:/usr - /net/sparc4/usr nfs - no nosuid /dev/dsk/c0t0d0s0 - /home2 ufs - no suid,rw,largefiles
Опция -p полезна для получения корректных установок, если вы создаете элемент в файле /etc/vfstab.
Приведенный ниже пример демонстрирует монтирование файловой системы в режиме доступа только для чтения:
mount -о го /dev/dsk/c0t0d0s0 /home2
В следующем примере команда mount применяется для монтирования каталога к файловой системе в режиме чтения/записи и запрета исполнения в режиме setuid, но разрешает создание больших файлов:
mount -о rw,nosuid,largefiles ZdevZdskZcOtOdOsO Zhome2
Наберите mount без параметров для проверки того, что данная файловая система была смонтирована, и для просмотра опций монтирования, которые были при этом задействованы:
mount
Система сообщает информацию о всех смонтированных файловых системах, включая /Ьоте2:
/home2 on /dev/dsk/cOtOdOsO read/write/nosuid/largefiles \
on Tue Oct 5 06:56:33 1999
После того как вы смонтировали файловую систему с принятой по умолчанию опцией lergefiles и были созданы большие файлы, вы не сможете повторно смонтировать эту файловую систему с
опцией nolargeflles до тех пор, пока не удалите любые большие файлы и не запустите утилиту fsck для переустановки этой опции в значение nolargeflles.
/etc/mnttab
Когда монтируется файловая система, рассматривается элемент в таблице смонтированных файловых систем под названием /etc/mnttab. Файл /etc/mnttab на самом деле является файловой системой, которая предоставляет доступ только для чтения к таблице смонтированных файловых систем текущего хоста. Команда mount добавляет элементы к этой таблице, а команда umount удаляет из нее элементы. Ядро операционной системы обслуживает этот список в процессе монтирования. Например, файловая система, смонтированная первой, является первой в этом списке, а только что смонтированная файловая система - последней. Смонтированная к некоторой точке монтирования, файловая система возникает как обычный файл, содержащий текущую информацию таблицы mnttab. Каждый элемент в этой таблице представляет собой строку, поля которой разделены пробелами:
<special> <mount_point> <fstype> <options> <time>
Каждое поле таблицы /etc/mnttab описывается в таблице 7.6.
ПолеПолеОписание
Поле
Поле
<special>
Монтируемый ресурс, например, /dev/dsk/cOtOdOsO
<mount_point>
Имя маршрута к каталогу, к которому монтируется файловая система
<fstype>
Тип файловой системы
<options>
Список опций, которые были задействованы для монтирования файловой системы
<time>
Время, когда монтировалась файловая система
Ниже приведен образец файла /etc/mnttab: more /etc/mnttab /dev/dsk/cOtOdOsO / ufsrw,intr,largefiles,onerror=panic,suid,
dev=2200000985708256
/dev/dsk/c0t0d0s3 /usr ufs rw,intr,largefiles,onerror=panic,suid, dev-2200003985708257
/proc/proc proc dev=»2dcOOOO985708254
fd/dev/fd fd rw.suid, dev=2e80000 985708258
mnttab /etc/mnttabmntfsdev=2f80000 985708260
/dev/dsk/c0t0d0s4/var ufs rw,intr,largefiles,onerror=panic,
suid,dev-2200004 985708260'
swap/var/run tmpfsdev=l985708260
g 2-300
swap/tmptmpfsdev=2985708263
Zdev/dsk/c0t0d0s6 /data ufs rw,intr,largefiles,\onerror=panic,suid, dev=2200006985708263
/dev/dsk/c0t0d0s5 /opt ufs rw,intr,largefiles,\onerror=panic,suid, dev=2200005\ 985708263/dev/dsk/c0t0d0s7 /export/home ufs rw,intr,largefiles,onerror=panic,suid,dev=2200007985708263
-hosts /net autofsindirectnosuid,ignore,nobrowse,dev=3040001
985708269 auto_home /homeautofs indirect,ignore,nobrowse,dev=3040002
985708269 -xfn /xfn autofs indirect,ignore,dev=3040003985708269
В предыдущих версиях операционной системы /etc/mnttab представлял собой текс-то- вый файл. Недостатком такой реализации было то, что текстовый файл мог быть рассинхронизирован с реальным состоянием смонтированных файловых систем или отредактирован вручную. В Solaris 8 этот файл является файловой системой mntfs, которая предлагает информацию от ядра в режиме только для чтения о смонтированных файловых системах для локальных хостов.
Демонтирование файловой системы
Для этого следует использовать команду umount:
umount <mount_point>
где <mount_point> - это имя файловой системы, которую вы хотите демонтировать. Этот атрибут может быть либо именем каталога, к которому смонтирована файловая система, либо именем маршрута устройства данной файловой системы. Например, чтобы демонтировать файловую систему /Ъоте2, введите следующую команду:
umount /home2
Альтернативно вы можете задать имя маршрута устройства для данной файловой системы:
umount Zdev/dsk/cOtOdOsO
Демонтируя файловую систему, мы удаляем ее содержимое из точки монтирования, а также удаляем соответствующий элемент из файла /etc/mnttab. Некоторые задачи администрирования файловых систем, такие как применение утилит labelit, fsck и tunefs, не могут быть выполнены на смонтированных файловых системах. Вы должны прежде демонтировать файловую систему в случае выполнения любого из трех условий, приведенных ниже:
Ф Файловая система больше не является необходимой либо она заменяется другой, содержащей более актуальное программное обеспечение.
Ф Вам необходимо проверить и восстановить файловую систему с помощью команды fsck.
<^ Вы планируете провести полное резервное копирование.
При закрытии вашей системы файловые системы автоматически демонтируются.
Команда fuser
Прежде чем вы сможете демонтировать какую-нибудь файловую систему, вы должны зарегистрироваться с привилегиями суперпользователя, и данная файловая система не должна быть занята. Файловая система рассматривается как занятая, если какой-нибудь пользователь находится в одном из ее каталогов или какая-нибудь программа имеет открытый файл в данной файловой системе. Вы можете демонтировать файловую систему после перехода в каталог другой файловой системы или путем выхода из вычислительной системы. Если что- то является причиной занятости конкретной файловой системы, вы можете воспользоваться командой fuser, описанной в таблице 7.7, для вывода списка всех процессов, имеющих доступ к данной файловой системе, и для их останова в случае необходимости.
Всегда уведомляйте пользователей перед тем, как демонтировать какую-нибудь фейловую систему.
Синтаксис команды fuser выглядит следующим образом:
/usr/sbin/fuser [options] <file>|<filesystem>
Замените <file> именем проверяемого файла или замените <filesystem> именем файловой системы, которую проверяете.
Таблица 7.7 Команда fuser' ■
ОпцияОписание
сФормирует отчет по файлам, которые являются точками монтирования
для файловых систем, и любым файлам, которые находятся внутри Смонтированных файловых систем. '
fВыводит отчет для поименованного файла, но не для файлов внутри
смонтированных файловых систем.
кПосылает каждому процессу сигнал SIGKILL. Поскольку эта опция по
рождает завершение каждого процесса, сообщения о завершении могут не появиться на экране немедленно.
иОтображает в круглых скобках непосредственно после идентификато
ра процесса регистрационное имя пользователя.
Приведенный пример демонстрирует, как использовать команду fuser для определения причин занятости файловой системы /home!:
fuser -u /home2
Система отображает каждый процесс и регистрационное имя пользователя, который использует данную файловую систему:
/Ьоше2:8448с (root) 8396с (root)
Следующая команда останавливает все процессы, которые используют файловую систему /home2, путем отправки каждому из них сигнала SIGKILL. Не пользуйтесь этой командой, не предупредив перед этим пользователей.
fuser -с -k /home2
Описанное выше применение предпочтительно для определения того, кто использует какую-нибудь файловую систему, перед тем, как ее демонтировать. Новым в операционной системе Solaris 8 является другой, менее желательный метод демонтирования файловой системы при помощи команды umount с опцией -f, как показано в следующем примере:
umount -f /home2
Опция -f будет принудительно демонтировать файловую систему. Использование указанной опции может привести к потере данных открытых файлов в тех программах, которые будут выполнять доступ к файлам после демонтирования данной файловой системы, будет возвращена ошибка ввода вывода (ЕЮ). Опция -f должна применяться только в качестве последнего средства.
Менеджер томов
Менеджер томов (Volume Manager - не путать с менеджером томов масштаба предприятия - Enterprise Volume Manager, который описывается в главе 18) совместно с демоном void представляют механизм управления сменными носителями информации, такими как приводы CD-ROM и гибких дисков. Монтирование и демонтирование файловой системы требует наличия привилегий суперпользователя. Как предоставить пользователям возможность вставлять, монтировать и демонтировать диски CD-ROM и гибкие диски, не предоставляя им привилегий суперпользователя? После того как файловая система была смонтирована, вы удалили из привода носитель информации, что произойдет с монтированием? Обычно, когда вы отсоединяете дисковый накопитель в то время, пока он смонтирован, система начинает выдавать ошибки и сообщения. То же самое происходит, когда вы удаляете смонтированный гибкий диск или диск CD-ROM.
Менеджер томов совместно с демоном void предоставляют возможность преодоления вышеперечисленных проблем. Демон void упрощает использование гибких дисков и дисков CD-ROM путем выполнения их автоматического монтирования. Менеджер томов предоставляет три основных преимущества:
Ф Упрощает использование гибких дисков и дисков CD-ROM путем выполнения их автоматического монтирования.
Ф Предоставляет пользователям возможность доступа к гибким дискам и дискам CD-ROM без необходимости регистрироваться в системе с привилегиями суперпользователя.
Ф Позволяет администратору (суперпользователю) предоставлять другим системам в сети автоматический доступ к любым гибким дискам и дискам CD-ROM, которые пользователи вашей системы вставляют в приводы.
Для начала рассмотрим два устройства, которыми должен управлять системный администратор: приводы гибких дисков и CD-ROM. Менеджер томов предоставляет возможность доступа к обоим указанным устройствам через каталог /vol/dev. Менеджер томов также создает ссылки на устройства - приводы гибких дисков и CD-ROM - через различные каталоги, как показано в таблице 7.8.
СсылкаОписание
/vol/dev/disketteO
Каталог, который предоставляет доступ к буферизованному устройству на носителе информации в приводе гибких дискоа за номером 0
/vol/dev/rdisketteO
Каталог, который предоставляет доступ к символьному устройству на носителе информации в приводе гибких дисков за номером 0
/vol/dev/aliases/floppyO
Символическая ссылка на символьное устройство для носителя информации в приводе гибких дисков за номером 0
Ссылка
Продолжение таблицы 7.8
Описание
/dev/rdiskette
Каталог, который предоставляет доступ к символьному устройству на носителе информации в первичном приводе гибких дисков, обычно это привод 0
/vol/dev/aliases/cdromO
Каталог, который предоставляет доступ к символьному устройству на носителе информации в первичном приводе CD-ROM
/vol/dev/dsk/
Каталог, который предоставляет доступ к приводу CD-ROM буферизованного, или блочного, устройства
/vol/dev/rdsk/
Каталог, который предоставляет к приводу CD-ROM доступ символьного, или низкоуровневого, устройства
/cdrom/cdromO
Символическая ссылка на буферизованное устройство на носителе информации в приводе CD-ROM за номером 0 '
/floppy/floppyO
Символическая ссылка на буферизованное устройство на носителе информации в приводе гибких дисков за номером 0
Демон void автоматически монтирует CD-ROM и файловые системы, если в эти устройства вставлены сменные носители информации, содержащие распознаваемые файловые системы. Когда диск CD-ROM вставляется в привод, демон void автоматически монтирует файловую систему CD-ROM к описанным выше каталогам /vol/dev. Однако для гибкого диска соответствующая файловая система не монтируется автоматически до тех пор, пока вы не выдадите команду volcheck. Команда volcheck указывает демону void обратиться к каждому устройству и определить, вставлен ли в привод новый носитель информации. Из-за аппаратных ограничений, присущих флоппи-дискам, демон void не может постоянно опрашивать устройство так, как это делается для дисков CD-ROM. Постоянный опрос привода гибких дисков на предмет наличия в нем носителя информации вызывает механическое срабатывание указанного устройства и ведет к его преждевременному износу.
Демон void - это рабочая лошадка менеджера томов. Он запускается автоматически с помощью сценария /etc/initd/volmgt. Демон void при запуске считывает конфигурационный файл /etc/vold.conf. Файл /etc/vold.conf содержит конфигурационную информацию менеджера томов, которую использует демон void. ■
В состав этой информации входит база данных, которую следует использовать, поддерживаемые метки и применяемые устройства, действия, которые следует выполнять при наступлении определенных событий с носителями информации, и список файловых систем, которые опасно выбрасывать без демонтирования. Файл vold.conf выглядит следующим образом:
.# 8(#)void.conf 1.25 99/11/11 SMI
#
Volume Daemon Configuration file #
Database to use (must be first)
db db_mem.so
Labels supported ■
label cdrom label_cdrom.so cdrom
label dos label_dos.so floppy rmdisk pcmem label sun label_sun.so floppy rmdisk pcmem # Devices to use
use cdrom drive /dev/rdsk/c*s2 dev_cdrom.so cdrom%d
use floppy drive /dev/rdiskette[0-9] dev_floppy.so floppy%d use pcmem drive /dev/rdsk/c*s2 dev_pcmem.so pcmem%d forceload=true use rmdisk drive /dev/rdsk/c*s2 dey_rmdisk.so rmdisk%d # Actions eject dev/diskette[0-9]/* user=root /usr/sbin/rnimount eject dev/dsk/* user=root /usr/sbin/ipnmount insert dev/diskette[0-9]/* user=root /usr/sbin/nnmount insert dev/dsk/* user=root /usr/sbin/rmmount notify rdsk/* group=tty user=root /usr/lib/vold/volmissing -p remount dev/diskette[0-9]/* user=root /usr/sbin/nnmount remount dev/dsk/* user=root /usr/sbin/rmmount # List of file system types unsafe to eject unsafe ufs hsfs pcfs udfs
Каждый раздел в этом файле помечен согласно его функциональному назначению. В этих разделах вы можете безопасно модифицировать устройства, которые следует использовать и которые описаны в таблице 7.9, и действия, которые описаны в таблице 7.10.
Раздел "Devices to Use" ("Устройства для использования") описывает демону void устройства, которыми он будет управлять. Демон void имеет следующий синтаксис:
use <device> <type> <special> <shared_object> <symname> [options]
л "Devices to иШЬ
Поле параметра
Описание
device
Тип используемого устройства со сменными носителями информации. Допустимыми значениями в этом поле являются cdrom и floppy.
type
Специфические характеристики устройства. Допустимым значением в этом поле является значение drive.
special
Определяет устройство или устройства, которые будут использоваться. Имя маршрута обычно начинается с префикса /dev.
shared_object
Имя программы, которая управляет данным устройством. Демон void ожидает найти эту программу в каталоге /usr/lib/vold.
symname
Символическое имя, которое ссылается изданное устройстао; symname размещается в каталоге устройства.
options
Пользователь, группа и режим полномочий для доступа к вставленному носителю информации (необязательный параметр).
Параметры symname и special являются взаимосвязанными. Если параметр special содержит любые символы подстановки из командного процессора (одна или более звездочек или вопросительных знаков), то параметр symname должен заканчиваться символами %d. В таком случае устройства, найденные по критерию соответствия данному регулярному выражению, сортируются, а затем нумеруются. Для первого найденного устройства символы %d заполняются цифрой 0, для второго - цифрой 1 и т.д.
Если спецификация параметра special не содержит символов подстановки, то параметр symname должен явным образом содержать номер в конце своей строки.
Раздел "Actions" ("Действия") определяет, какая программа должна быть вызвана в случае наступления определенного события (действия). Синтаксис поля Actions выглядит следующим образом:
insert regex [ options ] <program> <program_args> eject regex [ options ] <program> <program_args> notify regex [ options ] <program> <program_args>
Различные действия перечислены в таблице 7.10.
ПараметрОписание
regex
Это регулярное, выражение командного процессора Bourne сравнива- ,ется с каждым элементом в файловой системе /vol, на который воздей
ствует данное событие.
insert|eject|notifyДействие (вставить/убрать/уведомить), связанное с носителем инфор
мации, инициирующее данное событие.
[options]
Определяет, какое имя пользователя или имя группы запустит данное событие (это необязательный параметр).
<program>
Полное имя маршрута к некоторой исполняемой программе, которая будет запущена при совпадении параметра regex.
program_args
Аргументы для указанной программы.
По умолчанию в файле vold.conf можно увидеть следующие элементы в разделах "Devices to Use" и "Actions":
Devices to use
use cdrom drive /dev/rdsk/c*s2 dev_cdrom.so cdromtd
use floppy drive /dev/rdiskette[0-9] dev_floppy.so floppy%d
use pcmem drive /dev/rdsk/c*s2 dev_pcmem.so pcmemtd forceload=true
use rmdisk drive /dev/rdsk/c*s2 dev_rmdisk.so rmdisk%d # Actions eject dev/diskette[0-9]/* user=root /usr/sbin/rmmount eject dev/dsk/* user=root /usr/sbin/rmmount insert dev/diskette[0-9]/* user=root /usr/sbin/rmmount insert dev/dsk/* user=root /usr/sbin/rmmount notify rdsk/* group=tty user=root /usr/lib/vold/volmissing -p remount dev/diskette[0-9]/* user=root /usr/sbin/rmmount ■ remount dev/dsk/* user=root /usr/sbin/rmmount
. Когда компакт-диск вставляется в привод CD-ROM, имеющий имя /dev/dsk/c0t6d0, то происходят следующие события:
Демон void обнаруживает, что компакт-диск вставлен в привод CD-ROM, и запускает команду /usr/sbin/rmmount. Утилита rmmount автоматически монти" рует файловые системы на диске CD-ROM и на гибком диске. Она определяет тип файловой системы, если таковая существует на носителе информации. Если файловая система существует, то команда rmmount монтирует ее (для диска CD-ROM к каталогу /cdromO).
Если данный носитель информации доступен только для чтения (диск CD-ROM либо гибкий диск с установленной защитой от записи), то и файловая система монтируется как доступная только для чтения. Если файловая система не идентифицирована, то команда rmmount не монтирует ее.
После того как монтирование завершено, исполняется действие action, ассоциирующееся с данным типом носителя информации. Действие action позволяет
другим программам получить уведомление о доступности нового носителя информации. Например, по умолчанию при монтировании диска CD-ROM или гибкого диска действие action заключается в запуске менеджера файлов (File Manager).
Эти действия описываются в конфигурационном файле /etc/rmmountconf. Приведенный ниже пример демонстрирует содержимое по умолчанию файла /etc/ rmmountconf:
# @ (#)munount.conf 1.10 00/02/14 SMI
# Removable Media Mounter configuration file.
# File system identification
ident
udfs
ident_udfs.so
cdrom
floppy
rmdisk
ident
hsfs
ident_hsfs.so
cdrom
ident
ufs
ident_ufs.so
cdrom
floppy
rmdisk pcmem
ident
pcfs
identjpcfs. so
floppy
rmdisk
pcmem
# Actions
action cdrom action_filemgr.so action floppy action_filemgr.so action rmdisk action_f ilemgr.so
# Mount
mount * hsfs udfs ufs -o nosuid
Если пользователь выдает команду eject, то демон void обнаруживает событие, происшедшее с данным носителем информации и исполняет действие action, ассоциирующееся с этим событием. При этом он запускает команду /usr/sbin/ rmmount. Команда rmmount демонтирует смонтированные файловые системы и исполняет действие action, связанное с данным типом носителя информации, вызов которого предусмотрен в файле /etc/rmmountconf. Если какая-нибудь файловая система "занята" ("busy", иными словами, если она содержит текущий рабочий каталог какой-нибудь активного процесса), то действие eject завершается аварийно.
Системный администратор может модифицировать файл vold.conf для указания программы, которая должна быть вызвана при наступлении определенного события с носителем информации, такого как выброс или установка носителя в привод. Если конфигурационный файл vold.conf модифицируется, то демон void должен быть уведомлен о необходимости повторного считывания этого файла. Выполните эту операцию путем останова и повторного запуска демона void, как показано ниже. Наберите следующую команду:
/etc/init.d/volmgt stop■
Затем введите такую команду:
/etc/init.d/volmgt start
Управлять менеджером томов на вашей системе вам помогут еще несколько команд. Они описываются в таблице 7.11.
1ИЯ1№1 Команды менеджера томов. • " " '
КомандаОписание'
rmmountМонтировщик сменных носителей информации. Эта команда использу
ется демоном void для автоматического монтирования файловых сис-
'тем /cdrom и /floppy, если установлен компакт-диск или гибкий диск.
volcancelОтменяет запрос пользоаателя на доступ к конкретной файловой сис
теме компакт-диска или гибкого диска. Эта команда, выданная системным администратором, яаляется удобной, если сменный носитель информации, содержащий файловую систему, в данный момент времени не находится в приводе.
volcheckСистемный администратор выдает эту команду для проверки конкрет
ного устройства на предмет наличия а нем носителя информации. По умолчанию эта команда проверяет устройство на которое указывает имя /dev/diskette.
volmissingЭто действие, которое определяется в файле vold.conf, уведомляет
пользователя, если он предпринимает попытку получить доступ к компактдиску или гибкому диску, который более не находится на устройстве.
voidЭто демон менеджера томов, который управляется конфигурационным
файлом /etc/vold.conf.
Иногда управление томами может показаться более сложной задачей, чем есть на самом деле. Для отключения управления томами удалите (или переименуйте) файл, который имеет имя /etc/rc2.d/S92vo!mgt. Затем выдайте команду /etc/initd/volmgt stop. Если вы хотите иметь возможность управления томами только дисков CD-ROM, но не гибких дисков, закомментируйте с помощью символа # соответствующие элементы в разделах "Devices to Use" и "Actions" файла vold.conf, как "показано в примере, приведенном ниже:
Devices to use
usecdromdrive/dev/rdsk/c*s2dey_cdrom.socdrom%d
use floppy drive /dev/rdiskette[0-9] dev— floppy.so floppy%d
usepcmemdrive/dev/rdsk/c*s2dev_pcmem.sopcmem%d forceload-true
use rmscsi drive /dev/rdsk/c*s2 dey_rmscsi.so rmscsi%d
Actions
#insert dev/diskette[0-9]/* user-root /usr/sbin/rmmount
insert dev/dsk/* user-root /usr/sbin/rnmiount
#eject dev/diskette[0-9]/* user-root /usr/sbin/rmmount
eject dev/dsk/* user-root /usr/sbin/rmmount
notify rdsk/* group-tty user-root /usr/lib/vold/volmissing -p
После внесения указанных изменений в файл /etc/vold.conf демон void, будучи запущен, управляет только диском CD-ROM, но не гибким диском.
Демон void - требовательная программа. Понимание этого обстоятельства является важным для предотвращения аварий или других отказов void. На персональных компьютерах вы можете без каких-либо проблем извлекать диски CD-ROM из привода. В Solaris демон void не работает столь устойчиво, поэтому системному администратору следует придерживаться нескольких основных правил при использовании менеджера томов:
Ф Всегда используйте команды демона void, чтобы выполнить какую-нибудь операцию с дисками CD-ROM или гибкими дисками. Для решения стоящих перед вами задач применяйте команду, перечисленные в таблице 7.11.
ф Прежде чем нажимать кнопку снаружи корпуса для извлечения диска CD-ROM из устройства, убедитесь, что вы выдали команду eject. Необходимо удостовериться, что диск CD-ROM уже больше не требуется.
ф Никогда не нажимайте кнопку для извлечения диска CD-ROM, находящегося в системе, из привода. Такое действие может привести к остановку работающего демона void; вместо этого следует применять команду eject.
Ф Если вы не можете остановить или запустить void с помощью сценария /etc/ initd/volmgt, вам необходимо перезапустить систему, чтобы обеспечить корректную работу демона.
Использование GUI менеджера сменных носителей информации
Как оказалось, наиболее надежным способом использования гибких дисков является применение GUI (графического интерфейса пользователя) менеджера сменных носителей информации в CDE (Common Desktop Environment - общей настольной среде). Можно свести к минимуму возможные проблемы, если использовать гибкие диски с помощью указанного GUI. Чтобы задействовать менеджер сменных носителей информации, выполните следующие операции:
ную в нижней части экрана, как показано на рисунке 7.1.ную в нижней части экрана, как показано на рисунке 7.1.Рисунок 7.1.Передняя панель CDE.Рисунок 7.1.Передняя панель CDE.Откройте File Manager GUI, используя переднюю панель CDE, расположен
ную в нижней части экрана, как показано на рисунке 7.1.
ную в нижней части экрана, как показано на рисунке 7.1.
Рисунок 7.1.
Передняя панель CDE.
Рисунок 7.1.
Передняя панель CDE.
На экране появится File Manager (менеджер файлов).
Щелкните меню File, как показано на рисунке 7.2.
На экране появится спускающееся меню.
Рисунок 7.2.
File Manager.
Выберите из спускающегося меню пункт Removable Media Manager, и наэкра- не появится окно менеджера сменных носителей, как показано на рисунке 7.3.
Рисунок 7.3.
Removable Media Manager.
Локализация проблем менеджера томов
Иногда вы можете столкнуться с проблемами при монтировании какого-нибудь гибкого диска или диска CD-ROM. Прежде всего проверьте, имеет ли менеджер томов информацию о данном устройстве: загляните в каталог /vol/dev/rdisketteO, чтобы установить, имеется ли там что-нибудь. Если нет, то это означает, что не была запущена команда volcheck либо существуют проблемы с аппаратными средствами системы. Если обращение к каталогу /vol приводит к блокировке системы, это означает, что демон не работает и необходимо перезапустить void, как было описано ранее.
Если void работает должным образом, вставьте в устройство отформатированный гибкий диск и введите следующую командную строку:
Is -1 /vol/dev/rdisketteO
Система отвечает следующим образом:
total О
crw-rw-rw- 1 nobody nobody 91, 7 Oct 13 14:56 unlabeled
Данный том является непомеченным (без метки); следовательно, файл в каталоге /vol/dev/rdisketteO называется непомеченным.’
Обязательно проверьте наличие ссылки в каталоге /floppy к символьному устройству в каталоге /vol/dev/rdisketteO. Наберите такую команду:
Is -1 /floppyO■
Система отвечает следующим образом: total 18-
Irwxrwxrwx 1 root nobody 11 Oct 13 14:56 \ floppyO -> ./unlabeled .
Если в каталоге /vol/dev/rdisketteO имеется имя, которое было описано выше, и при этом ничего не монтируется к каталогу /floppy/<name_of_media>, то это, по-видимому, означает, что данные на этом носителе информации относятся к нераспознанной файловой системе. К примеру, возможно, что это какой-нибудь архив tar, резервная копия cpio
или файловая система Macintosh. Не пользуйтесь менеджером томов для получения доступа к указанным типам файлов. Вместо этого, обратитесь к этому носителю информации через буферизованное или символьное устройство, которое можно найти в каталогах /vol/ dev/rdisketteO или/vol/dev/disketteO, с помощью пользовательских инструментов для интерпретации данных на нем, таких как tar, dd или cpio. Например, если вы пытаетесь получить доступ к tar-архиву на гибком диске, введите следующую командную строку:
tar tvf /vol/dev/rdisketteO/unlabaled
Будет выведен список всех tar-файлов на данном гибком диске.
Для создания какого-нибудь tar-файла на гибком диске, этот диск должен содержать метку тома SunOS. Для форматирования гибкого диска и добавления метки тома следует задействовать команду fdformat. Синтаксис команды fdformat выглядит следующим образом:
fdformat [options] [<devname>]
Команда fdformat описывается в таблице 7.12.
ОпцияОписаниеОпцияОписание
ОпцияОписание
ОпцияОписание
-b <label>Присваивает данному носителю информации метку тома. Длина метки тома опе
рационной системы SunOS ограничена восемью символами. Метка тома операционной системы DOS должна включать только символы верхнего регистра.
-В <filename>
Инсталлирует специальный загрузчик запуска в файл <filename> на диск операционной системы MS-DOS. Эта опция имеет смысл только а том случае, если одновременно с ней задана опция -d (или опция -t dos).
-d
Форматирует носитель информации операционной системы MS-DOS.
-D
Форматирует гибкий диск двойной плотности объемом 720 Кбайт (дискета 3 1/2 дюйма) или 360 Кбайт (дискета 5 1/4 дюйма). Это опция по умолчанию для приводов, рассчитанных на применение гибких дисков двойной плотности. Опция необходима, если в составе системы используется привод гибких дисков высокой или расширенной плотности.
-e
Выбрасыаает диск по завершении работы с ним.
-E
Форматирует гибкий диск расширенной плотности объемом 2.88 Мбайт (дискета 3 1/2 дюйма). Это опция по умолчанию для устройств, рассчитанных на применение гибких дисков расширенной плотности. .
-f
Опция принуждения. На запрашивает подтверждения перед началом процедуры форматирования. '
-H
Форматирует гибкий диск высокой плотности объемом 1.44 Мбайт (дискета 31/2 дюйма) или 1.2 Мбайт (дискета 51/4 дюйма). Это опция по умолчанию для приводоа, рассчитанных на применение гибких дисков аысокой плотности. Опция необходима, если в составе системы используется привод гибких дисков расширенной плотности.
-1
Форматирует гибкий диск двойной плотности объемом 720 Кбайт (дискета 3 1/2 дюйма) или 360 Кбайт (дискета 5 1/4 дюйма).
-L
Форматирует гибкий диск двойной плотности объемом 720 Кбайт (дискета 3 1/2 дюйма) или 360 Кбайт (дискета 5 1/4 дюйма).
-m
■Форматирует гибкий диск средней плотности объемом 1.2 Мбайт (дискета
3 1/2 дюйма).
-M
Записывает формат средней плотности при объеме 1.2 Мбайт (дискета 3 1/2 дюйма) на гибкий диск высокой плотности (эта опция используется только совместно с -t пес).
Продолжение таблицы 7.12
Опция
Описание_
-и
Демонтирует любые файловые системы, а затем форматирует гибкий диск.
-q
Опция молчания; не выводит сообщения о статусе.
-V
Проаеряет каждый блок диска после его форматирования.
-X
Пропускает процедуру форматирования, а только записывает на диск метку операционной системы SunOS или файловую систему MS-DOS.
-t dos
Инсталлирует файловую систему MS-DOS и запускает процедуру форма- тироввния с установкой сектора запуска. Эта опция эквивалентна команде format операционной системы MS-DOS или опции -d.
-t nec
Инсталлирует файловую систему NEC-DOS и подготавливает на диске сектор запуска после его форматирования. Эта опция должна использоваться только совместно с опцией -М.
В таблице 7.12 устройство, определяемое атрибутом <devname>, зависит от того, используете ли вы менеджер томов. На системах, использующих менеджер томов, замените атрибут <devname> на АорруО. Если вы не используете менеджер томов, замените атрибут <devname> на rdisketteO.
Если <devname> опущен, то используется принятый по умолчанию привод гибких дисков (/vol/dev/rdisketteO/unlabeled), если таковой существует.
По умолчанию команда fdformat использует сконфигурированную емкость привода для форматирования гибкого диска. Например, привод 3 1/2 дюйма высокой плотности использует диски с отформатированной емкостью 1, 44 Мбайт. После форматирования и проверки команда fdformat записывает метку операционной системы в блок 0. Используйте опцию -t dos (или эквивалентную ей опцию -d) для помещения на этот диск файловой системы MS-DOS после завершения его форматирования. В противном случае команда fdformat записывает метку операционной системы SunOS в блок 0.
Чтобы отформатировать диск по умолчанию с меткой операционной системы SunOS таким образом, чтобы его можно было использовать для создания tar-архива, вставьте гибкий диск в привод и введите следующую команду:
fdformat <сг>
Система отвечает следующим образом:
Formatting 1.44 MB in /vol/dev/rdisketteO/unlabeled
Press return to start formatting floppy
Нажмите клавишу Enter. Система отображает последовательность точек, как показано ниже, до тех пор, пока процедура форматирования не завершится:
Затем вы можете создать tar-архив на данном гибком диске. Введите следующую команду: tar cvf /vol/dev/rdisketteO/unlabeled /etc/hosts
Файл /etc/hosts записывается на данный гибкий диск в формате tar.
Если у вас все равно имеются проблемы с менеджером томов, то единственным способом собрать отладочную информацию является запуск команды rmmount с флагом отладки (-D). Для этого отредактируйте файл /etc/vold.conf и измените строку, которая содержит команду /usr/sbin/rmmount для включения в нее флага отладки -D. Например:
insert /vol*/dev/diskette[0-9]/* user^root /usr/sbin/rmmount -D
В результате на консоли появляются различные отладочные сообщения.
Для просмотра отладочных сообщений, которые формирует демон менеджера томов, запустите этот демон, /usr/sbin/vold, с флагами -v -L10. В результате данные будут протоколироваться в файле /var/adm/vold.log. Этот файл может содержать информацию, полезную для локализации проблем.
Вы можете также захотеть смонтировать диск CD-ROM на другую точку монтирования с использованием управления томами. По умолчанию демон void монтирует диск CD- ROM к точке монтирования /cdrom/cdromO, однако пользователь, следуя приведенным ниже инструкциям, может подключить его к другой точке монтирования.
ЦДа^МФагои;,;,,^.^v;
Монтирование диска CD-ROM к другой точке монтирования
Если запущен менеджер томов, вызовите File Manager и извлеките из привода диск CD-ROM с помощью такой команды:
eject cdrom
Остановите демон управления томами, для чего введите следующую командную строку:
/etc/init.d/volmgt stop
Создайте каталог с именем/test:'
inkdir /test
Вставьте диск в устройство CD-ROM и выдайте следующую команду:
/usr/sbin/vold -d /test S
Теперь вместо каталога /vol демон void будет использовать каталог /test в качестве стартового.-
Информация о файловых системах
В главе 6 были описаны команды df и fsck. Команда df предоставляет информацию о емкости каждой из смонтированных файловых систем. Выходная информация команд df и fsck часто является непонятной. В настоящем разделе содержится более детальная информация по этим двум командам, а также описывается их выходная информация таким образом, чтобы вы смогли лучше понять то, что отображается на экране. Начнем с команды fsck. Не забывайте, что ее следует запускать только на демонтированных файловых системах, как показано в следующем примере. Наберите следующие команды:
umount /home2
fsck /dev/rdsk/c0t0d0s6
Система отвечает следующим образом:
** /dev/rdsk/c0t0d0s6
** Last Mounted on /home2
** Phase 1 - Check Blocks and Sizes
** Phase 2 - Check Pathnames
* Phase 3 - Check Connectivity
* Phase 4 - Check Reference Counts
* Phase 5 - Check Cyl groups■
5 files, 19 used, 95975 free (15 frags, 11995 blocks, 0.0% fragmentation)
Команды fsck вначале сообщает некоторые сведения, относящиеся к ее применению, что показано в таблице 7.13.^^|ица 7.13 Выходная йнфррмация?команды feck,. ;<^. ■ м.Команды fsck вначале сообщает некоторые сведения, относящиеся к ее применению, что показано в таблице 7.13.^^|ица 7.13 Выходная йнфррмация?команды feck,. ;<^. ■ м.ПолеПолеfilesusedfilesusedfreefreeОписаниеКоличество файлов в данной файловой системе.Количество используемых блоков данных.Количество свободных блокоа данных (фрагменты и целые блоки).ОписаниеКоличество файлов в данной файловой системе.Количество используемых блоков данных.Количество свободных блокоа данных (фрагменты и целые блоки).Фрагмент имеет размер одного блока данных, а блок фактически состоит из нескольких блоков данных, как правило - из восьми.
Команды fsck вначале сообщает некоторые сведения, относящиеся к ее применению, что показано в таблице 7.13.
^^|ица 7.13 Выходная йнфррмация?команды feck,. ;<^. ■ м.
Команды fsck вначале сообщает некоторые сведения, относящиеся к ее применению, что показано в таблице 7.13.
^^|ица 7.13 Выходная йнфррмация?команды feck,. ;<^. ■ м.
Поле
Поле
files
used
files
used
free
free
Описание
Количество файлов в данной файловой системе.
Количество используемых блоков данных.
Количество свободных блокоа данных (фрагменты и целые блоки).
Описание
Количество файлов в данной файловой системе.
Количество используемых блоков данных.
Количество свободных блокоа данных (фрагменты и целые блоки).
Таблица 7.14. Выходная информация команды fsck ,Таблица 7.14. Выходная информация команды fsck ,ПолеПолеfragsfragsblocks% fragmentationblocks% fragmentationОписаниеКоличество свободных фрагментов (из состава фрагментированных блоков).Количество свободных блоков (целые, нефрагментированные блоки).Количество свободных фрагментов в виде процента от полного размера диска.ОписаниеКоличество свободных фрагментов (из состава фрагментированных блоков).Количество свободных блоков (целые, нефрагментированные блоки).Количество свободных фрагментов в виде процента от полного размера диска.Кроме того, команда fsck сообщает более подробную информацию о свободном дисковом пространстве, как показано в таблице 7.14.
Таблица 7.14. Выходная информация команды fsck ,
Таблица 7.14. Выходная информация команды fsck ,
Поле
Поле
frags
frags
blocks
% fragmentation
blocks
% fragmentation
Описание
Количество свободных фрагментов (из состава фрагментированных блоков).
Количество свободных блоков (целые, нефрагментированные блоки).
Количество свободных фрагментов в виде процента от полного размера диска.
Описание
Количество свободных фрагментов (из состава фрагментированных блоков).
Количество свободных блоков (целые, нефрагментированные блоки).
Количество свободных фрагментов в виде процента от полного размера диска.
Понятие фрагментации в данном случае не является фрагментацией в смысле блоков некоторого файла на диске, которые неэффективно распределены по всей файловой системе, как это можно видеть в файловой системе DOS.
В операционной системе Solaris высокий процент фрагментации подразумевает, что большая часть свободного дискового пространства является привязанной к фрагментам. В приведенном выше примере фрагментация была равна 0%. Высокий уровень фрагментации влияет на создание новых файлов, особенно тех, размер которых превышает несколько блоков данных. Обычно высокий уровень фрагментации обуславливается созданием большого количества маленьких файлов. Решением в данном случае является либо создание большей файловой системы, либо уменьшение размера блока (более мелкое дробление).
Например, в файловой системе, в которой создаются преимущественно файлы размером 5 Кбайт в виде блоков размером 8 Кбайт, множество фрагментов размером 3 Кбайт являются свободными и никогда не используются. В предельном случае это может привести к тому, что файловая система будет эффективно заполнена, несмотря на то, что используется только 5/8 емкости этой файловой системы. Если размер блока уменьшается до 4 Кбайт, что является наименьшим размером блока, доступным в операционной системе Solaris 8, то данная файловая система улучшается. Это решение обобщается в таблице 7.15.
Размер блокаБлоки размером 8 КбайтРазмер блокаБлоки размером 8 Кбайт1iil№iiiMSiSi!lB .Х-;Э@!®;^^
Размер блока
Блоки размером 8 Кбайт
Размер блока
Блоки размером 8 Кбайт
Типичная закономерность
Множество фрагментированных блоков размером 5 Кбайт и неиспользуемых фрагментов размером 3 Кбайт.
Блоки размером 4 КбайтБлоки размером 4 КбайтМножество полных блоков плюс один полностью фрагментированный блок на каждые четыре полных блока, что гораздо лучше.
Блоки размером 4 Кбайт
Блоки размером 4 Кбайт
А теперь рассмотрим выходную информацию команды df:
mount /dev/dsk/c0t0d0s6 /home2 df -k /home2
Система отвечает следующим образом:
FilesystemKbytesused availcapacityMounted on
/dev/dsk/c0t0d0s6 9599419911761%/home2
Значение 95994 в выходной информации представляет полный размер данной файловой системы в килобайтах. В это значение входит 5% минимального свободного пространства (minfree), что было установлено ранее с помощью команды tunefs. Такое решение обобщается в таблице 7.16.
Поле
Описание
19KB used
Количество дискового пространства, используемого данной файловой системой.
91176KB available
Доступное дисковое пространство в данной файловой системе. Это значение равно полному размеру файловой системы за вычетом значений minfree% и размера используемого дискового пространства (95994-5% -19).
1% capacity
Задействованное дисковое пространство в процентах, вычисленное следующем образом: количество используемых килобайт/(количество доступных килобайт - значение minfree%).
Резюме
В настоящей главе обсуждаются локальные файловые системы. Глава знакомит вас с множеством опций, доступных для создания файловых систем с помощью команд mkfs и newfs. Также были представлены другие утилиты операционной системы Solaris, применяемые для присвоения меток, копирования и настройки файловых систем.
Были описаны расширенные опции команды mount. В настоящей главе также объясняется, как отобразить задействованные на конкретной файловой системе опции монтирования. Кроме того, в данной глвве показано, как определить, какой процесс или пользователь использует файловую систему перед тем, как демонтировать ее.
Помимо монтирования файловых систем вручную в настоящей главе описывается менеджер томов для автоматического монтирования файловых систем на диске CD-ROM или на дискете. Были представлены и объяснены все команды менеджера томов и связанные с ними конфигурационные файлы.
В главе 16 дисковые устройства обсуждаются более детально. Хотя эта тема выносится на вторую часть экзамена, у вас может возникнуть желание просмотреть указанную главу для более детального описания различных конфигураций устройств, на которых формируются файловые системы. В главах 13 и 17 обсуждаются вопросы совместного использования файловых систем с другими машинами в сети. В следующей главе рассматриваются вопросы защиты информации в системе и описывается, как защитить ваши системы и данные в них.
Глава 7. Файловые системы Solaris: дополнительные темы Примените ваши знания
' Ключевые термины
Размер блока
Минимальное свободное пространство файловой системы
Имя тома
Тип файловой системы
Большие файлы
Осведомленная о больших файлах (утилита)
Безопасная для больших файлов (утилита)
Таблица смонтированных файловых систем (mnttab)
Менеджер томов
Фрагмент
Примените ваши знания
В предыдущей главе вы создали новую файловую систему. В следующих упражнениях вы продолжите работу с того места, где остановились в прошлый раз, путем решения более сложных задач на данной файловой системе.
7.1 Настройка файловой системы
В настоящем упражнении вам предстоит модифицировать некоторые параметры файловой системы, которые были заданы при ее первичном создании с помощью команды newfs.
Оцениваемое время: 15 минут
Зарегистрируйтесь как суперпользователь.
Выведите список всех параметров, используемых в настоящее время, для чего наберите следующую командную строку:
newfs -v <raw device name>
Откройте другое окно. Оставьте информацию, только что выведенную на экран при выполнении пункта 2, в окне для использования в дальнейшем в качестве справки. Во вновь открытом окне введите команду tunefs для изменения значения параметра minfree на данной файловой системе до 5%, как показано ниже:
tunefs -m5 <raw device name>■
Просмотрите новые параметры файловой системы, однако в этот раз воспользуйтесь командой mkfs, как показано далее:
mkfs -m Craw device name>
Сравните значения выведенных на экран параметров с теми, которые были отображены ранее в другом окне.
Попробуйте воспользоваться командой fstyp для просмотра параметров файловой системы, как показано ниже:
fstyp -v craw device name>
Монтирование и демонтирование файловой системы
В настоящем упражнении вам предстоит смонтировать файловую систему, которая будет поддерживать файлы размером более 2 Гбайт.
Оцениваемое время: 5 минут
Зарегистрируйтесь в системе как суперпользователь.
Если файловая система уже смонтирована, демонтируйте ее с помощью команды umount. Вы можете проверить, какие файловые системы смонтированы в настоящее время, выдав команду mount без параметров.
Смонтируйте файловую систему для поддержки больших файлов, как показано ниже:
mount -о largefiles <Ыоск device name> /test
Убедитесь, что это работает, выдав команду mount без параметров, и просмотрите выходную информацию.
Использование менеджера томов
В настоящем упражнении вам предстоит использовать менеджер томов для автоматического монтирования диска CD-ROM.
Оцениваемое время: 10 минут
Вставьте компакт-диск в устройство.
Введите команду mount без параметров для проверки того, что данное устройство смонтировано. Что является использованной точкой монтирования?
Удалите диск из привода CD-ROM, как показано ниже:
eject cdrom
Введите следующую командную строку для просмотра процесса менеджера томов, который называется void:
pgrep -1 void
Отключите менеджер томов, для чего введите следующую командную строку:
/etc/init.d/volmgt stop
Наберите такую команду для просмотра процесса менеджера томов, который называется void:
pgrep -1 void
Вставьте компакт-диск в привод CD-ROM. Монтируется ли этот диск?
Должен быть перезапущен демон менеджера томов, для чего наберите следующее:
/etc/init.d/volmgt start
Введите команду mount без параметров для вывода списка всех смонтированных файловых систем. Монтируется ли теперь компакт-диск?
Глава 7. Файловые системы Solaris: дополнительные темы ZDD Примените ваши знания
Обзорные вопросы
Что из перечисленного вызывает высокую фрагментацию?
Создание большого количества малых файлов
Создание большого количества больших файлов
Нехватка дискового пространства
Блоки файлов на диске неэффективно распределены по всей файловой системе
Какие из перечисленных ниже полей отсутствуют в выходной информации команды df?
Общий размер в килобайтах
Фрагментация
С. Емкость
D. Доступное количество килобайт
Что из перечисленного ниже рекомендовано для создания файловой системы?
A. mkfs.
В. format
С. tunefs'
D. newfs
Какие из следующих команд применяются для записи или просмотра меток на демонтированных дисковых файловых системах?
A. format■'
В. prtvtoc
С. newfs
D. labelit
Какие из перечисленных ниже команд используются администратором (суперпользователем) для копирования помеченной файловой системы с одного диска на другой?
volcopy
ufsdump■
tar
Все перечисленные выше
Какие из следующих команд выдаются для определения того, относится ли данная файловая система к типу UFS?
fstyp
prtvtoc
С. format
D. newfs -v
Какие из команд применяются для изменения значения параметра minfree файловой системы?
A. mkfs
В.С.В.С.Книга I. Часть 1.
В.
С.
В.
С.
tunefs newfs format
Какие из следующих команд применяются для просмотра полного листинга параметров файлоаой системы?■
fstyp'
mkfs С. newfs D. prtvtoc
Большим файлом называется обычный файл, размер которого больше либо равен: А. 100 Мбайт В. 1 Гбайт С. 5 Гбайт D. 2 Гбайт
Что из перечисленного ниже не предназначено для работы с большими файлами? A. labelit
■ В. vi ’ С. mkfs D. mount
Какие из следующих типов утилит могут обрабатывать большие файлы в качестве входной информации и генерировать большие файлы в качестве выходной информации?
Совместимые с большими файлами
Безопасные для работы с большими файлами.
Осведомленные о больших файлах
Восприимчивые к большим файлам
Какие из перечисленных ниже опций команды mount обеспечивают полную соа- местимость с предыдущей особенностью файловой системы, принудительно устанавливая максимальный размер файла, равный 2 Гбайт?
-о compat
-largefiles
-nolargefiles
-о large
Какие из следующих опций дополняют команду mount для отображения полного
списка смонтированных файловых систем в формате таблицы /etc/vfstab? А. -р В. -v С. -f D. -а
Глава 7. Файловые системы Solaris: дополнительные темы Примените ваши знания
Какие из приведенных примеров используют команду mount для отображения каталога на файловую систему, доступную для чтения/записи, запрещают исполнение в режиме setuid и разрешают создание больших файлов?
mount -о rw,nosuid,large /dev/dsk/c0t0d0s0Vhome2
mount -о rw,nosuid,largefiles Zdev/dsk/cOtOdOsO /home2
mount -o rw,nosuid,largefiles Zdev/rdsk/cOtOdOsO /home2
mount -o rw,suid,largefi)es Zdev/dsk/cOtOdOsO /home2
Где обслуживаются элементы файловой системы, когда она монтируется?
/etc/mnttab
/etc/vfstab
/etc/fstab
/mnt
Какие из задач могут быть выполнены на смонтированной файловой системе?
labelit
fsck
tunefs
shutdown
Какие из перечисленных ниже команд могут быть использованы для вывода списка всех процессов, имеющих доступ к файловой системе, когда она занята?
fuser
mount
ps
finger
Какие из следующих команд могут быть задействованы для останова всех процессов, использующих файловую систему /home2?
fuser -с -k /home2
fuser -к /home2
kill -9 /home2
umount /home2
Что из перечисленного представляет собой механизм, управляющий сменными носителями информации, такими как CD-ROM и приводы гибких дисков?
autofs
NFS '
void
init
void делает все, перечисленное ниже, за исключением;
Предоставляет другим системам в сети автоматический доступ к любым дискам и CD-ROM, которые пользователи установили на данной системе.
Автоматически монтирует диски и CD-ROM.
Предоставляет пользователям возможность доступа к дискам и CD-ROM без необходимости регистрироваться в системе с привилегиями суперпользователя.
Автоматически монтирует файловую систему, находящуюся на другой вычислительной системе, при попытке получения доступа к этой файловой системе.
Что из перечисленного является каталогом, который предоставляет доступ символьного устройства к носителю информации в основном приводе гибких дисков?
/vol/dev/disketteO
/dev/rdiskette
/vol/dev/aliases/floppyO
/floppy/floppyO
Что из перечисленного ниже содержит конфигурационную информацию управления томами, которую использует void?
/etc/init.d/volmgt
/etc/vfstab
/etc/vold.conf
D. /etc/inittab
Какие из перечисленных файлов могут быть модифицированы системным администратором для указания того, какая программа должна быть вызвана, если происходят события с носителем информации, такие как выброс или установка в устройство?
/etc/vold.conf
/etc/rmmount.conf
/etc/inittab
D. /etc/mnttab
Какие из перечисленных действий уведомляют пользователя, если была сделана попытка получить доступ к компакт-диску или диску, который уже не находится в устройстве?
A. void
volcheck
volmissing
D. rmmount
Какие из команд применяются для форматирования гибкого диска и добавления метки тома?
format -d
label it
format
fdformat
Что из перечисленного ниже вы должны выдать, чтобы остановить демон управления томами?
void stop
/etc/init.d/volmgt stop
Глава 7. Файловые системы Solaris: дополнительные темы 1^ Примените ваши знания
ps -efjgrep void, а затем уничтожить идентификатор процесса для void
■ D. volcancel
Какие из перечисленных ниже команд отображают информацию о емкости каждой из смонтированных файловых систем?
du
format
prtvtoc
df
Какие из следующих команд вводятся для того, чтобы система автоматически монтировала гибкий диск?
volcheck
void
mount
D. automount
Вы можете ввести mount /opt в командной строке и тем ни менее не получить сообщения об ошибке. Какое из перечисленных ниже условий для этого должно выполняться?
/opt перечисляется в /etc/rmtab.
/opt перечисляется в /etc/mnttab.
/opt перечисляется в /etc/vfstab.
/opt перечисляется в /etc/dfs/dfstab.
С помощью какого из перечисленных ниже каталогов менеджер томов предоставляет доступ к CD-ROM и устройствам гибких дисков?
/vol/dev
/dev/vol
/dev
/void
Какое из перечисленных ниже утверждений не является справедливым относительно менеджера томов?
Менеджер томов запускается через сценарий /etc/init.d/volmgt.
Менеджер томов автоматически монтирует диски CD-ROM и гибкие диски.
Менеджер томов при запуске считывает конфигурационный файл /etc/vold.conf.
При загрузке менеджер томов автоматически монтирует файловые системы.
Ответы на обзорные вопросы
А. Обычно создание большого количества малых файлов вызывает высокую фрагментацию. Решением в данном случае является либо создание большей файловой системы, либо уменьшение размера блока (более мелкое дробление).
В. Команда df не отображает процент фрагментации.
D. Команда newfs представляет собой дружественный внешний интерфейс к команде mkfs. При создании новых файловых систем команда newfs автоматически определяет все необходимые параметры для передачи их команде mkfs. Команда newfs была добавлена в систему Solaris с целью облегчения процесса создания новых файловых систем. Настоятельно рекомендуется, чтобы именно команда newfs использовалась для создания файловых систем.
D. После создания файловой системы с помощью команды newfs, вы можете воспользоваться утилитой labelit для записи или отображения меток на демонтированных дисковых файловых системах.
D. Используйте команды volcopy, ufsdump, cpio, pax или tar для копирования помеченной файловой системы с одного диска на другой.
А. Применяйте команду fstyp для определения типа файловой системы. Например, используйте ее для проверки того, относится ли данная файловая система к типу UFS.
В. Используйте команду tunefs для изменения значения параметра minfree файловой системы.
А. Используйте команду fstyp для просмотра параметров файловой системы. Применяйте опцию -v для получения полного листинга параметров файловой системы.
D. Большой файл - это обычный файл, размер которого больше либо равен 2 Гбайт.
В. Утилита называется осведомленной о больших файлах, если она может обрабатывать большие файлы таким же образом, как и малые. Утилита, осведомленная о больших файлах, может обрабатывать большие файлы в качестве входной информации и генерировать большие файлы в качестве выходной информации. Команда vi не осведомлена о больших файлах.
С. Как было установлено в предыдущем вопросе и ответе на него, утилита называется осведомленной о больших файлах, если она может обрабатывать большие файлы таким же образом, как и малые. Утилита, осведомленная о больших файлах, может обрабатывать большие файлы в качестве входной информации и генерировать большие файлы в качестве выходной информации.
С. Опция -nolargefiles команды mount обеспечивает полную совместимость с предыдущим поведением файловой системы, принудительно устанавливая максимальный размер файла, равный 2 Гбайт.
А. Введите команду mount с опцией-р для отображения полного списка смонтированных файловых систем в формате таблицы /etc/vfstab.
В. В следующей командной строке:
mount -о rw,nosuid,largeflies /dev/dsk/cOtOdOsO /home2
используется команда mount для отображения каталога на файловую систему, доступную для чтения/записи, запрещается исполнение в режиме setuid и разрешается создание больших файлов размером более 2 Гбайт.
А. Когда монтируется какая-нибудь файловая система, происходит обслуживание элемента в таблице смонтированных файловых систем, файл которой называется /etc/ mnttab. Этот файл на самом деле представляет собой файловую систему, которая предоставляет доступ только для чтения и содержит информацию об устройствах, смонтированных в настоящее время.
D. Не выполняйте следующие команды на смонтированной файловой системе: fsck, tunefs и labelit.
Глава 7. Файловые системы Solaris: дополнительные темы ZOL Примените ваши знания
А. Если существует причина занятости конкретной файловой системы, то вы можете воспользоваться командой fuser для вывода списка всех процессов, имеющих доступ к данной файловой системе, и для останова этих процессов в случае необходимости.
А. Следующая команда останавливает все процессы, использующие файловую систему /home2, путем отправки сигнала SIGKILL для каждого из них:
fuser -с -k /home2
С. Демон void - это механизм, который управляет сменными носителями информации, такими как CD-ROM и приводы гибких дисков.
D. Демон void не выполняет автоматического монтирования файловой системы, находящейся на другой вычислительной системе, при попытке получения доступа к ней. Средством, которое отвечает за решение этой задачи, является AutoFS.
1. В. /dev/rdiskette и /vol/dev/rdisketteO являются каталогами, которые помогают осуществить доступ символьного устройства к носителю информации в основном приводе гибких дисков, обычно это привод 0.
С. Демон void при запуске считывает конфигурационный файл /etc/vold.conf. Файл /etc/vold.conf содержит конфигурационную информацию менеджера томов, которую использует демон void.
А. Раздел "Actions" ("Действия") файла vold.conf определяет, какая программа должна быть вызвана в случае наступления определенного события (действия), такого как выброс носителя информации или установка его в привод.
С. Действие volmissing из файла vold.conf уведомляет пользователя, если он предпринимает попытку получить доступ к компакт-диску или гибкому диску, который более не находится в устройстве.
D. Используйте команду fdformat для форматирования гибкого диска, а затем для добавления метки тома.
В. Запустите следующий сценарий управления запуском, чтобы остановить демон управления томами: /etc/init.d/volmgt stop.
D. Команда df предоставляет информацию о емкости на каждой из смонтированных файловых систем.
А. Команда volcheck указывает демону void обратиться к каждому устройству и определить, вставлен ли в привод новый носитель информации. Системный администратор выдает эту команду для проверки конкретного устройства на предмет наличия в нем носителя информации. По умолчанию эта команда проверяет привод, на который указывает имя /dev/diskette.
С. Вы можете ввести mount/opt в командной строке и не получить сообщения об ошибке, если /opt перечисляется в /etc/vfstab.
А. Менеджер томов предоставляет доступ к устройствам гибких дисков и CD- ROM через каталог/vol/dev.
D. Менеджер томов не монтирует автоматически файловые системы при загрузке. Однако он автоматически монтирует диски CD-ROM и файловые системы, если в устройства вставлены сменные носители информации, содержащие распознаваемые файловые системы.
Глава 8Глава 8
Глава 8
Глава 8
Обеспечение безопасности системы
Темы
Описание процессов и процедур, направленных на обеспечение безопасности вашей системы Solaris, включает в себя обсуждение следующих тем экзамена:
Понимание физической безопасности
Для обеспечения защиты данных и операционной системы существует множество процедур. Системный администратор не может игнорировать вопросы обеспечения аппаратной защиты и ограничения физического доступа к оборудованию системы.
Управление доступом к системе
Системный администратор будет управлять доступом к операционной системе при помощи регистраций пользователей. Только пользователи с активными регистрационными именами будут получать доступ к операционной системе и данным. Системный администратор будет управлять уровнем доступа, который будет иметь каждый пользователь.
Управление доступом к файлам
Системный администратор будет разрешать доступ к каталогам и файлам, используя для этого стандартную схему полномочий операционной системы Solaris. Для уп-
равления доступом к критически важным данным операционной системы необходимо понимание этой схемы и ее применение к идентификаторам пользователей и групп.
Понимание сетевой безопасности
Большинство систем, работающих под управлением Solaris и объединенных в сеть, соединяются с системами, находящимися вне локальных помещений, и являются доступными для множества пользователей других сайтов. Обеспечение защиты системы в таком окружении может быть сложной задачей, однако - это критически важная часть работы системного администратора.
Безопасный доступ суперпользователя
Наделяйте привилегиями суперпользователя только тех системных администраторов, которые наделены полномочиями для использования этих привилегий и понимают риск выполнения системных задач с их применением.
Понимание ASET
Операционная система предоставляет ASET (Automated Security Enhancement Tool - инструмент усовершенствования автоматической защиты) для обеспечения безопасности вашей операционной системы. ASET - это инструмент для установки и контроля защиты в системе Solaris. Системный администратор будет использовать этот инструмент для выполнения специфических проверок и настройки системных файлов и полномочий с целью обеспечения защиты операционной системы.
■ Использование общепринятых технологий защиты
Многие из описанных концепций и инструментов, предоставляемых операционной системой Solaris, являются бесполезными, если не следовать общепринятым технологиям защиты информации от несанкционированного доступа.
В дополнение к перечисленным темам настоящей главы будут обсуждаться вопросы аудита пользователей. Хотя эта тема выносится на второй экзамен, она включена в настоящую главу, поскольку этот материал хорошо стыкуется с обсуждаемыми в ней темами и при этом не требует вынесения в самостоятельную главу.
Содержание
(Введение265
физическая защита'265
Управление доступом ^.системе266
Тде сохраняется инфорлииия учетной записи пользователя268
Т&мандные процессоры ограниченного доступа271
(Управление доступом кфайлам271
Фействующие идентификаторы пользователя и группы273
Принятая по умолчанию лиска пользова теля2 73
Sticky-Бит274
Списки ЛС£274
Установка корректного лшршрута278
Программы с полномочиями setuid и setgid279
Лудит пользователей280
Наблюдение за пользователями и использованием системы280
Проверку зарегистрированных_в системе пользователей282
•Безопасность в сети285
•Брандмауэры285
Слуя^бы сетевой защиты285
TQP iVrappers287
файл/etc/defaidt/Cogin287
Модемы287
©сверяемый хост .288
файл/etc/Hosts.equiv288
файл .rfiosts289
•FTP с ограничением доступа289
•Безопасность доступа суперпользователя291
Ограничение доступа с привилегиями суперпользователя291
Наблюдение за доступом с привилегиями суперпользователя292
Программа S1XD0293
ASET294
Общепринятые технологии защиты296
(Резюме296
Примените ваши знания298
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
На экзамене вам встретится несколько вопросов, относящихся к безопасности среды Solaris. Рекомендуется тщательно изучить настоящую главу и уделить внимание деталям. Практически выполните каждое пошаговое упражнение и запомните каждую команду. Очень важно, чтобы вы практически отрабатывали все, что изучили в системе Solaris, до тех пор, пока не сможете выполнять эти действия по памяти. .
Уделите особое внимание разделу "Управление доступом к файлам". Убедитесь, что вы поняли все, что обсуждается в этом разделе, поскольку на экзамене будут серьезно проверяться темы из этого раздела. Необходимо знание описанных команд и понимание значений полномочий, которые устанавливаются для файла или каталога.
Заучите наизусть наименования всех конфигурационных файлов, описанных в настоящей главе. Вам нет необходимости разбираться, как структурированы эти файлы - просто постарайтесь понять, для чего они используются и как могут быть применены для контроля и управления безопасностью на вашей системе.
Различные команды и файлы описываются а разделе, посвященном аудиту пользователей. Убедитесь в том, что вы поняли команды и файлы протоколирования, описанные в этом разделе. Кроме того, в процессе чтения раздела "Безопасность в сети" обращайте особое внимание на понятие доверяемых хостов и ограничения доступа суперпользователя.
Изучите все термины, приведенные в конце главы. Эти термины могут встретиться в экзаменационных вбпросах, поэтому вам необходимо понимать, что они означают.
Введение
Обеспечение защиты информации в системе от несанкционированного доступа представляет собой одну из основных задач системного администратора. Защита системы включает в себя защиту данных от потери в результате какого-нибудь бедствия или выхода вычислительной системы из строя. Кроме того, системный администратор несет ответственность за защиту системы от опасности, исходящей от какого-либо несанкционированного злоумышленника (лица или организации, заинтересованных в получении несанкционированного доступа к данным), и за защиту данных в системе от несанкционированных пользователей. Некоторые из наихудших бедствий исходят от авторизованного персонала и даже от системных администраторов, которые тривиальным способом разрушают данные. Следовательно, системный администратор реализует два уровня защиты системы: защита данных от случайных потерь и защита системы от вторжения, или несанкционированного доступа.
Первый сценарий - защита данных от случайных потерь - реализуется достаточно просто с помощью регулярно выполняемой схемы полного резервного копирования системы. Регулярно выполняемое полное резервное копирование предоставляет защиту в случае возникновения какого-нибудь бедствия. Если пользователь случайно уничтожает данные, если происходит отказ аппаратных средств или какая-нибудь программа просто разрушает данные, системный администратор может восстановить файлы с носителя резервной копии. Технология резервного копирования и восстановления рассматривается в главе 11.
Вторая форма защиты - защита системы от вторжения, или несанкционированного доступа - является более сложной. Настоящая книга не может охватить каждую брешь в защите или каждую потенциальную опасность, однако в ней содержится обсуждение основ безопасности в UNIX. Защита от злоумышленников включает в себя следующие аспекты:
Ф Физическая безопасность. Ограничьте физический доступ к оборудованию компьютера.
ф Управление доступом к системе. Ограничьте доступ пользователей с помощью паролей и полномочий.
Ф Управление доступом к файлам. Ограничьте доступ к данным путем назначения полномочий на файлы.
Ф Аудит пользователей. Контролируйте деятельность пользователей для обнаружения опасности раньше, чем произойдет повреждение системы.
ф Безопасность в сети. Установите защиту доступа через телефонные линии, последовательные линии связи или через сеть.
ф Обеспечьте защиту доступа с привилегиями суперпользователя. Установите доступ с привилегиями суперпользователя только для решения задач системного администрирования.
Физическая защита
Эта защита очень проста: заблокируйте двери. Ограничьте число тех, кто имеет физический доступ к оборудованию компьютера, для предотвращения хищений или актов вандализма. Любой, кто получает доступ к системной консоли, в конечном счете, получает доступ к данным. Если данный компьютер содержит чувствительную информацию, держите его закрытым в среде с контролируемыми параметрами, с фильтрованным электро-
питанием и с соответствующей защитой от пожара, грозовых разрядов, наводнений и других повреждений здания. Ограничьте доступ для защиты от преступного использования системы и ее резервных копий. Любой человек, имеющий доступ к носителям резервной копии системы, может похитить носитель и получить доступ к данным на нем. Более того, если в системе выполнена регистрация, а затем она оставлена без присмотра, то любой, кто может воспользоваться данной системой, сможет получить доступ к операционной системе и сети. Проверьте, что пользователи вышли из системы или "блокировали" свои экраны прежде, чем выйти из помещения. Обобщая все вышеизложенное, вам необходимо иметь информацию о ближайших компьютерах ваших пользователей и защищать их от несанкционированного доступа. ■
Управление доступом к системе
Управление доступом к системе включает в себя использование паролей и соответствующих полномочий на доступ к файлам. Для управления доступом все регистрационные имена должны иметь пароли, и эти пароли должны достаточно часто изменяться. Устаревание пароля - это системный параметр, устанавливаемый системным администратором, который требует от пользователей изменять свои пароли по истечении определенного количества дней. Устаревание пароля вынуждает пользователей периодически изменять пароли или препятствует изменению паролей пользователями до конца определенного интервала времени. Установите дату истечения срока действия пароля с целью предотвращения неожиданного доступа злоумышленника, использующего старую или неактивную учетную запись к системе.'Для достижения высокого уровня защиты требуйте от пользователей изменять их пароли через каждые шесть недель. Изменение паролей один раз в три месяца соответствует более низкому уровню защиты. Изменяйте регистрационные имена системных администраторов (такие как root или sys) ежемесячно либо всякий раз, когда какой-нибудь человек, знающий пароль суперпользователя, увольняется из компании или на его место назначается другой человек.
В каталоге /etc/default сохраняется несколько файлов, которые управляют доступом к системе, принятым по умолчанию. Эти файлы ограничивают доступ к конкретным системам в сети. Таблица 8.1 описывает файлы, которые содержатся в каталоге /etc/default.
Имя файлаОписание
/etc/default/passwd
Управляет принятой по умолчанию политикой в отношении устаревания паролей.
/etc/default/login
Управляет регистрацией имен в системе, включая доступ к системе с привилегиями суперпользователя. По умолчвнию ограничивает доступ суперпользователя к консоли.
/etc/default/su
Определяет, где регистрируются попытки доступа к системе с привилегиями суперпользователя (через команду su) и находятся эти файлы регистрации попыток. Файл регистрации также определяет, отображаются ли попытки доступа к системе с привилегиями суперпользователя на некотором именованном устройстве (таком как системная консоль).
Для управления паролями пользователей вы можете установить значения по умолчанию в файле /etc/default/passwd. Опции, которыми можно управлять через файл /etc/default/ passwd, перечисляются в таблице 8.2.
ФлагиОписание
MAXWEEKSMINWEEKSPASSLENGTHWARNWEEKSMAXWEEKSMINWEEKSPASSLENGTHWARNWEEKSОпределяет максимальный период времени, в течение которого пароль является действительным.
MAXWEEKS
MINWEEKS
PASSLENGTH
WARNWEEKS
MAXWEEKS
MINWEEKS
PASSLENGTH
WARNWEEKS
Определяет минимальный период времени, который должен пройти прежде, чем пароль может быть изменен.
Определяет минимальную длину пароля для всех обычных пользователей. Значениями этого флага могут быть числа 6, 7 или 8.
Определяет период времени, в течение которого будет выдаваться предупреждение о приближающемся конце срока действия пароля.
Работа системного администратора заключается в том, чтобы обеспечить наличие секретных паролей у всех пользователей. Взломщик системы может взломать некорректно составленный пароль и поставить под угрозу всю систему в целом. Придерживайтесь приведенных ниже руководящих принципов для задания паролей:'
ф Пароль должен представлять собой комбинацию из 6-8 символов, включая буквы, цифры или специальные символы.
ф В качестве пароля хорошо работает фраза типа "beammeup".
Ф В качестве пароля хорошо работают не имеющие смысла слова, составленные из первых букв каждого слога в некоторой фразе, например, слово "swotrb", составленное из фразы "Somewhere Over the Rainbow" ("Где-то над радугой").
ф Слова с цифрами или символами, которые подставляются вместо букв, такое как "snOOpy" для "snoopy" ("любопытный"), также формируют хорошие пароли.
С другой стороны, варианты, приведенные ниже, представляют собой неудачный выбор паролей:
ф Имена собственные, личные имена, регистрационные имена и другие пароли, которые человек может отгадать, просто зная что-нибудь о вас (как о пользователе).
ф Ваше имя, записанное обычным образом, задом наперед или с применением перестановки букв.
ф Имена членов вашей семьи или ваших домашних животных.
ф Цифры номера вашего автомобиля.
Ф Телефонные номера.
ф Номера ваших карточек социального страхования.
ф Ваш табельный номер.
ф Названия, относящиеся к вашим хобби или интересам.
ф Сезонные темы, такие как "Santa" в декабре.
Ф Любое слово, имеющееся в словаре.
ф Простые последовательности символов на клавишах клавиатуры (например, asdfgh).
Ф Пароли, которые вы уже использовали ранее.'
Где сохраняется информация учетной записи пользователя
Информация учетной записи пользователя и группы сохраняется в файлах, которые расположены в каталоге /etc.
Большая часть информации учетной записи пользователя сохраняется в файле /etc/ passwd; однако детали шифрования пароля и его устаревания сохраняются в файле /etc/ shadow. Информация о группе пользователей сохраняется в файле /etc/group. Пользователи объединяются в группы исходя из их потребностей в получении доступа к файлам; например, группа "acctng" может быть образована из пользователей бухгалтерского отдела.
Каждая строка в файле /etc/passwd содержит несколько полей, разделенных между собой двоеточием, и имеет следующий формат:
username:password:uid:gid:comment:home-directory:login-shell
Каждое поле в файле /etc/passwd определяется в таблице 8.3.
Имя поля
ОписаниеОписаниеusernameusernamepassworduidpassworduidgidgidcomment home-directory login-shellcomment home-directory login-shellСодержит информацию имени пользователя или регистрационного имени. Имена пользователей должны быть уникальными и содержать от одного до восьми символов букв (A-Z, a-z) и цифр (0-9), но не символов подчеркивания Q или пробелов. Первым символом имени должна быть буква, и, по крайней мере, один символ в имени должен быть буквой нижнего регистра (строчной буквой).
Описание
Описание
username
username
password
uid
password
uid
gid
gid
comment home-directory login-shell
comment home-directory login-shell
Содержит символ х, который представляет собой заполнитель для зашифрованного пароля. Зашифрованный пароль, в свою очередь, сохраняется в файле /etc/ehadow и используется командой pwconv, которая будет описана далее в настоящем разделе.
Содержит идентификатор пользователя (UID), который идентифицирует данного пользователя в системе. Номера UID обычных пользователей должны находиться в диапазоне от 100 до 60000, однако их максимальное значение может быть 2147483647 (обратите внимание на следующее примечание).
Все номера UID должны быть уникальными. Номера UID меньшие, чем 100, являются зарезервированными. Для минимизации риска и в целях безопасности избегайте повторного использования номеров UID из удаленных учетных записей.
Содержит идентификатор группы (GID), который идентифицирует первичную группу данного пользователя. Каждый номер GID должен представлять собой целое число в диапазоне от 0 до 60000 (номера 60001 и 60002 присваиваются группам nobody и noaccess соответственно). Максимальное значение номера GID может быть 2147483647 (обратите внимание на следующее примечание). Номера GID меньшие, чем 100, являются зарезервированными по умолчанию для учетных записей системных групп.
Обычно содержит полное имя пользователя.
Содержит имя маршрута к исходному (домашнему) каталогу пользователя.
Содержит имя оболочки, или командного процессора, которого по умолчанию будет использовать данный пользователь при регистрации в системе.
ярж^ние .... w.;..
Предыдущие релизы программного обеспечения Solaris использовали для хранения идентификаторов пользователей (UID) и групп (GID) тридцатидвухразрядные типы данных, однако используемые
значения идентификаторов UID и GID были ограничены максимальной величиной 60000. Начиная с релиза 2.5.1 и совместимых версий, предельные значения идентификаторов UID и GID были увеличены до максимального значения целого числа со знаком, то есть до 2147483647. Идентификаторы UID и GID, значения которых превышают 60000, не вполне функциональны и несовместимы со многими возможностями операционной системы Solaris, поэтому избегайте применения идентификаторов UID и GID больших, чем 60000.
Каждая строка в файле /etc/shadow содержит несколько полей, разделенных между собой двоеточием. Указанная строка имеет следующий формат:
username:password:lastchg:mln:max:warn:inactive:expire
Каждое поле файлГ /etc/shadow определяется в таблице 8.4.
Имя ПОЛЯ
Описание
username
Содержит имя пользователя, или регистрационное имя.
password
Может содержать следующие элементы: 13-символьный зашифрованный пароль; строку *LK‘, которая помечает недоступную учетную запись; или строку NP, которая помечает отсутствие пароля для данной учетной записи.
lastchg
■Показывает количество дней, прошедших между 1 января 1970 года и
датой последнего изменения пароля.
min
Содержит минимальное количество дней, требуемое между изменениями пароля.
max
Содержит максимальное количество дней, в течение которых данный пароль является действительным прежде, чем данному пользователю будет предложено задать новый пароль.
inactive
Содержит количество дней, в течение которых учетная запись пользователя может оставаться неактивной перед тем, как она будет заблокирована.
expire
Содержит абсолютную дату, когда истекает срок действия данной учетной записи пользователя. После этой даты пользователь не сможет зарегистрироваться в системе.
#, л ПРИМЕЧАНИЕ. / <'а \ '^Г - - =. ,-ч* «>»г ."■**: <)^'<^.., к ^^^ ^¥У*.' >•
Воздерживайтесь от непосредственного редактирования файла /etc/passwd и никогда не редактируйте непосредственно файл /etc/shadow. Любой некорректный элемент в этих файлах может не позволить вам войти в систему. Эти файлы обновляются автоматически с помощью команд управления учетными записями операционной системы Solaris или с помощью инструмента Admintool, которые описываются в главе 5. .
Некоторые опытные системные администраторы будут по разным причинам непосредственно редактировать файл /etc/passwd, но только после создания резервной копии исходного файла. Эта процедура будет описана в главе 18. В качестве примера того, когда вы' можете захотеть восстановить файл /etc/passwd из его резервной копии, предположите, что исходный файл был испорчен или неправильно модифицирован. После внесения изменений в файл /etc/passwd запустите команду pwconv. Эта команда обновит файл /etc/ shadow в соответствии с информацией файла /etc/passwd.
Именно команда pwconv базируется на специальном значении "х" в поле password файла /etc/passwd. Значение "х" означает, что пароль данного пользователя уже существует в файле /etc/shadow. Если сам файл /etc/shadow не существует, то команда pwconv повторно создает все элементы этого файла, используя информацию из файла /etc/passwd. Если же файл /etc/shadow существует, то выполняются следующие операции:
ф Элементы, которые присутствуют в файле /etc/passwd, но отсутствуют в файле /etc/shadow, добавляются в этот теневой файл.
ф Элементы, которые присутствуют в файле /etc/shadow, но отсутствуют в файле /etc/passwd, удаляются из этого теневого файла.
Каждая строка в файле /etc/group содержит несколько полей, разделенных между собой двоеточием. Указанная строка имеет следующий формат:
group-name:group-password:gid:user-list
Каждое поле файла /etc/group определяется в таблице 8.5.
Имя поляОписание
group-name
Содержит имя, присвоенное данной группе. Например, группа сотрудников бухгалтерского отдела может называться acct. Имя группы может иметь максимально девять символов.
group-password
Обычно содержитсимаол звездочки (*) или является пустым. Попе осталось от ранних версий операционной системы UNIX.
gid
Содержит номер идентификатора группы (GID). Этот номер должен быть уникальным в локальной системе и в пределах всей организации. Каждый номер GID должен представлять собой целое число в диапазоне от 0 до 60002, однако его максимальное значение может достигать 2147483647. Номера GID меньшие, чем 100, являются зарезервированными по умолчанию для учетных записей системных групп. А вот группы, определяемые пользователями, могут иметь номера в диапазоне от 100 до 60000 (номера 60001 и 60002 являются зарезервированными и присваиваются группам nobody и noaccess соответственно). Обратите внимание на предыдущее примечание, относящееся к использованию номеров UID и GID больших, чем 60000.
user-list
Содержит список групп и разделенный запятыми список пользователей, представляющий членстао пользователя во вторичных группах. Каждый пользователь может входить не более чем в шестнадцать вторичных групп.
По умолчанию все системы Solaris 8 имеют приведенные ниже группы, заранее определенные в файле /etc/group. Не используйте приведенные ниже группы для пользователей. Кроме того, некоторые системные процессы и приложения могут также базироваться на указанных группах, поэтому не изменяйте номера или не удаляйте эти группы из файла /etc/group до тех пор, пока вы не будете абсолютно уверены в результатах воздействия такой операции на систему.
root::0:root
other: : 1:
bin:: 2:root,bin,daemon sys::3:root,bin,sys,adm adm: : 4: root, adm, daemon uucp: : 5:root,uucp mail::6:root
tty::7:root,tty,adm Ip::8:root,Ip,adm nuucp::9:root,nuucp staff::10:
daemon::12:root,daemon
sysadmin::14:
nobody::60001:
noaccess::60002:
nogroup::65534:
ДВИМ1=^^ л
Членам группы sysadmin (группа 14) разрешено применять утилиту Admintool и программное обеспечение Solstice AdminSuite для добавления или удаления учетных записей пользователей, групп, программного обеспечения, принтеров и последовательных устройств. Системный администратор
может нвзнвчить эту группу другому системному администратору, ответственному зв копироввние, или опытному пользователю. Если вы не являетесь членом группы UNIX под нвзввнием sysadmin, вы должны зарегистрироваться на вашей системе как суперпользователь для того, чтобы использовать Admintool или AdminSuite. '
Командные процессоры ограниченного доступа
Системные администраторы могут использовать оболочки, или командные процессоры, ограниченного доступа: версии Korn (rksh) и Bourne (rsh) в целях ограничения операций, разрешенных для конкретной учетной записи пользователя. Версии оболочек ограниченного доступа особенно удобны, чтобы сохранять уверенность, что пользователи, работающие в режиме разделения времени, или гости пользователей на какой-нибудь системе, имеют подобные полномочия в течение сеансов работы в системе. Когда установка учетной записи выполняется с использованием командного процессора ограниченного доступа, пользователи не смогут выполнять перечисленные ниже действия:
ф Изменять текущие каталоги
ф Устанавливать переменную окружения $РАТН
ф Задавать маршрут или команду, чьи имена начинаются с символа /
Ф Переадресовывать выходную информацию
Вы также можете предоставить пользователю процедуры командного процессора, которые имеют доступ ко всем возможностям стандартной оболочки, однако навязывают ему ограниченное меню команд.
Не следует путать версию комвндного процессоре огрвниченного доступе под нвзввнием /usr/lib/ rsh с диствнционной оболочкой /usr/bin/rsh. При звдании комвндного процессоре огрвниченного доступе вы не должны включвть мвршрут пользоввтеля - /bln, /sbin или /usr/bin. В противном случве у пользоввтеля появляется возможность запустить другой командный процессор (версию комвндного процессоре без огрвничений).
Управление доступом к файлам
После того, как вы установили регистрационные ограничения, необходимо управлять доступом к данным системы. Некоторым пользователям необходимо только просматривать файлы; другим - изменять или удалять файлы. У вас могут быть данные, которые вы не хотите демонтировать кому угодно. Вы управляете доступом к данным посредством назначения уровней полномочий файлу или каталогу.
Для файла операционной системы UNIX назначается три уровня полномочий доступа, предназначенных для управления доступом со стороны владельца данного файла, его группы или всех остальных пользователей. Для отображения полномочий применяется
команда Is -la. Приведенный ниже пример демонстрирует, как следует использовать команду Is -la для отображения полномочий на файлах в каталоге /users:
Is -la /users
Система отвечает следующим образом:
drwxr-xr-x
2
bill
staff
512
Sep
23
07:02
drwxr-xr*x
3
root
other
512
Sep
23
07:02
-rw-r—г— .
1
bill
staff
124
Sep
23
07:02
.cshrc
-rw-r—г—
1
bill
staff
575
Sep
23
07:02
.login
Первый столбец информации отображает тип файла и полномочия доступа к нему для пользователя, группы и всех остальных. Символы г, w и х описываются в таблице 8.6. Третий столбец отображает имя владельца данного файла- обычно это пользователь, который создал этот файл. Владелец файла (и суперпользователь) может принимать решение о том, кто имеет право читать этот файл, писать в него и, если данный файл является командой, исполнять его. Четвертый столбец отображает группу, к которой относится данный файл - обычно это первичная группа владельца данного файла.
Символ
., . Полномочия
Это означает, что данные пользователи ...
r
Читать
Могут открыаать файл и читать его содержимое.
w
Писать
Могут писать в данный файл (изменять его содержимое), добавлять к нему данные или удалять данный файл.
X
Исполнять
Могут исполнять данный файл, если он представляет собой программу или сценарий командного процессора.
-
Отказ в доступе
Не могут читать данный файл, писать или исполнять его.
Если посмотреть на листинг полномочий для каталога, то все столбцы информации являются теми же самыми, что и для файла, но с одним единственным исключением. Символы г, w и х, которые находятся в первом столбце, трактуются несколько иначе. Эти символы описаны в таблице 8.7.
1шммйВ1111М11^^
СимволПолномочия '
■ Это означает, что данные пользователи ...
г. Читать
Могут формировать список файлов в данном каталоге.
wПисать
Могут добавлять или удалять файлы или ссылки в данном каталоге.
хИсполнять
Могут открывать или исполнять файлы в данном каталоге. Кроме этого, могут создавать каталоги, вложенные в текущий каталог.
-Отказ в доступе
Не могут читать, писать или исполнять.
Чтобы модифицировать полномочия доступа к файлу или его принадлежность, следует применять команды, перечисленные в таблице 8.8, однако не забывайте, что только владелец файла или суперпользователь может присваивать или изменять указанные значения.
Команда■ Описание
chmodИзменяет полномочия доступа к файлу. Для изменения полномочий на не
котором файле вы можете воспользоваться либо символическим режимом (буквы и символы), либо абсолютным режимом (восьмеричные числа).
chownИзменяет принадлежность файла.
chgrpИзменяет группу, владеющую файлом.
Действующие идентификаторы пользователя и группы
Команда su (switch user - переключения пользователя) позволяет какому-нибудь пользователю стать другим пользователем, не выходя при этом из системы. Чтобы воспользоваться командой su, вы должны знать пароль того пользователя, от имени которого пытаетесь зарегистрироваться, если только вы уже не зарегистрировались в системе как суперпользователь. Причем, суперпользователь может запускать команду su, не получая при этом приглашения для ввода пароля.
Системные администраторы часто пользуются командой su. Например, в качестве меры предосторожности, вместо того, чтобы использовать пароль суперпользователя при выполнении обычной регистрации в системе, системный администратор может задать обычное регистрационное имя (не регистрационное имя суперпользователя) всякий раз, когда он не выполняет функции администрирования. Когда требуется получить доступ к системе именно с привилегиями суперпользователя, системный администратор с помощью команды su быстро становится суперпользователем. Когда администратор заканчивает выполнение своей задачи, он покидает учетную запись суперпользователя и продолжает работать, используя свою обычную (не суперпользователя) учетную запись.
Если пользователь вводит правильный пароль, команда su создает новый процесс командного процессора, как определено в поле shell файла /etc/passwd для данного конкретного пользователя. В приведенном ниже примере демонстрируется, как пользователь userl запускает команду su, чтобы стать пользователем user2:
su user2
Опцией для команды su является символ тире (-). Эта опция определяет полное регистрационное имя. Будет запущен пользовательский файл .profile, а окружение будет изменено на такое, которое могло бы ожидаться, если бы текущий пользователь действительно регистрировался бы в системе под именем заданного пользователя.
Без использования опции - окружение передается из оригинального регистрационного имени, за исключением переменной окружения $РАТН, которая управляется полями PATH и SUPATH из файла /etc/default/su; этот файл описывается далее в настоящей главе.
Принятая по умолчанию маска пользователя
Когда какой-нибудь пользователь создает файл или каталог, маска пользователя управляет полномочиями доступа, назначенными по умолчанию для этого файла или каталога. Команда umask должна установить маску в пользовательском файле инициализаци, таком как /etc/profile или .cshrc. Вы можете вывести текущее значение маски пользователя, введя команду umask и нажав клавишу Enter.
Маска пользователя устанавливается с помощью трехсимвольного восьмеричного зна-
чения, такого как 022. Первая цифра в нем устанавливает полномочия для данного пользователя, вторая - для группы данного пользователя, а третья - для всех остальных пользователей. Для установки маски пользователя в значение 022, введите следующую команду:
umask 022
По умолчанию система устанавливает полномочия на файл в значение 666, гарантирующее полномочия чтения и записи для пользователя, для группы данного пользователя и для всех остальных. По умолчанию система устанавливает полномочия на каталог или исполняемый файл в значение 777, или rwxrwxrwx. Значение, назначенное с помощью команды umask, вычитается из значения, принятого по умолчанию. Для определения значения, которое вы хотите установить с помощью команды umask, вычтите желаемое значение полномочий из значения 666 (для файла) или 777 (для каталога). Остаток представляет собой значение, которое необходимо использовать с командой umask. Например, предположим, что вы хотите изменить принятый по умолчанию режим доступа к файлам на 644 (rw-r— г—). Разница между значениями 666 и 644 составляет 022; это и есть значение, которое вы можете использовать в качестве аргумента команды umask.
Установка значения маски пользователя с помощью команды umask оказывает эффект предоставления полномочий или отказа в них, обратный тому, который предоставляется с помощью команды chmod. Например, команда chmod 022 предоставляет полномочия записи для группы данного пользователя и для всех остальных пользователей, тогда как команда umask 022 отменяет полномочия записи для группы данного пользователя и всех остальных пользователей.
Sticky-бит
Представляет собой бит полномочий, который защищает файлы внутри каталога. Если для данного каталога установлен sticky-бит, то файл из этого каталога может быть удален только владельцем файла, владельцем каталога или суперпользователем. Это предотвращает возможность удаления каким-нибудь пользователем файлов других пользователей из общедоступных каталогов. Символ t или Т в столбце полномочий доступа листинга некоторого файла обозначает, что установлен sticky-бит:
drwxrwxrwt 2 uucp uucp 512 Feb 12 07:32 /var/spool/uucppublic
Чтобы установить sticky-бит, следует применить команду chmod. Символы для такой установки в символическом режиме перечисляются в таблице 8.9.
СимволСимволОписаниеОписаниеt.Sticky-бит включен; бит исполнения для всех остальных пользователейt.Sticky-бит включен; бит исполнения для всех остальных пользователей
Символ
Символ
Описание
Описание
t.Sticky-бит включен; бит исполнения для всех остальных пользователей
t.Sticky-бит включен; бит исполнения для всех остальных пользователей
включен.
ТSticky-бит включен; бит исполнения для всех остальных пользователей
выключен.
Списки ACL
Списки управления доступом (ACL - Access Control Lists, произносится эйсиклз) могут предоставить расширенные возможности управления полномочиями доступа к файлам, когда традиционные методы защиты файлов, принятые в UNIX, в операционной системе Solaris являются недостаточными. Традиционные методы защиты файлов UNIX предоставляют пол-
номочия чтения, записи и исполнения для трех классов пользователей: для владельца данного файла, его группы и всех остальных пользователей. ACL обеспечивает лучшую защиту файлов за счет того, что дает возможность определять полномочия доступа к файлу для владельца, его группы, всех остальных пользователей, конкретных пользователей и групп, а также принятые по умолчанию полномочия для каждой из перечисленных категорий.
Предположим, что у вас имеется файл и вы хотите, чтобы любой пользователь из некоторой группы имел возможность прочесть этот файл. Для предоставления доступа любому члену группы вы могли бы предоставить "групповые" полномочия чтения на данный файл. Теперь предположим, что вы хотите предоставить только одному человеку из группы возможность записи в файл. Стандартные средства UNIX не позволяют вам выполнить такие установки; однако вы можете настроить ACL так, чтобы предоставить только одному человеку из группы возможность записи в данный файл. Элементы ACL можно рассматривать как некоторое расширение обычных полномочий UNIX.
Элементы списка ACL устанавливаются с помощью специальных команд и состоят из перечисленных ниже полей, разделенных двоеточиями:
entry_type:uidI gid:perms
Элементы ACL описываются в таблице 8.10.
Поле A CLОписание
entryjype
Тип элемента списка ACL, на который устанавливаются полномочия доступа к файлу. Например, значенияем поля entry_type может быть user (владелец данного файла) или mask (маска ACL).
uidИмя пользователя или его идентификационный номер.
gidИмя группы или ее идентификационный номер.
permsНабор полномочий для поля entry_type. Полномочия обозначаются либо
символически (с помощью символов rwx), либо с помощью восьмеричного числа, аналогичного атрибуту команды chmod.
Используемая в качестве элемента маска ACL обозначает максимальные полномочия, разрешенные для всех пользователей кроме владельца данного файла и для групп. Данная маска представляет собой быстрый способ изменения полномочий для всех пользователей и групп. Например, элемент mask:r- обозначает, что пользователи и группы только и имеют полномочия чтения, несмотря на то, что они могли бы иметь полномочия записи/исполнения.
Установка элементов ACL
Установите элементы ACL для некоторого файлы при помощи команды setfacl: $ setfacl -s \ user::perms,group::perms,other:perms,mask:perms, \ acl_entry_list filename ...
Опция -s полностью заменяет элементы ACL на новые, если для файла уже существует ACL.
Приведенный далее пример демонстрирует, как установить для пользователя полномочия на чтение/запись, для группы - полномочия только на чтение и как отменить все полномочия остальных пользователей файла txtl.doc. Кроме того, пользователю bill предоставляются полномочия на чтение/запись данного файла, а полномочия маски ACL ус-
танавливаются на чтение/запись, то есть, ни один пользователь или группа не могут иметь полномочий на исполнение данного файла.
$ setfacl -s user::rw-,group::r--,other: ,mask:rw-,user: \ bill:rw- txtl.doc
Помимо элементов ACL для файлов вы можете установить принятые по умолчанию элементы для некоторого каталога, прилагаемого к файлам, созданным внутри данного каталога. Например, установим при помощи setfacl привилегии исполнения на каталог /home/bholzgen для пользователя bcalkins. Привилегии исполнения на некоторый каталог разрешают пользователю изменять этот каталог и формировать расширенный листинг его содержимого с помощью команды Is -1. Прежде, чем устанавливать ACL для каталога, посмотрим иа полномочия по умолчанию, существующие в настоящее время для данного каталога:
drwxr-xr-x 2 bholzgen staff 512 Jul 30 12:41, bholzgen
А теперь выдадим команду для установки привилегий ACL:
setfacl -s user::rwx,g::г—,о: ,m:rwx,user:bcalkins:rwx \ /export/home/bholzgen
Когда вы впераые устанавливаете для конкретных пользователей или групп принятые по умолчанию элементы ACL на некоторый каталог, вы должны также установить принятые по умолчанию элементы ACL для владельца файла, его группы, всех остальных пользователей и должны установить маску ACL.
Воспользуемся командой getfacl для отображения элемента ACL для каталога/export/ home/bholzgen:
getfacl /export/home/bholzgen
Система отвечает следующим образом:
file: /export/home/bholzgen
owner: bholzgen
group: staff
user::rwx
user .-bcalkins: rwx#effactive:rwx
group::r—#effective:r—
mask:rwx other:
Только теперь пользователям bholzgen и bcalkins разрешено вносить изменения в каталог /export/home/bholzgen. Ни один другой пользователь, кроме суперпользователя, не будет иметь доступ к данному каталогу, не исключая членов той же самой группы.
Проверка полномочий доступа к новому файлу
Для проверки следует воспользоваться командой Is -1. Знак плюс справа от поля режима доступа означает, что файл имеет ACL:
$ is -1
total 210
-rw-r+ 1
mike
sysadmin
32100
Sep
11
13:11
txtl.doc
-rw-r—г 1
mike
sysadmin
1410
Sep
11
13:11
txt2.doc
-rw-r--r 1
mike
sysadmin
1700
Sep
11
13:11
labnotes
Проверка элементов ACL
Чтобы проверить, какие элементы ACL были установлены для файла, следует воспользоваться командой getfacl: $ getfacl txtl.doc
Система отвечает таким образом: # file: txtl.doc ■# owner: mike
group: sysadmin user::rw- user:bill:rw-#effective:rw-'
group::r—#effective:r—
mask:rw- other:—
Копирование некоторого списка ACL для другого файла
Это можно осуществить посредством перенаправления выходной информации коман
ды getfacl:
getfacl <filenamel>: I setfacl -f - <filename2>
Приведенный ниже пример демонстрирует, как скопировать ACL файла filel для файла
file!:
getfacl filel | setfacl -f - file2
Выдав команду getfacl, можно проверить, что изменения были сделаны: getfacl file* # file: filel # owner: root # group: other user::rw- user:bcalkins:rw-#ef fective:rw-
group::r—#effective:r—
mask:rw- other: # file: file2 # owner: root # group: other user::rw- user:bcalkins:rw-#ef fective:rw-
group::r-#effective:r--
mask:rw-’
other:
Изменение элементов ACL некоторого файла ■
Для внесения изменений следует воспользоваться командой setfacl:
setfacl -m <acl_entry_list> <filenamel> [filename2 ... ]
Аргументы команды setfacl описываются в таблице 8.11.
АргументОписание
Модифицирует существующий ACL.
<acl_entry_list>Определяет подлежащий изменению список ACL из одного или несколь
ких элементов для файла или катвлога. Вы также можете модифицировать принятые по умолчанию элементы ACL для каталога. Список элементов ACL представлен в таблице 8.12.
<filename><filename>Определяет файл или каталог.
<filename>
<filename>
Элементы ACL, которые могут быть заданы с помощью команды setfacl, описываются в таблице 8.12.
Таблица8.12 Элементы ACL для файлов-
Элемент ACL
Описание
u[ser]::<perms>
Полномочия владельца файла.
g[roup]::<perms> o[ther]:<perms>
Полномочия группы, которой принадлежит файл.
Полномочия остальных пользователей, исключая владельца файла или членов его группы.
m[ask]:<perms>
Маска как элемент ACL указывает максимальные полномочия, разрешенные для всех пользователей (кроме владельца данного файла) и групп. Маска - это быстрый способ изменения полномочий для всех пользователей и групп. Например, элемент mask: г-- обозначает, что пользователи и группы будут только иметь полномочия чтения, хотя они могли бы иметь полномочия записи/исполнения.
u[ser]:uid:<perms>Полномочия для конкретного пользователя. В качестве аргумента uid вы
можете использовать либо имя пользователя, либо численное значение UID.
g[roup]:gid:<perms>g[roup]:gid:<perms>Полномочия для конкретной группы. В качестве аргумента gid вы можете
g[roup]:gid:<perms>
g[roup]:gid:<perms>
использовать либо имя группы, либо численное значение GID.
Удаление элементов ACL из файла
Для удаления следует воспользоваться командой setfacl -d <acl_entry_list>. Приведенный ниже пример демонстрирует, как удалить элемент ACL к файлам filel и file2 для пользователя bcalkins:
setfacl -d u:bcalkins filel file2■
Для проверки того, что упомянутые элементы удалены, следует воспользоваться описанной ранее командой getfacl.
Установка корректного маршрута
Важно правильно установить вашу переменную маршрута; в противном случае вы можете случайно запустить программу, введенную кем-нибудь другим, которая может повредить данные или вашу систему. Такой вид программ, создающий опасность для защиты информации, называется "троянский конь". Например, в общедоступный каталог может быть помещен заменитель программы su, и вы, в качестве системного администратора, можете запустить ее оттуда. Такой сценарий может выглядеть точно так же, как и обыч-
ная команда su. Сценарий может удалить самого себя после выполнения, и вы будете иметь проблемы, зная, что действительно запустили "троянского коня".
Переменная маршрута автоматически устанавливается во время регистрации в системе через файлы запуска .login, .profile и .cshrc. Установка для пользователя маршрута поиска таким образом, чтобы текущий каталог (.) был последним, защитит вас и ваших пользователей от запуска таких "троянских коней". Переменная маршрута для суперпользователя не включает в маршрут поиска текущий каталог (.).
Операционная система Solaris предоставляет утилиту, имеющую название ASET (Automated Security
Enhancement Tool-инструмент оптимизации автоматической защиты), которая анализирует файлы запуска, чтобы обеспечить корректную установку переменной маршрута и не включать точку (.) в качестве текущего каталога. ASET обсуждается далее в настоящей главе.
Программы с полномочиями setuid и setgid
Когда для некоторого исполняемого файла устанавливаются полномочия идентификации пользователя-установщика (setuid), то процесс, который запускает файл, получает доступ как владелец данного файла (как правило, это суперпользователь), а не как пользователь, который создал данный процесс. Это дает возможность пользователю получать доступ к файлам и каталогам, которые обычно доступны только для их владельца. Например, установка полномочий setuid на команду passwd дает возможность обычному пользователю редактировать файл /etc/passwd для изменения паролей. Когда некоторый пользователь исполняет команду passwd, то для него предполагаются полномочия суперпользователя, имеющего UID, равный 0. Полномочия setuid могут быть обнаружены при помощи команды Is -1. Символ s в поле полномочий в приведенном ниже примере обозначает использование setuid:
Is -1 /usr/bin/passwd
-r-sr-sr-x 1 root sys 10332 May 3 08:23 /usr/bin/passwd
Многие исполняемые программы работают должным образом, если запущены с привилегиями суперпользователя. Эта программы запускаются с идентификатором пользователя, установленным в значение 0 (setuid=O). Любой человек, запускающий подобные программы, запускает их с идентификатором суперпользователя, что создает потенциальные проблемы в защите информации, если программы не были написаны с учетом требований по защите информации от несанкционированного доступа.
Использование полномочий setuid на исполняемой программе представляет собой определенную опасность для защиты. Целеустремленный пользователь обычно может найти способ эксплуатации полномочий, предоставленных ему процессом setuid, даже после того, как исполнение этого процесса завершится. Например, конкретная команда может предоставить привилегии суперпользователя посредством setuid. Если какой-нибудь пользователь сможет взломать эту команду, он все еще сумеет сохранять привилегии суперпользователя, предоставленные ему установкой setuid для данного файла. Любой злоумышленник, получивший доступ к системе, будет искать файлы, имеющие полномочия setuid.
Для поиска файлов, которые имеют полномочия setuid, зарегистрируйтесь в системе как суперпользователь. Затем воспользуйтесь командой find для поиска файлов, которые имеют установленные полномочия setuid:
# find [directory] -user root -perm -4000 -exec Is -Idb {) ; >/tmp/filename
За исключением исполнимых модулей, поставляемых в комплекте программного обеспечения Solaris и имеющих установку setuid на суперпользователя, вы должны запретить применение программ с полномочиями setuid или, по крайней мере, ограничить их количество и поддерживать его на минимальном уровне.
Полномочия идентификации группы-установщика (setgid) являются аналогичными полномочиям setuid за исключением того, что действующий идентификатор G1D данного процесса изменяется на группу пользователя-владельца данного файла, и пользователю предоставляется доступ на основе полномочий этой группы. Воспользовавшись командой Is -1, вы сможете увидеть, что файл /usr/bin/mail имеет полномочия setgid:
-г-х—s—х 1 bin mail 64376 Jul 16 1997 /usr/bin/mail
Приведенный ниже пример демонстрирует, как установить идентификатор UID на исполнимый файл, имеющий имя myprogl:
chmod 4744 myprogl
Проверьте сделанные изменения:
Is -1 myprogl
Система отвечает следующим образом:
-rwsr--r— 1 root other 25 Mar 6 11:52 myprog
Приведенный ниже пример демонстрирует, как установить идентификатор GID на исполнимый файл, имеющий имя myprogl:.
chmod 2070 myprogl
Проверьте сделанные изменения:
Is -1 myprogl
Система отвечает следующим образом:
rws1 root other 25 Mar 6 11:58 myprog
Пользователь может установить полномочия UID или GID на любой файл, владельцем которого он является. ■
Аудит пользователей
В следующих двух разделах будет описано несколько команд, которые применяются для просмотра информации о пользователях, зарегистрированных в данной системе. Пожалуйста, имейте в виду, что вопросы аудита выносятся на вторую часть экзамена.
Наблюдение за пользователями и использованием системы
В качестве системного администратора вам необходимо контролировать системные ресурсы и отслеживать бесполезную деятельность. Существует метод контроля системы, который полезен, когда вы подозреваете, что в защите имеется брешь. Например, вы можете захотеть контролировать статус регистрации конкретного пользователя. Для контроля за деятельностью конкретного пользователя следует применить команду logins, как показано далее.
Шагоа шагом-*> 'А\ '
Мониторинг деятельности пользователя
Зарегистрируйтесь в системе как суперпользователь.
Выведите на экран статус регистрации какого-нибудь пользователя, для чего следует воспользоваться командой logins: # logins -х -1 username
Например, для контроля статуса регистрации пользователя calkins введите следующую командную строку. # logins -х -1 calkins
Система отвечает следующим образом: calkins 200 staff 10 Bill S. Calkins /export/home/calkins /bin/sh PS 030195 10 7 -1
Выходная информация команды logins описывается в таблице 8.13.
таблица #л$чвй$»^кд|^мду|^^
Поле
Описание
calkins
Регистрационное имя пользователя.
200
Идентификатор (UID) пользователя.
staff
Первичная группа.
10
Идентификатор (GID) группы.
Bill S. Calkins
Поле комментария в файле /etc/passwd.
/export/home/calkins
/bin/sh
Исходный каталог пользователя.
Принятая по умолчанию оболочка регистрации данного пользователя.
PS 030195 10 7-1
Определяет информацию устаревания пароля: дату последнего изменения, количество дней, требуемое между изменениями, разрешенное количество дней перед тем, как потребуется изменение, и период выдачи предупреждающего сообщения.
Вы захотите контролировать состояние регистрации пользователей, чтобы убедиться, что их пароли являются безопасными. Потенциальная проблема безопасности заключается в наличии пользователей, не имеющих паролей (другими словами, пользователей, которые используют нажатие клавиши Enter вместо ввода пароля). Периодически проверяйте состояние регистрации пользователей, для чего следует использовать следующий метод:
Шаг за шагом
8.2 Проверка пользователей с пустыми паролями
Зарегистрируйтесь в системе как суперпользователь.
Выведите список пользователей, которые не имеют паролей, для чего следует воспользоваться командой logins:
# logins -р
Система в ответ выведет список пользователей, не имеющих паролей.
Еще одной хорошей идеей является наблюдение за всеми, кто пытался получить доступ к системе, но безуспешно. Вы можете сохранить неудачные попытки регистрации в системе путем создания файла /var/adm/loginlog с полномочиями чтения и записи только
для суперпользователя. После того как вы создали файл loginlog, вся безуспешная деятельность по регистрации в системе автоматически фиксируется в указанном файле после пяти неудачных попыток. Этот файл не существует по умолчанию; системный администратор должен создать его. Чтобы иметь возможность протоколирования в этот файл в качестве суперпользователя, создайте указанный файл следующим образом:
touch /var/adm/loginlog
Файл loginlog содержит по одному элементу на каждую неудачную попытку регистрации в системе. Каждый такой элемент включает в себя регистрационное имя пользователя, устройство tty и количество неудачных попыток регистрации. Если кто-нибудь сделает менее пяти безуспешных попыток, то ни одна из этих попыток не регистрируется.
Ниже приведен образец элемента, отражающего попытку зарегистрироваться в системе с привилегиями суперпользователя; попытка, однако, потерпела неудачу:
# more /var/adm/loginlog
root:/dev/pts/5:Wed
Apr
11
11:36:40
2001
root:/dev/pts/5:Wed
Apr
11
11:36:47
2001
root:/dev/pts/5:Wed
Apr
11
11:36:54
2001
root:/dev/pts/5:Wed
Apr
11
11:37:02
2001
Файл loginlog может быстро увеличиваться в размере. Для использования информации из этого файла и предотвращения его чрезмерного разрастания, вы должны проверять и время от времени очищать его содержимое. Если этот файл демонстрирует большую активность, возможно, что некто пытается проникнуть в вашу систему.
Проверка зарегистрированных в системе пользователей
Для определения того, кто зарегистрировался в системе, следует воспользоваться командой Solaris под названием who. Для получения этой информации команда who анализирует файл /var/adm/utmpx, который содержит историю всех регистраций, имевших место после последнего создания данного файла.
■ Команда who без аргументов выводит список имен зарегистрировавшихся пользователей, терминальное устройство, дату и время каждой регистрации, и где зарегистрировался данный пользователь. Пример такого списка приведен ниже:
# who
root
pts/3
May
11
14:47
(10.64.178.2)
root
pts/1
May
10
15:42
(sparcl.PDESIGNINC.COM)
root
pts/2
May
10
15:53
(sparcl. PDESIGNINC. COM)
root
pts/4
May
11
14:48
(pluto)
Ниже приведены некоторые из наиболее общеупотребительных опций команды who:
-аОбрабатывает файл /var/adm/utmpx или именованный файл с
включенными опциями -b,-d, -1, -р, -г, -t, -Т и -и. Приведенный ниже пример демонстрирует выходную информацию, полученную при использовании опции -а:
who -а
NAMELINE TIMEIDLEPIDCOMMENTS
.system bootMay 1009:56
.run-level 3May 1009:5630S
гс2
.May 10
09:56 old
70
id=
s2
term=0 exit=0
гсЗ
.May 10
09:57 old
270
id=
S3
term=0 exit=0
sac
.May 10
09:57 old
294
id=
sc
LOGIN
console May 10
09:57 0:13
295
zsmon
.May 10
09:57 old
297
LOGIN
console May 10
09:57 0:13
299
(: 0)
root
+ pts/3 May 11
14:47
505
(10.
64.178.
2)
root
+ pts/1 May 10
15:42 0:13
366
(ovserv. PDESIGNINC. COM)
root
+ pts/2 May 10
15:53 22:02 378
(ovserv.PDESIGNINC.COM)
root
+ pts/4 May 11
14:48 0:13
518
(ho!1300s)
ьОтображает время и дату последней перезагрузки системы, что
и показано в примере, приведенном ниже:
who -Ь
Система отвечает:
. system boot May 10 09:56
mТолько выводит информацию о текущем терминале:
who -m
Система отвечает:
rootPts/3May 1114:47(10.64.178.2)
n <x>Принимает численный аргумент <х>, который определяет ко
личество пользователей, отображаемых в одной строке. Значение аргумента <х> должно быть, по крайней мере, равно 1. Опция -п может применяться только совместно с опцией -q (описывается следующей).
q(Быстрая команда who). Отображает только имена и количество
пользователей, зарегистрированных в системе в настоящий момент времени. Когда применяется эта опция, все остальные опции игнорируются. Приведенный ниже пример демонстрирует использование опций -q и -п:
who -q -n2
Система отвечает:
root root
root root
users=4
гОтображает текущий уровень запуска процесса init:
who -г.
Система отвечает:
. run-level 3 Мау 1009:56 30 S
sВключает в список только поля имени, линии связи и времени.
Это вариант списка по умолчанию, когда не задаются другие опции.
Команда whodo
Создает отформатированный и датированный вывод данных из информации, которая содержится в файлах /var/adm/utmpx, /tmp/ps_data и /proc/pid. Команда отображает каждого зарегистрированного в системе пользователя и активные процессы, владельцем которых является данный пользователь. Выходная информация содержит дату, время и имя машины. Для каждого зарегистрированного пользователя система отображает имя устройства, UID и время регистрации, после чего выводится список активных процессов, связанных с данным UID. Список процессов включает в себя имя устройства, идентификатор процесса, время использования центрального процессора в минутах и секундах и имя процесса. Приведенный ниже пример демонстрирует использование команды whodo:
whodo
Система отвечает следующим образом:
Thu
May
11
15:16:
:56
EOT
2000
ho!1300s
pts/3
pts/3
root
505
14:47
0:00
sh
pts/3
536
0:00
whodo
pts/l
pts/l
root
366
15:42
0:00
sh
pts/l
514
0:00
rlogin
pts/l
516
0:00
rlogin
pts/2
pts/2
root
378
15:53
0:00
sh
pts/4
pts/4
root
518
14:48
0:00
sh
Для получения расширенного листинга следует воспользоваться опцией -1: whodo -1
Система отвечает следующим образом:
3:23pm up 1 day(s)
, 5 hr (s) ,
27 min(s)
4 user(s)
User
tty
logins
idle
JCPU PCPUwhat
root
pts/3
2:47pm
6
whodo -1
root
pts/l
Wed 3pm
35
rlogin holl300s
root
pts/2
Wed 3pm 22:24
-sh
root
pts/4
2:48pm
35
-sh
Отображаются следующие поля: регистрационное имя пользователя; имя терминала, за которым находится данный пользователь; время в пределах суток, когда данный пользователь зарегистрировался в системе (в формате часькминуты); время простоя, представляющее время, прошедшее с того момента, когда пользователь в последний раз набирал что-нибудь (в формате часы:минуты); время центрального процессора, использованное всеми процессами и их дочерними процессами на данном терминале (в формате мину- ты:секунды); время центрального процессора, использованное текущими активными процессами (в формате минуты:секунды); имя и аргументы текущего процесса.
Команда last
Ищет в файле /var/adm/wtmpx информацию о пользователях, которые зарегистрировались в системе. Команда last отображает в хронологическом порядке сеансы заданных пользователей и терминалы. Для каждого пользователя команда last отображает время, когда начался сеанс, его продолжительность и терминал, на котором происходит данный сеанс. Команда last также отображает информацию о том, является ли данный сеанс по- прежнему активным или он был завершен в результате перезагрузки системы. Например, команда last root console выводит список всех сеансов суперпользователя, а также всех сеансов на терминале console:
# last root console I more
Система отвечает следующим образом:
root
pts/2
10.64.178.2 Tue May
30
11:24
still
logged in
root
pts/1
10.64.178.2 Fri May
26
14:26-
15:47
(01:20)
root
pts/1
10.64.178.2 Fri May
26
11:07-
13:37
(02:29)
root
pts/1
10.64.178.2 Fri May
26
10:12-
10:23
(00:11)
root
pts/1
10.64.178.2 Fri May
26
09:40-
09:42
(00:02)
root root root
console console pts/3
:0Wed May 24 16:
:0Wed May 24 16:
10.64.178.2 Wed May
36 -
20 - 24 13
16:38 (00:01)
16:36 (00:15) 1:52 - 14:22
(1+00:
30)
root
pts/1
ultraS.PDESIGNINC
Mon
May 22 15:14
- 15:15
(00:00)
root
pts/2
sparc21. PDESIGNINC
Wed
May 10 15:53
- 15:47
(23:53)
Безопасность в сети
Наиболее сложная проблема системного администрирования связана с обеспечением сетевой безопасности. Когда вы подключаете свой компьютер к остальному миру через какую-нибудь сеть, такую как Internet, кто-нибудь может попытаться проникнуть в нее.
Брандмауэры
Одним из способов защититься от несанкционированного доступа пользователей к хостам вашей сети является использование брандмауэра, или системы защищенных межсетевых шлюзов. Брандмауэр представляет собой специализированную систему, разделяющую две сети, отношения между которыми не являются доверительными, то есть, это защищенная машина, которая действует в качестве некоторого барьера между вашей внутренней сетью и внешними сетями. Брандмауэр выполняет две основные функции: он работает в качестве межсетевого шлюза для передачи данных между сетями, и он работает в качестве барьера для блокирования операций передачи данных в сеть и из сети. Кроме того, система брандмауэра принимает все входящие сообщения электронной почты и распределяет их между хостами внутренней сети.
Службы сетевой защиты
Solaris - это мощная операционная система с множеством полезных служб. Однако некоторые из этих служб не являются необходимыми и могут представлять собой потенциальную опасность для защиты информации, особенно в системе, подключенной к сети Internet.
Начнем с файла /etc/inetd,conf. Этот файл определяет, какие службы будет прослушивать демон /usr/sbin/inetd. Программа inetd - это демон, предоставляющий множество служб, связанных с сетью Internet. По умолчанию файл /etc/inetd.conf сконфигурирован для тридцати или более служб, однако вам, вероятно, потребуются только две из них: ftp и telnet. Для исключения остальных служб, которые не являются необходимыми, закомментируйте их. Ниже показано, как запретить регистрации в службе telnet, отключив ее в файле /etc/inetd.conf:
#telnet stream top nowait root /usr/sbin/in.telnetd in.telnetd
Аналогичным способом могут быть отключены службы Internet - ftpd, tftpd, fingerd и многие другие. После этого вы должны перезапустить демон inetd, как показано ниже:
# kill -HUP <inetd pid>
Важно отключить все сетевые службы, которые не являются необходимыми, поскольку многие службы, запускаемые демоном inetd, такие как rexd, представляют собой серьезную угрозу безопасности. Программа rexd - это демон, отвечающий за дистанционное исполнение программ. В системе, соединенной с остальным миром через Internet, этот демон может создать потенциальную точку входа для какого-нибудь хакера. Обязательно должна быть отключена служба протокола TFTP, если только у вас нет бездисковых клиентов, которые имеют бесспорные преимущества от использования этой службы. Многие сайты также будут отключать службу finger, чтобы внешние пользователи не смогли бы узнать имена внутренних пользователей. Все остальное в большой степени зависит от потребностей вашего сайта.
Следующим местом, откуда следует начинать отключение процессов, не являющихся необходимыми, будут каталоги запуска /etc/rc2.d и /etc/rc3.d. Как было показано в главе 1, в этих каталогах вы найдете сценарии, запускаемые процессом init. Опять-таки, некоторые из этих процессов могут не являться необходимыми. Чтобы предотвратить запуск какого-нибудь сценария в процессе загрузки, замените прописную букву S в его имени на строчную букву s. В таблице 8.14 перечисляются некоторые из сценариев запуска, которые не являются необходимыми и представляют собой угрозу безопасности вашей системы. ТаШМШШЖйШка'
Сценарий запуска Описание
/etc/rc2.d/S73nfs.client
Применяется для монтирования файловых систем в NFS. Брандмауэр никогда не должен монтировать другую файловую систему.
/etc/rc2.d/S74autofs
Применяется для автомонтирования. Опять-таки, брандмауэр никогда не должен монтировать другую файловую систему. .
/etc/rc2.d/S80lp
Применяется для печати. Вашему брандмауэру никогда не требуется печатать.
/etc/rc2.d/S88sendmail
Прослушивает входящие сообщения электронной почты. Ваша система даже при отключении данного сценария запуска, тем не менее, сможет отправлять сообщения электронной почты (такие как предупреждающие сообщения).
/etc/rc2.d/S71rpc/etc/rc2. d/S99dt login/etc/rc3.d/S15nfe.server/etc/rc3.d/S76snmpdx/etc/rc2.d/S71rpc/etc/rc2. d/S99dt login/etc/rc3.d/S15nfe.server/etc/rc3.d/S76snmpdxДемон portmapper. Весьма незащищенная служба. Требуется, если вы запускаете СОЕ.
/etc/rc2.d/S71rpc
/etc/rc2. d/S99dt login
/etc/rc3.d/S15nfe.server
/etc/rc3.d/S76snmpdx
/etc/rc2.d/S71rpc
/etc/rc2. d/S99dt login
/etc/rc3.d/S15nfe.server
/etc/rc3.d/S76snmpdx
Демон среды СОЕ. По умолчанию запускает СОЕ.
Применяется для организации совместного использования файловых систем. Неудачная идея для брандмауэров.
Демон протокола SNMP.
Брандмауэры представляют собой один из быстроразвивающихся технических инструментов в области защиты информации от несанкционированного доступа. Однако брандмауэр является средством защиты ровно настолько, насколько защищена операционная система, на базе которой он реализован. ■
TCP Wrappers
Еще одно решение представляют собой TCP Wrappers, инструмент, обычно используемых в системах UNIX для мониторинга и фильтрации соединений с сетевыми службами. Хотя они и не занимаются шифрованием, однако выполняют протоколирование и контролируют тех, кто может получить доступ к вашей системе. Это некоторый двоичный код, который "охватывает" собой службы, запускаемые демоном inetd, такие как telnet или ftp. С помощью TCP Wrappers система запускает программу для соединений демона inetd, протоколирует все попытки доступа и затем проверяет эти попытки на соответствие некоторому списку управления доступом. Если соединение является разрешенным, TCP Wrappers передают данное соединение необходимой программе, такой как telnet. Если же соединение бракуется списком управления доступом, то данное соединение теряется.
Почему брандмауэру могут потребоваться упаковщики протокола TCP Wrappers? Разве брандмауэр не делает для вас все это? Прежде всего в случае, когда брандмауэр является скомпрометированным или разрушенным, TCP Wrappers представляют собой вторую линию обороны. Ни один брандмауэр не является 100-процентной защитой. Во-вторых, TCP Wrappers защищают сеть от некорректной конфигурации брандмауэра, в результате которой может возникнуть точка входа для какого-нибудь хакера. В-третьих, они добавляют второй уровень протоколирования - проверку файлов регистрации других систем.
ПШМЕЧАНИЕ ' \ V
Убедитесь, что для восстановления и компиляции TCP Wrappers используется другая система, а не брандмауэр. В системе брандмауэра не должны содержаться компиляторы.
Файл /etc/default/login
Один из последних способов защиты вашей системы от несанкционированного доступа - вне зависимости от того, подключена ли она к сети Internet - это файл /etc/default/ login. Убедитесь, что приведенная ниже строка в указанном файле не закомментирована:
CONSOLE=/dev/console
При наличии такого элемента (приведенной строки) суперпользователю разрешается регистрироваться в системе только на защищенной системной консоли, но не через сеть с использованием служб telnet или rlogin. Однако этот элемент не запрещает кому-нибудь воспользоваться командой su, чтобы переключиться на режим привилегий суперпользователя после регистрации в системе в качестве обычного пользователя.
Модемы
Модемы всегда представляют собой потенциальную точку входа для злоумышленников. Любой человек, который угадал телефонный номер, может предпринять попытку зарегистрироваться. Недорогие компьютеры могут быть преобразованы в устройства автоматического дозвона, которые ищут модемные линии связи, а затем бесконечно пытаются подобрать пароль и проникнуть внутрь. Если вы должны применять модем, используйте
его только для осуществления исходящих звонков. Исходящий модем не будет отвечать на входящие телефонные звонки. Если вы разрешаете входящие звонки, внедрите систему обратного вызова. Система обратного вызова гарантирует, что только авторизованные телефонные номера смогут подключиться к вашей системе. Другим вариантом является использование двух модемов, которые устанавливают секретный ключ между собой. В этом случае только модемы, которые имеют секретный ключ, смогут соединиться с системным модемом и получить доступ к системе.
Доверяемый хост
Наряду с использованием парольной защиты вам необходимо защищать вашу систему от регистрации в ней через сеть с привилегиями суперпользователя. Например, systemA представляет собой доверяемый хост, с которого пользователь может зарегистрироваться без необходимости ввода пароля. Имейте в виду, что пользователь, который имеет доступ с привилегиями суперпользователя в systemA, может получить регистрационное имя суперпользователя в systemB просто путем регистрации в нем через сеть, если systemA установлена как доверяемый хост для systemB. Когда systemB пытается выполнить аутентификацию суперпользователя с systemA, она базируется на информации, которая содержится в ее локальных файлах - а именно, в файлах /etc/hosts.equiv и /.rhosts.
Файл /etc/hosts.equiv
Содержит список доверяемых хостов для некоторой дистанционной системы, по одному имени в строке. Файл /etc/hosts.equiv имеет следующую структуру:
systeml .
system2 user_a
Если какой-нибудь пользователь (суперпользователь) пытается зарегистрироваться в режиме дистанционного доступа путем использования службы rlogin с одного из хостов, перечисленных в указанном файле, и если дистанционная система может получить доступ к паролю данного пользователя, то эта дистанционная система разрешит этому пользователю зарегистрироваться без использования пароля.
Когда в файле /etc/hosts.equiv организован элемент для некоторого хоста, подобно образцу элемента для systeml, то это означает, что хост является доверяемым и является таковым для любого пользователя на той машине. Если, кроме этого, указывается имя пользователя в виде второго элемента в том же самом файле, то данный хост является доверяемым только в том случае, если именно заданный пользователь пытается получить доступ. Единственная строка в файле /etc/hosts.equiv, содержащая знак плюс, обозначает, что каждый известный хост является доверяемым.
Файл /etc/hosts.equiv представляет собой некоторый риск для безопасности. Если вы эксплуатируете файл /etc/hosts.equiv на своей системе, то этот файл должен включать только доверяемые хосты в пределах вашей сети. Этот файл не должен включать любой хост, относящийся к другой сети, или любые машины из общедоступной области.
« ®№w,.i.
Измените регистрационное имя суперпользователя на что-нибудь, отличное от слова "root", и никогда не помещайте имя системы в файл /etc/hosts.equiv без имени пользователя или нескольких имен пользователей после него.
Файл .rhosts
Представляет собой пользовательский эквивалент файла /etc/hosts.equiv. Он содержит список хостов и пользователей. Если в данном файле упоминается какая-нибудь комбинация хост-пользователь, то заданному пользователю гарантируются полномочия на регистрацию в режиме дистанционного доступа от указанного хоста без необходимости предъявления пароля. Заметьте, что файл .rhosts должен находиться на верхнем уровне иерархии исходного каталога пользователя, поскольку обращений к файлам .rhosts, расположенным в подкаталогах, не происходит. Пользователи могут создавать файлы .rhosts в собственных исходных каталогах - это альтернативный способ разрешения доверяемого доступа между собственными учетными записями пользователей на различных системах без использования файла /etc/hosts.equiv.
Файл .rhosts представляет собой главную проблему в области защиты информации. Хотя файл /etc/hosts.equiv находится под контролем системного администратора и управление им может быть достаточно эффективным, однако любой пользователь может создать файл .rhosts, который предоставляет доступ кому угодно по выбору самого пользователя, причем системный администратор не знает об этом.
Когда исходные (домашние) каталоги всех пользователей находятся на одном сервере и только ограниченное число людей имеет доступ с привилегиями суперпользователя к данному серверу, тогда хорошим способом предотвратить использование файла .rhosts каким-нибудь пользователем является создание (с привилегиями суперпользователя) пустого файла .rhosts в домашнем каталоге данного пользователя. Затем измените полномочия в этом файле на ООО, чтобы его изменение могло бы стать сложной задачей даже для суперпользователя. Такой способ может эффективно воспрепятствовать созданию опасных для защиты системы ситуаций в результате безответственного использования файла .rhosts.
Единственно безопасный способ управления файлами .rhosts - полный запрет их использования. Единственно возможным исключением из этой политики является учетная запись суперпользователя, для которой может потребоваться файл .rhosts при выполнении сетевого резервного копирования и других служб в режиме дистанционного доступа.
FTP с ограничением доступа
В операционной системе Solaris 8 протокол FTP (File Transfer Protocol - протокол передачи файлов) представляет собой общепринятый инструмент для передачи файлов по сети. Хотя большинство сайтов оставляют протокол FTP задействованным, вам необходимо ограничить круг лиц, которые могут пользоваться им. Операционная система Solaris 8 содержит файл с именем /etc/ftpusers, который применяется для ограничения доступа через протокол FTP. Файл /etc/ftpusers содержит список регистрационных имен, владельцам которых запрещено регистрироваться в FTP на данной системе. Далее приведен принятый по умолчанию образец файла /etc/ftpusers:
more /etc/ftpusers root
daemon
bin sys adm
1P
uucp nuucp listen nobody noaccess nobody4
Имена в этом файле должны соответствовать регистрационным именам, перечисленным в вашем файле /etc/passwd.
По умолчанию суперпользователю запрещена регистрация FTP в операционной среде Solaris 8. Если вы желаете разрешить ему регистрацию FTP, удалите регистрационное имя "root” из файла /etc/ftpusers. Кроме того, убедитесь, что файл/etc/default/login предоставляет суперпользователю привилегии регистрации в режиме дистанционного доступа. Эта процедура описана далее в разделе "Ограничение доступа с привилегиями суперпользователя".
Сервер FTP, который называется демоном in.ftpd, считывает /etc/ftpusers каждый раз, когда вызывается сеанс FTP. Если регистрационное имя конкретного пользователя, который пытает получить доступ, совпадает с именем в файле /etc/ftpusers, то доступ запрещен.
Еще один файл по имени /etc/shells содержит список оболочек, или командных процессоров, для данной системы. Тогда как файл /etc/ftpusers содержит список пользователей, которым запрещено использовать протокол FTP, файл /etc/shells позволяет разрешать соединения FTP только тем пользователям, которые запускают определенные в нем командные процессоры. Если файл /etc/shells существует и в нем отсутствует элемент для некоторого командного процессора, то любому пользователю, запустившему отсутствующий командный процессор, будет запрещено FTP-соединение с данной системой.
По умолчанию файл /etc/shells не существует. Если данный файл не существует, то будут использоваться командные процессоры, принятые в системе по умолчанию. По умолчанию перечень командных процессоров системы выглядит следующим образом:
/bin/bash
/sbin/sh
/bin/csh
/usr/bin/bash
/bin/jsh
/usr/bin/csh
/bin/ksh
/usr/bin/jsh
/bin/pfcsh
/usr/bin/ksh
/bin/pfksh
/usr/bin/pfcsh
/bin/pfsh
/usr/bin/pfksh
/bin/sh
/usr/bin/pfsh
/bin/tcsh
/usr/bin/sh
/bin/zsh
/usr/bin/tcsh
/sbin/jsh
/usr/bin/zsh
Вы можете создать рассматриваемый файл, воспользовавшись текстовым редактором vi и перечислив каждый командный процессор, который должен распознаваться системой. Ниже приведен пример файла /etc/shells:
more /etc/shells
’/sbin/sh
/bin/sh
/bin/ksh
ПРИМЕЧАНИЕ • ‘-;- ’. ' ^.
Если вы не перечислите в файле /etc/ehells все принятые по умолчанию командные процессоры так, как это показано в последнем примере, то пользователям, использующим эти командные процессоры, будет запрещен доступ.
Безопасность доступа суперпользователя
В операционной системе UNIX сущность суперпользователя заключается в освобождении от ограничений, налагаемых на других пользователей системы. Любая учетная запись UNIX с UID, равным нулю, представляет суперпользователя. По умолчанию все операционные системы UNIX имеют регистрационное имя суперпользователя - root. Пользователь этой учетной записи может получить доступ к любому файлу и может выполнить любую команду. Это регистрационное имя является очень ценным, поскольку любой пользователь, который может создать себе проблемы, удалив полномочия доступа, забыв свой пароль, который просто нуждающийся в файле из такой области, к которой он не имеет доступа, может получить помощь от суперпользователя.
Однако доступ с привилегиями суперпользователя может таить в себе опасность. Суперпользователь может удалить все, что угодно, включая операционную систему (большинству системных администраторов случалось иногда целиком удалять корневую файловую систему). Регистрация с привилегиями суперпользователя является одновременно и опасной, и необходимой. Системные администраторы не должны никому сообщать пароль суперпользователя и должны сами использовать его только тогда, когда это необходимо.
Ограничение доступа с привилегиями суперпользователя
Доступ с привилегиями суперпользователя нуждается в защите от несанкционированного использования. Предположите, что любой злоумышленник будет искать возможность доступа в качестве суперпользователя. Вы можете защитить в системе учетную запись суперпользователя путем ограничения доступа к конкретному устройству через файл /etc/default/ login. Например, если доступ с привилегиями суперпользователя ограничен системной консолью, то суперпользователь сможет зарегистрироваться в системе только с этой консоли, которая должна находиться в закрытом помещении. Любой, кто регистрируется в системе в режиме дистанционного доступа для выполнения функций администрирования, должен сначала зарегистрироваться под собственным регистрационным именем и только потом воспользоваться командой su, чтобы зарегистрироваться в системе в качестве суперпользователя.
Шагза шагом>/.
Ограничение доступа с привилегиями суперпользователя
Выполните следующие операции для ограничения регистрации на системной консоли суперпользователя (root) с дистанционной системы:
Зарегистрируйтесь в системе с привилегиями суперпользователя.
Отредактируйте файл /etc/default/login.
Снимите комментарий со следующей строки:
CONSOLE=/dev/console
Приведенный пример демонстрирует, как установить для переменной CONSOLE значение /dev/console. Если переменная окружения CONSOLE установлена как
CONSOLE”
без определенного значения, то суперпользователь ниоткуда не сможет зарегистрироваться в системе и даже с консоли. Единственный способ зарегистрироваться в системе с привилегиями суперпользователя будет заключаться в том, чтобы сначала зарегистрироваться в качестве обычного пользователя, а затем получить привилегии суперпользователя, воспользовавшись командой su. Если системная консоль не находится в контролируемой среде, то такая возможность может оказаться весьма полезной.
Наблюдение за доступом с привилегиями суперпользователя
Операционная система Solaris предоставляет утилиту для мониторинга любых попыток зарегистрироваться в системе в качестве суперпользователя. Эти протоколирования являются полезными, когда вы пытаетесь провести ретроспективный анализ несанкционированной деятельности. Всякий раз, когда кто-нибудь выдает команду su для того, чтобы переключиться и зарегистрироваться в системе в качестве суперпользователя, эта деятельность протоколируется в файле, который называется /var/adm/sulog. Файл sulog содержит список всех случаев применения команды su, а не только для переключения из режима пользователя в режим суперпользователя. Элементы данного файла показывают дату и время, когда вводилась так команда, независимо от того, было ли ее применение успешным или нет, порт, с которого выдавалась данная команда, имя пользователя и имя, на которое он переключался.
Мониторинг доступа с привилегиями суперпользователя
Для контроля того, кто пользуется командой su, вы должны сначала включить данную утилиту протоколирования. Для включения протоколирования употребляемой команды su выполните следующие операции:
Зарегистрируйтесь в системе как суперпользователь.
Отредактируйте файл /etc/default/su.
Снимите комментарий со следующей строки:
SULOG»/var/adm/eulog
При посредстве файла /etc/default/su вы можете установить систему для отображения на консоли некоторого сообщения всякий раз, когда делается попытка использования команды su с какой-нибудь дистанционной системы для получения привилегий суперпользователя. Это хороший способ, чтобы немедленно обнаружить, если кто-нибудь пытается получить доступ в качестве суперпользователя к системе, на которой вы работаете.
Мониторинг попыток получения доступа с привилегиями суперпользователя (root)
Выполните следующие операции для отображения попыток получения доступа к системной консоли с привилегиями суперпользователя:
Зарегистрируйтесь в системе как суперпользователь.
Отредактируйте файл /etc/default/su.
Снимите комментарий со следующей строки:
CONSOLE»/dev/eonsole.
Воспользуйтесь командой su для получения привилегий суперпользователя и убедитесь, что на системной консоли выводится сообщение.
Программа SUDO
Программа SUDO (аббревиатура слов "SUperuser DO" - "суперпользователь делает") представляет собой свободно распространяемый пакет программного обеспечения, который позволяет системному администратору предоставлять конкретным пользователям (или группам пользователей) возможность запускать некоторые (или все) команды с привилегиями суперпользователя или от имени другого пользователя с протоколированием выдаваемых команд и их аргументов в журнале для целей аудита. Программа SUDO позволяет системному администратору разрешать доступ к определенным командам суперпользователя, а также отслеживать их без фактического предоставления кому-либо пароля суперпользователя. Для предоставления какому-нибудь пользователю доступа к некоторой команде, которая требует наличия привилегий суперпользователя, системный администратор конфигурирует список доступа, или файл sudoers. Образец файла sudoers приведен ниже:
sample sudders file.
This file MUST be edited with the 'visudo' command as root.
See the man page for the details on how to write a sudoers file.
Host alias specification
# User alias specification
User_AliasDBA»oracle
User_AliasAPPLMGR-applmgr
User_AliasSA=tej1,wbc4,wck2,wbp9
User_Alias \
OPER=tbwl,tdkl,ts s1,wcs6,wj sh,yhql,уj sd,ylb7
# Cmnd alias specification
Cmnd_Alias Cmnd_Alias Cmnd_Alias Cmnd_Alias Cmnd_Alias Cmnd Alias
MOUNT»/sbin/mount,/sbin/umount BACKUP=/usr/sbin/ufsdump■
RESTORE=/usr/sbin/ufsrestore SHUTDOWN»/sbin/shutdown KILL»/usr/bin/kill CRONTAB=/usr/bin/crontab
# User privilege specification
root
ALL» (ALL) ALL
DBA
ALL-MOUNT, KILL, BACKUP
APPLMGR
ALL-MOUNT, KILL
OPER
ALL-SHUTDOWN
Для запуска какой-нибудь команды просто добавьте перед ней слово sudo, как показано ниже:. ■
sudo shutdown ■
Вам будет предложено ввести ваш собственный пароль, а вовсе не пароль суперпользователя. Программа SUDO подтверждает, что вам разрешено исполнять данную команду, и зафиксирует то, что вы делали, в файле протоколирования (в журнале).
v^RMI^$ME:< <
Программа SUDO будет кэшировать ваш пароль таким образом, что вам не нужно будет повторно вводить его для успешного исполнения команд sudo. По умолчанию пароль кэшируется в течение пяти минут.
Ниже перечислены основные преимущества SUDO:
^ Вам не нужно передавать пароль суперпользователя кому бы то ни было. Это удобный способ предоставления пользователям контролируемого доступа к командам, которые требуются им для выполнения их работы.
^ Это хороший инструмент для начинающих системных администраторов, позволяющий приступить к работе, не получая при этом полного доступа к системе.
^ Протоколы аудита очень удобны для отслеживания деятельности суперпользователя. Если что-нибудь внезапно изменяется, вы сможете обратиться к этому журналу и посмотреть, что случилось и кто это сделал.
^ Эта программа хорошо работает, она представляет собой простое, однако эффективное точечное решение.
Программа SUDO не является составной частью операционной системы Solaris 8, однако она свободно распространяется через Internet. Обязательно посетите Web-сайт по адресу www.pdesig-ninc.com для получения ссылки на сайт, откуда можно загрузить программу SUDO.
Новым в операционной системе Solaris 8 и аналогичным программе SUDO с точки зрения предоставляемой функциональности является средство RBAC (Role-Based Access Control - ролевого управления доступом). Средство КВАС является темой, которая выносится на вторую часть экзамена, поэтому оно подробно описывается в главе 20 книги II.
ASET
Операционная система Solaris 8 включает в себя ASET (Automated Security Enhance-ment Tool - инструмент оптимизации автоматической защиты), который помогает вам контролировать и управлять защитой системы посредством автоматического выполнения задач, которые в противном случае пришлось бы выполнять вручную. Инструмент ASET выполняет семь задач, которые перечисляются ниже, и каждая из них реализует конкретную проверку и настройку системных файлов и полномочий для обеспечения защиты системы:
^ Проверяет соответствующие полномочия на системные файлы
^ Проверяет содержимое системных файлов
^ Проверяет непротиворечивость и целостность элементов в файлах /etc/passwd и /etc/group
^ Проверяет содержимое системных конфигурационных файлов
^ Проверяет файлы окружения (.profile, .login и .cshrc)
^ Проверяет соответствующие установки команды еергош
^ Создает брандмауэр на маршрутизаторе
Пакет защиты информации ASET представляет собой набор автоматических инструментов администрирования и позволяет вам контролировать и управлять защитой вашей системы. Вы задаете низкий, средний или высокий уровень защиты, при котором будет запускаться ASET. На каждом более высоком уровне защиты функции управления файлами ASET расширяются в направлении уменьшения доступа к файлам и повышения защиты вашей системы.
Задания ASET интенсивно используют диски и могут мешать выполнению обычных видов деятельности. Для минимизации влияния на производительность системы планируйте запуск ASET на то время, когда уровень активности системы минимальный - например, каждые 24 часа или каждые 48 часов в полночь.
Синтаксис команды aset выглядит следующим образом:
/usr/aset/aset -1 <level> ~d <pathname>
Опции команды aset описываются в таблице 8.15.
^^йца 8Л& Опций ком'анды aset* ‘:
ОпцияОписание
-I <level>Определяет уровень защиты. Допустимые значения этой опции - low,
medium и high.
Низкий (low) уровень
Этот уровень защиты обеспечивает атрибутов системных файлов установлены в стандартные значения поставки. Инструмент ASET выполняет несколько проверок и информирует о потенциальных слабостях в защите. На данном уровне ASET не выполняет никаких действий и не оказывает влияния на системные службы.
Средний (medium) уровень Этот уровень защиты обеспечивает управ-
ление защитой, приемлемое для большинства сред. Инструмент ASET модифицирует некоторые настройки системных файлов и параметров, ограничивая доступ к системе для снижения риска, обусловленного атаками на защиту системы. ASET информирует о слабостях в защите и о любых модификациях, выполненных им для ограничения доступа к системе. На данном уровне ASET также не оказывает влияния на системные службы.
Высокий (high) уровень
Данный уровень представляет собой хорошо защищенную систему. Инструмент ASET изменяет нвстройки множестве системных файлов и параметров для минимизации полномочий доступа. Большинство системных приложений и команд продолжает функционировать нормально, однако на данном уровне защиты соображения безопасности информации имеют приоритет над остальным поведением системы.
-d <pathname>Определяет рабочий каталог для ASET. По умолчанию - /usr/aset.
Следующий пример демонстрирует, как запустить ASET на низком уровне защиты, используя при этом рабочий каталог по умолчанию с именем /usr/aset:
# /usr/aset/aset -1 low
====== ASET Execution Log ======= ASET running at security level low Machine = holl300s; Current time = 0530_14:03 aset: Using /usr/aset as working directory
Executing task list . . . firewall env■'
sysconf'
usrgrp tune cklist eeprom All tasks executed. Some background tasks may still be running. Run /usr/aset/util/taskstat to check their status: /usr/aset/util/taskstat [aset_dir] where aset_dir is ASET's operating directory,currently=/usr/aset. When the tasks complete, the reports can be found in: /usr/aset/reports/lates t/*.rpt You can view them by: more /usr/aset/reports/latest/*.rpt #
Общепринятые технологии защиты
Системный администратор может реализовать наилучшие мероприятия по защите, однако без сотрудничества с пользователями защита системы будет скомпрометирована. Системный администратор должен изучить общепринятые правила, относящиеся к защите системы, такие как приведенные ниже:
^ Используйте правильные пароли. Многочисленные системы применяют для своих учетных записей суперпользователя такие пароли как "admin" или "supervisor". ^ Не предоставляйте никому свой пароль, кем бы этот человек ни представился. Один из лучших взломщиков систем нашего времени сказал, что он может просто притвориться сотрудником службы системной поддержки, узнать у какого- нибудь пользователя его пароль и получить возможность свободно распоряжаться данной системой.
^ Если вы отходите от своей системы, предварительно выйдите из нее или заблокируйте экран. Подумайте об ущербе, который вы можете понести, если кто- нибудь подойдет к вашей рабочей станции и отправит грубое сообщение электронной почты начальству с приложением к нему вашего имени!
^ Не подключайте модемы к вашей системе без разрешения системного администратора.
Резюме
В настоящей главе обсуждаются фундаментальные концепции в области защиты системы. Рассматривая вопросы защиты, начните с аппаратных средств путем размещения их в защищенном помещении. Помните: любой человек, который имеет возможность физического доступа к компьютеру, может также получить доступ к операционной системе и данным, вне зависимости от того, насколько хорошо вы защищаете все остальное.
Примените ваши знания
Поддерживайте защиту ваших данных посредством управления регистрацией пользователей на вашей системе. Убедитесь, что пользователи имеют секретные пароли, и не делайте их регистрационные имена и пароли общедоступными. Внедрите использование устаревания пароля и версии командных процессоров ограниченного доступа там, где это целесообразно.
Установите полномочия доступа к файлам и каталогам таким образом, чтобы пользователи имели доступ только к тем данным, которые они имеют право видеть. Используйте защищенные значения маски umask и, в случае необходимости, ACL. Контролируйте все действия пользователей, используя утилиты операционной системы Solaris, описанные в настоящей главе. Наконец, не устанавливайте полномочий setuid и setgid за исключением тех случаев, когда это абсолютно необходимо. ■
Если ваша система находится в сети, реализуйте мероприятия по обеспечению сетевой безопасности, которые были описаны в настоящей главе. Отключите службы, которые не являются необходимыми. Используйте правило: "сначала запретить, а потом разрешить" ("запрещено все, что не разрешено"). Другими словами, отключите максимально возможное количество служб и приложений, а затем избирательно включайте те из них, которые являются существенными. Осторожно используйте доверяемые системы. Кроме этого, поддерживайте актуальность заплат вашей операционной системы, которые обеспечивают защиту. Как только обнаруживаются новые угрозы безопасности, они быстро ликвидируются с помощью заплат, обеспечивающих защиту. Процесс получения и загрузки системных заплат описывается в главе 4.
Наконец, защищайте пароль суперпользователя. Держите его под жестким контролем и убедитесь, что этим паролем никогда никто не сможет воспользоваться кроме тех, кому даны на это соответствующие полномочия. Ограничьте использование регистрационного имени суперпользователя до таких задач, выполнение которых требует наличия регистрации в системе именно с привилегиями суперпользователя.
Хотя взломщики всегда пытаются найти новые способы для проникновения в системы, однако концепции, описанные в настоящей главе, предоставляют надежную оборону против любой атаки. Кроме того, обратитесь к главе 5 на предмет внедрения этих концепций при установке и управлении учетными записями пользователей.
В следующей главе мы немного переключимся и рассмотрим все детали, которые лежат в основе системного процесса. В качестве системного администратора вашей основной областью ответственности будет управление всеми процессами, запущенными в системе.
Ключевые термины
Устаревание пароля
Шифрование пароля
Принятые по умолчанию командные процессоры
Командный процессор ограниченного доступа
Полномочия доступа к файлу
Маска пользователя
Sticky-бит
Список управления доступом
Троянский конь
Полномочия идентификации пользователя-установщика
Полномочия идентификации группы-установщика
Брандмауэр
Сетевая служба
Доверяемый хост
Инструмент оптимизации автоматической защиты
Низкий уровень защиты (относится к ASET)
Средний уровень защиты (относится к ASET)
Высокий уровень защиты (относится к ASET)
Примените ваши знания
Мониторинг пользователей
В настоящем упражнении вам предстоит воспользоваться различными утилитами для контроля того, кто из пользователей имеет доступ к вашей системе.
Оцениваемое время: 5 минут
Зарегистрируйтесь в системе как суперпользователь.
Создайте файл с именем loginlog в каталоге /var/adm:
cd /var/adm
touch loginlog
Выйдите и снова зарегистрируйтесь. Не регистрируйтесь с использованием CDE; зарегистрируйтесь с помощью командной строки.
На приглашение ввести регистрационное имя введите "root", а затем введите неправильный пароль суперпользователя. Повторите эту операцию пять раз. После пятой попытки зарегистрируйтесь в качестве суперпользователя, используя правильный пароль, и проанализируйте файл /var/adm/loginlog, для чего введите следующую команду:
more /var/adm/loginlog
Воспользуйтесь командой finger для отображения информации о пользователе, который имеет имя user9, как показано ниже:
finger user9
finger -m user9
Воспользуйтесь командой finger для отображения информации о пользователе другой системы:
finger user9e<hostname>
finger -m user9e<hostname>
Воспользуйтесь командой last для отображения информации о деятельности пользователя и перезагрузках.
Воспользуйтесь командой logins для отображения информации об учетной записи пользователя user9:
logins -х -1 user9
Примените ваши знания
Досту пк файлам
В настоящем упражнении вам предстоит использовать полномочия операционной системы UNIX для управления доступом к файлам посредством разрешения/запрещения доступа к файлам и каталогам.
Оцениваемое время: 20 минут
Зарегистрируйтесь в системе под именем user9.
Введите команду umask для определения текущего значения вашей маски:
umask
Если значение маски пользователя не равно 002, измените его, для чего введите следующую командную строку:
umask 002
Создайте файл в вашем исходном каталоге:
Cd $НОМЕ touch filel
Наберите команду Is -1 для просмотра полномочий доступа, которые были по умолчанию назначены этому файлу.
Установите значение umask равным 022:
umask 022
Создайте файл с именем file! и определите значения его полномочий доступа по умолчанию.
touch file2
Is -1.
Создайте новую учетную запись пользователя с именем newuser:
useradd -u 3001 -g 10 -d /export/home/ \
user20 -m -s /Ып/ksh -c "Temporary User" user20
Установите пароль для пользователя userZO, как показано ниже:
passwd user20
Выйдите и снова зарегистрируйтесь в системе под именем user9. Вы будете помещены в ваш исходный каталог /export/home/user9.
Создайте новый файл с именем filelO и просмотрите его полномочия доступа: touch filelO
Is -1
Воспользуйтесь командой chmod, чтобы установить полномочия setuid для файла filelO, и просмотрите его полномочия доступа: .
chmod 4555 filelO
Is -1
Воспользуйтесь командой chmod, чтобы установить setuid и setgid для файла filelO, просмотрите его полномочия доступа:
chmod 6555 filelO
Is -1
Что при этом изменилось?
Воспользуйтесь командой chmod для удаления всех полномочий на исполнение файла filelO и просмотрите новые полномочия доступа:
chmod 6444 filelO
Is -1
Просмотрите полномочия доступа на каталог /tmp, как показано ниже:
Is -Id /tup
Обратите внимание, что для каталога /tmp установлен sticky-бит.
В качестве пользователя с именем user9 перейдите в каталог /tmp и создайте файл с именем filel.
cd /tup
touch filel
is -1
Обратите внимание на полномочия доступа к этому файлу. Они должны быть равными 644 (rw-r—г-).
Переключитесь на пользователя user20. В каталоге /tmp удалите файл filel:
su user20'
cd /tsp.
rm filel
Какое сообщение вы получили?
Выйдите из текущего командного процессора для возврата обратно к идентификатору пользователя user9. Перейдите в исходный каталог пользователя user9 и установите ACL на filelO таким образом, чтобы пользователь userZO имел полномочия чтения и записи данного файла:
exit
cd $НОМЕ
setfacl -m user:user20:6 filelO
А теперь введите команду Is -1 для просмотра полномочий доступа к файлу filelO. Обратите внимание на знак плюс, обозначающий, что для данного файла устанавливается ACL.
Просмотрите элемент списка ACL для файла filelO, как показано ниже:
getfacl filelO
Удалите ACL для файла filelO, как показано ниже:
setfacl -d u:user20 filelO
Ограничение доступа с привилегиями суперпользователя
В настоящем упражнении вам предстоит внести изменения в систему для ограничения возможностей регистрации с привилегиями суперпользователя.
Оцениваемое время: 10 минут
Попытайтесь с дистанционной системы зарегистрироваться в вашей системе как суперпользователь. Если в файл /etc/default/login не были внесены изменения по сравнению с его состоянием по умолчанию, ваша попытка регистрации должна завершиться неудачей.
Примените ваши знания
Зарегистрируйтесь с консоли вашей системы в качестве суперпользователя.
Воспользуйтесь текстовым редактором vi для редактирования файла /etc/default/ login и добавьте символ фунта (#) в начале следующей строки:
#CONSOLE=/dev/console
Попытайтесь с дистанционной системы зарегистрироваться в вашей системе в качестве суперпользователя. Удалось ли вам сделать это?
А теперь попытайтесь открыть соединение по протоколу FTP с какой-нибудь дистанционной системы:
ftp <hostname>
Получив приглашение зарегистрироваться, попытайтесь сделать это в качестве суперпользователя. Если в файл /etc/ftpusers не были внесены изменения по сравнению с его состоянием по умолчанию, вы получите сообщение Login Incorrect (Регистрация Некорректна) и не сможете зарегистрироваться.
Удалите регистрационное имя root из файла /etc/ftpusers. Работает ли теперь сеанс FTP?
Запретите все соединения по протоколу FTP, для чего в файле /etc/inetd.conf закомментируйте следующую строку:
#ftp stream tcp6 nowait root /usr/sbin/in.ftpd in.ftpd
После этого вы должны перезапустить демон inetd. Получите для inetd идентификатор процесса, для чего введите следующую командную строку:
pgrep inetd
Перезапустите данный процесс следующим образом:
kill -HUP <inetd pid>
Попытайтесь подключиться с дистанционной системы, используя FTP.
Обзорные вопросы
Чему равен максимальный номер UID в операционной системе Solaris 8?
А. 2147483647
В. 60000
С. 120000
D. Без ограничений
Что можно сделать, если строка CONSOLE= включается в файл /etc/default/login?
Зарегистрироваться с привилегиями суперпользователя из сети и с консоли.
Зарегистрироваться в качестве обычного пользователя, а затем с помощью su стать суперпользователем.
. С. Зарегистрироваться в качестве суперпользователя с консоли, но не из сети.
Зарегистрироваться в качестве суперпользователя из сети, но не с консолн.
Каковы функции файла /etc/group?
Назначает пользователей для вторичных групп.
| | 2-300
Назначает имя для численного идентификатора группы.
Предоставляет специальную группу для привилегий su.
Определяет, какие пользователи могут получить доступ к сетевым ресурсам, таким как принтеры.
Вы системный администратор и подозреваете, что один из ваших пользователей неоднократно пытается воспользоваться su для получения привилегий суперпользователя. Какие из перечисленных ниже файлов помогут вам увидеть, является ли справедливым ваше подозрение?
/usr/adm/syslog
/usr/adm/lastlog
/usr/adm/utmpx
/usr/adm/sulog
Какое действие производит sticky-бит, установленузц на каталог /tmp следующим образом: drwxrwxrwt 2 sys sys 512 May 26 11:02 /tmp?
Разрешает доступ только для суперпользователя.
Запрещает все полномочия чтения/записи.
Ограничивает удаление и переименование файлов только владельцем.
Это риск для безопасности, поскольку любой пользователь может удалить файлы другого пользователя.
Какой из перечисленных ниже файлов управляет принятой по умолчанию политикой в отношении устаревания паролей?
/etc/default/login
/etc/default/passwd
/etc/shadow
/etc/passwd
Что из перечисленного ниже не позволяет создать безопасные пароли?
Фразы
Слова, которые не имеют смысла
Слова с числами или символами
Табельные номера
Что из перечисленного ниже позволяет создать безопасный пароль?
Комбинация из шести или более букв
Ваше имя, записанное обычным образом, записанное задом наперед, или записанное с применением перестановки букв
Последовательности нажатия клавиш на клавиатуре (например, asdfgh)
Любое слово из словаря
В каком из перечисленных ниже файлов сохраняется информация по устареванию и шифрованию паролей?
/etc/passwd
Примените ваши знания
/etc/shadow
/etc/default/passwd
/etc/default/login
Какая группа имеет (какие группы имеют) привилегии на запуск Solstice AdminSuite?
A. root
В. sysadmin
. С. staff
D. sys
Что означает буква w в образце -rwxr-xr-x полномочий доступа к файлу?
Привилегии записи для владельца
Привилегии записи для владельца и группы
Привилегии записи для любого
Привилегии записи только для суперпользователя
Какая команда используется для изменения полномочий чтения, записи и исполнения на некотором файле?
chgrp
chown
chmod
passwd
Когда пользователь создает файл или каталог, что из перечисленного ниже управляет принятыми по умолчанию полномочиями, назначенными этому файлу или каталогу?
chmod
назначенные полномочия
umask
chown
Какое полномочие по умолчанию для каталога устанавливает значение umask, равное 022?
644
755
022
533
Какие полномочия по умолчанию для файла устанавливает значение umask, равное 022?
644
755
022
533
Что означают полномочия для каталога dr-xr—г—?
Только владелец и члены группы могут формировать список файлов в данном каталоге.
Только владелец может открывать файлы в данном каталоге.
Не были назначены никакие привилегии - ни на чтение, ни на запись, ни на исполнение.
Только владелец может удалять файлы в данном каталоге.
Что означает "s" в поле полномочий?
-r-sr—г-- 2 bcalkins staff 512 May 26 11:57 script.1
Когда пользователь исполняет этот сценарий, он получает полномочия идентификатора суперпользователя.
Столбец полномочий доступа в данном файле показывает, что установлен sticky- бит.
Только bcalkins имеет полномочия для исполнения этой команды.
Когда какой-нибудь пользователь исполняет этот сценарий, он получает полномочия пользователя bcalkins.
Какая разница существует между командами chmod и umask?
Значение chmod может быть установлено отдельными пользователями, тогда как umask функционирует на системном уровне.
chmod использует sticky-бит, a umask - нет.
Полномочия umask сохраняются в каталоге, а не в файлах.
umask изменяет принятые по умолчанию полномочия для каждого файла и каталога, созданного в будущем, в то время как chmod работает с конкретным каталогом или файлом, который уже существует.
Чего не позволяет делать пользователю оболочка, или командный процессор, ограниченного доступа?
Переходить в другие каталоги
Переназначать вывод информации
Удалять файлы
Исполнять сценарии
К чему может относиться rsh?
Принятый по умолчанию командный процессор системы или команда дистанционной оболочки
Комбинация командных процессоров Bourne и С или командный процессор ограниченного доступа
Переменная, применяемая для ограничения количества попыток регистраций, или командный процессор ограниченного доступа
Командный процессор ограниченного доступа или команда дистанционной оболочки
Примените ваши знания
Какая из перечисленных команд отображает пользователей, не имеющих паролей?
Выполните more с файлом /etc/passwd
logins -р
passwd
D. attributes
Какой из следующих файлов содержит список доверяемых хостов некоторой дистанционной системы?
/.rhosts
/etc/hosts.equiv
/etc/default/login
D. /etc/hosts
Какой из перечисленных ниже файлов предоставляет конкретному пользователю возможность зарегистрироваться в режиме дистанционного доступа с конкретного хоста без предоставления пароля?
.rhosts
/etc/hosts.equiv
/etc/default/login
D. /etc/hosts
Через какой из файлов вы можете защитить учетную запись суперпользователя на некоторой системе путем ограничения доступа к конкретному устройству?
/etc/hosts.equiv
/etc/default/login
/etc/default/passwd
/etc/default/su
В каком из файлов перечислены все, кто использует команду su? '
/var/adm/wtmpx
/var/adm/messages
/var/adm/lastlog
/var/adm/sulog
Что из перечисленного выполняет специфические проверки и настройки системных файлов и полномочий для обеспечения защиты системы?
chmod
ASET
ACL
Создание правильного элемента в файле /etc/default/login
Сценарии командного процессора, запускающие SUID и SGID, могут быть в достаточной мере защищенными.
Утверждение истинно
Утверждение ложно
Какая из перечисленных ниже команд используется для установки элементов ACL на некоторый файл?
А.В.С.А.В.С.setfacl chmod chown
А.
В.
С.
А.
В.
С.
D. getfacl
Что обозначает знак плюс (+) справа от поля режима полномочий (-rw-r+)? А. Данный файл имеет ACL.
Установлен sticky-бит.
Когда какой-нибудь пользователь исполняет данный сценарий, то этот пользователь получает полномочия владельца (setuid).
Устанавливает идентификатор группы на исполнение.
Какая из перечисленных ниже команд применяется для удаления ACL?
A. setfacl -d <acl_entry_list> В. delfacl С. chown -ас!
D. setfacl -m
Какая из перечисленных ниже команд отображает каждого пользователя, зарегистрированного в системе, и активные процессы, владельцем которых он является?
whodo
who
w
D. who -а
Какая из команд отображает время и дату последней перезагрузки? A. who -b В. who -i С. uptime D. uname
Ответы на обзорные вопросы
А. Номера UID обычных пользователей должны находиться в диапазоне от 100 до 60000, однако их максимальное значение может достигать 2147483647.
В. Без переменной окружения CONSOLE, определенной в файле /etc/default/login, суперпользователь не сможет ниоткуда зарегистрироваться в системе, и даже с консоли. Единственный способ зарегистрироваться в системе с привилегиями суперпользователя заключается в том, чтобы сначала зарегистрироваться в качестве обычного пользователя, а затем получить привилегии суперпользователя, применяя команду su.
А, В. Файл /etc/group назначает пользователей для вторичных групп и назначает имя для численного идентификатора группы.
Глава 8. Обеспечение безопасности системы 34/ Примените ваши знания
D. Всякий раз, когда кто-нибудь выдает команду su, чтобы переключиться и зарегистрироваться в системе в качестве суперпользователя, эта деятельность протоколируется в файле, который называется /var/adm/sulog. Файл sulog содержит список всех фактов использования команды su, а не только ее применения для переключения из режима пользователя в режим суперпользователя. Элементы данного файла показывают дату и время, когда вводилась эта команда, независимо от того, было ли ее применение успешным или нет, порт, с которого выдавалась команда, имя пользователя и имя, на которое он переключался.
С. Если sticky-бит установлен на каталог /trap как drwxrwxrwt, то он ограничивает только владельца в удалении и переименовании его файлов.
В. Файл /etc/default/passwd управляет принятой по умолчанию политикой в отношении устаревания паролей.
D. Табельные номера не являются безопасными паролями.
А. Обеспечьте, чтобы пароли включали некоторую комбинацию из 6-8 букв, цифр или специальных символов.
В. Подробная информация по устареванию и шифрованию паролей сохраняется в файле /etc/shadow.
А, В. Суперпользователь имеет полные привилегии под AdminSuite. Члены группы sysadmin (группа 14) имеют право использовать утилиту Admintool или программное обеспечение Solstice AdminSuite для добавления или удаления учетных записей пользователей, групп, программного обеспечения, принтеров и последовательных устройств.
А. Буква "w" в первом поле списка полномочий файла обозначает привилегии записи для владельца данного файла.■
С. Команда chmod изменяет полномочия доступа к файлу. Для изменения полномочий на некоторый файл вы можете воспользоваться либо символическим режимом (буквы и символы), либо абсолютным режимом (восьмеричные числа).
С. Когда пользователь создает файл или каталог, значение umask управляет полномочиями, назначенными на этот файл или каталог по умолчанию.
В. Значение umask, равное 022, устанавливает полномочия по умолчанию для каталога, равные 755 (rwxr-xr-x).
А. Значение umask, равное 022, устанавливает полномочия по умолчанию для файла, равные 644 (rwxr-xr-x).
В. Полномочия на каталог dr-xr--r--означают, что только владельцу разрешается открывать файлы в этом каталоге.
D. Полномочия на файл -r-sr— г— означают, что когда некий пользователь исполняет этот сценарий, он получает полномочия пользователя bcalkins.
D. umask изменяет принятые по умолчанию полномочия для каждого файла и каталога, созданного в будущем, в то время как chmod работает на конкретном каталоге или файле, который уже существует.
А, В. Командный процессор ограниченного доступа не позволяет пользователю переходить в другие каталоги или переназначать вывод информации.
D. rsh представляет собой аббревиатуру, которая относится либо к командному процессору ограниченного доступа, либо к команде дистанционной оболочки. Не следует путать командный процессор ограниченного доступа по имени /usr/lib/rsh с дистанционной оболочкой /usr/bin/rsh. При задании командного процессора ограниченного доступа вы не должны включать маршрут пользователя - /bin, /sbin или /usr/bin. Если сделать это, то у пользователя появляется возможность запустить другой командный процессор (неограниченного доступа).
В. Воспользуйтесь командой logins -р для отображения имен пользователей, которые не имеют связанного с ними пароля.
В. Файл /etc/hosts.equiv содержит список доверяемых хостов некоторой дистанционной системы, по одному имени в строке.
А. Файл .rhosts - это пользовательский эквивалент файла /etc/hosts.equiv. Он содержит список доверяемых хостов дистанционной системы так же, как и пользователей. Если в. данном файле упоминается какая-нибудь комбинация вида хост-пользователь, то заданному пользователю предоставляются полномочия на регистрацию в режиме дистанционного доступа с указанного хоста без необходимости предъявления пароля.
В. Вы можете защитить системе учетную запись суперпользователя путем ограничения доступа к конкретному устройству с помощью переменой окружения CONSOLE из файла /etc/default/login.
D. Файл sulog содержит список всех фактов использования команды su, а не только ее применения для переключения из режима пользователя в режим суперпользователя. Элементы данного файла показывают дату и время, когда вводилась данная команда, независимо от того, было ли ее применение успешным или нет, порт, с которого выдавалась данная команда, имя пользователя и имя, на которое он переключался.
В. Операционная система Solaris 8 включает в себя ASET (Automated Security Enhancement Tool - инструмент оптимизации автоматической защиты), который помогает контролировать и управлять защитой системы посредством автоматического выполнения задач, которые в противном случае вам пришлось бы выполнять вручную. ASET выполняет семь задач, каждая из них реализует конкретную проверку и настройку системных файлов и полномочий для обеспечения защиты системы.
А. Сценарии командного процессора, которые запускают SU1D и SG1D, могут быть в достаточной мере защищенными. Однако здесь необходимо быть исключительно внимательным и осторожным, потому что, если какой-нибудь пользователь сможет взломать программу, которая имеет указанные уровни полномочий, он сможет еще и получить привилегии суперпользователя.
А. Воспользуйтесь командой setfacl для установки элемента ACL на некоторый файл или каталог.
А. Знак плюс (+) справа от поля режима полномочий (-rw-r+) обозначает, что данный файл имеет ACL.
А. Воспользуйтесь командой setfacl -d для удаления ACL на некотором файле или каталоге.
A, D. Воспользуйтесь командами whodo и who -а для отображения каждого пользователя, зарегистрированного в системе, и активных процессов, владельцем которых он является.
А. Команда who -b отображает время и дату последней перезагрузки.
Глава 9Глава 9УправлениепроцессамиУправлениепроцессами
Глава 9
Глава 9
Управлениепроцессами
Управлениепроцессами
Темы
Настоящая глава охватывает следующие экзаменационные темы:
Управление процессами в Solaris
Управление системными процессами - общая задача для любого системного администратора. Вы должны знать, как отобразить информацию о всех активных процессах на данной системе и как завершить какой-нибудь активный процесс. Вы также должны уметь установить эффект передачи конкретного сигнала некоторому процессу.
Просмотр процесса в Solaris
Операционная система Solaris запускает сотни процессов в течение часа. Системный администратор должен понимать, как просмотреть информацию о всех активных процессах системы.
Понимание того, как процессы реагируют на сигналы
Процессы взаимодействую друг с другом посредством сигналов. Системному администратору необходимо понимать различные сигналы, порядок передачи их некоторому процессу, а также то, как процесс будет реагировать на каждый из этих сигналов.
Понимание того, как Solaris планирует процессы
Сотни процессов будут завершаться после выполнения на данной системе. Планирование представляет собой один из ключевых элементов для эффективного управления операционной системой Solaris.
Использование средств пакетной обработки в Solaris
Выполнение ряда пакетов назначается на определенное время, поэтому, планируя их запуск на "непиковые" часы, может существенно улучшить производительность системы. Системному администратору необходимо понимать, как использовать пакетный
процессор операционной системы Solaris для планирования процессов.
Содержание
(Введение311
Просмотр процессов311
Команда pgrep315
Команда prstat317
Менедя^р процессов среды СИЖ.320
Использование сигналов323
Планирование процессов■327
Планирование приоритетов328
Изменение приоритета процесса, выполняемого в режиме разделения времени, при помощи команды nice329
Изменение планируемого приоритета процессов при помощи команды priocntC 330
Использование средств пакетной обработки в Solaris331
Конфигурирование crontab331
Планирование одиночного системного события (команда at)334
Системный акурнал336
Фругие вазкрыефайлы, в крторых~протоколсируется информация339
(Резюме■340
Примените ваши знания341
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
Добросовестно разберитесь с каждой командой, вводимой в настоящей главе, чтобы вы могли соотнести конкретную команду и опцию с описанием. Рекомендуется поработать с командами в Solaris, чтобы вы освоились с выходной информацией, формируемой ими.
Изучите все команды, применяемые для отображения информации о некотором процессе. При просмотре процессов разберитесь с каждым полем, которое отображается в составе выходной информации процесса.
Наконец, разберитесь, что такое сигнал, как передавать сигнал процессу, какое влияние сигнал оказывает на процесс. Уделите особое внимание командам и сигналам, используемым для завершения или перезапуска процессов.
Введение
Настоящая глава посвящена процессам операционной системы Solaris: как просматривать процессы, какое воздействие оказывают на процессы сигналы и как управлять процессами.
Помимо экзаменационных тем, перечисленных в начале настоящей главы, в нее также включен раздел, посвященный системному журналу. Хотя системный журнал представляет собой тему, которая выносится на вторую часть экзамена, она включена в настоящую главу, поскольку этот материал хорошо стыкуется с обсуждаемыми в ней темами и при этом не требует вынесения в самостоятельную главу.
Просмотр процессов
Операционная система представляет собой многозадачную среду, в которой в одно и то же время выполняется несколько программ. Каждая программа Solaris может стартовать и завершать множество процессов в течение времени своего выполнения. Родительский процесс разветвляется на дочерние процессы, которые, в свою очередь, также могут разветвляться.
ПРИМЕЧАНИЕ
Термин "разветвиться" ("fork") применяется для описания процесса, который начинается из другого процесса. Как и в случае развилки на дороге, один процесс превращается в два процесса. Вы также столкнетесь с использованием термина "порождать" ("spawn") - эти два слова являются взаимозаменяемыми.
Процесс представляет собой одиночную программу, которая запускается в своем собственном адресном пространстве. Процесс в Solaris состоит из некоторого адресного пространства и набора структур данных в ядре операционной системы для отслеживания этого процесса. Адресное пространство - это раздел памяти, содержащий программный код для выполнения некоторой задачи. Для каждого процесса системы ядро должно отслеживать следующие данные:
Ф Адресное пространство
ф Текущее состояние процесса
Ф Приоритет выполнения процесса
Ф Потребление ресурсов процессом
ф Маска текущего сигнала
Ф Принадлежность процесса
Процесс отличается от задания, команды или программы, которые могут быть образованы совокупностью множества процессов, работающих совместно для выполнения конкретной задачи. Например, некоторое приложение автоматизированного проектирования представляет собой одиночную программу. Когда запускается указанная программа, она порождает другие процессы, а также запускает их. Когда пользователь входит в эту программу, он порождает еще несколько других процессов. Каждый процесс имеет идентификатор, связанный с ним, который обозначается аббревиатурой pid (process identifier - идентификатор процесса). Вы можете контролировать процессы, которые выполняются в данный момент времени, используя одну из команд, перечисленных в таблице 9.1.
Табг$ц|:9Д.^ман^1 да. ^yttMK^'
КомандаОписание
ps
Выполняется из командной строки для отображения информации об активных процессах.
pgrep
Выполняется из командной строки для поиска процессов по заданному имени или атрибуту.
prstat
Выполняется из командной строки для отображения информации об активных процессах системы.
Менеджер процессов среды СОЕ
GUI (Graphic User Interface - графический интерфейс пользователя), используемый для отображения и управления процессами на некоторой системе. Эта утилита требует наличия терминала, способного отображать графическую информацию.
Перед рассмотрением команд, используемых для мониторинга процессов, необходимо ознакомиться с атрибутами процесса. Любой процесс имеет определенные атрибуты, непосредственно влияющие на его выполнение. Эти атрибуты перечисляются в таблице 9.2.
■’Табли^9.Ж|Йт^^
АтрибутОписание
РЮ
Идентификация процесса (уникальный номер, определяющий процесс внутри ядра операционной системы).
PPID
Идентификатор (parent PID) родительского процесса (создателя данного процесса).
UID
Численный идентификатор пользователя, который является владельцем процесса.
EUID
Действующий идентификатор пользователя данного процесса.
GID
Идентификатор группы, к которой принадлежит пользователь, являющийся владельцем данного процесса.
EGIDДействующий идентификатор группы, которая является владельцем
данного процесса.
PriorityPriorityПриоритет, с которым запускается данный процесс.
Priority
Priority
Для просмотра процессов, которые выполняются на данной системе в текущий момент времени, следует воспользоваться командой ps. Используйте команду ps, если работаете за алфавитно-цифровым терминалом и не имеете доступа к графическому дисплею. Добавление опции -I к команде ps отображает различную дополнительную информацию о процессах, выполняющихся в настоящее время, включая состояние каждого процесса (перечисляется в столбце с заголовком S). Коды, применяемые для отображения различных состояний процесса, перечисляются в таблице 9.3.
^бдица 9,3 (Состояния процессов л
КодСостояние процесса
ОРаботающий
S"Спящий"
Описание
Данный процесс выполняется на процессоре.
Данный процесс для своего выполнения ожидает некоторого события.
RРаботоспособный
Данный процесс находится в очереди запуска.
Продолжение таб. 9.3
КодСостояние процессаОписание
ZСостояние "зомби"Процесс был завершен, и его родительский процесс не
находится в состоянии ожидания.
ТОтслеженныйПроцесс был остановлен некоторым сигналом, посколь
ку его родительский процесс отслеживает (трассирует) данный процесс.
Чтобы увидеть все процессы, выполняющиеся в системе, введите следующую команду:
ps -el
Система отвечает следующей выходной информацией:
F
S
UID
PID
PPID
С
PRI
NI
ADDR
SZ
WCHAN
TTY
TIME
CMD
19
т
0
0
0
0
0
SY
f0274e38
0
?
0:01
ached
8
S
0
1
0
0
41
20
f5af4888
162
f5af4a80
?
0:01
init
19
S
0
2
0
0
0
SY
f5af41c8
0
f02886a4
?
0:00
pageout
19
S
0
3
0
1
0
SY
f5af3b08
0
f028aeb4
?
9:57
fsflush
8
S
0
299
1
0
65
20
f5af26c8
368
f597e0ce
consoleO:00
ttymon
8
S
0
101
1
0
41
20
f5af3448
340
f5d5bfae
?
0:00
in.route
8
S
0
298
1
0
41
20
f5af2d88
350
f5982c78
?
0:00
sac
8
S
0
111
1
0
41
20
f5af2008
455
f5d5bf5e
?
0:01
rpcbind
8
S
0
164
1
0
41
20
f5d5e890
691
f5d5ef38
?
0:01
syslogd
8
S
0
138
1
0
41
20
f5d5eld0
450
f5d5be96
?
0:00
inetd
8
S
0
113
1
0
79
20
f5d5dbl0
462
f5d5bee6
?
0:00
keyserv
8
S
0
160
1
0
41
20
f5d5d450
650
f5d5bcb6
7
0:00
automoun
8
S
0
143
1
0
74
20
f5d5cd9
502
f5d5bebe
7
0:00
statd
8
S
0
145
1
0
77
20
f5d5c6d0
409
f5d5bele
7
0:00
lockd
8
S
0
242
1
0
41
20
f5d5c010
514
f5d5b8a6
7
0:01
void
8
S
0
184
1
0
46
20
f5e4a898
480
f5e4aa90
7
0:01
nscd
8
S
0
178
1
0
51
20
f5e4ald8
360
f5982eb8
7
0:01
cron
На страницах руководства по команде ps описываются все поля, которые отображаются с помощью этой команды, а также все ее опции. Некоторые важные поля перечисляются в таблице 9.4.
Таблица 9.4 Поля процесса
ПолеОписание
FФлаги, ассоциированные с данным процессом.
SСостояние процесса. Два наиболее распространенных значенияэтого
поля: S для "спящего" состояния и R для работающего состояния. Важным для анализа является значение X, которое означает, что данный процесс, чтобы стать работоспособным, ожидает выделения памяти. ' Если вы часто наблюдаете такое значение на вашей системе, это свидетельствует о переполнении памяти. Полный список состояний процесса представлен в таблице 9.3.
РЮИдентификатор для каждого из процессов. Это значение должно быть
уникальным. Обычно номера РЮ выделяются от наименьшего значения к наибольшему, но в некоторой точке эта последовательность разворачивается. Это значение является необходимым, если вы посылаете какой-нибудь сигнал, такой как kill, некоторому процессу.
Продолжение таблицы 9.4
Поле
Описание
UID
Идентификатор пользователя владельца данного процесса. Для многих процессов это поле имеет значение 0, поскольку они запускают setuid.
PPID
Идентификатор родительского процесса. Он указывает на родительский процесс, который запустил данный процесс. Применение иденти- ■фикатора PPID позволяет вам отслеживать последовательность
создания процессов.
PRI
Приоритет процесса. При отсутствии опции -с большее число обозначает меньший уровень приоритетности. В сочетании с опцией -с большее число обозначает больший уровень приоритетности.
NI
Значение для nice, используемое при вычислении приоритета и учитывающее планируемый приоритет. Если используется опция -с, это значение не выводится на печать. Сделать какой-нибудь процесс преобладающим - значит понизить его приоритет.
ADDR
Адрес в памяти данного процесса.
SZ
Поле SIZE. Общее количество страниц памяти в данном процессе. Каждая страница имеет размер 4096 байт.
WCHAN
Адрес некоторого события, для которого процесс является "спящим": (если в данном поле стоит тире, то процесс является работающим).
STIME
Время старта данного процесса (в часах, минутах и секундах).
TTY
Терминал, назначенный вашему процессу.
TIME
Общее время центрального процессора, использованное процессом, в минутах и секундах.
CMD
Команда, которая создала данный процесс.
Иногда вы захотите увидеть все процессы. Вы сможете это сделать с помощью команды ps -el. Несколько опций, применяемых с командой ps, управляют выводимой на печать информацией. Некоторые из этих опций перечисляются в таблице 9.5.
Ja6hMl4a1?.&d^^^^■ ЧЧ ''Ч.44'.' ' . :
ОпцияОписание
-А
Выводит информацию для всех процессов. Аналогична опции -е.
-а
Выводит информацию о тех процессах, которые запрашивались чаще всего. Процессы, которые не связаны с терминалом, в этом списке не упоминаются.
-f
Генерирует полный листинг.
-Р
Под заголовком дополнительного столбца PSR выводит на печать номер процессора, к которому привязан процесс, если такой процессор существует. Эта опция полезна на системах с многопроцессорной архитектурой.
-u <usemame>
Выводит только данные процессов для конкретного пользователя. В таком листинге будет содержаться численный идентификатор пользователя, если вы не используете опцию -f, которая обеспечивает вывод на печать его регистрационного имени.
ПРИМЕЧАНИЕ / .
При просмотре системных процессов удобно воспользоваться командой UNIX по имени sort. Применяйте команду sort в качестве вывода конвейера для сортировки процессов по размеру или по номеру идентификатора процесса. Например, для сортировки процессов по полю SZ используйте команду ps -el | sort +9 (не забудьте, что команда sort начинает нумерацию полей с 0).
Для получения полного перечня опций команды ps обратитесь к страницам оперативного руководства Solaris.
Команда pgrep
Solaris 8 предоставляет команду pgrep, которая замешает собой комбинацию команд ps, grep, egrep и awk, использовавшихся для управления процессами в версиях операционной системы вплоть до Solaris 7. Команда pgrep анализирует активные процессы в данной системе и регистрирует идентификаторы тех процессов, атрибуты которых удовлетворяют критериям, заданным вами в командной строке. Синтаксис команды pgrep выглядит следующим образом:
pgrep <options> <pattern>
Опции команды pgrep описываются в таблице 9.6.
Таблица 9.6 Опции команды pgrepv '
Опция
Описание
-d <delim>
Определяет разделитель строк выходной информации, которые будут выводиться на печать между идентификаторами процессов, удовлетворяющими критерию отбора. Если опция -d не задана, по умолчанию используется символ новой строки.
-f
Шаблон регулярного выражения должен строго совпадать с полной строкой аргументов конкретного процесса. Если опция -f не задана, выражение сравнивается только с именем исполняемого файла.
-g <pgrplist>
Совпадает только для тех процессов, чей идентификатор группы присутствует в заданном списке.
-G <gidlist>
Совпадает только для тех процессов, чей реальный идентификатор группы присутствует в данном списке. Идентификатор каждой группы может быть определен либо как имя группы, либо как численный идентификатор
-1
Расширенный формат вывода информации. Выводит на печать для каждого совпавшего процесса его имя в сопровождении идентификатора.
-n
Совпадает только для новейших процессов (созданных в самое последнее время), для которых удовлетворяются все остальные заданные критерии сравнения.
-P <ppidlist>
Совпадает только для тех процессов, у которых идентификатор родительского процесса присутствует в заданном списке.
-s <sidlist>
Совпадает только для тех процессов, для которых идентификатор сеанса процесса присутствует в заданном списке.
-t <termlist>
Совпадает только для тех процессов, которые ассоциируются с терминалом, присутствующим в заданном списке. Каждый терминал задается как суффикс, следующий за выражением /dev/ в имени маршрута данного терминала в каталоге /dev (например, term/a или pts/O).
Продолжение таблицы 9.6
Опция
Описание
-u <euidlist>
Совпадает только для процессов, у которых действующий идентификатор пользователя присутствует в заданном списке. Идентификатор каждого пользователя может быть определен либо как имя пользователя, либо как численный идентификатор.
-U <uidlist>
Совпадает только для процессов, у которых реальный идентификатор пользователя присутствует в заданном списке. Идентификатор каждого пользователя может быть определен либо как имя пользователя, либо как численный идентификатор.
-V
Совпадает для всех процессов кроме тех, для которых удовлетворяются все заданные критерии сравнения.
-X
Учитываются только те процессы, у которых строка аргументов или имя исполняемого файла в точности совпадает с заданным шаблоном.
<pattern>
Шаблон, который должен совпадать либо с именем исполняемого файла, либо с полной строкой аргументов данного процесса
Например, приведенная ниже команда pgrep находит все процессы, которые содержат выражение "dt" в строке их аргументов:
pgrep -1 -f "dt"
Система отвечает следующим образом:
258 /usr/openwin/bin/Xsun :0 -nobanner -auth /var/dt/А:0-3YaaGa
256 /usr/dt/bin/dtlogin -daemon.
280 /bin/ksh /usr/dt/bin/Xsession
259 /usr/dt/bin/dtlogin -daemon
327 /usr/dt/bin/dsdm
342 /usr/dt/bin/dtsession
3067 /usr/dt/bin/dtterm -C -Is -name Console
325 /usr/dt/bin/sdt_shell -c unset DT; DISPLAY=:0; /usr/dt/bin/dt
328 -sh -c unset DT; DISPLAY=:0; /usr/dt/bin/dtsession_res -merge
341 /usr/dt/bin/ttsession
349 dtwm
351 /usr/dt/bin/sdtperfmeter -f -H -t cpu -t disk -s 1 -name fpperfmeter
353 /bin/ksh /usr/dt/bin/sdtvolcheck -d -z 5 cdrom
730 /usr/dt/bin/dtterm -C -Is -name Console
1312 /bin/sh -c dtfile -noview
1313 dtfile -noview
1316 dtfile -noview
6886 /usr/dt/bin/dtscreen -mode blank
Для поиска идентификатора процесса Ipsched наберите следующую командную строку:
pgrep -1 Ipsched
Система отвечает следующим образом:
6899 Ipsched
Команда prstat
Для мониторинга системных процессов следует воспользоваться командой prstat, которая выдается из командной строки. Опять-таки, аналогично команде ps, рассматриваемая команда предоставляет информацию об активных процессах. Различие между этими командами заключается в том, что в данном случае вы можете указать, хотите ли вы получить информацию по конкретным процессам, по идентификаторам пользователей, по идентификаторам центральных процессоров или по группам процессоров. По умолчанию команда prstat отображает информацию обо всех процессах, отсортированную по величине загрузки центрального процессора. Еще одной полезной особенностью команды prstat является то, что выводимая ею информация остается на экране и периодически обновляется. Информация, отображаемая командой prstat, описывается в таблице 9.7.
Таблицу 9.7 Заголовки столбцов для выв^а команды prstat
Заголовок столбца Описание
РЮ
Идентификация процесса (уникальный номер, который определяет процесс внутри ядра операционной системы).
USERNAME
Регистрационное имя владельца данного процесса.
SIZE
Суммарный размер виртуальной памяти данного процесса в килобайтах (К), мегабайтах (М) или гигабайтах (G).
RSS
Размер резидентной части процесса в килобайтах, мегабайтах или гигабайтах.
STATE
Состояние данного процесса:
cpu<n> - процесс выполняется на центральном процессоре <п>;
sleep - процесс для своего выполнения ожидает некоторого события;
run- процесс находится в очереди запуска;
zombie - процесс завершен, и его родительский процесс не находится в состоянии ожидания;
stop - процесс остановлен.
PRI
Приоритет процесса.
NICE
Значение, используемое для вычисления приоритетности процесса.
TIME
Совокупное время выполнения данного процесса.
CPU
Процент текущего времени центрального процессора, использованного данным процессом.
PROCESS
.Имя процесса.
NLWP
Количество LWP-процессов (Lightweight Processes - упрощенных процессов) в составе данного процесса.
В этом разделе была введена некоторая новая терминология, поэтому в таблице 9.8 представлены определения нескольких терминов, относящихся к обработке в целом.
Таблица 9.8 Термй^рлрУиу^^^
Термин Описание
Многозадачность
(Multitasking)
Технология, используемая в операционной системе, для разделения ресурсоводного процессора между несколькими независимыми заданиями. Многозадачность приводит к появлению накладных расходов, поскольку процессор затрачивает некоторое время на выбор следующего зада-
Продолжение таблицы 9.8
Термин
Описание
ния для выполнения, а также для сохранения и восстановления состояния задач. Однако при этом уменьшается наиболее существенное время от представления задания до его завершения по сравнению с простой пакетной системой, в которой каждое задание должно завершиться прежде, чем начнется следующее. Многозадачность также означает, что пока одна задача находится в состоянии ожидания какого-нибудь внешнего события, центральный процессор освобождается для выполнения полезной работы на других задачах.
Многозадачная операционная система должна предоставлять некоторую степень защиты одной задачи от другой для предотвращения их взаимодействия непредусмотренными способами, такими как случайное внесение изменений одной задачей в содержимое областей памяти другой задачи.
Задания в многозадачной системе могут принадлежать одному или нескольким пользователям. В этом заключается отличие такой системы от системы параллельной обработки, в которой один пользователь выполняет несколько задач на нескольких процессорах. Разделение времени - практически синоним многозадачности, однако предполагает, что в системе имеется более одного пользователя.
Параллельная обработка (Parallel processing)
Одновременное использование более чем одного компьютера для решения некоторой задачи. Процессоры при этом могут быть либо связаны между собой для совместного решения некоторой задачи, либо могут функционировать совершенно независимо, возможно, под управлением еще одного процессора, который распределяет работу между остальными процессорами системы и собирает результаты их работы.
Многопоточная обработка данных (Multithreaded)
Разделение одного центрального процессора между несколькими задачами (или "потоками" - "threads") таким образом, чтобы сократить время, требуемое для переключения между потоками. Многопоточная обработка отличается от многозадачности тем, что потоки в большей степени разделяют собственное окружение между собой, чем это делают задачи при многозадачной обработке данных.
Упрощенный процесс (Lightweight Process - LWP)
Однопоточный подпроцесс. Упрощенные процессы планируются ядром для использования доступных ресурсов центрального процессора на основе их планируемых классов или приоритетов. Упрощенные процессы включают некоторый поток ядра, содержащий информацию, которая должна постоянно находиться в памяти, и собственно упрощенный процесс, который является своппируемым (подкачиваемым). Процесс может состоять из нескольких упрощенных процессов и множества прикладных потоков. Упрощенный процесс занимает некое промежуточное положение между потоком и полным процессом.
Прикладной поток (Application thread)
Последовательность машинных команд в виде отдельного стека, который может выполняться независимо в адресном пространстве пользователя. Эти потоки могут быть мультиплексированы через вершины упрощенных процессов.
Адресное пространство (Address space)
Диапазон адресов, к которому может иметь доступ процессор либо процесс или из которого может быть доступно некоторое устройство. Данный термин может означать либо физические адреса, либо виртуальные. Размер адресного пространства процессора зависит от ширины его шины и адресных регистров.
Разделяемая память (Shared memory)
Обычно относится к оперативной памяти (RAM), которая может быть доступна более чем одному процессу в многозадачной операционной системе с защитой памяти.
Синтаксис команды prstat выглядит следующим образом:
prstat [options] <count> <interval>
Опции и аргументы команды prstat описываются в таблице 9.9.
•лица Э.З Ьпцйи и ар^менть^й
Опции команды prstat Опция
Описание
-а
Отображает отдельные отчеты за одно и то же время о процессах и о пользователях.
-с
Непрерывно выводит новые отчеты ниже предыдущих вместо того, чтобы перезаписывать их.
-п <пргос>
Ограничивает количество строк выходной информации. Аргумент <пргос> определяет, какое количество строк статистики о процессе или об упрощенном процессе будет включено в отчет.
-р <pidlist>
Сообщает только о процессах, идентификатор которых присутствует в заданном списке.'
-Р <cpulist>
Сообщает только о тех процессах, которые последними исполнялись на центральном процессоре из заданного списка. Аргумент <cpulist> идентифицирует каждый центральный процессор целым числом, которое сообщает команда psrinfo.
-S <key>
Сортирует строки выходной информации по аргументу <кеу> в убывающем порядке. Значения аргумента <кеу> могут быть следующими: ср - сортировка (по умолчанию) по степени использования процессами ресурсов центрального процессора;
time - сортировка по времени выполнения процесса;
size - сортировка по размеру образа процессов;
rss - сортировка по размеру резидентной части процесса;
pri - сортировка по приоритетности процессов.
-s <key>
Сортирует строки выходной информации по аргументу <кеу> в возрастающем порядке. См. опцию -S для ознакомления с допустимыми значениями аргумента <кеу>.
-t
Сообщает итоговую сводку по каждому пользователю.
-u <euidlist>
Сообщает только о тех процессах, для которых в заданном списке присутствует действующий идентификатор пользователя. Значение аргумента <euidlist> может быть определено либо как регистрационное имя пользователя, либо как его численный идентификатор.
-U <euidlist>
Сообщает только о тех процессах, для которых в заданном списке присутствует реальный идентификатор пользователя. Значение аргумента <euidlist> может быть определено либо как регистрационное имя пользователя, либо как его численный идентификатор.
Аргументы команды prstat
Аргументы/Описание
<count>
Определяет, сколько раз повторяются данные статистики. По умолчанию команда prstat формирует статистику до тех пор, пока не будет принят какой-нибудь сигнал завершения.
<interval>
Определяет длительность интервала выборки в секундах; по умолчанию значение аргумента <interval> равно пяти секундам.
ПРИМЕЧАНИЕ ЖЖ^Г■
Команда psrinfo отображает информацию обо всех процессорах, инсталлированных в системе. Команда psrinfo отображает по одной строке информации для каждого сконфигурированного процессора, показывая при этом, находится ли он в режиме on-line (неавтономном) или off-line (автономном), является ли непрерываемым (гарантированным) или выключенным, а также, когда статус данного процессора изменялся в последний раз.
Приведенный ниже пример демонстрирует, как использовать команду prstat для просмотра четырех наиболее активных процессов, запущенных суперпользователем:
prstat -u root -n 4 1 1
Система отображает следующую выходную информацию:
PID
USERNAME SIZE
RSS
STATE PRI
NICE
TIME
CPU
PROCESS/NLWP
3998
root1464K
1088K
cpuO 48
0
0:00.00
0.2%
prstat/1
763
root6864K
4464K
sleep 58
0
0:00.01
0.2%
dtterm/1
3299
root1504K
1208K
sleep 48
0
0:00.12
0.1%
prstat/1
602
root7208K
4816K
sleep 49
0
0:00.03
0.1%
dtterm/1
Total
: 51 processes,
114 Iwps, load averages
: 0.00,
0.01,
0.02
Менеджер процессов среды CDE
Новым в операционной системе Solaris 8 является менеджер процессов среды CDE, sdtprocess, который представляет собой графический инструмент среды CDE в виде окна Process Manager для мониторинга и управления системными процессами.
Преимущество использования менеджера процессов заключается в том, что вы можете просматривать и управлять процессами, не зная всех сложных опций команд ps и kill. Например, вы можете отображать процессы, которые содержат определенные символьные строки, и можете сортировать процессы в алфавитном или числовом порядке. Можете инициировать поиск с использованием команды find или можете завершить какой-нибудь процесс, просто выделив его и щелкнув экранную кнопку kill.
Для открытия менеджера процессов вам необходимо войти в оконную среду CDE. Вы можете запустить данный графический интерфейс пользователя либо путем выполнения
команды sdtprocess, что и показано ниже: sdtprocess &
либо щелкнув экранную кнопку Find Process субпанели Tools на передней панели среды CDE, как показано на рисунке 9.1.
РисуНОК 9.1. Передняя панель.
Открывается окно Process Manager, которое показано на рисунке 9.2.
nyuioces^dn^^Moot^wikn^^nyuioces^dn^^Moot^wikn^^МНВМНВHit».:Hit».:•'gpoc*#®*. Edit ^-^rt•'gpoc*#®*. Edit ^-^rtyelpyelp*[ Sees Find: |f*[ Sees Find: |f
nyuioces^dn^^Moot^wikn^^
nyuioces^dn^^Moot^wikn^^
МНВ
МНВ
Hit».:
Hit».:
•'gpoc*#®*. Edit ^-^rt
•'gpoc*#®*. Edit ^-^rt
yelp
yelp
*[ Sees Find: |f
*[ Sees Find: |f
ConwndConwnd
Conwnd
Conwnd
.13655-sdtproce 330 X?un"1368? р*.z . 13666 tWessio 225 metf.13655-sdtproce 330 X?un"1368? р*.z . 13666 tWessio 225 metf:-rrot 0.6 root 0.4 root 9.3:-rrot 0.6 root 0.4 root 9.38624 09108:45.20864 Йрг^З1<HO 09:09:164520 09^81468624 09108:45.20864 Йрг^З1<HO 09:09:164520 09^8146- 802 dtter* >3681 M 135^ four* 3299pr$tat.3 Fsflush13683 ksh- 802 dtter* >3681 M 135^ four* 3299pr$tat.3 Fsflush13683 kshroot ОЛ 3400 root 0.3 1600 ™ root 0,2 t2S& 3432 09:08:46 root 0.2 6164 10648 10:59:13 root 0.2 4864 7208 ^23root ОЛ 3400 root 0.3 1600 ™ root 0,2 t2S& 3432 09:08:46 root 0.2 6164 10648 10:59:13 root 0.2 4864 7208 ^23root-root-15699" snapshot ■ 12698 "dtevec.641 dtfile:"K39d6hle ■15699" snapshot ■ 12698 "dtevec.641 dtfile:"K39d6hle ■root root rootroot root root0,1 0Д '9.1040,1 0Д '9.1040.6 о.о0.6 о.о116245521208 *• 00' 304116245521208 *• 00' 304., • 0 8pr^s 1732 09:09:16 304 09:07:07., • 0 8pr^s 1732 09:09:16 304 09:07:07о.о-о.о-1,1304 .12472 08:22:13 • I860 2408 08:22:13 . 1192 8206 Apr_23 6480 8360 ^-.251,1304 .12472 08:22:13 • I860 2408 08:22:13 . 1192 8206 Apr_23 6480 8360 ^-.2513598 sdtprocest ~-3$ Z.u$rZopet*in/1);in$8<M):x£0.-mobahr)er>-a^^Л9Ш-7и$г/Ь:пфг*А -o.ptd^lS тс FnanesHew ~o usereOwner ^ pqw>r«5«fWI - -o>vsz.= ' 1 tUession rt -d 192.188.0.1:0^1 /usr/sbin/r»cd180 rpc.ttdbserverd- s606 Ytkprocess594 /usr/dt^itvdtter* -session №«5e 4 -is<13656 ksh -c /osrybinZps ^-л pkd=ID-G;*Fha**=$a*e-TO:.u^s0wr^ t /usr/dt/birvMertt -display 192Д68.0Л:и< i606pr$t«L-' • ;r•v 0 f^Plush:13681 l-eh -e/usr/biyZps -iV-g pid^lH -o Vn»?e=H8*e’' -o..usefrOwnerto 'pcpu^'ss.-Rftfl.13593 /sbin/sh.•'■•12638 /usr/opewln/bir/snapshoV.; s .■ > •-"••639 <usr/dtZbifVdtexec -open" 0 -ttproc$d 4.w5«I 01 58^12896$70№ 11 0 127.0,0.1 639 dtFile -rioview"••638 dtfile -noview.13598 sdtprocest ~-3$ Z.u$rZopet*in/1);in$8<M):x£0.-mobahr)er>-a^^Л9Ш-7и$г/Ь:пфг*А -o.ptd^lS тс FnanesHew ~o usereOwner ^ pqw>r«5«fWI - -o>vsz.= ' 1 tUession rt -d 192.188.0.1:0^1 /usr/sbin/r»cd180 rpc.ttdbserverd- s606 Ytkprocess594 /usr/dt^itvdtter* -session №«5e 4 -is<13656 ksh -c /osrybinZps ^-л pkd=ID-G;*Fha**=$a*e-TO:.u^s0wr^ t /usr/dt/birvMertt -display 192Д68.0Л:и< i606pr$t«L-' • ;r•v 0 f^Plush:13681 l-eh -e/usr/biyZps -iV-g pid^lH -o Vn»?e=H8*e’' -o..usefrOwnerto 'pcpu^'ss.-Rftfl.13593 /sbin/sh.•'■•12638 /usr/opewln/bir/snapshoV.; s .■ > •-"••639 <usr/dtZbifVdtexec -open" 0 -ttproc$d 4.w5«I 01 58^12896$70№ 11 0 127.0,0.1 639 dtFile -rioview"••638 dtfile -noview.
.13655-sdtproce 330 X?un
"1368? р*.z . 13666 tWessio 225 metf
.13655-sdtproce 330 X?un
"1368? р*.z . 13666 tWessio 225 metf
:-rrot 0.6 root 0.4 root 9.3
:-rrot 0.6 root 0.4 root 9.3
8624 09108:45.
20864 Йрг^З1<HO 09:09:164520 09^8146
8624 09108:45.
20864 Йрг^З1<HO 09:09:164520 09^8146
- 802 dtter* >3681 M 135^ four* 3299pr$tat
.3 Fsflush
13683 ksh
- 802 dtter* >3681 M 135^ four* 3299pr$tat
.3 Fsflush
13683 ksh
root ОЛ 3400 root 0.3 1600 ™ root 0,2 t2S& 3432 09:08:46 root 0.2 6164 10648 10:59:13 root 0.2 4864 7208 ^23
root ОЛ 3400 root 0.3 1600 ™ root 0,2 t2S& 3432 09:08:46 root 0.2 6164 10648 10:59:13 root 0.2 4864 7208 ^23
root-
root-
15699" snapshot ■ 12698 "dtevec.
641 dtfile:"K39d6hle ■
15699" snapshot ■ 12698 "dtevec.
641 dtfile:"K39d6hle ■
root root root
root root root
0,1 0Д '9.1
04
0,1 0Д '9.1
04
0.6 о.о
0.6 о.о
1162
4552
1208 *
• 0
0
' 304
1162
4552
1208 *
• 0
0
' 304
., • 0 8pr^s 1732 09:09:16 304 09:07:07
., • 0 8pr^s 1732 09:09:16 304 09:07:07
о.о-
о.о-
1,1304 .12472 08:22:13 • I860 2408 08:22:13 . 1192 8206 Apr_23 6480 8360 ^-.25
1,1304 .12472 08:22:13 • I860 2408 08:22:13 . 1192 8206 Apr_23 6480 8360 ^-.25
13598 sdtprocest ~-
3$ Z.u$rZopet*in/1);in$8<M):x£0.-mobahr)er>-a^^
Л9Ш-7и$г/Ь:пфг*А -o.ptd^lS тс FnanesHew ~o usereOwner ^ pqw>r«5«fWI - -o>vsz.= ' 1 tUession rt -d 192.188.0.1:0^
1 /usr/sbin/r»cd
180 rpc.ttdbserverd- s
606 Ytkprocess
594 /usr/dt^itvdtter* -session №«5e 4 -is<
13656 ksh -c /osrybinZps ^-л pkd=ID-G;*Fha**=$a*e-TO:.u^s0wr^ t /usr/dt/birvMertt -display 192Д68.0Л:и
< i606pr$t«L-' • ;r•
v 0 f^Plush:
13681 l-eh -e/usr/biyZps -iV-g pid^lH -o Vn»?e=H8*e’' -o..usefrOwnerto 'pcpu^'ss.-Rftfl.
13593 /sbin/sh.•'■•
12638 /usr/opewln/bir/snapshoV.; s .■ > •-"••
639 <usr/dtZbifVdtexec -open" 0 -ttproc$d 4.w5«I 01 58^12896$70№ 11 0 127.0,0.1 639 dtFile -rioview"••
638 dtfile -noview.
13598 sdtprocest ~-
3$ Z.u$rZopet*in/1);in$8<M):x£0.-mobahr)er>-a^^
Л9Ш-7и$г/Ь:пфг*А -o.ptd^lS тс FnanesHew ~o usereOwner ^ pqw>r«5«fWI - -o>vsz.= ' 1 tUession rt -d 192.188.0.1:0^
1 /usr/sbin/r»cd
180 rpc.ttdbserverd- s
606 Ytkprocess
594 /usr/dt^itvdtter* -session №«5e 4 -is<
13656 ksh -c /osrybinZps ^-л pkd=ID-G;*Fha**=$a*e-TO:.u^s0wr^ t /usr/dt/birvMertt -display 192Д68.0Л:и
< i606pr$t«L-' • ;r•
v 0 f^Plush:
13681 l-eh -e/usr/biyZps -iV-g pid^lH -o Vn»?e=H8*e’' -o..usefrOwnerto 'pcpu^'ss.-Rftfl.
13593 /sbin/sh.•'■•
12638 /usr/opewln/bir/snapshoV.; s .■ > •-"••
639 <usr/dtZbifVdtexec -open" 0 -ttproc$d 4.w5«I 01 58^12896$70№ 11 0 127.0,0.1 639 dtFile -rioview"••
638 dtfile -noview.
В
РиСуНОК 9.2. Окно Process Manager.
Каждый атрибут процесса в заголовке окна Process Manager предоставляет детальную информацию о данном процессе и описывается в таблице 9.10.
Таблица 9.10 Окно Process Manager.5>
Заголовок столбца
ID
Описание
Идентификатор процесса
Name
Имя процесса
Owner
Регистрационное имя владельца данного процесса
CPU%
Отношение, выраженное в процентах, времени доступа к центральному процессору к общей продолжительности всего периода времени
RAM
Объем оперативной памяти, занятый в настоящее время данным процессом
Swap
Started
Общий размер виртуальной памяти
Реальное время запуска процесса (или дата запуска, если она отличается от текущей даты)
Parent
Идентификатор родительского процесса для данного процесса, или PPID
Command
Реально исполняемая команда UNIX (усеченная)
Щелкните любой заголовок столбца для сортировки процессов по заданному атрибуту. Например, щелкните заголовок CPU для сортировки всех процессов по степени использования ими центрального процессора. Этот список обновляется каждые 30 секунд, однако вы можете ввести любое значение в поле Sample Every, чтобы обновлять этот список так часто, как вам понравится. Наконец, вы можете ввести какую-нибудь текстовую строку в выпадающее меню Find, что является общим для всех элементов процессов, которые вы хотите отобразить. На рисунке 9.3 в поле Find введено слово root для отображения всех процессов, принадлежащих суперпользователю. Кроме того, период выборки был установлен на 5 секунд, а также выполнен щелчок по заголовку CPU для сортировки процессов по степени использования ими центрального процессора.
Process Edit Viw $^>1«Process Edit Viw $^>1«Filter: [f ~“—— д swle Evers [^ "B r®®*_IS_ Нм I' aner j|OTt| RhM |Wl^terted|>»ent j _ Filter: [f ~“—— д swle Evers [^ "B r®®*_IS_ Нм I' aner j|OTt| RhM |Wl^terted|>»ent j _ Find: ^~"■ CoweandFind: ^~"■ Coweandedtproce ps•<2796 -^dtproce' 225 nsed .602dtterm - ksh > pre<edtproce ps•<2796 -^dtproce' 225 nsed .602dtterm - ksh > pre<253 utwpdi;.:- •^..fsFl^ ^749 ksh 13653 rpb.ttcfo 13658 itsassip 1Ш sh 13593 dttern 12699 «.nspsbot 12693 dtexec • ' 641 dtfila253 utwpdi;.:- •^..fsFl^ ^749 ksh 13653 rpb.ttcfo 13658 itsassip 1Ш sh 13593 dttern 12699 «.nspsbot 12693 dtexec • ' 641 dtfilaM 0.5 6652 5624 09^8:45 ' 13698-«ftpi^>$v.root 0,4-764 1040 09:10:40- 1374? w$r/b^ptd^ID-*o Fna0«=Hane. ’-o user=Cwiier.-ti pcpti,r.s$=RAH -o vsz--roof 0.4-10944 20864 Apt>_23325 ?u$r/open#in/bin/Xsun :u•■moberme- -auth /var/dt/ft:O-9wSJaroot 0.3 .8104 1004810:69:13606 sdtproceo* • .• <• •• .rc-ot 0.3^1600' 2416 8pr^23 ul/иег/еЫя/пзсй-.••.•••••root 0.2 4864 7208Apr.123 . 594-Aj^/dtAirVdtterN ?eessic*>»dtG2»a5».4.. root Oil 1152 1732 09:10:40 IS^ksn -Ov/usr/bth/ps -A -o pid»lB -a ZfnaiwsNwc' -o. usersChmen r# 'pcpu.rsesRAH•treat од. 1208 \15O413165^^^-В ••<-root 0.1543 Ш fi^rj2$root. 0.1'U . 0. ’ 0Apr-25 Ofsflush\rdotSOX ' 0 1ZS@«11O;1I» 13747 ksh -c /usr/bin/ps-A -o pit^IB “0 'fлaмe=44э*в, ~o user=(kiher -o *pcpu,rss^fl|1• rbotBo.O 2520 .3432,09:08:46180.rpc.ttdbserverd‘•root 0.6 3400 4520 09108t46-.1.ttsession -s-X 192.168.0.1:^0'root 0Л .304 .3^4 09:67:07 £3593 /sb'jn/sh '.<.root 0.0. 4552 67§o 09:07:^'1 /usr/dt^iri/dtterti -display ,192.168.0.1 ;v;г&Д 0-.0- •-■11304; 124 72':08:22:13 12898.A^/op^in/bin/$ri^ta^•root 0.01880 2408 08^2:15639 /usydt/bWdte>ec ~o₽en 0 -ttprocid 4.«у5аГ01 593 12^3.7086 1 1 0 12710.0.1root. 0.01192 82w ^*J23639 dtfile -novieu лM 0.5 6652 5624 09^8:45 ' 13698-«ftpi^>$v.root 0,4-764 1040 09:10:40- 1374? w$r/b^ptd^ID-*o Fna0«=Hane. ’-o user=Cwiier.-ti pcpti,r.s$=RAH -o vsz--roof 0.4-10944 20864 Apt>_23325 ?u$r/open#in/bin/Xsun :u•■moberme- -auth /var/dt/ft:O-9wSJaroot 0.3 .8104 1004810:69:13606 sdtproceo* • .• <• •• .rc-ot 0.3^1600' 2416 8pr^23 ul/иег/еЫя/пзсй-.••.•••••root 0.2 4864 7208Apr.123 . 594-Aj^/dtAirVdtterN ?eessic*>»dtG2»a5».4.. root Oil 1152 1732 09:10:40 IS^ksn -Ov/usr/bth/ps -A -o pid»lB -a ZfnaiwsNwc' -o. usersChmen r# 'pcpu.rsesRAH•treat од. 1208 \15O413165^^^-В ••<-root 0.1543 Ш fi^rj2$root. 0.1'U . 0. ’ 0Apr-25 Ofsflush\rdotSOX ' 0 1ZS@«11O;1I» 13747 ksh -c /usr/bin/ps-A -o pit^IB “0 'fлaмe=44э*в, ~o user=(kiher -o *pcpu,rss^fl|1• rbotBo.O 2520 .3432,09:08:46180.rpc.ttdbserverd‘•root 0.6 3400 4520 09108t46-.1.ttsession -s-X 192.168.0.1:^0'root 0Л .304 .3^4 09:67:07 £3593 /sb'jn/sh '.<.root 0.0. 4552 67§o 09:07:^'1 /usr/dt^iri/dtterti -display ,192.168.0.1 ;v;г&Д 0-.0- •-■11304; 124 72':08:22:13 12898.A^/op^in/bin/$ri^ta^•root 0.01880 2408 08^2:15639 /usydt/bWdte>ec ~o₽en 0 -ttprocid 4.«у5аГ01 593 12^3.7086 1 1 0 12710.0.1root. 0.01192 82w ^*J23639 dtfile -novieu л
Process Edit Viw $^>1«
Process Edit Viw $^>1«
Filter: [f ~“—— д swle Evers [^ "B r®®*
_IS_ Нм I' aner j|OTt| RhM |Wl^terted|>»ent j _
Filter: [f ~“—— д swle Evers [^ "B r®®*
_IS_ Нм I' aner j|OTt| RhM |Wl^terted|>»ent j _
Find: ^~"
■ Coweand
Find: ^~"
■ Coweand
edtproce ps
•<2796 -^dtproce' 225 nsed .
602dtterm - ksh > pre<
edtproce ps
•<2796 -^dtproce' 225 nsed .
602dtterm - ksh > pre<
253 utwpdi;.
:- •^..fsFl^ ^749 ksh 13653 rpb.ttcfo 13658 itsassip 1Ш sh 13593 dttern 12699 «.nspsbot 12693 dtexec • ' 641 dtfila
253 utwpdi;.
:- •^..fsFl^ ^749 ksh 13653 rpb.ttcfo 13658 itsassip 1Ш sh 13593 dttern 12699 «.nspsbot 12693 dtexec • ' 641 dtfila
M 0.5 6652 5624 09^8:45 ' 13698-«ftpi^>$v.
root 0,4-764 1040 09:10:40- 1374? w$r/b^ptd^ID-*o Fna0«=Hane. ’-o user=Cwiier.-ti pcpti,r.s$=RAH -o vsz-
-roof 0.4-10944 20864 Apt>_23325 ?u$r/open#in/bin/Xsun :u•■moberme- -auth /var/dt/ft:O-9wSJa
root 0.3 .8104 1004810:69:13606 sdtproceo* • .• <• •• .
rc-ot 0.3^1600' 2416 8pr^23 ul/иег/еЫя/пзсй-.••.•••••
root 0.2 4864 7208Apr.123 . 594-Aj^/dtAirVdtterN ?eessic*>»dtG2»a5».4.
. root Oil 1152 1732 09:10:40 IS^ksn -Ov/usr/bth/ps -A -o pid»lB -a ZfnaiwsNwc' -o. usersChmen r# 'pcpu.rsesRAH
•treat од. 1208 \15O413165^^^-В ••<
-root 0.1543 Ш fi^rj2$
root. 0.1'U . 0. ’ 0Apr-25 Ofsflush\
rdotSOX ' 0 1ZS@«11O;1I» 13747 ksh -c /usr/bin/ps-A -o pit^IB “0 'fлaмe=44э*в, ~o user=(kiher -o *pcpu,rss^fl|1
• rbotBo.O 2520 .3432,09:08:46180.rpc.ttdbserverd‘•
root 0.6 3400 4520 09108t46-.1.ttsession -s-X 192.168.0.1:^0'
root 0Л .304 .3^4 09:67:07 £3593 /sb'jn/sh '.<.
root 0.0. 4552 67§o 09:07:^'1 /usr/dt^iri/dtterti -display ,192.168.0.1 ;v;
г&Д 0-.0- •-■11304; 124 72':08:22:13 12898.A^/op^in/bin/$ri^ta^•
root 0.01880 2408 08^2:15639 /usydt/bWdte>ec ~o₽en 0 -ttprocid 4.«у5аГ01 593 12^3.7086 1 1 0 12710.0.1
root. 0.01192 82w ^*J23639 dtfile -novieu л
M 0.5 6652 5624 09^8:45 ' 13698-«ftpi^>$v.
root 0,4-764 1040 09:10:40- 1374? w$r/b^ptd^ID-*o Fna0«=Hane. ’-o user=Cwiier.-ti pcpti,r.s$=RAH -o vsz-
-roof 0.4-10944 20864 Apt>_23325 ?u$r/open#in/bin/Xsun :u•■moberme- -auth /var/dt/ft:O-9wSJa
root 0.3 .8104 1004810:69:13606 sdtproceo* • .• <• •• .
rc-ot 0.3^1600' 2416 8pr^23 ul/иег/еЫя/пзсй-.••.•••••
root 0.2 4864 7208Apr.123 . 594-Aj^/dtAirVdtterN ?eessic*>»dtG2»a5».4.
. root Oil 1152 1732 09:10:40 IS^ksn -Ov/usr/bth/ps -A -o pid»lB -a ZfnaiwsNwc' -o. usersChmen r# 'pcpu.rsesRAH
•treat од. 1208 \15O413165^^^-В ••<
-root 0.1543 Ш fi^rj2$
root. 0.1'U . 0. ’ 0Apr-25 Ofsflush\
rdotSOX ' 0 1ZS@«11O;1I» 13747 ksh -c /usr/bin/ps-A -o pit^IB “0 'fлaмe=44э*в, ~o user=(kiher -o *pcpu,rss^fl|1
• rbotBo.O 2520 .3432,09:08:46180.rpc.ttdbserverd‘•
root 0.6 3400 4520 09108t46-.1.ttsession -s-X 192.168.0.1:^0'
root 0Л .304 .3^4 09:67:07 £3593 /sb'jn/sh '.<.
root 0.0. 4552 67§o 09:07:^'1 /usr/dt^iri/dtterti -display ,192.168.0.1 ;v;
г&Д 0-.0- •-■11304; 124 72':08:22:13 12898.A^/op^in/bin/$ri^ta^•
root 0.01880 2408 08^2:15639 /usydt/bWdte>ec ~o₽en 0 -ttprocid 4.«у5аГ01 593 12^3.7086 1 1 0 12710.0.1
root. 0.01192 82w ^*J23639 dtfile -novieu л
et-JB;et-JB;g^Piocest Manaqei tooK^unknown
et-JB;
et-JB;
РисуНОК 9.3. Отсортированное содержимое окна Process Manager
Если одной ценной особенностью менеджера процессов является его возможность отображать родословную некоторого процесса. Когда какой-нибудь процесс UNIX инициирует один или несколько процессов, мы называем их дочерними процессами, или потомками. Дочерний и родительский процессы имеют один и тот же идентификатор пользователя. Для просмотра родительского процесса и всех дочерних процессов, принадлежащих ему, выделите интересующий вас процесс в окне Process Manager. Щелкните кнопку Process на панели инструментов в верхней части этого окна и выберите Show Ancestry, как показано на рисунке 9.4.
UdQty Help ]
Look up Ctener... Signal.;, Debttg...Trace System Calk.Trace Children,.. ' Show Stack...Show ^de&try.,., ,, 31 ■ ■Look up Ctener... Signal.;, Debttg...Trace System Calk.Trace Children,.. ' Show Stack...Show ^de&try.,., ,, 31 ■ ■CtrhGCtrhG• *• zj v Sample Evet^f l^^^^Fw',|Sw । sSrfti, F-rent '• *• zj v Sample Evet^f l^^^^Fw',|Sw । sSrfti, F-rent 'Find: |fFind: |ff^Msndf^MsndCtrbtCtrbt8104 10048 10:59:13 ■5)4 304 Apr .23 5752: 18056 Й>г_23 4864 7208 f^r.238104 10048 10:59:13 ■5)4 304 Apr .23 5752: 18056 Й>г_23 4864 7208 f^r.238752 (^.238752 (^.236^- sdtprocess6у2 vsh.534 Zusr/dt/bhVsdtperfneter -f -H -t cpu -t disk -s 1 -name fpperfNeter594 /usr/dl/bin/dtter* -sessiori dtC2aa5a -C -Is6^- sdtprocess6у2 vsh.534 Zusr/dt/bhVsdtperfneter -f -H -t cpu -t disk -s 1 -name fpperfNeter594 /usr/dl/bin/dtter* -sessiori dtC2aa5a -C -Is^!*С^!*СS 8752 for .23594 dtw .•..lots Йрг.23 № /Ып/»Ь 4 dtfslt -ncУй?4 -7 3864 . Apnj25 '-^3 Zusr/dt/lii^dk.shsUS 8752 for .23594 dtw .•..lots Йрг.23 № /Ып/»Ь 4 dtfslt -ncУй?4 -7 3864 . Apnj25 '-^3 Zusr/dt/lii^dk.shsU-no-ji^t--no-ji^t-'299-.dvht^pd>„ daemon^659'^WB r^''299-.dvht^pd>„ daemon^659'^WB r^'root ОД /.3448root ОД /.3448root OX -2448root OX -2448'Л-: .Ti'SPLW=:0:Zusr/dt/yir^edt-sheH \u»et ^3 ./usr^erwin^^f^consQle''.З&^/ЬиИаК/usr/dt^in/i^^■^$r/htbWZt.ty^.289 /u^Zllb/ab27At^xzS!jr!Q$5/binZd*iiihttpd /usrflib/ab2/dw*Zdata 180 ^ittdbwr^l 180 rpe.k^utd 18O-iw.ttic®edrverd5-‘-- ’• ‘'Л-: .Ti'SPLW=:0:Zusr/dt/yir^edt-sheH \u»et ^3 ./usr^erwin^^f^consQle''.З&^/ЬиИаК/usr/dt^in/i^^■^$r/htbWZt.ty^.289 /u^Zllb/ab27At^xzS!jr!Q$5/binZd*iiihttpd /usrflib/ab2/dw*Zdata 180 ^ittdbwr^l 180 rpe.k^utd 18O-iw.ttic®edrverd5-‘-- ’• ‘./ust/dt4>in/dtse$$ian_res.-ftsr98./ust/dt4>in/dtse$$ian_res.-ftsr98BlSPLAY^PlBlSPLAY^Pl7ysr/dtH).in/dt7ysr/dtH).in/dt•4.-ttsets:^;7's;:•4.-ttsets:^;7's;:,1:M,1:MОЯ;.'ОЯ;.'
Look up Ctener... Signal.;, Debttg...
Trace System Calk.
Trace Children,.. ' Show Stack...
Show ^de&try.,., ,, 31 ■ ■
Look up Ctener... Signal.;, Debttg...
Trace System Calk.
Trace Children,.. ' Show Stack...
Show ^de&try.,., ,, 31 ■ ■
CtrhG
CtrhG
• *• zj v Sample Evet^f l^^^^Fw',|Sw । sSrfti, F-rent '
• *• zj v Sample Evet^f l^^^^Fw',|Sw । sSrfti, F-rent '
Find: |f
Find: |f
f^Msnd
f^Msnd
Ctrbt
Ctrbt
8104 10048 10:59:13 ■5)4 304 Apr .23 5752: 18056 Й>г_23 4864 7208 f^r.23
8104 10048 10:59:13 ■5)4 304 Apr .23 5752: 18056 Й>г_23 4864 7208 f^r.23
8752 (^.23
8752 (^.23
6^- sdtprocess
6у2 vsh.
534 Zusr/dt/bhVsdtperfneter -f -H -t cpu -t disk -s 1 -name fpperfNeter
594 /usr/dl/bin/dtter* -sessiori dtC2aa5a -C -Is
6^- sdtprocess
6у2 vsh.
534 Zusr/dt/bhVsdtperfneter -f -H -t cpu -t disk -s 1 -name fpperfNeter
594 /usr/dl/bin/dtter* -sessiori dtC2aa5a -C -Is
^!*С
^!*С
S 8752 for .23594 dtw .•..
lots Йрг.23 № /Ып/»Ь 4 dtfslt -nc
Уй?4 -7 3864 . Apnj25 '-^3 Zusr/dt/lii^dk.shsU
S 8752 for .23594 dtw .•..
lots Йрг.23 № /Ып/»Ь 4 dtfslt -nc
Уй?4 -7 3864 . Apnj25 '-^3 Zusr/dt/lii^dk.shsU
-no-ji^t-
-no-ji^t-
'299-.dvht^pd>„ daemon
^659'^WB r^'
'299-.dvht^pd>„ daemon
^659'^WB r^'
root ОД /.3448
root ОД /.3448
root OX -2448
root OX -2448
'Л-: .Ti'SPLW=:0:
Zusr/dt/yir^edt-sheH \u»et ^3 ./usr^erwin^^f^consQle''
.З&^/ЬиИаК/usr/dt^in/i^^■
^$r/htbWZt.ty^.
289 /u^Zllb/ab27At^xzS!jr!Q$5/binZd*iiihttpd /usrflib/ab2/dw*Zdata 180 ^ittdbwr^l 180 rpe.k^utd 18O-iw.ttic®edrverd5-‘-- ’• ‘
'Л-: .Ti'SPLW=:0:
Zusr/dt/yir^edt-sheH \u»et ^3 ./usr^erwin^^f^consQle''
.З&^/ЬиИаК/usr/dt^in/i^^■
^$r/htbWZt.ty^.
289 /u^Zllb/ab27At^xzS!jr!Q$5/binZd*iiihttpd /usrflib/ab2/dw*Zdata 180 ^ittdbwr^l 180 rpe.k^utd 18O-iw.ttic®edrverd5-‘-- ’• ‘
./ust/dt4>in/dtse$$ian_res.-ftsr98
./ust/dt4>in/dtse$$ian_res.-ftsr98
BlSPLAY^Pl
BlSPLAY^Pl
7ysr/dtH).in/dt
7ysr/dtH).in/dt
•4.-ttsets:^;7's;:
•4.-ttsets:^;7's;:
,1:M
,1:M
ОЯ;.'
ОЯ;.'
РисуНОК 9.4. Выбор пункта Show Ancestry.
Окно, показанное на рисунке 9.5, отображает все процессы, принадлежащие данному родительскому процессу.
\ShuwArwBstiy^НЕЕ
■
1526^ sdtpreneas ‘;'
15462- dtt'N*- ^aw SMytAcestrtb,. -*wi Annular; False' ’-e- АйГ/йбЛапЛ15464„/usr/dt/bln/dle^ep -open r£ --ttarocld 3,uu2№ 01 14883*1283637087
1$4B5 /usr/prod/Wh/ptree 1^344
Рисунок 9.5.
Окно Show A ncestry.
Действие команда ptree эквивалентно выбору пункта Show Ancestry в окне Process Manager. Если у вас нет терминала, оснащенного графическим дисплеем, следует применять именно эту команду, которая отображает деревья родословных процессов, включающие указанные PID или пользователей. Дочерние процессы отображаются с отступом относительно соответствующих родительских процессов. Например, ниже приведено дерево процесса для dtlogin, который имеет P1D, равный 331:
ptree 331
Система отвечает следующим образом:
331 /usr/dt/bin/dtlogin -daemon
533 /bin/ksh /usr/dt/bin/Xsession
543 /usr/openwin/bin/fbconsole
578 /usr/dt/bin/sdt_shell -c unset DT; DISPLAY=:0; /usr/d
581 -sh -c unset DT; DISPLAY=:0; /usr/dt/bin/dtsession_
594 /usr/dt/bin/dtsession
601 dtwm
602 /usr/dt/bin/dtterm -session dtG2aa5a -C -Is
606 -sh
1796 sdtprocess
3299 prstat
603 /usr/dt/bin/sdtperfmeter -f -H -t cpu -t disk -si/ -name fpperfme
16461 /usr/dt/bin/dtexec -open 0 -ttprocid l.wv5ml 01 593/ 1289637086 1
16462 /usr/dt/bin/dtscreen -mode blank
Использование сигналов
Операционная система Solaris поддерживает концепцию передачи сигналов программного обеспечения некоторому процессу. Эти сигналы предоставляют другим процессам воз-
можность взаимодействовать с работающим процессом независимо от аппаратных средств системы. Для отправки сигнала некоторому процессу используется команда kill. Системный администратор наиболее часто применяет сигналы SIGHUP, SIGK1LL и SIGSTOP. Сигнал SIGHUP используется некоторыми утилитами для передачи какому-нибудь процессу уведомления о необходимости сделать что-либо, например, повторно прочесть собственный файл конфигурации. Сигнал SIGHUP посылается также какому-нибудь процессу, если телефонное соединение потеряно или зависло. Сигнал SIGKILL предназначен для прекращения, а сигнал S1GSTOP - для приостановки какого-нибудь процесса. Наиболее распространенные сигналы, которыми может воспользоваться администратор, описываются в таблице 9.11.
Таблица 9.11
Сигналь!, доступные в Solaris
Сигнал
Номер
Описание
SIGHUP
1
Зависание. Обычно означает, что управляющий терминал был отсоединен.
SIGINT
2
Прерывание. Пользователь может генерировать этот сигнал посредством нажатия на клавиатуре Ctrl+C или Delete.
SIGQUIT
3
Прекращает процесс и создает дамп памяти.
SIGILL
4
Недопустимая машинная команда.
SIGTRAP
5
Трассировка или прерывание в контрольной точке.
SIGABRT
6
Прерывание выполнения.
SIGEMT
7
Эмуляция внутреннего прерывания.
SIGFPE
8
Реакция на арифметическую ошибку. Информирует процесс об ошибке в операции с плавающей запятой.
SIGKILL
9
Завершение. Принудительно останавливает процесс. Это настоящее завершение.
SIGBUS
10
Ошибка шины.
SIGSEGV
11
Ошибка сегментации.
SIGSYS
12
Некорректный системный вызов.
SIGPIPE
13
Испорченный конвейер.
SIGALRM
14
Сигнал таймера.
SIGTERM
15
Прекращение. Мягкое завершение, оставляющее процессу шанс "убрать за собой".
SIGUSR1
16
Пользовательский сигнал 1.
SIGUSR2
17
Пользовательский сигнал 2.
SIGCHLD
18
Изменился статус дочернего процесса
SIGPWR
19
Авария электропитания или перезапуск системы.
SIGWINCH
20
Изменение размеров окна.
SIGURG
21
Возникновение неотлагательного условия на сокете.
SIGPOLL
22
Упорядоченное событие..
SIGSTOP
23
Останов (сигналом). Приостанавливает процесс.
SIGTSTP
24
Останов (пользователем).
Продолжение таблицы 9.11
Сигнал
Номер
Описание
SIGCONT
25
Продолжен.
SIGTTIN
26
Останов (входной информацией с терминала).
SIGTTOU
27
Останов (выходной информацией терминала).
SIGVTALRM
28
Истекло время виртуального таймера.
SIGPROF
29
Истекло время профильного таймера.
SIGXCPU
30
Превышен лимит времени центрального процессора.
SIGXFSZ
31
Превышен лимит на размер файла.
SIGWAITING
32
Параллельный сигнал, зарезервированный библиотекой потоков.
SIGLWP
33
Сигнал взаимодействия упрощенных процессов, зарезервированный библиотекой потоков.
SIGFREEZE
34
Замораживание контрольной точки.
SIGTHAW
35
Размораживание контрольной точки.
SIGCANCEL
36
Сигнал отмены, зарезервированный библиотекой потоков.
Кроме того, вы можете записать в программу подпрограмму реакции на особую ситуацию для получения отклика при отправке сигнала. Например, многие системные программы, такие как демои сервера имен, откликаются на сигнал SIGHUP путем повторного считывания собственных файлов конфигурации. Затем этот сигнал может быть использован для обновления данного процесса, пока он выполняется, без необходимости его завершения и повторного запуска. Однако для многих сигналов не может быть сделано ничего иного, как вывод на печать соответствующего сообщения об ошибке и завершение данного процесса.
Команда kill посылает сигнал прекращения (сигнал 15) конкретному процессу, и этот процесс прекращает выполняться. Сигнал 15, представляющий собой принятый по умолчанию сигнал, когда с командой kill не используется никаких опций, является сигналом мягкого завершения, который разрешает процессу выполнить работу по очистке перед тем, как прекратить выполняться. Сигнал 9, с другой стороны, вызывает истинное, безусловное завершение, поскольку процесс не может перехватить его или проигнорировать. Если конкретный процесс все еще существует после выдачи команды kill -9, то это означает либо то, что в ядре UNIX произошел останов и ядро ожидает какого-нибудь события, такого как завершение дисковой операции ввода-вывода, либо то, что вы не являетесь владельцем данного процесса.
Команда kill обычно используется для передачи сигналов некоторому процессу. Вы можете завершить любой процесс, владельцем которого являетесь, а суперпользователь может завершить все процессы в данной системе за исключением тех, которые имеют идентификаторы процессов 0, 1,2, 3 и 4. Команда kill имеет неудачное наименование, поскольку не каждый сигнал, посылаемый этой командой, используется для завершения некоторого процесса. Эта команда получила свое имя по наиболее распространенному ее применению - прекращению выполнения некоторого процесса с помощью сигнала kill -15.
С помощью команды kill вы можете послать какой-нибудь сигнал процессу, владельцем которого вы являетесь. Доступными являются разные сигналы, но в настоящее время вам следует позаботиться только о двух из них: 9 и 15. Для передачи какого-нибудь сигнала
процессу прежде всего воспользуйтесь командой ps, чтобы определить номер идентификатора данного процесса. Например, введите команду ps -ef для вывода списка всех процессов и поиска идентификатора того процесса, который вы хотите завершить:
ps -ef
UID PID PPIDС
STIME
TTY
TIME
CMD
root 000
Nov 27
7
0:01
sched
root 100
Nov 27
7
0:01
/etc/init -
root 200
Nov 27
7
0:00
pageout
root 300
Nov 27
7
12:52
fsflush
root 10110
/usr/sbin/in.routed
Nov 27
-q
7
0:00
root 29810
/usr/lib/saf/sac -t
Nov 27
300
7
0:00
root 11110
/usr/sbin/rpcbind
Nov 27
7
0:02
root 16410 Nov 27
/usr/sbin/syslogd -n -z 12
7
0:01
root 13810
/usr/sbin/inetd -s
Nov 27
7
0:00
root 11310
/usr/sbin/keyserv
Nov 27
7
0:00
root 16010
Nov 27
7
0:01
/usr/lib/autofs/automountd
root
4394240 Nov 27?
0:00
/bin/cat
/tmp/ root
.removable/notifyO
54974331 09:58:02 pts/4
0:00
script psef
ПРИМЕЧАНИЕ .
Достаточно распространенной является проблема, возникающая, когда какой-нибудь процесс, обычно называемый разветвляющимся, или порождающим, процессом, непрерывно запускает новые копии самого себя. Пользователи имеют ограничение на количество новых процессов, которые они могут порождать. Это ограничение устанавливается в ядре операционной системы с помощью значения MAXUP (Maximum Number of User Processes - максимальное количество пользовательских процессов). Иногда, вследствие ошибки пользователя, некоторый процесс продолжает порождать новые копии самого себя до тех пор, пока не достигнет предельного значения MAXUP. Как только пользователь достигает этого предела, система кажется находящейся в состоянии ожидания. Если вы завершите несколько этих пользовательских процессов, то система продолжит создание новых процессов от имени данного пользователя. Эта ситуация может быть безнадежной. Наилучший способ справиться с этими бесконтрольно размножающимися процессами - это послать сигнал STOP для приостановки всех процессов, а затем послать сигнал KILL для их завершения. Поскольку указанные процессы будут сначала приостановлены, то они не смогут создавать новые процессы, пока вы будете завершать их.
Для завершения процесса с идентификатором, равным 5497, введите следующую командную строку:
kill -15 5497
Еще одним способом завершения некоторого процесса является применение команды pkill. Команда pkill функционально идентична команде pgrep, которая была описана ранее, за исключением того, что вместо отображения информации о каждом процессе, она завершает выполнение процесса. В качестве первой опции командной строки для команды pkill должно быть задано имя сигнала или его номер. Значением сигнала может служить любое значение, описанное в таблице 9.11. Например, для завершения процесса с именем test выдайте следующую команду:
pkill -9 test
Если никакого сигнала не задано, то по умолчанию посылается сигнал S1GTERM (15).Кроме того, менеджер процессов среды СОЕ, который был описан ранее, также может быть использован для завершения процессов. В окне Process Manager выделите процесс, который вы хотите завершить, щелкните мышью кнопку Process на панели инструментов в верхней части этого окна и выберите из спускающегося меню Kill, как показаноЕсли никакого сигнала не задано, то по умолчанию посылается сигнал S1GTERM (15).Кроме того, менеджер процессов среды СОЕ, который был описан ранее, также может быть использован для завершения процессов. В окне Process Manager выделите процесс, который вы хотите завершить, щелкните мышью кнопку Process на панели инструментов в верхней части этого окна и выберите из спускающегося меню Kill, как показанона рисунке 9.6.на рисунке 9.6.Pr-ocetsJ §dit 4w Swpi*Pr-ocetsJ §dit 4w Swpi*Swp^f.vsry j^t"Swp^f.vsry j^t"RSH ^Seps-Started:.Parent:RSH ^Seps-Started:.Parent:€*«♦1*6€*«♦1*6^xck цр Ому.... г^xck цр Ому.... г* 9®^ Fi«j$ I#* 9®^ Fi«j$ I#Рисунок 9.6.Завершение процессов.Рисунок 9.6.Завершение процессов.trace Sy#U* £»lli,„Shw Stack...".'.Show grattry,., •У -e*it- - -trace Sy#U* £»lli,„Shw Stack...".'.Show grattry,., •У -e*it- - -Ctrl#!Ctrl#!6488САИ ■ 784 • 81046488САИ ■ 784 • 8104WOTWOT8684 Л:*5:'»<>*Ш Ярг.'Ч 1040 «3:45:1316048 1»г59;132412 fcr.23 •-45% 09:4^30- IM 13>:55:;1:Г 1Ж 09:45:138684 Л:*5:'»<>*Ш Ярг.'Ч 1040 «3:45:1316048 1»г59;132412 fcr.23 •-45% 09:4^30- IM 13>:55:;1:Г 1Ж 09:45:13$4946 tdl(*«50*f '1 • - :■3 Ziaf/nHtoj'iZMrt/X«« :й—гй9х»пег -^»tb-/v*MjftZft‘O9yli0Cle • '-14951 /usr/bW*3 -ft -o pideJU -o ?мм«Кз*» *o uter»5Mw -6 p»4,r*ssBf#t; -p vjt=' • .Ь96 »dt#F0PSS8 • •'' >'А. .Л «seaMvh‘-»;-d'l-92.ito^•1•'■ M prM#A/i ' • •’•• • v.p^ ksh -c;^r.4?tt»^?>^ -o pid=ip rd 'fne*e=*itee' .^'.цзеегОмпвг- -9 ’f^puirss^H . •$4946 tdl(*«50*f '1 • - :■3 Ziaf/nHtoj'iZMrt/X«« :й—гй9х»пег -^»tb-/v*MjftZft‘O9yli0Cle • '-14951 /usr/bW*3 -ft -o pideJU -o ?мм«Кз*» *o uter»5Mw -6 p»4,r*ssBf#t; -p vjt=' • .Ь96 »dt#F0PSS8 • •'' >'А. .Л «seaMvh‘-»;-d'l-92.ito^•1•'■ M prM#A/i ' • •’•• • v.p^ ksh -c;^r.4?tt»^?>^ -o pid=ip rd 'fne*e=*itee' .^'.цзеегОмпвг- -9 ’f^puirss^H . •: .. 3'PsHush' Td^ Oil' 14955 kshrpot 0.9: .. 3'PsHush' Td^ Oil' 14955 kshrpot 0.99 -.^23 ,1Ж 09»«ЗЯЗ9 -.^23 ,1Ж 09»«ЗЯЗ15689 rac.Mb .W <W 2529 4432 «9:38:46- 180 12699 anwshbt . roof0.0 11504 1Й72 08:22;15-112688 ■12698- A#«,- .root 0.9 1888 -4^ «.‘am ..««a§1 <fthV< ^r«ot 11929 ЛЛй root. 0.6 648015689 rac.Mb .W <W 2529 4432 «9:38:46- 180 12699 anwshbt . roof0.0 11504 1Й72 08:22;15-112688 ■12698- A#«,- .root 0.9 1888 -4^ «.‘am ..««a§1 <fthV< ^r«ot 11929 ЛЛй root. 0.6 648014951 Leh -c ZM4rZbit)/p* -flVi.ptdelD -o 'tnwfdfeee'■3432 «9:98:4». . 180 ^ttsfeewyerd . /’: ...14951 Leh -c ZM4rZbit)/p* -flVi.ptdelD -o 'tnwfdfeee'■3432 «9:98:4». . 180 ^ttsfeewyerd . /’: ...-9 MMyeftfiw# S 'ptfU.WBRHH-9 MMyeftfiw# S 'ptfU.WBRHH24й8^:ИйЗ'24й8^:ИйЗ'•,-6s9 .^jsty'dtftjr^'.iteiefT.tj^ rCUyocid 4,^5hl 01.593 1288657086 4-1.9 127,8.0.1 '.'639 dtftii^ifoyjeir. > Л"5$ AfflS -iyytei# '" ' . . ..’•,-6s9 .^jsty'dtftjr^'.iteiefT.tj^ rCUyocid 4,^5hl 01.593 1288657086 4-1.9 127,8.0.1 '.'639 dtftii^ifoyjeir. > Л"5$ AfflS -iyytei# '" ' . . ..’
Если никакого сигнала не задано, то по умолчанию посылается сигнал S1GTERM (15).
Кроме того, менеджер процессов среды СОЕ, который был описан ранее, также может быть использован для завершения процессов. В окне Process Manager выделите процесс, который вы хотите завершить, щелкните мышью кнопку Process на панели инструментов в верхней части этого окна и выберите из спускающегося меню Kill, как показано
Если никакого сигнала не задано, то по умолчанию посылается сигнал S1GTERM (15).
Кроме того, менеджер процессов среды СОЕ, который был описан ранее, также может быть использован для завершения процессов. В окне Process Manager выделите процесс, который вы хотите завершить, щелкните мышью кнопку Process на панели инструментов в верхней части этого окна и выберите из спускающегося меню Kill, как показано
на рисунке 9.6.
на рисунке 9.6.
Pr-ocetsJ §dit 4w Swpi*
Pr-ocetsJ §dit 4w Swpi*
Swp^f.vsry j^t"
Swp^f.vsry j^t"
RSH ^Seps-Started:.Parent:
RSH ^Seps-Started:.Parent:
€*«♦1*6
€*«♦1*6
^xck цр Ому.... г
^xck цр Ому.... г
* 9®^ Fi«j$ I#
* 9®^ Fi«j$ I#
Рисунок 9.6.
Завершение процессов.
Рисунок 9.6.
Завершение процессов.
trace Sy#U* £»lli,„
Shw Stack...".'.
Show grattry,., •
У -
e*it- - -
trace Sy#U* £»lli,„
Shw Stack...".'.
Show grattry,., •
У -
e*it- - -
Ctrl#!
Ctrl#!
6488
САИ ■ 784 • 8104
6488
САИ ■ 784 • 8104
WOT
WOT
8684 Л:*5:'»<
>*Ш Ярг.'Ч 1040 «3:45:13
16048 1»г59;13
2412 fcr.23 •
-45% 09:4^30- IM 13>:55:;1:Г 1Ж 09:45:13
8684 Л:*5:'»<
>*Ш Ярг.'Ч 1040 «3:45:13
16048 1»г59;13
2412 fcr.23 •
-45% 09:4^30- IM 13>:55:;1:Г 1Ж 09:45:13
$4946 tdl(*«50*f '1 • - :■
3 Ziaf/nHtoj'iZMrt/X«« :й—гй9х»пег -^»tb-/v*MjftZft‘O9yli0Cle • '-
14951 /usr/bW*3 -ft -o pideJU -o ?мм«Кз*» *o uter»5Mw -6 p»4,r*ssBf#t; -p vjt=' • .
Ь96 »dt#F0PSS8 • •'' >'
А. .Л «seaMvh‘-»;-d'l-92.ito^•1•'
■ M prM#A/i ' • •’•• • v.
p^ ksh -c;^r.4?tt»^?>^ -o pid=ip rd 'fne*e=*itee' .^'.цзеегОмпвг- -9 ’f^puirss^H . •
$4946 tdl(*«50*f '1 • - :■
3 Ziaf/nHtoj'iZMrt/X«« :й—гй9х»пег -^»tb-/v*MjftZft‘O9yli0Cle • '-
14951 /usr/bW*3 -ft -o pideJU -o ?мм«Кз*» *o uter»5Mw -6 p»4,r*ssBf#t; -p vjt=' • .
Ь96 »dt#F0PSS8 • •'' >'
А. .Л «seaMvh‘-»;-d'l-92.ito^•1•'
■ M prM#A/i ' • •’•• • v.
p^ ksh -c;^r.4?tt»^?>^ -o pid=ip rd 'fne*e=*itee' .^'.цзеегОмпвг- -9 ’f^puirss^H . •
: .. 3'PsHush' Td^ Oil' 14955 kshrpot 0.9
: .. 3'PsHush' Td^ Oil' 14955 kshrpot 0.9
9 -.^23 ,1Ж 09»«ЗЯЗ
9 -.^23 ,1Ж 09»«ЗЯЗ
15689 rac.Mb .W <W 2529 4432 «9:38:46- 180 12699 anwshbt . roof0.0 11504 1Й72 08:22;15-112688 ■12698- A#«,- .root 0.9 1888 -4^ «.‘am ..««a
§1 <fthV< ^r«ot 1192
9 ЛЛй root. 0.6 6480
15689 rac.Mb .W <W 2529 4432 «9:38:46- 180 12699 anwshbt . roof0.0 11504 1Й72 08:22;15-112688 ■12698- A#«,- .root 0.9 1888 -4^ «.‘am ..««a
§1 <fthV< ^r«ot 1192
9 ЛЛй root. 0.6 6480
14951 Leh -c ZM4rZbit)/p* -flVi.ptdelD -o 'tnwfdfeee'
■3432 «9:98:4». . 180 ^ttsfeewyerd . /’: ...
14951 Leh -c ZM4rZbit)/p* -flVi.ptdelD -o 'tnwfdfeee'
■3432 «9:98:4». . 180 ^ttsfeewyerd . /’: ...
-9 MMyeftfiw# S 'ptfU.WBRHH
-9 MMyeftfiw# S 'ptfU.WBRHH
24й8^:ИйЗ'
24й8^:ИйЗ'
•,-6s9 .^jsty'dtftjr^'.iteiefT.tj^ rCUyocid 4,^5hl 01.593 1288657086 4-1.9 127,8.0.1 '.'639 dtftii^ifoyjeir. > Л
"5$ AfflS -iyytei# '" ' . . ..’
•,-6s9 .^jsty'dtftjr^'.iteiefT.tj^ rCUyocid 4,^5hl 01.593 1288657086 4-1.9 127,8.0.1 '.'639 dtftii^ifoyjeir. > Л
"5$ AfflS -iyytei# '" ' . . ..’
Эквивалентной командой UNIX, которая используется менеджером процессов для завершения некоторого процесса, является
kill -9 <PID>
где <pid> - это идентификатор выбранного процесса.
ПРИМЕЧАНИЕ
Вы можете поменять команду, реализующую пункт меню Kill, на какую-нибудь другую команду путем переопределения действия "Kill" в следующем файле:
/usr/dt/appconfig/types/С/sdtprocess.dt
В приложении В представлена более подробная информация по конфигурированию среды CDE.
Планирование процессов
Процессы завершаются за время выполнения. Планирование - один из ключевых элементов в системах с разделением времени, определяет, какой из процессов будет выполняться следующим. Хотя в системе могут присутствовать сотни процессов, только один из них фактически использует центральный процессор в любой конкретный момент времени. Разделение времени на каком-нибудь центральном процессоре приводит к приостановке некоторого процесса и к его повторному запуску позднее. Поскольку приостанов и возобновление
процессов происходят по несколько раз в течение каждой секунды, то пользователю кажется, что данная вычислительная система одновременно выполняет множество задач.
UNIX пытается управлять приоритетностью процессов путем присвоения более высокого приоритета тем процессам, которые используют минимальное количество ресурсов центрального процессора. Кроме того, процессам, которые находятся в "спящем" состоянии до наступления некоторого события, такого как нажатие клавиши на клавиатуре, присваивайте более высокий приоритет, чем процессам, которые целиком зависят от центрального процессора.
На любой большой системе с несколькими одновременно работающими группами пользователей задача управления ресурсами ложится на плечи системного администратора. Эта задача является одновременно и технической, и политической. В качестве системного администратора вы должны понимать цели вашей компании, чтобы успешно управлять указанной задачей. Когда вы поймете политические последствия действий того, кто должен получить приоритет, вы будете готовы управлять техническими подробностями. В качестве суперпользователя вы можете изменять приоритет любого процесса на данной системе посредством использования команды nice или priocntl. Прежде, чем заняться этой работой, вы должны понять, как работают приоритеты.
Планирование приоритетов
Все процессы обладают назначенными им приоритетами выполнения. Приоритет представляет собой некоторое целочисленное значение, которое динамически вычисляется и обновляется на основе нескольких различных факторов. Всякий раз, когда центральный процессор оказывается свободным, планировщик выбирает наиболее предпочтительный процесс для возобновления его выполнения. Этот процесс выбирается среди процессов с наименьшим численным значением приоритета, поскодьку меньшие числа уровня приоритетности определяются как более предпочтительные по сравнению с большими числами. Несколько процессов, имеющих один и тот же уровень приоритетности, помещаются в очередь выполнения для данного уровня приоритетности. Всякий раз, когда центральный процессор оказывается свободным, планировщик запускает процессы из начала непустой очереди выполнения, которая имеет минимальный номер, то есть, наименьшее численное значение уровня приоритетности. Когда процесс, который находится вверху очереди, заканчивает свое выполнение, он перемещается в конец очереди, а следующий процесс перемещается вперед. Начав выполнение, некоторый процесс продолжает выполняться до тех пор, пока ему не потребуется ожидание завершения какой-нибудь операции ввода-вывода, пока он не примет некоторый сигнал прерывания или пока не закончится максимальный квант времени выполнения, определенный для данной вычислительной системы. Типичное значение кванта времени равняется 10 миллисекундам.
Процесс в UNIX имеет двое ассоциированных с ним численных значений приоритетов. Одно из этих численных значений представляет собой запрошенный приоритет выполнения данного процесса по отношению к другим процессам. Упомянутое значение (численное значение для nice) устанавливается владельцем процесса или суперпользователем; оно появляется в столбце NI листинга команды ps -I. Другим приоритетом, который назначается некоторому процессу, является его приоритет выполнения. Этот приоритет динамически вычисляется и обновляется операционной системой с учетом таких факторов, как численное значение сложности процесса, количество времени центрального процес-
сора, которое использовал данный процесс в последнее время, а также с учетом того, какие еще процессы выполняются и каковы их уровни приоритетности. Значение приоритета выполнения появляется в столбце PRI листинга команды ps -I.
Хотя центральный процессор является наиболее контролируемым ресурсом вычислительной системы, контролируется не только он один. При определении производительности компьютера одновременно учитываются значения использования памяти и диска, операции ввода-вывода и количество процессов. Например, предположим, что у вас имеется две группы пользователей, А и В. Обе группы требуют выделения большого количества памяти - больше, чем доступно в системе, при условии, что обе группы работают одновременно. Повышение приоритета группы А по отношению к группе В может не дать положительного эффекта, если группа В не освободит полностью используемую ею память. Хотя система страничного обмена через некоторое время освободит память, процесс подкачки какого-нибудь процесса может быть достаточно интенсивным и существенно снизить производительность вычислительной системы. Лучшей альтернативой в данном случае может быть полный останов группы В с помощью какого-нибудь сигнала и продолжение ее работы позднее, уже после того, как группа А завершит выполнение своих задач.
Изменение приоритета процесса, выполняемого в режиме разделения времени, при помощи команды nice
Команда nice поддерживается только для обеспечения обратной совместимости с предыдущими версиями операционной системы Solaris. Несравненно большую гибкость при решении задач управления процессами предоставляет команда priocntl. Приоритет некоторого процесса определяется его классом планирования и численным значением для nice. Каждый процесс, выполняемый в режиме разделения времени, имеет глобальный уровень приоритетности, который вычисляется путем добавления уровня приоритетности, представляемого пользователем. Этот уровень, в свою очередь, находится под влиянием команд nice или priocntl, а также приоритета, вычисляемого системой.
Численное значение уровня приоритетности процесса назначается операционной системой и определяется несколькими факторами, включая класс планирования этого процесса, количество времени центрального процессора, которое использовал данный процесс в последнее время, и численное значение для nice. Каждый процесс, выполняемый в режиме разделения времени, запускается с некоторым принятым по умолчанию численным значением приоритетности, унаследованным от своего родительского процесса. Численное значение отображается в столбце NI отчета команды ps.
Пользователь может понизить приоритет процесса посредством увеличения представляемого им численного значения. Только суперпользователь может повысить приоритет процесса посредством уменьшения его численного значения для nice. Это препятствует повышению пользователями уровней приоритетности их собственных процессов и, в связи с этим, монополизации большей части ресурсов центрального процессора.
В операционной системе UNIX численные значения nice могут находиться в диапазоне от 0 до +19. Наивысший приоритет равен 0. Доступны две версии команды nice: стандартная версия, /usr/bin/nice, и версия, интегрированная в командный процессор С в качестве встроенной функции.
Используйте команду nice так, как описывается в таблице 9.12, когда подаете какую- нибудь команду или программу.
тМбл1йц| 9,f2. Уст^новкаУрруор^ pp^eqci^e'|гё^nttee^'
КомандаОписание
Понижение приоритета процесса
nice <command_name>nice +4 <command_name>nice +10 <command_name>nice <command_name>nice +4 <command_name>nice +10 <command_name>Увеличивает значение nice на четыре (по умолчанию).
nice <command_name>
nice +4 <command_name>
nice +10 <command_name>
nice <command_name>
nice +4 <command_name>
nice +10 <command_name>
Увеличивает значение nice на четыре.
Увеличивает значение nice на десять.
Повышение приоритета процесса
nice -10 <command_name> Повышает приоритет заданной команды посредством уменьшения численного значения nice.
В качестве системного администратора вы можете применять команду renice для изменения приоритета некоторого процесса после того, как он был представлен. Синтаксис команды renice выглядит следующим образом:
renice priority -n <value> -p <pid>
Воспользуйтесь командой ps -el для поиска идентификатора того процесса, чей приоритет вы хотите изменить. В приведенном ниже примере процесс, приоритет которого вы хотите изменить, именуется largejob:
FS UIDPID PPIDСPRINI ADDR SZWCHAN TTYTIMECMC
9S 08200 410008420£0274е38 193?0:00largejob
Для повышения приоритета процесса с идентификатором 8200 выдайте следующую команду:
renice -п -4 -р 8200
Повторная выдача команды ps -el показывает данный процесс с увеличенным приоритетом:
■ F S UID PID PPID С PRI NI ADDR SZ WCHAN TTY TIME CMC
9 S 0 8200 410006012 f0274e38 193?0:00 largejob
Изменение планируемого приоритета процессов при помощи команды priocntl
Стандартная схема приоритетов начала улучшаться в Solaris как составная часть поддержки процессов реального времени в этой операционной системе. Процессы реального времени предназначаются для тех прикладных областей, в которых требуется практически немедленный отклик на события. При выполнении этим процессам предоставляется практически полный доступ ко всем системным ресурсам. Операционная система Solaris для режима разделения времени использует численные значения приоритетов в диапазоне от -20 до 20. Для изменения приоритетов процессов Solaris использует команду priocntl, которая введена в качестве усовершенствования команды nice. Чтобы воспользоваться командой priocntl для изменения приоритета процесса, наберите следующую командную строку:
priocntl -s -р <new-priority> -i pid <process-id>
здесь <new-priority> - это новое значение приоритета задаваемого процесса, a <process- id> - идентификатор процесса, приоритет которого вы хотите изменить.
Приведенный ниже пример демонстрирует, как установить уровень приоритетности для процесса 8200 в значение -5:
priocntl -s -р -5 -i pid 8200
Следующий пример демонстрирует, как установить приоритет (значение nice) для каждого процесса, созданного заданным родительским процессом:
priocntl -s -р -5 -I ppid 8200
В результате выполнения приведенной команды все процессы, порожденные процессом 8200, будут иметь приоритет, равный -5.
Значение приоритета, назначенного процессу, может быть отображено при помощи ранее описанной в настоящей главе команды ps.
Функциональность команды priocntl выходит далеко за пределы настоящего раздела, однако здесь приведены именно те сведения, которые необходимо знать для подготовки к сертификационному экзамену. Более подробную информацию о команде priocntl можно найти на страницах оперативного руководства.
Использование средств пакетной обработки в
Solaris
Один из способов разделения процессов на загруженной системе - это планирование работ таким образом, чтобы они запускались в различное время. Какая-нибудь большая работа, например, может быть запланирована на 2 часа после полуночи, когда данная система обычно будет простаивать. Операционная система Solaris поддерживает два метода пакетной обработки данных: команды crontab и at. Команда crontab планирует многочисленные системные события через регулярные интервалы времени, а команда at планирует какое-нибудь одно системное событие.
Конфигурирование crontab
Демон cron планирует системные события в соответствии с командами, найденными в каждом из файлов crontab. Файл crontab содержит команды, по одной в строке, которые будут выполняться через строго соблюдаемые интервалы времени. Начало каждой строки содержит пять полей даты и времени, которые сообщают демону cron, когда следует выполнять конкретную команду. Шестое поле представляет собой полное имя маршрута программы, которую вы хотите выполнять. Эти поля разделяются проблемами и описываются в таблице 9.13.
Таблица 9.13 Файл crontab" V Т■
Поле
Описание
Значение
1
Минута
От 0 до 59. Символ звездочки (*) в данном поле обозначает каждую минуту.
2
Час
От 0 до 23. Символ звездочки (*) в данном поле обозначает каждый час.
3
День месяца
От 0 до 31. Символ звездочки (*) в данном поле обозначает каждый день задаваемого месяца.
4
Месяц
От 0 до 12. Символ звездочки (*) в данном поле обозначает каждый месяц.
Поле
Продолжение таблицы 9.13
Описание
Значение
5
День недели
От 0 до 6 (значение 0 соответствует воскресенью). Символ звездочки (*) в данном поле обозначает каждый день задаваемой недели.
6
Команда
Введите команду, которая будет выполняться.
Ниже приведены некоторые правила, которыми следует руководствоваться при создании элементов файла crontab:
Ф Применяйте для разделения полей символ пробела.
Ф Применяйте запятую для разделения нескольких значений в любом из полей даты или времени.
Ф Применяйте символ дефиса (-) для задания некоторого диапазона значений в любом из полей даты или времени.
Ф Применяйте символ звездочки (*) в качестве символа подстановки для включения всех возможных значений в любое из полей даты или времени. Например, символ звездочки может быть использован в поле времени, что будет означать все допустимые значения данного поля.
Ф Применяйте символ комментария (#) в начале строки для обозначения комментария или пустой строки.
Ф Каждая команда в файле crontab должна состоять из одной строки, даже если она очень длинная, поскольку команда crontab не распознает дополнительные символы возврата каретки.
Приведенный ниже образец элемента команды crontab отображает напоминание в окне консоли пользователя в 5 часов пополудни первого и пятнадцатого числа каждого месяца:
0171,15** echo Hand in Timesheet > /dev/console
Файлы crontab находятся в каталоге /var/spool/cron/crontabs. Кроме того, несколько файлов crontab суперпользователя предоставляются в процессе инсталляции программного обеспечения SunOS; они также находятся в указанном каталоге. Другие файлы crontab именуются по учетным записям пользователей, для которых они создаются, например, bill, glenda, miguel или nicole. Эти файлы также находятся в каталоге /var/spool/cron/crontabs. Например, файл crontab с именем root предоставляется в процессе инсталляции программного обеспечения. Его содержимое включает в себя следующие командные строки:
103**0,4/etc/cron.d/logchecker
103**0/usr/lib/newsyslog
153**0/usr/lib/fs/nfs/nfsfind
12***[-x /usr/sbin/rtc ]&& /usr/sbin/rtc -c
> /dev/null 2>il
Первая командная строка передает системе директиву запускать команду logcliecker в 3:10 пополуночи по воскресеньям и по четвергам. Вторая командная строка планирует для системы запуск команды newsyslog в 3:10 пополуночи каждое воскресенье. Третья командная строка передает системе директиву запускать команду nfsfind в 3:15 пополуночи каждое воскресенье. Четвертая командная строка инструктирует систему выполнять проверку перехода на летнее время и производить коррекцию при необходимости. Если
отсутствует часовой пояс для часов реального времени или файл /etc/rtcconfig, то этот элемент не будет вызывать никаких действий.
Демон cron автоматически обрабатывает команды, запланированные в файле сrontab. Его функция заключается в проверке каталога /var/spool/cron/crontabs каждые 15 минут на предмет наличия в нем файлов crontab. Он проверяет наличие новых или изменения существующих файлов crontab, считывает времена выполнения, перечисленные в этих файлах, и подает команды на исполнение в надлежащее время.
Создание и редактирование файла crontab
Создание какого-нибудь элемента в файле crontab осуществляется так же просто, как и редактирование некоторого текстового файла в вашем любимом текстовом редакторе. Для редактирования указанного файла выполните операции, описанные далее; в противном случае внесенные вами изменения не будут распознаваться до тех пор, пока демон cron не будет запущен в очередной раз. Демон cron анализирует конфигурационные файлы crontab только в период его собственной инициализации или когда выполняется команда crontab. Это уменьшает накладные расходы, связанные с проверкой новых или измененных конфигурационных файлов на строго соблюдаемых интервалах времени планирования.
‘гтр^ЕЧДНИЕ^, '' '
Команда crontab выбирает принятый по умолчанию системный редактор, таковым является ed, если только вы не установите переменную EDITOR в значение /usr/bin/vi, как показано ниже:
EDITOR=vi/export EDITOR
;-Ш^заадагом;;^■' '-
Создание или редактирование файла crontab
(Это необязательная операция). Для создания или редактирования файла cron tab, принадлежащего суперпользователю или другому пользователю, зарегистрируйтесь в системе с привилегиями суперпользователя.
Создайте новый файл crontab или отредактируйте существующий, для чего наберите следующую команду:
crontab -е
Добавьте командные строки в этот файл, руководствуясь синтаксисом, описанным в таблице 9.13.
Сохраните изменения и выйдите из этого файла. Файл crontab помещается в каталог /var/spool/cron/crontabs.
Проверьте файл crontab, для чего наберите следующую команду: crontab -1
Система отвечает листингом содержимого файла crontab.
Управление доступом к crontab
Вы можете управлять доступом к crontab посредством внесения изменений в два файла, которые находятся в каталоге /etc/cron.d: файл cron.deny и файл cron.allow. Эти файлы разрешают только определенным пользователям выполнять задачи crontab, такие как создание, редактирование, отображение и удаление своих собственных файлов crontab. Файлы cron.deny
и cron.allow содержат списки имен пользователей, по одному имени в каждой строке. Эти файлы управления доступом работают совместно следующим образом:
Ф Если файл cron.allow существует, то только пользователи, перечисленные в этом файле, могут создавать, редактировать, отображать и удалять файлы crontab.
ф Если файл cron.allow не существует, то все пользователи, за исключением перечисленных в файле cron.deny, могут представлять файлы crontab.
ф Если ни файл cron.allow, ни файл cron.deny не существуют, то для запуска команды crontab требуются привилегии суперпользователя.
Для редактирования или создания файлов сron.deny и cron.allow требуются привилегии суперпользователя.
В процессе инсталляции программного обеспечения Solaris предоставляется принятый по умолчанию файл /etc/cron.d/cron.deny. Этот файл содержит следующие элементы:
Ф daemon
Ф bin
Ф smtp
Ф nuucp
<^ listen
<^ nobody
Ф noaccess
Ни один из пользователей, перечисленных в файле cron.deny, не может получить доступ к командам crontab. Системный администратор может отредактировать указанный файл для добавления других пользователей, которым будет запрещен доступ к команде crontab. По умолчанию файл cron.allow не поставляется. Это означает, что после инсталляции программного обеспечения Solaris все пользователи (за исключением пользователей, перечисленных в принятом по умолчанию файле cron.deny) могут получить доступ к crontab. Если вы создадите файл cron.allow, только перечисленные в нем пользователи смогут получить доступ к командам crontab.
Планирование одиночного системного события (команда at)
Команда at используется для планирования работ, которые будут выполняться позднее. В отличие от команды crontab, которая планирует какое-нибудь задание для многократного выполнения через строго соблюдаемые интервалы времени, задание, представленное с помощью команды at, выполняется только один раз в заданный момент времени.
Для предоставления задания команде at, наберите at. Затем определите команду, подлежащую выполнению, и время ее выполнения, как показано в примере, приведенном ниже: at 07:45am today at> who > /tmp/log at> <Press Control-d> job 912687240.a at Thu Jun 1 07:14:00 2000
Когда вы предлагаете задание команде at, ему назначается некоторый идентификационный номер, который становится именем файла данного задания с расширением .а. Этот файл сохраняется в каталоге /var/spool/cron/atjobs. Демон cron управляет планированием файлов команды at во многом точно так же, как он планирует задания для crontab.
Синтаксис команды at выглядит следующим образом:
at -m <time> <date>
Команда at описывается в таблице 9.14.
Таблица 9.14 Синтаксис команды at
ОпцияОписание
-тПосыпает вам сообщение электронной почты после выполнения задания.
<time>Час, на который вы хотите запланировать выполнение задания. Добавьте
к нему ат (до полудня) или рт (после полудня), если вы не задаете время в 24-часовом формате. Допустимыми ключевыми словами являются midnight (полночь), noon (полдень) и now (сейчас). Необязательным параметром являются минуты.
<date>Первые три или более букв представляют название месяца, название дня
недели либо ключевые слова today (сегодня) или tomorrow (завтра).
Вы можете установить файл для управления доступом к команде at, который будет разрешать только определенным пользователям создавать, удалять или отображать информацию очередей заданий, запланированных с помощью команды at. Файл, который управляет доступом к команде at, называется /etc/cron.d/at.deny. Этот файл содержит список имен пользователей, по одному имени в каждой строке. Пользователи, перечисленные в этом файле, не могут получить доступ к командам at. Файл at.deny, созданный в процессе инсталляции программного обеспечения SunOS, содержит следующие элементы:
ф daemon
Ф bin
ф smtp
ф nuucp
ф listen
Ф nobody
ф noaccess
Имея привилегии суперпользователя, вы можете редактировать этот файл для добавления других имен пользователей, которым вы хотите ограничить доступ к команде at.
Проверка заданий в очереди (команды atq и at -I)
Для проверки ваших заданий, которые ожидают в очереди команды at, следует воспользоваться командой atq. Эта команда отображает статус созданных вами заданий at. Команду atq следует применять также для проверки, что вы действительно создали задание для команды at. Команда atq подтверждает, что задания для at были поставлены в очередь, как показано в приведенном ниже примере: atq
Rank
Execution :
Date
Owner
Job
Queue
Job Name
1st
Jun 1, 2000
08:00
root
912690000.a
a
stdin
2nd
Jun 1, 2000
08:05
root
912690300.a
a
stdin
Еще одним способом для проверки заданий at является выдача команды at -I. Эта команда отображает статус всех заданий, представленных некоторым пользователем, как показано в приведенном далее примере:
at -1
user = root912690000. a Thu Jun 108:00:002000
user = root912690300.a Thu Jun 108:05:002000
Удаление заданий команды at и проверка удаления
Чтобы удалить задание из очереди at прежде, чем оно будет выполнено, наберите следующую команду:
at -г [job-id]
где job-id - идентификационный номер задания, которое вы хотите удалить.
Для проверки того, что задание для команды at действительно удалено, следует воспользоваться командой at -I (или командой atq), которая отображает задания, оставшиеся в очереди. Задание, идентификационный номер которого вы указали, больше не должно появляться в очереди. В приведенном ниже примере вам предстоит удалить задание для at, запланированное для выполнения на 8 часов утра 1 июня. Прежде всего, проверьте очередь at для определения идентификационного номера задания:
at -1
user = root912690000.aThu Jun108:00:002000
user = root912690300.aThu Jun108:05:002000
Затем удалите задание из очереди at:
at -г 912690000.а
Наконец, проверьте, что это задание действительно удалено из очереди команды at: at -1.
user = root912690300.aThu Jun 108:05:002000
Системный журнал
ПРИМЕЧАНИЕ ' J; 4.
Тема по системному журналу выносится на вторую часть экзамена.
Критически важной составной частью работы системного администратора является мониторинг системы. Для решения этой задачи Solaris использует средство сообщений под названием syslog. Программа syslogd - это демон, отвечающий за регистрацию системных сообщений. Такими сообщениями могут быть предупреждения, извещения или просто информационные сообщения. В качестве системного администратора вам предстоит настраивать системный журнал syslog для определения того, где и как будут храниться системные сообщения.
Демон syslogd принимает сообщения от приложений на локальном хосте или от дистанционных хостов и направляет эти сообщения в специальный файл протоколирования - системный журнал. К каждому сообщению, которое регистрируется в системном журнале, этот демон добавляет временную метку, ключевое слово типа сообщения в начале данного сообщения и новую строку в конце данного сообщения. Например, в файле /var/adm/ messages было зарегистрировано следующее сообщение:
Мау 12 06:50:36 ultraS Unix: NOTICE: alloc: /opt: file system full
Причем syslog позволяет вам регистрировать сообщения по оборудованию (часть системы, которая сгенерировала данное сообщение) и по уровню важности. Оборудование в данном контексте рассматривается как сервисная область, генерирующая данное сообщение (такая как печать, электронная почта или сеть), тогда как уровень можно представить себе как степень важности сообщения (например, уведомление, предупреждение, ошибка или аварийная ситуация). Системный журнал также позволяет вам пересылать сообщения на другую машину для того, чтобы все сообщения могли бы протоколироваться в одном месте. Демон syslogd считывает и протоколирует сообщения в некотором наборе файлов, описанных в кон- фигупянионном файле /etc/syslog.conf. Элемент файла /etc/syslog.conf состоит из двух полей- selector action
Поле selector содержит список спецификаций приоритетов, разделенных символами точки с запятой, в следующем формате:
facility.level [ ; facility.level ]
Поле action определяет, куда следует переслать данное сообщение.
Имеется множество определенных видов оборудования; они описываются в таблице 9.15.
Таблица 9.^ Распознаваемые значения для facility •: i. :'
Значение
Описание
user
Сообщения, создаваемые пользовательскими процессами. Это уровень приоритета по умолчанию для сообщений, которые поступают от программ или оборудования, не перечисленного в настоящем списке.
kern
Сообщения, генерируемые ядром.
Система электронной почты.
daemon
Системные демоны, такие как in.ftpd.
auth
Система авторизации, такая как login, su, getty и др.
Ipr
Система спулинга построчно-печатающих устройств, такая как Ipr, Ipc и т.д.
news
.Резервируется для системы сетевых новостей USENET.
uucp
Резервируется для системы UUCP. В настоящее время не использует механизм syslog.
cron
Средства планирования cron/at, включающие такие элементы, как crontab, at, cron и др.
localO-7
Зарезервировано для локального использования.
mark
Для временных меток сообщений, которые формируются внутри средствами syslogd.
*
Символ звездочки (*) означает все оборудование кроме mark.
В таблице 9.16 перечисляются распознаваемые значения для поля level системного журнала. Они перечисляются в порядке убывания степени серьезности ситуации.
|^^^48^16 Распознаваемые значения для nonnlevel -
ЗначениеОписание
emerg
Для сбойных ситуаций, о которых обычно оповещаются все пользователи.
alert
Для ситуаций, которые должны быть исправлены незамедлительно, таких как поврежденная системная база данных.
Продолжение таблицы 9.16
Значение
Описание
crit
Для предупреждений о критических ситуациях, таких как ошибки на жестком диске.
err
Для других видов ошибок.
warning
Для предупреждающих сообщений.
notice
Для ситуаций, которые не являются сбойными, однако могут потребовать специальной обработки.
info
Информационные сообщения.
debug
Для сообщений, которые обычно используются только при отладке программы.
none
Не посылает сообщений от обозначенного средства в выбранный файл. Например, элемент *.debug;mail.none в файле /etc/syslog.conf будет посылать в выбранный файл все сообщения, исключая сообщения электронной почты.
Значения для поля action могут иметь один из четырех форматов, которые приведены ниже: Ф Имя файла, начинающееся с ведущего символа косой черты. Это означает, что сообщения, указанные селектором, будут записываться в заданный файл. Этот файл будет открыт в режиме дозаписи.
Ф Имя дистанционного хоста, начинающееся с символа @. Примером является запись @server, которая обозначает, что сообщения, заданные селектором, будут пересылаться демону syslogd на поименованный хост, loghost - это имя хоста, присвоенное машине, которая будет протоколировать сообщения для syslogd. По умолчанию каждая машина является узлом "loghost". Это указывается в локальном файле /etc/hosts. Можно также определить одну машину в сети в качестве узла "loghost", создав для этого соответствующие элементы в таблице хостов. Если локальная машина определена как узел "loghost", то сообщения syslogd записываются в соответствующие файлы. В противном случае эти сообщения пересылаются на машину "loghost" в сети.
ф Список имен пользователей, разделенных запятыми, обозначает, что сообщения, указанные селектором, будут записываться поименованным пользователям, если они зарегистрированы в системе.
ф Символ звездочки (*), обозначающий, что сообщения, указанные селектором, будут записываться всем зарегистрированным в системе пользователям.
Пустые строки при этом игнорируются. Строки, в которых первый символ не пробел и не символ табуляции, а является символом #, рассматриваются как комментарии.
Все вышеизложенное становится более понятным, если взглянуть на приведенные ниже образцы элементов из файла /etc/syslog.conf:
*.err /dev/console
*.err;daemon,auth.notice;mail.crit/var/adm/messages
mail.debug /var/spool/mqueue/syslog
*.alertroot
*.emerg*
kern.err 0 server
*.alert;auth.warning /var/log/auth
В данном примере первая строка выводит на консоль все сообщения об ошибках.
Вторая строка посылает все сообщения об ошибках, уведомления демонов и системы аутентификации и все сообщения о критических ошибках от системы электронной почты в файл /var/adm/messages.
Третья строка посылает все отладочные сообщения системы электронной почты в файл /var/spool/mqueue/syslog.
Четвертая строка посылает суперпользователю все сообщения уровня alert.
Пятая строка рассылает все сообщения о критических ситуациях всем пользователям.
Шестая строка посылает все сообщения ядра уровня err или более высоких уровней на машину, имеющую имя server.■
Наконец, последняя строка регистрирует все сообщения системы санкционирования доступа, имеющие уровень alert или более высокий уровень, в файле /var/log/auth.
Уровень попе может быть использован для отключения какой-нибудь из возможностей. Обычно это делается в случае исключения сообщений. Например, следующий элемент файла /etc/syslog.conf:
*.debug;mail.none /var/adm/messages
выбирает отладочные сообщения отовсюду за исключением системы электронной почты. Система электронной почты под названием sendmail протоколирует ряд сообщений. Эта информация может иметь очень большой объем, поэтому некоторые системные администраторы отключают сообщения электронной почты или посылают их в другой файл, который они достаточно часто очищают. Однако прежде, чем отключить сообщения электронной почты, вспомните, что сообщения sendmail являются очень удобными, когда вы разбираетесь с проблемами электронной почты или отслеживаете поддельные почтовые сообщения.
Демон syslogd запускается на ранних стадиях многопользовательской загрузки системы из каталога /etc/rc2.d с помощью сценария, называемого S74syslog. Для перезапуска системной регистрации (протоколирования в системном журнале) выдайте следующие команды:
/etc/rc2.d/S74syslog stop
/etc/rc2.d/S74syslog start
Компонент регистрации считывает свою конфигурационную информацию из файла /etc/syslog.conf всякий раз при получении сигнала HUP (например, при выдаче команды kill -HUP). Первое сообщение всегда протоколируется самим демоном syslogd, когда он помещает временную метку того времени, когда сам был запущен.
Другие важные файлы, в которых протоколируется информация
Операционная система Solaris имеет множество файлов, в которых хранится информация протоколов. Большинство этих файлов сохраняется в каталоге /var/adm. В приведенном списке таких файлов протоколирования описывается информация, содержащаяся в них:
Ф /var/adm/messages. Файл сообщений хранит информацию, которая выводится на консоль. Эта информация может включать случаи регистрации в системе с привилегиями суперпользователя и попытки использования команды su.
Ф /var/adm/lastlog. Этот файл хранит информацию о времени самой последней регистрации каждого пользователя в данной системе.
Ф /var/adm/utmpx. Файл базы данных utmpx содержит информацию о доступе пользователей и учетных записей таких команд, как who, write и login. Файл utmpx - это именно тот файл, в котором сохраняется такая информация, как линия терминала.
Ф /var/adm/wtmpx. Файл wtmpx содержит протокол доступа пользователей и информацию учетных записей для базы данных utmpx. Файл wtmpx отслеживает все входы в систему и выходы из нее после последней перезагрузки системы. Команда last, которая была описана в главе 8, считывает данный файл и обрабатывает его информацию.
Ф /var/adm/acct. Это файл учета ресурсов системы. Если этот файл подключен, то для каждого процесса в нем регистрируется запись со следующей информацией: имя пользователя, который запустил команду, имя данной команды, использованное время центрального процессора, временная метка завершения данного процесса и флаг, указывающий статус завершения. Информация по учету использования ресурсов системы может быть очень полезной для анализа, кто и что делает на вашей системе.
Ф /var/adm/sulog. Файл sulog хранит записи по каждому, кто воспользовался в системе командой su. Ниже приведен пример файла suing:
SU
04/29
09:39 н
h console
root-daemon
SU
04/29
15:29 н
h console
root-daemon
SU
05/02
05:38 н
н console
root-daemon
SU
05/12
06:20 н
н console
root-daemon
SU
05/12
07:59 я
h pts/1 1
:oot-bcalkins
Ф /var/cron/log. Регистрирует каждое действие демона cron.
Качественное системное администрирование требует, чтобы вы регулярно просматривали ваши системные журналы и держали под контролем их размеры. Некоторые из перечисленных выше файлов могут разрастаться до огромных размеров и быстро заполнять файловую систему.
Резюме
В настоящей главе описываются процессы операционной системы Solaris и различные утилиты для мониторинга этих процессов. Используя такие команды как ps, prstat и sdtprocess, вы сможете просмотреть все атрибуты, связанные с некоторым процессом.
Была описана концепция передачи сигналов процессу. Сигнал представляет собой сообщение, посылаемое процессу для прерывания его выполнения и вызывающее какой- нибудь отклик со стороны процесса. Вы также узнали, как посылать сигналы процессам для получения некоторой реакции, такой как завершение процесса.
Также была описана установка приоритетов процессов. При этом были представлены различные команды, такие как nice и priocntl, используемые для установки и изменения приоритетов процессов. Кроме того, была описана технология применения crontab и at. Эти средства следует использовать для представления пакетных заданий и планирования выполнения процессов в то время, когда система загружена в меньшей степени, с целью уменьшения потребности в системных ресурсах, таких как центральный процессор и диски.
Глава 9. Управление процессами 341 Примените ваши знания
Наконец, было описано средство протоколирования сообщений - syslog. Программа syslogd - это демон, несущий ответственность за регистрацию системных сообщений, таких как предупреждения, сообщения об аварийных ситуациях или информационные сообщения. Вам предстоит контролировать эти сообщения с профилактическими целями для разрешения проблем, которые могут возникнуть на вашей системе.
Системному администратору необходимо быть осведомленным о процессах, принадлежащих каждому приложению. Как только пользователи сообщат о проблемах, системный администратор может быстро локализовать используемый процесс и выявить аномальные ситуации. Постоянно наблюдая за системными сообщениями и процессами, вы сможете хорошо представлять, что является нормальным, а что - ненормальным. Не ждите, когда возникнет проблема, а ежедневно наблюдайте за системными сообщениями и процессами. Создайте сценарии оболочки для наблюдения за процессами обнаружения аномальных ситуаций в файлах системного журнала. Применяя превентивный подход к организации системного администрирования, вы сумеете обнаружить проблемы раньше, чем они окажут влияние на ваших пользователей.
В главе 10 мы изучим еще одну тему, с которой вам необходимо хорошо разобраться - службу печати LP, средство, которое несет ответственность за всю печать в среде Solaris.
Ключевые термины
Процесс
Команда ps
Команда pgrep
Системный журнал (syslog)
Файл crontab
Команда priocntl
Команда nice
Команда prstat
Команда ps
Менеджер процессов среды CDE
Примените ваши знания
упражнения".
Отображение информации процессов
При выполнении настоящего упражнения вам предстоит использовать различные утилиты, описанные в настоящей главе, для отображения информации об активных процессах.
Оцениваемое время: 10 минут
Зарегистрируйтесь как суперпользователь в среде CDE.
Откройте новое окно и отобразите информацию об активных процессах, воспользовавшись для этого командой ps:
ps -ef <cr>
Откройте еще одно новое окно и отобразите информацию об активных процессах, воспользовавшись для этого командой prstat:
prstat <cr>
Обратите внимание на то, что команда ps предоставляет моментальный снимок активных процессов, в то время как команда prstat продолжает обновлять их отображение.
Введите q для выхода из команды prstat.
Выведите на экран информацию о процессе dtlogin и обо всех его дочерних процессах. Прежде всего с помощью команды pgrep получите информацию об идентификаторе процесса dtlogin:
pgrep dtlogin
Теперь воспользуйтесь командой ptree с найденным значением PID процесса dtlogin для отображения его родословного дерева:
ptree 331
А теперь запустите менеджер процессов.
sdtprocess &
Обратите внимание на то, что его окно периодически обновляется.
В поле sample в верхней части окна измените период выборки с 30 секунд на 5 секунд.
Отсортируйте процессы по значениям их идентификаторов, щелкнув для этого кнопку ID в заголовке.
Использование сигналов
При выполнении следующего упражнения вам предстоит использовать сигналы для завершения процесса.
Оцениваемое время: 10 минут
Зарегистрируйтесь в системе как суперпользователь.
Определите значение идентификатора для процесса sdtprocess:
pgrep sdtprocess
Завершите данный процесс.
kill -9 <PID of sdtprocess>
Перезапустите менеджер процессов.
sdtprocess &
Завершите процесс void из менеджера процессов.
Сначала найдите процесс void, для чего наберите void в поле Filter в верхней части окна Process Manager.
Выделите на экране процесс void.
Выберите Process на панели инструментов в верхней части экрана.
Выберите Kill из опускающегося меню.
Глава 9. Управление процессами J^J Примените ваши знания■
Использование пакетного процесса
При выполнении настоящего упражнения вам предстоит использовать crontab, чтобы сконфигурировать некоторый процесс для ежедневного выполнения в заданное время.
Оцениваемое время: 10 минут
Зарегистрируйтесь как суперпользователь в сеансе СОЕ.
Откройте новое окно и отредактируйте элемент файла crontab. crontab -е
Введите следующий текст за последней строкой файла:
0 11 * * * echo Hand in Timesheet > /dev/console
Сохраните данный файл и закройте его. Откройте консольное окно в 11 часов и вы увидите на экране сообщение "Hand in Timesheet".
Обзорные вопросы
Какая из перечисленных ниже команд находит все процессы, содержащие выражение "dt" в строке аргументов процесса? Выберите все приемлемые варианты.
pgrep -1 -f "dt"
ps -ef "dt"
ps-el"dt"
ps -ef|grep "dt"
Какие команды могут быть использованы для мониторинга системных процессов?
prstat •
psrset
ptree
sdtprocess
Какая из перечисленных ниже команд завершает процесс по имени test?
pkill -9 test
kill -9 test
ps -ef]|grep kill| kill -9
D. kill test
Какие из команд отображают активные системные процессы и обновляют информацию через определенный интервал времени? Выберите все приемлемые варианты.
ps•
prstat■
sdtprocess
ptree
Что констатирует символ "R" в поле S выходной информации команды ps?
Процесс находится в очереди запуска.
Процесс принимает входную информацию.
Это обычный процесс.
Процесс находится в "спящем" состоянии, поэтому он должен быть перезапущен.
Что из перечисленного ниже отображает поле DID в выходной информации команды ps?
Родительский процесс
Идентификатор данного процесса
Владельца процесса
Приоритет процесса
Какая из перечисленных ниже опций команды ps выводит только процессы конкретного пользователя?
-р
-f
-1
-и
Какая из перечисленных ниже опций команды ps выводит только процессы, связанные с локальным терминалом?.
А. -1
В. -а
С. -f
D. -t
Что из перечисленного ниже посылает сигнал завершения (сигнал 15) процессу, P1D которого равен 2930?
A. kill 2930
В. stop 2930
С. Ctrl+C
D. cancel 2930
Какой из перечисленных сигналов останавливает некоторый процесс безусловным образом?
А. 9
В. 0
С. 15
D. 1
Какая из команд применяется для изменения приоритета процесса?
A. nice
В. priocntl
С. ps
D. hup
Глава 9. Управление процессами J^D Примените ваши знания
Какая из перечисленных ниже команд выдается для повышения приоритета процесса с PID 8200?
renice -п -4 -р 8200
nice -п -4 -р 8200
С. nice -i 8200
renice -I -p 8200
Какие утилиты могут быть использованы для отображения родословного дерева процесса? Выберите все приемлемые варианты.
ps
ptree
sdtprocess
prstat
Какая из следующих команд планирует выполнение некоторой команды однократно в заданное время?
A. crontab .
В. priocntl
С. at
D. cron
Какая из команд демонстрирует задания, поставленные в очередь с помощью команды at?
atq
at -1
ps
D. crontab
Какой из перечисленных ниже элементов crontab приказывает системе запустить logchecker в 3:10 ночи в воскресенье и четверг?
0 4 ** 10,3/etc/cron.d/logchecker.
10 3 * * 0,4 /etc/cron.d/logchecker
* 10 3 0,4 /etc/cron.d/logchecker
10 3**0-4 /etc/cron.d/logchecker
Что из перечисленного ниже является демоном, ответственным за регистрацию системных сообщений?
syslogd
messaged
С. init
D. msgd
Что из перечисленного представляет собой строку файла /etc/syslog.conf, которая посылает все сообщения об аварийных ситуациях пользователю root?
А. *.alert root■
В. alert root
С. root *.alert
D. *.emergroot
Какой из файлов протоколов (журналов) обеспечивает регистрацию всей деятельности cron?
/var/cron/log
/var/spool/cron/log
/var/adm/cron
/var/adm/messages
На каком уровне запуска стартует демон syslog?
2"
1
3
Стартует на всех уровнях запуска.
Какой из файлов хранит самое последнее время регистрации каждого пользователя в системе?
/var/adm/lastlog
/var/adm/messages
/var/adm/acct
/var/adm/utmpx
Некий пользователь хочет сегодня попозже - после окончания работы - выполнить некую команду. Какая из следующих команд позволит ему сделать это?
A. runat
at
submit
Ни одна из перечисленных выше
Ответы на обзорные вопросы
A, D. Для просмотра процессов, запущенных на вашей системе, используйте команды pgrep и ps. Команды pgrep -1 -f "dt" и ps -ef]grep "dt" находят все процессы, которые содержат выражение "dt" в строке аргументов процесса, и отображают их.
D. Новым в операционной системе Solaris 8 является менеджер процессов среды CDE, sdtprocess, который представляет собой графический инструмент среды СОЕ в форме окна для мониторинга и управления системными процессами.
А. Команда pkill -9 test завершает процесс по имени test.
В, С. Команды prstat и sdtprocess отображают активные системные процессы и могут быть сконфигурированы для обновления информации через определенный интервал времени.
А. Символ "R" в поле "S" выходной информации команды ps обозначает, что данный процесс находится в очереди запуска.
Примените ваши знания
С. Поле U1D в выходной информации команды ps отображает владельца процесса.
D. Опция -и команды ps выводит только процессы конкретного пользователя.
В. Опция -а команды ps выводит только процессы, связанные с локальным терминалом.
А. Команда kill 2930 посылает сигнал завершения (сигнал 15) процессу, P1D которого равен 2930.
А. Сигнал 9 останавливает процесс безусловным образом.
А, В. Команды nice и priocntl используются для изменения приоритета процесса.
А. Команда renice -п -4 -р 8200 выдается для повышения приоритета процесса, значение P1D которого равняется 8200.
В, С. Утилиты ptree и sdtprocess используются для отображения родословного дерева данного процесса.
С. Команда at планирует выполнение некоторой команды однократно в заданное время.
А, В. Команды atq и at -1 демонстрируют задания, поставленные в очередь с помощью команды at.
В. Элемент crontab вида 10 3* *0,4 /etc/cron.d/logchecker приказывает системе запустить logchecker в 3:10 ночи в воскресенье и четверг.
А. Программа syslogd - демон, ответственный за регистрацию системных сообщений.
А. Элемент *.alert root из файла /etc/syslog.conf сообщает демону syslogd о необходимости посылать все сообщения об аварийных ситуациях пользователю root.
А. Файл протокола (журнал) по имени /var/cron/log обеспечивает регистрацию всей деятельности cron.
А. Демон syslog стартует на уровне запуска 2.
А. Файл /var/adm/lastlog хранит самое последнее время регистрации каждого пользователя в системе.
В. Команда at применяется для выполнения некоторой команды или сценария в более позднее время.
Глава 10Глава 10Служба печати LPСлужба печати LP
Глава 10
Глава 10
Служба печати LP
Служба печати LP
Темы
В настоящей главе рассматриваются следующие темы экзамена:
Понимание службы печати LP операционной системы Solaris
Установка и администрирование принтеров в Solaris требуют понимания спулера печати, демонов печати и конфигурационных файлов принтеров. Каждый из этих компонентов будет описан в настоящей главе.
Управление принтерами
Для управления принтерами в операционную систему Solaris 8 включено несколько утилит и команд. Такие часто используемые утилиты и команды будут описаны в настоящей главе.
Содержание '
(Введение349
Оук^а печати операционной системы Solaris350
Каталоги службы печати £Ф351
Спулер печати351
©емоны печати ЕФ352
Установка аппаратные средств353
Соединение 'Ethernet354
Параллельное соединение354
Последовательное соединение354
Установку программного обеспечения354
(Версии (BS© программного обеспечения печати из бУф^355
(Версии сервера и клиента печати357
Конфигурирование программного обеспечения принтера в среде Solaris358
Использование принтера, отсутствующего в меню типов принтеров361
Администрирование принтеров362
Удаление принтеров и управление доступом купим■362
Создание классов принтеров364
Проверку статуса принтера365
Управление очередями принтеров366
Перезапускпланировщикд. печати371
Установка для пользователя принятого по умолчанию принтера372
(Модифицирование принтера при помощи Admintool372
(Резюме374
Примените ваши знания375
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
Как вы сможете заметить, в настоящей главе отсутствует демонстрация многих длительных пошаговых процедур, однако приводится несколько команд, используемых для управления принтерами, и анализируется порядок применения этих команд. Попрактикуйтесь в выполнении пошаговых упражнений и в применении команд и убедитесь в том, что вы понимаете, где и когда следует их использовать.
Обратите особое внимание на различия между службами печати, организованными в стиле SVR4 и в стиле BSD.
Убедитесь в том, что вы понимаете разницу между сервером и клиентом печати. Разберитесь в различиях между локальными и сетевыми принтерами и обратите особое внимание на различные файлы конфигурации, используемые для определения некоторого принтера.
Введение
Принтеры представляют собой стандартное периферийное оборудование для любой компьютерной системы. Многопользовательская природа операционного окружения означает, что программное обеспечение принтера в Solaris является более сложным, чем аналогичное программное обеспечение для однопользовательской системы. Добавление какого-нибудь принтера к системе Solaris требует большего, чем просто подключения.
В настоящей главе описывается, как установить локальные принтеры, установить доступ к дистанционным принтерам и выполнить некоторые задачи администрирования принтера при помощи GUI утилиты Admintool или командной строки. Большинство потребностей системного администратора в части установки служб печати, добавления принтеров к серверам или добавления доступа от клиентов печати к дистанционным принтерам на серверах печати должно удовлетворяться средствами утилиты Admintool. Установка какого-нибудь принтера из командной строки может представлять собой достаточно сложную задачу. В настоящей главе сначала анализируются аппаратные проблемы, связанные с подключением какого-нибудь принтера к системе Solaris, прежде, чем перейти к рассмотрению более сложной части этого процесса - конфигурированию программного обеспечения.
Служба печати операционной системы Solaris
Представляет собой кластер программного обеспечения, который инсталлируется по умолчанию при первоначальной инсталляции операционной системы. Для проверки того, что данный кластер программного обеспечения инсталлирован, найдите с помощью команды pkginfo, которая была описана в главе 4, следующие пакеты программного обеспечения.
SUNWIpmsg
Программы ToolTalk для передачи предупреждающих сообщений ("сигналов тревоги") от принтера.
SUNWfdl
Загрузчик шрифтов рабочего стола Solaris (Solaris Desktop Font Downloader) для принтеров Adobe PostScript.
SUNWscpip
SunSoft Print-Source Compatibility, (Usr). Утилиты печати для организации интерфейса пользователя и построения совместимости с операционной системой SunOS 4.x.
SUNWsIpr
Часть корневой (/) файловой системы, относящаяся к структуре протокола SLP (Service Location Protocol - протокол размещения службы); включает в себя файл конфигурации и сценарии запуска для демона SLP.
SUNWsIpu
Часть файловой системы /usr, относящаяся к структуре протокола SLP.
SUNWsIpx
64-разрядные библиотеки разработчика на основе протокола SLP.
SUNWmp
Фильтр печати MP (make pretty - делать лучше).
SUNWpcr
Конфигурационные файлы клиента и утилиты службы печати.
SUNWpcu
Конфигурационные файлы клиента и утилиты службы печати.
ПРИМЕЧАНИЕ ’ • ' *
SLP - это протокол, разработанный IETF (Internet Engineering Task Force - оперативным инженерным отрядом Internet), для обнаружения разделяемых ресурсов (таких как принтеры, файл-серверы, сетевые камеры и пр.) в сети масштаба предприятия. Операционная среда Solaris 8 содержит полный инструментарий протокола SLP, который включает в себя API (Application Programming Interface - интерфейс прикладного программирования), позволяющий разработчикам создавать приложения, использующие протокол SLP; системным администраторам также предоставляется набор средств для упрощения расширяемости сети.
ПРИМЕЧАНИЕ НАУЧНОГО РЕДАКТОРА
IETF - это группа волонтеров, изучающих и решающих проблемы Internet и дающих рекомендации.
Установка принтера в среде Solaris включает в себя установку спулера, демона печати и аппаратных средств (собственно принтера и порта принтера). Системному администра-
тору необходимо убедиться, что данный компьютер имеет, по крайней мере, 8 Мбайт дискового пространства, доступного для каталога/var/spool/lp. Файлы печати будут пересылаться в этот каталог для подготовки их к выводу на печать. Создаются и другие файлы конфигурации, по об этом заботится операционная система Solaris. При установке какого- нибудь принтера Solaris вносит, по мере необходимости, соответствующие изменения в системный файл /etc/printers.conf и в каталог/etc/lp.
Каталоги службы печати LP
Служба печати LP включает в себя следующую структуру каталогов, файлы и протоколы (файлы регистрации, или журналы):
ф /usr/bin. Этот каталог содержит команды пользователя службы печати LP.
ф /usr/sbin. Этот каталог содержит команды администрирования службы печати LP.
ф /usr/share/lib/terminfo. Этот каталог содержит базу данных terminfo, которая описывает возможности устройств, таких как принтеры и терминалы. База данных terminfo обсуждается далее в настоящей главе.
^ /usr/lib/lp. Этот каталог содержит демоны службы печати LP, двоичные файлы, используемые службой печати, фильтры PostScript и принятые по умолчанию программы интерфейса принтера.
ф /usr/lib/lp/postscript. Этот каталог содержит все программы фильтров PostScript, которые предоставляются службой печати LP в среде Solaris. Фильтры печати используются для преобразования содержимого запроса печати в некоторый формат, который воспринимается адресуемым принтером.
ф /etc/lp. Этот каталог содержит конфигурационные файлы службы печати LP. Эти файлы редактируются с использованием инструментов конфигурирования службы печати, которые описываются далее в настоящей главе.
ф /etc/lp/interfaces. Этот каталог содержит файл программы интерфейса для каждого принтера. Компоненты этого каталога специфичны для каждого принтера, инсталлированного в системе.
ф /etc/lp/printers. В этом каталоге содержатся подкаталоги для каждого локального принтера, присоединенного к системе. Каждый подкаталог содержит конфигурационную информацию и файлы предупреждений для своего принтера.
ф /var/spool/lp. Здесь хранятся все текущие запросы печати до тех пор, пока они не начнут выводиться на печать.
Ф /var/lp/logs. Этот каталог содержит протокол истории, или журнал, запросов ■ печати.
Спулер печати
Слово "spool" расшифровывается как "Simultaneous Peripheral Operations OnLine" - одновременное функционирование периферийного оборудования в оперативном режиме. Спулер также называется очередью. Пользователи выполняют программу спулера печати 1р, когда они хотят что-нибудь напечатать. Затем спулер печати берет то, что хочет распечатать пользователь, и помещает это в свой предопределенный каталог /var/spool/lp.
Область спула - это часть дискового пространства, используемая для хранения и обработки запросов в очереди печати. Размер каталога /var зависит от размера диска и от его разбивки на разделы. Если каталог /var не был создан в качестве отдельного раздела, он использует часть дискового пространства корневой файловой системы, которая обычно достаточно мала. Каталог большого спула может занимать 600 Мбайт дискового пространства. Обратите внимание на размер и разбивку дисков, доступных на системах, которые могут быть назначены для использования в качестве серверов печати (принт-серверов).
При подключении принтеров прежде всего тщательно оцените потребности пользователей в печати и ее предполагаемую интенсивность. Если пользователи, как правило, печатают только короткие файлы ASCII без предъявления сложных требований к форматированию, то, по-видимому, будет вполне достаточен сервер печати, на котором выделено 20-25 Мбайт дискового пространства под каталог /var. Однако если многие пользователи печатают объемные файлы PostScript, то они, вероятно, будут достаточно часто переполнять пространство спула. Когда каталог /var заполняется и пользователи не могут поставить в очередь свои задания на печать, рабочий процесс прерывается. Размер каталога /var устанавливается, когда загружается операционная система и производится разбивка дисков на разделы.
' ПРЕДУПРЕЖДЕНИЕ ; ; ; у'■
Некоторые задания на печать потребляют большое количество дискового пространства. Фактически известны документы, которые потребляли свыше 800 Мбайт, когда осуществлялась буферизация их выходных потоков на принтер. Когда каталог /var выходит за пределы отведенного ему дискового пространства, многие системные функции, такие как печать, протоколирование сообщений и электронная почта, не могут продолжать выполняться. Убедитесь, что при установке вашей системы вы предоставили достаточное дисковое пространство под каталог /var.
Для пользователей SunOS программа 1р из SVR4 эквивалентна программе печати Ipr из BSD. В SunOS спулер печати размещается в каталоге /usr/spool. Когда фирма Sun перешла от SunOS 4.x, которая базировалась на BSD UNIX, к SunOS 5.x, которая базируется на SVR4 UNIX, системы печати BSD и SVR4 несколько отличались. В настоящей главе будут делаться ссылки на систему печати BSD для системных администраторов, которые могут быть хорошо знакомы с ней. Протокол печати BSD является индустриальным стандартом. Он широко используется и обеспечивает совместимость между различными типами вычислительных систем от разных производителей. Для тех сайтов, в которых одновременно используются обе версии UNIX - BSD и SVR4, - фирма SUN обеспечила в среде Solaris совместимость с обеими системами печати.
Демоны печати LP
Демон /usr/Iib/Ipsched - утилита UNIX, которая несет ответственность за планирование и печать в Solaris 8. Иногда эта утилита называется демон 1р. Демон печати Ipsched представляет собой процесс UNIX, который несет ответственность за получение выходной информации из каталога спулинга и ее пересылку на надлежащий принтер. Кроме того, Ipsched отслеживает статус принтеров и фильтров на сервере печати. Напомним еще раз, что для пользователей SunOS демон Ipsched эквивалентен демону Ipd в BSD UNIX.
Файл /usr/Iib/Ipsched фактически представляет собой мягкую ссылку на программу, которая называется /usr/lib/lp/lpsched.
Демон /usr/sbin/inetd запускается при загрузке системы и прослушивает запросы служб на всех портах, связанных с каждой из служб и перечисленных в конфигурационном файле /etc/inetd.conf, который был описан в главе 8. Когда поступает запрос, демон inetd выполняет серверную программу, ассоциированную с данной службой.
Демон /usr/lib/print/in.lpd запускается inetd и реализует службу прослушивания сети по протоколу печати. Когда inetd получает запрос на печать, запускается демон in.lpd для обслуживания данного соединения. Демон in.lpd заканчивает работу после завершения обслуживания данного запроса.
Для определения принтера в Solaris может быть использовано множество методов. Инструменты, предоставляемые операционной системой для добавления принтеров, описываются в таблице 10.1.
УтилитаОписание
SunSoft Print Client Software
Интерфейс, который ранее был доступен только в составе набора инструментов администрирования под названием Solstice AdminSuite. Теперь он доступен в качестве составной части стандартного дистрибутива программного обеспечения Solaris и применяется для установки клиентов печати.
Admintool
Графический интерфейс пользователя, применяемый на локальной системе для создания, модифицирования и удаления принтеров. Эта утилита - рекомендованный способ добавления принтеров для начинающих пользователей.
Solstice Print Manager
Графический интерфейс пользователя к Print Manager (менеджеру печати), применяемый для управления принтерами в среде какой-нибудь службы имен. Эта утилита доступна в Solaris 8 только в составе дистрибутива программного обеспечения сервера.
Команды службы печати LP
Утилиты командной строки, которые используются для установки и управления принтерами. Эти команды предоставляют полную функциональность; пакеты программного обеспечения Admintool и AdminSuite иногда имеют ограничения для расширенных задач.
Установка аппаратных средств
Подключение принтеров к какой-нибудь системе UNIX не относится к числу излюбленных занятий системных администраторов, поскольку оно может быстро превратиться в задачу, требующую больших затрат времени. На рынке имеется большое количество принтеров, и каждый из них имеет немного отличный от других интерфейс. При подключении принтера локально к какой-нибудь системе Sun у вас есть три варианта соединения:
Ф Соединение Ethernet
ф Параллельное соединение
Ф Последовательное соединение
Тип соединения зависит от соединительных возможностей, доступных на самом принтере. Соединение Ethernet будет лучшим вариантом, если данный принтер поддерживает такую возможность. Если же соединение Ethernet не предусмотрено, более предпочтительным методом является параллельное соединение. Большинство принтеров, если не все, оснащаются параллельным портом. Если никаких вариантов параллельного соединения не существует, то окончательным выбором является последовательное соединение.
Соединение Ethernet
Многие новые модели принтеров предоставляют возможность добавления интерфейса Ethernet. Принтер с соединением Ethernet называется сетевым. Такой принтер является аппаратным устройством, которое предоставляет услуги печати для клиентов, не будучи при этом подключенным кабелем к серверу печати. Такой принтер, подключаемый непосредственно к сети, сам является сервером печати со своим собственным системным именем и IP-адресом. По отношению к принтеру интерфейс Ethernet может быть внутренним или внешним. Использование интерфейса Ethernet для инсталляции принтера является рекомендованным методом в силу его высокого быстродействия.
Параллельное соединение
Большинство принтеров, за исключением нескольких очень старых моделей, имеет параллельный интерфейс. Этот интерфейс может иметь огромные преимущества перед последовательным интерфейсом, особенно если используется интерфейс Centronics. Интерфейс Centronics полностью определяет все провода, применяемые в параллельном соединении между принтером и компьютером. Просто подсоедините принтер к задней стороне системы фирмы Sun с помощью параллельного кабеля Centronics. Некоторые системы Sun не имеют параллельного коннектора DB25 и требуют применения специального кабеля, поставляемого фирмой Sun. Другие старые системы фирмы Sun вообще не имеют параллельного интерфейса, поэтому вы должны добавить его путем приобретения параллельного интерфейса SBUS, поставляемого фирмой Sun.
Последовательное соединение
Некоторые принтеры поддерживают как параллельное, так и последовательное соединения. Иногда принтер подключается через последовательный интерфейс, поскольку данная рабочая станция фирмы Sun не имеет доступного параллельного интерфейса. Подключение устройства с последовательным интерфейсом требует четкого понимания последовательной передачи данных. Этот метод подключения принтера является наиболее трудным, что обусловлено сложностью установки корректного "рукопожатия" (handshake), то есть, средства связи между компьютером и принтером.
Установка программного обеспечения
Для сетевых принтеров при конфигурировании операционной системы следует использовать программное обеспечение поставщика принтера. После того как вы завершите инсталляцию программного обеспечения поставщика принтера, вам не потребуется дополнительно выполнять конфигурирование программного обеспечения. Вы должны получить программное обеспечение от изготовителя принтера для инсталляции данного принтера на вашей системе. В большинстве случаев оно конфигурируется достаточно легко. Наиболее популярным является сервер печати HP Jetdirect, однако это не означает, что доступен только данный сервер печати.
ПРЕДУПРЕЖДЕНИЕiг
Не используйте утилит Admintool или Print Manager для добавления, модифицирования или удаления какого-нибудь сетевого принтера, который подключается непосредственно к сети Ethernet с помощью своей собственной сетевой интерфейсной платы. Вы конечно не сможете ничего испортить, но ваш принтер не будет распознаваться системой, даже несмотря на то, что такой принтер может появиться в окне Printers инструмента конфигурирования. Для управления сетевым принтером всегда используйте программное обеспечение, поставляемое изготовителем принтера.
Первым этапом является подключение сервера печати к сети и установка IP-адреса. Этот процесс выполняется по-разному для разных серверов печати, поэтому при выполнении этой работы руководствуйтесь документацией изготовителя принтера. Далее, инсталлируйте программное обеспечение сервера печати и руководствуйтесь документацией поставщика принтера для его конфигурирования. Программное обеспечение сконфигурирует все; никакого дополнительного конфигурирования программного обеспечения при этом не требуется.
Для принтеров, имеющих параллельное или последовательное соединение, вы должны использовать инструменты Solaris, чтоюы сконфигурировать операционную систему, распознающую данный принтер.
Версии BSD программного обеспечения печати из SVR4
Программное обеспечение, которое управляет процессами печати в среде операционной системы UNIX, представляет собой ту область, в которой две версии UNIX, BSD и SVR4, являются подобными и слегка разными. Эти две системы печати являются подобными в том, что обе они базируются на концепции спулинга. Как служба печати SVR4, так и служба печати BSD поддерживают концепцию интерфейсной программы, которая функционирует в качестве фильтра, через который пропускается вся выходная информация, посылаемая на конкретный принтер. Ниже приведены некоторые примеры использования указанной интерфейсной программы:
$> Добавление страницы заголовка. Многие системы UNIX автоматически добавляют страницу заголовка в самом начале вывода на печать. Назначение этой страницы - идентификация владельца данной распечатки.
$> Добавление или удаление символа перевода строки. UNIX использует символ перевода строки просто для разделения строк. Первая проблема, с которой вы можете столкнуться при тестировании какого-нибудь принтера, заключается в том, что текст выводится на печать уступами. Большинство принтеров имеют возврат ка- ретки/перевод строки и автоматический переключатель с dip-корпусом (плоский корпус с двухрядным расположением штырьковых выводов), который управляет режимом использования принтера. Проблема вывода текста на печать уступами может быть решена путем модифицирования интерфейсной программы, которая выполняет необходимую трансляцию всей выходной информации, поступающей на принтер, или путем установки на принтер указанного выше переключателя с dip-корпусом, рекомендованного изготовителем оборудования.
Различия между BSD и SVR4 заключаются в файлах конфигурации и каталогах спулинга, которые операционная среда Solaris конфигурирует автоматически. Также существуют различия в способе, с помощью которого обрабатывают задания на печать демон Ipsched и демон Ipd в BSD.
Служба печати BSD
Каждый принтер, подсоединенный к какой-нибудь системе BSD, должен иметь свой собственный каталог спулинга, который обслуживается одним демоном Ipd. Каталоги спула размещаются в каталоге /var/spool/lpd. Каждый принтер имеет свой собственный демон Ipd. В BSD демон Ipd имеет доступ к файлу /etc/printcap для получения любой необходимой информации, связанной с принтером. Файл printcap представляет собой системный файл базы данных принтеров, который хранит всю необходимую информацию обо всех принтерах, подключенных к данной системе. Для использования какого-нибудь принтера он должен иметь соответствующий элемент в файле /etc/printcap. Функция 1рг в BSD эквивалентна функции 1р в SVR4. Если пользователи хотят что-нибудь распечатать, они применяют команду 1рг, которая посылает необходимую информацию в заданный каталог спулинга.
Служба печати SVR4
В системе SVR4 один демон Ipsched обслуживает все принтеры. Демон Ipsched выполняется непрерывно и предоставляет "энергию" для службы печати. Только один экземпляр Ipsched должен быть запущен в любой момент времени.
Служба печати LP выполняет следующие функции:
$> Администрирует файлы и планирует запросы локальной печати
$> Принимает и планирует сетевые запросы
$> Фильтрует файлы (при необходимости) так, чтобы они печатались должным образом ■
$> Запускает программы, которые реализуют интерфейс с принтерами
$> Отслеживает состояние заданий на печать
'<$> Отслеживает формы, монтируемые на принтере
$> Отслеживает механизмы печати, смонтированные в данное время
$> Распространяет предупреждения о монтировании новых форм или о других печатающих механизмах
$> Распространяет предупреждения об имеющих место проблемах при печати
Большинство конфигурационных файлов службы печати LP размещаются в каталоге /var/spool/lp за исключением интерфейсных файлов, которые размещаются в каталоге /etc/lp/interfaces. В каталоге /var/spool/lp должен присутствовать файл SCHEDLOCK, который несет ответственность за обеспечение запуска только одного экземпляра Ipsched в любой момент времени. Для добавления, конфигурирования и удаления принтеров из системы следует использовать команду Ipadmin.
Информация о принтерах может быть найдена в файле /etc/printers.conf и в файлах, которые находятся в каталоге /etc/lp. Утилита Admintool предоставляет графический интерфейс к многим командам 1р, перечисленным в таблице 10.2.
Таблица 10.2 Команды 1р операционнойсистемы Solaris >
КомандаОписание
accept/rejectРазрешает или запрещает любые последующие запросы к принтеру или
классу, входящему в область спулинга.
cancelДает возможность пользователю остановить процесс печати информации.
Продолжение таблицы 10.2
Команда
Описание
enable/disable
Разрешает или запрещает дальнейшую выдачу информации из спулера на принтер.
IP
Пользовательская команда печати. Помещает информацию, подлежащую выводу на печать, в спулер.
Ipadmin
Разрешает конфигурирование данной службы печати.
Ipmove
Перемещает запросы на печать между адресатами.
Ipsched
■ Запускает службу печати.'
Ips hut■
Останавливает службу печати.
Ipstat
Отображает статус службы печати.
Хотя операционная система Solaris использует модель печати SVR4, она все еще продолжает поддерживать стиль печати BSD для обеспечения способности к взаимодействию. Широкое использование протокола печати BSD обеспечивает совместимость между различными типами систем от различных изготовителей.
Версии сервера и клиента печати
Сервер печати представляет собой систему, к которой подключен локальный принтер и которая обеспечивает доступность данного принтера для других систем в сети. Клиент печати - это дистанционная система, которая может посылать запросы на печать на какой-нибудь сервер печати. Некоторая система становится клиентом печати, когда вы инсталлируете программное обеспечение клиента печати и разрешаете данной системе доступ к дистанционным принтерам. Любая сетевая система с принтером может быть сервером печати до тех пор, пока располагает адекватными ресурсами для управления нагрузкой печати.
Клиент печати выдает команды печати, которые позволяют ему инициировать запросы на печать. Команда print находит принтер и информацию о его конфигурации.
Когда какое-нибудь задание на печать посылается с данного клиента печати, пользователь выдает либо команду 1р в стиле SVR4, либо команду Ipr в стиле BSD. Может быть использован один из стилей печати, представленный в таблице 10.3.
СтильОписание.
AtomicПосле команды печати и ее опции следует имя принтера или класса.
Например,
Ip -d neptune filename
POSIXПосле команды печати и ее опции следуют имена сервера печати и прин
тера, разделенные символом двоеточия. Например:
Ipr -Р galaxy:neptune filename
ContextОпределяется Federated Naming Service Programming Guide (руковод
ством по программированию объединенной службы наименований). Например,
Ipr -d thisdept/service/printer/printer-name filename
Если пользователь не задал имя принтера или класса в каком-нибудь из допустимых стилей, эта команда проверяет пользовательскую переменную окружения PRINTER или LPDEST
для определения принятого по умолчанию имени принтера. Эти переменные могут быть установлены в файле запуска данного пользователя для задания принтера, который будет использоваться по умолчанию. Если не определена ни одна из переменных окружения для задания принятого по умолчанию имени принтера, эта команда проверяет файл .printers в исходном каталоге данного пользователя для определения принятого по умолчанию псевдонима принтера. Если же эта команда не находит принятый по умолчанию псевдоним принтера в файле .printers, тогда она проверяет файл клиента печати /etc/printers.conf для получения конфигурационной информации. Если в файле /etc/printers.conf клиента печати принтер не обнаружен, тогда эта команда обращается к службе имен (NIS или NIS+), если таковая имеется.
Конфигурирование программного обеспечения принтера в среде Solaris
Программное обеспечение клиента печати и приложение Print Manager (менеджер печати) предлагают графическое решение для установки и управления принтерами в сетевом окружении. Преимущество программного обеспечения Print Manager заключается в том, что оно поддерживает службу имен (N1S или NIS+), что позволяет вам централизованно решать задачи администрирования печати для сети. Если вы используете какую- нибудь службу имен, то программное обеспечение Solaris Print Manager является предпочтительным методом для управления конфигурационной информацией принтера. Применение службы имен для сохранения конфигурационной информации принтера является желательным, поскольку это делает информацию принтера доступной для всех систем в данной сети, облегчая тем самым решение задач администрирования печати. Для конфигурирования принтеров на отдельных системах вы можете воспользоваться командой Ipadmin из командной строки. Альтернативный метод для инсталляции принтеров в среде Solaris предлагает утилита Admintool. Она предоставляет графический интерфейс командам 1р, которые были перечислены в таблице 10.2. В настоящем разделе описывается применение утилиты Admintool для установки программного обеспечения принтера.
ПРИМЕЧАНИЕ‘У;
Если вы работаете на системе SystemA и хотите подключить принтер к системе SystemB, то вам нет необходимости садиться в машину и ехать туда для запуска утилиты Admintool. Непосредственно с системы SystemA выполните регистрацию в режиме дистанционного доступа (rlogin) на системе SystemB и наберите следующую командную строку:
admintool -display systemA:0.0
Теперь на экране системы SystemA должена отображаться Admintool системы SystemB точно так же, как если бы вы находились за консолью системы SystemB.
Вы должны запустить утилиту Admintool на той системе, к которой подсоединяете принтер, поскольку не разрешается вносить изменения в дистанционную систему. В процессе установки принтера Admintool вносит соответствующие изменения в системный файл /etc/printers.conf и в каталог /etc/lp.
Шаг за шагом■ .
Конфигурирование принтера с использованием Admintool
Выполните перечисленные ниже операции для конфигурирования принтера с использованием Admintool:
Наберите команду admintool для открытия меню утилиты Admintool. На экране появляется окно Admintool.
Рисунок 10.2.Окно конфигурации Printers.Рисунок 10.2.Окно конфигурации Printers.
Рисунок 10.2.
Окно конфигурации Printers.
Рисунок 10.2.
Окно конфигурации Printers.
Выберите Browse, Printers, как показано на рисунке 10.1.
Рисунок 10.1.
Выбор принтеров с помощью утилиты Admintool.
На экране появляется окно конфигурации Printers, как показано на рисунке 10.2. В нем отображаются существующие принтеры.
Выберите Edit, Add.
Если вы конфигурируете клиента печати и при этом сервер печати расположен в сети и физически подсоединен к другой системе, выберите из опускающегося меню пункт Access to Printer, как показано на рисунке 10.3.
Рисунок 10.3.
Всплывающее меню окна Printers.
На экране появляется окно Add Access to Printer, как показано на рисунке 10.4.
Рисунок 10.4.Окно Add A ccess to Printer.Рисунок 10.4.Окно Add A ccess to Printer.pyramid!pyramid!Rint Client:Rint Client:Rinter Name:Rinter Name:jl: Add Access T-j Printerjl: Add Access T-j PrinterNwNwOption:Option:Введите в данном окне следующую информацию:
Рисунок 10.4.
Окно Add A ccess to Printer.
Рисунок 10.4.
Окно Add A ccess to Printer.
pyramid!
pyramid!
Rint Client:
Rint Client:
Rinter Name:
Rinter Name:
jl: Add Access T-j Printer
jl: Add Access T-j Printer
Nw
Nw
Option:
Option:
Printer Name. Введите имя принтера на дистанционной системе, к которому вы хотите получить доступ.
Print Server. Введите имя системы, к которой подключен данный принтер.
Description. Если хотите, введите краткое описание принтера.
Option. Отметьте эту кнопку-флажок, если хотите сделать данный принтер принятым по умолчанию системным принтером.
Щелкните кнопку ОК. Окно закрывается, а необходимая информация добавляется к соответствующим файлам системы печати LP.
Если вы конфигурируете сервер печати и принтер будет подсоединен к локальной системе, выберите Local Printer из всплывающего меню, показанного на рисунке 10.3. Возникает окно, показанное на рисунке 10.5.
Рисунок 10.5.
Окно Add Local Printer.
Заполните поля в этом окне следующей информацией:
Printer Name. Введите имя для вызова данного принтера.
Description. Если хотите, введите краткое описание данного принтера.
Printer Port. Щелкните эту кнопку и выберите порт, к которому подсоединяется данный принтер:
/dev/term/а - последовательный порт А.
/dev/term/b - последовательный порт В.
/dev/bppO - параллельный порт.
Если вы подключили плату SBUS с другим именем устройства, выберите Other. '
Printer Туре. Щелкните эту кнопку для выбора типа, соответствующего вашему принтеру. Типы принтеров в данном списке соответствуют принтерам, перечисленным в каталоге /usr/share/lib/terminfo. Тип принтера, который вы выберите, должен соответствовать какому-нибудь элементу в базе данных terminfo. UNIX лучше работает с принтерами PostScript, поскольку форматирование страницы, содержащей текст и графические изображения, в среде CDE выполняется именно для таких принтеров. Если вы хотите выбрать принтер PostScript, то ваш принтер должен иметь возможность такой поддержки. Если вы используете какой-нибудь принтер семейства HP LaserJet, выберите HPLaserJet в качестве типа принтера, если только ваш принтер семейства HP LaserJet не поддерживает PostScript.
File Contents. Щелкните эту кнопку для выбора формата файлов, которые вы будете посылать на принтер.
Fault Notification. Щелкните эту кнопку для выбора того, как уведомлять суперпользователя в случае возникновения какой-нибудь ошибки на принтере.
Options. Выберите одну из кнопок, чтобы выбрать печать заголовка или сделать данный принтер принятым по умолчанию.
User Access List. Если хотите, введите имена систем, которым разрешена печать на данном принтере. Если в это поле ничего не введено, то доступ разрешен всем клиентам.
После заполнения всех полей, щелкните кнопку ОК. Окно закрывается, и имя нового принтера появляется в окне Printers, которое показано на рисунке 10.2.
ПРИМЕЧАНИЕ
Один из принтеров может быть определен в качестве принятого по умолчанию для данной системы. Если пользователь не задает принтер при печати, то задание будет отправлено на принятый по умолчанию принтер.
Использование принтера, отсутствующего в меню типов принтеров
Типы принтеров, которые перечислены в окне Print Manager, соответствуют принтерам, перечисленным в каталоге /usr/share/lib/terminfo. Если для добавляемого принтера отсутствует подходящий тип, то вам, возможно, необходимо будет добавить элемент в базу данных /usr/share/lib/terminfo. Каждый принтер идентифицируется в базе данных terminfo коротким именем; например, какой-нибудь принтер семейства HP LaserJet фигурирует в каталоге /usr/share/lib/terminfo/h как HPLaserJet. Элементы для принтеров PostScript на-
ходятся в каталоге /usr/share/lib/terminfo/Р. Имя, найденное в этом каталоге, представляет собой тип, который вы указываете в процессе установки принтера.
Если вы не смогли найти в базе данных terminfo элемент для вашего принтера, можно попытаться выбрать какой-нибудь аналогичный тип; однако, при этом вы должны позаботиться, чтобы устанавливать данный принтер в корректные режимы для каждого запроса печати. Если в базе данных terminfo не существует элемента для вашего типа принтера и вы хотите обеспечить его установку в корректные режимы, то можете либо настроить интерфейсную программу на использование с данным принтером, либо добавить элемент в базу данных terminfo. Вы сможете найти интерфейсную программу для принтера в каталоге /etc/lp/ interfaces. Редактирование интерфейсного файла или добавление элемента в базу данных terminfo выходит за рамки настоящего руководства по обучению. Элемент для принтера в базе данных terminfo содержит и определяет сотни параметров. Для получения более подробной информации обратитесь к Solaris 8 System Administration Guide, Volume II в оперативном руководстве Answerbook2. Еще одним хорошим справочником по данной теме является книга Джона Стрэнга (John Strang) и Тима О’Рейли (Tim O’Reilly) "termcap & terminfo", опубликованная издательством O’Reilly & Associates, Inc. (ISBN: 0937175226).
Администрирование принтеров
Управление системой печати включает в себя мониторинг системы 1р и определение причин того, почему эта система может работать некорректно. К числу других типовых задач относится отмена заданий на печать и разрешение либо запрещение доступа к какому-нибудь принтеру на время его технического обслуживания. Настоящий раздел предоставляет инструкции для решения ежедневных задач управления принтерами и планировщиком печати. Все команды, перечисленные далее, требуют доступа с привилегиями суперпользователя.
Удаление принтеров и управление доступом к ним
Для удаления какого-нибудь принтера из системы следует пользоваться Admintool. В окне Print Manager утилиты Admintool выделите принтер, который вы хотите удалить, и выберите Edit, Delete, как показано на рисунке 10.6. Очередь печати данного принтера будет удалена из системы.
Admlnhml: PrintersAdmlnhml: PrintersS?*S?*-Hle^pEdit Browse rAdd Г-Hle^pEdit Browse rAdd ГHelpHelpГИПС; . ...ГИПС; . ...Server■ЭЩПServer■ЭЩПOescripUQiiOescripUQii
Admlnhml: Printers
Admlnhml: Printers
S?*
S?*
-Hle^pEdit Browse rAdd Г
-Hle^pEdit Browse rAdd Г
Help
Help
ГИПС; . ...
ГИПС; . ...
Server
■ЭЩП
Server
■ЭЩП
OescripUQii
OescripUQii
Рисунок 10.6.
Удаление принтера.
Host pyramid!Host pyramid!Default Piinter:tiplaser
Host pyramid!
Host pyramid!
Для удаления из командной строки какого-нибудь принтера выдайте в системе, к которой подсоединен данный принтер, следующую команду:
Ipadmin -х <printer-name>
Данный принтер удаляется из системы.
Возможна ситуация, когда вы не захотите удалять данный принтер из сервера печати, однако хотите запретить конкретной системе печатать через данный сервер печати. Выдайте следующую команду на клиенте печати, для которого вы хотите удалить данный принтер:
Ipsystem -г <print-server>
Сервер печати удаляется из файла /etc/lp/Systems данного клиента печати.
Возможна ситуация, когда какой-нибудь принтер будет выведен в автономный режим для выполнения ремонтных работ. Чтобы остановить получение запросов печати на конкретный принтер, выдайте на системе, к которой физически подсоединяется данный принтер, следующую команду:
reject <printer-name>
Тем самым прекращается введение любых новых запросов на печать в очередь печати данного принтера до тех пор, пока для вас сохраняется факт удаления данного принтера.
Чтобы разрешить принтеру принимать запросы на печать, однако при этом запретить печать этих запросов на данном принтере, выдайте в системе, к которой физически подсоединяется данный принтер, следующую команду:
disable <printer-name>
Когда какой-нибудь принтер остановлен либо печать на нем отключена, вам может понадобиться переместить существующие задания, которые были поставлены в очередь данного принтера. Для перемещения заданий на печать с одного принтера на другой следует воспользоваться командой Ipmove, как показано ниже:
Ipmove <printerl> <printer2>
Аргументы команды Ipmove описываются в таблице 10.4.
АргументОписание
<printer1>Имя принтера, с которого будут перемещены все запросы на печать.
<printer2>Имя принтера, на который будут перемещены все запросы на печать.
Если вы перемещаете все запросы на печать на другой принтер, то команда Ipmove автоматически останавливает прием запросов на печать для принтера printerl. Следующая операция является необходимой в том случае, если вы хотите начать прием новых запросов на печать для данного принтера:
accept printerl
Приведенный ниже пример демонстрирует, как команда Ipmove перемещает запросы на печать с принтера epsl на принтер epsl, например, когда первый из них выведен из работы для технического обслуживания. После того, как первый принтер вновь готов начать прием заданий на печать, воспользуйтесь командой accept для возобновления приема запросов:
Ipmove epsl eps2 accept epsl
Создание классов принтеров'
Вы можете поместить несколько локально присоединенных принтеров в группу, которая называется класс принтеров. Это может быть полезно в тех случаях, когда у вас имеется несколько принтеров, расположенных рядом друг с другом, и при этом не имеет значения, на какой принтер поступает ваше задание на печать. Когда вы установите класс принтеров, пользователи смогут указывать этот класс (вместо конкретных принтеров) в качестве места назначения запросов на печать. Реально используется первый принтер, который является свободным, из данного класса. Результатом является ускорение оборота, поскольку используются все принтеры. Для создания класса принтеров следует воспользоваться командой Ipadmin, как показано ниже:
Ipadmin -с"
По умолчанию службе печати не известен ни один класс принтеров; классы принтеров существуют только в том случае, если вы определяете их. Ниже приведены три способа, с помощью которых вы можете определить классы принтеров:
3> По типу принтера (например, PostScript)
3> По местоположению (например, пятый этаж)
3> По наименованию рабочей группы или отдела (например, бухгалтерия)
Как альтернативный вариант некоторый класс может содержать несколько принтеров, которые используются в определенном порядке. Служба печати LP всегда проверяет доступность какого-нибудь принтера именно в том порядке, в каком он был добавлен в класс принтеров. Следовательно, если вы хотите, чтобы какой-либо высокопроизводительный принтер был бы доступен первым, вы можете добавить его к классу принтеров прежде, чем вы добавите к нему принтер с низкой производительностью. В результате высокопроизводительный принтер будет обрабатывать столько запросов на печать, сколько возможно. Принтер с низкой производительностью может быть при этом зарезервирован в качестве запасного, пока высокопроизводительный принтер будет в эксплуатации.
Наименования классов принтеров должны быть уникальными и могут содержать не более 14 алфавитно-цифровых символов и символов подчеркивания. Вы не обязаны определять классы принтеров. Вы должны добавлять их только в том случае, если придете к выводу, что использование классов может дать преимущества пользователям при работе в сети.
Шагза шагом.; .
Определение классов принтеров
Для определения классов принтеров выполните следующие операции:
Зарегистрируйтесь как суперпользователь или 1р на сервере печати.
Определите класс принтеров с помощью команды Ipadmin:
Ipadmin -р <printer-name> -с <printer-class>
Аргументы команды Ipadmin описываются в таблице 10.5.
Табдиуа 10.5 Ap^ita^.:*1,
АргументОписание
-р <printer-name>Имя принтера, который вы добавляете к классу принтеров.
-с <printer-class>Имя класса принтеров.
Указанный принтер добавляется в конец списка данного класса в файле сервера печати по имени /etc/lp/classes/<printer-class>. Если данный класс принтеров не существует, он создается. Для проверки принтеров в каком-нибудь классе принтеров следует воспользоваться командой Ipstat:
Ipstat -с <printer-class>
В приведенном ниже примере демонстрируется, как выдать команду для добавления принтера luna к классу принтеров roughdrafts:
lpadmin -р luna -с roughdrafts
Проверка статуса принтера
Команда Ipstat применяется для проверки статуса некоторого принтера. С помощью этой команды вы можете определить, какие принтеры являются доступными для использования или проанализировать характеристики конкретного принтера. Синтаксис команды Ipstat выглядит следующим образом:
Ipstat [—d] [-р <printer-name> [-D] [-1]] [-t]
Опции команды Ipstat описываются в таблице 10.6.
Таблица 10.6 Синтаксис и опции команды Ipstat■
Опция
Описание
-а
Сообщает, принимают ли принтеры запросы на печать. Вы также можете задать конкретный список принтеров, как показано в следующем примере:
Ipstat -a eps1 eps2 eps3
-d
Показывает принятый по умолчанию принтер для данной системы.
-р <printer-name>
Показывает, является ли данный принтер активным или простаивает, когда был разрешен или запрещен для использования, принимает ли запросы на печать. С этой командой вы можете указать несколько имен принтеров. Для разделения этих имен следует применять запятые или пробелы. Если используете пробелы, то список имен принтеров следует заключить в кавычки. Если вы не задали имени конкретного принтера, то отображается статус всех принтеров.
-D
Демонстрирует описание указанного принтера.
-1
Демонстрирует характеристики заданного принтера.
-t
Показывает статус службы печати LP, включая статус всех принтеров - являются ли они активными и принимают ли запросы на печать.
-u <logon-IDs>
Печатает для пользователей статус выходных запросов на печать, при этом атрибут <logon-IDs> может быть одним из перечисленных ниже:
<user>Пользователь локальной системы, как показано в следую
щем примере: Ipstat -u bcalkins
<host!user> Пользователь указанной системы, как показано в следующем примере: Ipstat -u systemalbcalkins
<host!all> Все пользователи указанной системы, как показано в следующем примере: Ipstat -u systemalall
<all!user> Конкретный пользователь на всех системах, как показано в следующем примере: Ipstat -u alllbcalkins
allВсе пользователи на всех системах, как показано в следу
ющем примере: Ipstat -u all
Ниже приведено несколько примеров использования команды Ipstat.
Ipstat -р hplaser■
Система отвечает следующим образом:
printer hplaser is idle, enabled since Jun 16 10:09 1998. available.
Приведенный ниже пример демонстрирует, как команда Ipstat запрашивает описание принтеров hplaserl и hplaserl: Ipstat -р "hplaserl hplaser2" -D printer hplaserl faulted, enabled since Jun 16 10:09 1998. available. unable to print: paper misfeed jam Description: Printer by finance, printer hplaser2 is idle, enabled since Jun 16 10:09 1998. available. Description: Printer in computer room.
Приведенный далее пример демонстрирует, как команда Ipstat запрашивает характеристики принтера hplaser: Ipstat -р hplaser -1 printer hplaser is idle, enabled since Jun 16 10:11 1998. available. Content types: any Printer types: unknown Description: Printer by computer room. Users allowed: (all) Forms allowed: (none) Banner not required Character sets: (none) Default is pitch: Default page size:
Управление очередями принтеров
Одна из типовых задач управления принтерами - управление их очередями. Иногда случается так, что подаются большие задания на печать, в которых нет необходимости и которые могут быть удалены. В других случаях вы можете захотеть поставить высокоприоритетное задание на печать раньше других заданий, которые ожидают печати. Ниже описаны некоторые типовые задачи, которые вам возможно придется решать применительно к очередям принтеров.
Удаление задания на печать
Для удаления какого-нибудь задания из очереди печати прежде всего необходимо зарегистрироваться в системе с привилегиями суперпользователя. Затем следует определить идентификатор запроса на печать, который следует удалить, при помощи команды Ipstat:
ipstat-u bcalkins
epsl-1bcalkins 1261 Mar 16 17:34
В приведенном примере пользователь bcalkins имеет один запрос в очереди печати. Идентификатор этого запроса - epsl-1.
Отмена запроса на печать
Для отмены запроса на печать следует воспользоваться командой cancel. Синтаксис команды cancel выглядит следующим образом:
cancel <request-id> I <printer-name>
Аргументы команды cancel описываются в таблице 10.7.
Таблица 10.7 Аргументы команды cancel г$'
Аргумент
Описание
<request-id>
Идентификатор запроса на печать, который следует отменить. Вы можете задать несколько идентификаторов. Для разделения идентификаторов запросов на печать следует применять запятые или пробелы. Если вы используете пробелы, то список идентификаторов запросов на печать следует заключить в кавычки.
<printer-name>
Указывает принтер, для которого вы хотите отменить выполняемый в настоящее время запрос на печать. Вы можете задать несколько имен принтеров. Для разделения имен принтеров следует применять запятые или пробелы.
В приведенном ниже примере демонстрируется, как рассматриваемая команда отменяет выполнение запросов на печать epsl-З и epsl-4.
cancel epsl-3 epsl-4
request "epsl-3" cancelled request "epsl-4" cancelled
В следующем примере демонстрируется, как команда отменяет запрос на печать, который в данный момент времени выполняется на принтере epsl:
cancel epsl request "epsl-9" cancelled
Передача задания на печать с более высоким приоритетом
Команда Ip с опцией -q назначает приоритет в очереди печати конкретному запросу на печать. Уровень приоритетности в данном случае следует задавать как целое число в диапазоне от 0 до 39. Значение 0 обозначает наивысший приоритет, а значение 39 - минимальный приоритет. Если никакой приоритет не задается, то администратор LP назначает для службы печати приоритет по умолчанию.
В приведенном ниже примере демонстрируется, как послать некоторое задание на печать на принтер epsl с наивысшим приоритетом:
Ip -depsl -q0 filel
Ограничение доступа пользователей к некоторому принтеру
Для разрешения или запрета доступа пользователей к некоторому принтеру применяется команда Ipadmin, синтаксис которой выглядит следующим образом:
Ipadmin -p <printer-name> -u allow:<user-list> [deny:<user-list>]
Аргументы команды Ipadmin описываются в таблице 10.8.
Таблица 10.8 Apr
Аргумент
Описание
-р <printer-name>
Имя принтера, к которому прилагается список разрешения или запрета доступа пользователей.
-u allow:<user-list>
Имена, которые будут добавлены к списку пользователей, которым разрешается доступ. Вы можете задать несколько имен пользователей. Для разделения имен следует применять запятые или пробелы. Если вы используете пробелы, то список имен пользователей следует заключить в кавычки.
-u deny:<user-list>
Имена, которые будут добавлены к списку пользователей, которым запрещается доступ. Вы можете задать несколько имен пользователей. Для разделения имен пользователей следует применять запятые или пробелы. Если вы используете пробелы, то список имен пользователей следует заключить в кавычки. Допустимые значения атрибута user-list представлены в таблице 10.9.
Указанные пользователи добавляются в список разрешения или запрета доступа для данного принтера, в однин из следующих файлов на сервере печати:
/etc/lp/printers/printer-name/users.allow
/etc/lp/printers/printer-name/users.deny
Таблица 10.9 Значения для списков разрешения или запрета доступа
Значение для user-list
Описание
user
Пользователь на любой системе
all
Все пользователи на всех системах
none "
Ни один пользователь любой системы
system! user
Только пользователь на указанной системе
!user
Только пользователь на локальной системе
all! user
Пользователь на любой системе
alllall
Все пользователи на всех системах
system !all
Все пользователи на данной системе
•all
Все пользователи на локальной системе
. ПРИМЕЧАНИЕ• '‘-
Если вы указали значение попе для атрибута user-list в списке разрешения доступа пользователей, то перечисленные ниже файлы для сервера печати не создаются:
/etc/lp/printers/printer-name/alert.sh
/etc/lp/printers/printer-naine/alert. var
/etc/lp/printers/printer-name/users.allow
/etc/lp/printers/printer-name/users.deny
В следующем примере демонстрируется, как команда Ipadmin разрешает доступ к принтеру epsl только пользователям bcalkins и bholzgen:
Ipadmin -р epsl -u allow:bcalkins,bholzgen
В следующем примере демонстрируется, как команда Ipadmin запрещает доступ к принтеру ер$2 пользователям bcalkins и bholzgen:
Ipadmin -р eps2 -u deny:"bcalkins bholzgen"
Для просмотра информации о правах доступа к конкретному принтеру следует использовать команду Ipstat. Приведенная ниже команда отображает информацию доступа к принтеру с именем epsl:
Ipstat -р epsl -I
Система отвечает следующим образом:■
printer epsl is idle. enabled since Mon Mar 20 14:39:48 EST 2000. available. Form mounted: Content types: postscript 402 Section I Par t I Printer types: PS Description: epson Connection: direct Interface: /usr/lib/lp/model/standard On fault: write to root once After fault: continue Users allowed: bcalkins bholzgen Forms allowed:
(none)
Banner not required Charaoter sets:
Default pitch:
Default page size: 80 wide 66 long
Default port settings:
Принятие или отклонение запросов на печать для некоторого принтера
В качестве суперпользователя вы можете остановить прием запросов на печать для конкретного принтера с помощью команды reject, синтаксис которой выглядит следующим образом:
reject [-г "reason"] <printer-name>
Аргументы команды reject описываются в таблице 10.10.
Таблица 10.10 Аргументы команды reject
АргументАргументОписаниеОписание
Аргумент
Аргумент
Описание
Описание
-г "reason"-г "reason"<printer-name><printer-name>
-г "reason"
-г "reason"
<printer-name>
<printer-name>
Сообщает пользователям причину, по которой данный принтер отклоняет запросы на печать. Причина сохраняется и отображается всякий раз, когда какой-нибудь пользователь проверяет статус данного принтера с помощью команды Ipstat -р.
Имя принтера, для которого будет прекращен прием запросов на печать.
В следующем примере демонстрируется, как остановить прием запросов на печать для принтера epsl:
reject -г "epsl is down for repairs" epsl
destination "epsl" will no longer accept requests
Любые запросы на печать, поставленные в очередь, будут продолжать выполняться до тех пор, пока данный принтер разрешен для использования. Приведенный ниже пример демонстрирует, как команда accept устанавливает принтер epsl в состояние, разрешающее прием запросов на печать:
accept epsl
destination "epsl" now accepting requests
Отмена запросов на печать, поступивших от конкретного пользователя
Если вы хотите отменить запросы на печать других пользователей, зарегистрируйтесь в системе с привилегиями суперпользователя или пользователя 1р. Для отмены запросов на печать, поступивших от конкретного пользователя, следует применить команду cancel, синтаксис которой выглядит следующим образом:
cancel -u <user-list> <printer-name>
Аргументы команды cancel описываются в таблице 10.11.
АргументАргументОписаниеОписание
Аргумент
Аргумент
Описание
Описание
-u <user-list>-u <user-list><printer-name><printer-name>Отменяет запрос на печать, поступивший от конкретного пользователя. Атрибут <user-list> может включать одно или несколько имен пользователей. Для разделения имен пользователей следует использовать запятые или пробелы. Если вы применяете пробелы, список имен пользователей следует заключить в кавычки.
-u <user-list>
-u <user-list>
<printer-name>
<printer-name>
Определяет принтер, для которого вы хотите отменить запросы на печать, поступившие от конкретного пользователя. <pnnter-name> может включать одно или несколько имен принтеров. Для разделения имен принтеров следует использовать запятые или пробелы. Если вы применяете пробелы, то список имен принтеров следует заключить в кавычки. Если вы не задали <printer-name>, то запросы на печать, поступившие от конкретного пользователя, будут отменены на всех принтерах.
В приведенном ниже примере демонстрируется, как команда cancel отменяет все запросы на печать, поступившие от пользователя bcalkins на принтер luna: cancel -u bcalkins luna request "luna-23" cancelled
В следующем примере отменяются все запросы на печать, представленные пользователем bcalkins на все принтеры:
cancel -u bcalkins request "asteroid-3" cancelled request "luna-8" cancelled
Изменение приоритета запроса на печать
Для изменения приоритета запроса на печать следует воспользоваться командой 1р:
1р -1 <request-id> -Н <change-priority>
Опции команды 1р описываются в таблице 10.12.
Таблица 10.12 Опций команды Ip
ОпцияОписание
-i <request-id>
Идентификатор запроса на печать, который вы хотите изменить. Вы можете задать в одной команде несколько идентификаторов. Для разделения идентификаторов запросов на печать следует использовать запятые или пробелы. Если вы применяете пробелы, то список идентификаторов запросов на печать следует заключить в кавычки.
-Н <change-priority>
Один из трех способов для изменения приоритета запроса на печать: hold, resume или immediate:
holdЗадерживает запрос на печать до тех пор, пока вы не отме
ните его или не проинструктируете службу печати LP возобновить печать данного запроса.
resume Помещает в очередь печати задержанный ранее запрос. Этот запрос будет отпечатан в соответствии с его приоритетом и местоположением в очереди печати. Если вы пытались задержать задание на печать, которое уже выполняется, resume поместит данный запрос на печать в начало очереди таким образом, что он станет следующим запросом, который будет выполняться.
immediate Помещает запрос на печать в начало очереди. Если какой- нибудь запрос на печать уже выполняется, вы можете задержать этот запрос для того, чтобы дать немедленное разрешение на печать следующему запросу.
-q <priority-level>Назначает данному запросу на печать некоторый приоритет в очереди пе
чати. <priority-level> требуется задавать как целое число в диапазоне от 0 до 39. Значение 0 следует использовать для обозначения наивысшего приоритета, а значение 39 - для обозначения минимального приоритета.
В приведенном примере демонстрируется, как команда 1р изменяет некоторый запрос на печать с идентификатором epsl-29, присваивая ему уровень приоритета 1:
Ip -i epsl-29 -q 1
Перезапуск планировщика печати
Планировщик печати, Ipsched, обрабатывает запросы на печать на серверах печати. Если данный принтер не осуществляет печать заданий, вы должны перезапустить планировщик печати. Для перезапуска планировщика печати следует применять команду Ipsched. Если какой-нибудь запрос на печать выполнялся в то время, когда планировщик печати остановил свою работу, то этот запрос может быть распечатан целиком, когда вы выполните перезапуск планировщика печати.
Прежде всего остановите планировщик печати, для этого наберите следующую команду:
/usr/lib/lp/lpshut
Для перезапуска планировщика печати введите такую команду:
/usr/lib/lp/lpsched.
Система 1р запускается с помощью сценария из /etc/init.d, который называется 1р. Имеется ссылка от указанного файла в каталог /etc/rc2.d, что позволяет службе 1р запус-
каться автоматически каждый раз при загрузке системы. Тот же самый сценарий может быть использован для сброса всей службы 1р посредством выдачи следующей команды:
/etc/init.d/lp stop
Служба Ip будет остановлена. Вы можете перезапустить службу 1р посредством выдачи следующей команды:
/etc/init.d/lp start
„ примечание ’ _ ,,,v,
Сценарий /etc/init-d/lp запускает и останавливает всю службу печати, а не только ее планировщик. Для останова и перезапуска только одного планировщика печати следует использовать команды Ipshut и Ipsched
Установка для пользователя принятого по умолчанию принтера
Когда вы добавляли принтер, у вас была возможность выбрать, какой принтер берется в качестве принятого по умолчанию для конкретной системы. Вы можете захотеть перенести установку принтера по умолчанию на уровень пользователя таким образом, чтобы на конкретной системе пользователи могли бы задавать их собственные принтеры по умолчанию. Если пользователи не прилагают какое-нибудь имя принтера при оправке задания на печать, то команда печати выполняет поиск принятого по умолчанию принтера в следующей последовательности:
Переменная LPDEST
Переменная PRINTER
Принятый по умолчанию принтер для данной системы
Эти переменные могут быть установлены в пользовательском файле .profile. Команда сначала проверяет переменную окружения LPDEST, а затем переменную окружения PRINTER. Если ни одна из этих переменных не установлена, то проверяется переменная по имени -default в следующих файлах:
$НОМЕ/.printers
Элемент этого файла, именующий принятый по умолчанию принтер как printerl, выглядит следующим образом:
default printerl
Если файл SHOME/.printers не существует, то проверяется файл /etc/printers.conf. Элемент этого файла может выглядеть следующим образом:
—default(1р:
:use=systeml:
:bsdaddr»systeml,printerl
Если переменная -default не установлена в файле /etc/printers.conf, тогда проверяется база данных службы имен, если была запущена какая-нибудь служба имен, как описывается в главе 18. Если имя целевого принтера не может быть найдено ни в одном из перечисленных выше файлов, тогда запрос на печать не сможет быть обработан.
Модифицирование принтера при помощи Admintool
Утилита Solaris с названием Admintool может быть использована для модифицирования какого-нибудь принтера после того, как он был добавлен к системе. Модификации, которые могут быть сделаны для некоторого принтера при помощи утилиты Admintool, включают в себя следующее:
Задание описания принтера
Указание порта данного принтера
Вывод листинга содержимого файлов
Ф Предоставление уведомления в случае аварийных ситуаций
Выбор принятого по умолчанию принтера
Печать заголовка
Получение и обработка запросов на печать
Ф Предоставление списка доступа пользователей
Для модифицирования принтера с использованием утилиты Admintool выберите Edit, а затем Modify в окне Printers, как показано на рисунке 10.7.
Рисунок 10.7.
Окно Printers.
На экране появится окно Modify Printer, как показано на рисунке 10.8.
Рисунок 10.8.
Окно Modify Printer.
Модифицируйте выбранный принтер путем выбора или заполнения соответствующих полей в окне Modify Printer.
Резюме
Можно затратить много времени на описание службы печати LP. Можно заняться гораздо более подробным обсуждением конфигурирования фильтров принтеров, создания базы данных terminfo, разрешения проблем, возникающих при печати, однако эти вопросы выходят за рамки настоящего Руководства по обучению. Для подготовки к экзамену на сертификат и к решению основных задач системного администрирования вам необходимо понимание основ службы печати LP. Эти основы включают в себя спулер печати, демоны печати и файлы конфигурации принтеров. Кроме этого, вам необходимо знать, где в структуре каталогов операционной системы Solaris 8 хранятся эти файлы и программы.
В дополнение к службе печати LP вам необходимо знать, как пользоваться всеми утилитами и программами, которые применяются для управления службой печати LP.
Большинство проблем системы связано с принтерами. Вы также должны быть знакомы с приложениями сторонних разработчиков в свете того, как они готовят задания на печать для пересылки в спулер. Множество проблем, с которыми приходится сталкиваться, связаны не со службой печати операционной системы Solaris, а со способом, которым конкретное приложение форматирует задание на печать. В настоящей главе вы познакомились со службой печати Solaris и демоном Ipsched. Принтеры также можно администрировать в сетевом окружении с использованием пакета Solstice AdminSuite, который описывается в главе 19. В главе 9 анализируются все процессы операционной системы Solaris. Для получения более подробной информации по демону Ipsched следует обратиться к Solaris 8 System Administration Guide, Volume II в оперативном руководстве Answerbook2.
Ключевые термины
Спул
Демон печати
Сетевой принтер
Очередь печати
Локальный принтер
Демон Ipsched
Демон Ipd
Сервер печати
Клиент печати
Принятый по умолчанию принтер
База данных terminfo
Класс принтеров
Планировщик печати
Глава 10. Служба печати LP 5 /Э Примените ваши знания
Примените ваши знания
Конфигурирование принтера с использованием утилиты командной строки Ipadmin
При выполнении настоящего упражнения вам предстоит увидеть, как добавлять к некоторому серверу печати и удалять локальный принтер модели LaserJet 5М. В настоящем примере команды должны быть выполнены на том сервере печати, к которому подсоединен данный принтер. Для инсталляции доступна следующая информация:
Имя принтера: hpl
Устройство порта: /dev/ecppO
Тип системы: UltraS
Тип принтера: HP LaserJetSM
Тип содержимого файла: PostScript/PCL
Оцениваемое время: 10 минут
В качестве суперпользователя воспользуйтесь командой Ipadmin для добавления принтера с именем hpl к параллельному порту (устройство /dev/ecppO на системе типа Ultra и устройство /dev/bppO на системе типа Sparc), установите для этого принтера тип hplaser и задайте тип содержимого файла как произвольный (any), для чего введите следующую командную строку:
Ipadmin -р hpl -v /dev/ecppO -Т hplaser -I any
Теперь запустите прием запросов на печать для данного принтера и разрешите его использование.
enable hpl
accept hpl
Проверьте, что данный принтер установлен и готов к работе:
Ipstat -р hpl -1
А теперь пошлите какое-нибудь задание на печать на данный принтер, чтобы протестировать его:
Ip -d hpl /etc/hosts
Удалите данный принтер:
Ipadmin -х hpl
Проверьте, что принтер уже удален:
Ipstat -t
Конфигурирование принтера с использованием утилиты AdminTool (GUI - графический интерфейс пользователя)
При выполнении настоящего упражнения вам предстоит добавить при помощи утилиты Admintool принтер модели LaserJet 5М к серверу печати.
Оцениваемое время: 5 минут
В качестве суперпользователя запустите Admintool.
admintool &
Нажав кнопку Browse в верхней части окна Admintool, выберите Printers из опускающегося меню.
Нажав кнопку Edit в верх ней части окна Admintool, выберите Add, а затем Local Printer из опускающегося меню. Введите в поля следующую информацию: Printer Name: hpl
Description: hplaser 5M
Printer Port: dev/ecppO (/dev/bppO на вычислительной системе типа Sparc)
Printer Type: HP Printer
File Contents: any
После заполнения всех полей щелкните кнопку ОК, а затем выйдите из Admintool.
Проверьте, что принтер установлен и готов к работе, для чего введите следующую командную строку:
Ipstat -р hpl -1
Останов и запуск службы печати LP
При выполнении настоящего упражнения вам предстоит воспользоваться командами Ipshut и Ipsched для останова и запуска службы печати LP.
Оцениваемое время: 5 минут
Остановите службу печати LP. Любые принтеры, печатающие в настоящее время, будут остановлены при выдаче данной команды:
/usr/lib/lpshut
Воспользуйтесь командой Ipsched для запуска службы печати LP. Принтеры, которые перезапускаются с помощью данной команды, будут заново перепечатывать задания, ранее прерванные командой Ipshut.
/usr/lib/Ipsched
Установка сетевого принтера
Приведенное упражнение демонстрирует, как сконфигурировать принтер, подсоединенный непосредственно к сети через свою собственную сетевую интерфейсную плату. В данном примере принтер обслуживается непосредственно через интерфейс HP Jet, поэтому для его конфигурирования будет использовано программное обеспечение JetAdmin фирмы Hewlett-Packard.
Оцениваемое время: 15 минут
Загрузите программное обеспечение JetAdmin с Web-сайта фирмы Hewlett-Packard (www.hp.com) и инсталлируйте его с использованием команды pkgadd, которая была описана в главе 5. Убедитесь, что вы загрузили корректную версию программного обеспечения JetAdmin. На момент написания книги текущая версия называлась SOLd621.PKG. Поместите этот загруженный файл в каталог /tmp.
С помощью команды pkgadd инсталлируйте пакет программного обеспечения JetAdmin в каталог /opt/hpnp:
Примените ваши знания pkgadd -d /tmp/SOLd621.PKG Вы увидите на экране следующую выходную информацию: Thefollowingpackagesareavailable:
1HPNPJetAdminforUnix
(spare) D.06.21 Select package(s) you wish to process (or/ 'all' to process all packages), (default: all) [?,??,q]: 1
Наберите следующее: 1 <return> Processing package instance <HPNP> from </var/spool/pkg/SOLd621.PKG> JetAdmin for Unix (spare) D.06.21 (c)Copyright Hewlett-Packard Company 1991, 1992, 1993. All Rights Reserved, (c)Copyright 1983 Regents of the University of California (c)Copyright 1988, 1989 by Carnegie Mellon University RESTRICTED RIGHTS LEGEND Use, duplication, or disclosure by the U.S. Government is subject to restrictions as set forth in sub-paragraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause in DEARS 252.227-7013.
Hewlett-Packard Company 3000 Hanover Street Palo Alto, CA 94304 U.S.A. Where should HPNP be installed? (<return> for /opt/hpnp) [?,q] <enter>
Введите <return> для инсталляции в каталог /opt/hpnp. HPNP will be installed in /opt/hpnp. Please configure the sub-packages you would like to install.
Done altering installation configuration
[ N/A ] Jetprint
[On]jobMonitor
[On]HPNPF
[On]HPNPD
[On]CONVERT
?.Help
Select a number to toggle an installation option. When done select 0. Select ? for help information: 0 5. Введите 0 <return>.
Select a number to toggle an installation option. When done select 0. Select ? for help information: 0 Using </> as the package base directory.
# Processing package information.
# Processing system information.
# Verifying disk space requirements.
# Checking for conflicts with packages already installed. The following files are already installed on the system and are being used by another package:
/etc «attribute change only> /etc/init.d «attribute change only> /etc/rcl.d «attribute change only> /etc/rc2.d «attribute change only> /usr «attribute change only> /usr/bin «attribute change only> Do you want to install these conflicting files [y,n,?,q] у
Введите у <return> This package contains scripts which will be executed with superuser permission during the process of installing this package. Do you want to continue with the installation of <HPNP> [y,n,?] у
Введите у <return>
Вы увидите список файлов, которые были инсталлированы, и приведенное ниже сообщение:
Installation of <HPNP> was successful.
Относительно принтера, который вы собираетесь инсталлировать, доступна следующая информация:
Имя принтера: hplaser IP-адрес: 192.168.1.10 8. Сконфигурируйте принтер HP LaserJet с использованием только что инсталлированной утилиты JetAdmin:
/opt/hpnp/jetadmin
На экране появится следующее диалоговое окно: *********************************************
*MAIN MENU
*
* HP JetAdmin Utility for UNIX (Rev. D.06.21) *
римените ваши знания
Configuration (super-user only): - configure printer, add printer to spooler
Diagnostics-:
- diagnose printing problems
Administration (super-user only): - manage HP printer, JetDirect 4) Administration (super-user only):
- manage JetAdmin
Printer Status:
- show printer status, location, and contact ?) Helpq) Quit
Please enter a selection (q - quit):1
Введите 1 <return>.
Printer Network Interface:
Create printer configuration in BOOTP/TFTP database 2) Remove printer configuration from BOOTP/TFTP
Spooler:
Add printer to local spooler
Delete printer from local/ spooler
Modify existing spooler queue(s) ?) Helpq) Quit
Please enter a selection: 3
Введите 3 <return>
Enter the network printer name or IP address (q - quit): 192.168.1.10
Введите: <IPAddress>.
Following is a list of suggested parameter values for this queue. You can change any settings by selecting the corresponding nonzero numbers. The values will be used to configure this queue when '0' is selected. To abort the operation, press 'q'.
Configurable Parameters:Current
Settings
Lp destination (queue) name[192_1]
Status log[ (No log)]
Queue class[(not assigned)]
JobMonitor[OFF]
Default queue[NO]
Additional printer configuration...
Select an item for change, or 'O' to configure (q-quit):l
Введите 1 <return>.
Currently used names: hpl
Enter the Ip destination name (default=192_l,q - quit): hplaser
Введите hplaser <return>.
Following is a list of suggested parameter values for this queue.
You can change any settings by selecting the corresponding non-zero numbers. The values will be used to configure this queue when 'O'is selected. To abort the operation, press q' .
Configurable Parameters:Current
Settings
[hplaser][(No log)][ (not assigned) ] [OFF][NO][hplaser][(No log)][ (not assigned) ] [OFF][NO]Lp destination (queue) name
[hplaser]
[(No log)]
[ (not assigned) ] [OFF]
[NO]
[hplaser]
[(No log)]
[ (not assigned) ] [OFF]
[NO]
Status log
Queue class
JobMonitor
Default queue
Additional printer configuration...
Select an item for change, or 'O' to configure (q-quit):0
Введите 0 <return>.
Ready to configure hplaser.
OK to continue? (y/n/q, default=y) у
Введите у <return>.
Система выведет на экран следующее сообщение:
Finished adding "hplaser" to the spooler.
Press the return key to continue ...
Введите <return>, q, а затем еще раз q для выхода из утилиты JetAdmin.
9. Проверьте, что данный принтер разрешен к использованию и готов к работе, для чего введите следующую командную строку:
Ipstat -р hplaser -1
Обзорные вопросы
Что из перечисленного ниже является утилитой UNIX, которая отвечает за печать в среде SVR4 UNIX?
1рг
|р
Ipd
spool
Где размещается каталог спула в Solaris?
/var/spool/lpd
/var/spool/lp
/usr/spool/lp
Примените ваши знания
/usr/spool/lpd
Какая из перечисленных ниже команд препятствует постановке запросов на печать в очередь?
A. disable
cancel
reject
Ipshut
Что из перечисленного может быть использовано для добавления локального принтера к серверу печати?
A. Admintool
Printer Manager
Ipadmin
Ip
Какая из команд останавливает службу печати?
Ipsched
Ipshut
cancel
disable
Какая из команд помещает информацию, подлежащую выводу на печать, в спулер?
1рг
Ipsched
1р
Какое из перечисленных ниже утверждений справедливо для сервера печати?
Это система, к которой подсоединен локальный принтер.
Это дистанционная система, которая может посылать запросы на печать на другую систему, где они и будут печататься.
Это система, которая делает какой-нибудь принтер доступным другим системам в сети.
Отсюда может быть инициирована печать.
Если пользователь не задал имя принтера, то какая из перечисленных ниже переменных окружения сообщает, куда выполнять печать?
$НОМЕ
$LPDEST
SPRINTER
$DEFAULT_DEST
Для чего используется поле Print Server при добавлении принтера через AdminTool?
Определяет имя системы, к которой присоединяется принтер.
Определяет данную систему в качестве сервера печати.
Определяет систему, с которой следует загрузить программное обеспечение печати.
Определяет систему, которая может записывать в буферный спул локальных принтеров.
Что из перечисленного является устройством последовательного порта?
/dev/bppO
/dev/ttya
/dev/term/a
/dev/fd
Что из перечисленного является допустимым портом принтера?
/dev/terma
/dev/term/a
/dev/ecppO
/dev/term/ttya
Какая из команд отменяет для пользователя bcalkins все запросы на печать на принтер jetprint?
Iprm -bcalkins jetprint
cancel -Pjetprint bcalkins
cancel-u bcalkins jetprint
Ipremove -Pjetprint bcalkins
Какой из перечисленных ниже методов может быть использован для удаления принтера?
Ipadmin -х <printername>
Ipshut <printername>
Admintool
Ipadmin -D <printername>
Какая из команд удаляет задание из очереди печати?
Ipmove
cancel
Iprm
reject
Какой демон обслуживает все принтеры?
Ipsched
Ipd
1рг
spoold
Где размещается информация о принтерах?
Примените ваши знания
/etc/printers.conf
/etc/lp
/var/spool/lp
/etc/print
Что из перечисленного представляет собой систему, к которой подсоединен локальный принтер и которая делает его доступным для других систем в сети?
Сервер печати
Клиент печати
Клиент
Сервер
Если пользователь не задал при печати имя принтера или класса, то какая из перечисленных ниже переменных окружения проверяется для определения принятого по умолчанию принтера?
PRINTER и LPDEST
LPDEST
DEFAULTDEST
В каком каталоге размещаются элементы terminfo для принтеров PostScript?
/usr/share/lib/terminfo/P
/var/spool/lp/postscript
/etc/lp/interfaces
/etc/lp/printers
Какая из команд добавляет принтер luna к классу roughdrafts?
Ipadmin -р luna -с roughdrafts
Ipadmin -class roughdrafts -р luna
Ipadmin luna -c roughdrafts
Ipadmin -cp roughdrafts luna
Какая из команд отображает характеристики принтера hplaser?
Ipstat -р hplaser -I
Ipstat -р hplaser
Ipadmin -р hplaser -1
Ipstat -а -р hplaser -I
Какая из перечисленных ниже команд изменяет запрос на печать с идентификатором epsl-29, присваивая ему приоритет 1?
Ip -i epsl-29 -q 1
Ipadmin-i epsl-q 0
Ip-i epsl-29-q 39
Ipadmin-i epsl-q 39
Ответы на обзорные вопросы
В. Утилита UNIX, которая отвечает за печать в среде SVR4 UNIX, называется 1р.
В. В операционной системе Solaris каталог спула размещается в /var/spool/lp.
С. Команда reject отвергает любые последующие запросы к принтеру или к классу, входящему в область спулинга.
А, В, С. Для добавления локального принтера к серверу печати следует использовать Admintool, Printer Manager или Ipadmin.
В. Команда Ipshut останавливает службу печати.
D. Команда 1р помещает информацию, подлежащую выводу на печать, в спулер.
А, С. Сервер печати представляет собой систему, к которой подсоединен локальный принтер. Сервер печати обеспечивает доступность данного принтера другим системам в сети.
В, С. Если пользователь не задал имя принтера или класса в каком-нибудь из допустимых стилей, проверяется переменная окружения PRINTER или переменная LPDEST для определения принятого по умолчанию имени принтера.
А. Когда утилита AdminTool используется для добавления какого-нибудь принтера, поле Print Server определяет имя системы, к которой присоединяется данный принтер.
С. /dev/term/а - это устройство последовательного порта.
В, С. На системе Solaris в число допустимых портов принтера входят/dev/term/ a, /dev/term/b и /dev/ecppO.
С. Приведенная ниже команда отменяет для пользователя bcalkins все запросы на печать на принтер, который имеет имя jetprint:
cancel -u bcalkins jetprint
А, С. Для удаления принтера из системы вы можете воспользоваться либо командой Ipadmin -х, либо интерфейсом утилиты Admintool.
В. Для удаления задания из очереди печати следует воспользоваться командой cancel.
А. Планировщик печати, Ipsched, обрабатывает запросы на печать на серверах печати.
А, В. При установке какого-нибудь принтера с помощью Admintool или команды Ipadmin операционная система Solaris, если необходимо, вносит соответствующие изменения в файл /etc/printers.conf и в каталог /etc/lp.
А. Сервер печати представляет собой систему, к которой подключен какой-нибудь локальный принтер и которая обеспечивает его доступность для других систем в сети.
А. Если пользователь не задал имя принтера или класса в каком-нибудь из допустимых стилей, то команда 1р проверяет пользовательскую переменную окружения PRINTER или LPDEST для определения принятого по умолчанию имени принтера.
А. Элементы базы данных terminfo для принтеров PostScript сохраняются в каталоге /usr/share/lib/terminfo/P.
А. Для добавления принтера к некоторому классу следует использовать следующий синтаксис команды: Ipadmin -р <printer-name> -с <printer-class>.
А. Для отображения характеристик конкретного принтера следует воспользоваться командой Ipstat, как показано: Ipstat -р <printer-name> -1.
А. Для назначения запросу на печать приоритета 1 следует воспользоваться командой 1р, как показано: Ip -i <job name> -q 1.
Глава 11Глава 11Резервное копирование и восстановление
Глава 11
Глава 11
Темы
В настоящей главе рассматриваются следующие темы экзамена:
Сопоставление утилит резервного копирования, архивации и восстановления с точки зрения их функциональных возможностей.
Операционная система Solaris 8 предоставляет несколько утилит для копирования данных между дисками, магнитными лентами и другими носителями информации. Системному администратору необходимо понимать возможности каждой утилиты и определять, какая из них является наилучшей в конкретной ситуации. Настоящая глава описывает все утилиты и команды, применяемые для резервного копирования и восстановления данных в системе Solaris.
Определение команд и операций, необходимых для выполнения резервного копирования файловой системы на магнитную ленту.
Вам необходимо будет понимать все операции, выполняемые при копировании некоторого файла или файловой системы на магнитную ленту, каждой из разнообразных утилит резервирования операционной системы Solaris.
Определение команд и операций, необходимых для выполнения восстановления некоторой файловой системы с магнитной ленты,
Вам необходимо будет понимать все операции, выполняемые для восстановления некоторого файла или файловой системы с магнитной ленты, каждой из разнообразных утилит резервирования операционной системы Solaris.
Содержание
(Введение387
Носители информации для резервного копирования387
Утилиты резервного копирования и восстановления операционной системы Solaris 388
Утилита tar388
Примеры использования утилиты tar389
Утилита dd390
Примеры использования утилиты dd390
У-пилита cpio391
Примеры использования утилиты cpio392
‘Резервное копирование файлов с использованием режима copy-out393
(Восстановление файлов с использованием режима copy-in393
Фежум pass394
Утилита рак.394
Примеры использования утилиты рак.397
У-пилита ufsdump397
Примеры использования утилиты ufsdump402
Упилита ufsrestore .403
Примеры использования утилиты ufsrestore405
(Восстановление Курневой файловой системы или файловой системы /usr407
Фополнительные замечания к,вопросу о восстановлении файлов409
Резюме409
Примените ваши знания410
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
В процессе изучения настоящей главы убедитесь, что вы хорошо понимаете различные инструменты резервного копирования, доступные в Solaris. На экзамене вам нужно будет подобрать надлежащий инструмент для задачи, которую он может выполнить, или соотнести инструмент с корректным описанием.
Попрактикуйтесь в выполнении команд со всеми их опциями на какой-нибудь действующей системе Solaris 8 (на платформе Sun или Intel). Попытайтесь запомнить примеры, приведенные в настоящей главе. Эти примеры иллюстрируют команды и опции, которые, что весьма вероятно, встретятся вам на экзамене. Очень хороню, если в вашем распоряжении имеется какой-нибудь накопитель на магнитной ленте, с которым вы могли бы поработать практически, однако, если такого устройства у вас нет, попрактикуйтесь в использовании приведенных здесь команд для перемещения файлов между двумя разделами некоторого диска.
Разберитесь хорошенько с пошаговыми примерами, приведенными в настоящей главе. Запомните их - эти примеры встретятся вам на экзамене.
Введение
Резервное копирование системы включает в себя копирование данных с жестких дисков этой системы на сменные носители информации, которые могут быть безопасно сохранены в некоторой защищенной области. Резервное копирование данных системы представляет собой одну из наиболее важных функций системного администрирования и должно проводиться регулярно. Резервные копии применяются для восстановления данных в том случае, если файлы оказались поврежденными или какое-нибудь бедствие со зданием привело к разрушению данных. Наличие отказоустойчивого дискового массива является недостаточным. Зеркальное отражение дисков и дисковые массивы класса RAID 5 защищают ваши данные в случае какого-либо отказа аппаратных средств системы, однако они не защищают от повреждений файлов, стихийных бедствий или случайного удаления файлов. Другими словами, если какая-нибудь программа повреждает конкретный файл, то его зеркальная копия также окажется поврежденной. Следовательно, необходимо иметь какой-нибудь способ для стороннего резервного копирования ваших данных. Резервное копирование данных системы - наиболее важная задача, которую вам предстоит решать - должно выполняться на регулярной основе. Несмотря на то, что даже исчерпывающая схема резервного копирования не может гарантировать отсутствие потерь информации, вы сможете убедиться, что потери в данном случае будут сведены к минимуму.
В настоящей главе описываются методы, доступные для выполнения резервного копирования, типы резервных копий, разработка устойчивой стратегии резервного копирования и восстановление данных в том случае, если вы столкнулись с их потерей. В первую очередь вам предстоит познакомиться с описаниями команд tar, dd, cpio и pax, которые применяются для копирования данных с диска на диск или с диска на магнитную ленту. Затем вы изучите утилиты ufsdump и ufsrestore, которые рекомендованы для выполнения регулярного резервного копирования данных в Solaris на магнитную ленту.
Носители информации для резервного копирования
Выбор носителей информации для резервного копирования является столь же критичным, сколь и выбор программы для этого. Используемые носители информации для резервного копирования должны быть сменными, чтобы информация могла бы сохраняться в другом месте с целью обеспечения ее безопасного хранения на случай пожара, наводнения или другого стихийного бедствия. В некоторых случаях носитель информации для резервного копирования представляет собой просто еще одну систему, размещенную в другом здании. Однако большинство систем резервного копирования используют в качестве носителей информации магнитную ленту. Магнитная лента до сих пор обеспечивает минимальную стоимость в расчете на один мегабайт сохраняемых данных. Некоторые типовые устройства на магнитной ленте, которые используются для хранения резервных копий данных, представлены в таблице 11.1.■
Таблица Йй>ЙИфуётр^с^||а^-
ЕмкостьЕмкостьБобина с лентой шириной 1/2 дюймаКассета с лентой шириной 1/4 дюйма (QIC)Кассета с лентой шириной 8 ммКассета с лентой типа DAT шириной 4 мм(DDS-DDS4)Кассета с лентой типа DLT шириной 1/2 дюйма (DLT2000-DLT7000)Бобина с лентой шириной 1/2 дюймаКассета с лентой шириной 1/4 дюйма (QIC)Кассета с лентой шириной 8 ммКассета с лентой типа DAT шириной 4 мм(DDS-DDS4)Кассета с лентой типа DLT шириной 1/2 дюйма (DLT2000-DLT7000)140 Мбайт (6250 BPI (байт на погонный дюйм))8 Гбайт140 Мбайт (6250 BPI (байт на погонный дюйм))8 Гбайт40-70 Гбайт40-70 Гбайт1-40 Гбайт1-40 Гбайт20-80 Гбайт20-80 ГбайтТип носителя
Емкость
Емкость
Бобина с лентой шириной 1/2 дюйма
Кассета с лентой шириной 1/4 дюйма (QIC)
Кассета с лентой шириной 8 мм
Кассета с лентой типа DAT шириной 4 мм
(DDS-DDS4)
Кассета с лентой типа DLT шириной 1/2 дюйма (DLT2000-DLT7000)
Бобина с лентой шириной 1/2 дюйма
Кассета с лентой шириной 1/4 дюйма (QIC)
Кассета с лентой шириной 8 мм
Кассета с лентой типа DAT шириной 4 мм
(DDS-DDS4)
Кассета с лентой типа DLT шириной 1/2 дюйма (DLT2000-DLT7000)
140 Мбайт (6250 BPI (байт на погонный дюйм))
8 Гбайт
140 Мбайт (6250 BPI (байт на погонный дюйм))
8 Гбайт
40-70 Гбайт
40-70 Гбайт
1-40 Гбайт
1-40 Гбайт
20-80 Гбайт
20-80 Гбайт
Для достижения большей емкости один или несколько таких накопителей на магнитной ленте объединяются в шкафы, которые называются ленточными библиотеками, или ленточными башнями, и могут хранить несколько терабайт данных, распределенных между десятками или даже сотнями магнитных лент. Такие системы обслуживаются роботизированными манипуляторами, и в них операции поиска, извлечения и загрузки лент в накопители на магнитной ленте выполняются автоматически для исключения необходимости вмешательства человека.
Утилиты резервного копирования и восстановления операционной системы Solaris
Операционная система Solaris предоставляет утилиты резервного копирования, которые перечисляются в таблице 11.2. Эти утилиты могут быть использованы для копирования данных с диска на сменный носитель информации и для их восстановления.
Таблица 11.2 Утилиты резервного копирования
Утилита
Описание
tar
Архивирует данные в другой каталог, на другую систему или на другой носитель информации.
dd
Быстро копирует данные.
cpio
Копирует данные из одного местоположения в другое.
pax
Копирует файлы и поддеревья каталогов на одну магнитную ленту. Эта утилита обеспечивает лучшую переносимость, чем tar или cpio, поэтому она может быть использована для переноса файлов на другие типы систем UNIX.
ufsdump
Выполняет резервное копирование всех файлов в файловой системе.
ufsrestore
Восстанавливает некоторые или все файлы, архивированные с помощью команды ufsdump.
Утилита tar
Основное применения команды tar (tape archiver - ленточный архиватор) - копирование файловых систем или отдельных файлов с жесткого диска на магнитную ленту или с магнитной ленты на жесткий диск. Вы также можете использовать команду tar для создания tar-архива на жестком или гибком диске либо для извлечения файлов из него. Ко-
манда tar является популярной, поскольку она доступна на большинстве систем UNIX; однако она ограничена единственной магнитной лентой. Если данные, резервное копирование которых вы выполняете, требуют более чем одной магнитной ленты, то следует воспользоваться командами cpio, pax или ufsdump, которые будут описываться далее.
Синтаксис команды tar выглядит следующим образом: tar <options> <tar filename» <file list» где <options> - список опций данной команды, представленных в таблице 11.3.
Таблица 11.3 Опции команды tarr i -4
ОпцияОписание
сСоздает tar-файл.
tОглавление. Выводит список имен заданных файлов всякий раз,когда они
появляются в составе tar-файла. Если ни один аргумент файла не задан, то перечисляются имена всех файлов, входящих в данный tar-файл. Когда эта опция используется совместно с функциональным модификатором v, то отображает дополнительную информацию о заданных файлах.
хИзвлекает, или восстанавливает, файлы из данного файла tar.
vРасширенный вывод. Выводит информацию на экран по мере того, как
команда tar считывает или записывает данный архив.
fИспользует аргумент <tar filename» в качестве имени tar-архива. Если
опция f опущена, команда tar использует устройство, указанное переменной окружения ТАРЕ, если таковая установлена. Если переменная окружения ТАРЕ не установлена, то команда tar использует значения по умолчанию, определенные в файле /etc/default/tar. Еслив качестве имени tar-файла задано тире (-), то команда tar записывает на стандартное устройство вывода или считывает со стандартного устройства ввода.
Для получения более полного списка опций данной команды обратитесь к страницам оперативного руководства операционной системы Solaris.
Аргумент <tar filename> используется совместно с опцией f и может представлять собой любое имя по вашему желанию. В качестве имени файла может также выступать имя некоторого устройства, такое как /dev/rmt/О или /dev/rfdO. Аргумент <fde list> - это список файлов, которые вы хотите включить в данный архив.
Примеры использования утилиты tar
Приведенные ниже примеры демонстрируют использование команды tar.
Для создания ленточного архива на магнитной ленте /dev/rmt/О, включающего все содержимое каталога /home/bcalkins, введите следующую командную строку:
tar cvf /dev/rmt/О /home/bcalkins
Для просмотра файлов в данном архиве наберите следующую командную строку: tar tvf /dev/rmt/О
Для восстановления файла /home/bcalkins/.profile из данного архива введите следующую команду:
tar xvf /dev/rmt/О /home/bcalkins/.profile
Утилиту tar можно применять для создания архива на диске, а не на магнитной ленте. Имя такого архива будет files.tar, как показано далее:
tar cvf files.tar /home/bcalkins
Для извлечения файлов, которые были созданы в предшествующем примере, введите следующую команду:
tar xvf files.tar
Обратите внимание на использование полного имени маршрута. Применение полного имени маршрута при создании архива гарантирует, что файлы будут восстановлены в их исходное местоположение в иерархии каталогов. Вы просто не сможете восстановить эти файлы в какое-нибудь другое место.
Если бы в предыдущем примере вы хотели бы иметь возможность восстановления файлов с относительным именем маршрута, то следовало бы перейти в каталог /home/ bcalkins и задать файлы, которые подлежат архивации, следующим образом: ./*. В результате файлы будут помещены в архив и при этом будет использоваться имя маршрута относительно текущего рабочего каталога, а не абсолютное имя маршрута, начинающееся с символа прямого слэша. Затем файлы могут быть восстановлены в любой каталог.
Утилита dd
Основным преимуществом команды dd является то, что она быстро преобразовывает и копирует файлы различных форматов данных, включая разницу в размерах блоков или в длинах записей.
Наиболее распространенным способом применения команды dd является перенос целиком файловой системы или раздела с жесткого диска на магнитную ленту. Кроме того, вы можете воспользоваться этой командой для копирования файлов с одного жесткого диска на другой. Когда вы копируете данные, то команда dd создает некоторую копию- отображение (точная копия байт в байт) любого носителя информации, которым может быть либо магнитная лента, либо жесткий диск. Аргументы команды dd описываются в таблице 11.4. Синтаксис команды dd выглядит следующим образом:
dd if=<input-file> of=<output-file> <option=value>
^^иЦа"11Ж. Аргументы команды dd::;
АргументОписание
ifИспользуется для указания входного файла. Аргумент input-file может
■ быть именем файла либо устройства, таким как /dev/rmt/О. Если никакой входной файл не задан, информация для команды dd берется со стандартного устройства ввода, принятого в UNIX.
ofИспользуется для указания выходного файла. Аргумент output-file мо
жет быть именем файла либо устройства, таким как /dev/rmt/О. Если никакой выходной файл не задан, выходная информация команды dd посылается на стандартное устройство вывода, принятое в UNIX.
В командной строке могут быть использованы некоторые другие опции, которые применяются для задания размеров буферов, размеров блоков и преобразований данных. Список этих опций можно найти на страницах оперативного руководства операционной системы Solaris.
Примеры использования утилиты dd
Приведенные далее примеры демонстрируют применение команды dd для копирования данных. В первом примере команда dd используется для дублирования магнитных
лент. Эта процедура требует наличия двух накопителей на магнитной ленте - исходного и конечного:
dd if=/dev/rmt/O of=/dev/rmt/l
Следующий пример демонстрирует, как команда dd используется для копирования одного полного жесткого диска на другой. В этом примере вам потребуется два жестких диска, причем оба они должны иметь одну и ту же геометрию. Геометрия диска обсуждалась в главе 6.
dd if=/dev/rdsk/c0tld0s2 of=/dev/rdsk/c0t4d0s2 bs=128
В данном примере опция bs=128 устанавливает размер блока. Большой размер блока, например 128 Кбайт или 256 Кбайт, будет уменьшать время копирования за счет буферизации больших объемов данных. Обратите также внимание на то, что задаются низкоуровневые устройства. Чтобы описанная технология работала должным образом, вам следует использовать низкоуровневое (символьное) устройство, что позволит исключить буферизованную (блочную) систему ввода-вывода.
Вы можете использовать команду dd совместно с командой tar для создания архива на дистанционном накопителе на магнитной ленте. В приведенном ниже примере команда tar применяется для создания архива на дистанционной системе с именем хепа путем конвейерной пересылки выходной информации на накопитель на магнитной ленте /dev/rmt/О:
tar cvf - <files> | rsh хепа dd of=/dev/rmt/0 obs=128
Еще одним примером может служить чтение данных из tar-архива, поступившего с другой системы UNIX, такой как Silicon Graphics. Система Silicon Graphics переставляет местами каждую пару байт, что делает подготовленную на ней магнитную ленту с tar- архивом нечитаемой в системе Solaris. Для считывания магнитной ленты с архивом, поступившей от Silicon Graphics, наберите следующую команду:
dd if=/dev/nrstO conv=swab | tar xvf -
Таким же способом в Solaris можно создать магнитную ленту с tar-архивом, которая сможет быть прочитана в системе Silicon Graphics:
tar cvf - <files> | dd of=/dev/nrstO conv=swab
Утилита cpio
Команда cpio используется для копирования данных с одного места в другое. Аббревиатура cpio обозначает "copy input to output" ("копирование ввода на вывод"). Когда выполняется копирование файлов с помощью команды cpio, вы предоставляете список файлов на ее стандартной ввод и записываете файл архива на ее стандартный вывод. Принципиальным достоинством команды cpio является ее гибкий синтаксис. Данная команда функционирует в качестве программного фильтра, получая входную информацию со стандартного ввода и направляя свой вывод на стандартный вывод. Вводом и выводом команды cpio можно манипулировать при помощи оболочки, или командного процессора, для задания переадресации (переназначения) и конвейерной пересылки данных. Далее перечисляются преимущества утилиты cpio по сравнению с другими утилитами UNIX:
^ Утилита cpio может выполнять резервное копирование и восстановление отдельных файлов, а не только файловых систем целиком. Утилиты tar и рах также обладают такой возможностью.
^ Резервные копии, созданные с помощью утилиты cpio, имеют меньший размер по сравнению с резервными копиями, созданными с помощью утилиты tar, поскольку они имеют меньший заголовок.
ф Утилита cpio может задействовать несколько магнитных лент; a tar - только одну.
Благодаря своей гибкости утилита cpio имеет большее количество опций и воспринимается как более сложная команда по сравнению с утилитой tar.
Программа функционирует в одном из трех режимов: copy-out (cpio -о), copy-in (cpio -i), или pass (cpio -p). Применяйте режим copy-out при создании резервной копии на магнитной ленте, а режим copy-in, когда вы восстанавливаете файлы или просматриваете список файлов на магнитной ленте. Режим pass обычно используется для копирования файлов жесткого диска из одного места в другое. Вы всегда должны указывать один из трех упомянутых выше режимов. Синтаксис команды cpio выглядит следующим образом:
cpio <mode> <option>
где mode принимает значение -i, -о или -р, a option - одна из опций, перечисляемых в таблице 11.5.
■^а^щ 11-5 ОПЦИИ команды cpio.Л i:
ОпцияОписание
сЗаписывает информацию заголовка в формате ASCII для обеспечения
переносимости.
dСоздает столько каталогов, сколько необходимо.
ВОпределяет, что входная информация имеет записи, размер которых со
ставляет 5120 байт, вместо значения по умолчанию -512 байт. Вы должны использовать при восстановлении файлов с магнитной ленты на жесткий диск точно такой же коэффициент блокирования, как при копировании файлов с жесткого диска на магнитную ленту. Вы должны использовать эту опцию всякий раз при выполнении копирования файлов или файловых систем на накопитель на магнитной ленте и с указанного накопителя.
VРасширенный вывод. Выводит имена файлов по мере их обработки.
иБезусловное копирование. Если данная опция не используется, то бо
лее старый файл не будут заменяться более новым файлом, имеющим то же самое имя.
тСохраняет время предыдущего модифицирования данного файла. Эта
опция не оказывает влияния при выполнении копирования каталогов.
Примеры использования утилиты cpio
Приведенный ниже пример демонстрирует, как скопировать каталог /work и все его подкаталоги на накопитель на магнитной ленте с именем /dev/rmt/О. Опция -о определяет режим copy-out, опция -с позволяет записывать информацию заголовка в формате ASCII, опция -В применяется для увеличения коэффициента блокирования (блок размером 5120 байт) с целью повышения скорости копирования.
cd /work
Is -R I cpio -ocB > /dev/nnt/0
Следующий пример демонстрирует, как скопировать файлы, находящиеся на магнитной ленте, обратно в каталог по имени /work на жестком диске:
cd /work
cpio -icvdB < /dev/rmt/О
В данном случае опция -i определяет режим copy-in, благодаря опции -d по мере необходимости будут создаваться каталоги для восстановления всех данных в их исходное местоположение, а опция -v позволяет отображать всю выходную информацию.
Резервное копирование файлов с использованием режима copy-out
Чтобы воспользоваться режимом copy-out для выполнения резервного копирования, вам необходимо послать список файлов на стандартный ввод cpio. Практически вы используете команду UNIX под названием find для создания списка файлов, подлежащих резервному копированию. Режим copy-out задается с помощью опции -о в командной строке команды cpio. В примере, который приведен ниже, файл с именем list содержит краткий список файлов, подлежащих резервному копированию на магнитную ленту:
cpio -ovB list > /dev/rmt/1
Как показано в таблице 11.5, обычно команда cpio записывает файлы на стандартный вывод в виде записей длиной по 512 байт. Посредством задания опции -В вы увеличиваете размер записи до 5120 байт, что, как показано в предшествующем примере, обеспечивает значительное ускорение передачи данных. Вы можете воспользоваться командами UNIX для генерации списка файлов, подлежащих резервному копированию командой cpio, несколькими различными способами, как показано в следующих примерах.
Вы можете выполнить резервное копирование файлов, введя соответствующие имена файлов с клавиатуры. После завершения ввода имен файлов нажмите клавиши Ctrl+D. Наберите следующее:
cpio -о > /dev/rmt/1
Filel.txt
File2.txt
Вы также можете воспользоваться командой 1s для создания списка файлов, подлежащих резервному копированию с помощью команды cpio. Введите следующие командные строки:
cd /home/bcalkins
Is * I cpio -о > /dev/rmt/1
Используйте команду find для генерации списка файлов, которые были созданы или модифицированы пользователем bcalkins в течение последних пяти дней. Это и будет список файлов, подлежащих резервному копированию:
find . -user bcalkins -mtime -5 -print | cpio -o > /dev/rmt/1
Если текущая магнитная лента заполняется, программа cpio предложит вам установить другую магнитную ленту. Вы увидите на экране следующее сообщение:
If you want to go on, type device/file name when ready
Затем вы должны будете заменить магнитную ленту и ввести имя устройства для резервного копирования (например, /dev/rmt/1).
Восстановление файлов с использованием режима copy-in
Используйте режим copy-in команды cpio для восстановления файлов с магнитной ленты на диск. Приведенные далее примеры демонстрируют методы, применяемые для восстановления файлов из cpio-архивов.
Первый пример демонстрирует, как восстановить все файлы и каталоги с магнитной ленты на диск. Установленные опции команды cpio будут безусловно восстанавливать файлы (опция -и) в каталог/users и сохранять времена предыдущих модификаций файлов (опция -ш). Введите следующие команды:
cd /users■
cpio -icvumB < /dev/rmt/1
В следующем примере показано, как избирательно восстановить только те файлы, имена которых начинаются с выражения "database". Опция -d обеспечит создание каталогов по мере необходимости. Наберите следующую командную строку:
cpio -icvduinB 'database*' < /dev/rmt/1
Одиночные кавычки должны использоваться для передачи команде cpio символа подстановки (*) в качестве аргумента.
Следующий пример демонстрирует, как получить список файлов, находящихся на магнитной ленте:
cpio -ictB < /dev/rmt/1
На экране появится список файлов, которые находятся на устройстве /dev/rmt/1.
Режим pass
Режим передачи (pass) обычно не используется для целей резервного копирования. Целевым должен быть какой-нибудь каталог на смонтированной файловой системе, а это означает, что режим передачи не может быть применен для переноса файлов на магнитную ленту. Однако вы можете воспользоваться режимом передачи внутри команды cpio для копирования файлов из одного каталога в другой. Преимущество использования команды cpio по сравнению с командой ср заключается в том, что сохраняются времена исходного модифицирования файлов и сведения об их владельцах. Задайте режим передачи с помощью опции -р в команде cpio. Приведенный ниже пример демонстрирует, как скопировать все файлы из каталога /users в каталог/bkup:
cd /users mkdir /bkup Is * I cpio -pdumv bkup
По мере копирования на экране будут отображаться имена файлов.
Утилита рах
Начиная с версии 2.5, в состав операционной системы Solaris входит команда рах, которая представляет собой соответствующую стандартам POSIX утилиту архивации, способную считывать и записывать архивы в форматах tar и cpio. Эта утилита доступна на всех системах UNIX, совместимых со стандартами POSIX, включая AIX фирмы IBM, HP- UX корпорации Hewlett-Packard и Linux.
Утилита рах может считывать, записывать и выводить состав файла архива, а также копировать иерархии каталогов. Утилита рах поддерживает большое разнообразие форматов архивов, включая архивы в форматах tar и cpio.
Обнаружив в процессе обработки архива, что он поврежден или разрушен, утилита рах пытается исправить дефекты на носителе информации. Она выполняет поиск в архиве для выявления и обработки максимально возможного количества файлов из него.
Действия, выполняемые этой утилитой, определяются в зависимости от наличия опций -г и -w, которые представляют четыре режима (modes) функционирования: вывод списка, чтение, запись и копирование. Эти режимы описываются в таблице 11.6. Синтаксис команды рах выглядит следующим образом:
pax <mode> <options>
Опция РежимОписание
функционирования
-Г
Чтение
Если опция -г задана, а опция -w не задана, то утилита рах извлекает имена файлов и каталогов, обнаруженные в файле архива. Этот файл архива считывается с диска или с магнитной ленты. Если извлеченный файл является каталогом, то вместе с ним также извлекается иерархия файлов. Извлеченные файлы создаются относительно текущей иерархии файлов.
Не задана
Вывод списка
Если ни опция -г, ни опция -w не заданы, то утилита рах отображает имена файлов и каталогов, обнаруженных в заданном файле архива. Этот файл архива считывается с диска, с магнитной ленты или со стандартного ввода. Список файлов записывается на стандартный вывод.
-W
Запись
Если опция -w задана, а опция -г - нет, то утилита рах записывает содержимое заданного файла на стандартный вывод в формате архива, который задается при помощи опции -х. Если ни один файл не задан, то список файлов, подлежащих копированию (по одному имени файла в строке), считывается со стандартного ввода. Каталог включает в себя все файлы в иерар- ■ хии файлов, которая начинается сданного файла.
-rw
Копирование
Если заданы опции -г и -w, то утилита рах копирует заданные файлы в целевой каталог.
Помимо выбора режима функционирования утилиты рах, вы можете выбрать одну или несколько ее опций (options) из таблицы 11.7.
Таблица 11.7ОцрймдЙ>майдь1 рах■
ОпцияОписание
гСчитывает файл архива со стандартного ввода и извлекает заданные
файлы. Если для извлечения какого-нибудь компонента архива требуются любые промежуточные каталоги, то они создаются.
wЗаписывает файлы на стандартный вывод в заданном формате архива.
Если никакие операнды файлов нв заданы, то со стандартного устройства ввода информации считываются имена маршрутов - по одному в строке, без использования ведущих или завершающих пустых строк.
аДобавляет файлы в конец архива, который был записан ранее.
ЬРазмер блока. Этот размер должен быть кратен 512 байт, а его макси
мальное значение равняется 32256 байт. Размер блока может заканчиваться символом к или Ь для задания умножения на 1024 (1 Кбайт) или на 512 байт соответственно.
Продолжение таблицы 11.7
Опция
Описание
-с
Сравнивает все файлы или компоненты архива за исключением тех, которые заданы шаблонвми или операндами файлов.
-f <archive>
Задает аргумент <archive> в качестве имени маршрута входного или выходного архива. Единый архив может охватывать несколько файлов и различные устройства архивирования. Если требуется, то утилита рах приглашает ввести имя маршрута файла или устройства следующего тома данного архива.
-i
Интерактивно переименовывает файлы или компоненты архива. Для каждого компонента, соответствующего некоторому операнду шаблона, или для каждого файла, соответствующего некоторому операнду файлов, на терминал будет выдано соответствующее приглашение.
-n
Выбирает первый компонент архива, который соответствует каждому операнду шаблона. С каждым шаблоном сопоставляется лишь один компонент архива.
-p <string>
Определяет одну или более опций (привилегий), характеризующих файл. Аргумент <string> данной опции - это строка, задающая характеристики файлов, которые будут сохранены или отброшены в процессе извлечения. Эта строка состоит из символов спецификации а, е, т, о и р. В пределаходной строки может быть конкатенировано (сцеплено) несколько характеристик, и может быть задано несколько опций -р. Символы спецификации имеют следующие значения:
. аНе сохраняет времена доступа к файлам
еСохраняет все характеристики: идентификаторы пользователя
и группы, биты режимов файлов, времена доступа к файлам и времена их модифицирования
mНе сохраняет времена модифицирования файлов
оСохраняет идентификаторы пользователя и группы
рСохраняет биты режимов файлов
-V
Расширенный режим.
-x <format>
Определяет формат выходного архива, при этом принятым по умолчанию форматом является ustar. Утилита рах в настоящее время поддерживает форматы cpio, tar, bcpio, uetar, sv4crc и sv4cpio.
Дополнительные опции утилиты рах можно найти на страницах интерактивного руководства операционной системы Solaris.
При использовании утилиты рах вы можете наряду с опциями, перечисленными в таблице 11.6, задавать операнды файлов. Такой операнд определяет имя маршрута целевого файла или каталога. Если вы задали операнд несуществующего каталога, полномочий на запись в который данный пользователь не имеет или который не является каталогом, то утилита рах оканчивает работу с ненулевым кодом завершения.
Операнд файла определяет имя маршрута файла, который будет скопирован или архивирован. Если некоторый операнд не выбирает, по крайней мере, хотя бы один компонент архива, то утилита рах записывает маршруты операндов файлов в диагностическом сообщении в стандартном файле ошибок, а затем оканчивает работу с ненулевым кодом завершения.
Другим возможным операндом является операнд шаблона, который применяется для выбора одного или нескольких имен маршрутов компонентов архива. Эти компоненты выбираются посредством сопоставления шаблонов имен файлов, описываемых с помощью fnmatch. Далее приведены примеры операндов шаблонов:
?Вопросительный знак сопоставляет любой символ.
*Звездочка сопоставляет многочисленные символы.
[Открытая квадратная скобка включает в качестве шаблона целое выражение.
Если операнд шаблона не представлен, выбираются все компоненты данного архива. Если блон совпадает с именем каталога, то выбирается целиком вся иерархия файлов, начинаю- яся с данного каталога. Если операнд шаблона не выбирает, по крайней мере, хотя бы один шонент архива, то рах записывает операнды шаблонов в диагностическом сообщении в [ндартном файле ошибок, азатем оканчивает работу с ненулевым кодом завершения.
Примеры использования утилиты рах
Приведенные ниже примеры демонстрируют использование команды рах. Например, 1 копирования файлов на магнитную ленту следует выдать команду рах, используя при >м опцию -w для копирования содержимого текущего каталога и опцию -f для задания гройства на магнитной ленте:
pax -w -f /dev/rmt/О
Для вывода расширенного оглавления некоторого архива, сохраненного на ленточ- м устройстве /dev/rmt/О, введите следующую команду:
pax -v -f /dev/rmt/О
В обоих приведенных выше примерах вместо ленточного устройства могло быть укаю имя файла некоторого архива на диске.
Приведенная ниже команда может быть использована для интерактивного выбора йлов, подлежащих копированию, из текущего каталога в целевой:
pax -rw -i . <dest_dir>
Когда вы поближе познакомитесь с утилитой рах, то начнете применять ее вместо tar pio по следующим причинам:
Ф Переносима на другие системы UNIX
Ф Восстанавливает поврежденные архивы
Ф Работает с многотомными носителями информации
Утилита ufsdump
Хотя различные утилиты Solaris, которые обсуждались в настоящей главе, могут быть юльзованы для копирования файлов с диска на магнитную ленту, утилита ufsdump созда- специально для выполнения резервного копирования, и именно она рекомендована для шрования ваших файловых систем Solaris. Команда ufsdump копирует файлы, каталоги 4 целые файловые системы с жесткого диска на магнитную ленту или с одного диска на /гой. Единственным недостатком использования ufsdump является то, что файловая сис- ta должна быть неактивной прежде, чем вы сможете провести полное резервное копирова- з. Если данная файловая система все еще продолжает оставаться активной, то ничего из о, что находится в буферах памяти, не будет скопировано на магнитную ленту.
Вы должны выполнять резервное копирование любых файловых систем, которые яв- отся критичными для пользователей, включая часто изменяемые файловые системы. В шице 11.8 приведены рекомендации по файловым системам, подлежащим резервному шрованию, и по частоте его выполнения.
Файловая система Частота
Корневая (/) файловая система
Если вы часто добавляете или удаляете клиентов и аппаратные средства в сети или должны изменить важные файлы в корневой (/) файловой системе, то эта файловая система должна быть подвергнута резервному копированию. Вы должны выполнять полное резервное копирование корневой файловой системы с периодичностью от одного раза в неделю до одного раза в месяц. Если каталог/var находится в вашей корневой файловой системе и электронная почта пользователей на вашем сайте хранится в каталоге /var/mail на каком-нибудь сервере электронной почты, то вы, вполне возможно, захотите выполнять ежедневное резервное копирование корневой файловой системы.
/usr
Содержимое данной файловой системы является преимущественно статичным, поэтому следует выполнять ее резервное копирование с периодичностью от одного раза в неделю до одного раза в месяц.
/export/home
Эта файловая система содержит исходные каталоги и подкаталоги всех пользователей данной системы; файлы в этой системе часто изменяются, и ее копирование должно выполняться ежедневно.
Данные
Все каталоги данных должны подвергаться ежедневному копированию.
Команда ufsdump имеет множество встроенных особенностей, которыми не обладают другие утилиты архивации, в том числе:
Ф Может быть использована для резервного копирования отдельных файловых систем на локальные или дистанционные накопители на магнитной ленте или на дисковые накопители. Такое устройство может быть установлено на любой системе в сети. Эта команда выполняется быстро, поскольку она учитывает структуру файловой системы UFS и работает непосредственно через исходный файл устройства.
ф Имеет встроенные опции для создания инкрементальных резервных копий, которые будут включать только те файлы, которые были изменены после предыдущего резервного копирования, что позволяет экономить магнитную ленту и время.
Ф Имеет возможность с одной системы выполнять резервное копирование группы систем в сети. Вы можете запускать ufsdump на каждой дистанционной системе через дистанционную оболочку или дистанционную регистрацию, направляя при этом вывод на ту систему, где расположен накопитель.
Ф Системный администратор может ограничить доступ пользователей к таблицам резервного копирования.
Ф Имеет встроенную опцию для проверки данных на магнитной ленте на соответствие исходной файловой системе.
Резервное копирование файловой системы с использованием ufsdump называется "выполнение дампа" ("dumping") этой файловой системы. Когда выполняется дамп файловой системы, то задается уровень от 0 до 9. Дамп уровня 0 представляет собой полное резервное копирование и содержит все, что имеется в данной файловой системе. Дампы уровней 1-9 представляют собой инкрементальные резервные копии и содержат только те файлы, которые были изменены после выполнения предыдущего дампа на более низком уровне.
Хороший план выполнения резервного копирования предусматривает рекомендованную трехуровневую стратегию: дамп уровня 0 в начале месяца (выполняется вручную), автоматические еженедельные дампы уровня 5 и автоматические ежедневные дампы уровня 9. Автоматические дампы выполняются в 4:30 пополуночи в то время, когда большинство систем обычно простаивает. Автоматические ежедневные дампы совершаются по утрам с воскресенья по пятницу. Автоматические еженедельные дампы - по утрам в субботу. Автоматизация резервного копирования достигается посредством создания сценария командного процессора и использования cron для регулярного выполнения этого сценария.
ПРИМЕЧАНИЕ . .
Более подробная информация по cron приведена в главе 9.
В таблице 11.9 представлены уровни дампа, выполняемого ежедневно в течение типичного месяца. Обратите внимание, что дамп уровня 0 выполняется в начале месяца в ручном режиме, поскольку система должна быть целиком выведена из работы до того, как вы сможете выполнить резервное копирование корневой файловой системы. Единственной гарантией, что данная система не используется, является ее перевод в однопользовательский режим. Дампы уровней 9 и 5 выполняются автоматически с помощью cron, однако они также должны проводиться только тогда, когда соответствующие файловые системы не используются.
Д|^1йцэ 11.9РаспйсаН^
Плавающая дата
Воск
Пон
Вт
. °Р
Чете
Пяти
Суб
1-ый день месяца
0
-
-
-
-
-
-
1-ая неделя
9
9
9
9
9
9
5
2-ая неделя
9
9
9
9
9
9
5
3-я неделя
9
9
9
9
9
9
5
4-я неделя
9
9
9
9
9
9
5
Расписание выполнения резервного копирования, приведенное в таблице 11.9, обеспечивает следующее:
Ф Каждый будний день на магнитной ленте накапливаются все файлы, измененные после окончания предыдущей недели или по сравнению с исходным уровнем 0 для первой недели. Все файлы, которые были изменены после выполнения копирования более низкого уровня в конце прошлой недели, сохраняются ежедневно.
Ф Магнитная лента, подготовленная каждую субботу, содержит все файлы, которые были изменены после последнего копирования уровня 0.
Это расписание выполнения резервного копирования требует применения, по крайней мере, четырех комплектов из семи магнитных лент каждый: по одному комплекту на каждую неделю и по одной магнитной ленте для выполнения дампа уровня 0. Каждый комплект магнитных лент будет чередоваться ежемесячно. Магнитные ленты уровня 0 не должны перезаписываться и должны храниться хотя бы в течение одного года.
Следует иметь в виду, что даже при реализации расписания копирования, приведенного в таблице 11.9, данные все равно могут быть потеряны. Если какой-нибудь жесткий диск выйдет из строя в 3 часа пополудни, по все изменения, сделанные после выполнения резервного копирования в 4:30 пополуночи, будут потеряны. Аналогично, все файлы, которые были удалены в течение недели, не попадут на магнитные ленты дампа уровня 5.
Иногда какой-нибудь пользователь случайно удаляет файл и не осознает этого в течение нескольких недель. Когда данный пользователь захочет воспользоваться этим файлом, его не будет. Если он обратится к вам с просьбой восстановить его с резервной копии, то единственной магнитной лентой, на которой сохранится этот файл, будет магнитная лента дампа уровня 0, а такая копия может оказаться слишком старой для того, чтобы быть полезной. Вы можете минимизировать эту проблему, если не будете слишком часто перезаписывать магнитные ленты ежедневного дампа уровня 9.
Синтаксис команды ufsdump выглядит следующим образом:
/usr/sbin/ufsdump <options> <arguments> <files to duinp>
ОСинтаксис команды ufsdump описывается в таблице 11.10.
КомпонентОписание
<options><arguments><files to dump><options><arguments><files to dump>Единственная строка с наименованиями односимвольных опций.
<options>
<arguments>
<files to dump>
<options>
<arguments>
<files to dump>
Аргументы опций, которые могут быть записаны в виде нескольких строк. Буквы наименований опций и аргументы, которые относятся к данным опциям, должны следовать в одном и том же порядке.
Файлы, подлежащие резервному копированию. Этот аргумент всегда должен быть последним. Он определяет источник или содержимое резервной копии. Обычно с помощью этого аргумента определяется какая-нибудь файловая система, однако данный аргумент может также определять отдельные файлы или каталоги. Задайте имя файловой системы или имя файла низкоуровневого устройства для той части диска, на которой размещается данная файловая система.
Опции и аргументы ufsdump описываются в таблице 11.11.
Опция
Описание
0-9
■Уровень резервного копирования. Задайте уровень 0 для выполнения
полного резервного копирования всей файловой системы. Уровни 1-9 представляют собой инкрементальные резервные копии тех файлов, которые были изменены после выполнения последнего резервного копирования на более низком уровне.
a <archive-file>
Передает указание ufsdump создать файл архива. Сохраняет таблицу резервного копирования с содержимым магнитной ленты в заданном файле на диске. Этот файл может быть распознан только утилитой ufsrestore, которая использует указанную таблицу для определения того, имеется ли файл, подлежащий восстановлению, в резервной копии и, если это так, на каком томе носителя информации он находится.
b <factor>
Коэффициент блокирования. Указывает число блокоа размером по 512 байт, подлежащих записи на магнитную ленту за одну операцию.
с
Передает указание ufsdump выполнить резервное копирование на кассетную магнитную ленту. Если применяется обнаружение конца тома носителя информации, то данная опция устанавливает размер блока равным 126.
d <bpi>
Плотность магнитной ленты. Используйте данную опцию только в том случае, когда ufsdump не может обнаружить конец тома носителя информации.
D
Дискета. Выполняет резервное копирование на гибкий диск.
Опция
Продолжение таблицы 11.11
Описание
f <dump-file>
1
Файл дампа. Задает конечное местоположение резервной копии. Аргумент dump-file может принимать одно из следующих значений:
Локальный накопитель на магнитной ленте или дисковый накопитель
Дистанционный накопитель на магнитной ленте или дисковый накопитель
Стандартный вывод
Используйте данный аргумент в том случае, если конечное местоположение не является принятым по умолчанию-локальный накопитель на магнитной ленте /dev/rmt/О. Если вы используете опцию f, то должны задать какое-нибудь значение для аргумента dump-file.
Автозагрузка. Используйте данную опцию в том случае, если у вас имеется самозагружающийся накопитель на магнитной ленте (магазинный загрузчик). Когда достигнут конец тома магнитной ленты, эта опция способствует переводу накопителя в автономный режим и ожиданию в течение двух минут его повторной готовности к работе. Если накопитель готов к работе в течение двух минут, резервное копирование продолжается. Если же накопитель не готов к работе по истечении двух минут, оператору будет предложено установить другую магнитную ленту.
n
Уведомление. Если требуется вмешательство, эта опция вызывает рассылку сообщения на все терминалы всех пользователей, входящих в группу sys.
0
Автономный режим. Когда утилита ufsdump завершает работу с магнитной лентой или с диском, она переводит этот накопитель в автономный режим, проводит перемотку, если это магнитная лента, и удаляет ■ носитель информации из накопителя, если это возможно (например, выбрасывает диск или удаляет автоматически загружающуюся магнитную ленту шириной 8 мм).
s <size>
Размер. Определяет длину магнитной ленты в футах или размер диска в блоках размером по 1024 байт. Вам необходимо применять данную опцию только в том случае, когда ufsdump нё может обнаружить конец тома носителя информации.
S
Оценивает размер резервной копии. Определяет пространство, необходимое для выполнения резервного копирования (не выполняя реально копирования), и выводит единственное число, отражающее ожидаемый размер резервной копии в байтах.
t <tracks>
Дорожки. Определяет количество дорожек на кассетной магнитной ленте шириной 1/4 дюйма. Вам необходимо применять данную опцию только в том случае, когда ufsdump не может обнаружить конец тома носителя информации.
u
Обновляет запись дампа. При завершении резервного копирования файловой системы добавляет элемент в файл /etc/dumpdetes. Этот элемент отображает имя устройства для части диска с файловой системой, уровень копирования (от 0 до 9) и дату его выполнения. Никакая запись не будет выполнена, если вы не используете опцию и или копируете отдельные файлы или каталоги. Если для резервной копии того же самого уровня запись уже существует, то она будет замещена.
V
Проверка. После записи на каждую магнитную ленту или диск проверяет содержимое носителя информации, сравнивая его с исходной файловой системой. Если обнаружено любое несоответствие, предлагает оператору смонтировать новый носитель информации, в затем повто-
Продолжение таблицы 11.11 ОпцияОписание
рить весь процесс. Применяйте эту опцию только на демонтированной файловой системе; любая деятельность в файловой системе приведет к регистрации несоответствий.
wПредупреждение. Выводит список файловых систем, появившихся в
файле /etc/dumpdates, которые не были скопированы в течение дня. Когда вы используете эту опцию, все остальные опции игнорируются.
WПредупреждение с выделением. Показывает все файловые системы,
появившиеся в файле /etc/dumpdates, выделяя те из них, которые не были скопированы в течение дня. Когда вы используете эту опцию, все остальные опции игнорируются.
По умолчанию команда ufsdump использует такие опции:
ufsdump 9uf /dev/rmt/О <files-to-back-up>
Примеры использования утилиты ufsdump
Приведенные ниже примеры демонстрируют использование команды ufsdump.
В следующем примере выполняется полное резервное копирование файловой системы /users:
ufsdump Oucf /dev/rmt/О /users DUMP: Writing 63 Kilobyte records DUMP: Date of this level 0 dump: Sat Dec 12 13:13:22 1998 DUMP: Date of last level 0 dump: the epoch DUMP: Dumping /dev/rdsk/cOtldOsO (pyramidl:/users) to /dev/rmt/0. DUMP: Mapping (Pass I) [regular files] DUMP: Mapping (Pass II) [directories] DUMP: Estimated 10168 blocks (4.96MB). DUMP: Dumping (Pass III) [directories] DUMP: Dumping (Pass IV) [regular files] DUMP: Tape rewinding DUMP: 10078 blocks (4.92MB) on 1 volume at 107 KB/sec DUMP: DUMP IS DONE
В следующем примере выполняется резервное копирование локальной файловой системы /export/home под Solaris 8 на ленточное устройство, расположенное на дистанционной системе Solaris 8, носящей имя sparcl: ufsdump Oucf sparcl:/dev/rmt/О /export/home DUMP: Date of this level 0 dump: Sat Dec 12 11:50:1 3 1998 DUMP: Date of last level 0 dump: the epoch DUMP: Dumping /dev/rdsk/c0t3d0s7 (/export/home) to \ /dev/rmt/О on host sparcl DUMP: mapping (Pass I) [regular files] DUMP: mapping (Pass II) [directories] DUMP: estimated 19574 blocks (9.56MB) DUMP: Writing 63 Kilobyte records DUMP: dumping (Pass III) [directories] DUMP: dumping (Pass IV) [regular files]
DUMP: level 0 dump on Tue Oct 25 10:30:53 1994 DUMP: Tape rewinding
DUMP: 19574 blocks (9.56MB) on 1 volume DUMP: DUMP IS DONE
Если вы хотите посмотреть, сколько пространства потребует планируемое резервирование, введите такую команду:
ufsdump Os < filesysten£>
На экране отображается ожидаемое количество байт того пространства на магнитной ленте, которое необходимо для выполнения резервного копирования уровня 0.
Утилита ufsrestore
Команда ufsrestore копирует файлы с резервных копий, созданных с помощью команды ufsdump. Вы можете воспользоваться ufsrestore для полной перезагрузки какой-нибудь файловой системы с дампа уровня 0 и следующих за ним инкрементальных дампов или для восстановления одного или нескольких одиночных файлов с любой магнитной ленты дампа. Если ufsrestore запускается суперпользователем, то файлы восстанавливаются с сохранением их исходной принадлежности, времени последней модификации и режима (полномочий).
Синтаксис команды ufsrestore выглядит следующим образом:
ufsrestore <options> <arguments> <filename(s)>
Синтаксис ufsrestore описывается в таблице 11.12.
Таблица 11,12^wi&k^\:'
Опция
Описание
<options>
Позволяет вам выбрать одну и только одну из перечисленных опций: i, г, R, t или х.
<arguments>
Аргументы, которые следуют за строкой опций и соответствуют им.
<filename(s)>
Определяет файлы, подлежащие восстановлению, в качестве аргументов к опции х или t, они всегда должны быть последними.
Некоторые наиболее распространенные опции и аргументы ufsrestore описываются в таблице 11.13.
^Таближ 11,13 #пцй»
Опция
i
Описание
Интерактивный режим. Запускает ufsreetore в интерактивном режиме. В этом режиме вы можете применять ограниченный набор команд оболочки для просмотра содержимого носителя информации и выбирать отдельные файлы или каталоги для восстановления. Перечень команд, доступных в этом режиме, приведен в таблице 11.14.
г
Рекурсивный режим. Восстанавливает содержимое носителя информации в текущий рабочий каталог, который должен быть верхним уровнем иерархии данной файловой системы. Также включается информация, используемая для восстановления инкрементальных дампов поверх полного дампа. При полном восстановлении файловой системы применяйте эту опцию для восстановления полного (уровня 0) дампа, а затем - для восстановления каждого инкрементального дампа. Эта опция предназначена для новой файловой системы, которая была создана с помощью команды newts.
Продолжение таблицы 11.13
Опция
Описание
х <filename(s)>
Извлечение. Избирательно восстанавливает те файлы, которые вы задаете с помощью аргумента <filename(s)>. Аргумент <filename(s)> может представлять собой некоторый список файлов и каталогов. Все файлы, входящие в каталог, восстанавливаются, если только вы не используете опцию h. Если вы опустите аргумент <filename(s)> или введете символ точки (.) для корневого каталога, то восстанавливаются все файлы со всех томов носителя информации (или со стандартного ввода). Существующие файлы перезаписываются, при этом выводятся предупреждения.
t <filename(s)>
Оглавление. Проверяет файлы, заданные с помощью аргумента <filename(s)>, сравнивая их с носителем информации. Для каждого файла, если таковой обнаружен, в список заносится его полное имя и номер индексного дескриптора. Если имя файла не обнаружено, ufsrestore информирует, что данный файл отсутствует на "томе", под которым понимается любой том из состава многотомного дампа. Если вы не ввели аргумент <filename(s)>, то перечисляются все файлы на всех томах данного носителя информации без указания их конкретного местоположения. Когда вы используете опцию h, то только файлы каталогов, которые определены с помощью аргумента <filename(s)>, а вовсе не их содержимое, проверяются и выводятся в список. Оглавление считывается с первого тома носителя информации или, если вы задаете опцию а, с указанного файла архива. Данная опция является взаимоисключающей по отношению к опциям х и г
b <factor>
Коэффициент блокирования. Определяет количество блоков размером по 512 байт, подлежащих считыванию с магнитной ленты за одну операцию. По умолчанию утилита ufsrestore пытается определить размер блока, использованный при записи на данную магнитную ленту.
m
Восстанавливает заданные файлы в текущий каталог на диске вне зависимости оттого, где они находятся в иерархической структуре резервной копии, и переименовывает эти файлы в соответствии с номерами их индексных дескрипторов. Например, если текущим рабочим каталогом служит каталог /flies, то файл, который в резервной копии называется ./ database/test и имеет номер индексного дескриптора, равный 156, восстанавливается как файл с именем /files/156. Эта опция удобна в том случае, когда вы извлекаете из архива всего несколько файлов.
s<n>
Переходит к n-ому файлу резервной копии на носителе информации. Эта опция удобна в том случае, когда вы помещаете несколько копий на одну магнитную ленту.
V
Расширенный режим. Отображает для каждого файла наименование и номер индексного дескриптора по мере его, восстанавления.
Полный перечень опций и аргументов утилиты ufsrestore можно найти на страницах оперативного руководства операционной системы Solaris.
В таблице 11.14 перечисляются команды, которые могут быть использованы совместно с ufsrestore в интерактивном режиме (ufsrestore -i).
.Л|Й1Й1ШШ111ЙЙ1ЙЙ^
Команда
Описание
Is <directory-name>
Выводит список содержимого текущего каталога или заданного. Каталоги заканчиваются символом косой черты (/). Элементы в текущем списке, которые будут восстановлены (извлечены), маркируются символом звездочки (*) в качестве префикса. Если включена опция verbose, то в список также заносятся номера индексных дескрипторов.
Продолжение таблицы 11.14
Команда
Описание
cd <directory-name>
Переходит в заданный каталог в иерархической структуре резервной копии.
add <filename>
Добавляет текущий каталог или заданный файл или заданный каталог к списку файлов, подлежащих извлечению (восстановлению). Если вы не используете опцию h, то все файлы в заданном каталоге и все его подкаталоги добавляются к указанному списку. Обратите внимание на то, что, возможно, не все файлы, которые вы хотите восстановить в некоторый каталог, будут находиться на одной магнитной ленте или диске резервной копии. Возможно вам потребуется выполнить восстановление с нескольких резервных копий различных уровней для получения всех файлов.
delete <filename>
Удаляет текущий каталог или заданный файл или заданный каталог из списка файлов, подлежащих извлечению (восстановлению). Если еы не используете опцию h, то все файлы в заданном каталоге и все его подкаталоги удаляются из указанного списка. Обратите внимание на то, что файлы и каталоги удаляются только из списка, который вы формируете. Они не удаляются с носителя информации.
extract
Извлекает все файлы, указанные в списке, и восстанавливает их в текущий рабочий каталог на диске. Когда вы получите запрос номера тома, укажите 1. Если вы выполняете восстановление с нескольких магнитных лент или с нескольких дисков и при этом восстанавливаете небольшое количество файлов, начните с последней магнитной ленты или с последнего диска.
help
Отображает список команд, которые вы можете использовать в интерактивном режиме.
pwd
Отображает имя маршрута текущего рабочего каталога в иерархической структуре резервной копии.
q
Покидает интерактивный режим без восстановления дополнительных файлов.
verbose
Включает или отключает опцию verbose. Расширенный режим может также быть введен с помощью опции v в командной строке (вне интерактивного режима). Когда включена опция verbose, команда Is интерактивного режима выводит в списке файлов номера их индексных дескрипторов, а команда ufsrestore отображает информацию о каждом файле по мере его извлечения.
Примеры использования утилиты ufsrestore
Следующие примеры демонстрируют, как восстановить данные с магнитной ленты при помощи утилиты ufsrestore.
Применяйте команду ufsrestore для отображения содержимого магнитной ленты:
ufsrestore tf /dev/rmt/О
2.
4249 ./users
12400./users/bill
12401./users/bill/.login
12402./users/bill/.cshrc
12458./users/bill/admin
12459./users/bill/Junk
Используйте команду ufsrestore для восстановления файла с резервной копии, которая была создана при помощи утилиты ufsdump:
ufsrestore f /dev/rmt/О filename
Вы можете восстанавливать каталоги целиком с какого-нибудь дистанционного накопителя, расположенного в системе по имени sparcl, путем добавления префикса (remotehost: - имя дистанционной системы:) перед именем ленточного устройства, как показано в следующем примере:
ufsrestore rf sparcl:/dev/rmt/О filename
Иногда файловая система повреждается настолько, что вы должны полностью восстановить ее с резервной копии. Если вы аккуратно выполняли резервное копирование файловых систем, то сможете восстановить их до того состояния, которое они имели на момент выполнения последнего резервного копирования. Первый этап восстановления файловой системы - удаление всего содержимого поврежденной файловой системы и повторное ее создание с использованием команды newfs. Для восстановления поврежденной файловой системы выполните следующие операции:
Шагза^ш^гомV'X'
Ремонт и восстановление поврежденной файловой системы
Демонтируйте файловую систему следующим образом:
umount /filesystem
где аргумент filesystem - имя поврежденной файловой системы.
После демонтирования файловой системы выдайте команду newfs для создания новой файловой системы:
newfs /dev/rdsk/<disk-partition-name>
где disk-partition-name - собственно раздел диска, содержащий поврежденную файловую систему.
При помощи команды fsck проверьте новую файловую систему:
fsck /dev/rdsk/c?t?d?s?
Смонтируйте файловую систему, подлежащую восстановлению, и перейдите в соответствующий каталог:
mount /dev/rdsk/c?t?d?s? <directory> cd <directory>
Загрузите магнитную ленту и выдайте такую команду:
ufsrestore rf /dev/rmt/О
Содержимое этой магнитной ленты будет целиком восстановлено в созданную файловую систему. Все полномочия, принадлежности и даты останутся такими же, какими они были при создании магнитной ленты с последней инкрементальной копией.
Следующие две операции являются необязательными.
Удалите файл restoresymtable, созданный командой ufsrestore. Это временный файл, который не требуется после успешного восстановления файловой системы.
А теперь было бы неплохо демонтировать эту файловую систему и запустить команду fsck еще раз, чтобы проверить отремонтированную файловую систему.
Восстановление корневой файловой системы или файловой системы /usr
Иногда неосторожный администратор с привилегиями суперпользователя случайно удаляет часть или всю корневую файловую систему или файловую систему /usr. В других случаях файловая система может стать непригодной к использованию в результате неисправности дискового накопителя или повреждения файловой системы. Если вам необходимо восстановить корневую файловую систему или файловую систему /usr, выполните приведенные ниже операции:
Шаг зашагом
Восстановление корневой файловой системы или файловой системы /usr
Замените диск, если он вышел из строя, и выполните разбивку нового диска.
Создайте повторно файловую систему, для чего выдайте команду newfs следующим образом:
newfs /dev/rdsk/<disk-partition-name>
где disk-partition-name - собственно раздел диска, содержащий поврежденную файловую систему.
Проверьте новую файловую систему, используя команду fsck:
fsck /dev/rdsk/<disk-partition-name>
Смонтируйте новую файловую систему к временной точке монтирования: mount /dev/rdsk/<disk-partition-name> /mnt
Перейдите в каталог /mnt: cd /mnt
Защитите магнитные ленты от записи, чтобы случайно не перезаписать их.
Загрузите магнитную ленту и выдайте следующую команду:
ufsrestore rf /dev/rmt/О
Содержимое этой магнитной ленты будет целиком восстановлено в созданную файловую систему. Все полномочия, принадлежности и даты останутся такими же, какими они были при создании магнитной ленты с последней инкрементальной копией.
Проверьте, что файловая система восстановлена:
Is
Удалите файл restoresymtable, созданный командой ufsrestore и используе- ■ мый ею в качестве контрольной точки в процессе восстановления:
rm restoresymtable
Перейдите в корневой каталог: cd /
Демонтируйте вновь созданную файловую систему: umount /mnt
Проверьте новую файловую систему при помощи fsck:
fsck /dev/rdsk/<disk-partition-name>
Восстановленная файловая система проверяется на непротиворечивость.
Если вы восстанавливаете корневую файловую систему, с помощью команды installboot создайте загрузочные блоки в корневом разделе диска:
installboot /usr/platform/'uname -i'/lib/fs/ufs/bootblk /dev/ \ rdsk/<disk-partition-name>
Команда installboot инсталлирует загрузочные блоки на загрузочный диск. Без загрузочных блоков данный диск не сможет быть загрузочным. Команда installboot рассматривается в книге II.
Вставьте новую магнитную ленту в накопитель и выполните резервное копирование вновь созданной файловой системы:
ufsdump Ouf /dev/rmt/п /dev/rdsk/<device-name>
Выполняется резервное копирование уровня 0. Всегда незамедлительно выполняйте резервное копирование вновь созданной файловой системы, поскольку ufsrestore перемещает файлы и меняет индексные дескрипторы.
Перезагрузите систему:
init 6
Система перезагружается.
Приведенный ниже пример представляет собой реальный сеанс работы, в котором выполняется восстановление корневой файловой системы с ленточного накопителя /dev/ rmt/О на часть 0 диска SCSI на контроллере 0 с целевым номером 3:
mount /dev/dsk/c0t3d0s0 /mnt
cd /mnt
tapes
ufsrestore rf /dev/rmt/0
Файлы восстанавливаются с магнитной ленты:
rm restoresymtable
cd /
umount /mnt
fsck /dev/rdsk/c0t3d0s0
По мере того, как выполняется проверка данной файловой системы, отображаются прохождения команды fsck:
installboot \
/usr/platform/sun4m/lib/fs/ufs/bootblk /dev/rdsk/c0t3d0s0
ufsdump Ouf /dev/rmt/О /dev/rdsk/c0t3d0s0
shutdown -y -gO -iO
Система останавливается. После появления приглашения ok выполните перезагрузку системы с реконфигурацией, как показано ниже:
boot -г
Это позволит гарантировать, что все подключенные устройства будут должным образом сконфигурированы в ядре операционной системы, в каталогах /dev и /devices.
В каталоге /dev команда tapes создает элементы для накопителя на магнитной ленте. В каталоге /dev/rmt она создает ссылки на специальные файлы реальных ленточных устройств. Команда tapes описывается в главе 16. ■
Дополнительные замечания к вопросу о восстановлении файлов
Когда вы восстанавливаете файлы в некоторый каталог, отличный от корневого каталога данной файловой системы, утилита ufsrestore повторно создает иерархическую структуру файлов в текущем каталоге. Например, если вы восстанавливаете в каталог /home файлы, резервная копия которых была создана из каталога /users/bcalkins/files, то эти файлы восстанавливаются в каталог/home/users/bcalkins/files.
При восстановлении отдельных файлов и каталогов весьма полезно восстанавливать их в какой-нибудь временный каталог, такой как /var/tmp. После того, как вы проверите эти файлы, вы сможете переместить их в надлежащие места. Вы можете сразу восстанавливать отдельные файлы и каталоги в их исходное местоположение; однако, если вы поступаете таким образом, необходимо быть уверенным в том, что вы не замещаете более новые файлы их старыми версиями с магнитной ленты.
Не забывайте регулярно выполнять резервное копирование вашей операционной системы. После того, как будут сделаны все настройки, в том числе добавлены учетные записи пользователей, установлены принтеры и инсталлировано прикладное программное обеспечение, потеря этой информации может иметь катастрофические последствия. Когда бы вы ни вносили изменения, которые влияют на корневую файловую систему, /usr, /opt или на другие каталоги операционной системы, переведите ее в однопользовательский режим работы и выполните дамп уровня 0.
Резюме
Настоящая глава содержит описание стандартных утилит копирования и создания резервных копий, доступных в операционной системе Solaris. Описаны различные типы носителей информации, доступных для резервного копирования. Обсуждаются утилиты tar, dd, cpio и pax, и описывается, как использовать эти утилиты для копирования и восстановления файлов, каталогов и целых файловых систем.
В настоящей главе описывается также порядок использования утилит ufsdump и ufsrestore для выполнения регулярного резервного копирования на вашей системе. Кроме того, описывается рекомендованное расписание выполнения резервного копирования, которое может быть реализовано для защиты любой системы от преднамеренной или случайной потери данных.
Наконец, в настоящей главе обсуждается, как восстановить данные с носителя информации, содержащего резервную копию. Описывается процедура восстановления отдельных файлов или целых файловых систем.
Утилиты, описанные в настоящей главе, хорошо работают при выполнении резервного копирования ваших данных. Однако, если в вашей компании используются несколько серверов и накопители информации большого объема, вы можете захотеть ознакомиться с несколько более сложными пакетами резервного копирования, поставляемыми сторонни-
ми разработчиками, такими как Veritas или Legato. Большинство подобных пакетов предоставляет комплексный набор утилит для проведения копирования и управления резервными копиями в сложной компьютерной среде. В большинстве случаев они обеспечивают выполнение централизованного резервного копирования не только в Solaris, но также и в других операционных системах.
Ключевые термины
Размер блока
Архив на магнитной ленте
Дамп файловой системы
Инкрементальное резервное копирование
Полное резервное копирование
Примените ваши знания
Обратите внимание, что приведенные ниже упражнения используют накопитель на магнитной ленте, подсоединенный к системе как устройство /dev/rmt/О. Если к вашей системе не подключен накопитель на магнитной ленте, замените устройство /dev/rmt/О каким-нибудь файлом, например, /tmp/foo.
Использование утилиты tar
При выполнении настоящего упражнения вам предстоит воспользоваться командой tar для копирования файлов с диска на магнитную ленту.
Оцениваемое время: 15 минут (в зависимости от размера каталога /export/home)
Создайте ленточный архив всего содержимого каталога /export/home на устройстве /dev/rmt/О:
tar cvf /dev/rmt/О /export/home
Просмотрите содержимое вновь созданного архива:
tar tvf /dev/rmt/О
Теперь добавьте еще один архив на ту же самую магнитную ленту. Это так называемая "укомплектованная" ("stacked") магнитная лента. Сначала вам необходимо перемотать вперед магнитную ленту и установить после первого архива, для чего следует воспользоваться командой mt:
mt -f /dev/rmt/О fsf 1
Теперь добавьте следующий архив каталога /var/adm:
tar cvf /dev/rmt/О /var/adm
Теперь перемотайте назад (реверс) магнитную ленту:
mt -f /dev/rmt/О rew
Просмотрите список содержимого первого архива на данной магнитной ленте. Обратите внимание на использование "неперемотанного" устройства:
Примените ваши знания
tar tvf /dev/rmt/On
Теперь просмотрите список содержимого второго архива на укомплектованной магнитной ленте:
tar tvf /dev/rmt/О
Примечание: Важно сделать заметку на наклейке магнитной ленты о том, что это укомплектованная магнитная лента, и записать порядок следования каждого архива.
Использование утилит cpio и рах
Приведенное упражнение демонстрирует, как скопировать файлы, которые были модифицированы в течение последних 30 дней, на ленточное устройство /dev/rmt/О. Для увеличения скорости переноса данных задайте коэффициент блокирования больший, чем принятый по умолчанию.
Оцениваемое время: 15 минут (в зависимости от размера каталога /export/home)
cd /export/home
Найдите все файлы с помощью команды find, а затем перенесите их на магнитную ленту с помощью команды cpio:
find . -mtime -30 -print | cpio -oB > /dev/rmt/О
Просмотрите список всех файлов, резервная копия которых была создана при выполнении этапа 2:
cpio -ict < /dev/rmt/О
Воспользуйтесь утилитой рах для просмотра содержимого магнитной ленты, которая была создана с помощью cpio:
pax -v -f /dev/rmt/О
Использование утилит ufsdump и ufsrestore
При выполнении настоящего упражнения вам предстоит применить команду ufsdump для выполнения резервного копирования целой файловой системы. Затем вы воспользуетесь командой ufsrestore для восстановления одного файла.
Предупреждение: Не выполняйте настоящее упражнение на работающей системе.
Оцениваемое время: 20 минут
Зарегистрируйтесь в системе как суперпользователь.
Выполните резервное копирование файловой системы /var, как показано ниже:
ufsdump Oucf /dev/rmt/О /var
Удалите файл/var/adm/messages:
rm /var/adm/messages
Восстановите файл /var/adm/messages с помощью команды ufsrestore:
cd /var
ufsrestore -ivf /dev/rmt/О
Получив приглашение > команды ufsrestore, убедитесь, что файл messages находится на магнитной ленте:
Is adm/messages
Пометьте данный файл для извлечения, а затем извлеките его из архива:
add adm/messages extract
Когда система выдаст вам запрос "Specify the next volume" ("Задайте следующий том"), наберите 1.
Когда система попросит "set owner/mode for "."?|у,п|" ("Установить владельца/ режим для "."?"), введите у.
Введите q для выхода из утилиты ufsrestore.
С помощью команды Is -1 проверьте, что данный файл был восстановлен на должное место.
Обзорные вопросы
Что будет делать приведенная далее последовательность команд?
#cd /home/niyjunk
#tar cvf /dev/rmt/О .
Возьмет все файлы в каталоге /home/myjunk, упакует их в единый tar-архив на устройстве /dev/rmt/О и выведет на печать комментарий к этому процессу.
Извлечет содержимое магнитной ленты на устройстве /dev/rmt/О в каталог /home/myjunk.
Упакует все файлы на устройстве /dev/rmt/О в tar-архив в каталоге /home/ myjunk, создаст оглавление и проигнорирует ошибки контрольной суммы.
Упакует все файлы текущего каталога в два отдельных tar-архива, один для содержимого myjunk, а другой - для всего остального содержимого каталога / home.
Задано расписание резервного копирования. Какие магнитные ленты будут необходимы для полного восстановления системы, если она выйдет из строя в субботу?
Первый понедельник месяца - копирование уровня 0 (магнитная лента 1)
Все остальные понедельники - копирование уровня 1 (магнитная лента 2)
По средам - копирование уровня 2 (магнитная лента 3)
По пятницам - копирование уровня 4 (магнитная лента 4)
Все четыре магнитные ленты
Магнитные ленты 2-4
Магнитные ленты 1, 2 и 4
Магнитные ленты 1, 3 и 4
Какая из следующих команд может быть использована совместно с командами tar и cpio для выполнения инкрементальной архивации?
sort.
find
grep
diff
Примените ваши знания
Какая из перечисленных утилит имеет встроенную функцию для выполнения инкрементального резервного копирования?
A. tar
cpio
ufsdump D. dd
Какая из команд выводит список содержимого tar-архива? A. tar -cvf В. tar -xvf С. tar -tvf D. tar -txf
Какое из перечисленных утверждений является несправедливым по отношению к утилите dd?
Быстро преобразовывает и копирует файлы с данными различных форматов.
Хороший инструмент для выполнения резервного копирования.
Применяется для переноса полной файловой системы или раздела с вашего жесткого диска на магнитную ленту.
Применяется для копирования всех данных с одного диска на другой.
Какое из перечисленных утверждений является несправедливым по отношению к команде cpio?
Используется для копирования данных из одного места в другое.
Не слишком хороший инструмент для выполнения резервного копирования.
Может выполнять резервное копирование и восстановление отдельных файлов, но не целых файловых систем.
Резервные копии, созданные с использованием команды cpio, имеют меньший размер по сравнению с резервными копиями, созданными с использованием команды tar.
Какая из следующих операций не является необходимой после восстановления корневой файловой системы с магнитной ленты?
fsck
installboot
init 6
ufsdump Ouf
Какое из утверждений является несправедливым по отношению к утилите рах?
Поддерживает большое разнообразие архивных форматов, включая форматы tar и cpio.
Это утилита архивации, совместимая со стандартами POS1X.
Не имеет встроенной функции для выполнения инкрементального резервного копирования.
Это старая и не рекомендуемая для применения утилита резервного копирования.
Ответы на обзорные вопросы
А. Первая команда выполняет переход в ваш рабочий каталог, а вторая - создает файл tar-архива. Команды, приведенные в настоящем примере, возьмут все файлы в каталоге /home/myjunk, упакуют их в единый tar-архив на устройстве /dev/rmt/О и выведут на печать комментарий к этому процессу.
А. Для восстановления данных с резервных копий вы сначала загрузите магнитную ленту 1, созданную в первый понедельник данного месяца, затем магнитную ленту 2, потом магнитную ленту 3 и, наконец, магнитную ленту 4.
В. Для выполнения инкрементальной архивации совместно с командами tar и cpio следует использовать команду find.
С. Утилита ufsdump имеет встроенные опции для создания инкрементальных резервных копий, включающих только те файлы, которые были изменены после предшествующего резервного копирования, что позволяет экономить магнитную ленту и время.
С. Опция -t вместе с командой tar выводит список содержимого tar-архива.
В. Основным преимуществом команды dd является то, что она быстро преобразовывает и копирует файлы с данными различных форматов, включая разницу в размерах блоков или в длинах записей. Наиболее распространенным способом применения команды dd является перенос полной файловой системы или раздела с жесткого диска на магнитную ленту. Кроме того, вы можете воспользоваться этой командой для копирования файлов с одного жесткого диска на другой. Однако команда dd не является хорошим инструментом для выполнения резервного копирования.
В. Команда cpio - великолепный инструмента для выполнения резервного копирования и восстановления отдельных файлов, а не только целых файловых систем.
D. После восстановления корневой файловой системы с магнитной ленты вы должны инсталлировать загрузочный блок с помощью команды installboot, запустить команду fsck на восстановленной файловой системе, а затем выполнить перезагрузку с помощью команды init 6 или shutdown.
D. Утилита рах является самой новой из числа утилит резервного копирования, описанных в настоящей главе. Она хорошо работает в этом качестве.
Глава 12Глава 12Написание сценариев и программ оболочек
Глава 12
Глава 12
Темы
В настоящей главе рассматриваются следующие темы экзамена:
Знание оболочек операционной системы Solaris
Понимание фундаментальных основ программирования в среде оболочек, или командных процессоров, представляет собой один из ключевых аспектов эффективной работы системного администратора. Командный процессор - интерфейс между вами и операционной системой Solaris 8; следовательно, это один из тех инструментов, которым необходимо владеть профессионально. В частности, вам необходимы следующие знания по оболочкам операционной системы Solaris:
Как выбрать оболочку, или командный процессор, для использования. Операционная среда Solaris предоставляет большой выбор оболочек. В качестве системного администратора вам необходимо будет принять обоснованное решение относительно того, какие именно командные процессоры будут применять пользователи вашей системы.
Как установить переменные оболочек. Многие аспекты вашей работы будут требовать понимания переменных командных процессоров. Вы будете устанавливать переменные командных процессоров для настройки пользовательского окружения, и вам также предстоит применять эти переменные в процессе создания сценариев для автоматизации ваших повседневных задач.
Умение применять встроенные команды, условные выражения, операторы цикла (повторения действий) и функции оболочек. Для написания сценариев командных процессоров вы должны знать инструменты, которые доступны в данной оболочке для удобного выполнения конкретной задачи. В настоящей главе содержатся введение и описание инструментов, которые помогут вам в создании сценариев командных процессоров для автоматизации ваших задач и повышения производительности труда.
Содержание
(Введение
417
Основы сценариев крмандных.процессоров
417
®ыбор оболочку для использования
418
беременные командного процессора ®оигпе
420
Использование кавычек.
420
Разделители
421
беременные командного процессора
422
Фстроенные команды
424
Условные выражения командного процессора
425
Условные выражения && и | |
425
Программы true и false
425
Условное выражение if
426
Программа test
426
Оператор case
428
Црманды повторения действий
429
Цикл for
429
Цикл while
430
Цикл until
430
функции оболочку
430
(Резюме
431
Примените ваши знания
432
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
В процессе изучения командных процессоров и их сценариев ничто не сможет заменить практические навыки и опыт. В настоящей главе затронуты некоторые ключевые темы, относящиеся к сценариям оболочек. Вы сможете эффективно применять конкретный командный процессор или писать сценарии только в том случае, если практически проработаете все темы, представленные в настоящей главе, на какой-нибудь системе Solaris.
Убедитесь в том, что вы понимаете различия между всеми принятыми по умолчанию оболочками в Solaris, такие как установка локальной переменной и переменной окружения в каждой из них. Кроме того, разберитесь со всеми принятыми по умолчанию переменными в каждой из оболочек.
Введение
Глубокое понимание вопросов программирования в среде командных процессоров является обязательным для любого системного администратора. Системные администраторы должны уметь читать и писать программы для оболочек, поскольку многие задачи могут и должны быть автоматизированы с использованием аналогичных сценариев. Преимущество использования некоторого сценария или программы командного процессора для выполнения конкретной задачи заключается в том, что такой подход обеспечивает непротиворечивость - другими словами, данная задача каждый раз выполняется одним и тем же способом. Кроме того, многие программные продукты поставляются с инсталляционными сценариями, которые должны быть модифицированы применительно к вашей системе прежде, чем они будут работать. В настоящей главе вы сначала ознакомитесь с командными процессорами, а затем с основами создания их сценариев.
Основы сценариев командных процессоров
Сценарий - это последовательность команд UNIX, либо оформленная в виде файла, либо набираемая в командной строке, которая выполняет различные операции. Такие файлы в некоторых системах известны также под названием пакетных файлов. Другим термином для обозначения сценария, который возможно более привычен вам, является макрос. Обычно сценарий или макрос обозначает простую последовательности команд, в то время как под программой оболочки подразумевается некоторый файл, содержащий более сложную упорядоченную совокупность команд. Программы командного процессора используют встроенные в оболочку команды управления и условных переходов, они будут рассматриваться далее в настоящей главе.
Чтобы запустить некоторый файл в качестве сценария, вы должны установить исполнительный бит данного файла, как было показано в главе 8. В приведенном ниже примере вы можете видеть исполнительный бит, установленный для владельца файла, группы и всех остальных пользователей:
% 1s -1
-rwxr-xr-x 1 bcalkins 425 Jul 10 11:10 program.1
Если исполнительный бит установлен, то все, что происходит далее, зависит от первой строки данного файла. Если первые два символа в первой строке отличны от символов #!, то данный файл интерпретируется как сценарий командного процессора Bourne. Если после символов #! следует явное указание на местоположение программы, например /bin/ csh, то эта программа запускается в качестве интерпретатора содержимого данного файла. Другими словами, программа запускается в среде оболочки, или командного процессора, который определен после символов #!.
Например, для создания какого-нибудь сценария командного процессора С, наберите следующее выражение в первой строке файла:
#! /bin/csh
Весьма полезно помещать сценарии и программы командных процессоров в свои собственные каталоги, чтобы отделять их от стандартных программ UNIX. Они, как правило, помещаются в каталог, который называется /usr/local/bin. Также полезно добавлять к именам таких программ суффикс .sh, .csh или .ksh для того, чтобы они визуально воспринимались именно как сценарии оболочек.
Выбор оболочки для использования
Оболочка регистрации - это командный интерпретатор, который запускается, когда вы регистрируетесь в системе. Операционная среда Solaris 8 предлагает три общеизвестных командных процессора:
Ф Командный процессор Bourne (/sbin/sh). Принятая по умолчанию оболочка. Это командный интерпретатор, который исполняет команды, считываемые с терминала или из файла.
Ф Командный процессор С (/bin/csh). Это командный интерпретатор, синтаксис которого подобен синтаксису языка программирования С. Командный процессор С предоставляет несколько удобных функций для интерактивного применения, которые недоступны в среде командного процессора Bourne, включая завершение имени файла (возможность набрать команду не полностью), использование псевдонимов команд, подстановка истории (протокола команд).
Ф Командный процессор Korn (/bin/ksh). Это командный интерпретатор, который исполняет команды, считываемые с терминала или из файла.
В процессе написания сценариев вы можете использовать любой из трех командных процессоров, перечисленных выше. Основные особенности каждой оболочки описываются в таблице 12.1.
Та5лй^аЯ2ЛЬсЙрвнь1^^
Особенность
Bourne
С
,Кот
Синтаксис, совместимый с sh (процессором Bourne)
Да
Нет
Да
Управление заданиями'
Нет
Да
Да
Список истории (протокол команд)
Нет
Да
Да
Редактирование командной строки
Нет
Да
Да
Псевдонимы
Нет
Да
Да
Односимвольная аббревиатура для каталога регистрации
Нет
Да
Да
Защита файлов от перезаписи
Нет
Да
Да (не затирает полезные данные)
Игнорирование комбинации Ctrl+D (конца файла)
Нет
Да
Да
Расширенные функции команды cd
Нет
Да
Да
Файл инициализации, отличный от профиля
Нет
Да
Да
Файл logout (выхода из системы)
Нет
Да
Нет
В дополнение к ранее описанным общеизвестным командным процессорам, Solaris предоставляет также пять дополнительных оболочек:
Ф J-оболочка (/sbin/jsh). Предоставляет всю функциональность командного процессора Bourne, однако разрешает управление заданиями. Если запущена J-оболочка, то включается управление заданиями в дополнение ко всем остальным свойствам командного процессора Bourne.
<$> Командный процессор Restricted Korn. Это ограниченная версия командного процессора Korn, которая используется для установки регистрационных имен и исполнительных окружений, возможности которых более контролируемы, чем это достигается при использовании стандартного командного процессора.
Ф Т-оболочка (/usr/bin/tcsh). Расширенная, но совместимая версия командного процессора С, которая предоставляет возможности завершения имен файлов и редактирования командной строки. Чтобы оперативно просмотреть полный листинг расширений данной оболочки, наберите man tcsh.
Ф Командный процессор GNU Bourne-Again (/usr/bin/bash), или bash, который объединяет полезные особенности оболочек Korn и С.
ф Z-оболочка (/usr/bin/zsh). Командный интерпретатор, удобный в качестве интерактивной оболочки регистрации и командного процессора сценариев.
ПРИМЕЧАНИЕV■
В дополнение к трем стандартным командным процессорам, СОЕ, описанная в приложении В, предоставляет командный процессор Desktop Korn (dtksh). Эта оболочка позволяет сценариям командного процессора Кот получать простой доступ к большинству из существующих функций Xt и Motif, которые используются в графическом интерфейсе среды CDE. Для успешного применения dtksh вы должны иметь опыт работы с Xlib, Xt Intrinsics, виджетами Motif, а также опыт программирования в среде командного процессора Кот. Также полезно знать язык программирования С.
Кроме того, в состав Solaris 8 входит язык PERL (Practical Extraction Report Language - практический язык извлечения информации из текстовых файлов для подготовки отчетов) для создания программ.
Выбор конкретной оболочки для использования является вопросом персональных предпочтений. Как оказалось, большинство пользователей BSD UNIX применяет командный процессор С, поскольку его корни простираются в Университет Беркли. Многие нз пользователей-ветеранов SunOS все еще предпочитают командный процессор С просто потому, что они привыкли к нему за многие годы. С другой стороны оказалось, что пользователи System V UNIX предпочитают командный процессор Korn. Эти предпочтения берут свое начало с первых дней разработки операционной системы UNIX. С точки зрения системного администрирования нанлучшим выбором для написания сценариев является командный процессор Bourne. Эта оболочка принята по умолчанию в операционной системе Solaris, и это единственный командный процессор, который имеется во всех UNIX-системах. Все сценарии, которые поставляются вместе с операционной системой Solaris, то есть, все сценарии, которые выполняются для управления запуском системы и находятся в каталоге /etc/init.d, и большинство программного обеспечения от сторонних разработчиков также написаны в среде командного процессора Bourne. Кроме того, поскольку Bourne находится в каталоге /sbin, то это единственный командный процессор, который доступен в то время, когда не смонтирована файловая система /usr, то есть при загрузке в однопользовательский режим). Командный процессор Bourne был изначально разработан для использования в качестве языка программирования, чем и объясняются его возможности в этой области. В качестве дополнительной причины для применения командного процессора Bourne можно упомянуть то, что его условные выражения и управляющие конструкции совместимы со всеми остальными оболочками, включая и командный процессор dtksh, используемый в среде CDE. Оболочка dtksh обсуждается в приложении В.
Во всех примерах настоящей главы используется именно командный процессор Bourne.
Переменные командного процессора Bourne
Переменная представляет собой имя, которое относится к некоторой области временного хранения данных в памяти. Переменной присваивается некоторое значение, такое как текстовая строка или число, это значение может быть изменено в любое время. Командный процессор Bourne использует два типа переменных для хранения значений: локальные переменные и переменные окружения. Каждый из этих двух типов переменных описывается в настоящей главе.
Переменная либо представляет собой набор из нескольких конкретных значений, либо объявляется как "неустановленная" ("unset"), это означает, что она не существует как переменная. Переменные командного процессора являются составной частью программирования в среде оболочек. Переменная командного процессора предоставляет возможность хранить информацию и манипулировать ею внутри программы оболочки. Используемые вами переменные находятся полностью под вашим контролем, и вы можете установить или сбросить любое количество переменных, которое является необходимым для выполнения какой-нибудь конкретной задачи.
Имя переменной должно начинаться с буквы и может включать в себя буквы, цифры и символы подчеркивания (_), но не специальные символы. В среде командного процессора Bourne переменные окружения устанавливаются с помощью оператора присваивания вида NAME=value. Приведенный ниже пример демонстрирует, как устанавливаются переменные ME и ВС путем ввода следующих строк в ответ на приглашение командной строки:
ME=bill
BC="bill calkins"
Убедитесь в том, что ни перед знаком равенства, ни после него нет ни одного пробела. Текстовая строка, как во втором примере, всегда заключается в двойные кавычки, когда в ней присутствует какой-нибудь "white space" (например, пробел или символ табуляции). Всякий раз, когда командный процессор встречает какое-нибудь выражение вида {variable ({переменная), такое как {ME, он замещает переменную в командной строке на ее значение.
Использование кавычек
К сожалению, другие программы также используют многие специальные символы, применяемые командным процессором - просто этих символов явно недостаточно. Если в среде оболочки используются специальные символы, перечисленные в таблице 12.2, они должны быть заключены в кавычки. Взятие в кавычки требуется в тех случаях, когда присваиваемое значение содержит какой-нибудь специальный символ, пробелы, символы табуляции или новой строки. Без кавычек эти специальные символы будут интерпретироваться как метасимволы командного процессора вместо того, чтобы передаваться в программы в качестве аргументов. Три метода применения кавычек в среде командного процессора Bourne описываются в таблице 12.2.
СимволОписаниеФункциональность
\Обратный слэшЗаключает в кавычки следующий символ (известен
также как "escaping" - символ начала управляющей последовательности).
Символ одиночной кавычки Не интерпретируется при появлении.
СимволОписание"Двойные кавычкиСимволОписание"Двойные кавычкиФункциональность
СимволОписание
"Двойные кавычки
СимволОписание
"Двойные кавычки
Все символы, заключенные в двойные кавычки, идут как комментарии зе исключением обратного слэша, знака ударения (диакритический знак над буквой), двойной кавычки и символа валюты
ПРИМЕЧАНИЕ ,
Не следует путать обратную кавычку с одиночной кавычкой. Обратная кавычка (back tick) находится на той же клавише клавиатуры, где и символ тильды (~). Символ одиночной кавычки находится на той же клавише клавиатуры, где и символ двойной кавычки (").
Из строки, заключенной между двумя обратными кавычками, считываются команды. Стандартный вывод этих команд может быть использован для установки переменной.
При наличии символа обратной кавычки никакая интерпретация в строке не производится до тех пор, пока данная строка не считается, исключение составляет символ обратного слэша (\), управляющий другими символами. Управляющие обратные кавычки разрешают замещение вложенных команд, как показано далее:
font='grep font \'cat filelistV'
Символы обратного слэша внутри вложенной команды (\ 'cat filelist\') защищают символы обратных кавычек от немедленной интерпретации командным процессором. При наличии символа обратного слэша (\) символ обратной кавычки, стоящий непосредственно перед командой cat, не сопоставляется с первым символом кавычки перед командой grep. Две управляющие обратные кавычки будут интерпретироваться при втором прохождении, и команда будет выполнена правильно.
Другими словами, поскольку в приведенном примере присутствуют две пары обратных кавычек, необходимо показать оболочке, какие из них объединяются в пары между собой. Для этого мы используем символ обратного слэша (\). Командный процессор будет анализировать данную командную строку дважды: в первый раз для объединения кавычек в пары, а во второй раз для запуска команды.
Разделители
Некоторые символы, естественно, действуют как разделители в среде командного процессора Bourne. Когда такие символы появляются, они разделяют одно логическое слово от следующего. Символы, перечисленные в таблице 12.3, имеют специальный смысл для командного процессора и, если они не заключены в кавычки, вызывают завершение.
I аол ица ч|7аздслл■
СимволОписание
:Разделитель команд. Действует как <return> и выполняет команды
последовательно.
&Запускает команды асинхронно.
()Группирует несколько команд в одно логическоеслово.
newline (символ новой строки) Разделяет записи (по умолчанию).
Символы пробела и табуляции Разделяют поля (по умолчанию).
Переменные командного процессора
Для отображения значения переменной введите следующую строку в ответ на приглашение командной строки (знак доллара информирует командный процессор о том, что следующее имя относится к переменной):
echo $ВС
На экране отображается следующая строка:
bill calkins
Переменные, которые вы устанавливаете, являются локальными для текущего командного процессора, если только вы не пометили их для экспортирования. Переменные, помеченные для экспортирования, называются переменными окружения, и они будут доступны любым командам, созданным данной оболочкой. Приведенная команда помечает переменную ВС для экспортирования:
export ВС
Вы можете вывести список локальных переменных, выдав команду set. Вы можете вывести список переменных, помеченных для экспортирования, выдав команду env. Командный процессор Bourne имеет несколько предопределенных переменных, некоторые из которых описываются в таблице 12.4. Эти переменные назначаются автоматически, когда какой- нибудь пользователь регистрируется в системе, и определяются программой регистрации, системным файлом инициализации и файлами инициализации данного пользователя.
Таблица.'^Л ME^jtN$pi&^ переменные командного
Переменная
Описание
ARCH
Устанавливает архитектуру системы данного пользователя (например, sun4, sun4c, sun4u).
CDPATH
Устанавливает маршрут поиска для команды cd.
НОМЕ
Устанавливает значение исходного каталога данного пользователя.
LANG
Устанавливает локаль.
LOGNAME
Определяет имя пользователя, который в данный момент времени зарегистрирован в системе. По умолчанию значение переменной LOGNAME автоматически устанавливается программой регистрации таким же, как и имя пользователя, указанное в файле /etc/passwd Вы должны только при необходимости ссылаться на данную переменную, не сбрасывая ее.
LPDEST
Устанавливает для пользователя принятый по умолчанию принтер.
Если данный параметр установлен в значение имени файла электронной почты и параметр MAILPATH не установлен, то командный процессор информирует пользователя о поступлении электронной почты в заданный файл.
MAILCHECK
Определяет, как часто (в секундах) командный процессор будет проверять поступление электронной почты в файлы, заданные параметрами MAILPATH или MAIL. Значение по умолчанию - 600 секунд (10 минут). Если установлено значение 0, то командный процессор будет выполнять проверку после каждого приглашения.
OPENWINHOME
Устанавливает маршрут к подсистеме OpenWindows.
Продолжение таблицы 12.4
Переменная
Описание
MAILPATH
Устанавливает маршрут для электронной почты в виде списка имен файлов, разделенных символами двоеточия. Если данный параметр установлен, то командный процессор информирует пользователя о поступлении электронной почты в любой из заданных файлов. После каждого имени файла может стоять символ процента (%), и тогда при изменении времени модификации на печать будет выводиться некоторое сообщение. Принятым по умолчанию сообщением является строка "You have mail" ("Для вас есть почта").
MANPATH
Устанавливает иерархию доступных страниц руководства.
PATH
Перечисляет в определенном порядке каталоги, в которых оболочка выполняет поиск программы для выполнения, когда пользователь вводит какую-нибудь команду. Если данный каталог отсутствует в маршруте поиска, пользователи должны вводить для команды полное имя маршрута. По умолчанию значение переменной автоматически устанавливается таким, как оно определено в файле .profile (для командных процессоров Bourne или Когп) или в файле .свЬгс (для командного процессора С), как часть процесса регистрации пользователя в системе.
PS1
Устанавливает первичную строку приглашения, по умолчанию - "$ ".
PS2
Устанавливает вторичную строку приглашения, по умолчанию - "> ".
SHELL
Устанавливает оболочку, или командный процессор, используемый по умолчанию инструментами make, vi и др. Когда вызывается командный процессор, он просматривает окружение в поисках данного имени.
TERM
Определяет терминал. Эта переменная должна быть переустановлена в файле /etc/profile или в файле /etc/.login. Когда пользователь запускает какой-нибудь текстовый редактор, система ищет файл с именем, которое определено данной переменой окружения. Система выполняет поиск каталога, на который ссылается переменная TERMINFO, для определения характеристик данного терминала.
TERMINFO
Определяет имя маршрута для какого-нибудь неподдерживаемого терминала, который был добавлен к базе данных terminfo. Используйте переменную TERMINFO в файле /$HOME/.profile или /$HOME/.login. Когда устанавливается переменная окружения TERMINFO, система в первую очередь проверяет маршрут TERMINFO, определенный данным пользователем. Если определение какого-нибудь терминала не обнаруживается в каталоге TERMINFO, указанном пользователем, то поиск этого определения производится в принятом по умолчанию каталоге /usr/share/lib/terminfo. Если же определение не найдено ни в одном из каталогов, то данный терминал идентифицируется как "dumb" (простой терминал ввода-вывода).
TZ
Устанавливает часовой пояс, используемый для отображения дат (например, при использовании команды Is -1). Если переменная не установлена в окружении пользователя, то применяются системные установки; в противном случае используется GMT (Greenwich Mean Time - Гринвичское время).
< ПРИМЕЧАНИЕ ■ v
Важным является порядок перечисления каталогов в маршруте поиска. Когда идентичные команды существуют в различных каталогах, то используется первая найденная команда с заданным именем. Например, предположим, что переменная PATH определяется для пользователя с именем jean (в синтаксисе командных процессоров Bourne и Когп) следующим образом: PATH=/bin:/usr/bin:/usr/ sbin:$HOME/bin. А файл команды, который имеет имя sample, находится в каталогах /usr/bin и / home/jean/bin. Если пользователь вводит команду, не определив для нее полного имени маршрута, то используется версия этой команды, найденная в каталоге /usr/bin.
Встроенные команды
Такие команды используются в программах командного процессора для принятия решений и добавления к выполняемой задаче развитых логических возможностей. Встроенные команды оболочки Bourne перечисляются в таблицах 12.5 и 12.6. Более подробная информация по встроенным командам, которые описываются в таблице 12.5, доступна на страницах оперативного руководства по операционной системе Solaris. Условные выражения командного процессора, перечисленные в таблице 12.6, описываются далее в настоящей главе. Каждый командный процессор имеет свой собственный набор встроенных команд, при этом набор встроенных команд оболочки Bourne является минимальным. Именно поэтому данный командный процессор является самым маленьким и самым быстрым среди трех вышеупомянутых.
Встроенная команда
Описание
break
Выходит из циклов for или while.
continue
Продолжает следующую итерацию в цикле for или while.
echo
Записывает аргументы на стандартный вывод.
eval
Оценивает и выполняет аргументы.
exec
Исполняет некоторую программу вместо текущего процесса, поэтому встроенная команда ехес не создает нового процесса.
exit
Выходит из программы оболочки.
export priv read
Создает некоторую глобальную переменную.
Устанавливает или отображает привилегии.
Считывает строку стандартного ввода.
readonly set
Устанавливает для некоторой переменной доступ только по чтению.
Устанавливает опции командного процессора.
test
Оценивает условные выражения.
times
Отображает времена выполнения.
trap umask
Управляет сигналами при выполнении.
Устанавливает уровень защиты по умолчанию для файлов и каталогов.
unset
Сбрасывает некоторую локальную переменную.
wait
Ожидает завершения некоторого фонового процесса.
Таблица 12.6 Услов
Условное выражение
Описание
if-then-else-fi
Проверяет условие и выбирает некоторое действие в зависимости от результатов тестирования.
case-esac
Выбирает некоторое действие, основываясь на значении данной переменной.
for-do-done
Повторяет некоторую последовательность команд до тех пор, пока выполняется предопределенное условие.
while-do-done
Повторяет некоторую последовательность команд до тех пор, пока проверка условия не перестанет возвращать логическое значение true.
until-do-done
Повторяет некоторую последовательность команд до тех пор, пока проверка условия возвращает успешный статус.
Условные выражения командного процессора
В дополнение к встроенным командам, которые были перечислены в таблицах 12.5 и 12.6, в оболочке Bourne имеется также несколько простых условных выражений. Условная команда осуществляет некоторый выбор в зависимости от исхода условия. Примерами простых условных выражений являются && и ||, которые, наряду с условными выражениями if и case, будут рассматриваться в настоящем разделе.
Условные выражения && и ||
Простейшим условным выражением в командном процессоре Bourne является двойной амперсанд (&&). Если две команды разделяются двойным амперсандом, то вторая команда выполняется только в том случае, когда первая возвращает нулевой код завершения (свидетельство успешного выполнения команды).
Далее приведен соответствующий пример:
Is -Id /usr/bin > /dev/null && echo "Directory Found"
Если каталог /usr/bin существует, то на экране отображается сообщение Directory Found (каталог найден).
Противоположностью по отношению к двойному амперсанду является двойная вертикальная черта (||).Если две команды разделяются двойной вертикальной чертой, то вторая команда выполняется только в том случае, когда первая возвращает ненулевой код завершения (свидетельство аварийного завершения команды).
Далее приведен соответствующий пример:
Is -d /usr/foo I I echo "No directory found"
Если заданный каталог не существует, то на экране отображается следующее сообщение:
/usr/foo: No such file or directory
No directory found
Программы true и false
В командном процессоре Bourne имеются специальные программы true и false. Единственной функцией программы true является возвращение логического значения true (истина - нулевое значение) для кода завершения, или статуса выхода. Аналогично, функцией программы false является возвращение логического значения false (ложь - ненулевое значение) для статуса выхода.
Ниже приведен соответствующий пример:
True && echo True
Система отвечает словом True.
А теперь другой пример:
False || echo False
Система отвечает словом False.•
Проверки истинности и ложности будут рассмотрены позднее при обсуждении условных выражений if и while.
Условные выражения && и || удобны при создании простых сценариев, однако иногда требуется дополнительная функциональность. Для таких случаев в командном процессоре Bourne имеются условные выражения if и саве.
Условное выражение if
Одной из наиболее важных встроенных команд командного процессора Bourne является условное выражение if, синтаксис которого выглядит следующим образом: if condition-list then list elif condition-list then list else list fi
Выполняется список list, который следует за выражением if. Если он возвращает нулевой код завершения (нулевой статус выхода), то выполняется список list, который следует за первым словом then. В противном случае выполняется список list, который следует за словом elif. Если его значение равно нулю, то выполняется список list, который следует за следующим словом then. В случае неуспешного завершения выполняется список list, который следует за словом else. Если ни один список не выполняется, то команда if возвращает нулевой код завершения.
Приведенный ниже пример демонстрирует использование условного оператора if: if [ -f /tmp/errlog ] then rm /tmp/errlog echo "Error log has been removed" else echo "No errorlog has been found" fi
В приведенном примере программа проверяет наличие файла с именем /tmp/errlog. Если такой файл существует и является обычным файлом, то программа удаляет его. Если же файл не существует, то на печать выводится сообщение об этом.
Программа test
В предыдущем примере использовалась встроенная команда if test |-f /tmp/errlog| для оценки условного выражения. Сердце любой управляющей конструкции - это проверка некоторого условия. В программах оболочки команда test обычно применяется для выполнения различных проверок и для определения, существует ли конкретный файл или каталог. Программа test выполняет три типа проверок:
Ф Она может проверять файлы на предмет конкретных характеристик, таких как тип файла и полномочия доступа к нему.
Ф Она может выполнять сравнение строк, ф Она может проводить сравнение чисел.
Программа test отражает успех или неудачу проведенной ею проверки с помощью кода завершения (статуса выхода). Программа test оценивает некоторое выражение и, если результатом оценки является логическое значение true, устанавливает нулевой статус выхода. В противном случае устанавливается ненулевой статус выхода. Все команды оболочки возвращают логическое значение true (0), если они выполнены успешно, в противном случае - логическое значение false (1). Вы можете отобразить статус выхода последней команды оболочки, взглянув с помощью команды echo назначение переменной $?. В таблице 12.7 перечисляются некоторые общепринятые условия, которые могут быть проверены.
;Табли^а;42^'Встроённеи^ ■ '
Условие проверки
Описание.
-г <filename>
Возвращает логическое значение true, если файл по имени filename существует и доступен для чтения. ’
-w <filename>
Возвращает логическое значение true, если файл по имени filename существует и доступен для записи.
-х <filename>
Возвращает логическое значение true, если файл по имени filename существует и доступен для исполнения.
-f <filename>
Возвращает логическое значение true, если файл по имени filename существует и представляет собой обычный файл.
-d <filename>
Возвращает логическое значение true, если файл по имени filename существует и представляет собой каталог.
-h <filename>
Возвращает логическое значение true, если файл по имени filename существует и представляет собой символическую ссылку. С другими примитивами (за исключением -L <filename>) символические ссылки отслеживаются по умолчанию.
-c <filename>
Возвращает логическое значение true, если файл по имени filename существует и представляет собой символьно-специальный файл.
-b <filename>
Возвращает логическое значение true, если файл по имени filename существует и представляет собой блочно-специальный файл.
-u <filename>
Возвращает логическое значение true, если файл по имени filename существует и для него установлен специальный бит - SUID.
-g <filename>
Возвращает логическое значение true, если файл по имени filename существует и для него установлен специальный бит - SGID.
-k <filename>
Возвращает логическое значение true, если файл по имени filename существует и для него установлен sticky-бит (бит закрепления).
-n <filename>
Возвращает логическое значение true, если длина строки отлична от нуля.
-s <filename>
Возвращает логическое значение true, если файл по имени filename существует и его длина больше нуля.
-z <string>
Возвращает логическое значение true, если длина строки равна нулю.
<S1>= <s2>
Возвращает логическое значение true, если строки st и s2 идентичны.
<s1 > != <s2>
Возвращает логическое значение true, если строки st и s2 не идентичны.
<n1> -eq <n2>
Возвращает логическое значение true, если числа п1 и п2 равны между собой в алгебраическом смысле. Вместо оператора сравнения -eq может быть использован любой из операторов -ne, -gt, -ge, -It и -Ie.
Продолжение таблицы 12.7
Условие проверки
Описание
-L <filename>
Возвращает логическое значение true, если файл по имени filename существует и представляет собой символическую ссыпку. С другими примитивами (за исключением -h <filename>) символические ссылки отслеживаются по умолчанию.
Эти функции могут быть скомбинированы со следующими операторами
1
Унарный оператор отрицания.
а
Бинарный оператор "и".
о
Бинарный оператор "или" (оператор -а имеет более высокий приоритет, чем оператор -о).
(expression)
Круглые скобки для группирования. Обратите внимание на то, что круглые скобки интерпретируются командным процессором, поэтому они должны быть взяты в кавычки.
Приведенный пример демонстрирует, где вы можете воспользоваться унарным оператором:
if [ ! -f /tmp/errlog ]
then
echo "No error log has been found" fi
В приведенном примере оператор [ ! -f /tmp/errlog ] проверяет, действительно ли файл /tmp/errlog не существует.
Оператор case
Многие программы управляются с помощью системы меню; другими словами, они предлагают пользователю некоторое меню вариантов, из которых нужно сделать выбор. Оператор case упрощает создание меню вариантов. Синтаксис оператора case в общем случае выглядит следующим образом:
case value in
choicel) commands;;
choice2) commands;;
esac
Команда case выполняет список, ассоциирующийся с первым шаблоном, который указывает выбор. Приведенный пример описывает, как работает оператор case:
echo Please enter the letter next to the command that you want to select: echo 'a date' echo 'b Is' echo 'c who' read choice case $choice in
date;;
Is;; c) who;;
*) echo Invalid choice - Bye. esao
Список вариантов просматривается в поисках значения, введенного пользователем. Вариант выбора *) соответствует любому значению, поэтому он обычно добавляется в качестве последнего варианта - "все остальное".
Команды повторения действий
Командный процессор Bourne предоставляет три команды повторения действий, каждая из которых соответствует конструкциям, с которыми вы могли сталкиваться ранее в других языках программирования:
ф for
ф while
ф until
Эти команды вынуждают программу "циклить", или повторяться. Каждая из них описывается далее.
Цикл for
Цикл for - полезная команда оболочки, предлагающая самый простой способ реализации повторений в сценарии командного процессора. Синтаксис цикла for выглядит следующим образом:
for name [ in wordlist . . . ] do list
done
Всякий раз, когда исполняется команда for, аргументу name присваивается значение следующего слова, взятое из списка in wordlist. Если аргумент in word... опущен, то команда for один раз исполняет список do list для каждого установленного позиционного Параметра. Выполнение завершается, когда в списке больше не остается слов. Приведенный ниже пример демонстрирует, как работает простой цикл for:
for i in eat run jump play do
echo See spot $i done
Когда приведенная программа выполняется, система отвечает следующим образом:
See spot eat
See spot run
See spot jump See spot play
Если вы хотите вводить данные в интерактивном режиме, можно добавить специальную команду оболочки - read:
echo Hello- What\1s your name\?
read name for i in $name do
echo $i
done
] 5 2-300
При выполнении данной программы пользователь получает запрос на ввод слова list. Обратите внимание на применение символа обратного слэша (\), в результате чего символы ' и ? воспринимаются программой как литералы, а не специальные символы.
Цикл while
Цикл while постоянно повторяет совокупность команд до тех пор, пока выполняется некоторое условие. Синтаксис цикла while выглядит следующим образом:
while condition-list do commands
done
Прежде всего выполняется condition-list. Если он возвращает статус выхода true, тогда выполняется список команд do, и все начинается сначала. Если же список condition-list возвращает статус выхода false, то выполнение условной конструкции завершается.
Приведенный далее пример демонстрирует, как работает цикл while. Данная программа проверяет, существует ли файл /tmp/errlog. Если указанный файл не существует, то программа выходит из цикла. Если же этот файл существует, то программа выводит на печать некоторое сообщение и выполняется повторно через каждые пять секунд до тех пор, пока указанный файл не будет удален.
while [ -f /tmp/errlog ]
do echo The file is still there ; sleep 5 done
Специальная команда sleep 5 дает системе указание подождать пять секунд, прежде чем запускать данную программу еще раз.
Цикл until
Представляет собой некоторую разновидность оператора while. Точно так же, как оператор while повторяется до тех пор, пока condition-list возвращает логическое значение true, оператор until повторяется до тех пор, пока condition-list возвращает логическое значение false. В приведенном примере отображается некоторое сообщение через каждые пять секунд до тех пор, пока заданный файл не будет создан:
until [ -f /tmp/errlog ]
do echo the file is missing; sleep 5 done
Условные конструкции, такие как while и until, выполняются командным процессором точно так же, как если бы они были какой-нибудь одиночной командой. Командный процессор анализирует данную структуру целиком, прежде чем любая ее часть начнет выполняться.
Функции оболочки
Любой хороший язык программирования предоставляет поддержку функций. Функция - это связка операторов, которая выполняется как группа. Такие связки выполняются точно также, как и "обычная" команда, и используются для выполнения часто повторяю-
щихся задач. Преимуществом функции является то, что она держится в основной памяти компьютера, поэтому выполняется значительно быстрее, чем сценарий, который должен быть загружен с диска. Текущая версия командного процессора Bourne поддерживает функции; в более старых его версиях такая поддержка отсутствовала. Синтаксис функций командного процессора выглядит следующим образом:
name ()
{
command-list
}
Приведенный выше пример командного синтаксиса определяет функцию, имеющую имя name. Телом данной функции является список команд command-list, заключенный в фигурные скобки. Этот список выполняется всякий раз, когда выражение name задано в качестве имени некоторой команды. В качестве примера в командном приглашении наберите следующее:.
hello о
{ echo hello there
}
Эта функция имеет имя hello и может быть выполнена, если набрать hello. Выводом данной функции является строка hello there. Статусом выхода для некоторой функции является статус выхода последней команды, выполняющейся в теле данной функции.
Резюме
Создание ваших собственных команд с помощью сценариев и программ оболочек представляет собой мощный и гибкий инструмент, помогающий выполнять задачи системного администрирования. Прежде всего, необходимо выбрать тот командный процессор, использование которого для вас наиболее удобно. Свой выбор вы можете сделать между оболочками Bourne, bash, С, tcsh или Korn. При этом, однако, важно отметить, что многие системные администраторы выбирают командный процессор Bourne, поскольку он широко распространен и доступен.
В настоящей главе были описаны переменные командного процессора. В качестве системного администратора вам предстоит регулярно устанавливать и использовать такие переменные. Большинство применяемых вами программ Solaris и сторонних разработчиков будут ориентироваться на эти переменные. Если они установлены неправильно, эти программы также будут исполняться неправильно, и система в целом может функционировать некорректно.
Наконец, были описаны встроенные команды и условные выражения оболочки. Вам предстоит использовать эти встроенные команды в ваших сценариях для установки переменных, получения входной информации и выполнения повторяющихся задач и других операций, которые необходимы для автоматизации традиционных задач системного администрирования.
С использованием всех инструментов, перечисленных ранее, традиционные задачи системного администрирования могут быть упрощены и автоматизированы, что высвободит ваше время и позволит сосредоточиться на более важных задачах. Программирование в среде командного процессора - это тот навык, который должны иметь все системные администраторы и который является одним из ключевых требований к опытному пользователю UNIX.
Настоящая глава завершает книгу I и тот объем материала, который выносится на первую часть экзамена. Следующая книга настоящего издания охватывает темы, которые вам необходимо будет знать для сдачи второго экзамена. Во многих случаях книга II представляет более подробное изложение уже описанных тем, которые, однако, не входят в перечень материалов первого экзамена.
Ключевые термины
Сценарий оболочки, или командного процессора
Исполнительный бит
Ограниченная версия командного процессора
J-оболочка
Командный процессор С
Командный процессор Korn
Командный процессор Bourne
Переменная командного процессора
Взятие в кавычки
Встроенные команды оболочки
Условные выражения командного процессора
Статус выхода
Цикл
Функция оболочки
Примените ваши знания
Использование переменных командного процессора Bourne
При выполнении настоящего упражнения вам предстоит отображать на экране и устанавливать переменные командного процессора Bourne.
Оцениваемое время: 10 минут
Убедитесь, что вы находитесь в среде командного процессора Bourne, для чего введите команду /sbin/sh. Проверьте, что вы находитесь в среде командного процессора Bourne, для чего отобразите значение переменной $SHELL:
echo $SHELL
Выведите на печать значения переменных окружения вашей среды: env
Выведите на печать значения локальных переменных вашей среды: set
Перейдите в ваш исходный каталог:
Cd $НОМЕ
Примените ваши знания
Создайте переменную окружения с именем ME. Значением, присвоенным данной переменной, должно быть ваше имя.
ME='Bill Calkins' export ME
echo $ME
Удалите эту переменную:
unset ME
Создание сценария командного процессора Bourne
Напишите сценарий командного процессора Bourne по имени searchi, предлагающий пользователю ввести некоторую строку, поиск которой будет выполняться во всех файлах пользовательского каталога. Выведите на экран имена всех файлов, которые содержат данную строку.
Оцениваемое время: 15 минут
Находясь в собственном каталоге, воспользуйтесь редактором vi для создания текстового файла с именем searchi, который должен включать в себя следующие элементы:
#!/bin/sh
echo "Please enter a string to search for: "
read string
echo The following files contain the string $string:
grep -1 $string *
Установите полномочия исполнения для данного файла:
chmod 744 searchi
Выполните вновь созданный файл следующим образом: ./searchi
Убедитесь, что в вашем каталоге имеется текстовый файл, содержащий строку, которую вы планируете искать. Если это необходимо, воспользуйтесь vi для создания набора временных файлов.
Воспользуйтесь vi для написания другого сценария командного процессора с именем reverse, который будет принимать до десяти аргументов и выводить список этих аргументов в обратном порядке.
Находясь в собственном каталоге, воспользуйтесь vi для создания следующего сценария с именем mylist:
#! /sbin/sh echo $(10) $9 $8 $7 $6 $5 $4 $3 $2 $1
Установите полномочия исполнения для данного файла:
chmod 744 mylist
Выполните этот сценарий, как положено, и посмотрите на результаты:
./mylist 1234567
Использование в сценарии условного выражения case
Приведенное далее упражнение демонстрирует, как использовать в сценарии условное выражение case. Данный сценарий будет выводить на экран список опций, из которых пользователь будет делать свой выбор. В зависимости от выбранной опции будет выполняться конкретная команда.
Оцениваемое время: 15 минут
Находясь в собственном исходном каталоге, воспользуйтесь vi для создания текстового файла с именем options, который должен включать в себя следующие элементы: #!/bin/sh echo Please enter the letter next to the \ command that you want to select: echo 'a date' echo 'b Is' echo ’c who1 read choice case Schoice in
date;;
Is;; c) who; ; *) echo Invalid choice - Bye.
esac
Установите полномочия исполнения для данного файла: chmod 744 options
Запустите данный сценарий, введите букву а, b или с и отследите результаты: . /options
Создание интерактивного цикла for
Следующее упражнение продемонстрирует, как организовать повторение операций в некотором сценарии с использованием цикла for. Этот сценарий будет предлагать пользователю ввести имена, а затем будет генерировать приветствие для каждого введенного имени.
Оцениваемое время: 15 минут
Находясь в собственном исходном каталоге, воспользуйтесь vi для создания следующего текстового файла с именем users:
. #!/bin/sh echo "Hello- Please enter a list of names \ (ie. Bill Tom Mike)" read LIST for file in $LIST do
echo Greetings $LIST done
Установите полномочия исполнения для файла с именем users: chmod 744 users
Глава 12. Написание сценариев и программ оболочек ЧРЭ Примените ваши знания
Выполните данный сценарий: ./users
Использование условного выражения while
Приведенное ниже упражнение продемонстрирует, как использовать цикл while в сценарии. Вам предстоит создать программу msg, которая в течение одной минуты будет отображать через каждые пять секунд сообщение в активном окне.
Оцениваемое время: 15 минут
Находясь в собственном исходном каталоге, воспользуйтесь vi для создания текстового файла с именем msg:
#!/bin/sh count=l while
[ count -It 12 ] do
echo "Hello, I'm glad you're here"
sleep 5 let count=count+l
done
Установите полномочия исполнения для файла с именем msg: chmod 744 msg
Выполните данный сценарий: . /msg
Обзорные вопросы
Что из перечисленного представляет собой принятый по умолчанию командный процессор в системе Solaris?
Командный процессор Korn
Командный процессор С
Командный процессор Bourne
D. dtksh
Что является корректным методом для установки какой-нибудь глобальной переменной в среде командного процессора Bourne?
X=l; export X
X=l; export $Х
export Х=1'
D. setenv х 1
Что является корректным методом для установки какой-нибудь переменной в среде командного процессора Bourne?
А. х=1
В. setx=l
С. setenv х 1
D. export х=1
Какое из перечисленных условных выражений оболочки повторяет некоторую последовательность команд до тех пор, пока проверка условия не перестанет возвращать логическое значение true?
A. if-then-else-fi
В. for-do-done
С. while-do-done
D. until-do-done
Что делает &&?
Вторая команда выполняется только в том случае, если первая команда возвращает нулевой статус выхода.
Выполняет сценарий или программу в фоновом режиме.
Вторая команда выполняется только в том случае, если первая команда возвращает ненулевой статус выхода.
Выполняет заданную команду дважды.
Какое из перечисленных условных выражений командного процессора возвращает состояние выхода 0 или 1 ?
A. set
В. test
С. echo $?
D. case
Что из перечисленного представляет повторяющиеся команды в среде оболочки Bourne?
A. if
В. for
С. while
D. case
Что из перечисленного относится к основным преимуществам функций?
Они создаются проще, чем псевдонимы.
Они удерживаются в основной памяти компьютера, поэтому выполняются значительно быстрее, чем сценарии.
Они представляют собой некоторую связку операторов, которая выполняется как группа.
Они являются более защищенными, чем сценарии.
Как вы можете увидеть содержимое некоторой переменной?
A. echo variable
Is Svariable
set Svariable
echo Svariable
Примените ваши знания
Что из перечисленного ниже не является принятой по умолчанию переменной оболочки, которая автоматически устанавливается при входе в среду командного процессора Bourne?
A. NAME
В. CDPATH
С. НОМЕ
D. LPDEST
Какую из перечисленных проверок не выполняет программа test?
Проверка правильности установки некоторой переменной
Проверка файлов на предмет конкретных характеристик, таких как тип файла и полномочия доступа к нему.
Выполнение сравнения строк.
Проведение сравнения чисел.
Ответы на обзорные вопросы .
С. Принятым по умолчанию в системе Solaris является командный процессор Bourne.
А. Корректным является следующий метод для установки какой-нибудь глобальной переменной в среде командного процессора Bourne: X=l; export X.
А. Корректным является следующий метод для установки какой-нибудь переменной в среде командного процессора Bourne: х=1.
С. Условное выражение while-do-done повторяет некоторую последовательность команд до тех пор, пока проверка условия не перестанет возвращать логическое значение true.
А. Если две команды разделяются двойным амперсандом, то вторая команда выполняется только в том случае, если первая команда возвращает нулевой статус выхода (свидетельство успешного выполнения команды).
В, С. Программа test отражает успех или неудачу проведенной ею проверки с помощью ее состояния выхода. Программа test оценивает некоторое выражение и, если результатом оценки является логическое значение true, устанавливает нулевой статус выхода. В противном случае устанавливается ненулевой статус выхода. Все команды оболочки возвращают логическое значение true (0), если они выполнены успешно, или логическое значение false (1), если они выполнены неудачно. Вы можете отобразить статус выхода последней команды оболочки, выводя значение переменной $? с помощью команды echo.
В, С. Командный процессор Bourne предоставляет три команды повторного действия: for, while и until.
В, С. Функция представляет собой некоторую связку операторов, которая выполняется как группа. Такие связки выполняются точно так же, как и "обычная" команда, и используются для выполнения часто повторяющихся задач. Преимуществом функции является то, что она удерживается в основной памяти компьютера, поэтому выполняется значительно быстрее, чем сценарий, который должен быть загружен с диска.
D. Команда echo Svariable будет показывать вам содержимое некоторой переменной.
А. Переменная NAME не является принятой по умолчанию переменной оболочки, которая автоматически устанавливается при входе в среду командного процессора Bourne. Переменная LPDEST устанавливает принятый по умолчанию принтер для данного пользователя, переменная CDPATH устанавливает маршрут поиска для команды cd, а переменная НОМЕ значение исходного каталога данного пользователя.
А. Программа test выполняет три типа проверок:
Проверяет файлы на предмет конкретных характеристик, таких как тип файла и полномочия доступа к нему.
Выполняет сравнение строк.
Проводит сравнение чисел.
КНИГА
Сетевое окружение Solaris
Псевдофайловые системы и область своппинга в Solaris
Инсталляция сервера
Администрирование устройств и управление дисками
Среда NFS
Службы имен
Консоль управления Solaris и пакет Solaris AdminSuite
Ролевое управление доступом (RBAC)
JumpStart
Глава 13Глава 13Сетевое окружение Solaris
Глава 13
Глава 13
Темы
В настоящей главе рассматриваются следующие темы экзамена:
Определение фундаментальных сетевых терминов
В настоящей главе будут определены некоторые фундаментальные сетевые термины, с которыми сетевой администратор должен освоиться прежде, чем пытаться инсталлировать какую-нибудь сеть. Описываются концепции, лежащие в основе каждого уровня семиуровневой модели OS1 и пятиуровневой модели протокола TCP/IP.
Планирование и конфигурирование сети
Прежде чем приступать к практическому созданию какой-нибудь сети, системный администратор должен собрать информацию со всех подразделений данной организации для разработки плана реализации сети. Различные файлы сетевой конфигурации должны быть настроены для конкретного окружения.
Понимание IP-адресации и служб имен
При планировании какой-нибудь сети системный администратор должен принять решение о том, какие схему IP-адресации и службу имен следует применять. Эта
информация является необходимой составной частью сетевой конфигурации; следовательно, требуется понимание указанных двух тем.
Понимание сетевых команд, используемых для копирования файлов и выполнения команд на дистанционных системах
После того, как сеть будет введена в эксплуатацию, вы захотите воспользоваться преимуществами ряда команд и утилит Solaris, которые помогут вам полностью использовать вашу сеть. Задачи, для выполнения которых когда-то требовалась магнитная лента или гибкий диск, теперь могут быть выполнены через сеть за существенно меньшее время.
Сопровождение сети
Точно так же, как и любая другая часть системы, сеть требует регулярного мониторинга и периодического обслуживания. Запуск и останов сетевых служб, мониторинг статистических характеристик производительности и локализация возникающих проблем - все это повседневная работа системного администратора.
Содержание
(Введение442
фундаментальные основы сетей442
УПопологии443
(Модели443
(Протоколы443
Аппаратные средства450
(Планирование сети452
Установка сети и файлы конфигурации453
/etc/hostname.interface453
/etc/nodename453
/etc/defaultdomain453
/etc/inet/Hosts453
/etc/dejaultrouter455
IT адресация (ITv4) и классы сетей455
Класс A456
Класс®456
Класс С456
Классы® иЕ456
(Планирование 1Т-адресации457
Сетевые службы457
Служба имен458
Команды протокола ACT/IT459
telnet459
rfogin459
ftp
460
гср гзЯ
460
461
ге^ес rwfo
461
461
finger
461
гир
461
ping
461
spray
Сопровождение сети
463
464
(Резюме
465
Примените ваши знания
467
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
Для практического выполнения пошаговых примеров, команд и упражнений вам потребуется две системы Solaris, объединенные в сеть. Настоятельно рекомендуется практически отработать каждую команду и каждый пошаговый пример, представленный в настоящей главе, до тех пор, пока вы не сможете выполнять их по памяти.
Убедитесь в том, что вы понимаете каждую команду, описанную в настоящем разделе, и будьте готовы сопоставлять эти команды с их корректными описаниями.
В настоящей главе вводится больше терминов, чем в любой другой главе настоящей книги. Убедитесь в том, что вы ознакомились со всеми терминами, перечисленными в разделе "Ключевые термины" в конце настоящей главы. Будьте готовы сопоставлять эти команды с их корректными описаниями.
Введение
Одной главы явно недостаточно для того, чтобы охватить все аспекты сетевого администрирования; фактически фирма Sun разработала сертификационный экзамен специально для этой предметной области. Однако экзамен Solaris 8 Administrator включает в себя некоторые вопросы по фундаментальным основам сетей, и настоящая глава предоставит вам некоторую основную информацию. Тематика настоящей главы включает в себя проектирование и планирование, установку и обслуживание сети.
Фундаментальные основы сетей
Прежде чем начать работу, необходимо знать определения некоторых терминов, используемых в сетевых технологиях. Вам встретится множество аббревиатур, которые, по возможности, классифицируются в настоящем разделе. Начнем с описания сетевой модели, которая стала стандартной в операционной системе Solaris 8. Сначала будут описаны существующие типы сетей, а затем - различные сетевые протоколы. В конце будут определены физические компоненты аппаратных средств сети, включая сетевые интерфейсы и прокладку кабеля.
Топологии
Термин сетевая топология относится к общему описанию сети. Топология описывает небольшие и огромные сети, включая локальные и глобальные сети.
Локальная сеть
LAN (local area network — локальная сеть) — некоторая совокупность систем, как правило, размещенных в одном и том же здании и в пределах одного этажа, соединенных между собой какой-нибудь высокоскоростной физической средой передачи данных, такой как Ethernet. Локальная сеть может представлять собой единую IP-сеть либо может быть совокупностью нескольких сетей или подсетей, соединенных между собой через высокоскоростные маршрутизаторы.
Сетевой интерфейс и кабели, или средства физического соединения, которые используются для сетей, называются в совокупности сетевой средой передачи данных. Для соединения в локальной сети Solaris используются некоторые марки толстого или тонкого коаксиального кабеля, телефонная проводка, выполненная по принципу витой пары, или волоконнооптический кабель. В среде локальной сети Solaris проводные средства, выполненные по принципу витой пары, являются наиболее распространенной сетевой средой передачи данных, хотя также получает распространение волоконно-оптический кабель.
Глобальная сеть
WAN (wide area network - глобальная сеть) - сеть, которая покрывает потенциально огромную географическую область. Примером глобальной сети является Internet. В качестве других примеров глобальных сетей можно упомянуть сети масштаба предприятия. Такие сети связывают между собой различные офисы единой корпорации в единую сеть, протянувшуюся на несколько этажей, на несколько зданий, на целую страну, а возможно и на целый континент.
Модели
Понятие сетевой модели относится к общей структуре, или протоколу, используемому для организации связи между системами. Две сетевые модели, которые предоставляют основу для сетевых связей и являются стандартными в Solaris, - это эталонная модель ISO/ OSI и набор протоколов TCP/IP..
Эти модели состоят из различных уровней. Их можно представить себе как шаги, которые должны быть завершены прежде, чем вы сможете перейти к следующему шагу и, в конечном итоге, к организации связи между системами.
Протоколы
Сетевой протокол - это та часть сети, которую вы конфигурируете, но не можете видеть. Это программная часть, которая управляет передачей данных между системами через сеть. Чтобы изучить протоколы, необходимо сначала разобраться с сетевыми моделями.
Модель ISO/OSI
Прежде всего необходимо описать семиуровневую модель ISO (International Standards Organization - международная организация по стандартизации)/О81 (Open Systems
Interconnection - взаимодействие открытых систем), которая была разработана в начале восьмидесятых годов. Хотя эта модель представляет некоторый идеальный мир и кое в чем лишена смысла в сегодняшних сетевых средах, однако она является чрезвычайно полезной для определения различных функций, необходимых для возникновения сетевой связи.
В модели ISO/OSI отдельные службы, которые требуются для системы связи, организованы в виде семи уровней, построенных один на другом. Каждый уровень, представленный на рисунке 13.1, описывает конкретную сетевую функцию.
Рисунок 13.1.
Семиуровневая модель 1SO/OSI.
Уровень 7
Прикладной уровень
Уровень 6
Представительский уровень
Уровень 5
Сеансовый уровень
Уровень 4
Транспортный уровень
Уровень 3
Сетевой уровень
Уровень 2
Канальный уровень
Уровень 1
Физический уровень
В таблице 13.1 описывается функция каждого отдельного уровня.
Таблица 13.1 Уровни модели 1SO/OS14
Уровень ISO/OSIФункция
Физический уровеньУровень 1 описыввет аппаратные средства сети, включая электричес
кие и механические соединения сетевого оборудования.
Канальный уровеньУровень 2 разбивает данные на кадры для пересылки на физический
уровень и принимает кадры подтверждения приема. На этом уровне выполняется контроль ошибок и повторная передача кадров, принятых некорректно.
Сетевой уровеньУровень 3 управляет доставкой данных через канальный уровень пере
дачи данных и, в свою очередь, используется транспортным уровнем.
Транспортный уровеньУровень 4 определяет порядок использования сетевого уровня, чтобы
обеспечить виртуальное соединение типа точка-точка, свободное от ошибок, позволяющее системе А посылать сообщения системе В таким образом, чтобы они прибывали к адресату без повреждений и в должной последовательности.
Уровень ISO/OSIСеансовый уровеньПредставительский уровеньПрикладной уровеньУровень ISO/OSIСеансовый уровеньПредставительский уровеньПрикладной уровеньПродолжение таблицы 13.1
Уровень ISO/OSI
Сеансовый уровень
Представительский уровень
Прикладной уровень
Уровень ISO/OSI
Сеансовый уровень
Представительский уровень
Прикладной уровень
Функция
Уровень 5 использует транспортный уровень для установления некоторого соединения между процессами на различных системах. Он обеспечивает защиту и создание сеанса связи.
Уровень 6 выполняет такие функции, как сжатие текста, кодирование или преобразование форматов, чтобы попытаться сгладить различия между системами. Он позволяет несовместимым на прикладном уровне процессам связываться друг с другом через сеансовый уровень.
Уровень 7 отвечает за пользовательский вид данной сети (например, форматирование сообщений электронной почты). Представительский уровень обеспечивает прикладному уровню привычное локальное представление данных независимо от формата, используемого в данной сети.
Модель TCP/IP
Модель TCP/IP (Transmission Control Protocol/Internet Protocol - протокол управления передачей/протокол Internet) представляет собой протокол сетевых коммуникаций, который состоит из некоторого набора формальных правил, описывающих, как должны взаимодействовать программное обеспечение и аппаратные средства внутри сети. Модель TCP/IP использует пять уровней из эталонной модели взаимодействия открытых систем:
Ф Аппаратный уровень
ф Уровень сетевого интерфейса
ф Межсетевой уровень
ф Транспортный уровень
ф Прикладной уровень
Аппаратный уровень
Аппаратный уровень соответствует физическому уровню модели ISO/OSI и описывает аппаратные средства, включая электрические и механические соединения в сети. Этот уровень управляет передачей неструктурированных битовых потоков через среду передачи данных, в качестве которой может использоваться одна из перечисленных:
Ф Сеть Ethernet, выполненная в соответствии со стандартом IEEE802.3
Ф Шина с маркерным доступом, выполненная в соответствии со стандартом IEEE802.4
ф Кольцевая сеть с маркерным доступом, выполненная в соответствии со стандартом IEEE802.5
Ф Региональные сети, выполненные в соответствии со стандартом IEEE802.6
Название каждой среды передачи данных сопровождается соответствующим стандартом, который был разработан IEEE (Institute of Electrical and Electronics Engineers - Институтом инженеров по электротехнике и электронике) в рамках проекта 802, названного по месяцу (февраль) и году (1980) начала его разработки. Каждая среда передачи данных подразделяется на собственные входящие в нее стандарты.
Уровень сетевого интерфейса
Уровень сетевого интерфейса соответствует канальному уровню передачи данных модели 1SO/OSI и управляет доставкой данных через физическую сеть. Этот уровень обеспечивает обнаружение ошибок передачи и пакетное формирование кадров. Формирование кадров (framing) представляет собой процесс сборки бит в управляемые элементы данных. Кадр (frame) - это последовательность бит с четко определенным началом и окончанием.
В состав уровня сетевого интерфейса входят следующие протоколы:
Ф Ethernet
ф FDDI (Fiber Distributed Data Interface - распределенный волоконно-оптический интерфейс передачи данных)
Ф PPP (Point-to-Point Protocol - протокол передачи точка-точка)
ф Token Ring (маркерное кольцо)
Эти протоколы описываются далее в этом разделе.
Межсетевой уровень
Межсетевой уровень соответствует сетевому уровню модели ISO/OSI и управляет адресацией и доставкой данных между сетями, а также фрагментацией данных для канального уровня передачи данных. Межсетевой уровень использует следующие протоколы:
ф IP (Internet Protocol - протокол Internet). Этот протокол определяет маршрут, который необходимо задать некоторому пакету, основываясь на IP-адресе конечного узла сети. Операционная система Solaris 8 поддерживает IPv4 и IPv6 соответственно.
Ф ICMP (Internet Control Message Protocol - протокол управляющих сообщений в сети Internet). Этот протокол представляет собой расширение протокола IP, разрешающее генерацию сообщений об ошибках, тестовых пакетов и информационных сообщений, относящихся к протоколу IP.
Ф ARP (Address Resolution Protocol - протокол разрешения адреса). Этот протокол определяет метод, обеспечивающий отображение 32-битового IP-адреса в 48-битовый адрес Ethernet.
ф RARP (Reverse Address Resolution Protocol - протокол обратного разрешения адреса). Этот протокол является обратным по отношению к протоколу ARP. Он обеспечивает отображение 48-битового адреса Ethernet в 32-битовый 1Р-адрес.
Транспортный уровень
Транспортный уровень соответствует транспортному уровню модели ISO/OSI и обеспечивает, чтобы сообщения достигали корректного прикладного процесса с использованием протоколов TCP и UDP.
Протокол TCP (Transmission Control Protocol - протокол управления передачей) использует надежную, ориентированную на соединение линию связи для подключения к прикладным процессам. Линия связи, ориентированная на соединение, позволяет одному хосту посылать другому хосту данные в виде непрерывного потока. Это гарантирует, что все данные доставляются на другой конец линии связи в том же самом порядке, в котором они были посланы, и без дублирования. Связь реализуется через три четко определенные фазы: установление соединения, передача данных и освобождение соединения.
UDP (User Datagram Protocol - протокол передачи пользовательских дейтаграмм) представляет собой протокол без установления соединения. Он работает быстрее, чем протокол TCP, поскольку не требует установления соединения и обработки подтверждения приема. В связи с перечисленными особенностями этот протокол не гарантирует доставки данных. Это упрощенный и эффективный протокол, однако прикладная программа должна сама заботиться об обработке ошибок и повторной передаче.
Прикладной уровень
Прикладной уровень соответствует сеансовому, представительскому и прикладному уровням модели ISO/OSI. Прикладной уровень управляет доступными для пользователя прикладными программами и сетевыми службами. Этот уровень несет ответственность за определение способа, которым взаимодействующие сети представляют данные. Прикладной уровень включает в себя следующие протоколы:
ф NFS (Network File System - сетевая файловая система). Это приложение клиент-сервер, которое описывается в главе 17.
ф NIS, N1S+ (Network Information System - сетевая информационная система) и DNS (Domain Name System - служба имен доменов). Эти сетевые службы описываются в главе 18.
ф rlogin, telnet и FTP. Эти сетевые службы описываются далее в разделе "Сетевые службы" настоящей главы.
ф Протокол HTTP (Hypertext Transfer Protocol - протокол передачи гипертекста). Этот протокол используется World Wide Web для отображения текста, изображений и звука через Web-браузер.
ф Протокол SMTP (Simple Mail Transfer Protocol - простой протокол передачи электронной почты). Этот протокол обеспечивает доставку сообщений электронной почты.
ф Протокол RPC (Remote Procedure Cail - вызов дистанционных процедур). Это протокол, который программа может использовать для запроса служб другой системы в сети. Протокол RPC описывается в разделе "Сетевые службы" в настоящей главе.
ф Протокол RIP (Routing Information Protocol - протокол информации о маршрутизации). Этот протокол обеспечивает автоматическое распространение информации маршрутизации между системами.
ф Протокол SNMP (Simple Network Management Protocol - простой протокол сетевого управления). Этот протокол используется для управления всеми типами сетевого оборудования, включая компьютеры, концентраторы и маршрутизаторы.
Чтобы сеть функционировала правильно, информация должна быть доставлена по заданному назначению во вразумительной форме. Поскольку различные типы сетевого программного обеспечения и сетевых аппаратных средств нуждаются во взаимодействии для выполнения функций сети, проектировщики разработали набор (стек) коммуникационных протоколов TCP/IP, который в настоящее время признан в качестве стандарта основными международными организациями по стандартизации и применяется во всем мире. Поскольку стек протоколов TCP/IP представляет собой набор стандартов, он выполняется на различных типах компьютеров, облегчая вам задачу установки гетерогенной сети, работающей под управлением любой операционной системы, которая поддерживает прото-
колы TCP/IP. Операционная система Solaris включает в свой состав сетевое программное обеспечение для реализации набора коммуникационных протоколов TCP/IP.
Инкапсуляция и деинкапсуляция
Когда системы связываются через какую-нибудь сеть, подумайте об обработке данных на каждом уровне, начиная с верхнего, прикладного, и вплоть до нижнего, аппаратного уровня, через всю сеть, а затем поднимитесь обратно от аппаратного до прикладного уровня. К каждому сегменту, принятому на пути по уровням вниз, добавляется некоторый заголовок (это инкапсуляция), и из каждого сегмента, принятого на пути по уровням вверх, удаляется заголовок (это деинкапсуляция). Каждый заголовок содержит специфическую адресную информацию для того, чтобы уровни на дистанционной системе знали, как передавать данную информацию.
Например, в стеке протоколов TCP/IP какой-нибудь пакет может включать в свой состав некоторый заголовок с физического уровня, следующий за ним заголовок с сетевого уровня (IP), следующий за ним заголовок с транспортного уровня (TCP) и следующие за всеми этими заголовками данные прикладного протокола.
Пакет
Пакет представляет собой базовую единицу информации, передаваемую через сеть. Организация пакета очень похожа на традиционное письмо. Каждый пакет имеет некоторый заголовок, который соответствует почтовому конверту. Этот заголовок содержит адреса получателя и отправителя, а также информацию о том, как надлежит обрабатывать данный пакет при его путешествии через каждый уровень стека протоколов. Информационная часть пакета соответствует собственно письму. Пакеты могут содержать только конечное количество байт данных в зависимости от используемой сетевой среды. Таким образом, обычные информационные сообщения, такие как сообщения электронной почты, иногда разбиваются на фрагменты пакетов.
Сеть Ethernet
Ethernet представляет собой стандарт, который определяет физические компоненты машины, используемые для доступа к сети, и скорость, с которой работает сеть. Этот стандарт включает в себя спецификации прокладки кабеля, коннекторов и компонентов интерфейса компьютера. Ethernet представляет собой технологию LAN (локальной сети), которая передает информацию между компьютерами со скоростью до 10 миллионов бит в секунду (Мбит/с). Более новая версия Ethernet, которая называется 1 OOBase-T, или Fast Ethernet, увеличивает эту скорость до 100 Мбит/с, a Gigabit Ethernet поддерживает скорость передачи данных в 1 Гбит (1000 Мбит) в секунду. Сеть Ethernet может быть запущена на четырех типах физической среды передачи данных, которые описываются в таблице 13.2.
■:^пВ|в^|^;@йеды передачи данных сети Ethernet-
Среда передачи данных
Наименование
’Толстый" Ethernet
Тип 10Base5
’Тонкий" Ethernet
Тип 10Base2
Сеть Ethernet на витой паре
Тип 10Base-T
Сеть Ethernet на оптоволокне
Типы FOIRL и 10Base-F
Тип lOBase-Т сети Ethernet был наиболее популярной средой передачи данных в течение ряда лет, однако в последнее время он постепенно вытесняется типом 100Base-T.
Сеть Ethernet использует протокол под названием CSMA/CD, который устанавливается с возможностями Carrier Sense, Multiple Access, Collision Detect, первые буквы названий которых и определяют аббревиатуру. Возможность "Multiple Access" ("множественный доступ") означает, что каждая станция логически присоединена к единому кабелю. "Carrier Sense" ("контроль несущей") означает, что перед началом передачи данных станция проверяет кабель для того, чтобы определить, не посылает ли другая станция что- нибудь в данное время. Если локальная сеть простаивает, то данная станция может начинать посылать данные. Когда нескольким компьютерам, подсоединенным к одной и той же сети, необходимо послать данные, то две одновременные попытки вызывают возникновение конфликта данных. Протокол Ethernet обнаруживает этот конфликт (Collision Detect) и уведомляет компьютер о необходимости повторить отправку данных еще раз.
И все же, как же два компьютера могут послать данные в одно и то же время? И разве Ethernet не выявляет другие системы, которые могут вести передачу, прежде чем посылать данные через сеть?
Вот что происходит в данном случае: какая-нибудь станция сети Ethernet посылает данные со скоростью 10 Мбит/с. Это означает, что на каждый передаваемый бит информации отводится интервал времени длительностью 100 наносекунд. Сигнал распространяется со скоростью приблизительно одного фута за наносекунду. После того, как электрический сигнал первого бита пройдет по проводнику расстояние около ста футов, данная станция начинает посылать второй бит. Длина кабеля в сети Ethernet может достигать нескольких сотен футов. Если две станции подсоединены к одному и тому же кабелю и разнесены на расстояние 250 футов, причем, обе начинают передачу в одно и то же время, то в ходе передачи они будут находиться на середине третьего бита, прежде чем сигнал с каждой станции достигнет другой станции.
Приведенное выше объяснение необходимо для понимания возможности "Collision Detect" ("обнаружение конфликтов"), определяющей две последние буквы в аббревиатуре CSMA/CD. Если две станции начинают посылать данные в одно и то же время, то их сигналы "столкнутся" несколькими наносекундами позднее. Когда происходит такой конфликт, то эти две станции прекращают передачу и пытаются повторить ее позднее через случайно выбранный период задержки.
Хотя сеть Ethernet может быть построена с использованием одного общего сигнального провода, такая конфигурация не является достаточно гибкой для прокладки кабельной проводки в большинстве зданий. В отличие от обычной телефонной линии связи, кабель сети Ethernet не приспособлен для соединения одного медного проводника с другим. Вместо этого сеть Ethernet требует использования повторителя (ретранслятора), который представляет собой простую станцию, подсоединенную к двум проводам. Когда повторитель принимает данные на одном проводе, он повторяет принятые данные бит за битом на другом проводе. Когда происходит конфликт, повторитель также повторяет и этот конфликт. В зданиях, где имеется два или более типов кабеля сети Ethernet, общепринятой практикой является использование конвертеров сред передачи данных, коммутаторов или повторителей для преобразования в сети Ethernet сигналов с одного типа кабеля на другой.
Интерфейс FDDI
Интерфейс FDDI (Fiber Distributed Data Interface - распределенный интерфейс передачи
данных по волоконно-оптическим каналам связи) - это стандарт для передачи данных на волоконно-оптических линиях связи в локальной сети, которая может быть протянута на расстояние до 200 км (124 мили). Протокол FDDI базируется на протоколе кольцевой сети с маркерным доступом. В кольцевой сети с маркерным (эстафетным) доступом все компьютеры схематически размещены по кругу. Маркер, представляющий собой некоторую специальную битовую структуру, передается по этому кругу. Для отправки какого-нибудь сообщения компьютер захватывает маркер, присоединяет к нему сообщение, а затем отправляет его дальше по сети. Помимо того, что локальная сеть FDDI может быть большой в географическом смысле, она также может поддерживать тысячи пользователей. FDDI также позволяет работать с пакетами большего размера, чем низкоскоростные локальные сети, использующие Ethernet.
Сеть FDDI обычно содержит два маркерных кольца с двойным подключением и счетчиком вращения (движения маркера): первичное маркерное кольцо и вторичное маркерное кольцо для возможного резервирования на случай выхода из строя первичного маркерного кольца. Первичное маркерное кольцо обеспечивает пропускную способность до 100 Мбит/с. Если вторичное маркерное кольцо не задействовано для резервирования, то оно также может нести данные, удваивая пропускную способность сети до 200 Мбит/с. Обычно одно маркерное кольцо используется для передачи и одно - для приема. Если любое из двух маркерных колец выходит из строя, то сеть FDDI будет уменьшена до одного маркерного кольца, обеспечивающего как передачу, так и прием данных.
Аппаратные средства
Сетевые аппаратные средства представляют собой физическую часть сети, которую вы можете реально увидеть. Физические компоненты сети соединяют между собой системы. В их состав входят NIC (Network Interface Card - сетевая интерфейсная плата, или сетевой адаптер), хост, кабели, коннекторы, концентраторы (хабы) и маршрутизаторы; некоторые из перечисленных видов оборудования будут обсуждаться далее.
NIC
Аппаратные средства компьютера, которые позволяют подсоединить его к некоторой сети, носят название NIC. Сетевой интерфейс может поддерживать один или несколько коммуникационных протоколов, которые определяют то, как компьютеры используют физическую среду передачи данных - сетевой кабель - для обмена данными. Многие компьютеры поставляются с предварительно инсталлированными сетевыми интерфейсами (в частности, рабочие станции фирмы Sun); для других вам придется приобретать сетевые интерфейсные платы отдельно (например, для большинства персональных компьютеров).
Каждый тип среды передачи данных в локальной сети имеет собственный, связанный с ним сетевой интерфейс. Например, если вы хотите использовать сеть Ethernet в качестве среды передачи данных, то должны иметь сетевые интерфейсные платы Ethernet, инсталлированные в каждый хост, который будет частью этой сети. Соединители (коннекторы) на этой плате, к которым вы подсоединяете кабель Ethernet, называются портами Ethernet. Аналогичное правило справедливо и в том случае, если вы планируете использовать сеть FDDI, и т.д.
Хост
Если вы являетесь опытным пользователем Solaris, то вам, безусловно, знаком термин хост, часто используемый в качестве синонима слов "компьютер" или "машина". С
точки зрения TCP/IP в сети имеют место только два типа сущностей: маршрутизаторы и хосты (узлы сети). Когда какой-нибудь хост инициирует информационный обмен, он называется передающим узлом, или отправителем. Например, хост инициирует обмен, когда пользователь вводит команду ping или посылает какое-нибудь сообщение электронной почты другому пользователю. Хост, который является конечным пунктом обмена, называется принимающим узлом, или получателем. Каждый хост имеет имя, адрес в Internet и аппаратный адрес, которые помогают другим узлам в данной сети идентифицировать его. Эта информация описывается в таблице 13.3.
КомпонентОписаниеКомпонентОписание
КомпонентОписание
КомпонентОписание
Имя хостаКаждая система в сети имеет уникальное имя хоста (hostname). Имена
хостов позволяют пользователям обращаться к любому компьютеру в данной сети, используя короткое, легко запоминающееся имя, вместо сетевого IP-адреса данного узла сети.
Адрес в InternetКаждая машина в сети TCP/IP имеет адрес в Internet (или IP-адрес), кото
рый позволяет другим узлам сети идентифицировать данную машину.
Аппаратный адресКаждый хост некоторой сети будет иметь уникальный адрес Ethernet,
также называемый адресом MAC (Media Access Control - управление доступом к среде передачи данных). Изготовитель физически присваивает этот адрес центральному процессору или сетевому интерфейсу машины.
В качестве суперпользователя вы можете воспользоваться командой ifconfig -а для одновременного отображения IP-адреса и МАС-адреса данной системы: ifconfig -а
1о0: flags=1000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1 \ inet 127.0.o.l netmask ff000000
hmeO: flags=1004843<UP, BROADCAST, RUNNING, MULTICAST, DHCP, IPv4> mtu 1500 \ index 2 inet 192.168.1.106 netmask ffffffOO broadcast 192.168.1.255 ether 8:0:20:a2:63:82
Вы также можете получить МАС-адрес некоторой системы, воспользовавшись командой banner в ответ на приглашение OpenBoot, как описано в главе 2.
Хаб
Кабель в сети Ethernet подводится к каждой системе от хаба (концентратора). Хаб не делает ничего другого кроме соединения всех кабелей сети Ethernet таким образом, чтобы компьютеры могли бы соединяться один с другим. Он не занимается усилением сигнала или маршрутизацией пакетов из одной сети в другую. Когда какой-нибудь пакет прибывает в один порт концентратора, он копируется во все остальные порты таким образом, чтобы все остальные компьютеры в одной локальной сети могли бы видеть все пакеты. Концентраторы могут поддерживать от двух до нескольких сотен систем.
Пассивный хаб (концентратор) служит в роли канала передачи данных, обеспечивая их прохождение от одного устройства, или сегмента, к другому. Интеллектуальный хаб включает в себя дополнительные возможности, которые позволяют администратору контролировать трафик, проходящий через данный концентратор, и конфигурировать каждый его порт. Интеллектуальные концентраторы также называются управляемыми.
Третий тип хаба, называемый хабом с коммутацией пакетов, или коммутатором, представляет собой специальный тип концентратора, который переадресовывает пакеты на соответствующий порт, основываясь на адресах конкретного пакета. Традиционные концентраторы просто повторяют каждый пакет на каждом порте. Поскольку коммутирующие концентраторы переадресовывают каждый пакет только на требуемый порт, они обеспечивают гораздо лучшую производительность. Многие коммутирующие концентраторы поддерживают также балансировку нагрузки таким образом, что в зависимости от трафика порты динамически переназначаются для различных сегментов локальной сети.
Некоторые более новые коммутирующие хабы поддерживают как порты традиционной сети Ethernet (10 Мбит/с), так и порты сети Fast Ethernet (скоростной Ethernet - 100 Мбит/с). Это позволяет администратору устанавливать выделенный высокоскоростной канал Ethernet для устройств с высоким трафиком, таких как серверы.
Маршрутизатор
Маршрутизатор представляет собой машину, которая пересылает пакеты Ethernet из одной сети в другую. Другими словами, маршрутизатор соединяет локальные сети, а концентратор - компьютеры. Для решения указанной задачи маршрутизатор должен иметь, по крайней мере, два сетевых интерфейса. Машина с единственным сетевым интерфейсом не сможет пересылать пакеты; она считается узлом сети. Большинство машин, которые вы устанавливаете в сети, будут узлами.
Маршрутизаторы используют заголовки и таблицу пересылки для определения места назначения пакетов, и протокол ICMP (Internet Control Message Protocol - протокол управляющих сообщений в сети Internet) для связи друг с другом и для конфигурирования наилучшего маршрута между двумя хостами. Только очень небольшая фильтрация данных выполняется через маршрутизаторы. К тому же маршрутизаторы не заботятся о типе данных, которые они обрабатывают.
Планирование сети
Прежде чем вы установите вашу сеть, необходимо серьезно поработать над ее планированием. В процессе планирования сети вы должны выполнить следующие действия, которые будут описываться в настоящем разделе:
Получите номер сети и, если это возможно, зарегистрируйте ваш сетевой домен в соответствии с адресацией InterNIC, как описано в разделе "Планирование IP-адресации" далее в настоящей главе.
После получения номера вашей IP-сети, разработайте схему IP-адресации ваших хостов, как описано в разделе "IP-адресация (IPv4) и классы сетей" далее в настоящей главе.
Создайте список, содержащий IP-адреса и имена узлов для всех машин, которые образуют вашу сеть. Вы будете использовать этот список при создании сетевых баз данных.
Определите, какую службу имен следует использовать в вашей сети: NIS, NIS+, DNS или сетевые базы данных в локальном каталоге /etc. Службы имен обсуждаются далее в этой главе.
Только после тщательного планирования вашей сети вы будете готовы начать ее установку.
Установка сети и файлы конфигурации
В процессе инсталляции операционной системы вы будете использовать программу инсталляции программного обеспечения Solaris для конфигурирования вашей сети. Далее перечисляются сетевые конфигурационные файлы, которые устанавливаются программой инсталляции операционной системы Solaris:
/etc/hostname. interface
/etc/nodename
/etc/defaultdomain
/etc/inet/hosts
/etc/defaultrouter
/etc/hostname.interface
Этот файл определяет сетевые интерфейсы локального хоста. На локальной машине должен существовать, по крайней мере, один файл /etc/hostname.interface. Программа инсталляции операционной системы Solaris создает для вас этот файл. В имени этого файла interface заменяется именем устройства первичного сетевого интерфейса.
Этот файл содержит всего один элемент: имя хоста или IP-адрес, который ассоциирован с данным сетевым интерфейсом. Например, предположим, что для машины, которая называется systeml, первичный сетевой интерфейс имеет имя 1е0. Тогда рассматриваемый файл мог бы называться /etc/hostname.leO и содержать элемент systeml.
/etc/nodename
Этот файл содержит всего один элемент: имя хоста локальной машины. Например, на компьютере с именем хепа файл /etc/nodename мог бы содержать элемент хепа.
/etc/defaultdomain
Это файл присутствует только в том случае, если ваша сеть использует какую-нибудь службу имен (службы имен обсуждаются позже в настоящей главе). Этот файл содержит всего один элемент: полное официальное (правомочное) доменное имя того административного домена, к которому принадлежит сеть этого локального узла. Вы можете предоставить это имя программе инсталляции операционной системы Solaris либо отредактировать рассматриваемый файл позднее.
Например, если данный хост является частью домена pyramid, который классифицирован как домен типа .сот, то файл /etc/defaultdomain должен содержать элемент pyramid.com.
/etc/inet/hosts
База данных хостов содержит подробную информацию о машинах, которые входят в вашу сеть. Рассматриваемый файл содержит имена хостов и IP-адреса первичных сетевых интерфейсов, а также любые другие сетевые адреса, о которых должна знать данная машина. Когда пользователь вводит команду, например ping хепа, то данной системе необходимо знать, как добраться до хоста, имеющего имя хепа. Файл /etc/hosts предоставляет перекрестные ссылки для просмотра и поиска сетевого IP-адреса системы хепа. Для обес-
печения совместимости с операционными системами, основанными на BSD UNIX, файл /etc/hosts представляет собой символическую ссылку на файл /etc/inet/hosts.
Каждая строка в файле /etc/inet/hosts выдерживает следующий формат:
address hostname <nickname> [«comment]
Каждое из приведенных полей описывается в таблице 13.4.
Таблица 4 3.4 <1
Поле
Pc>i^T<|^itoa:7et&inetfh<^^■ /
Описание
address
IP-адрес каждого интерфейса, о котором должен знать этот локальный хост.
hostname
Имя хоста, присвоенное данной машине при установке, и имена хостов, присвоенные дополнительным сетевым интерфейсам, о которых должен знать этот локальный узел сети.
<nickname>
Необязательное поле, содержащее мнемоническое имя, или псевдоним данного хоста. Может существовать более одного мнемонических имен.
[«comment]
Необязательное поле, в которое вы можете поместить некоторый комментарий.
Когда вы запускаете программу инсталляции Solaris на какой-нибудь системе, она устанавливает исходный файл /etc/inet/hosts. Этот файл содержит минимальное количество элементов, требуемых для локального хоста: адрес интерфейса обратной петли, IP- адрес и имя хоста.
Например, программа инсталляции Solaris может создать следующие элементы в файле /etc/inet/hosts для системы по имени хепа:
.0.0.1 localhost loghost «loopback address
,9.200.3 xena«hostname
В файле /etc/inet/hosts для машины по имени хепа IP-адрес 127.0.0.1 отражает адрес интерфейса обратной петли, резервного сетевого интерфейса, используемого локальной машиной для обеспечения связи между процессами таким образом, чтобы эта машина могла бы посылать пакеты сама себе. Операционная система при порредстве команды ifconfig использует адрес интерфейса обратной петли для целей конфигурирования и тестирования. Каждая машина в сети TCP/IP должна иметь элемент для узла с именем localhost и должна использовать для него 1Р-адрес 127.0.0.1.
Если вы уже инсталлировали вашу операционную систему и ответили "по" ("нет") на вопрос об инсталляции сети, то можете либо отредактировать файлы сетевой конфигурации вручную, либо повторно выполнить ту часть программы инсталляции операционной системы, которая выполняет конфигурирование сети.
Чтобы повторно выполнить указанную часть программы инсталляции, вы сначала должны зарегистрироваться в системе с привилегиями суперпользователя. Затем введите в командной строке sys-unconfig для восстановления конфигурации системы до состояния поставки от изготовителя. После того как вы выполните эту команду, система стартует вновь и предложит вам ввести системную информацию, которая описывается в таблице 13.5.
ИнформацияДействие
Hostname (имя хоста)Введите уникальное имя данного компьютера.
Name service (служба имен) Выберите значение NIS, NIS+, DNS или NONE (в последнем случае будет использован локальный файл).
ИнформацияИнформацияДействиеДействиеПродолжение таблицы 13.5Продолжение таблицы 13.5Time zone (часовой пояс)Time zone (часовой пояс)IP address (IP-адрес)IP subnet mask (маска подсети IP)IP address (IP-адрес)IP subnet mask (маска подсети IP)Введите ваш локальный часовой пояс.
Информация
Информация
Действие
Действие
Продолжение таблицы 13.5
Продолжение таблицы 13.5
Time zone (часовой пояс)
Time zone (часовой пояс)
IP address (IP-адрес)
IP subnet mask (маска подсети IP)
IP address (IP-адрес)
IP subnet mask (маска подсети IP)
Введите уникальный IP-адрес данного узла сети.
Введите маску подсети, если подсети используются в вашей сети.
Введите пароль суперпользователя.Введите пароль суперпользователя.Root password
Введите пароль суперпользователя.
Введите пароль суперпользователя.
(пароль суперпользователя)
Когда система получит всю необходимую информацию, она продолжит процесс запуска. Когда система запустится, сеть будет сконфигурирована.
/etc/defaultrouter
Этот файл присутствует только в том случае, когда вам необходимо определить хост в качестве маршрутизатора. Файл /etc/defaultrouter содержит некоторый элемент для каждого маршрутизатора, непосредственно подсоединенного к данной сети. Этим элементом должно быть имя сетевого интерфейса, который функционирует в качестве маршрутизатора между сетями.
ПРИМЕЧАНИЕ
Вопросы защиты информации в сети рассматриваются в главе 8. Если необходимо, обратитесь к указанной главе для получения информации о конфигурировании файлов защиты информации в сети, которые называются /etc/hosts.equiv и /.rhosts.
IP адресация (IPv4) и классы сетей
В версии 4 протокола IP каждый хост TCP/IP имеет уникальный 32-битовый сетевой адрес, - обычно он называется IP-адрес - который является уникальным для каждого узла в данной сети. Если данный хост будет представлен в сети Internet, то этот адрес должен быть уникальным также и в Internet. По указанной причине IP-адреса в Internet контролируются каким-нибудь административным органом, таким как InterNIC.
IP-адрес представляет собой некоторую последовательность длиной четыре байт, которая записывается в виде четырех десятичных целых чисел, разделенных точками (например, 0.0.0.0). Каждое целое число имеет длину 8 бит и находится в диапазоне от 0 до 255. IP-адрес состоит из двух частей: идентификатор сети, который присваивается административным органом InterNIC, и идентификатор хоста, который присваивается локальным администратором. Первое целое число среди IP-адресов (0.0.0.0) определяет тип адреса, который называется классом адреса. Всего существует пять классов IP-адресов: А, В, С, D и Е. Не вдаваясь глубоко в детали, приведем краткое описание каждого из этих пяти классов.
•■У^МЕЧАЙ!^^ . • ' . ' 'УУ''
Из-за ограничений, заложенных в проект схемы версии 4 протокола IP, в действие будет постепенно вводиться пересмотренная версия этого протокола. Этот протокол, который называется IPv6 (версия 6 протокола IP), разрабатывался с целью преодоления основных ограничений действующего подхода. Протокол IPv6 совместим с протоколом IPv4, однако версия 6 протокола IP делает возможным назначение гораздо большего количества уникальных адресов Internet и поддерживает улучшенные защиту информации и производительность.
Класс А
Применяется для очень больших сетей с миллионами хостов, такой как Internet. Номер сети класса А использует в качестве собственного идентификатора сети первые восемь бит IP-адреса. Оставшиеся 24 бит образуют часть, предназначенную для идентификатора хоста. Значения, назначаемые для первого байта номеров сети класса А, попадают в диапазон от 0 до 127. Для примера рассмотрим 1Р-адрес 75.4.10.4. Значение 75 в первом байте означает, что данный узел находится в сети класса А. Оставшиеся байты, 4.10.4, устанавливают адрес данного хоста. Агентство InterNIC присваивает только первый байт номера сети класса А. Использование остальных трех байт оставляется на усмотрение владельца данного сетевого номера. Всего может существовать только 126 сетей класса А, поскольку значение 0 зарезервировано для сети, а значение 127 - для устройства обратной петли, что оставляет пригодными для применения номера в диапазоне от 1 до 126. Каждая из таких сетей может объединять до 16777214 узлов.
Класс В •
Сети класса В представляют собой сети среднего размера, такие как сети университетов и крупных компаний с большим количеством узлов. Сеть класса В использует в качестве своего номера первые 16 бит IP-адреса, а вторые 16 бит используются для номеров узлов сети. Значения первого байта номера сети класса В находятся в диапазоне от 128 до 191. В номере 129.144.50.56 первые два байта, 129.144, присваиваются InterNIC и образуют адрес данной сети. Последние два байта, 50.56, образуют адрес хоста и оставляются на усмотрение владельца сети. Сеть класса В может объединять до 65534 узлов. Как и в предыдущем случае, первый и последний адреса в данной сети зарезервированы. Адрес хоста 0 зарезервирован для данной сети, а адрес 255 - в качестве IP-адреса для широковещательной рассылки сообщений; таким образом, реальное количество узлов, которое может быть назначено для некоторой сети класса В, равняется 65534, а не 65536.
Класс С '
Класс С используется для небольших сетей, содержащих менее 254 узлов. Сеть класса С использует в качестве своего номера первые 24 бит IP-адреса, а оставшиеся 8 бит задействуются для номеров хостов. Номер сети класса С занимает первые три байта IP- адреса; только четвертый байт оставляется на усмотрение владельца сети. Значения первого байта номера сети класса С находятся в диапазоне от 192 до 223. Значения второго и третьего байт находятся в диапазоне от 0 до 255. Типичный адрес сети класса С может выглядеть как 192.5.2.5, где первые три байта, 192.5.2, формируют номер данной сети. Последний байт в приведенном примере, 5, представляет собой номер конкретного хоста. Сеть класса С может объединять не более 254 узлов из 256 адресов; как и в предыдущем случае, это связано с тем, что первый и последний адреса являются зарезервированными.
Классы D и Е
Адреса класса D находятся в диапазоне от 224 до 239 и применяются для многоадресной циркулярной рассылки IP-сообщений, как это определено в документе RFC 988. Адреса класса Е находятся в диапазоне от 240 до 255 и зарезервированы для экспериментального использования.
Планирование IP-адресации
Первым этапом работ по планированию IP-адресации является определение того, какой именно класс сетей подходит для вашей сети. После того, как вы решите эту задачу, можете получить ваш сетевой номер от органа адресации под названием InterNIC. Когда вы получите номер сети, то сможете планировать, как будете назначать части узла в IP-адресе. Вы можете обратиться в Регистрационную Службу InterNIC различными способами:
Ф Web-сайт службы: internic.net
Прочтите раздел FAQ (часто задаваемые вопросы) на этом Web-сайте, чтобы узнать больше о регистрации доменных имен.
Ф Почтовый адрес в Соединенных Штатах Америки:
Network Solutions Attn: InterNIC Registration Services 5
05 Huntmar Park Drive
Herndon, VA 22070
Ф Адрес электронной почты: hostmaster@rs.internic.net
Ф Телефон: 703-742-4777. Телефонная служба доступна с 7 часов пополуночи до 7 часов пополудни (Восточное Стандартное Время).
Ф Вы также можете нанести визит в ICANN (Internet Corporation for Assigned Names and Numbers - Internet-корпорацию по назначению адресов и имен), которая представляет собой новую некоммерческую организацию, получившую от правительства Соединенных Штатов Америки полномочия по координации определенных технических функций в Internet, включая управление системой имен доменов Internet. Более подробную информацию об организации ICANN можно найти по адресу www.icann.org.
Не назначайте сетевые номера в вашей сети произвольным образом, даже если вы не планируете соединять вашу сеть с существующими сетями TCP/IP. По мере расширения вашей сети вы можете принять решение о соединении ее с другими сетями. Изменение IP-адресов на этом этапе может занять немало времени и привести к простою сети.
Сетевые службы
Сетевые службы обсуждались в главе 8. Программа inetd представляет собой сетевой демон, который запускается в системе и прослушивает сеть от имени целого ряда процессов сервера, которые не запускаются во время загрузки системы. Демон inetd, когда принимает запрос на выполнение конкретной службы, стартует соответствующий серверный процесс. Список сетевых служб, которые предоставляются демоном inetd, содержится в файле /etc/inetd.conf. Ниже приведен пример некоторого элемента файла /etc/inetd.conf:
ftp stream tcp6 nowait root /usr/sbin/in.ftpd in.ftpd
Синтаксис данного элемента выглядит следующим образом:
<service_name> tli <proto> <flags> <user> <server_pathname> <args>
Каждая сетевая служба использует некоторый порт, который представляет адресное пространство, зарезервированное для данной службы. Системы связываются друг с другом через указанные порты. Общеизвестные порты перечисляются в файле /etc/services. Ниже приведено несколько элементов из файла /etc/services:
ftp-data20/top
ftp21/tcp
telnet23/tcp
Из приведенных элементов можно видеть, что служба ftp будет осуществлять обмен через порт 21 и использовать протокол TCP.
Каждая сетевая служба должна иметь уникальный номер порта, который используется всеми хостами в данной сети. Отслеживание этих портов может быть непростой задачей, особенно в сети, в которой поддерживается несколько сетевых служб.
Операционная система Solaris использует модель клиент-сервер, известную как RPC (Remote Procedure Call - вызов дистанционных процедур). При использовании какой-нибудь службы RPC клиент подключается к специальному серверному процессу, rpcbind, который является хорошо известной, зарегистрированной службой Internet. Процесс rpcbind регистрирует номера портов, ассоциированные с каждой службой RPC, перечисленной в файле /etc/ грс. Процесс rpcbind принимает запросы на установление соединения от всех клиентских приложений, основанных на модели RPC, и посылает клиенту номер соответствующего порта на сервере. Например, демон mountd, с которым вы познакомитесь в главе 17, описывается в файле следующим элементом:
mountd 100005 mount showmount
Демон mountd имеет программный номер 100005 и известен также под именами mount и showmount.
Для просмотра зарегистрированных программ RPC, запущенных в некоторой системе, следует воспользоваться утилитой rpcinfo с опцией -р. Например, можно проверить процессы на другой системе:
rpcinfo -р 192.168.1.21
Система отвечает списком всех зарегистрированных служб RPC, которые обнаружены выполняющимися на заданной системе. Этот листинг отображает программный номер, версию, протокол, порт и имя службы. Одна из перечисленных - служба mountd, может выглядеть следующим образом:
program vers protoportservice
1000051udp32784mountd
Вы также можете использовать утилиту rpcinfo, чтобы убрать какую-нибудь RPC- программу из числа зарегистрированных. С помощью опции -d вы можете удалить регистрацию некоторой службы. Например, в локальной системе запущена программа sprayd. Чтобы отметить ее регистрацию, введите следующую командную строку:
rpcinfo -d sprayd 1
Служба sprayd остановится. В главе 9 описывалось, как послать какой-нибудь сигнал процессу. Можно перезапустить sprayd, послав демону inetd сигнал HUP (hangup - "зависание"), как показано в следующем примере:
pkill -HUP inetd
Служба имен
Когда пользователь вводит команду, такую как ping хепа, первое, что должно произойти, - это трансляция имени хоста хепа в некоторый IP-адрес. Это может произойти одним из двух способов.
IP-адрес может быть определен из файла /etc/hosts или разрешен через какую-нибудь службу имен доменов. Для какой-нибудь небольшой сети использование файла /etc/hosts не составляет никаких проблем. Для более крупных сетей попытка поддерживать файл в состоянии синхронизации на всех хостах может привести к необходимости выполнения большого объема работ, поскольку эти файлы должны в точности совпадать на каждом узле. Если один и тот же адрес окажется использованным в двух различных системах, сеть может перестать работать.
DNS (Domain Name Service - служба имен доменов) основывается на сервере named (произносится нейм ди) для проведения трансляций имен хостов в IP-адреса. Сервер named - это хост, который постоянно хранит информацию об имени узла и IP-адресе какого- нибудь конкретного домена. Доменное имя - это сетевой эквивалент имени хоста. Имя узла относится к конкретной системе в сети, а доменное имя - к конкретной сети. Сетям сайтов и организаций назначается доменное имя. С другой стороны, они назначают имена хостов системам внутри их доменов. Система доменных имен в Internet предоставляет некоторую схему, с помощью которой каждый сайт в мире имеет уникальное имя.
Службы имен и DNS будут обсуждаться еще раз более подробно в главе 18.
Команды протокола TCP/IP
Стек протоколов TCP/IP предлагает несколько команд и функциональных возможностей, которые поддерживаются в операционном окружении Solaris. Эти команды представляют собой часть пакета сетевых средств TCP/IP и доступны на всех системах UNIX, где реализован TCP/IP, если только эти команды специально не были запрещены администратором.
telnet
Используется для регистрации в другой системе данной сети. Далее приведен пример сеанса telnet:
# telnet pyramidl
Trying 192.9.200.4...
Connected to pyramidl.
Escape character is ,A]'.
SunOS 5.8 login: bill
Password:
Last login: Mon Jul 30 15:12:59 from 192.9.200.1
Sun Microsystems Inc. SunOS 5.8 Generic February 2000 pyramidl%
rlogin
Команда rlogin также предназначена для регистрации в другой системе данной сети. В отличие от telnet команда rlogin имеет некоторый механизм, благодаря которому вам нет необходимости вводить регистрационное имя и пароль, если файлы /.rhosts и /etc/ hosts.equiv находятся на своих местах. Эти файлы рассматриваются в главе 9.
Протокол FTP (File Transfer Protocol - протокол передачи файлов) используется для передачи одного или нескольких файлов между двумя системами в сети. Ниже приведен пример сеанса ftp: pyramldl% ftp pyramidl Connected to pyraraidl. 220 pyraraidl FTP server (SunOS 5.8) ready. Name (pyramidl:bill): <cr> 331 Password required for bill. Password: <enter password> 230 User bill logged in. ftp> pwd 257 "/users/bill" is current directory. ftp> Is 200 PORT command successful. 150 ASCII data connection for /bin/ls (192.9.200.4,47131) (0 bytes), admin filel"
data 226 ASCII Transfer complete. 19 bytes received in 0.049 seconds (0.38 Kbytes/s) ftp> get filel /tmp/filel 200 PORT command successful. 150 ASCII data connection for filel (192.9.200.4,47132) (31311 bytes). 226 ASCII Transfer complete, local: /tmp/filel remote: filel 31441 bytes received in 0.12 seconds (266.82 Kbytes/s) ftp> bye 221 Goodbye, pyramidl%
rep
Для передачи одного или нескольких файлов между двумя хостами некоторой сети вы также можете воспользоваться командой rep (remote сору - дистанционного копирования). Другая система должна доверять вашему идентификатору на текущем хосте. Вопросы доверительных отношений обсуждались в главе 8.
Команда гср более удобна, чем ftp. Прежде всего, команда гср не требует регистрационного имени или пароля, если между системами существуют надлежащие доверительные отношения, что делает эту команду удобной для использования в сценариях. Во-вторых, команда гср позволяет копировать с одной системы на другую целые деревья каталогов. Однако утилита ftp имеет большее количество опций и рассматривается как более защищенная. Приведенный пример демонстрирует использование команды гср:
гср /etc/hosts systemB:/etc/hosts
В приведенном примере команда гср используется для копирования файла /etc/hosts с локальной системы на систему с именем systemB.
rsh
Вы можете воспользоваться командой rsh (remote shell - дистанционная оболочка, или командный процессор) для выполнения командного процессора на другой системе в сети. Другая система должна доверять вашему идентификатору на текущей системе. Приведенный пример демонстрирует, как использовать команду rsh для получения расширенного листинга каталога /etc в системе с именем systemB:
rsh systemB Is -la /etc
rexec
Команда rexec также используется для выполнения командного процессора на дистанционной системе. Эта команда отличается от rsh тем, что вы должны ввести пароль. На многих сайтах rsh отключается по соображениям зашиты информации, и в качестве замены используется команда rexec.
rwho
Команда rwho формирует вывод, похожий на вывод команды who, которая была описана в главе 9, однако делает это для всех систем в сети.
finger
Команда finger отображает информацию о пользователях, зарегистрированных на локальной системе или на других системах. Если команда finger применяется без аргументов, то предоставляет информацию о пользователях, которые зарегистрированы в данный момент времени. Если команда finger применяется с аргументом (например, с именем пользователя glenda), то она отображает информацию обо всех пользователях, соответствующих заданному аргументу. Вы также можете воспользоваться командой finger для просмотра пользователей на дистанционной системе, указав пользователя в формате username@host. Для защиты конфиденциальности информации пользователей многие дистанционные системы не разрешают использовать эту команду с других систем.
rup
Команда rup отображает статус (состояние) хостов дистанционных систем аналогич- зо команде uptime. Например, для получения информации, аналогичной выводу uptime, о хистанционном хосте sparc!4, наберите следующую команду:
rup sparcl4
Система отвечает следующим образом:
sparcl4 up 2 days, 41 mins, load average: 0.00, 0.00, 0.01
ping
Для тестирования подключения к сети конкретного хоста следует использовать команду ping. Синтаксис команды ping выглядит следующим образом:
/usr/sbin/ping <options> <host> [timeout]
6 2-30°
Аргумент <host> - это имя хоста запрашиваемой машины, а необязательный аргумент |timeout| определяет время в секундах, в течение которого команда ping будет пытаться "достучаться" до данной машины. Значение этого аргумента по умолчанию - 20 секунд.
Некоторые наиболее часто используемые опции команды ping описываются в таблице 13.6.
ОпцияОписание
VРасширенный вывод информации. Перечисляет все принимаемые па
кеты протокола ICMP кроме пакетов ECHO_RESPONSE.
1 <interval>Определяет интервал времени между успешными передачами. Значе
ние данной опции по умолчанию - 1 секунда.
sЕсли задан флаг -s, то посылает одну дейтаграмму в секунду (регулиру
. ется опцией -I) и выводит на печать одну строку выходной информации для каждого принятого пакета ECHO_RESPONSE.
Когда вы запускаете команду ping, протокол ICMP посылает некоторую дейтаграмму заданному вами хосту, запрашивая от него отклик. Протокол ICMP в сетях TCP/IP несет ответственность за обработку ошибок.
Для проверки сетевого соединения между узлами ultraS и sparc!4, наберите следующую команду:
ping sparcl4
Если узел sparc!4 находится в рабочем состоянии, то на экране отображается следующее сообщение:
sparcl4 is alive
Это сообщение означает, что узел sparcl4 откликнулся на запрос ICMP. Однако, если узел sparc!4 не работоспособен или не может принять пакеты ICMP, то вы получите следующий отклик:
no answer from sparcl4
Если вы подозреваете, что какая-нибудь машина, возможно, теряет пакеты, даже когда она находится в рабочем состоянии, можете воспользоваться опцией -s команды ping для того, чтобы попытаться обнаружить возникшую проблему. Например, введите следующую командную строку:
ping -s sparcl4
Команда ping будет непрерывно посылать пакеты на узел sparc!4 до тех пор, пока вы не пошлете символ прерывания или пока не наступит тайм-аут. Отклики на вашем экране будут похожи на приведенные строки:
PING sparcl4: 56 data 64 bytes from sparcl4 64 bytes from sparcl4 64 bytes from sparcl4 64 bytes from sparcl4 64 bytes from sparcl4
bytes
(192.9.200.14): icmp_seq=0. time-1, ms (192.9.200.14): icmp_seq=l. time=0. ms (192.9.200.14): icmp_seq=2. time=0. ms (192.9.200.14): icmp_seq=3. time=0. ms (192.9.200.14): icmp_seq=4. time=0. ms
sparcl4 PING Statistics
8 packets transmitted, 8 packets received, 0% packet loss round-trip (ms) min/avg/max = 0/0/1
Статистика потерь пакетов в конце приведенного вывода показывает, были ли на данном узле отброшенные пакеты, что может свидетельствовать о возникновении какой-нибудь проблемы в сети.
spray
Команда spray тестирует надежность вашей сети. Она может сообщить вам, были ли факты задержки или отбрасывания пакетов. Команда spray посылает однонаправленный поток пакетов на какой-нибудь хост, используя протокол RPC (Remote Procedure Call - вызов дистанционных процедур). Эта команда сообщает, сколько пакетов было получено, а также скорость передачи данных.
Синтаксис команды spray выглядит следующим образом:
spray [ -с <count> -d <interval> -1 <packet_size>l <hostname> Каждая опция команды spray описывается в таблице 13.7.
Таблица 13Т Опции команды spray
Поле
Описание
-c <count>
Определяет количество пакетов, подлежащих передаче.
-d <interval>
Определяет продолжительность паузы в микросекундах между отправками пакетов. Если вы не используете задержку, то это может привести к переполнению буферов.
-1 <packet_size>
<hostname>
Указывает размер пакета.
Определяет имя системы, на которую будут отправляться пакеты. Аргумент hostname может быть либо именем, либо IP-адресом.
Команда spray неудобна для тестирования сетевых характеристик, поскольку она использует ненадежные транспорты без установления соединения, такие как протокол UDP (User Datagram Protocol - протокол передачи пользовательских дейтаграмм). Команда spray может сообщать об отбрасывании большого количества пакетов и в тех случаях, когда такое отбрасывание было обусловлено лишь тем, что команда spray посылала пакеты быстрее, чем выполнялась их локальная буферизация (прежде, чем пакеты попадали в сетевую среду передачи данных). Тем ни менее, команда spray используется для проверки установления соединения между двумя хостами и для тестирования процессов функционирования сети.
Следующий пример демонстрирует использование команды spray при отправке 100 пакетов на систему sparc!4 (опция -с 100). Каждый пакет имеет размер 2048 байт (опция -12048). Пакеты отправляются с задержкой в 20 микросекунд перед каждым пакетом (опция -d 20):
spray -с100 -d20 -12048 sparcl4
Система отвечает следующим образом:
sending 10О packets of length 2048 to sparcl4 ...
2 packets (2.000%) dropped by sparcl4 567 packets/sec, 1161394 bytes/sec
Сопровождение сети
В дополнение к набору команд TCP/IP операционная среда Solaris предоставляет несколько сетевых команд, которые системный администратор может использовать для проверки и локализации проблем в сети.
Шагзашагом ;'у/- /' •
Проверка работоспособности сети
Проверьте сетевое соединение с другой системой, для чего введите следующую командную строку:
ping <options> <ip address>
Например, для проверки сети между узлами systemA и systemB, введите команду ping systemB с узла systemA. Если данная проверка завершилась успешно, дистанционная система отвечает следующим образом:
systemB is alive
Если же сеть неактивна, вы получите такое сообщение:
no answer from systemB
Если вы получили именно такое сообщение, проверьте кабельную проводку и убедитесь, что дистанционная система сконфигурирована должным образом.
Воспользуйтесь утилитой snoop для определения того, что информация проходит между системами. Утилита snoop может показать, что реально происходит, когда одна система запрашивает другую с помощью команды ping:
snoop 192.168.1.106 192.168.1.21
Система отвечает следующим образом:
Using device /dev/hme (promiscuous mode) 192.168.1.106 -> 192.168.1.21 ICMP Echo request \ (ID: 2677 Sequence number: 0) 192.168.1.21 -> 192.168.1.106 ICMP Echo reply \ (ID: 2677 Sequence number: 0)■
Проверьте сетевой трафик, для чего наберите следующую командную строку: netstat -i 5
Система отвечает следующим образом:
input
1е0
output
input
(Total)
output
packets
errs
packets errs
colls packets
errs
packets
errs
colls
95218
49983189
1
0
218706
49983
123677
1
0
0
0
0
0
0
3
0
3
0
0
0
0
0
0
0
4
0
4
0
0
1
1
0
0
0
144
1
143
0
0
0
0
0
0
0
256
0
256
0
0
0
0
0
0
0
95
0
95
0
0
0
0
0
0
0
1171
0
1171
0
0
Команда netstat используется для мониторинга активности системы в сети TCP/IP. Команда netstat может предоставить некоторые основные данные о
том, какая активность имеет место в сети, и сколь она интенсивна. Опция -i показывает состояние сетевого интерфейса, который используется для трафика TCP/IP. Последняя опция, 5, обеспечивает повторную выдачу команды netstat через каждые пять секунд с целью получения качественной оценки сетевой активности. Для прерывания команды netstat нажмите Ctrl+C.
Обратите внимание на столбец colls для определения максимального количества конфликтов. Для вычисления интенсивности конфликтов в сети разделите количество выходных конфликтов (столбец colls в группе output) на количество выданных пакетов. Интенсивность конфликтов в масштабах всей сети, превышающая 10%, может свидетельствовать о том, что сеть перегружена, неправильно сконфигурирована, или о том, что имеются проблемы с аппаратными средствами.
Проанализируйте столбец errs для определения максимального количества ошибок. Для вычисления интенсивности ошибок входных пакетов, разделите количество входных ошибок на общее количество пакетов на входе. Если интенсивность входных ошибок велика - более 25%, - то данный хост может отбрасывать пакеты из-за наличия проблем при передаче. Проблемы при передаче могут быть обусловлены другими аппаратными средствами в сети, а также напряженным трафиком и наличием низкоуровневых проблем с аппаратными средствами. Маршрутизаторы могут отбрасывать пакеты, заставляя повторять передачу, что приводит к ухудшению характеристик производительности сети.
Введите команду ping -sRv <hostname> с клиентской рабочей станции для определения того, сколько времени потребуется пакету для совершения полного цикла в данной сети. Если такой полный цикл требует больше времени, чем несколько миллисекунд, это может означать, что в сети используются слишком медленные маршрутизаторы или сеть слишком загружена. Выдайте команду ping дважды и игнорируйте первую серию результатов. Команда ping -sRv также отображает потери пакетов. Если вы подозреваете о наличии какой-нибудь проблемы на физическом уровне, воспользуйтесь командой ping -sRv для того, чтобы определить время отклика нескольких узлов в сети. Если время отклика (в миллисекундах) от одного хоста не такое, как вы ожидаете, исследуйте этот хост.
Резюме
Хотя сетевые технологии представляют собой тему, которая могла бы поглотить многие главы настоящей книги, тем не менее, здесь описаны основные положения, которые вам необходимо знать для установки системы Solaris в сети. Были описаны все концепции, которые нужно знать для сдачи экзамена (310-012) на получение сертификата системного администратора фирмы Sun в операционной среде Solaris 8.
После прочтения настоящей главы вы должны иметь представление о двух типах сетевых моделей: ISO/OSI и TCP/IP. В настоящей главе описаны все компоненты каждого из уровней этих двух моделей.
Были описаны аппаратные и программные компоненты сети, а также все конфигурационные файлы, которые могут вам потребоваться для настройки сетевых служб с целью обеспечения их нормального функционирования.
Наконец, в настоящей главе обсуждались команды, связанные с сетью, и утилиты, которые вам предстоит применять для мониторинга и обслуживания сети. В сетевом окружении производительность системы зависит от того, насколько грамотно вы эксплуатируете вашу сеть. Перегруженная сеть будет создавать впечатление медленной работы системы и может даже привести к простоям. Непрерывно наблюдайте за вашей сетью. Вам необходимо знать, как выглядит ваша сеть, когда все работает хорошо, для того, чтобы вы представляли, каковы будут внешние проявления снижения ее производительности. Сетевые команды, которые были описаны в настоящей главе, возвращают только числа. Только вы сами в состоянии принять решение о том, являются ли эти числа приемлемыми для вашей среды. Как уже отмечалось ранее, когда вводилось понятие системного администрирования, практические навыки и опыт помогут вам достичь совершенства в качестве системного администратора.
В следующей главе будут описаны некоторые дополнительные темы управления дисками для того, чтобы далее в настоящей книге можно было рассмотреть организацию доступа к таким накопителям через сеть с использованием NFS.
Ключевые термины
LAN (локальная сеть)
WAN (глобальная сеть)
Сетевая модель
Сетевой протокол
Модель 1SO/OS1 (знать каждый из семи уровней)
Стек протоколов TCP/IP
UDP
SMTP
RPC
Инкапсуляция
Деинкапсуляция
Пакет
Сеть Ethernet
FDDI
Хост, или узел сети
Хаб (концентратор)
Имя хоста (hostname)
Адрес в сети Internet
Маршрутизатор
IP-адрес
Класс сети (необходимо описать каждый класс)
Сетевая служба
Примените ваши знания
Примените ваши знания
УПРАЖНЕНИЯ - ■
При выполнении следующих упражнений вам потребуются два хоста, соединенных через Ethernet. Вы должны иметь два узла, соединенных через сеть, один из которых имеет имя hostA, а второй - hostB.
Получение сетевой информации
При выполнении настоящего упражнения вам предстоит использовать различные сетевые команды и утилиты для получения информации о вашей системе и сети.
Оцениваемое время: 15 минут
Зарегистрируйтесь в системе hostA с привилегиями суперпользователя. Убедитесь в том, что в файле /etc/inet/hosts имеется элемент для узла hostB.
В качестве суперпользователя воспользуйтесь командой ifconfig для отображения информации о вашем сетевом интерфейсе:
ifconfig -а 1о0: \ flags=1000849<UP,LOOPBACK,RUNNING,MULTICAST,\ IPv4> mtu 8232 index 1 inet 127.0.0.1 netmask ff000000 hmeO: \
flagS=10 04843<UP, BROADCAST, RUNNING,MULTICAST, \ DHCP,IPv4> mtu 1500 index 2 \ inet 192.168.1.106 netmask ffffffOO broadcast\ 192.168.1.255 \ ether 8 : 0:20:a2:63:82
Утилита ifconfig демонстрирует, что интерфейс hmeO имеет адрес Ethernet 8:0:20:а2:63:82. Первая половина этого адреса обычно является специфической и отдана изготовителю интерфейса. В данном случае код 8:0:20 обозначает фирму Sun Microsystems. Вторая половина адреса, а2:63:82, - уникальна для каждой системы.
Воспользуйтесь командой ping, чтобы послать запросы с откликом через протокол ICMP с системы hostA на систему hostB.
ping hostB
В системе hostA воспользуйтесь утилитой rpcinfo с опцией -р для вывода списка зарегистрированных программ RPC:
rpcinfo
Найдите службу sprayd на вашей системе: rpcinfo | grep sprayd
Остановите службу sprayd на вашей локальной системе следующим образом: rpcinfo -d sprayd 1
Проверьте, что служба sprayd остановлена: rpcinfo I grep sprayd
Перезапустите службу sprayd, послав демону inetd сигнал HUP (hangup - "зависание"):
pkill -HUP inetd
Проверьте, что служба sprayd запущена:
rpcinfo I grep sprayd
Использование snoop для отображения сетевой информации
При выполнении настоящего упражнения вам предстоит воспользоваться командами snoop, spray и ping для получения информации из вашей сети.
Оцениваемое время: 10 минут
Зарегистрируйтесь в системе hostA с привилегиями суперпользователя в сеансе СОЕ. В одном окне запустите утилиту snoop:
snoop hostA hostB
Утилита snoop будет показывать, что реально происходит, когда hostA использует команду ping для связи с hostB. Во втором окне системы hostA наберите следующую командную строку:
ping hostB
Понаблюдайте за информацией, которая будет отображаться в первом окне, где была запущена утилита snoop.
А теперь выдайте команду spray для отправки однонаправленного потока пакетов на hostB:
spray hostB
Понаблюдайте за информацией, которая будет отображаться в первом окне, где была запущена утилита snoop.
Обзорные вопросы
Назовите и дайте краткое описание каждого уровня в семиуровневой модели OSI.
Назовите и дайте краткое описание каждого уровня в пятиуровневой модели TCP/IP.
К какому понятию может относиться тот факт, что в стеке протоколов TCP/IP какой-нибудь пакет содержит некоторый заголовок с физического уровня, следующий за ним заголовок с сетевого уровня (IP), следующий за ним заголовок с транспортного уровня (TCP) и следующие за всеми этими заголовками данные прикладного протокола?
Деинкапсуляция
Инкапсуляция
Шифрование
Дешифрование
Как по-другому называется уникальный Ethernet-адрес хоста?
IP-адрес
МАС-адрес
Адрес Internet
Примените ваши знания
D. Имя хоста сети
Какие из перечисленных файлов сетевой конфигурации всегда устанавливает программа инсталляции Solaris? Выберите все подходящие варианты ответов.
A. /etc/hostname.interface
/etc/nodename
/etc/inet/hosts
/etc/defaultdomain
Какой демон запускает соответствующий серверный процесс, когда принимает запрос на выполнение конкретной службы?
A. inetd
init
mountd
nfsd
Что такое TCP/IP?
Обобщенное наименование набора протоколов, которые позволяют компьютерам совместно использовать ресурсы в сети.
Сетевая спецификация защиты информации, которая широко применяется в Internet.
Одна из служб, предоставляемая службой имен доменов.
Это протокол управления передачей/информационный протокол.
Какое из утверждений является справедливым относительно IP-адресов? Выберите все подходящие варианты ответов.
IP-адреса записываются в виде четырех групп чисел, разделенных точками.
IP-адреса предоставляют средства для идентификации и определения местоположения сетевых ресурсов.
IP-адреса делятся на три уникальных номера: номер сети, номер класса и номер хоста.
IP-адрес идентифицирует данную машину для других узлов в сети.
Какое из утверждений является справедливым относительно файла /etc/ hostname.xxy?
Это файл системного сценария.
Это исполняемый файл SPARC.
Он содержит имя локального хоста.
Он идентифицирует сетевой интерфейс на локальном хосте.
Что из перечисленного представляет собой сетевой компонент, который пересылает пакеты Ethernet из одной сети в другую?
Хаб (концентратор).
Коммутатор.
Сетевой интерфейс.
Маршрутизатор..
Что из перечисленного содержит IP-адреса и имена хостов вашей сети?
A. /etc/inet/hosts
/etc/hostname.xxy
/etc/defaultdomain
D. /etc/nodename
Какой из следующих сетевых классов относится к сетям среднего размера, таким как сети университетов и больших компаний, в состав которых входит большое количество узлов?
А. Класс А
В. Класс В
С. Класс С
D. Класс D
Какие из команд используются для передачи одного или нескольких файлов между двумя системами в сети? Выберите все подходящие варианты.
А. гехес
telnet
ftp
гср
rsh
Какая из команд выполняет оболочку, или командный процессор, на дистанционной системе?
rlogin
гехес
telnet
гср
rsh
Какая из команд отображает информацию о пользователях, зарегистрированных на локальной системе или на других системах?
A. who
logins
finger
D. гехес
Какая из команд может сообщить вам о том, имелись ли в вашей сети задержанные или отброшенные пакеты?
spray
ping
netstat
D. iostat
Какая из следующих команд используется для мониторинга активности системы в сети TCP/IP?
Примените ваши знания
A. iostat
В. vmstat
С. netstat
D. ping
Какая из команд используется для определения того, что информация, которая перемещается по сети, проходит между системами?
netstat
snoop
С. iostat
ping
Ответы на обзорные вопросы
Физический уровень. Уровень 1 описывает аппаратные средства сети, включая электрические и механические соединения сетевого оборудования.
Канальный уровень. Уровень 2 разбивает данные на кадры для пересылки на физический уровень и принимает кадры подтверждения приема. На этом уровне выполняется контроль ошибок и повторная передача кадров, принятых некорректно.
Сетевой уровень. Уровень 3 управляет доставкой данных через канальный уровень и, в свою очередь, используется транспортным уровнем.
Транспортный уровень. Уровень 4 определяет порядок использования сетевого уровня, чтобы обеспечить виртуальное соединение типа точка-точка, свободное от ошибок, позволяющее хосту А посылать сообщения хосту В таким образом, чтобы они прибывали к адресату без повреждений и в правильной последовательности.
Сеансовый уровень. Уровень 5 использует транспортный уровень для установления соединения между процессами на различных системах. Он обеспечивает защиту и создание сеанса связи.
Представительский уровень. Уровень 6 выполняет такие функции, как сжатие текста, кодирование или преобразование форматов, сглаживая различия между системами. Он позволяет несовместимым на прикладном уровне процессам связываться друг с другом через сеансовый уровень.
Прикладной уровень. Уровень 7 отвечает за пользовательский вид данной сети (например, форматирование сообщений электронной почты). Представительский уровень обеспечивает прикладному уровню привычное локальное представление данных, независимое от формата, используемого в данной сети.
Аппаратный уровень соответствует физическому уровню модели ISO/OSI и описывает аппаратные средства сети, включая электрические и механические соединения в сети. Этот уровень управляет пересылкой неструктурированных битовых потоков через среду передачи данных.
Уровень сетевого интерфейса соответствует канальному уровню модели ISO/OSI и управляет доставкой данных через физическую сеть. Этот уровень обеспечивает обнаружение ошибок передачи и пакетное формирование кадров.
Межсетевой уровень соответствует сетевому уровню модели ISO/OSI и управляет адресацией и доставкой данных между сетями, а также фрагментацией данных для канального уровня.
Транспортный уровень соответствует транспортному уровню модели ISO/OSI и обеспечивает, чтобы сообщения достигали корректного прикладного процесса с использованием протоколов TCP и UDP.
Прикладной уровень соответствует сеансовому, представительскому и прикладному уровням модели 1SO/OSI. Прикладной уровень управляет доступными для пользователя прикладными программами и сетевыми службами. Этот уровень несет ответственность за определение способа, которым взаимодействующие сети представляют данные.
В. Когда системы связываются через какую-нибудь сеть, подумайте об обработке данных на каждом уровне, начиная с верхнего, прикладного и вплоть до нижнего, аппаратного уровня, через всю сеть, а затем поднимитесь обратно от аппаратного до прикладного уровня. К каждому сегменту, принятому на пути по уровням вниз, добавляется некоторый заголовок очередного уровня. Это и называется инкапсуляцией.
В. Уникальный Ethernet-адрес некоторого хоста называется также МАС-адрес.
А, В, С. Следующие файлы сетевой конфигурации первоначально устанавливаются программой инсталляции Solaris: /etc/hostname.interface, /etc/nodename и /etc/inet/hosts.
А. Демон inetd запускает соответствующий серверный процесс, когда принимает запрос на выполнение конкретной службы.
А. TCP/IP-это обобщенное наименование набора протоколов, которые позволяют компьютерам совместно использовать ресурсы в сети.
А, В, D. Следующие утверждения являются справедливыми: IP-адреса записываются в виде четырех групп чисел, разделенных точками, IP-адреса предоставляют средства для идентификации и определения местоположения сетевых ресурсов, IP-адреса идентифицируют данную машину для других узлов в данной сети.
D. Файл /etc/hostname.xxy идентифицирует сетевой интерфейс на локальном хосте.
D. Маршрутизатор пересылает пакеты Ethernet из одной сети в другую.
И. А. Файл/etc/inet/hosts содержит IP-адреса и имена хостов вашей сети.
В. Класс В относится к сетям среднего размера, таким как сети университетов и больших компаний, в состав которых входит большое количество узлов. Сеть класса В может объединять не более чем 65534 узла.
С, D. Для передачи одного или нескольких файлов между двумя системами в сети используются команды ftp и гср.
Е. Команда rsh выполняет оболочку, или командный процессор, на дистанционной системе.
С. Команда finger отображает информацию о пользователях, зарегистрированных на локальной системе или на других системах.
А. Команда spray тестирует надежность вашей сети. Она может сообщить вам о том, были ли факты задержки или отбрасывания пакетов. Команда spray посылает однонаправленный поток пакетов на какой-нибудь хост, используя RPC (Remote Procedure Call - вызов дистанционных процедур). Эта команда сообщает, сколько пакетов было принято, а также скорость передачи данных.
С. Команда netstat используется для контроля активности системы в сети ТСР/ 1Р. Команда netstat может предоставить некоторые основные данные о том, какая активность имеет место в сети и сколь она интенсивна.
В. Команда snoop используется для определения того, что информация, которая перемещается по сети, проходит между системами.
Глава 14
Псевдофайловые системы и область своппинга в Solaris
Темы
В настоящей главе рассматриваются следующие темы экзамена:
Использование псевдофайловых систем Solaris
Помимо дисковых файловых систем, описанных в предыдущих главах, Solaris использует также файловые системы, которые размещаются в физической памяти и носят название псевдофайловых систем. Системный администратор применяет эти файловые системы для повышения производительности. В настоящей главе вам предстоит узнать об администрировании различных псевдофайловых систем, которые доступны в Solaris 8.
Понимание файловой системы своппинга (swapfe)
Операционное окружение Solaris может использовать дисковое пространство, которое называется областями своппинга, или областями подкачки, для временного хранения содержимого памяти в тех случаях, когда система не располагает достаточным количеством физической памяти для обработки всех процессов, запущенных в данное время. Поскольку требования к объему памяти системы будут изменяться, системный администратор должен обладать знаниями в вопросах управления областью подкачки для контроля этих ресурсов и проведения постоянных подстроек по мере возникновения необходимости.
Содержание
«Введение474
файловая система процессов (prorfs)475
(Временная файловая система (Ч!МФФ$)476
файловая систелшфайловыхдесхрипторов (f£fs)478
файловая система своппинга (swapfs)479
490490(Резюме489
490
490
(Примените ваши знания
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
В процессе изучения настоящей главы очень важно, чтобы вы практически отработали каждый пошаговый пример и каждую команду, представленную в настоящей главе, в какой-нибудь системе Solaris. Практика очень важна в этих темах, поэтому тренируйтесь до тех пор, пока не сможете повторить конкретную процедуру по памяти.
Убедитесь в том, что вы имеете чёткое понимание каждой команды, описанной в настоящей главе, будьте готовы сопоставлять эти команды с их корректными описаниями.
Убедитесь в том, что вы знакомы со всеми терминами, которые перечисляются в разделе "Ключевые термины" в конце главы. Уделите особое внимание типам описанных файловых систем и знанию характеристик каждой из них. Будьте готовы сопоставлять все термины, представленные в настоящей главе, с их корректными описаниями.
Наконец, вы должны ознакомиться с концепцией виртуальной памяти. Разберитесь, как она работает и как ее конфигурировать, изучите инструменты, которые используются для наблюдения за ней.
Введение
В главах 6 и 7 были описаны дисковые файловые системы; в главе 18 будут описаны сетевые файловые системы. Настоящая глава будет посвящена еще одному типу файловых систем - псевдофайловым системам. Основное их отличие заключается в том, что псевдо- файловая система, которую иногда называют размещаемой в памяти, или виртуальной, файловой системой, не располагается на жестком физическом носителе информации. Псев- дофайловые системы размещаются только в физической памяти и существуют лишь до тех пор, пока работает операционная система.
Псевдофайловые системы применяются для повышения производительности за счет предоставления доступа к данным, которые находятся в физической памяти, а не на диске. К этому времени вы уже должны знать, что доступ к физической памяти осуществляется значительно быстрее, чем к диску.
Учтите, что на средней вычислительной системе центральному процессору требуется приблизительно 200 наносекунд для доступа к оперативному запоминающему устройству, и сравните это со временем 12000000 наносекунд, которое требуется для доступа к жесткому диску. Развивая это соотношение, нетрудно обнаружить, что задача продолжительно-
стью в 3 1/2 минуты, потребует 4 1/2 месяца для своего завершения! Следовательно, всякий раз, когда вы можете получить доступ к какой-нибудь информации в оперативной памяти, а не на диске - это безусловно лучше. Псевдофайловые системы, которые поддерживаются в операционном окружении Solaris 8, перечисляются в таблице 14.1 и описываются
в следующем разделе.
Файловая система Описание
proofs *
Файловая система процессов содержит список активных процессов, поименованных в соответствии с номерами процессов, в каталоге /ргос. Здесь сохраняются образы активных процессов, упорядоченных по своим номерам идентификаторов. Для работы с процессами в каталоге /usr/proc/bin доступны некоторые инструменты, такие как ptree, которые очень подробно отображают информацию о процессах, перечисленных в каталоге /ргос.
TMPFS
Это временная файловая система, предназначенная для хранения файлов в памяти без накладных расходов, связанных с записью на диск. Данные в этой файловой системе разрушаются всякий раз, когда файловая система демонтируется или перезагружается система.
fdfs
Файловая система файловых дескрипторов предоставляет явные имена для открытия файлов.
swapfs
Файловая система подкачки используется ядром операционной системы для управления областью своппинга, или подкачки, на дисках.
Файловая система процессов (proofs)
Файловая система /ргос содержит подробную информацию об активных процессах. Для доступа к этой информации состояния процессов было написано множество приложений, таких как команда ps.
Информация о процессе, сохраненная в файловой системе /ргос, изменяется по мере прохождения данным процессом его жизненного цикла.
: примечание у V . 1
Жизненным циклом процесса называется промежуток времени между запуском некоторого процесса и его завершением.
Предлагается образец листинга некоторых каталогов и файлов, найденных в файловой системе /ргос на работающей системе:
cd /ргос
» 1S
О 225 262 327 365 3986 4037 4054 4200 4515 4785 4845 5169
1 230 275 330 3955 3990 4043 4056 4201 4516 4786 4860 5167
Каждый элемент в каталоге /ргос - это десятичное число, соответствующее идентификатору какого-нибудь процесса. Каждый каталог в файловой системе /ргос содержит файлы с более подробной информацией о данном процессе. Владелец каждого файла в каталоге /ргос и его подкаталогах устанавливается по номеру идентификатора пользователя данного процесса.
Например, команда ps показывает, что суперпользователь запустил процесс с именем dtterm и идентификатором 5167. Этот процесс стартовал, когда суперпользователь открыл
окно dtterm в CDE. В файловой системе /ргос можно найти образ этого локального процесса в каталоге, который имеет имя 5167:
Is -Id /ргос/5167
dr-x—х--х 5 root other 736 Jun 11 10:49 /ргос/5167
В этом каталоге можно обнаружить несколько принадлежащих суперпользователю файлов и подкаталогов, которые содержат различные фрагменты информации, относящейся к данному процессу:
# Is -1 /ргос/5167 total 13819
-rw
—
1
root
other
7036928
Jun
11
10:49
as
-г
—
1
root
other
152
Jun
11
10:49
auxv
-г
—
1
root
other
72
Jun
11
10:49
cred
—w
1
root
other
0
Jun
11
10:49
ctl
1Г-Х —
—
1
root
other
0
Jun
11
10:49
cwd ->
dr-x—
—
2
root
other
1040
Jun
11
10:49
fd
-r--r-
--г—
1
root
other
120
Jun
11
10:49
Ipsinfо
-г
—
1
root
other
912
Jun
11
10:49
Istatus
-г—г-
■-г—
1
root
other
536
Jun
11
10:49
lusage
dr-xr-
хг-х
3
root
other
48
Jun
11
10:49
Iwp
-г
—
1
root
other
5376
Jun
11
10:49
map
dr-x--
—
2
root
other
1056
Jun
11
10:49
object
-г
—
1
root
other
6552
Jun
11
10:49
pagedata
-г--г-
•-г—
1
root
other■
336
Jun
11
10:49
psinfo
-г
—
1
root
other
5760
Jun
11
10:49
nnap
1Г-Х--
—
1
root
other
0
Jun
11
10:49
root ->
-г
—
1
root
other
1440
Jun
11
10:49
sigact
-г
—
1
root
other
1232
Jun
11
10:49
status
-г—г-
— Г--
1
root
other
256
Jun
11
10:49
usage
-г
—
1
root
other
0
Jun
11
10:49
watch
-г
—
1
root
other
8512
Jun
11
10:49
xmap
Инструменты обработки процессов, которые используют файловую систему /ргос, аналогичны некоторым опциям команды ps за исключением того, что выходная информация, предоставляемая данными инструментами, является более подробной. За более подробной информацией по управлению процессами обратитесь к главе 9.
Каталог /ргос монтируется при загрузке системы с помощью сценариев, которые вызываются из сценария, именуемого /sbin/rcS. Приведенный элемент файла /etc/vfstab показывает монтирование файловой системы процессов к точке монтирования /ргос:
/ргос - /ргос ргос - по
временная файловая система (TMPFS)
TMPFS - принятый по умолчанию тип файловой системы для каталога /tmp в операционном окружении Solaris; устанавливается автоматически в процессе инсталляции операционной системы. Вы можете копировать или перемещать файлы в каталог /tmp или из него точно так же, как вы можете делать это в какой-нибудь файловой системе UFS. Кроме
того, системный администратор может создавать дополнительные файловые системы TMPFS, которые будут описаны далее в настоящем разделе.
TMPFS (Temporary File System - временная файловая система) использует локальную память для чтения и записи файловой системы, которая обычно работает гораздо быстрее, чем какая-нибудь дисковая (UFS) файловая система. Использование файловой системы TMPFS может существенно повысить производительность за счет снижения затрат на чтение или запись временных файлов на какой-нибудь локальный диск или через сеть. Например, когда вы компилируете какую-нибудь программу, создаются временные файлы, манипулируя ими, операционная система генерирует большинство операций с диском или с сетью. Использование файловой системы TMPFS для хранения указанных временных файлов может существенно ускорить создание, удаление и манипулирование ими.
Файлы в файловой системе TMPFS не являются постоянными. Они удаляются всякий раз, когда данная файловая система демонтируется или когда система закрывается либо перезагружается.
Файловая система TMPFS использует область подкачки в качестве временной области хранения информации. Если в некоторой системе с TMPFS отсутствует достаточная по размеру область подкачки, могут возникнуть две проблемы:
Ф Файловая система TMPFS может заполнить все отведенное ей пространство точно так же, как и обычная файловая система.
Ф Поскольку файловая система TMPFS в случае необходимости распределяет область подкачки для сохранения файлов, некоторые программы могут не выполняться именно из-за нехватки места в области подкачки, которая подробно описывается в соответствующем разделе далее в настоящей главе.
Шаг за шагом
Создание временной файловой системы
Для создания временной файловой системы выполните следующие операции:
Зарегистрируйтесь в системе как суперпользователь.
Создайте каталог, который будет служить точкой монтирования файловой системы TMPFS.
Не предусмотрено специальных команд, аналогичных команде newfs, для создания файловой системы TMPFS до ее монтирования. Эта файловая система реально создается в оперативном запоминающем устройстве, когда вы выполняете команду mount и задаете TMPFS в качестве типа файловой системы. Приведенный пример демонстрирует создание нового каталога /export/ data и монтирование файловой системы TMPFS с ограничением ее размера до 25 Мбайт:
mount -F tmpfs -о size=25m swap /export/data
Аргумент swap должен быть задан обязательно, однако он игнорируется и предполагается, что это будут ресурсы виртуальной памяти в рамках данной системы.
ПРЩ1У|РЕЖДЕНИЕ г‘ ^ v 1.' В
Если вы создаете несколько файловых систем TMPFS, не забывайте о том, что все они используют одни и те же ресурсы системы. Файлы, созданные в одной файловой системе TMPFS, расходуют физическую память, доступную для любой другой файловой системы TMPFS, до тех пор, пока вы не достигнете предельного размера всех файловых систем TMPFS, задаваемого с помощью опции -о size=<s/ze> команды mount.
Если выдать команду df -к, то она демонстрирует смонтированную файловую систему TMPFS размером 25 Мбайт:
# df -к
Filesystem
kbytes
used
avail
capacity
Mounted on
/dev/dsk/cOtOdOsO
115417
44458
59418
43%
I
/dev/dsk/c0t0d0s6
1148982
700587
390946
65%
/usr
/proc
0
0
0
0%
/proc
fd
0
0
0
0%
/dev/fd
mnttab
0
0
0
0%
/etc/mnttab
/dev/dsk/cOtOdOsl
288556
26134
233567
11%
/var
swap
62816
0
62816
0%
/var/run
swap
64408
1592
62816
3%
/tsp
/dev/dsk/c0t0d0s4
961257
9
903573
1%
/data
/dev/dsk/c0t0d0s5
192056
7598
165253
5%
/opt
/dev/dsk/c0t0d0s7
1164094
234689
871201
22%
/ export/home
swap
25600
0
25600
0%
/export/data
Приведенный ниже пример демонстрирует некоторый элемент из файла /etc/vfstab, который разрешает монтирование файловой системы /tmpfs к подсистеме виртуальной памяти в процессе загрузки вычислительной системы:
swap - /tmp tmpfs - yes
Поскольку опция size=<number> в данном случае не задана, размер файловой системы TMPFS в каталоге /tmp ограничивается только доступными системными ресурсами: объемом физической памяти и размером области подкачки.
Файловая система файловых дескрипторов (fdfs)
Файловая система fdfs - это псевдофайловая система, которая автоматически конфигурируется в процессе инсталляции операционной системы и обслуживает хранилище файловых дескрипторов для открытых файлов.
ПРИМЕЧАНИЕ
Файловый дескриптор, или индексный дескриптор, представляет собой некоторое целое число, которое идентифицирует таблицу открытых файлов. Это число возникает в результате открытия файла. Операции, которые считывают, записывают или закрывают какой-нибудь файл, могут использовать файловый дескриптор в качестве некоторого входного параметра.
Активные процессы получают доступ к файлам посредством использования файловых дескрипторов. Следующий пример демонстрирует список файловых дескрипторов в каталоге /dev/fd на работающей системе:
# Is /dev/fd
0
12
16
2
23
27
30
34
38
41
45
49
52
56
6
7
1
13
17
20
24
28
31
35
39
42
46
5
53
57
60
8
10
14
18
21
25
29
32
36
4
43
47
50
54
58
61
9
11
15
19
22
26
3
33
37
40
44
48
51
55
59
62
Здесь приведены некоторые файловые дескрипторы, которые вам уже знакомы:
/dev/fd/О Стандартный ввод (stdin)
/dev/fd/1 Стандартный вывод (stdout)
/dev/fd/2 Стандартный файл ошибок (stderr)
/dev/fd/З Имя файла (file)
Приведенный пример демонстрирует некоторый элемент из файла /etc/vfstab, который разрешает монтирование файловой системы fdfs к точке монтирования /dev/fd в процессе загрузки системы:
fd - /dev/fd fd - no -
Файловая система своппинга (swapfs)
Физическая память представляет собой оперативное запоминающее устройство, которое инсталлировано на вашем компьютере. Чтобы увидеть размер физической памяти, инсталлированной на вашем компьютере, наберите следующую командную строку:
prtconf | grep "Memory size"
Система выводит на экран сообщение, подобное приведенному:
Memory size: 128 Megabytes
Для процессов Solaris доступна не вся физическая память. Часть памяти резервируется для программы и структур данных ядра операционной системы. Оставшаяся память называется доступной памятью. Процессы и приложения на вашей системе могут использовать именно доступную память.
Физическая память дополняется специально сконфигурированной областью на физическом диске, которая называется областью своппинга, или подкачки, или виртуальной памятью. Область подкачки конфигурируется либо на специальном дисковом разделе в качестве раздела подкачки, либо на какой-нибудь файловой системе подкачки. В дополнение к разделам подкачки в существующих файловых системах UFS могут быть сконфигурированы специальные файлы, которые называются файлами подкачки и предоставляют, в случае необходимости, дополнительную область подкачки.
Каждый процесс, который запускается на какой-нибудь системе Solaris, требует определенного пространства в памяти, которое выделяется в виде страниц. Некоторые из страниц данного процесса используются для хранения его исполняемого кода, тогда как другие страницы используются для хранения данных процесса.
Физическая память на любом компьютере представляет собой конечный ресурс; довольно часто бывает так, что для всех процессов вашей системы не хватает страниц физической памяти. Когда наступает недостаток физической памяти, система виртуальной памяти начнет перемещать данные из физической памяти на сконфигурированные системные области подкачки. Если какому-нибудь процессу потребуются данные, которые были отправлены в область своппинга, система виртуальной памяти возвращает эти данные в физическую память. Этот процесс известен под названием замещение страниц.
Система виртуальной памяти Solaris отображает файлы на диске в виртуальные адреса в памяти - это называется виртуальной областью своппинга, или подкачки. При возникновении необходимости в данных из этих файлов система виртуальной памяти отображает виртуальные адреса памяти в реальные физические адреса. Описанный процесс отображения существенно уменьшает потребность в больших объемах физической области своппинга на системах с большими объемами доступной физической памяти. Это происходит вот как:
Когда ядро операционной системы запускает некоторый процесс, должна быть зарезервирована область своппинга для любых данных частного характера, или область стека,
используемая данным процессом. Такое резервирование выполняется на тот случай, если данные частного характера или информация стека, которая может потребоваться, будут выгружены из физической памяти в область подкачки. В качестве примера можно привести ситуацию, когда при большой загрузке множество процессов конкурируют за ограниченный объем оперативного запоминающего устройства. Без использования виртуальной области подкачки в системах пришлось бы конфигурировать физические области своп- пинга большого размера просто для обеспечения такого резервирования. Даже если на вашей системе установлен большой объем оперативного запоминающего устройства и никогда не производится замещение страниц, вам все равно могут потребоваться большие области своппинга для указанного резервирования просто на всякий случай. Многие программы даже не будут запускаться, если они не смогут зарезервировать при запуске область подкачки надлежащего размера.
С использованием концепции виртуальной области своппинга, предоставляемой файловой системой swapfs, можно уменьшить объем конфигурируемой дисковой области подкачки на системах с большими объемами физической памяти. Это происходит потому, что swapfs в ответ на запросы по резервированию области своппинга предоставляет адреса виртуальной области подкачки вместо адресов реальной физической области подкачки.
С помощью виртуальной области своппинга, предоставляемой файловой системой swapfs, реальная дисковая область подкачки требуется только при замещении страниц в результате конкуренции процессов за физическую память. В подобной ситуации файловая система swapfs должна конвертировать адреса виртуальной области подкачки в адреса физической области подкачки для выполнения, при необходимости, замещения страниц в реальную дисковую область своппинга.
Область своппинга и файловая система TMPFS
TMPFS сохраняет файлы и связанную с ними информацию в памяти (в каталоге /tmp), а не на диске, что ускоряет доступ к указанным файлам и приводит к значительному повышению производительности таких приложений как компиляторы и системы управления базами данных, которые активно используют каталог /tmp.
TMPFS выделяет пространство в каталоге /tmp из ресурсов системной области своппинга. Это означает, что когда вы используете пространство в каталоге /tmp, вы одновременно расходуете область подкачки. Поэтому, если ваши приложения интенсивно используют каталог /tmp, а вы не контролируете использование области своппинга, то ваша система может дойти до пределов области подкачки.
Если вы хотите применять TMPFS в системе с ограниченной областью подкачки, руководствуйтесь следующими правилами:
ф Как было описано ранее в настоящей главе, монтируйте файловую систему TMPFS с опцией size (-о size) для контроля того, какую часть ресурсов области своппинга может использовать файловая система TMPFS.
ф Если вы намерены закрыть область подкачки, можете воспользоваться переменной окружения TMPDIR вашего компилятора для указания на реально существующий каталог большего размера.
Использование переменной окружения TMPDIR вашего компилятора управляет только тем, использует ли компилятор каталог /tmp. Переменная не влияет на использование каталога /tmp другими программами.
Оценка размеров вашей области своппинга
Оценка размера области своппинга, требуемой для вашей системы, основывается на следующих критериях:
ф Прикладным программам для правильного функционирования требуется минимальный размер области подкачки. Эта информация обычно содержится в документации, которая поставляется вместе с конкретным приложением. При определении требований к размеру области подкачки руководствуйтесь рекомендациями изготовителя.
Ф Определите, будут ли большие приложения, такие как компиляторы, использовать каталог /tmp. Затем выделите дополнительную область своппинга для файловой системой TMPFS.
Ф Для сохранения любых возможных аварийных дампов, вызванных какой-нибудь фатальной ошибкой в системе, должна быть обеспечена достаточная область подкачки для удержания в момент возникновения сбоя необходимых страниц памяти в оперативном запоминающем устройстве. Следовательно, если вы имеете 1 Гбайт физической памяти, будет необходим, по крайней мере, 1 Гбайт дискового пространства для наихудшего случая аварийного дампа.
Размер дисковой области своппинга должен быть, по крайней мере, равен общему количеству физической памяти плюс требования любых одновременно запускаемых процессов, таких как приложения сторонних разработчиков и компиляторы. На размер области подкачки, которую вы должны будете сконфигурировать, влияет также множество других факторов, в качестве примера которых можно упомянуть число одновременно работающих пользователей и службу имен N1S+.
Если вы готовы держать под контролем вашу область подкачки и регулярно администрировать ее, тогда вы сможете работать с "обоснованно достаточной" областью своппинга. В нескольких следующих разделах будет описано, как контролировать область подкачки и как добавлять ее к работающей системе. Если вы не хотите проблем и можете обменять часть дискового пространства ради облегчения своей жизни, то тогда вы должны работать с "множеством" областей подкачки.
Мониторинг ресурсов области своппинга
Если вы столкнулись с нехваткой области подкачки из-за больших потребностей в памяти, то увидите сообщения об ошибках, возникающие на вашей системной консоли. Такое сообщение может иметь, например, следующий вид:
<applicaticn> is out of memory
malloc error O
messages.1:Sep 21 20:52:11 mars genunix: [ID 470503 kern.warning]
WARNING: Sorry, no swap space to grow stack for pid 100295 (myprog)
Эта ошибка означает, что некоторое приложение попыталось получить больше памяти, а в системе не оказалось доступной области подкачки, чтобы удовлетворить этот запрос.
Вы можете заполнить файловую систему TMPFS из-за нехватки доступной области подкачки и получить следующее сообщение об ошибке:
<directory>: File system full, swap space limit exceeded
или такое сообщение об ошибке:
<directory>: File system full, memory allocation failed
Такое сообщение возникает в случае, когда при записи некоторого файла не может быть выделена страница. Это может произойти, когда файловая система TMPFS пытается записать больше, чем ей разрешено, или когда она исчерпала физическую память при попытке создать какой-нибудь новый файл или каталог.
Регулярно контролируйте вашу область своппинга. Это поможет определить, действительно ли вы достигли предела и необходимо увеличивать системные ресурсы или, возможно, вы выделили слишком большую область подкачки и засорили дисковое пространство. Большинство коммерческих инструментов мониторинга производительности отслеживают область подкачки или могут быть сконфигурированы для создания какого-нибудь предупреждения, если эта область сильно уменьшается. Для тех из вас, кто не имеет доступа к этим инструментам, операционная система Solaris предоставляет несколько полезных инструментов, которые кратко описываются в таблице 14.2. Однако тема по мониторингу производительности системы не выносится на сертификационный экзамен системного администратора, поэтому в настоящей главе будет описана только команда /usr/sbin/swap.
Таблица 14,2 ИДструментЙ ДЛЯ М^. ■
КомандаОписание
/usr/sbin/swap
Эта утилита предоставляет метод добавления, удаления и мониторинга областей подкачки с использованием менеджера памяти.
/usr/bin/ps
Воспользуйтесь опциями -al команды /usr/bin/ps для получения информации об общем количестве процессов, которые в данный момент времени находятся в виртуальной памяти. Возвращаемое значение включает все отображаемые файлы и устройства и выражается в количестве страниц. Такие отображения устройств не сами используют область подкачки.
/usr/ucb/ps
Используйте другую версию команды ps из Университета Беркли с опциями -alx для получения информации об общем количестве процессов, которые в данный момент времени находятся в виртуальной памяти. Возвращаемое значение включает все отображаемые файлы и устройства и выражается в килобайтах, а не в количестве страниц.
/usr/bin/vmstat
Формирует статистику виртуальной памяти.
/usr/bin/sar
Генератор отчетов активности системы.
Команда /usr/sbin/swap имеет две опции, которые могут быть использованы для мониторинга области своппинга. Опция -I может быть использована для просмотра области подкачки. Например:
swap -1
Система отображает следующую информацию, перечисляющую подробности физической области подкачки, которая описывается в таблице 14.3:
swapfiledevswaploblocks free
Zdev/dsk/c0t0d0s3 136,316302384 302384
<path><path>Таблица 14.3 Вывод команды swap -J, Ключевое слово Описание
<path>
<path>
Имя маршрута для области подкачки. В приведенном примере именем маршрута является swapfile.
Ключевое словоdevswaploКлючевое словоdevswaploblocksblocksfreefreeПродолжение таблицы 14.3
Ключевое слово
dev
swaplo
Ключевое слово
dev
swaplo
blocks
blocks
free
free
Описание
Главный/дополнительный номера устройства, которые представляют собой десятичные числа, если это блочно-специальное устройство; в противном случае оба номера имеют нулевые значения.
Значение параметра swaplo для данной области подкачки, выраженное в количестве блоков по 512 байт. Параметр swaplo - это параметр ядре операционной системы, который может быть модифицирован системным администратором и представляет собой смещение, выраженное в количестве блоков по 512 байт, от начала используемой области подкачки.
Значение параметра swaplen для данной области подкачки, выраженное в количестве блоков по 512 байт. Параметр swaplen - это параметр ядра операционной системы, который может быть модифицирован системным администратором и определяет размер области подкачки, выраженный в количестве блоков по 512 байт.
Количество блоков по 512 байт в данной области подкачки, которые в данный момент времени не выделены.
ПРИМЕЧАНИЕ.
Этот список не включает область своппинга в форме физической памяти, поскольку это пространство не ассоциируется с конкретной областью подкачки.
Применяйте опцию -I для определения местоположения областей подкачки на вашей системе.
Используйте опцию -s для просмотра сводки (итоговых данных) виртуальной области подкачки на вашей системе. Например:
swap -s
Система выводит следующую информацию, перечисляющую особенности физической области подкачки, которые описываются в таблице 14.4:
total: 31760k bytes allocated + 5952k reserved = 37712k used, 202928k \ available
Т^Мча '^.Ш>мйЙом^-s
bytes allocatedbytes allocatedreservedreservedusedusedavailableavailableОбщий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени выделена в качестве резервного хранилища (дисковая область подкачки).Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени не выделена, однако затребована памятью для возможного последующего использования.Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени либо выделена, либо зарезервирована.Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени доступна для будущего резервирования и выделения.Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени выделена в качестве резервного хранилища (дисковая область подкачки).Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени не выделена, однако затребована памятью для возможного последующего использования.Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени либо выделена, либо зарезервирована.Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени доступна для будущего резервирования и выделения.Ключевое словоОписание
bytes allocated
bytes allocated
reserved
reserved
used
used
available
available
Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени выделена в качестве резервного хранилища (дисковая область подкачки).
Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени не выделена, однако затребована памятью для возможного последующего использования.
Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени либо выделена, либо зарезервирована.
Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени доступна для будущего резервирования и выделения.
Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени выделена в качестве резервного хранилища (дисковая область подкачки).
Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени не выделена, однако затребована памятью для возможного последующего использования.
Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени либо выделена, либо зарезервирована.
Общий размер, выраженный в количестве блоков по 1024 байт, области своппинга, которая в настоящий момент времени доступна для будущего резервирования и выделения.
Вы можете использовать размеры области подкачки available и used (вывод команды swap -s) в качестве некоторого инструмента для наблюдения за областью своппинга во времени. Если производительность системы находится на высоком уровне, воспользуйтесь командой swap -s, чтобы определить размер доступной области своппинга. Когда производительность системы понижается, проверьте размер доступной области подкачки, чтобы определить, не уменьшилась ли она.
Затем вы сможете идентифицировать, какие изменения в данной системе могли явиться причиной повышения использования области подкачки.
В случае применения этой команды следует иметь в виду, что размер физической памяти, доступной для области своппинга, изменяется динамически по мере того, как процессы ядра и пользовательские процессы занимают и освобождают физическую память.
Команда swap -I отображает размер области подкачки, выраженный в количестве блоков по 512 байт, а команда swap -s - в количестве блоков по 1024 байт. Если вы просуммируете количество блоков, возвращенное командой swap -I, и переведете полученное число в килобайты, то результат будет меньше, чем суммарный размер доступной и используемой областей своппинга в выходной информации команды swap -s. Это различие обусловлено тем, что команда swap -I не учитывает физическую память при вычислении размера области подкачки.
Установка области своппинга
Как будет показано в главе 15, область подкачки конфигурируется в процессе инсталляции программного обеспечения с помощью инсталляционной программы. Если вы воспользуетесь автоматическим размещением частей диска, предложенным инсталляционной программой, и не измените вручную размер части, отведенной под область своппинга, то инсталляционная программа Solaris выделит принятые по умолчанию части диска под область подкачки, основываясь на объеме физической памяти, инсталлированной на вашей системе, что и показано в таблице 14.5.
Объем физически инсталлированнойРазмер области своппинга,
оперативной памятивыделенный по умолчанию
64-127128-511Более 51264-127128-511Более 51264 Мбайт
64-127
128-511
Более 512
64-127
128-511
Более 512
128 Мбайт
256 Мбайт
ЖГОЕЙНИЕ ■ 1 _
Аварийный дамп - это дисковая копия физической памяти данного компьютера в момент возникновения какой-нибудь фатальной системной ошибки. Когда происходит какая-нибудь фатальная ошибка операционной системы, на консоль выводится некоторое сообщение, описывающее данную ошибку. Затем операционная система генерирует аварийный дамп посредством записи содержимого физической памяти на предопределенное устройство дампа, которым обычно является раздел локального диска. Такой аварийный дамп затем может быть проанализирован для определения причины данной системной ошибки. По умолчанию устройство дампа конфигурируется таким образом, чтобы размещаться на соответствующем разделе, отведенном под область своппинга. Таким образом, необходимо убедиться в том, что размер вашей области подкачки, по крайней мере, не меньше объема физического оперативного запоминающего устройства; в противном случае в системе может не хватить места для сохранения аварийного дампа.
Программа инсталляции программного обеспечения добавляет элементы для частей диска и файлов, выделенных под область подкачки, в файл /etc/vfstab. Эти области своппинга активизируются всякий раз при выполнении загрузки системы с помощью сценария /sbin/swapadd.
Если изменяются параметры конфигурации системы, добавляется дополнительное количество пользователей и инсталлируются новые пакеты программного обеспечения, у вас может возникнуть необходимость в расширении области подкачки. Для этого в вашей системе доступно два метода:
Ф Создание вторичного раздела своппинга.
Ф Создание файла своппинга в существующей файловой системе UFS.
Создание вторичного раздела подкачки требует наличия дополнительного, не используемого дискового пространства. Вам предстоит воспользоваться командой format, как было описано в главе 6, для создания нового раздела и файловой системы на каком-нибудь диске. После создания раздела своппинга создайте элемент в файле /etc/vfstab для того, чтобы данная область подкачки активизировалась при загрузке системы. Этот процесс описывается далее.
Создание вторичного файла своппинга
Вам необходимо добавить дополнительно 175 Мбайт к имеющемуся размеру области подкачки на вашей системе. Вы не располагаете свободным пространством на диске для увеличения размера области подкачки, однако имеется каталог /data (в настоящее время смонтированный на части 5 диска) размером 200 Мбайт. Переместите все данные из каталога /data на другой сервер, чтобы освободить данный раздел, и вы сможете использовать его в качестве раздела своппинга. Для этого можно воспользоваться любым из методов, описанных в главе 11.
После освобождения каталога /data и демонтирования устройства /dev/dsk/ cOtOdOsS, воспользуйтесь утилитой format, чтобы установить имя тега swap и флаг полномочий wu (пригодный для записи и демонтированный), как показано далее:
partition» 5
Part Tag Flag Cylinders SizeBlock
5 unassigned wm 3400 - 3833200.26MB(434/0/0) 410130
Enter partition id tag[unassigned]: swap
Enter partition permission flags[wm] : wu
Enter new starting cyl[3400]: <return>
Enter partition size[410130b, 434c, 200.26mb, 0.20gb]: <return>
I then label the disk as follows:
Затем следует присвоить метку диска:
Partition» la
Ready to label disk? у
Запустите команду newfs на данном разделе для удаления всех данных и создайте новую файловую систему на части 5 диска: newfs /dev/rdsk/c0t0d0s5
Создайте элемент в файле /etc/vfstab, поля которого имеют следующие значения:
Device to mount: <имя блочного устройства или файла своппинга> Device to fsck: - Mount Point: - FS-type: swap fsck pass: - Mount at boot: no Mount options: -
Ниже приведен пример элемента из файла /etc/vfstab для раздела подкачки, который был только что добавлен: /dev/dsk/c0t0d0s5 -- swap - no -
Запустите сценарий swapadd для добавления данной области своппинга к вашей системе:
/sbin/swapadd
Проверьте, что данная область подкачки действительно добавлена: swap -1
Система отвечает следующим образом:
swapfile
dev
swaplo
blocks
free
/dev/dsk/c0t0d0s3
136,3
16
302384
302384
/dev/dsk/c0t0d0s5
136,5
16
410112
410112
Устройство Zdev/dsk/cOtOdOsS было добавлено к списку доступных областей подкачки.
Ниже приведено несколько замечаний относительно добавления разделов своппинга: Ф В системах, работающих под управлением 32-разрядной версии операционной системы Solaris, размер областей подкачки не должен превышать 2 Гбайт. Если вы хотите добавить диск объемом 9 Гбайт к вашей области своппинга, вы должны разбить его на фрагменты по 2 Гбайт. Затем поместите отдельные элементы описания для каждой части диска в файл /etc/vfstab. В системах, работающих под управлением 64-разрядной версии операционной системы Solaris 8, блочное устройство размером более 2 Гбайт может быть использовано целиком.
ф Вы можете получить существенный выигрыш в производительности вычислительной системы, если распределите области своппинга между отдельными дисками. Область своппинга выделяется по циклической схеме от одного раздела подкачки к другому, при этом невозможно установить приоритеты использования различных областей подкачки. На область подкачки выделяется по 1 Мбайт за один раз с каждого раздела подкачки по кругу, если только данный раздел еще не исчерпан.
ф Не стоит создавать для размещения области подкачки метаустройство с чередованием (расслоением данных), это просто увеличит чередование и замедлит замещение страниц.
Наиболее простой способ добавления дополнительной области своппинга заключается в использовании команд mkfile и swap, чтобы назначить в качестве таковой некоторую часть какой-нибудь из существующих файловых систем UFS. Идея этого способа заключается в предоставлении временного или частично временного решения для хранения области подкачки. Хотя такое решение может использоваться, в том числе, и на протяжении длительного времени, оно имеет ряд недостатков:
ф Файл своппинга рассматривается как некий файл внутри файловой системы, следовательно, при выполнении резервного копирования этой файловой системы, достаточно большой файл подкачки (пустой файл) также будет копироваться, если только вы не исключите его специально.
ф Поскольку файл подкачки представляет собой просто файл внутри некоторой файловой системы, вы даже не всегда будете иметь возможность демонтировать эту файловую систему, пока будет использоваться данный файл.
Добавление дополнительной области своппинга
Перечисленные далее операции позволят вам добавить дополнительную область подкачки без проведения повторной разбивки диска.
В качестве суперпользователя воспользуйтесь командой df -к для обнаружения файловой системы, на которой имеется достаточно свободного места для поддержки файла подкачки такого размера, который вы хотите добавить:
# df -к
Filesystem
kbytes
used
avail
capacity
Mounted
on
/dev/dsk/c0t0d0s0
115417
44452
59424
43%
/
/dev/dsk/c0t0d0s6
1148982
700587
390946
65%
/usr
/proc
0
0
0
0%
/proc
fd
0
0
0
0%
/dev/fd
mnttab
0
0
0
0%
/etc/mnttab
/dev/dsk/c0t0d0sl
288556
26121
233580
11%
/var
swap
200928
0
200928
0%
/var/run
swap
201632
704
200928
1%
/tup
/dev/dsk/c0t0d0s5
192056
7593
165258
5%
/opt
/dev/dsk/c0t0d0s7
1164094
234689
871201
22%
/export/home
/dev/dsk/сОt0d0s4
961257
9
903573
1%
/data
Вы можете создать файл подкачки, не имея полномочий суперпользователя, однако аесьма полезно, чтобы именно он был владельцем такого файла - это исключит возможность случайной перезаписи файла.
Воспользуйтесь командой mkfile для добавления файла подкачки по имени swapfile и размером 50 Мбайт в раздел /data:
mkfile 50m /data/swapfile
С помощью команды Is -1 убедитесь, что такой файл действительно создан:
Is -1 /data/swapfile
-rwТ 1 root other 52428800 Jun 13 13:28 \
/data/swapfile
Система показывает файл с именем swapfile и его размер. Обратите внимание, чтобы sticky-бит, описанный в главе 8, был установлен автоматически.
Активизируйте область своппинга с помощью команды swap:
/usr/sbin/swap -a /data/swapfile
Для задания файла своппинга вы должны использовать абсолютное имя маршрута. Файл подкачки будет добавлен и остается доступным до тех пор, пока данная файловая система не будет демонтирована, или пока не будет выполнена перезагрузка системы, или пока этот файл подкачки не будет удален. Следует иметь в виду, что вы не сможете демонтировать файловую систему до тех пор, пока некоторый процесс или программа "подкачивается" в файл своппинга.
Убедитесь атом, что быладобавлена новая область подкачки, как показано ниже:
swap -1
Система должна ответить сообщением, отображающим данный файл подкачки:
swapfile dev swaplo blocks free Zdev/dsk/c0t0d0s3 136,3 16 302384 302384 /data/swapfile - 16 102384 102384
Если это будет постоянная область своппинга, добавьте элемент в файл /etc/ vfstab, который определяет полное имя маршрута для данного файла подкачки и назначает тип файловой системы как swap:
/data/swapfile -- swap - no -
Существуют несколько различные мнения относительно того, какой тип области подкачки обеспечивает лучшую производительность системы: раздел подкачки или файл подкачки. Несомненно существуют те или иные причины, чтобы предпочесть каждый из этих двух подходов; однако ниже приводятся две наиболее весомые причины в пользу раздела подкачки:
Ф Раздел предоставляет непрерывное дисковое пространство и может быть позиционирован между заданными цилиндрами диска, что будет обеспечивать наилучшую производительность.
Ф Файл подкачки, когда выполняются обновления, работает через файловую систему, тогда как запись данных в раздел подкачки обеспечивается на низком уровне, минуя взаимодействие с файловой системой, что делает последний вариант записи несколько быстрее.
Заявления официальных представителей фирмы Sun, как и общее мнение сообщества пользователей, сводятся к тому, что вариант применения файлов своппинга вместо разделов своппинга наносит удар по производительности системы; рекомендуют использовать файлы подкачки только в качестве временного решения, до тех пор пока не появится возможность добавить раздел подкачки.
ПРИМЕЧАНИЕ ■. ■.
В экстренных случаях, когда локальное дисковое пространство недоступно, возможно добавить какой-нибудь файл подкачки к сетевой файловой системе с помощью NFS, которая описывается в главе 17. Однако не рекомендуется получение доступа через NFS к области своппинга на другой системе, поскольку это может привести к возникновению дополнительной нагрузки на вашу сеть, а производительность может снизиться до неприемлемого уровня.
Шаг за шагом Д : Л-Жл. • ''
Удаление файла своппинга
Для удаления области подкачки с вашей системы выполните следующие операции:
В качестве суперпользователя воспользуйтесь командой swap -d для удаления области подкачки:
swap -d /dev/dsk/c0t0d0s5 для раздела подкачки или swap -d /data/swapfile для файла подкачки.
Команда swap -I показывает, что файл подкачки исключен.
swap -1 swapfiledevswaploblocksfree
Zdev/dsk/cOtOdOs3 136,316302384 302384
Имя файла своппинга удаляется из данного списка, что означает, что файл более не доступен для выполнения подкачки. Однако сам файл не удаляется.
Отредактируйте файл /etc/vfstab и удалите элемент для файла своппинга.
Удалите и сам файл для восстановления дискового пространства:
rm /data/swapfile
Если данная область подкачки находилась в некотором разделе диска, то теперь это дисковое пространство может быть выделено для какой-нибудь обычной файловой системы.
Резюме
В настоящей главе описываются четыре типа псевдофайловых систем, которые доступны в операционной системе Solaris. Описана файловая система proofs и взаимоотношения между системными процессами и каталогом /ргос. Также описана файловая система TMPFS и показано, как с ее помощью можно увеличить производительность ваших приложений за счет считывания и записи временных файлов в память, а не на локальный диск. Вы изучили, как файловая система fdfs выполняет обслуживание хранилища файловых дескрипторов для открытых файлов. Наконец, вы узнали, как операционная система использует файловую систему swapfs в качестве хранилища виртуальной памяти, когда в системе недостаточно физической памяти для обслуживания потребностей процессов, выполняющихся в данное время. Было продемонстрировано на примерах, как добавлять, контролировать и удалять файлы и разделы своппинга.
В следующей главе будет описан процесс инсталляции операционной системы Solaris с использованием интерактивной инсталляционной программы. Информация, которую вы изучили в настоящей главе, будет полезна в ходе указанной инсталляции при создании файловых систем TMPFS и swapfs.
Ключевые термины
Псевдофайловая система
Файловая система swapfs
Файловая система proofs.
Файловая система TMPFS
Файловая система fdfs
Жизненный цикл процесса
Своппинг, или подкачка
Файловый дескриптор
Физическая память
Виртуальная память
Виртуальная область своппинга
Дисковая подкачка
Файловая система своппинга
Аварийный дамп
Вторичная область своппинга
Примените ваши знания
. УПРАЖНЕНИЯ-
Создание файловой системы TMPFS
При выполнении настоящего упражнения вам предстоит создать файловую систему TMPFS и смонтировать ее к каталогу, который называется /training.
Оцениваемое время: 5 минут
Зарегистрируйтесь в системе с привилегиями суперпользователя.
Создайте каталог, называемый /training, который будет служить точкой монтирования для файловой системы TMPFS:
inkdir /training
Смонтируйте файловую систему TMPFS с ограничением ее размера до 20 Мбайт, как и показано:
mount -F tmpfs -о size=20m swap /training
Проверьте, что новая файловая система существует, для чего выдайте команду df-k.
Добавление временной области своппинга
При выполнении настоящего упражнения вам предстоит создать файл подкачки для добавления дополнительной временной области своппинга на вашей системе.
Оцениваемое время: 15 минут
В качестве суперпользователя воспользуйтесь командой df -к для обнаружения
Глава 14. Псевдофайловые системы и область своппинга в Solaris 4У1 Примените ваши знания
файловой системы, на которой имеется достаточно свободного места для поддержки файла подкачки размером 20 Мбайт.
Воспользуйтесь командой mkfile для добавления файла подкачки по имени swapfile и размером 20 Мбайт в некоторый каталог, как показано далее:
mkfile 20m /<directory>/swapfile
Воспользуйтесь командой Is -I, чтобы убедиться, что такой файл действительно создан.
Активизируйте данную область своппинга с помощью команды swap:
/use/sbin/swap -a /<direotory>/swapfile
Воспользуйтесь командой swap -I, чтобы убедиться в том, что новая область подкачки была добавлена.
Воспользуйтесь командой swap -d для удаления области своппинга:
swap -d / <directozy>/swapfile
Выдайте команду swap -I, чтобы убедиться, что данная область подкачки исключена.
Обзорные вопросы
Какая файловая система разрушается и создается каждый раз при выполнении загрузки системы?
A. fdfs
TMPFS
proefs
swapfs
После создания и добавления дополнительной области подкачки какой метод является правильным для обеспечения ее доступности после последующей перезагрузки системы?
Вы можете отредактировать, как обычную строку, элемент в файле /etc/vfstab.
Вы можете модифицировать сценарии запуска для включения в них команды swapadd.
Подкачка не может быть добавлена; следовательно, вы должны подстроить размер раздела своппинга.
Требуется выполнить дополнительные операции, поскольку необходимые изменения делаются в файле запуска, когда добавляется область подкачки.
Какой файловый дескриптор используется для идентификации стандартного файла ошибок, stderr?
/dev/fd/О
/dev/fd/1
/dev/fd/2
D. /dev/fd/З
Какая команда должна быть использована для создания какого-нибудь файла своп- пинга?
A. cat
touch
mkfile
swapadd
newfs
Какая файловая система содержит некоторый список активных процессов, поименованных в соответствии с их номерами?
A. TMPFS
swapfs ■
proofs
D. fdfs
Почему вы должны зарегистрироваться в системе с привилегиями суперпользователя перед тем, как создавать какой-нибудь дополнительный файл своппинга?
Вы не сможете создавать файлы подкачки, если не имеете полномочий доступа суперпользователя.'
Файл подкачки, который имеет полномочия доступа суперпользователя, более сложно перезаписать.
Операция расширения файловой системы в разделе подкачки требует наличия доступа с привилегиями суперпользователя.
Вся область своппинга находится в разделе подкачки на корневом диске, и следовательно, требуется наличие доступа с привилегиями суперпользователя.
Этот тип файловой системы использует локальную память для считывания и записи файловой системы:
A. TMPFS
swapfs
nfs
D. cachefs
Какая опция команды mount ограничивает размер файловой системы TMPFS?
-о limit
-о size
-о <size>m
-о nolargefiles
Какая команда используется, чтобы продемонстрировать вам доступную область своппинга?
prtconf
swap -1
swap -s
D. vmstat
Глава 14. Псевдофайловые системы и область своп пинга в Solaris 4^J Примените ваши знания
Е. /usr/bin/ps
Как выполняется активизация областей своппинга каждый раз при выполнении загрузки системы?
Это делает элемент в файле /etc/vfstab.
Это делает сценарий /sbin/swapadd.
Это делает команда /usr/sbin/swap -а.
Это делает команда swapon.
Какая команда используется для создания файловой системы TMPFS?
A. mount
swap -а
/sbin/swapadd
newfs
Какие утверждения являются справедливыми относительно областей подкачки? (Выберите все применимые варианты ответов.)
Для выделения области подкачки может быть использована файловая система NFS.
Файл подкачки более предпочтителен для добавления области своппинга на постоянной основе.
Файл подкачки создается в любой стандартной файловой системе.
Вы не сможете демонтировать файловую систему до тех пор, пока используется файл подкачки.
Размер областей подкачки не может превышать 2 Гбайт в системе, которая работает под управлением Solaris 8.
Использование метаустройства с чередованием (расслоением данных) для области подкачки является очень хорошим решением и улучшает производительность системы.
Ответы на обзорные вопросы
В. Файловая система TMPFS разрушается и создается каждый раз при выполнении загрузки системы.
А. После создания и добавления дополнительной области своппинга вы можете отредактировать элемент для нее в файле /etc/vfstab, чтобы обеспечить доступность данной области подкачки после последующей перезагрузки системы.
С. Файловый дескриптор /dev/fd/2 используется для идентификации стандартного файла ошибок.
С. Используйте команды mkfile и swap для назначения части какой-нибудь из существующих файловых систем UFS в качестве дополнительной области своппинга.
С. Файловая система процессов, procfs, содержит список активных процессов, поименованных в соответствии с их номерами, в каталоге /ргос. Здесь сохраняются образы активных процессов, упорядоченные по номерам их идентификаторов.
В. Вы должны зарегистрироваться в системе с привилегиями суперпользователя перед тем, как создавать какой-нибудь дополнительный файл своппинга, именно потому, что полномочия доступа суперпользователя препятствуют случайной перезаписи этого файла. 11 2-300
А. Временная файловая система TMPFS использует локальную память для чтения и записи файловой системы, которая обычно работает гораздо быстрее, чем какая- нибудь дисковая файловая система типа UFS. Применение файловой системы TMPFS может повысить производительность.
В. Опция -о команды monnt позволяет вам задать значение <size> для ограничения максимального размера файловой системы TMPFS.
С. Для отображения доступной области своппинга на некоторой системе используется команда swap -s.
В. Области своппинга активизируются каждый раз при выполнении загрузки системы с помощью сценария /sbin/swapadd.
И. А. Для создания файловой системы TMPFS используется команда mount. Для создания файловой системы TMPFS до ее монтирования не предусмотрено специальной команды, аналогичной newfs. Файловая система TMPFS реально создается в оперативной памяти, когда вы выполняете команду mount и задаете TMPFS в качестве типа файловой системы.
А, С, D. Перечисленные утверждения справедливы относительно областей своппинга: для выделения области подкачки может быть использована файловая система NFS; файл подкачки создается в любой стандартной файловой системе; вы не сможете демонтировать файловую систему до тех пор, пока используется файл подкачки.
Глава 15Глава 15Инсталляция сервераИнсталляция сервера
Глава 15
Глава 15
Инсталляция сервера
Инсталляция сервера
Темы
В настоящей главе рассматриваются следующие темы экзамена:
Понимание среды клиент-сервер
На данном экзамене вам предстоит определять типы серверов и клиентов, применяемые в сетевой среде Solaris. В настоящей главе описываются все разнообразные типы серверов и клиентов, используемые в операционной системе Solaris 8.
Инсталляция программного обеспечения с использованием интерактивной программы инсталляции
Системный администратор несет ответственность за инсталляцию и установку всех серверов и клиентов. В данной главе описывается процесс инсталляции и конфигурирования сервера.
Содержание
(Введение496
Сервер496
Предварительные требования ^серверу498
Инсталляция Solaris 8 на сервере498
Инсталляция программного обеспечения с использованием интерактивной программы инсталляции500
(Резюме512
Примените ваши знания513
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
Настоящая глава требует большого объема практической работы. Единственный способ действительного понимания процедуры инсталляции программного обеспечения заключается в том, чтобы повторять эту процедуру снова и снова до тех пор, пока вы не сможете выполнить по памяти все приведенные пошаговые примеры. Вы увидите, что это совсем не так уж и сложно, когда поймете, как нужно устанавливать ваши файловые системы. Вам может потребоваться обратиться к главам 6 и 7, чтобы освежить в памяти эти вопросы. Желательно практиковаться на какой-нибудь системе фирмы Sun, однако, если вы имеете доступ только к вычислительной системе на платформе Intel, то этого будет достаточно.
Разберитесь с терминологией, представленной в настоящей главе и относящейся к взаимоотношениям клиента и сервера. Убедитесь в том, что вы различаете типы серверов и клиентов, которые доступны в среде Solaris.
Изучите требования, предъявляемые к инсталляции данной операционной системы. Имея заданную конкретную аппаратную конфигурацию, вам потребуется определить, поддерживает ли она среду Solaris 8.
Наконец, в конце настоящей главы собран перечень терминов, с которыми вам необходимо хорошо ознакомиться. Изучите эти термины и при подготовке к сдаче экзамена будьте готовы сопоставить каждый термин с его описанием.
Введение
В главе 3 обсуждались вопросы установки единственной и автономной системы. В настоящей главе акцент делается на инсталляции и конфигурировании сервера. Изложение материала начинается с описания сервера, его роли и взаимоотношений с другими системами в сети. Затем будет описана процедура инсталляции операционной системы.
Сервер
Сервер - это система, которая предоставляет службы или файловые системы, такие как исходные каталоги или файлы электронной почты, другим системам в сети. Сервер операционной системы (ОС) предоставляет программное обеспечение Solaris другим системам в данной сети. Для бездисковых клиентов серверы операционной системы предос-
тавляют корневую (Г) файловую систему, файловую систему /usr и файловую систему своппинга, или подкачки. Для систем типа AutoClient сервер операционной системы предоставляет все системное программное обеспечение, которое требуется для установки индивидуальной корневой файловой системы и файловой системы /usr, необходимых для организации локальной подкачки и кэширования. Существуют файловые серверы, серверы запуска, серверы баз данных, серверы печати, серверы инсталляции и даже серверы для выполнения конкретных приложений. Каждый тип сервера характеризуется различной совокупностью требований, основанных на функциональном назначении данного сервера. Например, сервер баз данных будет интенсивно использовать диски и память, но вряд ли будет иметь большое количество зарегистрированных пользователей. Следовательно, при выполнении конфигурирования такой системы необходимо уделить особое внимание установке файловых систем и тщательной настройке параметров ядра, которые связаны с использованием дискового ввода-вывода и памяти с целью оптимизации производительности данной системы.
' Системы, которые рассчитывают на серверы, называются клиентами. Другими словами, клиент - это некая система, которая использует дистанционные службы некоторого сервера. Некоторые клиенты имеют ограниченную емкость дисковых устройств хранения информации или, возможно, вообще не имеют локального диска; такие клиенты должны базироваться на дистанционных файловых системах некоторого сервера для обеспечения своего функционирования. Примерами такого типа клиентов являются бездисковые клиенты и клиенты типа AutoClient. Другие клиенты могут использовать дистанционные службы, такие как инсталляция программного обеспечения, с некоторого сервера. Такие клиенты не нуждаются в поддержке сервера для обеспечения своего функционирования; они называются автономными системами.
Типы систем определяются тем, как они получают доступ к корневой (/) файловой системе и к файловой системе /usr, включая область своппинга. Автономные системы и серверы монтируют эти файловые системы с какого-нибудь локального диска, тогда как бездисковые клиенты и клиенты типа AutoClient монтируют эти файловые системы дистанционно, опираясь на серверы, предоставляющие эти службы. Автономная система имеет все необходимое программное обеспечение Solaris на собственном локальном диске и не требует предоставления служб от какого-нибудь сервера операционной системы. Автономными системами могут быть как подключенные, так и не подключенные к сети системы в операционной среде Solaris.
Ниже приведено краткое описание различных клиентов, которых вы найдете в среде Solaris 8:
^ Бездисковый клиент. Такой клиент не имеет локального жесткого диска или файловых систем. Бездисковый клиент загружается с сервера, дистанционно монтирует с некоторого сервера свою корневую (/) файловую систему, файловые системы /usr и /export/home, размещает область подкачки на данном сервере и получает с него все необходимые данные. Любые созданные файлы сохраняются на том же сервере.
^ JavaStation. Система JavaStation известна также как клиент с нулевым администрированием; она не имеет локальной файловой системы и получает доступ к своему каталогу /home на сервере через сеть. Система JavaStation запускает только те приложения, которые на 100% являются чистыми Java-приложениями. Все данные, приложения и конфигурационная информация находятся на каком-ни-
будь централизованном сервере, на котором запускается программное обеспечение Netra J в операционной среде Solaris. Приложения Java загружаются по запросу, а затем выполняются локально.
^ AutoClient. Это тип системы, которая кэширует (локально сохраняет копии данных, на которые ссылается) все необходимое системное программное обеспечение с некоторого сервера. Система AutoClient имеет локальный жесткий диск, однако доступ к корневой файловой системе и файловой системе /usr на некотором сервере организуется через сеть, а затем эти файловые системы загружаются в кэш на локальном диске. Файлы корневой файловой системы и файловой системе /usr копируются в дисковый кэш при появлении обращений к ним. Если клиент типа Solstice AutoClient требует доступа к некоторому приложению, которое в данный момент времени отсутствует в его дисковом кэше, то данное приложение загружается через сеть. Если приложение уже находится в локальном дисковом кэше данного клиента, то оно выполняется локально. Системы типа AutoClient заменили dataless-клиентов в операционной системе Solaris 2.6.
. Предварительные требования к серверу
Сервер должен соответствовать нескольким минимальным требованиям, чтобы на нем можно было инсталлировать операционную систему Solaris 8:
^ Релиз операционной системы Solaris 8 поддерживает все платформы sun4d, sun4u и sun4m. Некоторые системы sun4c могут не поддерживаться в будущих релизах операционной системы Solaris 8 после выпуска 11/99. Если у вас имеется система платформы sun4c, то прежде чем приступать к работе, обратитесь к вашему изготовителю аппаратных средств, чтобы убедиться, что эта система поддерживается.
^ Для запуска инсталляции с графическим интерфейсом пользователя система должна иметь, по крайней мере, 32 Мбайт оперативной памяти. Однако на сервере обычно устанавливается 256 Мбайт оперативной памяти или даже больше.
^ Диск должен быть достаточно большим для хранения операционной системы Solaris, области своппинга и дополнительного программного обеспечения, такого как пакеты Solstice AdminSuite и AutoClient. Кроме того, на сервере операционной системы вам потребуется выделить дополнительное дисковое пространство в файловой системе /export для поддержки бездисковых клиентов или систем Solstice AutoClient. Планируйте не менее 1 Гбайт дискового пространства, однако реально следует иметь 2 Гбайт или даже больше.
Инсталляция Solaris 8 на сервере
Перед началом следует свериться с контрольным списком подготовки к инсталляции. Прежде всего соберите информацию по идентификации системы вашего сервера. Если данная система работает, вы можете собрать всю необходимую информацию, воспользовавшись командами, которые перечисляются в таблице 15.1.
Первичный сетевой интерфейс
ifconfig -а
IP-адрес
ypmatch <system_name><host> nismatch <system_name> more /etc/inet/hosts
Имя домена
/usr/bin/domainname
Является ли данная система частью подсети
more /etc/netmasks
Какая служба имен используется
more /etc/nsswitch.conf
Требуемая информация
Команда(ы) для сбора данной информации
Имя системы
/usr/bin/uname -и
Затем проверьте, что вы располагаете достаточным дисковым пространством для операционной системы Solaris 8, всех сопутствующих пакетов программного обеспечения и также для программного обеспечения сторонних разработчиков, которое вы планируете добавить. Суммарный размер каждого кластера конфигурации программного обеспечения приведен в главе 3. Обычно сервер может иметь несколько гигабайт дискового пространства, доступного для операционной системы, и вы сможете установить кластер полного дистрибутива. Кроме того, вам необходимо проконсультироваться с вашим поставщиком программного обеспечения относительно требований к размеру дискового пространства, необходимого для любого из пакетов программного обеспечения сторонних разработчиков, а также относительно требований к размеру области своппинга.
Дополнительно убедитесь, что вы располагаете достаточным дисковым пространством, если планируете запускать следующее программное обеспечение:
Ф AnswerBook2
Ф Desktop Power Pack
Ф Internet Mail Service
Ф ODBC Driver Manager
Ф OpenGL
Ф Solstice AdminSuite
Ф Solstice Backup
Ф Solstice DiskSuite
Ф Solaris 8 Documentation
Ф Sun Hardware AnswerBook
Ф Sun MediaCenter One
Ф Sun Webserver
Ф Sun Management Console (консоль управления Sun)
Размеры этих пакетов программного обеспечения иногда изменяются по мере их обновления, поэтому проконсультируйтесь с фирмой Sun для получения текущих требований к размеру дискового пространства для каждого из них.
^В^КЙ-, ЙМвв11|81й1#^
Вы можете инсталлировать программное обеспечение с локального привода CD-ROM или с привода CD- ROM, который находится на какой-нибудь системе, подсоединенной к сети. Однако для ускорения процесса инсталляции рекомендуется загружать программное обеспечение с локального привода CD-ROM.
Инсталляция программного обеспечения с использованием интерактивной программы инсталляции
Теперь вы готовы к инсталляции вашего программного обеспечения. Рекомендуется использовать один из двух методов для инсталляции операционной системы: интерактивный метод или метод Web Start. Процесс интерактивной инсталляции описывается в настоящей главе. Этот вариант предоставляет вам максимальную гибкость при инсталляции операционной системы. Метод инсталляции Web Start описывается в приложении А.
lUar^jiy^!^^А. -'/я:Ж
Интерактивная инсталляция программного обеспечения
Перечисленные ниже операции представляют собой общий обзор процедуры интерактивной инсталляции программного обеспечения:
Вставьте компакт-диск Solaris 8 Installation CD в привод CD-ROM.
В приглашения ок среды OpenBoot наберите следующую командную строку: boot cdrom
Система запускается с диска CD-ROM и начинает с конфигурирования устройств. По прошествии нескольких минут вы войдете в раздел системной идентификации. Программа инсталляции начнет диалог, задавая вам различные вопросы о вашей системе. Лучше всего собрать всю информации, необходимую для ответов, заблаговременно. Обратитесь к разделу "Процесс инсталляции Solaris" в главе 3, где приведен перечень информации, которую вам необходимо будет собрать. Следуя за приглашениями системы, вводите эту информацию так, как она представляется. Вам будет предложено выбрать язык и локаль. Вам также потребуется ввести имя вашей системы, ее IP- адрес и сетевую информацию, поэтому держите все эти данные под рукой.
После завершения раздела системной идентификации вы увидите на экране следующий диалог:
Solaris Interactive Installation:
This system is upgradable, so there are two ways to install the Solaris software.
The Upgrade option updates the Solaris software to the new release, saving as many modifications to the previous version of Solaris software as possible. Back up the system before using the Upgrade option.
The Initial option overwrites the system disks with the new version of Solaris software. This option allows you to preserve any existing file systems. Back up any modifications
made to the previous version of Solaris software before starting the Initial option.
After you select an option and complete the tasks that follow, a summary of your actions will be displayed.
F2_Upgrade F4_Initial F5_Exit F6_Help
™лрЩ|Упрвкдё1Ш : i‘
Все данные в разделах операционной системы будут уничтожены. В число разделов входят корневой (/) раздел, разделы /usr, /opt и /var.
Нажмите функциональную клавишу F4 для выбора полной переинсталляции программного обеспечения. Вы увидите на экране следующий диалог:
You'11 be using the initial option for installing Solaris software on the system. The initial option overwrites the system disks when the new Solaris software is installed.
On the following screens, you can accept the default^ or you can customize how Solaris software will be installed by: ■ - Selecting the type of Solaris software to install - Selecting disks to hold software you've selected - Specifying how file systems are laid out on the disks
After completing these tasks, a summary of your selections (called a profile) will be displayed.
. ПРИМЕЧ^^ : I'
Поскольку вы хотите полностью переинсталлировать программное обеспечение, выбирайте опцию F4. Опция обновления доступна в том случае, если вы работаете под управлением операционной системы Solaris 7 и хотите обновить ее до версии Solaris 8. При выборе опции обновления все индивидуальные настройки, которые были сделаны вами в среде операционной системы Solaris 7, будут сохранены.
Нажмите для продолжения функциональную клавишу F2.
Вам будет предложено выбрать географический регион, поддержка которого должна быть инсталлирована, такой как Азия, Восточная Европа и т.д. Если вы хотите выбрать язык, отличный от английского, выберите его здесь и нажмите для продолжения функциональную клавишу F2.
.■'^■■'ПРИМЕЧАНИЕ ,,
По умолчанию выбирается кластер поддержки системы конечного пользователя. В предыдущем примере был выбран кластер полного дистрибутива, который является общепринятым для серверов. После того, как вы выберите кластер, который хотите инсталлировать, и нажмете функциональную клавишу F4, вы увидите интерактивное меню, которое позволяет вам выбрать и отменить выбор пакетов программного обеспечения внутри конкретного кластера.
Вам будет задан вопрос о том, хотите ли вы инсталлировать 64-разрядные пакеты Solaris на вашей системе. Если вашей системой является UltraSparc (sun4u) и она поддерживает 64-разрядную архитектуру, выберите эту опцию, чтобы инсталлировать 64-разрядные пакеты Solaris на своей системе, а затем нажмите для продолжения функциональную клавишу F2. Вы увидите следующий диалог:
Select Software
Select the Solaris software to install on the system.
NOTE: After selecting a software group, you can add or remove software by customizing it. However, this requires understanding of software dependencies and how Solaris software is packaged. The software groups displaying 64-bit contain 64-bit support.
[ ] Entire Distribution plus OEM support 64-bit 1158.00 MB
[ ] Entire Distribution 64-bit 1218.00MB
[ ] Developer System Support 64-bit 1169.00MB
[X] End User System Support 64-bit 855.00MB
(F4 to Customize)
[ ] Core System Support 64-bit 269.00MB
F2_Continue F3_Go Back F4_Allocate F5_Exit F6_Help
ПРИМЕЧАНИЕ
На сервере всегда следует выбирать полный дистрибутив(первая строка), поскольку очень неприятно будет позднее возвращаться, чтобы проинсталлировать еще один пакет программного обеспечения, особенно на каком-нибудь сервере, который поддерживает множество пользователей. Иногда кластер полного дистрибутива не инсталлируется из-за нехватки дискового пространства. Если дисковое пространство настолько недорого, как это имеет место сегодня, добавьте диск большей емкости и инсталлируйте полный дистрибутив.
Выберите кластер программного обеспечения, который вы хотите инсталлировать, и нажмите функциональную клавишу F2. Для сервера рекомендуется выбирать кластер полного дистрибутива, чтобы было загружено все программное обеспечение. После нажатия функциональной клавиши F2 вы увидите следующий диалог:
Select Disks:
On this screen you must select the disks for installing Solaris software. Start by looking at the Suggested Minimum field; this value is the approximate space needed to install the software you've selected. Keep selecting disks until the Total Selected value exceeds the Suggested Minimum value.
Disk Device (Size) Available Space
[X] oOtOdO (4102 MB) boot disk 4102 MB (F4 to edit) Total Selected: 4102 MB Suggested Minimum: S51 MB F2_Continue F3_Go Back F4_Edit F5_Exit F6_Help
Выберите ваши диски, а затем нажмите для продолжения функциональную клавишу F2. Вы увидите такой диалог:
Preserve Data?
Do you want to preserve existing data? At least one of the disks you've selected for installing Solaris software has file systems or
unnamed slices that you may want to save.
F2_Continue F3_Go Back F4_Preserve F5_Exit F6_Help
Нажмите функциональную клавишу F2, и данные на всех файловых системах будут стерты. Вы увидите следующее:
Automatically Layout File Systems?
Do you want to use auto-layout to automatically layout file systems? Manually laying out file systems requires advanced system administration skills.
F2_Auto Layout F3_Go Back F4_Manual Layout F5_Exit F6_Help
Нажмите функциональную клавишу F2. Система автоматически спланирует файловые системы. Размеры определяются в зависимости от выбранных вами пакетов программного обеспечения. Если вы планируете добавлять дополнительное программное обеспечение, то сможете модифицировать размеры файловых систем на последующих этапах. Далее увидите:
Automatically Layout File Systems
On this screen you must select all the file systems you want auto-layout to create, or accept the default file systems shown.
NOTE: For small disks, it may be necessary for auto-layout to break up some of the file systems you request into smaller file systems to fit the available disk space. So, after auto-layout completes, you may find file systems in the layout that you did not select from the list below.
File Systems for Auto-layout
[X] / [ J /opt [ ] /usr [ ] /usr/openwin [ ] /var [X] swap
F2_Continue F5_Cancel F6_Help
Сделайте ваш выбор и нажмите функциональную клавишу F2. В рассматриваемом примере были выбраны эти дополнительные файловые системы. Вы увидите следующий диалог:
File System and Disk Layout
The summary below is your current file system and disk layout, based on the information you've supplied.
NOTE: If you choose to customize, you should understand file systems, their intended purpose on the disk, and how changing them may affect the operation of the system.
File system/Mount point
Disk/Slice
Size
/
COtOdOsO
80 MB
/var
cOtOdOsl
34 MB
overlap
c0t0d0s2
4102 MB
swap
c0t0d0s3
147 MB
/opt
c0t0d0s5
25 MB
/usr
c0t0d0s6
1159 MB
/export/home
c0t0d0s7
2655 MB
F2_Continue F3_Go Back
F4_Customize F5_Exit
F6_Help
ЕЕШ
Е
Е
Рекомендуется добавить каталоги /usr, /var и /opt в качестве отдельных файловых систем. Файловая система /usr представляет собой отдельную файловую систему для большинства двоичных файлов Solaris. Файловая система /var предоставляет пространство для файлов системных журналов, спулинга пакетов программного обеспечения и многих других объектов, потребляющих значительное количество дискового пространства. Не рекомендуется делать каталог /var частью корневой файловой системы. Файловые системы /usr и /opt предоставляют пространство для дополнительных пакетов программного обеспечения, которые вы будете добавлять позднее. Как и в предыдущем случае, не рекомендуется делать каталоги /opt и /ивг частью корневой файловой системы.
12.12.В этом месте вы можете провести дополнительную настройку размеров дисковых частей (slices), для чего следует нажать функциональную клавишу F4. Затем вам будет предоставлено меню для выбора нового размера каждого раздела. Если планируете изменить размеры нескольких разделов, то следует нажать функциональную клавишу F4. На экране отображается:
12.
12.
Customize Disk: cOtOdO
Boot Device: cOtOdOsO
Slice
Mount Point
Size (MB)
0
/
80
1
/var
34
2
overlap
4102
3
swap
147
4
0
5
/opt
25
6
/usr
1159
/export/home
2655
Capacity:
4102 MB
Allocated:
4100 MB
Rounding Error:
2 MB
Free:
0 MB
Начнем с уменьшения размера файловой системы /export/home до 1174 Мбайт. Затем увеличим размер корневой файловой системы до 120 Мбайт. Выделим 300 Мбайт для файловой системы /var и 200 Мбайт для файловой системы /opt. Затем добавим еще один раздел под названием /data и устано-
вим его размер равным 1000 Мбайт. Когда вы будете полностью удовлетворены составом частей диска и их размерами, нажмите для продолжения функциональную клавишу F2. На экране отображается такой диалог:
File System and Disk Layout
The summary below is your current file system and disk layout, based on the information you've supplied.
NOTE: If you choose to customize, you should understand file systems, their intended purpose on the disk, and how changing them may affect the operation of the system.
File system/Mount point
Disk/Slice
Size
/
cOtOdOsO
120 MB
/var
cOtOdOsl
300 MB
overlap
c0t0d0s2
4102 MB
swap
c0t0d0s3
147 MB
/data
c0t0d0s4
1000 MB
/opt
cOtOdOsS
200 MB
/usr
COtOdOsS
1159 MB
/export/home
c0t0d0s7
1174 MB
Проверьте дважды сделанный вами выбор и нажмите функциональную клавишу F2, когда будете готовы перейти к следующему этапу. Сейчас самое время проверить все сделанные вами выборы и настройки. Убедитесь, что область подкачки соответствует типу сервера, который вы инсталлируете. По- видимому, вы никогда не сможете установить слишком большие размеры для области своппинга или для файловых систем /var, /opt или /usr. Другими словами, лучше ошибиться в большую сторону, чем в меньшую.
Сегодня многие серверы поставляются с дисковыми накопителями размером 18 Гбайт. Следует использовать целиком один диск для операционной системы. На большинстве серверов запускается также какой-нибудь пакет мониторинга производительности от сторонних разработчиков, который может создавать огромные файлы протоколов в каталоге /var. Заплаты на операционную систему также могут задействовать значительную часть пространства в каталоге /var. Вы обнаружите, что буквально постоянно добавляете заплаты на сервер, поскольку вам приходится поддерживать большой массив приложений и аппаратных компонентов. Обычно следует выделять по несколько гигабайт для каждой из этих файловых систем.
Кроме того, достаточно сложно бывает оценить требования к размеру области подкачки на каком-нибудь сервере. Такие серверы могут работать месяцами без перезагрузки и при этом поддерживать несколько приложений баз данных и нескольких пользователей. Повторим еще раз, выделяйте достаточное дисковое пространство для области своппинга - не менее чем удвоенная емкость оперативного запоминающего устройства. Производительность системы не пострадает, если вы выделите слишком много места для области подкачки. Избыточный объем области подкачки будет впустую занимать дисковое пространство. Однако стоимость дискового пространства ниже, чем затраты в случае заполнения области подкачки и аварийного завершения како-
го-нибудь приложения во время пиковой нагрузки. Когда вы будете удовлетворены сделанным выбором, нажмите функциональную клавишу F2:
Mount Remote File Systems?
Do you want to mount software from a remote file server? This may be necessary if you had to remove software because of disk space problems.
F2_Continue F3_Go Back F4_Remote Mounts F5_Exit F6_Help
Нажмите функциональную клавишу F2, если только не хотите установить дистанционные монтирования.
Вы увидите следующий диалог:
Profile
The information shown below is your profile for installing Solaris software.
It reflects the choices you've made on previous screens.
Installation Option:Initial
Boot Device:cOtOdO
Client Services:None
Software: Solaris 8, Entire Distribution 64-bit
File System and Disk Layout:
/
cOtOdOsO
120
MB
/var
cOtOdOsl
300
MB
swap
c0t0d0s3
147
MB
/data
cOtOdOs4
1000
MB
/opt
c0t0d0s5
200
MB
/usr
cOtOdOsfi
1159
MB
/export/home
c0t0d0s7
1174
MB
F2_ContinueF4_Change
F5_Exit
F6_Help
ПРИМЕЧАНИЕ - . .
Обычно стоит подождать, пока не завершится первоначальная инсталляция программного обеспечения, прежде чем устанавливать эти точки монтирования. Очень часто быаает так, что данная система не подсоединяется к работающей сети на данном этапе, поэтому указанные монтирования являются недоступными. Желательно оставить эту задачу на дальнейший этап работы после завершения инсталляции, когда выполняется установка пользователей, принтеров и т.д. Имеет смысл составить контрольную таблицу всех работ, которые необходимо выполнить после завершения инсталляции; одной из этих работ является установка дистанционных точек монтирования.
Проверьте эту информацию и, если вы согласны с ней, нажмите функциональную клавишу F2.
Вы увидите следующее:
Reboot After Installation?
After Solaris software is installed, the system must be rebooted. You can choose to have the system automatically reboot, or you can choose to manually reboot the system if you want to run scripts or do other customizations before the
reboot. You can manually reboot a system by using the
reboot(IM) command.
[X] Auto Reboot
[ ] Manual Reboot
F2_Begin Installation F5_Cancel
ПРИМЕЧАНИЕ
Размеры разделов и вопросы дискового пространства обсуждались в главе 3. Возвратитесь к этой главе, если вы не уверены в правильности установки разделов и их размеров, которые были сделаны инсталляционной программой.
Сделайте свой выбор и нажмите функциональную клавишу F2, чтобы начать инсталляцию. На этом процесс интерактивной инсталляции завершается. После того, как программное обеспечение начнет инсталлироваться, вы увидите следующий диалог:
Preparing system for Solaris install
Configuring disk (cOtOdO)
Creating Solaris disk label (VTOC)
Creating and checking UFS file systems
Creating / (cOtOdOsO)
Creating /var (cOtOdOsl)
Creating /data (c0t0d0s4)
Creating /opt (c0t0d0s5)
Creating /usr (c0t0d0s6)
Creating /export/home (c0t0d0s7)
Beginning Solaris software installation
Solaris Initial Install
MBytes Installed: 0.00
MBytes Remaining: 711.51
В нижней части экрана появится шкала, отображающая ход инсталляции. Когда эта шкала достигнет 100%, система предложит вам ввести пароль, выводя на экран такое сообщение:
On this screen you can create a root password.
A root password can contain any number of characters, but only the first eight characters in the password are significant.
(For example, if you create lalb2c3d4e5f61 as your root
password, you can use 'alb2c3d4' to gain root access.)
You will be prompted to type the root password twice; for security, the password will not be displayed on the screen as you type it.
> If you do not want a root password, press Enter twice.
Root password:
Press Enter to continue.
Введите ваш пароль суперпользователя.
Вы увидите на экране еще одно сообщение:
System identification is completed.
This system is configured to conserve energy.
After 30 minutes of idle time on this system, your system state will automatically be saved to disk, and the system will power-off. Later, when you want to use the system again, and you turn the power back on, your system will be restored to its previous state, including all the programs that you were running. Do you want this automatic power-saving shutdown? (If this system is used as a server, answer n) [y,n,?J
Ответьте "n" на этот вопрос. После этого вам будет сделано следующее предложение:
Autoshutdown has been disabled.
Do you want the system to ask about this again, when you next reboot? (This gives you the chance to try it before deciding whether to keep it.) [y,n,?J
леиме^ний^^^ ■-<:
Обратите внимание на авторские комментарии в конце настоящего раздела по поводу особенности Autoshutdown.
Ответьте "п" на этот вопрос. После нажатия Enter на экране возникнет следующее сообщение:
Please specify the media from which you will install Solaris 8 (SPARC) Software.
Alternatively, choose the selection for "Skip" to skip this CD and go on to the next one.
Media:
CD
NetworkFile System
Skip
В рассматриваемом примере инсталляция будет выполняться с компакт-диска, поэтому на данный вопрос следует ответить 1 и нажать Enter.
Компакт-диск, который находился в приводе CD-ROM, будет выброшен из него, а на экране появится сообщение:
Please insert the CD for Solaris 8 (SPARC) Software.
After you insert the CD, please press Enter. Enter S to skip this CD and go on to the next one. To select a different media, enter В to go Back. []
Вставьте в привод CD-ROM компакт-диск, помеченный Solaris 8 Software CD 1 of 2, и для продолжения нажмите Enter. Будет продолжен процесс извлечения программного обеспечения. Когда процесс копирования файлов завершится, на экране появится:
Installation details:
Product
Result
More Info
1. Solaris 8 Software 2
Installed
Available
2. Done
... Введите номер 1, соответствующий желаемому выбору, для получения дополнительной информации или 2 для продолжения; возникнет следующее сообщение:
End of Solaris 8 Software installation.
<Press Enter to continue>
После нажатия Enter система пойдет на перезагрузку.
Когда завершается процесс интерактивной инсталляции, вы можете инсталлировать пакеты Solstice Admin Pack и AdminSuite, которые описываются в главе 19.
На системах семейства Sun Ultra доступно два метода управления электропитанием: Device Power Management (управление электропитанием устройств) и Suspend-Resume (приостановка- восстановление). Оба метода разработаны с целью экономии электроэнергии.
Метод управления электропитанием устройств автоматически снижает потребление электроэнергии отдельными устройствами, когда эти устройства не требуются для выполнения конкретной функции. Такая возможность экономии электроэнергии может предоставляться по дисковым накопителям, мониторам, адаптерам и даже центральным процессорам. Управление электропитанием устройств является прозрачным для пользователя компьютера. Система в целом продолжает функционировать и способна откликаться на запросы по обслуживанию, поступающие от устройств системы. Эти устройства способны в случае необходимости полностью восстановить свое питание в течение нескольких секунд. Точный характер режима экономии электроэнергии, в который переходит ваша система, зависит от используемых в ее составе аппаратных средств и от их совместимости со спецификацией Energy Star.
Метод Suspend-Resume представляет собой функцию экономии времени, которая позволяет вам выключить электропитание своей системы без потери состояния вашей текущей активности. Когда вы используете эту особенность, то ваши рабочая область и файлы сохраняются, когда электропитание системы выключается, и восстанавливаются в то же самое состояние, когда электропитание системы включается.
Функция Suspend-Resume может быть установлена в ходе рассмотренного процесса инсталляции. Если вы возвращаетесь, то вам будет задан следующий вопрос:
Do you want this automatic power-saving shutdown?
(If this system is used as a server, answer n) [y, n, ?]
На сервере вы всегда отвечаете на этот вопрос отрицательно (п). На рабочей станции использование этой функции вполне приемлемо; на сервере это не рекомендуется. Пользователям будет нужен доступ к этим серверам в любое время в течение 24-часового периода. Если данная система находится в режиме приостановки, то пользователи не будут иметь возможности получить доступ к данному серверу иначе, как путем физического нажатия кнопки включения электропитания (Power-On) на данном сервере. Если вы случайно ответите положительно и сконфигурируете данную опцию, то сможете отключить эту функцию путем выполнения операций, описанных далее:
Шагуз^агом
15.2 Отключение возможности управления электропитанием в среде Solaris
Самый простой способ заключается в использовании инструмента Power Management, dtpower. Инструмент dtpower со своим графическим интерфейсом пользователя доступен в среде Common Desktop Environment. Для перехода к инструменту Power Management щелкните пиктограмму Desktop Controls, которая находится во всплывающем меню передней панели, как показано на рисунке 15.1.
Рисунок 15.1.Всплывающее меню передней панели.Рисунок 15.1.Всплывающее меню передней панели.
Рисунок 15.1.
Всплывающее меню передней панели.
Рисунок 15.1.
Всплывающее меню передней панели.
В окне Application Manager щелкните на пиктограмме Power Manager, как показано на рисунке 15.2.
На экране появится окно инструмента Power Manager, как показано на рисунке 15.3.
Рисунок 15.3.Инструмент Power Manager.Рисунок 15.3.Инструмент Power Manager.Dtpower
Рисунок 15.3.
Инструмент Power Manager.
Рисунок 15.3.
Инструмент Power Manager.
I JHy« p^etgjB^ioi^^ fay user_
Auioshntdownenabl^d between 5:00 PM and 7:00 AM
(J More ]
I OK j Cencel j} Help |
Щелкните кнопку Customized в окне инструмента Power Manager, на экране появится опускающееся меню, как показано на рисунке 15.4.
Рисунок 15.4.Опускающееся меню управления электропитанием.Рисунок 15.4.Опускающееся меню управления электропитанием.I .Dtpower■ ' JI .Dtpower■ ' J
Рисунок 15.4.
Опускающееся меню управления электропитанием.
Рисунок 15.4.
Опускающееся меню управления электропитанием.
I .Dtpower■ ' J
I .Dtpower■ ' J
Щелкните на пункте Disabled для отключения управления электропитанием. Затем щелкните кнопку ОК для выхода.
Другой способ отключения управления электропитанием выполняется из командной строки:
Отключите навсегда соответствующий сценарий запуска из каталога /etc/rc2.d: mv /etc/rc2.d/S85power /etc/rc2.d/s85power
Третий способ отключения управления электропитанием заключается в изменении файла/etc/power.conf таким образом, чтобы значение поля Behavior изменилось с shutdown на noshutdown. Ниже приведен пример того, как может выглядеть файл /etc/power.conf на какой-нибудь системе, для которой сконфигурировано управление электропитанием: more /etc/power.conf # # Copyright (с) 1996 - 1999 by Sun Microsystems, Inc. # All rights reserved. # #pragma ident "0(#)power.conf 1.14 99/10/18 SMI" # # Power Management Configuration File # # NOTE: The entry below is only used when no windowing \ environment # is running. When running windowing environment, monitor \ power # management is controlled by the window system. # Statefile Path statefile/usr/.CPR
Auto-Shutdown Idle(min) Start/Finish(hh:mm) Behavior \ autoshutdown 6017:00 7:00shutdown \
device-dependency /dev/fb /dev/kbd device-dependency-property removable-media /dev/fb \ autopmdisable
В приведенном примере управление электропитанием сконфигурировано для автоматического закрытия системы, если она простаивает 60 минут в любое время между 5 часами пополудни и 7 часами пополуночи.
Для отключения автоматического закрытия, измените такие строки в файле /etc/ power.conf, как показано:
#Auto-ShutdownIdle (min) Start/Finish (hh:mm)Behavior
autoshutdown6017:00 7:00noshutdown
Значение shutdown изменилось на noshutdown.
Резюме
В настоящей главе были описаны различные типы серверов, которые доступны в среде Solaris 8. При установке какого-нибудь сервера системный администратор должен идентифицировать его тип. Все службы, которые будет предоставлять данный сервер, должны быть заблаговременно идентифицированы, чтобы операционная система была должным образом установлена для предоставления этих служб. Следует помнить, что каждый сервер отличается от других, поэтому требования будут изменяться от одного сайта к другому.
В настоящей главе обсуждались все предварительные требования, которым должна удовлетворять ваша система, прежде чем на ней сможет быть инсталлирована операционная система Solaris 8. Кроме того, здесь был рассмотрен список информации, который должен быть заполнен перед тем, как вы начнете инсталляцию.
Наконец, был описан процесс установки операционной среды Solaris 8 на некотором сервере с использованием интерактивной программы инсталляции. Эта программа предлагает некоторый диалог, позволяющий системному администратору выбрать пакеты программного обеспечения и создать файловые системы на новом сервере. Другой метод инсталляции операционной системы, использующий Web Start, будет рассмотрен позднее в приложении А.
После инсталляции операционной системы предстоит решать еще целый ряд задач, таких как установка NIS и сетевого окружения. Эти темы освещаются в главах 13 и 17. Кроме этого, не забудьте выполнить резервное копирование ваших разделов (этот процесс описан в главе 11) после того, как вы завершите установку сервера.
В следующей главе описываются вопросы конфигурации устройств и соглашения по наименованию. Теперь, когда вы уже инсталлировали операционную систему, вы сможете увидеть, как ее ядро взаимодействует с периферийными устройствами, такими как диски и накопители на магнитной ленте.
Ключевые термины
Клиент-сервер (необходимо знать каждый тип сервера и клиента, которые были описаны в настоящей главе)
Интерактивная инсталляция
Метод инсталляции Web Start
Начальная инсталляция
Обновление
Управление электропитанием
Примените ваши знания
Примените ваши знания
15.1 Инсталляция Solaris 8 с использованием интерактивной программы инсталляции
При выполнении настоящего упражнения вам предстоит воспользоваться интерактивной программой для инсталляции операционной среды Solaris 8 на вашей системе.
Оцениваемое время: 1-2 часа в зависимости от быстродействия вашей системы и привода CD-ROM.
' ПРЗДУПЯЭДёПЙЁ' ?
Настоящее упражнение разрушит все данные на вашем жестком диске.
Вставьте компакт-диск, помеченный Solaris 8 Installation CD, в привод CD-ROM.
Если данная система в настоящее время работает, то либо зарегистрируйтесь в системе как суперпользователь и закройте систему, либо прервите работу операционной системы посредством нажатия Stop+A.
Загрузите операционную систему с компакт-диска:
boot cdrom <return>
Начнется работа интерактивной программы инсталляции. Обратитесь к разделу, который озаглавлен "Инсталляция программного обеспечения с использованием интерактивной программы инсталляции", и выполняйте операции, описанные в этом разделе.
Обзорные вопросы
Что из перечисленного представляет собой некоторую систему, которая предоставляет службы другим системам в сетевом окружении?
Сервер
Клиент
Файл-сервер
AutoClientServer
Что из перечисленного представляет собой некоторую систему, которая использует дистанционные службы с какого-нибудь сервера, располагает ограниченным дисковым пространством и требует сервер для своего функционирования?
AutoClientServer
Файл-сервер
Клиент
Автономная система
Какой тип инсталляции сохраняет данные?
Initial (начальная)
Upgrade (обновление)
Preserve
Web Start
Что из перечисленного представляет собой три фазы процесса инсталляции?
Конфигурирование системы, инсталляция и работы после инсталляции
Включение электропитания, загрузка с компакт-диска, выполнение программы инсталляции
Загрузка с компакт-диска, запуск программы инсталляции, работы после инсталляции
Загрузка с компакт-диска, конфигурирование системы, инсталляция программного обеспечения
Что из перечисленного не является кластером конфигурации программного обеспечения?
Поддержка системы разработчика
Поддержка системы конечного пользователя
Поддержка базовой системы
Полный дистрибутив плюс поддержка оборудования системы от сторонних изготовителей (OEM)
Что из перечисленного представляет собой программу инсталляции фирмы Sun, написанную на Java?
A. WebNFS
JumpStart
Interactive Installation (интерактивная программа инсталляции)
D. Web Start
Какие файловые системы автоматически устанавливаются для вас программой интерактивной инсталляции?
/, swap, /usr, /opt, /var
/, swap, /usr
/, swap, /usr, /export/home
/, swap, /usr, /opt, /var, /export/home
Какой из типов клиентов известен как клиент "с нулевым администрированием"?
dataless-клиент
JavaStation
Бездисковый клиент
D. auto-клиент
Что из перечисленного является кластером конфигурации программного обеспечения, используемым по умолчанию в процессе инсталляции?
Дистрибутив конечного пользователя
Дистрибутив ядра
Дистрибутив разработчика
Полный дистрибутив
Что из перечисленного представляет архитектуру ядра для ultra 1 ?
sun4m
sun4c
sun4u
sun4
Какая информация не требуется для инсталляции серверной системы?
Ethernet-адрес сервера
Имя хоста сервера
IP-адрес сервера
Географический регион данного сервера
Ответы на обзорные вопросы
А. Сервер - это система, предоставляющая службы или файловые системы, такие как исходные каталоги или файлы электронной почты, другим системам в сети.
С. Клиент представляет собой некую систему, которая использует дистанционные службы некоторого сервера. Некоторые клиенты имеют ограниченные емкости дисковых устройств хранения информации или, возможно, вообще не имеют локального диска; такие клиенты для обеспечения своего функционирования должны базироваться на дистанционных файловых системах с некоторого сервера.■
В. Опция Upgrade обновляет программное обеспечение Solaris до состояния нового релиза, сохраняя при этом данные и максимально возможное число модификаций предыдущей версии программного обеспечения Solaris. '
А. Три фазы процесса инсталляции выглядят следующим образом: конфигураи- рование системы, инсталляция и работы после инсталляции.
С. В состав кластеров конфигурации программного обеспечения Solaris 8 входят полный дистрибутив плюс поддержка оборудования системы от сторонних изготовителей (только для платформы SPARC), полный дистрибутив, поддержка системы разработчика, поддержка системы конечного пользователя и поддержка ядра системы.
D. Web Start представляет собой программу инсталляции фирмы Sun, написанную на Java.
В. Программой интерактивной инсталляции автоматически устанавливаются корневая (/) файловая система, область своппинга, или подкачки (swap), и файловая система /usr.
В. Система JavaStation известна также как клиент с нулевым администрированием, она не имеет локальной файловой системы и доступ к своему каталогу /home на некотором сервере получает через сеть.
А. По умолчанию в процессе интерактивной инсталляции выбирается кластер поддержки системы конечного пользователя.
С. sun4u - архитектура ядра для всех систем Sun Ultra.
А. Ethernet-адрес данного сервера не требуется для инсталляции серверной системы. В процессе инсталляции вам будет предложено ввести IP-адрес, имя хоста и название географического региона.
Глава 16Глава 16Администрирование устройств и управление дисками
Глава 16
Глава 16
Темы
В настоящей главе рассматриваются следующие темы экзамена:
Ознакомление с соглашениями о наименовании устройств и драйверов
Операционная система Solaris получает доступ к устройствам, таким как диски и накопители на магнитной ленте, через имена маршрутов устройств. Системный администратор должен хорошо ориентироваться в различных именах маршрутов, указывающих на каждый элемент аппаратных средств, подсоединенных к системе.
Отображение конфигурационной информации устройств и драйверов
Операционная система Solaris предоставляет несколько методов для отображения информации о драйверах устройств. Описанные команды и технологии помогут вам идентифицировать, какие именно устройства указывают на конкретное периферийное оборудование и какие драйверы загружаются в ядре операционной системы.
Конфигурирование новых устройств
Системный администратор несет ответственность за добавление и конфигурирование новых аппаратных средств в системе. В настоящей главе описывается, как конфигурируются новые устройства в операционной среде Solaris.
Содержание
(Введение517
Фрайверы устройств518
УСмя физического устройства518
.Автоконфигурация устройств523
5£мя экземпляра525
Главные и дополнительные номера устройств528
3£мя логического устройства530
‘Блочные и низкоуровневые устройства531
‘Управление виртуальными томами532
Solstice (Dis^Suite533
StorEdge Volume Manager535
Резюме537
Примените ваши знания538
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
Вслед за главой 13 в настоящей главе вводится множество новых терминов, которые вы должны знать достаточно хорошо, чтобы уметь сопоставить термин с описанием, если он встретится вам на экзамене. Выучите термины, которые приведены в разделе "Ключевые термины" в конце настоящей главы.
Разберитесь, что представляет собой драйвер устройства, и разберитесь с различными именами драйверов устройств. Они достаточно сложны для запоминания, однако продолжайте работать над ними до тех пор, пока вы не сможете описать эти имена по памяти. На экзамене множество вопросов связано именно с различными типами имен устройств.
Выполняйте практически все команды и пошаговые примеры до тех пор, пока не сможете описать и выполнить их по памяти. Самый лучший способ запомнить эти команды и примеры - многократно выполнять их в системе Solaris. ■
Наконец, изучите концепцию виртуальных томов. Вам нет необходимости знать, как создавать и конфигурировать виртуальные тома, однако вы должны знать об их существовании и характеристиках. Будьте готовы перечислить преимущества виртуального тома и определить характеристики пакета Solstice DiskSuite и Администратора томов StorEdge.
Введение
Управление устройствами в среде Solaris 8 включает в себя добавление и удаление из системы периферийных устройств, таких как накопители на магнитной ленте, дисковые накопители, принтеры и модемы. Сюда также может входить добавление драйвера от стороннего производителя для поддержки некоторого устройства. Системные администраторы должны знать, как следует задавать имена устройств в командах управления дисками, файловыми системами и другими устройствами.
В настоящей главе подробно описываются вопросы управления дисковыми устройствами. Кроме того, здесь описываются соглашения о наименованиях дисковых устройств, так же как и добавление, конфигурирование и отображение информации о дисковых устройствах, которые присоединены к вашей системе.
Драйверы устройств
Компьютер фирмы Sun обычно использует обширную номенклатуру периферийных устройств и устройств массовой памяти, таких как дисковый накопитель с интерфейсом SCSI, клавиатура и мышь, а также некоторые типы устройств резервного копирования на магнитных носителях информации. Другими широко используемыми устройствами являются приводы CD-ROM, принтеры и плоттеры. Операционная система Solaris обменивается информацией с периферийными устройствами через файлы, называемые файлами устройств, или драйверами. Драйвер устройства - это низкоуровневая программа, которая позволяет ядру операционной системы обмениваться информацией с конкретной составляющей аппаратных средств. Драйверы служат своего рода "интерпретаторами" операционной системы для конкретной составляющей аппаратных средств. Чтобы операционная система Solaris смогла обмениваться информацией с каким-нибудь устройством, данное устройство должно иметь свой драйвер.
Когда система запускается в первый раз, ядро создает некоторую иерархическую структуру, представляющую все устройства, которые подсоединены к данной системе. Это называется процессом автоконфигурации, который будет описан позднее в настоящей главе. Если для какого-нибудь периферийного оборудования не загружается драйвер, данное устройство не будет функционировать. В операционной системе Solaris каждое дисковое устройство описывается тремя способами, используя три различных соглашения о наименованиях:
ф Имя физического устройства. Это имя представляет полное имя маршрута данного устройства в иерархической структуре информации об устройствах.
ф Имя экземпляра. Аббревиатура ядра для каждого возможного устройства в данной системе.
ф Имя логического устройства. Эти имена используются системными администраторами с большинством команд файловых систем для ссылки на устройства.
Системные администраторы должен разбираться в перечисленных выше именах устройств при использовании команд управления дисками и файловыми системами. Эти имена устройств будут обсуждаться далее в настоящей главе.
Имя физического устройства
Прежде чем будет выполнена загрузка операционной системы, она обнаруживает конкретное устройство через полное имя маршрута к данному устройству. Полные имена маршрутов устройств были описаны в главе 2. Однако, после загрузки ядра операционной системы некоторое устройство обнаруживается по его имени маршрута физического устройства. Имена физических устройств представляют полное имя маршрута к некоторому устройству. Обратите внимание на то, что эти два имени имеют одну и ту же структуру. Например, посмотрим на полное имя маршрута устройства некоторого диска с интерфейсом SCSI и целевым номером 0, введя команду show-devs в ответ на приглашение среды OpenBoot. Полное имя маршрута устройства выглядит в данном случае следующим образом:
/iommu@f,eOOOOOOO/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd
А теперь посмотрим на соответствующее имя физического устройства с уровня операционной системы. Воспользуйтесь командой dmesg, которая описывается далее в настоящем разделе, для получения информации обо всех устройствах, подсоединенных к вашей системе. Набрав команду dmesg в приглашении командной строки, вы получите следующую информацию о диске 0 с интерфейсом SCSI:
iommuO at root: obio OxeOOOOOOO sbusO at iommuO: obio OxeOOOlOOO espdmaO at sbusO: SBus slot f 0x400000 espO:esp-options=0x46
espO at espdmaO: SBus slot f 0x800000 spare ipl 4 sdO at espO: target 0 lun 0 sdO is iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/ esp@f,800000/sd@0,0
<SEAGATE-ST32550N-0014 cyl 3495 alt 2 hd 11 sec 109> | /да^ЕЧАНИ^^Wil'S ;W'W
Аналогичная информация доступна также в файле /var/adm/messages.
Имя маршрута физического устройства для диска 0 выглядит следующим образом:
/iommugf,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/sd@ 0,0
Как вы можете видеть из приведенных примеров, имя физического устройства и полное имя устройства выглядят совершенно одинаково. Различие заключается в том, что полное имя маршрута устройства представляет собой просто маршрут к конкретному устройству. Физическое устройство - это реальный драйвер, используемый Solaris для получения доступа к этому устройству со стороны операционной системы.
Файлы физических устройств находятся в каталоге /devices; следовательно, имя файла физического устройства для диска 0 может выглядеть следующим образом:
/devices/iommugf,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000/ sd@0,0:<#>
где <#> - это некоторая буква, представляющая часть (slice-слайс) диска.
Системные команды, которые применяются для предоставления информации о физических устройствах, описываются в таблице 16.1.
1$^иЙа46Л;|&м^ыШл#£к^ра^'
КомандаОписание
prtconfОтображает информацию системной конфигурации, включая общее
количество памяти и конфигурацию устройств так, как она описана иерархической структурой в системе. Это удобный инструмент, чтобы проверить, видит ли система конкретное устройство.
sysdefОтображает информацию о конфигурации устройств, включая аппарат
ные средства системы, псевдоустройства, загружаемые модули и выбранные параметры ядра.
dmesgОтображает диагностические сообщения системы, а также список уст
ройств, присоединенных к системе после ее последней перезагрузки.
Ниже приведен пример вывода команды prtconf:
# prtconf
System Configuration: Sun Microsystems sun4u Memory size: 128 Megabytes System Peripherals (Software Nodes):
SUNW,Ultra-5_10
packages (driver not attached) terminal-emulator (driver not attached) deblocker (driver not attached) obp-tftp (driver not attached) disk-label (driver not attached) SUNW,builtin-drivers- (driver not attached) sun-keyboard (driver not attached) ufs-file-system (driver not attached) chosen (driver not attached) openprom (driver not attached) client-services (driver not attached)
options, instance #0 aliases (driver not attached) memory (driver not attached) virtual-memory (driver not attached) pci, instance #0 pci, instance #0 ebus, instance #0 auxio (driver not attached) power, instance #0 SUNW,pll (driver not attached) se, instance #0 . . . . <output truncated>
Далее приведен пример вывода команды sysdef: # sysdef *
* Hostid *
80a26382 *
* sun4u Configuration *
*
* Devices * packages (driver not attached) terminal-emulator (driver not attached) deblocker (driver not attached) obp-tftp (driver not attached) disk-label (driver not attached)
SUNW,builtin-drivers (driver not attached) sun-keyboard (driver not attached) ufs-file-system (driver not attached) chosen (driver not attached) openprom (driver not attached) client-services (driver not attached) options, instance #0 aliases (driver not attached) memory (driver not attached) virtual-memory (driver not attached) pci, instance #0 pci, instance #0 ebus, instance #0 auxio (driver not attached) power, instance #0 SUNW,pll (driver not attached) se, instance #0 . . . . <output has \ been truncated>
* System Configuration *
swap files swapfiledevswaploblocksfree
/dev/dsk/c0t0d0sl136,11610489281023008
*
* Tunable Parameters *
2482176maximummemoryallowed in buffer cache(bufhwm)
1898maximumnumberof processes (v.v_proc)
99maximumglobalpriority in sys class \
(MAXCLSYSPRI)
1893 maximum processes per user id (v.y_maxup) 30 auto up date time limit in seconds (NAUTOUP) 25 page stealing low water mark (GPGSLO)
5 fsflush run rate (FSFLUSHR) 25 minimum resident memory for avoiding deadlock \ (MINARMEM) 25 minimum swapable memory for avoiding \ deadlock (MINASMEM)
*.
* Utsname Tunables
5.8release (REL)
unknown node name (NODE) SunOSsystem name (SYS)
Generio_108528-07 version (VER)
* Process Resource Limit Tunables (Current:Maximum) *
Infinity:Infinitycpu time
Infinity:Infinityfile size
Infinity:Infinity. heap size
0x0000000000800000:Infinitystack size
Infinity:Infinitycore file size
0x0000000000000100:0x0000000000000400 file descriptors Infinity:Infinity mapped memory * * Streams Tunables * 9 maximum number of pushes allowed (NSTRPUSH) 65536 maximum stream message size (STRMSGSZ) 1024 max size of ctl part of message (STRCTLSZ) * * IPC Messages module is not loaded * * * IPC Semaphores module is not loaded * * * IPC Shared Memory * 1048576 max shared memory segment size (SHMMAX) 1 min shared memory segment size (SHMMIN). . . \ Output has been truncated>
Наконец, пример информации об устройствах некоторой системы Ultra, выводимой с помощью команды dmesg:
# dmesg Aug 1 12:08:04 ultraS genunix: [ID 540533 kern.notice] \ SunOS Release 5.8 Version Generic_10852S-07 64-bit Aug 1 12:08:04 ultraS genunix: [ID 913631 kern.notice] \ Copyright 1983-2001 Sun Microsystems, Inc. All rights reserved. Aug 1 12:08:04 ultraS genunix: [ID 678236 kern.info] \ Ethernet address = 8:0:20:a2:63:82
Aug 1 12:08:04
ultraS
unix: [ID 389951 kern.info] mem = 131072K
(0x8000000)
Aug 1 12:08:04
ultraS
unix: [ID 930857 kern.info] avail mem = 122142720
Aug 1 12:08:04
ultraS
rootnex: [ID 466748 kern.info] root nexus = Sun \
Ultra 5/10 UPA/PCI \ (UltraSPARC-Hi 270MHz) Aug 1 12:08:04 ultraS
rootnex: [ID 349649 kern.info] pcipsyO at root: \
UPA Oxlf 0x0
Aug 1 12:08:04
ultraS
genunix: [ID 936769 kern.info] pcipsyO is \
/pci@lf, 0
Aug 1 12:08:04 ultraS poipsy: [ID 370704 kern.info] PCI-devioe: \ poi@l,l, simbaO
Aug 1 12:08:04 ultraS genunix: [ID 936769 kern.info] simbaO is \ /poi@If,0/poi@1,1
Aug 1 12:08:04 ultraS poipsy: [ID 370704 kern.info] PCI-devioe: poi@l, simbal
Aug 1 12:08:04 ultraS genunix: [ID 936769 kern.info] simbal is \ /poi@lf,0/poi@l
Aug 1 12:08:20 ultraS simba: [ID 370704 kern.info] PCI-devioe: ide@3, uataO <the output has been trunoated>
Используйте вывод команд prtconf и sysdef для установления того, какие дисковые, ленточные устройства и устройства CD-ROM присоединены к системе. Как показано в предыдущих примерах, после имен экземпляров некоторых устройств выводится сообщение driver not attached (драйвер не подключен). Это сообщение не всегда означает, что драйвер недоступен для данного устройства. Оно скорее означает, что к данному экземпляру устройства в настоящее время не присоединен никакой драйвер, поскольку в данном узле системной иерархии нет никакого устройства либо данное устройство не используется. Операционная система автоматически загружает драйверы, когда требуется получить доступ к конкретному устройству, и выгружает их, когда данное устройство не используется.
Система в процессе запуска определяет, какие устройства присоединены к ней. Вот почему важно, чтобы все периферийные устройства были включены при запуске системы, даже если эти устройства в настоящее время не используются. В процессе запуска ядро операционной системы динамически конфигурирует само себя, загружая в память необходимые модули. Драйверы устройств загружаются тогда, когда в первый раз требуется доступ к соответствующим устройствам, таким как дисковые и ленточные устройства. Этот процесс носит название автоконфигурации, поскольку все модули ядра загружаются автоматически по мере возникновения необходимости в них. Как было описано в главе 2, системный администратор, внося изменения в файл /etc/system, может настроить, каким образом загружаются модули ядра.
Автоконфигурация устройств
Метод автоматической конфигурации обладает множеством преимуществ по сравнению с ручным методом, который применялся в ранних версиях UNIX и предусматривал добавление драйверов устройств к ядру операционной системы вручную, после чего выполнялась повторная компиляция ядра, а затем система должна была быть перезапущена. Теперь, при использовании метода автоконфигурации, системный администратор просто подключает новое устройство к системе и выполняет ее запуск с реконфигурацией.
16.1 Выполнение запуска системы с реконфигурацией
Создайте файл /reconfigure с помощью следующей команды: touch /reconfigure
Файл /reconfigure заставляет программное обеспечение Solaris проверять наличие любых вновь установленных устройств, когда вы в следующий раз включите или запустите вашу систему.
Файл /reconfigure автоматически удаляется в процессе загрузки системы.
Закройте операционную систему, воспользовавшись процедурой закрытия, описанной в главе 1.
Если вам необходимо подключить устройство, выключите электропитание системы и всех периферийных устройств после того, как Solaris будет корректно закрыта.
После того как новое устройство будет подсоединено, восстановите электропитание сначала для периферийного оборудования, а затем для системы. Убедитесь, что данное периферийное устройство было добавлено к системе, попытавшись получить доступ к нему.
Другой способ запуска системы с реконфигурацией - прерывание процесса запуска и ввод команды boot -г в ответ на приглашение среды OpenBoot.
В качестве суперпользователя вы также можете выдать команду reboot -- -г из оболочки UNIX. Строка -- -г передает аргумент —г команде boot.
Предпочтительным является первый из двух описанных методов, поскольку путем создания файла /reconfigure системный администратор может в любое время дать системе указание выполнить запуск с реконфигурацией. Теперь при следующем перезапуске вне зависимости от того, присутствует лн системный администратор возле данной системы или нет, система выполняет запуск с реконфигурацией. Если вы захотите, это событие может произойти в 3 часа пополуночи.
В процессе запуска с реконфигурацией в каталоге /devices создается иерархическая структура устройств для представления их всех, подсоединенных к данной системе. Ядро использует эту структуру для связывания драйверов с соответствующими им устройствами. Кроме того, любые изменения параметров ядра операционной системы, которые были сделаны в файле /etc/system, анализируются на данном этапе.
Метод автоконфигурации обладает следующими преимуществами:
Ф Основная память используется более эффективно, поскольку модули загружаются по мере необходимости.
Ф Отсутствует необходимость реконфигурировать ядро, если к системе добавляются новые устройства. Однако когда вы добавляете новые устройства, такие как диски или накопители на магнитной ленте, система должна быть закрыта прежде, чем вы подсоедините новые аппаратные средства, это делается для того, чтобы исключить повреждение электрических компонентов.
Ф Драйверы могут быть загружены и протестированы без необходимости перестройки ядра и перезапуска системы.
Иногда может случиться так, что вы устанавливаете какое-нибудь новое устройство, соответствующий драйвер которого не поддерживается в Solaris. Всегда консультируйтесь с изготовителем, чтобы быть уверенным в том, что любое устройство, которое вы планируете добавить к вашей системе, имеет поддержку в виде соответствующего драйвера. Если какой-нибудь драйвер не включен в стандартный релиз операционной системы Solaris, изготовитель должен предоставить программное обеспечение, необходимое для того, чтобы данное устройство было правильно инсталлировано, корректно эксплуатировалось и администрировалось.
Драйверы устройств от сторонних разработчиков инсталлируются так же, как и пакеты программного обеспечения, с использованием команды pkgadd. Как минимум, такое программное обеспечение включает в себя собственно драйвер устройства и соответствующий ему конфигурационный (.coni) файл. Конфигурационные (.conf) файлы находятся в каталогах /kernel/drv. В таблице 16.2 описывается состав подкаталогов, находящихся в каталоге /kernel.
Каталог
Описание
drv
Содержит загружаемые драйверы устройств и драйверы псевдоустройств.
exec
Содержит модули, используемые для запуска различных типов исполняемых файлов или сценариев оболочек.
fs
Содержит модули файловых систем, таких как ufs, nfs, proc и тому подобных.
misc
Содержит различные модули, связанные с системой, такие как swapgeneric и ipc.
sched
Содержит планировщики операционной системы.
strmod
Содержит загружаемые модули System V STREAMS.
sys
Содержит загружаемые системные вызовы, такие как системный семафор и системные учетные операции.
Имя экземпляра
Имя экземпляра - используемая ядром аббревиатура для каждого возможного устройства данной системы. Например, на какой-нибудь системе Ultra, выражение dadO представляет имя экземпляра, или образца, дискового накопителя с интерфейсом IDE, a hmeO - это имя экземпляра сетевого интерфейса. Имена экземпляров, или образцов, отображаются в имена физических устройств в файле /etc/pathtdinst. Ниже приведен пример содержимого файла path_to_inst:
more /eto/path_to_inst #
#Caution! This file contains critical kernel state
"/pciglf,0" 0 "pci"
'7pci@ If, 0/pci@ 1,1" 0 "simba"
"/pci@ If, 0/pci@ 1, l/ide8 3" 0 "uata"
'7pci@lf ,0/pci81,l/ide83/sd82,0” 2 "sd"
"/pciSlf ,O/pci81,l/ide83/dad@O,O" 0 "dad"
”/pci@lf,0/pci@l,l/ebus81" 0 "ebus"
'7pci81f, 0/pciei,l/ebus@l/fdthreeei4,3023f0" 0 "fd"
'7pci81f,O/pci@l,l/ebus8l/su@14,3062f8" 1 "su"
7pci@lf, 0/pci@l, l/ebus81/se814,400000" 0 ”se"
"/pci@If,0/pci81,l/ebus81/su014,3083f8" 0 "su"
"/pciglf,0/pci@l,l/ebus81/ecpp@14,3043bc" 0 "ecpp"
"/pcieIf,0/pci@l,l/ebus@1/SUNW,CS4231814,200000" 0 "audiocs"
"/pcielf,0/pci81,l/ebus01/pcwer814,724000" 0 "power"
182-)00
"/pci01f, O/pci01,1/networkgl, 1" 0 "hme" "/pci0If,O/pci01,l/SUNW,m64B02" 0 "m64" "/pciglf ,O/pci01" 1 “simba"
"/pciglf,O/pci@l/pci@l" 0 "pci_pci"
'7pci0 If ,O/pci01/pci01/SUNW, qfe01,1" 1 "qfe" “/pci01f,O/pci0l/pcig1/SUNW,qfe00,1" 0 “qfe" "/pci01f,O/pci0l/pci01/SUNW, qfe03,1" 3 "qfe" "/pci0If,O/pci0l/pci01/SUNW,qfe02,1" 2 "qfe" "/options" 0 "options"
"/pseudo" 0 "pseudo" #
Имена образцов также могут отображаться с помощью команд dmesg, sysdef и prtconf, которые были описаны ранее. Например, вы можете определить отображение некоторого имени экземпляра в имя физического устройства, проанализировав вывод команды dmesg для некоторой системы Ultra, как показано в приведенном ниже примере:
dadO at pcil095,6460 target 0 lun О
dadO is /pci01f,O/pci01,l/ide03/dad0O,O
Если у вас имеется какая-нибудь старая рабочая станция типа SPARCstation с шиной SBus и дисковыми накопителями с интерфейсом SCSI, то аналогичный вывод для дискового накопителя с интерфейсом SCSI может выглядеть следующим образом:
sd3 at espO: target 3 lun 0
sd3 is/icmmu0f,eOOOOOOO/sbus0f,eOOOlOOO,espdma0f,400000/ esp0f,8OOOOO/sd03,0
В первом примере dadO - это имя экземпляра, a/pci@lf,0/pci@l,l/ide@3/dad@0,0 - это имя физического устройства. После того как некоторому устройству было назначено имя экземпляра, оно остается отображенным на данное устройство. Для сохранения единообразия номеров экземпляров после перезапуска, система записывает их в файл /etc/path to inst. Этот файл считывается только в процессе запуска системы, а его обновление выполняется с помощью демона devfsadmd, который описывается позже в настоящем разделе.
Устройства, которые уже существуют в некоторой системе, не переупорядочиваются при добавлении новых устройств. Это правило действует, даже если эти новые устройства добавляются в слоты шины sbus и имеют номера меньшие, чем номера слотов, которые заняты существующими устройствами. Другими словами, когда добавляются новые устройства, то файл /etc/path_to_inst расширяется, а не перезаписывается.
В общем случае системному администратору нет необходимости изменять файл path_to_inst, поскольку он обслуживается непосредственно системой. Однако системный администратор может изменить назначенные номера экземпляров посредством редактирования этого файла и выполнения запуска системы с реконфигурацией. При этом следует иметь в виду, что любые изменения, сделанные в рассматриваемом файле, будут потеряны, если команда devfsadm будет запущена до выполнения перезапуска системы.
Не удаляйте файл pathjojnst; система не сможет быть запущена без этого файла. Система опирается на информацию, найденную в этом файле, для обнаружения устройств корневой файлоаой системы, файловой системы /usr и области своппинга. Вносите изменения в рассматриваемый файл, ■только тщательно проанализировав их.
В операционной системе Solaris 8 вы можете добавлять новые устройства к системе без необходимости ее перезагрузки. Все это обрабатывается демоном devfsadmd, который прозрачным образом строит необходимые конфигурационные элементы. До появления релиза 11/99 операционной системы Solaris 7 вам необходимо было запускать несколько инструментов администрирования devfs, таких как drvconfig, disks, tapes, ports и devlinks, для добавления нового устройства и создания необходимых элементов в каталогах /dev и /devices, позволяющих операционной среде Solaris получить доступ к новому устройству. Эти инструменты по-прежнему являются доступными, однако только для целей совместимости. Теперь drvconfig и другие генераторы ссылок представляют собой символические ссылки на утилиту devfsadm. Более того, эти старые команды не знают о существовании устройств, подключаемых без выключения системы, и они не являются достаточно гибкими для устройств с многочисленными экземплярами. Теперь вместо всех этих команд должна применяться команда devfsadm; однако поскольку devfsadmd - демон утилиты devfsadm - автоматически обнаруживает изменения в конфигурации устройств, нет никакой необходимости запускать эту команду интерактивно.
Если вы не можете запустить систему с предназначенного для этого диска из-за наличия какой- нибудь проблемы с файлом /etc/path_to_inst, то должны запуститься с диска CD-ROM (команда boot -sw cdrom). Затем необходимо скопировать файл /etc/path_tojnst, находящийся на CD-ROM, в файл /etc/path_to_inst на диске для запуска. Для этого запустите систему с диска CD-ROM посредством ввода команды boot -sw cdrom в ответ на приглашение OpenBoot. Затем смонтируйте данный диск для запуска к точке монтирования la. Скопируйте файл /etc/path_to_inst в файл /а/etc/ path_tojnst. Если все еще не можете выполнить запуск системы, значит, данная проблема лежит глубже, чем просто в файле /etc/path_to_inst.
Как пример использования команды devfsadm рассмотрим ситуацию, когда система была запущена, однако не было включено электропитание на приводе CD-ROM или на ленточном устройстве. В процессе запуска система не обнаружила данные устройства; следовательно, их драйверы не были инсталлированы. Это можно проверить посредством выдачи команды sysdef, проанализировав затем ее вывод для устройства sd6 - этот целевой идентификатор для интерфейса SCSI обычно используется для внешнего привода CD-ROM:
sd, instance #6 (driver not attached)
Чтобы получить доступ к данному приводу CD-ROM, вы должны выполнить останов системы, включить электропитание привода CD-ROM и повторно выполнить запуск системы, либо вы можете просто включить электропитание привода CD-ROM, а затем выдать в приглашении командной строки следующую команду:
devfsadm
Если вы теперь наберете команду sysdef, то сможете увидеть следующий вывод для данного привода CD-ROM:
sd, instance #6
. ПРИМЕЧАНИЕ
Вот два термина, которые часто меняют местами (и путают между собой) - это hot-pluggable и hot- swappable. Технология hot-pluggable позволяет подсоединять и отсоединять периферийные устройства или другие компоненты без перезагрузки операционной системы. Динамическая реконфигурация, которая доступна на некоторых серверах SPARC, позволяет провайдеру какой-нибудь службы удалять и заменять hot-pluggable платы ввода-вывода на работающей системе, тем самым исключая потери времени на выполнение перезагрузки. Кроме того, если сменная плата не доступна
мгновенно, то системный администратор может воспользоваться динамической реконфигурацией для закрытия аварийной платы, а тем временем позволить продолжить эксплуатацию данной системы. Технология hot-swappable позволяет подсоединять и отсоединять периферийные устройства или другие компоненты без закрытия аппаратных средств, однако обычно при этом требуется перезагрузка операционной системы.
Главные и дополнительные номера устройств
Каждое устройство, имеет назначенные ему главный и дополнительный номера. Эти номера идентифицируют для ядра операционной системы корректное местоположение данного устройства и его драйвера. Эти номера используются операционной системой для осуществления привязки корректного драйвера устройства всякий раз, когда открывается какой-нибудь файл физического устройства, соответствующий одному из устройств, управляемых данным драйвером. Главный номер устройства обозначает общий класс устройств, такой как диск, накопитель на магнитной ленте или последовательный канал связи. Дополнительный номер устройства обозначает конкретного представителя данного класса устройств. Все устройства, которые управляются данным драйвером, содержат уникальный дополнительный номер устройства. Некоторые драйверы (элементы программного обеспечения, установленные таким образом, что они выглядят подобно устройствам) псевдоустройств создают новые дополнительные номера устройств по требованию. Совместно главный и дополнительный номера устройств однозначно определяют некоторое устройство и его драйвер.
При просмотре с использованием команды Is -1 для файлов физических устройств создается уникальный вывод, как показано в приведенном ниже примере:
cd /devices/iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f,800000 Is -1 sd@0
Система отвечает следующим образом:
brw-r
— !
root sys 32 , 0
Jul
21
07:44
sd@ 0,0: a
crw-r
— !
root sys 32, 0
Jul
21
07:44
sd@ 0,0 : a, raw
brw-r
— i
root sys 32, 1
Jul
21
07:44
sd@0,0:b
crw-r
— i
root sys 32, 1
Aug
16
06:15
sd@0,0:b,raw
brw-r
— i
root sys 32, 2
Jul
21
07:44
sd@ 0,0 : c
crw-r---
— !
root sys 32, 2
Jul
21
07:44
sd@0,0 : c,raw
brw-r
— 1
root sys 32, 3
Jul
21
07:44
sd@0,0:d
crw-r---
— x
root sys 32, 3
Jul
21
07:44
sd@ 0,0 : d, raw
brw-r
— 1
root sys 32 , 4
Jul
21
07:44
sd@ 0,0 : e
crw-r
— !
root sys 32, 4
Jul
21
07:44
sd@0,0:e,raw
brw-r
— J
root sys 32, 5
Jul
21
07:44
sd@ 0,0: f
crw-r---
.-- i
root sys 32, 5
Jul
21
07:44
sd@ 0,0 : f, raw
brw-r
— !
root sys 32 , 6
Jul
21
07:44
sd@0,0:g
crw-r
-- i
root sys 32 , 6
Aug
16
06:13
sd@ 0,0 : g, raw
brw-r
— 1
root sys 32, 7
Jul
21
07:44
sd@0,0:h
crw-r
— 1
root sys 32, 7
Jul
21
07:44
sd@0,0:h,raw
Этот расширенный листинг включает столбцы, которые отображают главные и дополнительные номера каждого устройства. Драйвер sd управляет всеми теми устройствами, перечисленными в данном примере, чей главный номер равен 32. Дополнительные номера перечисляются после запятой.
В процессе формирования каталога /devices демон devfsadmd назначает каждому устройству какой-нибудь главный номер, используя для этого таблицу отображения имен в номера, которая хранится в файле /etc/name_to_major. Этот файл обслуживается системой, документация на него отсутствует. Ниже приведен пример файла /etc/name_to_major: moire /etc/name_to_ma j or cn О rootnex 1 pseudo 2 ip 3 logindmux 4 icmp 5 fas 6 hme 7 p9000 8 p9100 9 sp 10 clone 11 sad 12 nun 13 iwscn 14 wc 15 conskbd 16 consms 17 ipdcm 18 dump 19 se 20 log 21.
sy 22 ptm 23 pts 24 ptc 25 ptsl 26 bwtwo 27 audio 28 zs 29 cgthree 30 cgtwo 31 sd 32 st 33
envctrl 131 cvc 132 cvcredir 133 eide 134 hd 135 tadbat 136
tsl02 137 simba 138 uata 139 dad 140 atapicd 141
При создании дополнительных элементов для устройств демон devfsadmd использует информацию, которая помещается драйвером устройства в узле dev_info. Полномочия и информация о принадлежности сохраняются в файле /etc/minor_perm.
Имя логического устройства
Завершающая стадия процесса автоконфигурации включает создание имени логического устройства для отражения нового набора устройств в данной системе. Имя логического устройства представляет собой некоторую ссылку из каталога /dev к имени физического устройства, находящегося в каталоге /devices. Чтобы просмотреть список имен логических устройств для дисков, подсоединенных к вашей системе, сформируйте расширенный листинг содержимого каталога /dev/dsk:
Is -1 /dev/dsk total 48 Irwxrwxrwx 1 root root 84 Jul 21 07:45 cOtOdOsO -> \ ../../devices/iommu0f,eOOOOOOO/sbus0f,eOOOlOOO/espdma0f,4OOOOO/esp0f, \ 8OOOOO/sd8O,0:a Irwxrwxrwx 1 root root 84 Jul 21 07:45 cOtOdOsl -> \ ../../devices/iommuGf,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f, \ 800000/sd@0,0:b Irwxrwxrwx 1 root root 84 Jul 21 07:45 c0t0d0s2 -> \ ../../devices/iommugf,eOOOOOOO/sbus0f,e0001000/espdma@f,400000/espef, \ 800000/sd@0,0:c Irwxrwxrwx 1 root root 84 Jul 21 07:45 c0t0d0s3 -> \ . ./. ./devices/ioznmugf ,e0000000/sbus@f ,e0001000/espdma@f ,400000/espgf, \ 800000/sd@0,0:d Irwxrwxrwx 1 root root 84 Jul 21 07:45 c0t0d0s4 -> \ ../../devices/iommu@f,eOOOOOOO/sbus0f,eOOOlOOO/espdma@f,400000/esp0f, \ 800000/sd@0,0:e Irwxrwxrwx 1 root root 84 Jul 21 07:45 c0t0d0s5 -> \ . . j . . /devices/ionunu@f ,e0000000/sbus@f ,e0001000/espdma@f, 400000/esp@f, \ 800000/sde0,0:f
Во второй строке вывода, сформированной командой Is -1, обратите внимание на то, что имя логического устройства cOtOdOsO ссылается на следующее имя физического устройства:
. . /../devices/iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/ esp@f,\ 800000/sd@0,0:a
Имя логического устройства - это имя, которое системный администратор использует для ссылки на конкретное устройство при выполнении различных команд файловых
Глава 16. Администрирование устройств и управление дисками 531
систем Solaris. Например, при запуске команды mount используйте имя логического устройства /dev/dsk/c0t0d0s7 для монтирования файловой системы /home:
mount /dev/dsk/c0t0d0s7 /home
Файлы логических устройств из каталога /dev символически ссылаются на файлы физических устройств из каталога /devices. Имена логических устройств применяются для организации доступа к дисковым устройствам в следующих случаях:
ф ф ф
Добавление нового диска к системе.
Перемещение диска из одной системы в другую.
Организация доступа (или монтирование) к некоторой файловой системе, находящейся на локальном диске.
ф ф
Выполнение резервного копирования некоторой локальной файловой системы.
Восстановление файловой системы.
Логические устройства организованы в подкаталоги, находящиеся в каталоге /dev, по их типам устройств, как показано в таблице 16.3.
Тй^пица 16.3 Каталоги устройств-..j
Каталог
Описание содержимого
/dev/dsk
Блочный интерфейс к дисковым устройствам
/dev/rdsk
Низкоуровневый или символьный интерфейс к дисковым устройствам
/dev/rmt
Ленточные устройства
/dev/term
Устройства последовательных линий передачи данных
/dev/cua
Модемы для коммутируемых (по номеру) линий связи
/dev/pts
/dev/fbs
Псевдотерминалы
Буферы кадров
/dev/sad
Административный драйвер STREAMS
Блочные и низкоуровневые устройства
Дисковые накопители имеют элемент как в каталоге /dev/dsk, так и в каталоге /dev/ rdsk. Каталог /dsk ссылается на блочно-специальный файл, или файл буферизованного устройства, тогда как каталог /rdsk ссылается на символьно-специальный файл, или файл низкоуровневого устройства. Буква "г" в обозначении символизирует слово "raw" ("низкоуровневое"). Если вы не знакомы с этими устройствами, обратитесь к главе 3, в которой описываются блочные и символьные устройства.
Каталог /dev/dsk содержит элементы, соответствующие дискам, для узлов блочных устройств в каталоге /devices, как показано в следующей команде:
Is -1 /dev/dsk total 48 Irwxrwxrwx 1 root root 84 Jul 21 07:45 cOtOdOsO -> /devices/iommu@f,e0000000/sbus@f,e0001000/espdma@f, 400000/esp@f, \ 800000/sd@0,0:a Irwxrwxrwx 1 root root 84 Jul 21 07:45 cOtOdOsl -> /devices/iommu@f,e0000000/sbus@f,e0001000/espdma@f,400000/esp@f, \
800000/sd@0,0:b
Irwxrwxrwx 1 root root 84 Jul 21 07:45 c0t0d0s2 ->
/devices/iommuef,e0000000/sbus6 f,eOOOlOOO/espdmaef,400000/espef, \
800000/sdB0,0:c
Каталог /dev/rdsk содержит элементы, соответствующие дискам, для узлов символьных устройств в каталоге /devices, как показано в следующей команде:
Is -1 /dev/rdsk Irwxrwxrwx 1 root root 88 Jul 21 07:45 cOtOdOsO -> /devices/iommuef,еООООООО/sbusef,eOOOlOOO/espdmaef,400000/espBf, \ 800000/sde0,0:a,raw Irwxrwxrwx 1 root root 88 Jul 21 07:45 cOtOdOsl -> /devices/iommuef,еООООООО/sbusef,еОООЮОО/espdmaef,400000/espef, \ 800000/sde0,0:b,raw Irwxrwxrwx 1 root root 88 Jul 21 07:45 c0t0d0s2 -> /devices/iommuef,еООООООО/sbusef,eOOOlOOO/espdmaef,400000/espef, \ 800000/sde0,0:c,raw
Управление виртуальными томами
Каждая часть (slice) стандартного дискового устройства имеет свои собственные физическое и логическое устройства. Как вы помните, в главе 6 говорилось о том, что файловая система не может охватывать более одной части диска. Другими словами, максимальный размер файловой системы ограничен размером одного диска. На большом сервере с несколькими дисковыми накопителями стандартные методы разбивки дисков являются неадекватными и неэффективными. Такое ограничение имело место во всех UNIX-системах до тех пор, пока не появились виртуальные диски, которые еще называются виртуальными томами. Для преодоления указанного ограничения - одна часть диска на одну файловую систему - существуют пакеты управления виртуальными томами, позволяющие создавать такие структуры виртуальных томов, в которых единственная файловая система может включать практически неограниченное количество дисков или разделов. Принципиальной особенностью таких пакетов управления виртуальными томами является то, что они прозрачным образом представляют некоторый виртуальный том, который может состоять из множества разделов физических дисков. Другими словами, группируются дисковые разделы по нескольким дискам, чтобы выглядеть с точки зрения операционной системы как один единственный том.
Каждая разновидность UNIX имеет свои собственные методы для создания виртуальных томов. Фирма Sun предоставляет для управления виртуальными томами два пакета программного обеспечения: Solstice DiskSuite и Sun StorEdge Volume Manager. Пакет DiskSuite применяется, главным образом, на небольших серверах и рабочих станциях, тогда как программный продукт StorEdge используется на более крупных серверах масштаба предприятия для управления дисковыми массивами StorEdge фирмы Sun.
Solstice DiskSuite
Пакет программного обеспечения Solstice DiskSuite поставляется вместе с операционной системой Solaris 8 и использует виртуальные диски, называемые метаустройствами, для управления физическими дисками и связанными с ними данными. С точки зрения приложения метаустройство в плане функций идентично некоторому физическому диску. Пакет DiskSuite использует специальный драйвер, называемый драйвером метадиска, для координации операций ввода-вывода на физические устройства и метаустройства и с них, позволяя приложениям обращаться с метаустройством так же, как и с физическим устройством. Данный тип драйвера еще называется логическим драйвером, или псевдодрайвером.
Метаустройства пакета DiskSuite формируются из стандартных частей диска, которые, в свою очередь, создаются с помощью утилиты format. Используя утилиты командной строки пакета DiskSuite или его графический интерфейс пользователя под названием DiskSuite Tool, системный администратор создает каждое устройство путем перетаскивания частей диска на один из трех типов объектов метаустройств: собственно метаустройства, репликации (точные копии) состояний баз данных и динамически распределяемые области "горячего" резервирования. Эти объекты описываются в таблице 16.4.
Таблица 16.4 Объекты пакета DiskSuite .ул" ■
МетаустройствоМетаустройствоОбъект Описание
Метаустройство
Метаустройство
База данных состояний метаустройств
Это база данных, которая сохраняет информацию о состоянии конфигурации пакета DiskSuite. Пакет DiskSuite не может функционировать до тех пор, пока вы не создадите репликации баз данных состояний метаустройств.
Метаустройство - группа физических частей диска, которая с точки зрения операционной системы выглядит как единственное логическое устройство. Метаустройство применяется для увеличения емкости хранения данных и повышения их доступности.
Динамически распределяемая область "горячего" резервирования
Это некоторый набор частей дисков (областей "горячего" резервирования), зарезервированных для обеспечения автоматического замещения в случае отказа какой-нибудь части либо в зеркальной копии, либо в метаустройстве RAIDS. Динамически распределяемые области "горячего" резервирования применяются для повышения доступности данных.
Все типы метаустройств, которые вы можете создавать - сцепления, расслоения, объединенные расслоения, зеркальные метаустройства, метаустройства RAID5 и метаустройства под названием trans - описываются в таблице 16.5.
ОписаниеОписаниеТёШйЦа 16.5 Типы мётаустройетв
Описание
Описание
Сцепление
Сцепления работают практически точно так же, как команда UNIX под названием cat, которая применяется для конкатенации двух или нескольких файлов в один файл большего размера. Если разделы сцеплены, то адресация блоков компонентов данного метаустройства выполняется последовательно от одного компонента к другому. Файловая система может использовать данное сцепление (данную конкатенацию) как единое целое.
Метаустройство
Простое метаустройство
Может быть использовано либо непосредственно, либо в качестве базового, конструктивного элемента. Существует три типа простых метаустройств: расслоения, сцепления и объединенные расслоения.
Продолжение таблицы 16.5
Метаустройство
Описание
Расслоение
Расслоение аналогично сцеплению за исключением того, что адресация блоков компонентов данного метаустройства выполняется с чередованием компонентов, а не последовательно. Расслоение используется для повышения производительности системы. Если данные разделены между несколькими дисками, то одновременно несколько контроллеров дисков могут получать доступ к данным.
Сцепленное расслоение
Представляет собой некоторое расслоенное метаустройство, которое наращивается посредством сцепления дополнительных расслоенных частей дисков.
Зеркальное метвустройство
Зеркальное метаустройстао формируется из одного или нескольких простых метаустройств, которые в данном случае называются подзеркалами. Зеркальное метаустройстао реплицирует все операции записи сначала на одно логическое устройство (оно называется зеркалом), а затем на несколько устройств (они называются подзеркалами). Такой подход обеспечивает избыточность данных на случай возникновения отказа диска или аппаратных средств системы.
Метаустройство RAIDS
Это метаустройство выполняет расслоение данных между несколькими дисками для достижения более высокой производительности. В дополнение к расслоению метаустройство RAIDS выполняет репликацию данных путем использования котроля четности. В случае потери информации эти данные могут быть регенерированы с использованием доступных данных и информации четности. Метаустройство RAIDS формируется из нескольких честей диске. Определенная часть дискового пространства выделяется для хранения информации четности и распределяется между всеми частями в данном метаустройстве RAIDS. Расслоенное метаустройство имеет более высокую производительность, чем метаустройство RAIDS, однако оно не обеспечивает защиту данных (избыточность).
Метаустройство trans
Используется для регистрации какой-нибудь файловой системы UFS. Это метаустройство формируется из главного устройства и устройства регистрации. Оба эти устройства могут представлять собой часть диска, простое метаустройство, зеркальное метаустройство или метаустройство RAIDS. Главное устройство содержит файловую систему UFS.
Метаустройства могут обеспечить повышенную емкость, более высокую доступность данных и лучшую производительность. Кроме того, "горячее" резервирование, которое обеспечивает пакет DiskSuite, может предоставить дополнительный уровень доступности данных для зеркальных метаустройств и метаустройств RAID5. Динамически распределяемая область "горячего" резервирования (a hot spare pool) представляет собой некоторый набор частей дисков, зарезервированных для обеспечения автоматического замещения в случае отказа какой-нибудь части либо в подзеркале, либо в метаустройстве RAID5.
После того как вы установили вашу конфигурацию, можно воспользоваться пакетом DiskSuite для формирования отчета о ее функционировании. Вы также можете воспользоваться демоном генерирования внутренних прерываний SNMP пакета DiskSuite, чтобы работать с консолью сетевого мониторинга и автоматически принимать сообщения об ошибках от пакета DiskSuite.
Драйвер метаустройства реализуется в виде некоторого набора загружаемых драйверов псевдоустройств. Этот драйвер применяет другие драйверы физических устройств для передачи запросов ввода-вывода к используемым устройствам и от них. Драйвер метаустройства находится между интерфейсом файловой системы и интерфейсом драйвера уст-
ройства, выступая в роли интерпретатора информации между этими интерфейсами. После прохождения через драйвер метаустройства информация принимается в ожидаемой форме как файловой системой, так и драйверами устройств. Метаустройство представляет собой загружаемый драйвер устройства, оно обладает всеми теми же характеристиками, что и любой другой драйвер дискового устройства.
Стандартное имя метаустройства начинается с символа "d", за которым следует некоторый номер. По умолчанию существует 128 уникальных метаустройств с номерами в диапазоне от 0 до 127. Дополнительные метаустройства могут быть добавлены к ядру посредством редактирования файла /kernel/drv/md.conf. Блочное метаустройство получает доступ к диску с использованием обычного механизма буферизации, реализованного в операционной системе. Существует также символьное, или низкоуровневое, устройство, которое при чтении или записи проводит прямую передачу данных между диском и буфером пользователя. Имена блочных устройств находятся в каталоге /dev/md/dsk, а имена низкоуровневых устройств - в каталоге /dev/md/rdsk. Далее приведены примеры имен блочного и низкоуровневого логических устройств для метаустройства dO:
/dev/md/dsk/ao - блочное метаустройство dO
/dev/md/rdsk/do - низкоуровневое метаустройство dO
StorEdge Volume Manager
Пакет программного обеспечения StorEdge Volume Manager (менеджер томов StorEdge) от фирмы Sun, называемый также Veritas Volume Manager, представляет собой самостоятельный пакет, который стандартно не входит в поставку Solaris 8 и приобретается отдельно у фирмы Sun. Программный продукт StorEdge применяется для управления большими дисковыми массивами StorEdge от фирмы Sun, он также известен под названием Veritas Volume Manager. Veritas Volume Manager - пакет программного обеспечения от сторонних разработчиков, лицензированный фирмой Sun. Этот пакет широко применяется для выполнения функций управления виртуальными томами на больших системах, таких как Sun, Sequent и HP. Пакет Veritas Volume Manager существенно более устойчив по сравнению с пакетом DiskSuite и предоставляет инструменты, которые идентифицируют и анализируют шаблоны доступа к устройствам хранения данных таким образом, который позволяет балансировать нагрузкой ввода-вывода между сложными конфигурациями дисков. Кроме того, пакет Veritas Volume Manager создает файловую систему Veritas, которая быстро становится индустриальным стандартом для систем, использующих виртуальные тома, и создает основу для других технологий повышения качества, таких как среды SAN (Storage Area Network - сеть областей хранения), для кластеризации и обработки отказов, автоматического управления, резервного копирования и дистанционного управления, основанного на применении браузера.
Пакет программного обеспечения StorEdge Volume Manager представляет собой сложный продукт, который может потребовать для детального описания гораздо больше места, чем занимает настоящая глава. Однако здесь будет сделано введение в пакет StorEdge Volume Manager и представлены некоторые термины, о которых вам, возможно, потребуется знать.
Менеджер томов создает виртуальные устройства, называемые томами, поверх физических дисков. Физический диск представляет собой базовое устройство хранения данных (носитель информации), которое может находиться, а может и не находиться под управлением менеджера томов. Доступ к физическому диску может быть организован с использованием некоторого имени устройства, такого как /dev/rdsk/c#t#d#. Физический диск, как было показано в главе 3, может быть разбит на одну или несколько частей.
Тома являются доступными для файловых систем Solaris, баз данных или других приложений точно таким же образом, каким может быть организован доступ к разделам физического диска. Тома и их виртуальные компоненты называются объектами менеджера томов.
Существует несколько объектов менеджера томов, которые он использует для выполнения задач управления дисками (см. таблицу 16.6).
Диск VMГруппа дисковСубдискР!ех (сплетение)ТомДиск VMГруппа дисковСубдискР!ех (сплетение)Том
Диск VM
Группа дисков
Субдиск
Р!ех (сплетение)
Том
Диск VM
Группа дисков
Субдиск
Р!ех (сплетение)
Том
Имя объектаОписание
Это непрерывное дисковое пространство, из которого менеджер томов выделяет дисковую память. Каждый диск VM соответствует, по меньшей мере, одному разделу. Понятие диска VM обычно относится к какому-нибудь физическому диску в данном дисковом массиве.
Это некоторый набор дисков VM, которые совместно используют общую конфигурацию. По умолчанию группой дисков является rootdg (группа корневого диска). При необходимости могут быть созданы другие группы дисков. Тома создаются внутри некоторой группы дисков; заданный том должен быть сконфигурирован из дисков, принадлежащих к одной и той же группе. Группы дисков позволяют администратору объединять диски в логические наборы для удобства их администрирования.
Набор непрерывных дисковых блоков; субдиски представляют собой базовые элементы, с помощью которых менеджер томов выделяет дисковое пространство. Диск VM может быть разбит на один или несколько субдисков.
Также называется зеркалом и может состоять из одного или нескольких субдисков, которые находятся на одном или нескольких дисках.
Виртуальное дисковое устройство, которое предлагается приложениям, базам данных и файловым системам. Том подобен разделу физического диска, однако он не имеет физических ограничений, присущих разделу физического диска. Тома создаются внутри некоторой группы дисков; конкретный том должен быть сконфигурирован из дисков, принадлежащих к одной и той же группе.
С некоторым томом ассоциируется несколько сплетений (обычно два) для формирования рабочего зеркала. Кроме того, обычной практикой является создание сплетения, в котором воплощены расслоения и сцепления.
Объектами менеджера томов можно манипулировать различными способами для оптимизации производительности, обеспечения избыточности данных, для выполнения резервного копирования или других задач администрирования на одном или нескольких физических дисках без прерывания приложений. В результате повышается доступность данных и пропускная способность дисковой подсистемы.
Пакет программного обеспечения StorEdge Volume Manager управляет дисковым пространством посредством использования непрерывных секторов. Это приложение форматирует диски всего на две части: часть 3 и часть 4. Часть 3 называется частной областью, а часть 4 представляет собой некоторую общедоступную область. Часть 3 поддерживает информацию об отображении виртуальных устройств на физические, тогда как часть 4 предоставляет дисковое пространство для создания виртуальных устройств. Преимущество данного подхода заключается в том, что практически отсутствуют ограничения на количество субдисков, которое вы можете создать на одном дисковом накопителе. В стандартной среде операционной
системы Solaris существует ограничение на количество разделов на одном диске - не более восьми.
Имена блочных устройств для виртуальных томов, созданных с использованием StorEdge Volume Manager, находятся в каталоге ldeNNxldskJ<disk_group>l<volume_name>. а имена низкоуровневых устройств - в каталоге ldevlvdrdskJ<disk_group>l<volume_name>. Далее приведены примеры имен блочного и низкоуровневого логических устройств:
/dev/vx/dsk/apps/vol01 - блочное устройство /dev/vx/rdsk/apps/vol01 - низкоуровневое устройство
Резюме
В настоящей главе обсуждались различные драйверы и имена устройств, которые применяются в Solaris 8. Описаны команды и утилиты Solaris, используемые для получения информации об этих устройствах и драйверах. В дополнение к устройствам, которые стандартно поставляются с операционной системой Solaris, в настоящей главе также описываются управление виртуальными томами и дополнительные функции, предоставляемые этими технологиями.
Драйверы устройств обсуждаются в нескольких главах настоящей книги, поскольку они используются в работе системного администратора во многих аспектах. Устройства упоминаются, когда мы инсталлируем и загружаем операционную систему (эти процессы описаны в главах 2 и 3), создаем и монтируем файловые системы (этому посвящена глава 6), устанавливаем принтеры (этот вопрос обсуждался в главе 10), а также при локализации общих проблем в работе системы. Очень важно, чтобы вы хорошо понимали, как конфигурируются и именуются драйверы устройств в операционной системе Solaris.
Следующая глава посвящена описанию сетевых файловых систем (NFS). Как уже отмечалось ранее, операционная система Solaris была спроектирована для эксплуатации именно в сетевой среде. Фирма Sun обобщает это положение в своей рекламной формуле "Сеть - это компьютер ". Многие администраторы соглашаются с тем, что операционная система Solaris без сети подобна рыбе, выброшенной на берег.
Ключевые термины
Драйвер устройства
Иерархия устройств
Автоконфигурация устройств
Запуск с реконфигурацией
Физическое устройство
Имя экземпляра
Логическое устройство
Главный номер устройства
Дополнительный номер устройства
Блочное устройство
Символьное устройство
Виртуальный том
Метаустройство (необходимо знать все типы метаустройств)
Метадиск
База данных состояний метаустройств
Динамически распределяемая область "горячего" резервирования
Объект менеджера томов (необходимо знать все типы объектов)
Технология hot-pluggable
Технология hot-swappable
Примените ваши знания
Автоконфигурация устройств
Настоящее упражнение демонстрирует три различных метода, которыми вы можете воспользоваться при выполнении загрузки с реконфигурацией для того, чтобы ядро распознало новые устройства, присоединенные к системе.
Оцениваемое время: 15 минут
В ответ на приглашение среды OpenBoot введите следующую команду:
boot -г
Система выполняет загрузку с реконфигурацией, и на экране появляется приглашение регистрации..
Зарегистрируйтесь в системе в качестве суперпользователя и создайте пустой файл /reconfigure:
touch /reconfigure
Теперь перезагрузите систему следующим образом:
/usr/sbin/shutdown -у -gO -i6
Система выполняет загрузку с реконфигурацией, и на экране появляется приглашение регистрации.
Зарегистрируйтесь в системе как суперпользователь и выдайте следующую команду:
reboot -- -г
Система выполняет загрузку с реконфигурацией, и на экране появляется приглашение регистрации.
Отображение информации об устройствах
При выполнении настоящего упражнения вам предстоит воспользоваться несколькими командами Solaris для отображения информации об устройствах, подсоединенных к вашей системе..
Оцениваемое время: 5 минут■
Воспользуйтесь командой dmesg для определения отображения некоторого имени экземпляра на имя физического устройства. Наберите dmesg.
Глава 16. Администрирование устройств иуправление дисками ^5^ Примените ваши знания
В самом выводе этой команды идентифицируйте имя экземпляра, назначенное каждому из дисковых накопителей и периферийных устройств, подсоединенных к вашей системе. В системе, имеющей диски с интерфейсом IDE, вы увидите элементы, подобные приведенным:
sdO is /pcielf,0/pciei,l/idee3/sde2,0
В системе, имеющей диски с интерфейсом SCSI, вы увидите нечто, подобное приведенному:
sdO is /ionmu0f,e0000000/sbus6f,e0001000/espdma8f,4OOOOO/esp6f, \ 800000/sde0,0
Чтобы увидеть, какие драйверы присоединены к именам экземпляров, идентифицированным на предшествующим этапе, воспользуйтесь командой prtconf. Вы должны увидеть элемент, подобный приведенному:
sd, instance #0
Добавление нового устройства
При прохождении настоящего упражнения вам предстоит воспользоваться командой devfsadm, чтобы добавить какое-нибудь новое устройство, не выполняя при этом перезагрузку системы.
Оцениваемое время: 15 минут
Подсоедините к системе накопитель на магнитной ленте, дисковый накопитель или привод CD-ROM и выполните перезагрузку с реконфигурацией.
Зарегистрируйтесь в системе и выдайте команду dmesg, чтобы убедиться, что данное устройство было инсталлировано. Если вы добавили диск с интерфейсом SCSI, то должны увидеть объект, подобный приведенному:
sdO is /icmmuef,e0000000/sbusef,e0001000/espdmaef,400000/esp@f, \ 800000/sde0,0
Чтобы убедиться, что драйвер присоединен, выдайте команду prtconf.
Остановите систему, выключите новое устройство и загрузите систему повторно с помощью команды boot. Не выполняйте перезагрузку с реконфигурацией.
Выдайте команду dmesg. Данное устройство должно по-прежнему присутствовать в выходном листинге этой команды.
Выдайте команду prtconf. Она должна отобразить сообщение (driver not attached) после имени образца данного устройства.
Выдайте команду devfsadm.
Выдайте еще раз команду prtconf. Сообщение (device not attached) после имени образца данного устройства должно исчезнуть, и устройство теперь доступно для использования.
Обзорные вопросы
Что из перечисленного представляет сокращенное имя (аббревиатуру), принятое ядром для каждого возможного устройства в данной системе?
Имя экземпляра
Логическое устройство
Имя физического устройства
Имя псевдоустройства
Файлы физических устройств находятся в:
A. /kernel/drv
/dev
/platform
D. /devices
Что из перечисленного отображает информацию о конфигурации устройств, включая аппаратные средства системы, псевдоустройства, загружаемые модули и выбранные параметры ядра операционной системы?
messages
prtconf
dmesg
sysdef
Когда вы видите сообщение driver not attached, то это означает, что:
Устройство для данного драйвера не подсоединено.
Драйвер для данного устройства не доступен.
К данному экземпляру устройства в настоящее время не присоединен никакой драйвер, поскольку в данном узле системной иерархии нет никакого устройства либо данное устройство не используется.
Для присоединения данного устройства ядро операционной системы должно быть реконфигурировано.
Конфигурационные файлы находятся в:
A. /kernel/drv
/dev
/devices
/platform
Что из перечисленного ниже отображается в некоторое имя физического устройства в файле /etc/path_to_inst?
Логические устройства.
Имена экземпляров
Физические устройства
Псевдоустройство
Что вы можете сделать для того, чтобы определить отображение какого-нибудь имени экземпляра в некоторое имя физического устройства? Выберите все варианты.
Просмотреть выходную информацию команды dmesg.
Просмотреть файл /var/adm/messages.
Глава 16, Администрирование устройств и управление дисками ЭЧ1 Примените ваши знания
Просмотреть выходную информацию команды sysdef.
Просмотреть выходную информацию команды prtconf.
В каком из перечисленных ниже файлов находится информация, на которую опирается система для обнаружения устройств корневой файловой системы, файловой системы /usr и области подкачки?
A. /etc/vfstab
pathtoinst
ядро
D. /kernel/drv
Е. /etc/driver
Какая из перечисленных ниже команд добавляет новый драйвер устройства к системе?
A. boot -г
drvconfig
devfsadm
D. devlinks
Какая из перечисленных ниже команд используется для того, чтобы проинформировать систему о вновь инсталлированных драйверах устройств?
A. devlinks
drvconfig
adddrv
D. devfsadm
Какая из перечисленных ниже утилит несет ответственность за конфигурирование каталога/devices с целью отражения дерева dev_info, которое хранится в ядре операционной системы?
' A. drvconfig
В. adddrv
С. devfsadm
D. devlinks
Чтобы получить доступ к приводу CD-ROM, вы должны выполнить останов системы, включить электропитание привода CD-ROM и повторно выполнить запуск системы. Какую команду вы можете выдать в командной строке в качестве альтернативы?
drvconfig cdrom
add drv cdrom
devfsadm
drvconfig -d
Что из перечисленного обозначает общий класс устройств, такой как диск, накопитель на магнитной ленте или последовательный канал связи, для некоторого драйвера устройства?
к. Дополнительный номер устройства
Главный номер устройства
Дерево устройств
Псевдоустройство
Дополнительный номер устройства:
обозначает общий класс устройств, такой как диск, накопитель на магнитной ленте или последовательный канал связи.
обозначает конкретного представителя данного класса устройств.
однозначно определяет устройство и соответствующий ему драйвер.
указывает ядру корректное местоположение устройства и соответствующего ему драйвера.
На что из перечисленного ниже символически ссылаются файлы логических устройств в каталоге /dev?
Имена экземпляров
Файлы псевдоустройств
Полные имена маршрутов устройств
Файлы физических устройств
Что из перечисленного ниже представляет собой ссылку из каталога /dev на имя физического устройства, которое находится в каталоге /devices?
Полное имя маршрута устройства
Имя псевдоустройства
Имя логического устройства
Имя экземпляра
Какой это тип устройства - /dev/dsk/c0t0d0s7?
Имя логического устройства
Имя псевдоустройства
Полное имя маршрута устройства
Имя экземпляра-
Какая из перечисленных ниже команд используется для создания элементов в каталоге /dev для дисковых накопителей, подсоединенных к данной системе?
devfsadm
add_drv
drvconfig
boot -г
Какой из следующих каталогов содержит дисковые элементы для узлов блочных устройств в каталоге /devices?
/kernel/drv
/dev/rdsk
/dev
Глава 16. Администрирование устройств и управление дисками Э4э Примените ваши знания
D. /dev/dsk
Что из перечисленного ниже является (slice) устройство^ которое представляет несколько дисков или несколько частей диска?
Логическое устройство
Метаустройство
Псевдоустройство
Экземпляр
Что из перечисленного ниже обеспечивает резервирование данных в случае возникновения отказа диска или аппаратных средств системы?
Зеркало
Сцепленое расслоение
С. Расслоение
Метаустройство
Какой из перечисленных ниже типов адресации обеспечивает чередование (расслоение) блоков компонентов между частями диска?
Метаустройство
Сцепленое расслоение
Зеркало•
Расслоение
Какой из перечисленных ниже типов адресации реализуется последовательно между частями диска?
Зеркало
Расслоение
Сцепление
Метаустройство
Какое из перечисленных ниже устройств было создано с использованием StorEdge Volume Manager?
/dev/vx/dsk/apps/vol01
/dev/md/dsk/dO
/dev/dsk/vx/apps/vol01
/dev/dsk/md/dO
В StorEdge Volume Manager это является группой физических частей диска, которая с точки зрения системы выглядит как единое логическое устройство.
Метаустройство
Том
Виртуальный диск
Р1ех (сцепление)
Некоторый набор частей дисков, резервированных для обеспечения автоматического замещения в случае отказа какой-нибудь части либо в подзеркале, либо в метаустройстве RAID5.
Динамически распределяемая область "горячего" резервирования
Субдиски
Р1ех (сцепление)
Группа дисков
Некоторый набор непрерывных дисковых блоков; они представляют собой базовые элементы, в которых менеджер томов выделяет дисковое пространство.
Группа дисков
Р1ех (сцепление)
Субдиски
Метаустройство
Выполняет репликацию данных путем использования информации четности. В случае потери эти данные могут быть регенерированы с использованием доступных данных и информации четности.
Динамически распределяемая область с "горячего" резервирования
Зеркальное отображение
Метаустройство (trans)
RAID5
Имеет ограничение количества разделов на одном диске - не более восьми.
DiskSuite
StorEdge Volume Manager
Диск VM
Стандартный диск Solaris
Р1ех (сцепление)
Ответы на обзорные вопросы
А. Имя экземпляра представляет сокращенное имя, принятое ядром для каждого возможного устройства в данной системе.
D. Файлы физических устройств находятся в каталоге /devices.
D. Команда sysdef отображает информацию о конфигурации устройств, включая аппаратные средства системы, псевдоустройства, загружаемые модули и выбранные параметры ядра операционной системы.
С. Когда вы видите сообщение driver not attached, то это означает, что к данному экземпляру устройства в настоящее время не присоединен никакой драйвер, поскольку в данном узле системной иерархии нет никакого устройства либо данное устройство не используется.
А. Конфигурационные (.conf) файлы находятся в каталоге /kernel/drv.
В. Имена экземпляров отображаются в некоторое имя физического устройства в файле /etc/path_to_inst.
А, В. Вы можете определить отображение какого-нибудь имени экземпляра в некоторое имя физического устройства путем просмотра выходной информации команды dmesg или файла /var/adm/messages.
Глава 16. Администрирование устройств и управление дисками D4D Примените ваши знания
С. Система опирается на информацию, которая находится в ядре, для обнаружения устройств корневой файловой системы, файловой системы /usr и области подкачки.
С. Команда devfsadm добавляет новый драйвер устройства к системе.
D. Команда devfsadm используется для того, чтобы проинформировать систему о вновь инсталлированных драйверах устройств.•
С. Утилита devfsadm несет ответственность за конфигурирование каталога / devices с целью отражения дерева dev_info, которое хранится в ядре операционной системы. Для создания элементов дополнительных устройств демон devfsadmd использует информацию, которая помещается драйвером устройства в узле dev info.
С. В качестве примера того, когда можно воспользоваться командой devfsadm, рассмотрим ситуацию, когда система была запущена, однако электропитание привода CD- ROM или накопителя на магнитной ленте не было включено. В процессе запуска система не обнаружила данные устройства; следовательно, их драйверы не были инсталлированы. Эти задачи будут выполнены с помощью команды devfsadm.
В. Главный номер устройства обозначает общий класс устройств, такой как диск, накопитель на магнитной ленте или последовательный канал связи.
В. Дополнительный номер устройства обозначает конкретного представителя данного класса устройств.
D. Имя логического устройства представляет собой некоторую ссылку из каталога /dev к имени физического устройства, которое находится в каталоге /devices.
С. Имя логического устройства представляет собой некоторую ссылку из каталога /dev к имени физического устройства, которое находится в каталоге /devices.
А. Имя логического устройства представляет собой некоторую ссылку из каталога /dev к имени физического устройства, которое находится в каталоге /devices. Примером имени логического устройства является следующая запись: /dev/dsk/c0t0d0s7.
А. Команда devfsadm может быть использована для создания элементов в каталоге /dev для дисковых накопителей, подсоединенных к данной системе.
D. Каталог /dev/dsk содержит дисковые элементы для узлов блочных устройств в каталоге /devices.
В. Метаустройство представляет собой некоторую группу физических частей дисков, которая с точки зрения операционной системы выглядит как единственное логическое устройство. Метаустройство используется для увеличения емкости хранения данных и для повышения доступности данных.
А. Зеркало формируется из одного или нескольких простых метаустройств, которые в данном случае называются подзеркалами. Зеркальное метаустройство реплицирует все операции записи сначала на одно логическое устройство (оно называется зеркалом), а затем на несколько устройств (они называются подзеркалами) во время выполнения распределенных операций. Такой подход обеспечивает избыточность данных на случай возникновения отказа диска или аппаратных средств вычислительной системы.
D. Расслоенное метаустройство практически аналогично сцепленному метаустройству за исключением того, что адресация блоков компонентов данного метаустройства выполняется с чередованием по частям диска, а не последовательно.
С. Сцепления работают практически точно так же, как команда UNIX по имени cat, которая используется для конкатенации двух или нескольких файлов в один файл большего размера. Если разделы сцеплены (конкатенированы), то адресация блоков компонентов данного метаустройства выполняется последовательно от одного компонента к другому. Файловая система может использовать сцепление (конкатенацию) как единое целое.
А. Имена блочных устройств виртуальных томов, созданных с использованием пакета программного обеспечения StorEdge Volume Manager, находятся в каталоге /dev/vx/ As\d<disk_group>/<volumename>. ■
В. Том представляет собой виртуальное дисковое устройство, которое предоставляется приложениям, базам данных и файловым системам подобно физическому логическому устройству, однако он не имеет никаких физических ограничений, присущих разделу физического диска.
А. Динамически распределяемая область "горячего" резервирования представляет собой некоторый набор частей дисков, зарезервированных для обеспечения автоматического замещения в случае отказа какой-нибудь части либо в подзеркале, либо в метаустройстве RAID5.
С. Некоторый набор непрерывных дисковых блоков; субдиски представляют собой базовые элементы, в которых менеджер томов выделяет дисковое пространство.
D. Метаустройство RAID5 выполняет репликацию данных путем использования информации четности. В случае потери эти данные могут быть регенерированы с использованием доступных данных и информации четности.
D. Для стандартных дисков операционной системы Solaris существует ограничение на количество разделов на одном диске - не более восьми.
Глава 17Глава 17Среда NFSСреда NFS
Глава 17
Глава 17
Среда NFS
Среда NFS
Темы
В настоящей главе рассматриваются следующие темы экзамена:
Понимание NFS в среде Solaris и взаимоотношений между ее серверами и клиентами
Операционная система Solaris 8 предоставляет NFS (Network File System), чтобы разделять данные между системами через связное оборудование. Серверы NFS разделяют ресурсы, чтобы они могли быть использованы клиентами NFS. В настоящей главе описываются NFS и задачи, решение которых требуется для администрирования серверов и клиентов NFS.
Разделение ресурсов и дистанционный доступ к ним
Операционная среда Solaris позволяет разделять каталоги и представлять их пользователям таким образом, как если бы эти каталоги были локальными на системах пользователей. Однако системный администратор должен обеспечить, чтобы только авторизованные пользователи имели бы доступ к совместно используемым ресурсам некоторого сервера. В настоящей главе описывается процесс разделения ресурсов и получения доступа к ресурсам некоторого сервера через сеть.
Конфигурирование и использование CacheFS
CacheFS применяется для повышения производительности сетевых файловых систем. Если CacheFS задействована, то она для последующего более быстрого восстановления обеспечивает локальное сохранение данных дистанционной файловой системы в дисковом кэше. В настоящей главе описывается, как установить файловую систему CacheFS и организовать ее мониторинг.
Конфигурирование и использование AutoFS
AutoFS позволяет автоматически выполнять монтирование и демонтирование каталогов службы NFS и, кроме того, обеспечивает централизованное администрирование ресурсов NFS. В настоящей главе описывается AutoFS и то, как конфигурировать различные таблицы автомонтирования.
Содержание
(Введение549
Серверы и кусиенты550
Служба TITS в Solaris550
Фемоны слрфы TITS. 553
Установку 3TFS553
Защита информации от несанкционированного доступа в среде №5557
Монтирование дистанционной файловой системы558
tVeb-NTS563
'Кукуразрешитъ доступ через TVe6:NTS564
Использование браузера для получения доступа yUTL в среде TPFS565
CacheTS566
Создание куша566
Мониторинг куша570
Удаление куша572
Проверку согласованности573
AutoTS574
^Таблицы службы AutoTS576
Тлавная таблица576
Прямая таблица580
Крсвенная таблица584
Когда следует использовать автомонтирование587
«Резюме588
Примените ваши знания589
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
На экзамене вам предстоит столкнуться с несколькими вопросами, связанными с темами, которые представлены в настоящей главе. Отрабатывайте описанные здесь пошаговые примеры и команды в системе Solaris до тех пор, пока вы не сможете выполнять их по памяти. Обратите особое внимание на опции, применяемые в приведенных примерах. Именно эти опции с наибольшей вероятностью могут встретиться на экзамене. Как и ранее, для эффективной практической отработки упражнений, приведенных в настоящей главе, вам понадобятся две системы, объединенные в сеть.
Убедитесь в том, что вы хорошо понимаете все концепции, введенные в настоящей главе и особенно касающиеся серверов и клиентов NFS. Убедитесь в том, что вы знаете, какие именно демоны должны быть запущены на них, чтобы NFS функционировала должным образом. Разберитесь в том, как обеспечить доступность ресурсов для монтирования с использованием файла /etc/dfs/dfstab. Будьте готовы устанавливать функции сервера и клиента NFS.
Убедитесь в том, что вы хорошо знаете, как монтировать сетевые ресурсы и создавать элемент в файле /etc/vfstab так, чтобы точки монтирования устанавливались автоматически при запуске системы. Обратите особое внимание на команды mount, mountall, umountall, shareall и unshareall.
Изучите раздел, посвященный AutoFS, и получите четкое представление о различных таблицах этой службы, о том, как они конфигурируются и чем отличаются одна от другой. Убедитесь в том, что вы в состоянии описать каждый тип таблицы службы AutoFS. Вам необходимо знать о преимуществах использования AutoFS и иметь представление о том, как устанавливать различные таблицы.
Тщательно изучите раздел, посвященный CacheFS. Будьте готовы объяснить, как следует конфигурировать и удалять CacheFS. Ознакомьтесь с командами, которые применяются для установки и мониторинга CacheFS.
Наконец, удостоверьтесь в том, что вы хорошо изучили все термины, приведенные в разделе "Ключевые термины" в конце настоящей главы. На экзамене могут встретиться вопросы, для ответа на которые вам понадобится сопоставить эти термины с их корректным описанием, поэтому будьте готовы к этому.
Введение
Служба NFS позволяет компьютерам с различной архитектурой, работающим под управлением различных операционных систем, совместно использовать файловые системы через сеть. Точно так же, как команда mount позволяет вам монтировать файловую систему на локальном диске, NFS позволяет монтировать файловую систему, находящуюся на другой системе в любом месте сети. Более того, поддержка NFS была реализована на многих платформах: от MS-DOS на персональных компьютерах до операционных систем на mainframes (на больших вычислительных системах), таких как М VS (Multiple Virtual Storage - мультивиртуальная память). Каждая ОС применяет модель NFS к семантике собственной файловой системы. Например, система фирмы Sun может монтировать файловую систему с Windows NT или Linux, находящуюся за многие мили от нее. Операции над файловой системой, такие как чтение и запись, выполняются так же, как если бы это были операции доступа к какому-нибудь локальному файлу. Время реакции в данном случае может
быть более медленным из-за сетевого трафика, однако соединение является прозрачным для пользователя вне зависимости от аппаратных средств или операционной системы.
Служба NFS обеспечивает следующие преимущества:
Ф Позволяет нескольким компьютерам использовать одни и те же файлы таким образом, чтобы любой пользователь сети мог бы получить доступ к одним и тем же данным. Это исключает необходимость хранения одинаковых данных на нескольких системах.
Ф Уменьшает затраты на хранение информации за счет того, что компьютеры получают возможность совместного использования приложений и данных.
Ф Обеспечивает целостность и достоверность данных, поскольку все пользователи могут читать один и тот же набор файлов.
ф Делает процесс монтирования файловых систем прозрачным для пользователей.
ф Делает доступ к дистанционным файлам прозрачным для пользователей.
Ф Поддерживает гетерогенные среды.
Ф Сокращает накладные расходы на системное администрирование.
Служба NFS делает несущественным для пользователя физическое местоположение конкретной файловой системы. Вы можете использовать NFS, чтобы дать возможность пользователям видеть все данные вне зависимости от их местоположения. Вместо размещения копий файлов, которые используются всеми, на каждой системе, NFS дает возможность системному администратору разместить одну копию этих файлов на диске одного компьютера и предоставить доступ к ним всем остальным системам через сеть. При работе в среде NFS дистанционные файловые системы практически неотличимы от локальных.
Серверы и клиенты
В среде NFS системы поддерживают взаимоотношения по модели "клиент-сервер". Сервер NFS - это то место, где размещается конкретная файловая система. Любая система, имеющая какую-нибудь локальную файловую систему, может быть сервером NFS. Как будет показано далее в настоящей главе, системный администратор конфигурирует сервер NFS таким образом, чтобы сделать его файловые системы доступными другим системам и пользователям. Системный администратор имеет полный контроль над тем, какие файловые системы могут быть смонтированы и кто может монтировать их.
Клиент NFS - это система, монтирующая какую-нибудь дистанционную файловую систему с некоторого сервера NFS. Далее в настоящей главе будет описано, как системный администратор создает локальный каталог и монтирует эту файловую систему. Как вы увидите далее, одна и та же система может быть как сервером, так и клиентом NFS.
Служба NFS в Solaris
Служба NFS была разработана фирмой Sun Microsystems, а затем включена в большинство популярных операционных систем. Количество реализаций NFS достаточно велико, и эти реализации для различных операционных систем отличаются между собой. В своем развитии служба NFS прошла через несколько разных версий. Таким образом, если вы используете NFS для подсоединения к другой системе, вы должны иметь представление о различных версиях NFS.
Версия 2 NFS была первой широко распространенной версией протокола NFS. Она до сих пор доступна на самых разнообразных платформах. Релизы SunOS вплоть до Solaris 2.5 поддерживают именно версию 2 протокола NFS. Однако необходимо отметить, что NFS 2.0 обладает многими недостатками. Например, серверы, работающие под управлением UNIX, в настоящее время переводятся на более быстрые 64-разрядные реализации, и для них размер пакета данных в 8 Кбайт, используемый NFS 2.0, является узким местом в организации передачи данных. Над разрешением этих и других проблем много поработали такие фирмы как Sun, Digital, IBM, Hewlett-Packard и Data General. В 1995 году они совместно выпустили NFS 3.0 в качестве воплощения RFC 1813. Вам придется столкнуться с NFS 2.0 только в том случае, если вы работаете с какой-нибудь старой версией операционной системы, такой как Solaris 2.4 или HP-UX версии 10.
NFS 3.0 была внедрена в версии 2.5 операционной системы Solaris. В ней были выполнены некоторые изменения, направленные на повышение способности к взаимодействию и производительности, включая следующие расширения относительно версии 2.0:
Ф Разрешена безопасная запись на сервер в асинхронном режиме, что обеспечивает повышение производительности за счет того, что сервер может кэшировать в памяти запросы клиента на запись. Клиенту нет необходимости ожидать сервер для того, чтобы записать изменения на диск; следовательно, время ответа сокращается.
Ф Сервер может накапливать запросы, что обеспечивает сокращение времени ответа, или реакции, на данном сервере.
Ф Все операции службы NFS возвращают атрибуты файлов, которые сохраняются в локальном кэше. Поскольку кэш обновляется чаще, необходимость в выполнении отдельной операции для обновления этих данных возникает намного реже. Таким образом, количество вызовов дистанционных процедур сервера уменьшается, что обеспечивает повышение производительности.
Ф Был усовершенствован процесс проверки полномочий доступа к файлам. В частности, версия 2.0 могла генерировать некоторое сообщение, регистрирующее "ошибку записи" или "ошибку чтения", если пользователи пытались скопировать дистанционный файл, на доступ к которому у них не было полномочий. В версии 3.0 полномочия доступа проверяются до того, как открывается конкретный файл, поэтому ошибка, подобная описанной выше, регистрируется как "ошибка открытия файла".
Ф В версии 3.0 сняты ограничения в 8 Кбайт на размер передаваемого пакета, и теперь клиенту и серверу предоставлена возможность договариваться о максимальном размере передаваемого пакета.
Ф В версии 3.0 была добавлена поддержка ACL (Access Control List - списка управления доступом). Списки управления доступом, которые были описаны в главе 8, предоставляют более тонкий механизм для установки полномочий доступа к файлам, чем тот, который доступен при использовании стандартных полномочий доступа к файлам UNIX.
Ф В качестве транспортного протокола по умолчанию для протокола NFS вместо ранее используемого протокола UDP (User Datagram Protocol - протокол передачи пользовательских дейтаграмм) теперь используется протокол TCP (Transmission Control Protocol - протокол управления передачей), который обеспечи-
вает повышение производительности в медленных и в глобальных сетях. Первоначально протокол UDP был более предпочтителен, поскольку он хорошо реализовался в локальных сетях и был быстрее, чем протокол TCP. Хотя протокол UDP имел преимущества в широкой полосе пропускания и малом времени ожидания, характерных для локальных сетей, он хуже реализуется в условиях узкой полосы пропускания и большого времени ожидания в глобальных сетях, таких как Internet. В последние годы совершенствования аппаратных средств и реализаций протокола TCP настолько сузили преимущества протокола UDP, что теперь реализации протокола TCP могут даже превосходить протокол UDP. Сегодня все большее количество реализаций NFS поддерживает протокол TCP. В отличие от протокола UDP протокол TCP предоставляет возможности контроля межсоединений и восстановления после ошибок.
Ф В версии 3.0 был усовершенствован менеджер сетевой блокировки, который предоставляет блокировку на уровне записей UNIX и разделение, принятое в персональном компьютере для файлов NFS. Механизм блокирования файлов NFS теперь стал более надежным; таким образом, такие команды как ksh и mail, которые используют блокировку, теперь менее склонны к зависанию.
Чтобы воспользоваться преимуществами перечисленных усовершенствований, протокол версии 3.0 должен быть запущен как на сервере, так и на клиентах NFS.
В Solaris 2.6 протокол NFS 3.0 получил еще несколько дополнительных усовершенствований:
Ф Обеспечена корректная работа с файлами размером более 2 Гбайт, которая ранее была невозможна.
Ф Был увеличен принятый по умолчанию размер передаваемого пакета до 32 Кбайт. Эффект более крупных пакетов заключается в сокращении количества запросов NFS, необходимых для передачи обеспечивая лучшее использование пропускной способности сети и ресурсов ввода-вы вода серверов и клиентов. Если сервер поддерживает такую возможность, то клиент может выдать запрос на чтение, который позволит загрузить файл за одну операцию.
Ф Поддерживается динамическая отказоустойчивость файловых систем, предназначенных только для чтения, что обеспечивает высокий уровень доступности данных. Использование подобной технологии позволяет задать несколько точных копий на случай, если какой-нибудь сервер NFS выйдет из строя. Кроме того, можно задать другую точку монтирования на каком-нибудь альтернативном сервере.
Ф Службе WebNFS предоставлена возможность за счет использования расширения протокола NFS делать файловую систему в Internet доступной через брандмауэры. WebNFS обеспечивает более высокую пропускную способность, чем протокол HTTP (Hypertext Transfer Protocol - протокол передачи гипертекстовых сообщений) при получении доступа к какому-нибудь Web-серверу в условиях большой загрузки. Кроме того, данный протокол предоставляет возможность совместного использования файлов через Internet без накладных расходов на администрирование какого-нибудь сайта с анонимным доступом по протоколу FTP (File Transfer Protocol - протокол передачи файлов). WebNFS описывается далее в настоящей главе.
Ф NFS под версией 8 операционной системы Solaris дополнена возможностью протоколирования своего сервера. Протоколирование сервера NFS позволяет обеспечивать регистрацию операций с файлами, выполненных на файловых системах данного сервера. Такая возможность является особенно удобной для сайтов, предоставляющих анонимный доступ к FTP-архивам клиентам NFS и WebNFS.
^.ЖЖчанйе'.
При использовании NFS убедитесь, что на системах, которые вы будете соединять, установлена одна и та же версия. У вас могут возникнуть проблемы, если ваша система работает с NFS версии 2, а система, к которой вы пытаетесь подсоединиться, - с NFS 3.0.
Демоны службы NFS
Для обращения к своим службам NFS использует несколько демонов. Эти службы инициализируются при запуске из стартовых сценариев /etc/initd/nfs.server и /etc/init.d/ nfs.clients. Наиболее важные демоны NFS перечисляются в таблице 17.1.
ДемонОписание
nfsdДемон сервера NFS, который обрабатывает запросы с дистанционных
систем на экспортирование файловых систем и предоставление доступа к файлам. Сервер NFS запускает несколько экземпляров данного демона. Рассматриваемый демон обычно вызывается на уровне запуска 3 из стартового сценария /etc/initd/nfs.BervBr.
mountdДемон сервера NFS, обрабатывающий запросы на монтирование от
клиентов NFS. Этот демон также предоставляет информацию о том, каким клиентом какие файловые системы монтируются. Для просмотра этой информации воспользуйтесь командой showmount, которая описывается далее в настоящей главе. Рассматриваемый демон обычно вызывается на уровне запуска 3 из стартового сценария /etc/init.d/ nfs.se rver.
lockdДанный демон запускается на сервере и клиенте NFS и обеспечивает
службы блокирования файлов. Демон запускается на уровне 2 из стартового сценария /etc/init.d/nfs.cllent.
statdДанный демон запускается на сервере и клиенте NFS и взаимодейству
ет с демоном lockd при обеспечении функций сбоя и восстановления для служб блокирования файлов в среде NFS. Демон запускается на уровне 2 из стартового сценария /Btc/initd/nfs.client.
rpcbindСпособствует установлению начального соединения между клиентом и
сервером NFS.
nfslogdДемон обеспечивает протоколирование процессов функционирования
на сервере NFS в среде Solaris. Данный демон описывается позже в этой главе.
Установка NFS
Серверы предоставляют другим системам доступ к размещенным на них файловым системам посредством разделения этих файловых систем через среду NFS. Совместно используемая файловая система в данном случае называется разделяемым ресурсом. Вы определяете, какие именно файловые системы будут разделяться, путем ввода соответствующей информации в файл, называемый /etc/dfs/dfstab. Объекты указанного файла разделяются авто-
матически всякий раз, когда вы запускаете команду данного сервера NFS. Если необходимо постоянное разделение одного и того же набора файловых систем, то вы должны установить их автоматическое разделение. Вообще, разделение большинства файловых систем должно выполняться автоматически; разделение в ручном режиме выполняется только в том случае, когда вы занимаетесь тестированием или локализацией возникших проблем.
В файле /etc/dfs/dfstab перечисляются все файловые системы, которые ваш сервер NFS разделяет между его клиентами. Этот файл также управляет тем, какие клиенты могут монтировать некоторую файловую систему. Если вы хотите модифицировать файл /etc/ dfs/dfstab для того, чтобы добавить или удалить какую-нибудь файловую систему, или для того, чтобы изменить способ разделения, отредактируйте данный файл с помощью какого- нибудь текстового редактора, такого как vi или textedit. В следующий раз на уровне запуска 3 система считает обновленный файл /etc/dfs/dfstab, чтобы определить, какие именно файловые системы должны быть автоматически разделяемыми.
Каждая строка в файле /etc/dfs/dfstab содержит команду share, как показано в следующем примере:
more /etc/dfs/dfstab
Система отображает содержимое файла /etc/dfs/dfstab:
Place share(IM) commands here for automatic execution
on entering init state 3.
#
Issue the command 1/etc/init.d/nfs.server start1 to run the NFS
daemon processes and the share commands, after adding the very
first entry to this file.
#
share [-F fstype] [ -o options] [-d "<text>"] <pathname> [resource]
.e.g,
share -F nfs -o rw=engineering -d "home dirs" /export/home2
share -F nfs /export
share -F nfs /cdrom/solaris_srvr_intranet_ext_l_0
Команда /usr/sbin/share экспортирует некоторый ресурс или делает его доступным для монтирования. Команда share, будучи выдана без аргументов, отображает список всех разделяемых, или совместно используемых, файловых систем. Команда share, описанная в таблице 17.2, может быть запущена из командной строки для получения тех же самых результатов, что и при использовании файла/etc/dfs/dfstab, однако этим методом следует пользоваться только для целей тестирования.
Синтаксис команды share выглядит следующим образом:
share -F <FSType> -о <options> -d <description> <pathname>
где аргумент <pathname> - это имя той файловой системы, которая будет разделяема.
ОпцияОписание
-F <FSType>Указывает тип файловой системы, такой как NFS. Если опция -F опуще
на, то по умолчанию используется тип первой файловой системы, из перечисленных в файле /etc/dfs/dfstab.
-о <options>-о <options>Выберите одну из следующих опций:
-о <options>
-о <options>
Продолжение таблицы 17.2
Опция
Описание
rwФайловая система, заданная аргументом <pathname>,
совместно используется всеми клиентами в режиме чтения/записи. Это также принято по умолчанию.
rw=client[:client]... Файловая система, заданная аргументом <pathname>, совместно используется лишь перечисленными клиентами в режиме чтения/записи. Ни к какой другой файловой системе, кроме заданной аргументом <pathname>, не может быть получен доступ.
гоФайловая система, заданная аргументом <pathname>,
совместно используется всеми клиентами лишь в режиме чтения.
го=с1 ient[:client]... Файловая система, заданная аргументом <pathname>, используется совместно перечисленными клиентами лишь в режиме чтения. Ни к какой другой файловой системе, кроме заданной аргументом <pathname>, не может быть получен доступ.
aclok
Позволяет серверу NFS осуществлять управление клиентами (работают под управлением Solaris или более ранних операционных систем), использующими NFS версии 2. Когда опция aclok установлена на сервере, то всем клиентам предоставляется максимальный доступ. Например, при установленной опции aclok, если кто-нибудь имеет полномочия на чтение, то такие полномочия имеют все. Если же опция aclok не установлена, то всем клиентам предоставляется минимальный доступ.
anon=<uid>
Устанавливает идентификатор пользователя, который будет действующим идентификатором для всех неизвестных пользователей. По умолчанию для неизвестных пользователей действующий идентификатор устанавливается в значение nobody. Если uid равен -1, это означает, что доступ запрещен.
index=<file>
Загружает некоторый файл вместо листинга каталога, содержащего этот файл, когда на данный каталог ссылается какой-нибудь URL (Uniform Resource Locator - универсальный локатор, или указатель, ресурса) среды NFS. Обратитесь к разделу "WebNFS" далее в настоящей главе.
nosub
Запрещает клиентам монтировать подкаталоги разделяемых каталогов.
nosuid
Файловая система сервера молча игнорирует любые попытки установить биты режима setuid или setgid для файла. По умолчанию клиенты могут создавать файлы на разделяемой файловой системе, если включен режим setuid или setgid. Описания setuid и setgid приведены в главе 8.
public
Разрешает NFS-просмотр данной файловой системы с использованием какого-нибудь разрешенного браузера службы WebNFS. Данная опция может использоваться только одной файловой системой на каждом сервере. Совместно с рассматриваемой опцией могут быть также включены опции -ro=liat и -rw=list.
root=host[:host]...
Только суперпользователи с перечисленных хостов (узлов сети) могут получить доступ с привилегиями суперпользователя. По умолчанию ни с одного хоств нельзя получить доступ с привилегиями суперпользователя, поэтому суперпользователи отображаются на идентификатор анонимного пользователя (обратитесь к приведенному ранее в этой таблице описанию опции anon=<uid>).
sec=<mode>
Использует для аутентификации клиентов один или несколько режимов защиты информации от несанкционированного доступа, которые зада-
■ Опция■ Опцияlog=</ag>log=</ag>-d <description>-d <description>Продолжение таблицы 17.2 Описание
■ Опция
■ Опция
log=</ag>
log=</ag>
-d <description>
-d <description>
ны аргументом <mode>. Опция <mode> устанавливает режим защиты информации серверов NFS. Если данное соединение использует версию 3 протокола NFS, то клиенты должны запросить у сервера соответствующий режим защиты информации для использования. Если же данное соединение использует версию 2 протокола NFS, то тогда клиенты NFS будут использовать режим защиты информации по умолчанию, таковым в настоящее время является sys. Клиентов NFS можно заставить использовать конкретный режим защиты информации от несанкционированного доступа, для чего следует задать в командной строке опцию sec=<mode>. Однако если для конкретной файловой системы на сервере не предусмотрен данный режим защиты информации, то клиенту может быть отказано в доступе. Допустимыми режимами защиты информации являются следующие:
sys Использует аутентификацию AUTH_SYS. Идентификатор конкретного пользователя и идентификаторы групп (как принято в UNIX) передаются по сети в чистом виде, без аутентификации сервером NFS.
dh Использует систему открытого ключа Диффи-Хеллмана (Diffie-Hellman).■
krb4 Использует аутентификацию Kerberos версии 4.
попе Использует нулевую аутентификацию (без аутентификации).
Разрешает серверу NFS выполнять протоколирование для заданной файловой системы. Необязательный аргумент <tag> определяет местоположение соответствующих файлов протоколов. Этот тег определяется в файле /etc/nfs/nfslog.conf. Если никакой тег не задан, то должны быть использованы значения по умолчанию, которые ассоциированы с тегом global в файле /etc/nfs/nfslog.conf. Протоколирование в NFS описывается далее в настоящей главе.
Предоставляет описание разделяемого ресурса.
Для совместного использования какой-нибудь файловой системы в режиме только для чтения всякий раз, когда начиная с запуска данной системы, следует добавить приведенную строку в файл /etc/dfs/dfstab:
share -F nfs -о ro /data
После редактирования файла /etc/dfs/dfstab перезапустите данный сервер NFS либо путем собственно его перезапуска, либо ввода следующей командной строки:
/etc/init.d/nfs.server start
Даже если вы задали из командной строки посредством выдачи команды share совместное использование какой-нибудь файловой системы, демоны mountd и nfsd все равно не будут запущены до тех пор, пока вы не создадите элемент в файле /etc/dfs/dfstab и не запустите сценарий nfs.server.
Необходимо запустить сценарий nfs.server только после того, как вы создали первый элемент в файле /etc/dfs/dfstab. Это обусловлено тем, что при запуске системы, когда она входит в уровень запуска 3, демоны mountd и nfsd не запускаются, если файл /etc/dfs/ dfstab пуст. После того как вы создали начальный элемент в файле /etc/dfs/dfstab и запустили сценарий nfs.server, уже можно модифицировать файл /etc/dfs/dfstab без перезапуска указанных демонов. Вы просто выполняете команду shareall, после чего все новые элементы из файла /etc/dfs/dfstab становятся разделяемыми.
После того как вы имеете, по крайней мере, один элемент в файле /etc/dfs/dfstab и запущены демоны mountd и nfsd, вы можете сделать разделяемыми дополнительные файловые системы путем выдачи команды share непосредственно из командной строки. Следует, однако, иметь в виду, что если вы не добавили соответствующий элемент в файл /etc/ dfs/dfstab, то данная файловая система не станет автоматически разделяемой в следующий раз после перезапуска системы.
Команда dfshares отображает информацию о разделяемых ресурсах, доступных на данном хосте с некоторого сервера NFS. Синтаксис команды dfshares выглядит следующим образом:
dfshares <servername>
Вы можете просмотреть разделяемые файловые системы на некотором дистанционном сервере NFS с помощью команды dfshares, как показано ниже:
dfshares apollo
Если аргумент servername не задан, то отображаются все ресурсы, разделяемые в данный момент времени на этом хосте сети. Еще одним местом, где можно найти информацию о разделяемых ресурсах, является файл /etc/dfs/sharetab данного сервера. Этот файл содержит перечень ресурсов, разделяемых в данный момент времени.
Защита информации от несанкционированного доступа в среде NFS
При использовании служб NFS вы должны побеспокоиться о защите информации от несанкционированного доступа. Когда вы выдаете команды share, то с любой системы через сеть можно получить доступ к данной файловой системе. Весьма полезно указывать более конкретно, кто именно может монтировать данную файловую систему. Приведенные ниже примеры демонстрируют, как установить разделение ресурса с ограничением хостов, которые могут монтировать данный разделяемый ресурс:
share -F nfs -о ro=apollo:neptune:zeus /data
Файловая система, которая называется /data, совместно используется перечисленными клиентами только для чтения. Никакие другие системы не смогут получить доступ к /data. Другой возможный метод заключается в совместном использовании некоторыми хостами какой-нибудь файловой системы только для чтения, а всеми остальными хостами в режиме чтения-записи. Чтобы добиться такого результата, воспользуйтесь следующей командой:
share -F nfs -о ro=apollo rw=neptune:zeus /data
В приведенном примере apollo разрешен доступ только для чтения, а системам neptune и zeus - в режиме чтения-записи.
Следующий пример определяет, что доступ с привилегиями суперпользователя предоставляется клиенту по имени zeus. Суперпользователь, который регистрируется на любой другой системе, распознается только как nobody и имеет ограниченные права доступа:
share -F nfs -о root=zeus /data’
На файловой системе NFS не должны быть разрешены полномочия суперпользователя. Администраторы могут счесть это ограничение неудобным, когда пытаются модифицировать какой-нибудь файл через монтирование в среде NFS, однако таким образом могут быть исключены катастрофические ошибки. Например, если какой-нибудь суперпользователь захочет очистить файловую систему по имени /data на одном из хостов, то выдача команды rm -rf * может привести к тяжелым 19 2-300
последствиям, если под /data смонтирована файловая система NFS с полномочиями суперпользователя. Если файловая система /data/thor смонтирована под /data, то файлы, находящиеся на сервере NFS, могут быть уничтожены.
Для удаления какой-нибудь совместно используемой файловой системы выдайте на данном сервере команду unshare:
unshare /data
Файловая система /data более не является разделяемой, или совместно используемой. Вы можете проверить это, выдав команду share без опций:
share
Система отвечает следующим образом:
- /home ro,anon=0 " 11
Теперь только /home остается разделяемой файловой системой..
ПРИМЕЧАНИЕг v-
Если команда share вызывается несколько раз для одной и той же файловой системы, то последний вызов команды share отменяет все предшествующие. Опции, установленные последней командой share, заменяют все ранее установленные.
Монтирование дистанционной файловой системы
В главе 6 было описано, как с помощью команды mount смонтировать локальную файловую систему. Вам предстоит применять ту же самую команду mount для монтирования какой-нибудь разделяемой файловой системы на дистанционном хосте с использованием NFS. Синтаксис команды mount для монтирования файловых систем NFS выглядит следующим образом:
mount -F nfs <options> < -о specific_options > <-О> <server>: \ <tilesystem> <mount_point>
В приведенном примере аргумент server представляет собой имя сервера NFS, на котором находится данная файловая система. Аргумент filesystem - это имя разделяемой файловой системы на сервере NFS, а аргумент mountjoint- локальный каталог, служащий в каче
стве точки монтирования.
Как вы можете заметить, все это очень похоже на монтирование локальной файловой системы. Опции команды mount для среды NFS описываются в таблице 17.3.
ОпцияОписание
-F <Fstype>
Используется для задания типа файловой системы, с которой будет работать данная команда. Параметр FSType должен быть задан в файле /etc/vfstab либо получен путем обращения к файлу /etc/default/fe или /etc/dfs/fstypes.
-Г
Монтирует файловую систему только для чтения.
-т
Не добавляет элемент к таблице смонтированных файловых систем под названием /etc/mnttab.
-о <specific_options> Параметр specific_options представляет собой любые из представлен
ных опций, разделенные запятыми:
rw | го Данный ресурс монтируется для чтения-записи, либо только для чтения. По умолчанию принимается rw.
Продолжение таблицы 17.3
ОпцияОписание
suid | nosuid
Включает или отключает исполнение с установкой setuid. По умолчанию принимается suid.
remount
Если какая-нибудь файловая система монтируется только для чтения, то данная опция перемонтирует ее для чтения-записи.
bg | fg
Если первая попытка монтирования дистанционной файловой системы завершилась аварийно, то повторяет этот процесс в фоновом (bg) или приоритетном (fg) режиме. По умолчанию принимается fg.
quota
Проверяет, не превысил ли пользователь установленную дисковую квоту на файловой системе. Если данная файловая система имеет разрешенные квоты на сервере, то соблюдение квот будет проверяться при выполнении операций на этой файловой системе.
noquota
Запрещает проверять, превысил ли пользователь установленную дисковую квоту на файловой системе. Если данная файловая система имеет разрешенные квоты на сервере, то соблюдение квот будет проверяться при выполнении операций на этой файловой системе.
retry=n
Количество повторных попыток монтирования файловой системы. Значение данной опции по умолчанию-10000.
vers=<NFS version number*
По умолчанию версия протокола NFS, которая применяется при обмене между клиентом и сервером, является наивысшей версией из числа доступных на этих системах. Если данный сервер не поддерживает версию 3.0 протокола NFS, то команда mount использует версию 2 указанного протокола.
port=n
Номер IP-порта данного сервера. Значение данной опции по умолчанию - NFS_PORT.
rsize=<n*
Устанавливает размер буфера чтения равным <п> байт. Если вы используете версию 3.0 протокола NFS, то значение данной опции по умолчанию - 32768 байт. Значение по умолчанию может быть уменьшено, если данный сервер предпочитает меньший размер передаваемых пакетов. Если вы используете NFS версии 2, то значение данной опции по умолчанию - 8192 байт.
wsize=<n*
Устанавливает размер буфера записи равным <п> байт. Если вы используете версию 3.0 протокола NFS, то значение данной опции по умолчанию - 32768 байт. Значение по умолчанию может быть уменьшено, если данный сервер предпочитает меньший размер передаваемых пакетов. Если вы используете NFS версии 2, то значение данной опции по умолчанию - 8192 байт.
timeo=<n>
Устанавливает значение тайм-аута в NFS равным <п> десятых секунды. Значение данной опции по умолчанию -11 десятых секунды для транспортных протоколов без установления соединения и 600 десятых секунды для транспортных протоколов, ориентированных на установление соединения.
ОпцияОпцияОписаниеretrans=<n>Описаниеretrans=<n>soft | hardsoft | hardintr | nointrintr | nointrПродолжение таблицы 17.3Устанавливает количество повторных передач a NFS равным <п>; значение данной опции по умолчанию - 5. На транспортные протоколы с установлением соединения эта опция не оказывает влияния, поскольку предполагается, что данный транспортный протокол будет выполнять повторную передачу от имени протокола NFS.Возвращает ошибку, если сервер не откликается (опция soft), либо продолжает повторно посылать запросы до тех пор, пока данный сервер не откликнется (опция hard). Если вы используете опцию hard, то система кажется зависшей до тех пор, пока не откликнется сервер NFS. Значение данной опции по умолчанию - hard.Разрешает или запрещает прерывания с клавиатуры для завершения некоторого процесса, который завис в ожидании отклика на файловой системе, смонтированной с опцией hard. Значение данной опции по умолчанию - intr, что дает клиентам возможность прерывать приложения, ожидающие отклика от какого-нибудь сервера NFS.Оверлейное монтироаание позволяет данной файловой системе быть смонтированной поверх какой-нибудь существующей точки монтирования, что делает недоступной нижележащую файловую систему. Если попытаться выполнить монтироаание к какой-нибудь из ранее существующих точек монтирования без установки данного флага, то попытка монтирования завершится аварийно и будет сгенерировано сообщение об ошибке "device busy" ("устройство занято").Продолжение таблицы 17.3Устанавливает количество повторных передач a NFS равным <п>; значение данной опции по умолчанию - 5. На транспортные протоколы с установлением соединения эта опция не оказывает влияния, поскольку предполагается, что данный транспортный протокол будет выполнять повторную передачу от имени протокола NFS.Возвращает ошибку, если сервер не откликается (опция soft), либо продолжает повторно посылать запросы до тех пор, пока данный сервер не откликнется (опция hard). Если вы используете опцию hard, то система кажется зависшей до тех пор, пока не откликнется сервер NFS. Значение данной опции по умолчанию - hard.Разрешает или запрещает прерывания с клавиатуры для завершения некоторого процесса, который завис в ожидании отклика на файловой системе, смонтированной с опцией hard. Значение данной опции по умолчанию - intr, что дает клиентам возможность прерывать приложения, ожидающие отклика от какого-нибудь сервера NFS.Оверлейное монтироаание позволяет данной файловой системе быть смонтированной поверх какой-нибудь существующей точки монтирования, что делает недоступной нижележащую файловую систему. Если попытаться выполнить монтироаание к какой-нибудь из ранее существующих точек монтирования без установки данного флага, то попытка монтирования завершится аварийно и будет сгенерировано сообщение об ошибке "device busy" ("устройство занято").
Опция
Опция
Описание
retrans=<n>
Описание
retrans=<n>
soft | hard
soft | hard
intr | nointr
intr | nointr
Продолжение таблицы 17.3
Устанавливает количество повторных передач a NFS равным <п>; значение данной опции по умолчанию - 5. На транспортные протоколы с установлением соединения эта опция не оказывает влияния, поскольку предполагается, что данный транспортный протокол будет выполнять повторную передачу от имени протокола NFS.
Возвращает ошибку, если сервер не откликается (опция soft), либо продолжает повторно посылать запросы до тех пор, пока данный сервер не откликнется (опция hard). Если вы используете опцию hard, то система кажется зависшей до тех пор, пока не откликнется сервер NFS. Значение данной опции по умолчанию - hard.
Разрешает или запрещает прерывания с клавиатуры для завершения некоторого процесса, который завис в ожидании отклика на файловой системе, смонтированной с опцией hard. Значение данной опции по умолчанию - intr, что дает клиентам возможность прерывать приложения, ожидающие отклика от какого-нибудь сервера NFS.
Оверлейное монтироаание позволяет данной файловой системе быть смонтированной поверх какой-нибудь существующей точки монтирования, что делает недоступной нижележащую файловую систему. Если попытаться выполнить монтироаание к какой-нибудь из ранее существующих точек монтирования без установки данного флага, то попытка монтирования завершится аварийно и будет сгенерировано сообщение об ошибке "device busy" ("устройство занято").
Продолжение таблицы 17.3
Устанавливает количество повторных передач a NFS равным <п>; значение данной опции по умолчанию - 5. На транспортные протоколы с установлением соединения эта опция не оказывает влияния, поскольку предполагается, что данный транспортный протокол будет выполнять повторную передачу от имени протокола NFS.
Возвращает ошибку, если сервер не откликается (опция soft), либо продолжает повторно посылать запросы до тех пор, пока данный сервер не откликнется (опция hard). Если вы используете опцию hard, то система кажется зависшей до тех пор, пока не откликнется сервер NFS. Значение данной опции по умолчанию - hard.
Разрешает или запрещает прерывания с клавиатуры для завершения некоторого процесса, который завис в ожидании отклика на файловой системе, смонтированной с опцией hard. Значение данной опции по умолчанию - intr, что дает клиентам возможность прерывать приложения, ожидающие отклика от какого-нибудь сервера NFS.
Оверлейное монтироаание позволяет данной файловой системе быть смонтированной поверх какой-нибудь существующей точки монтирования, что делает недоступной нижележащую файловую систему. Если попытаться выполнить монтироаание к какой-нибудь из ранее существующих точек монтирования без установки данного флага, то попытка монтирования завершится аварийно и будет сгенерировано сообщение об ошибке "device busy" ("устройство занято").
Здесь необходимо сделать замечание относительно монтирования в приоритетном (опция fg) и в приоритетном (опция tg) и фоновом (опция bg) режимах. То, что файловые системы монтируются с опцией bg, означает, что команда mount повторяется в фоновом режиме, если демон монтирования сервера (mountd) не откликается, когда, например, данный с сервера NFS перезапускается. Для клиента NFS команда mount повторяет попытки запросов столько раз, сколько задано опцией retry=n. После того, как данная файловая система смонтирована, каждый NFS-запрос, сделанный в ядре, ожидает отклика в течение заданного количества секунд (задается опцией timeo=<n>). Если никакой отклик не поступил, то значение времени тайм-аута умножается на два, и запрос передается повторно. Если количество повторных передач достигло значения, заданного опцией retrans=<n>, то файловая система, смонтированная с опцией soft, возвращает ошибку, а файловая система, смонтированная с опцией hard, выводит на печать предупреждающее сообщение и продолжает попытки данного запроса. Фирма Sun рекомендует, чтобы файловые системы, смонтированные для чтения- записи, или файловые системы, содержащие исполняемые файлы, всегда монтировались бы с опцией hard. Если вы используете файловые системы, смонтированные с опцией soft, то могут возникнуть неожиданные ошибки ввода-вывода. Например, рассмотрим какой-нибудь запрос на выполнение записи. Если сервер NFS вышел из строя, то неисполненный запрос на выполнение записи просто пропадает, что приводит к повреждению файла на дистанционной файловой системе. Файловая система, доступная для чтения и записи, должна всегда монтироваться с опциями hard и intr. Это дает возможность пользователям принимать самостоя-
тельные решения относительно завершения зависших процессов. Для монтирования файловой системы /data с опциями hard и intr, которая размещается на хосте, имеющем имя thor, используйте следующую командную строку:
mount -F nfa -о hard,intr thor:/data /data
Если какая-нибудь файловая система монтируется с опцией hard, а опция intr не задана, и если при этом сервер NFS вышел из строя, то данный процесс зависает до тех пор, пока вновь не появится эта дистанционная файловая система. Для терминального процесса это может быть неудобно. Если же задана опция intr, то отправка сигнала прерывания данному процессу завершает его. Для терминального процесса это может быть реализовано с помощью клавиатурной комбинации Ctrl+C. На фоновый процесс обычно действует отправка сигнала INT или QUIT, что и показано:
kill -QUIT 3421
ПРИМЕЧАНИЕ „#т И
Отправка сигнала KILL (-9) не завершает процесс NFS в случае его зависания.
Для монтирования файловой системы /data, которая размещается на сервере NFS, имеющем имя thor, выдайте в качестве суперпользователя следующую команду со стороны клиента NFS:
mount -F nfa -о to thor:/data /thor_data
В данном случае файловая система /data с сервера thor монтируется только для чтения к точке монтирования /thor data на локальной системе. Монтирование из командной строки обеспечивает временный просмотр данной файловой системы. Если выдается команда umount или выполняется перезапуск системы, то данное монтирование теряется. Если вы хотите, чтобы файловая система монтировалась автоматически при каждом запуске вычислительной системы, добавьте следующую строку к файлу /etc/vfstab.
thor.-/data - /thof_data nfa - yea ro
Команды mount и umount требуют наличия доступа с привилегиями суперпользователя. Команда umount и файл /etc/vfetab описываются в главе 6.
Для просмотра ресурсов, которые могут быть смонтированы на локальной или дистанционной системе, применяйте команду dfmounts.
dfmounts sparcserver
Система отвечает, возвращая перечень файловых систем, которые в настоящее время смонтированы на sparcserver:
CLIENTS192.168.1.201192.168.1.201CLIENTS192.168.1.201192.168.1.201RESOURCE SERVER PATHNAME ultraS /uar ultraS /usr/dt
CLIENTS192.168.1.201192.168.1.201
CLIENTS192.168.1.201192.168.1.201
Иногда вы опираетесь на точки монтирования NFS в части критически важной информации. Если бы сервер NFS неожиданно вышел из строя, вы бы могли лишиться информации, содержащейся в данной точке монтирования. Вы можете справиться с подобной проблемой, используя средства отказоустойчивости со стороны клиента. С их помошью вы задаете альтернативную файловую систему, которая будет использована в случае выхода из строя основной файловой системы. Эти файловые системы должны содержать эквивалентную структуру каталогов и идентичные файлы. Рассматриваемый вариант возможен
на файловых системах, доступных только для чтения. Для установки средств отказоустойчивости на стороне клиента, следует выполнить следующие операции.
На клиенте NFS смонтируйте данную файловую систему с использованием опции -го. Вы можете сделать это из командной строки, или посредством добавления строки к файлу /etc/vfstab, которая может выглядеть следующим образом:
zeus,thor:/data - /remote_data nfs - no -o ro
Если в списке перечислено несколько файловых систем и первый сервер из этого списка вышел из строя, то средства отказоустойчивости используют следующий альтернативный сервер для доступа к файлам. Для монтирования какого-нибудь реплицированного набора файловых систем NFS, которые могут иметь различные маршруты к файловой системе, воспользуйтесь командой mount в следующей форме:
mount -F nfs -о го zeus:/usr/local/data,thor:/home/data /usr/local/data
Репликации вновь обсуждаются в разделе, в котором рассматривается AutoFS.
Одной из новых возможностей в операционной системе Solaris 8 является протоколирование операций сервера NFS. Вопросы протоколирования файловых систем были рассмотрены в главе 7. Новая возможность расширяет функциональность сетевых файловых систем. Демон nfslogd, обеспечивающий протоколирование NFS, включается с помощью опции log=<tag> команды share, рассмотренной ранее. Если протоколирование NFS включено, то все операции служб NFS на данной файловой системе регистрируются ядром операционной системы в буфере. Данные, записанные в этот буфер, включают в свой состав временную метку, IP-адрес клиента, идентификатор пользователя, инициирующего запрос, файл поддержки того ресурса, к которому был получен доступ, и тип произведенной операции. Демон nfslogd конвертирует эти данные в ASCII-записи, которые сохраняются в файлах протоколов.
Включение протоколирования сервера NFS
Для включения протоколирования сервера NFS выполните следующие операции:
В качестве суперпользователя установите возможность совместного использования файловой системы NFS, для чего введите следующую команду:
share -F nfs -о ro,log=global <file system name>
Добавьте данную строку к вашему файлу /etc/dfs/dfstab, если вы хотите, чтобы она оказывала действие всякий раз при выполнении загрузки данного сервера.
Если демон nfslogd еще не запущен, стартуйте его с помощью следующей команды:
/usr/lib/nfs/nfslogd
Вы можете изменить установки в конфигурационном файле протоколирования сервера NFS, который называется /etc/nfs/nfslog.conf. Этот файл определяет маршрут, имена файлов и тип протоколирования, который будет использоваться демоном nfslogd. Каждое определение ассоциируется с каким-нибудь тегом. Тег global определяет значения по умолчанию, однако вы можете создать новые теги и задать их для каждой файловой системы, которую используете совместно. Операции NFS, которые будут протоколироваться демоном nfslogd, определяются в конфигурационном файле /etc/default/nfslogd.
WebNFS
WebNFS - программный продукт, разработанный фирмой Sun Microsystems, который расширяет возможности служб NFS до Internet. Фирма Sun считает, что WebNFS предоставляет весомые преимущества в свете повышения производительности по сравнению с современными протоколами Internet, HTTP и FTP. Фирмы Netscape, Oracle, IBM, Apple и Novell объявили о своей поддержке WebNFS.
World Wide Web (всемирная паутина) становится выбором человечества для распространения и совместного использования информации в сети Internet. Простота и широкая доступность службы Web помогли ей затмить аналогичные технологии. К сожалению, протокол доступа к "всемирной паутине", HTTP, оставляет желать лучшего с точки зрения его производительности. Протокол HTTP - однонаправленный протокол, который неэффективно передает многие форматы данных. Целые страницы и все их содержимое должны быть переданы запрашивающему браузеру одновременно. С другой стороны, NFS работает в каждый момент времени только с частью файлов, обычно лишь с используемыми в данное время разделами. Имеется возможность с помощью NFS обновить разделы файла, а с помощью HTTP эта задача является практически неразрешимой. Ниже перечислены основные преимущества WebNFS по сравнению с HTTP и FTP:
Ф Управление соединением. Клиент службы WebNFS может загружать несколько файлов через единственное постоянное ТСР-соединение.
■ ф Параллелизм. Клиенты WebNFS могут выдавать множество параллельных запросов к серверу NFS. Эффект параллелизма заключается в лучшем использовании ресурсов сервера и сети, в более высокой производительности для конечного пользователя.
Ф Устойчивость к отказам. Служба WebNFS хорошо известна своей устойчивостью к отказам сети и сервера. В случае прерывания FTP-серверы требуют повторной загрузки с самого начала, что заставляет пользователей повторять операции и впустую тратить время на дублирования. Если какой-нибудь клиент WebNFS сталкивается с прерыванием, он может возобновить процесс именно с того места, где произошло прерывание.
Ф Производительность и масштабируемость. В настоящее время серверы NFS способны обрабатывать свыше 21000 операций в секунду. Они очень тесно интегрированы с ОС, настраиваются на максимальную производительность системы и достаточно просты для администрирования.
WebNFS позволяет упростить дистанционный доступ к файлам, может работать с брандмауэрами и через них, а это означает, что системные администраторы теперь могут задавать, какие именно каталоги или файлы они хотят экспортировать, или делать доступными, через Internet. После того как эти файлы были экспортированы, а какое-нибудь приложение выдало запрос на получение доступа к ним, WebNFS может автоматически размещать эти файлы, согласовывать привилегии доступа к ним и прозрачным образом выполнять монтирование данных файлов из любого места в сети Internet. Затем пользователи могут получить доступ к этой информации, как если бы данные находились на их локальных машинах.
В отличие от современных протоколов доступа к файлам, таких как HTTP и FTP, WebNFS представляет собой полную файловую систему, которая поддерживает редакти-
рование файла по месту, за счет чего исключается необходимость его загрузки на локальную машину, редактирования и повторной загрузки данного файла обратно на сервер. Вместо всего этого пользователи могут редактировать исходный файл непосредственно с их рабочих столов. Это экономит время и обеспечивает сохранение целостности совместно используемых файлов.
WebNFS может выполнять монтирование некоторой файловой системы целиком за один раз либо предоставлять возможность для обмена информацией с отдельными файлами на сервере. Эта возможность известна под названием MCL (Multi-Component Lookup - многокомпонентный поиск), она позволяет клиенту выполнять поиск какого-нибудь документа, опираясь на полностью заданный маршрут к некоторому файлу, вместо того, чтобы искать отдельные компоненты этого маршрута до тех пор, пока не будет обнаружено местоположение реального файла. Например, чтобы найти такой файл, KaK/books/solaris/test.txt в среде NFS,вы должны найти сначала отдельные компоненты имени его маршрута (books и Solaris), а уж затем сможете найти файл test.txt. С помощью WebNFS вы просто передаете полный маршрут на сервер, и этот сервер возвращает непосредственно вам размер и размещение данного файла. Это повышает производительность за счет исключения нескольких шагов передачи данных.
WebNFS поддерживает также усовершенствования, внесенные в NFS версии 3.0, посредством реализации более крупных, чем установленное в NFS версии 2 ограничение в 8 Кбайт, пакетов передачи данных, поддерживает 64-разрядные слова данных для файлов и файловые системы с размером, превышающим 4 Гбайт.
Чтобы использовать WebNFS, вашему Web-браузеру необходим клиент, а сервер Web или FTP должен содержать серверную часть WebNFS. Если вы запрашиваете файл с помощью WebNFS, то ваш URL может иметь вид, подобный одному из приведеных:
nfs://computer.site.com/filedirectory/file nfs://<server>:<port>/<path>
nfs://mymachine.javaworld.com:2049/home/rawn/webnfs.txt
nfs://mymachine.javaworld.com/pub/edit.doc
/-^||Ш|И|Й|^^<
Обратите внимание на то, что имя маршрута для URL в NFS не должно начинаться со слэша (символа косой черты). Маршрут, который начинается со слэша, оценивается относительно корневого каталога сервера, а не относительно каталога размещения общедоступных файлов.
NFS заменяет схему HTTP или FTP и должна быть включена непосредственно в браузер. По умолчанию номер порта равен 2049. Это порт службы NFS для соединений по про-токолу TCP. Сервер NFS понимает приведенную структуру каталогов как относительный маршрут от основания.
Как разрешить доступ через WebNFS
Начиная с версии 2.6 операционной системы Solaris, все файловые системы, которые доступны для монтирования средствами службы NFS, автоматически доступны через WebNFS.
Ручное конфигурирование файловой системы для доступа к ней через WebNFS
Чтобы вручную сконфигурировать файловую систему для доступа к ней с помощью WebNFS, выполните следующие операции:
Отредактируйте файл /etc/dfs/dfstab. Добавьте один элемент в файл /etc/dfs/ dfstab для файловой системы, которую вы хотите сделать автоматически разделяемой. Тег index является необязательным, однако опция public разрешает NFS- просмотр данной файловой системы через разрешенный от WebNFS браузер:
share -F nfs -о го,public,index=index.html /export/ftp
Убедитесь в том, что на данном сервере запущена служба NFS. Если это первая выданная вами команда share (или набор команд share), то весьма вероятно, что демоны NFS еще не запущены. Приведенные команды завершают эти демоны и запускают их повторно:
/etc/init.d/nfs.server stop /etc/init. d/nf s. server start
Сделайте файловую систему разделяемой. После ввода соответствующего элемента в файл /etc/dfs/dfstab данная файловая система может стать разделяемой либо путем перезапуска данной системы, либо путем использования команды shareall. Если на предыдущем этапе демоны служб NFS были перезапущены, то выдавать эту команду нет необходимости, поскольку она была запущена с помощью сценария initd.
shareall
Проверьте, что данная информация является корректной. Выполните команду share, чтобы проверить, что перечисляются правильные опции:
share
Система должна ответить, и ее вывод выглядит примерно так:
/export/share/manго ""
/usr/srcrw=eng ""
/export/ftpго.public,index=index.html ""
Использование браузера для получения доступа к URL в среде NFS
Браузеры, которые могут поддерживать доступ через WebNFS, должны предоставлять доступ с использованием некоторого NFS URL примерно такого вида:
nfs://<server>:<port>/<path>
Где server представляет собой имя файл-сервера, port - номер используемого порта (по умолчанию номер порта равен 2049), a path - имя маршрута к файлу или к файловой системе. Маршрут может исчисляться либо относительно размещения общедоступного файла, либо относительно корневой файловой системы на данном сервере.
Вы можете разрешить доступ через WebNFS для клиентов, которые не являются частью локальной подсети, посредством конфигурирования брандмауэра таким образом, чтобы разрешить соединение по протоколу TCP через порт 2049. Само по себе разрешение доступа для демона httpd еще не означает разрешения использовать URL NFS.
Убедитесь в том, что ваш браузер поддерживает WebNFS. Если это не так, вы получите сообщение об ошибке, подобное следующему: "NFS URLs are not supported" (URL протокола NFS не поддерживаются). В настоящее время в браузере HotJava фирмы Sun реализована поддержка WebNFS, а фирма Netscape заявляет, что она предоставит поддержку WebNFS.в будущем выпуске своего браузера. Internet Explorer корпорации Microsoft не поддерживает WebNFS.
CacheFS
Одним из важнейших показателей производительности компьютера является время доступа к файлам. В сетевом окружении, которое использует NFS, каждый запрос на доступ к файлу через сеть влияет на производительность. Файловая система CacheFS (Cache File System - файловая система кэша) может быть использована для повышения производительности файловых систем, смонтированных средствами NFS, или медленных устройств, таких как привод CD-ROM. Когда выполняется кэширование некоторой файловой системы, то данные, считанные с дистанционной файловой системы или с диска CD-ROM, сохраняются в кэше на диске локальной системы. Прежде всего, введем несколько новых терминов:
Ф Отдаленная файловая система или серверная (back file system). Файловая система на дистанционном хосте или надиске CD-ROM, которая подвергается кэшированию. Обычно это какая-нибудь файловая система типа NFS или HSFS. Файлы в отдаленной файловой системе называются отдаленными.
$> Фронтальная файловая система (front file system). Файловая система, содержащая кэшированные данные; обычно это файловая система UFS. Файлы во фронтальной файловой системе называются фронтальными.
$> Кэшированная файловая система (cached file system). Файловая система, ко-то- рая находится на локальном диске. Файлы этой файловой системы называются кэшированными.
$> Каталог кэша (cache directory). Каталог на локальном диске, где сохраняются данные для кэшированной файловой системы.
$> Холодный кэш (cold cache). Кэш, который еще не имеет никаких данных в его фронтальной файловой системе. Для создания кэша затребованные данные должны быть скопированы из отдаленной файловой системы во фронтальную. Этот процесс называется заполнением кэша. Попытка сослаться на данные, которые еще не кэшированы, называется промахом, или осечкой, кэша.
ф Теплый кэш (warm cache). Кэш, который содержит желаемые данные в его фронтальной файловой системе. Запрашиваемые данные доступны для пользователя, при этом никаких действий со стороны отдаленной файловой системы не требуется. Попытка сослаться на данные, которые уже кэшированы, называется попаданием или результативным обращением в кэш.
Создание кэша
Кэш должен существовать до того, как сможет быть выполнено монтирование CacheFS. Для создания кэша не требуется никакой специальной разбивки диска. Файловая система кэша может быть создана в каком-нибудь подкаталоге существующей файловой системы, либо вы можете выделить для целей кэширования какую-нибудь файловую систему целиком. Единственное требование заключается в том, что вы должны создавать кэш в смонтированных локальных файловых системах. Для создания локального кэша существует команда cfsadmin.
Примечание -с *
Не задавайте для фронтальной файловой системы режим только для чтения и не устанавливайте на ней дисковые квоты. Фронтальная файловая система, которая доступна только для чтения, не позволяет выполнять кэширование, а квоты для файловой системы и механизмы управления, встроенные в CacheFS, мешают друг другу.
Шаг за шагом■ ■ ;^?- ■ ;
17.3 Установка кэшированной файловой системы
Для установки кэшированной файловой системы следует выполнить две операции:
Создайте кэш с помощью команды cfsadmin. Эта команда администрирует дисковое пространство, используемое для файловых систем кэширования, с помощью CacheFS. Синтаксис команды cfsadmin для создания кэша выглядит следующим образом:
cfsadmin -с <cache-directory>
Здесь cache-directory обозначает имя того каталога, в котором размещается кэш.
Приведенный пример демонстрирует, как создать кэш:
mkdir /local
cfsadmin -с /local/cachel
Команда cfsadmin создает подкаталог под названием /cachel, который содержит структуры данных CacheFS, необходимые для монтирования.
Смонтируйте файловую систему, которую вы хотите кэшировать, с использованием опции -F cachefs команды mount. Синтаксис команды mount для монтирования файловой системы в кэш выглядит следующим образом:
mount -F cachefs -о backfstYpe=<fstype>,cachedir= \ <cache-directory>[, options] <back-filesystem> <mount-point> Причем, backfstype=<fstype> обозначает тип отдаленной файловой системы. Параметр fstype может в данном случае иметь либо значение nfs, либо значение hsfs.
A cachedir=< cache-directory> - имя того каталога, в котором размещается данный кэш. Это то же самое имя, которое вы задали при создании кэша на этапе 1. [options] обозначают другие опции монтирования, которые вы можете включить при монтировании файловой системы в кэш. Эти опции, которые описываются в таблице 17.4, перечисляются после флага -о и могут быть сгруппированы в некоторый список, разделенный запятыми (использование символов пробела в данном списке не допускается).
<back-filesystem> - точка монтирования отдаленной, или серверной, файловой системы для кэша. Если таковой является файловая система NFS, то вы должны задать имя хоста того сервера, с которого монтируете данную файловую систему, и имя файловой системы, подлежащей кэшированию (эти имена должны быть разделены символом двоеточия), что и показано:
sparc21:/data
<mount-point> - каталог, монтирования данной файловой системы.
Тя^пица 17.4 Опций команды mount 7 ; . . /1
ОпцияОписание
acdirmax=nОпределяет, что кэшированные атрибуты сохраняются не более п се
кунд после обновления каталога. По истечении п секунд вся информация каталога удаляется из кэша. По умолчанию принято 30 секунд.
Продолжение таблицы 17.4
Опция
Описание
acdirmin=n
Определяет, что кэшированные атрибуты сохраняются не менее п секунд после обновления каталоге. По истечении п секунд CacheFS проверяет, изменилось ли время последней модификации данного каталога на отдаленной файловой системе. Если это так, то вся информация об этом каталоге удаляется из кэша, а из отделенной файловой системы извлекаются новые данные. По умолчанию принято 30 секунд.
acregmax=n
Определяет, что кэшированные атрибуты сохраняются не более п секунд после модифицирования файла. По истечении п секунд вся информация файла удаляется из кэша. По умолчанию принято 30 секунд.
acregmin=n
Определяет, что кэшированные атрибуты сохраняются в течение, по крайней мере, п секунд после модифицирования файла. По истечении п секунд CacheFS проверяет, изменилось ли время последней модификации данного файла на отдаленной файловой системе. Если это так, то вся информация об этом файле удаляется из кэша, а из отдаленной файловой системы извлекаются новые данные. По умолчанию принято 30 секунд.
actimeo=n
Устанавливает значения опций acregmin, acregmax, acdirmin и acdirmax равными n.
cacheid=<ID>
Параметр ID представляет собой некоторую строку, которая определяет конкретный экземпляр кэша. Если вы не задали идентификатор кэша, то CacheFS создает один кэш.
demandconst
Проверяет непротиворечивость (согласованность) кэша только при поступлении явного запроса на выполнение такой проверки вместо периодического проведения указанной проверки, как это делается по умолчанию. Вы можете звтребовать выполнение проверки непротиворечивости кэша путем использования опции -s команды cfsadmin. Эта опция оказывается полезной в том случае, когда отделенные файловые системы изменяются достаточно редко, как, например, /usr/openwin. Опции demandconst и noconst являются взаимно исключающими.
local-access
Заставляет фронтальную файловую систему интерпретировать биты режиме, применяемые для проверки полномочий доступа, вместо проверки полномочий доступа на отдаленной файловой системе. Не используйте эту опцию при работе с защищенными службами NFS.
noconst
Отключает проверку непротиворечивости кэша. По умолчанию разрешена периодическая проверка непротиворечивости. Задавайте опцию noconst только в том случае, когда вы знаете, что отдаленная файловая система не будет модифицироваться. Попытка выполнить проверку непротиворечивости кэша путем использования опции -s команды cfsadmin приведет к выдаче сообщения об ошибке. Опции demandconst и noconst являются взаимно исключающими.
purge
Удаляет всю кэшированную информацию для заданной файловой системы.
ro | rw
Монтирует файловую систему только для чтения либо для чтения-записи (по умолчанию).'
suid | nosuid
Разрешает (по умолчанию) или запрещает исполнение setuid.
write-around | non-shared
Режимы записи для CacheFS. Режим write-around (по умолчанию) обрабатывает операции записи точно так же, квк это делается в файловой системе NFS. Другими словами, операции записи выполняются на отдаленной файловой системе, и затронутый этой записью файл удаля-
Продолжение таблицы 17.4 ОпцияОписание
ется из кэша. Вы можете использовать режим non-shared в том случае, когда уверены, что ничего другого не будет записано в данную кэшированную файловую систему. В этом режиме все операции записи выполняются как на отдаленной, так и на фронтальной файловой системе, и затронутый этой записью файл остается в кэше.
-ООверлейное монтирование. Позволяет данной файловой системе быть
смонтированной поверх какой-нибудь существующей точки монтирования, что делает недоступной нижележащую файловую систему. Если попытаться выполнить монтирование к какой-нибудь из ранее существующих точек монтирования без установки данного флага, то команда mount завершится аварийно, будет сгенерировано следующее сообщение об ошибке:
mount -F cachefs: mount failed Device busy.
Приведенный ниже пример демонстрирует создание точки монтирования /sparc21 data и монтирование файловой системы NFS с именем sparc21:/data в качестве кэшированной с именем /sparc21data в кэш, который имеет имя /local/cachel:
mkdir /sparc21data
mount -F cachefs -o backfstype=nfs,cachedir=/local/cachel sparc21: \
/data /sparc21data
Теперь точка монтирования файловой системы CacheFS, /sparc21data, может быть доступна точно так же, как и любая другая смонтированная файловая система.
Чтобы сделать данную точку монтирования постоянной, добавьте следующую строку в ваш файл /etc/vfstab:
sparc21:/data /local/cachel /sparc21data cachets 3 yes backfstype=nfs, \ cachedir=/local/cachel
Проверьте, что созданный вами кэш был действительно смонтирован, для чего воспользуйтесь командой cachefsstat: cachefsstat /sparc21data /sparc21data cache hit rate:0%(0hits,8misses)
consistency checks:7(5pass,2fail)
modifies:0
garbage collection:0
Если данная файловая система не была смонтирована в этом кэше, вы получите сообщение, подобное приведенному:
cachefsstat /sparc21data
cachefsstat: /sparc21data: not a cachets mountpoint
Когда данные в первый раз запрашиваются из файловой системы CacheFS, возникают определенные накладные расходы, связанные с заполнением кэша, однако последующие обращения к тем же самым данным не требуют доступа к отдаленной файловой системе. Теплый кэш обеспечивает производительность, близкую к производительности локальной файловой системы, однако без необходимости администрирования и без накладных расходов, связанных с локальными файловыми системами. Производительность CacheFS по сравнению с файловыми системами NFS, смонтированными традиционным образом,
существенно выше, в особенности для клиентов, использующих медленные сетевые каналы связи или серверы с большой нагрузкой.
Вы также можете кэшировать несколько файловых систем в одном и том же кэше. Нет необходимости создавать отдельный кэш для каждой точки монтирования файловой системы CacheFS. Другими словами, вы должны выполнить команду cfsadmin -с только один раз при создании единственного кэша для монтирования всех ваших файловых систем CacheFS.
Потенциально могут быть кэшированы многие типы отдаленных файловых систем. Например, определенный выигрыш в производительности дает кэширование медленных носителей информации, таких как диски CD-ROM, на каком-нибудь быстром накопителе на жестком диске с использованием CacheFS. Однако локальные файловые системы (файловые системы UFS) обычно не кэшируются.
Любая файловая система, доступ к которой в основном осуществляется для чтения данных, является хорошим кандидатом на кэширование. В качестве примера превосходного кандидата на кэширование можно привести файловую систему /usr/share/man. Файловые системы, чтение данных из которых выполняется обычно только один раз, такие как / var/mail, не являются хорошими кандидатами на кэширование, данные из них обычно считываются однократно и затем сбрасываются. В данном случае вы несете затраты, связанные с заполнением кэша, без получения заметных преимуществ, связанных с последующим доступом к кэшу.
Файловая система CacheFS не дает никаких преимуществ при выполнении операций записи. Это связано с тем, что CacheFS представляет собой кэш с исключительно сквозной записью. Производительность операций записи на CacheFS никогда не будет выше, чем на отдаленной файловой системе.
CacheFS также не обеспечивает повышения производительности служб NFS. Вполне возможно, что какой-нибудь конкретный клиент не заметит большого повышения производительности от кэширования, в особенности при работе на слабо загруженной быстрой локальной сети, сервер которой представляет собой мощную машину с быстрыми дисками. Преимущества кэширования проявляются на загруженных сетях с высокой нагрузкой на серверы.
Мониторинг кэша
Вы можете использовать статистику CacheFS для мониторинга производительности вашего кэша с целью определения его подходящего размера. Три команды, перечисленные в таблице 17.5, помогут вам определить рациональный компромисс между размером вашего кэша и его желаемой производительностью.
Команда
Описание
cachefslog
Определяет местоположение файла протоколирования. Данная команда также отображает информацию о том, где в настоящее время протоколируется статистика, и позволяет прекратить выполнение протоколирования.
cachefswssize
Интерпретирует файл протокола с целью выдачи рекомендуемого размера кэша.
cachefsstat
Отображает статистическую информацию о какой-нибудь конкретной файловой системе или обо всех кэшированных файловых системах. Данные, представленные в выводе этой команды, берутся непосредственно из кэша.
Принятые по умолчанию значения параметров кэша, используемые командой cfsadmin, соответствуют кэшу, который применяет для целей кэширования всю фронтальную файловую систему целиком. Если же кэш ограничен только частью фронтальной файловой системы, то эти параметры должны быть изменены. Команда cfsadmin позволяет вам задать опции, которые перечисляются в таблице 17.6.
ОпцияОписание
maxblocksmaxblocksminblocksminblocksthreshblocksthreshblocksУстанавливает максимальное количество блоков, которые CacheFS имеет право запрашивать внутри фронтальной файловой системы. При этом не гарантируется, что эти ресурсы будут доступны для CacheFS. Значение этой опции по умолчанию - 90%. Обратите внимание на то, что производительность файловой системы UFS существенно снижается, если эта файловая система превышает 90% отведенной ей емкости.
maxblocks
maxblocks
minblocks
minblocks
threshblocks
threshblocks
Эта опция работает совместно с опцией threehblocks. Опция не гарантирует доступности минимального уровня ресурсов. Значение этой опции по умолчанию - 0%.
Работает совместно с опцией minblocks. Значение этой опции игнорируется до тех пор, пока не достигнуто значение опции minblocks. CacheFS может запрашивать большее количество блоков, чем определено опцией minblocks, только в том случае, если процент доступных блоков во фронтальной файловой системе больше, чем значение опции threshblocks. Это значение применяется ко всей фронтальной файловой системе в целом, а не только к ее кэшированной части. Значение этой опции по умолчанию - 85%.
maxfilesУстанавливает максимальное количество файлов (индексных дескрип
minfiles/threshfilesminfiles/threshfilesторов), которые может запрашивать CacheFS. При этом не гарантируется, что эти ресурсы будут доступны для CacheFS. Значение этой опции по умолчанию - 90%.
minfiles/threshfiles
minfiles/threshfiles
Эти опции работают совместно таким же образом, как опция minblocks с опцией threshblocks. По умолчанию значение опции minfiles - 0%, а значение опции threshfiles - 85%.
Вы вовсе не обязательно должны изменять значения любого из этих параметров. Они устанавливаются в значения по умолчанию для достижения оптимального поведения кэша. Однако, как будет показано в следующем примере, вы можете захотеть модифицировать значения установок maxblocks и maxfiles, если у вас имеется некоторое пространство во фронтальной файловой системе, которое не используется кэшем, и вы хотите задействовать это пространство для какой-нибудь другой файловой системы. Приведенный ниже пример демонстрирует создание кэша, имеющего имя /local/cachel, который может использовать до 80 процентов дисковых блоков во фронтальной файловой системе. Этот кэш может расширяться до использования 55 процентов блоков во фронтальной файловой системе без каких-либо ограничений, если только 60 процентов (или более) блоков во фронтальной файловой системе уже не задействованы:
cfsadmin -с -о mzucblocks=80,minblocks=55,threshblocks=60 /local/cachel
Чтобы модифицировать параметры CacheFS, прежде всего демонтируйте файловую систему. Приведенный пример демонстрирует демонтирование файловой системы /local/ cachel и изменение значения параметра threshfiles на 65 процентов:
amount /sparс2Idata
cfsadmin -и -о threshfiles=65 /local/cachel.
mount /sparc21data
ПРИМЕЧАНИЕ • ;!
Размер кэша, вне зависимости от того, задается он в количестве блоков или в количестве индексных дескрипторов, может быть только увеличен. В случае необходимости уменьшения размера данный кэш должен быть удален, а затем создан повторно с новым значением размера.
Для отображения информации обо всех файловых системах, кэшированных под заданным каталогом кэша, введите следующую командную строку:
cfsadmin -1 <directory_name> и нажмите Enter.
Приведенный пример демонстрирует, как отобразить информацию кэша:
cfsadmin -1 /local/cachel
Система отвечает следующим образом:
cfsadmin:list
maxblocks minblocks threshblocks maxfiles minfiles threshfiles maxfilesize
sparc21: data: mnt
cache FS information
90%
0%
85%
90%
0%
85%
3MB
sparc21: data: sparc21data
Вывод отображает статистику, за которой следуют идентификаторы кэша (cachelD) всех файловых систем, сохраняемых в данном кэше. Например, идентификатор кэша файловой системы sparclldata выглядит следующим образом:
sparc21: data: sparc21data
Удаление кэша
Прежде чем удалять какую-нибудь кэшированную файловую систему, вы должны демонтировать все кэшированные файловые системы из данного каталога кэша.
Чтобы удалить файловую систему в некотором кэше, наберите следующую командную строку:
cfsadmin -d <cache_id> <cache_directorY> и нажмите Enter.
<cache_id> - это часть информации, возвращаемая командой cfsadmin -1. В предыдущем примере с командой cfsadmin -1 идентификатор <cache_id> был отображен в последней строке вывода этой команды, и он таков: sparcll: data: sparclldata.
После того как одна или несколько файловых систем были удалены, для корректировки учета ресурса данного кэша следует выполнить команду fsck -F cachefs. Приведенный ниже пример демонстрирует, как демонтировать кэшированную файловую систему, удалить ее из кэша и выполнить команду fsck -F cachefs:
umount /sparc21data
cfsadmin -d sparc21:_data :_sparc21data /local/cachel fsck -F cachefs /local/cachel
Вы можете удалить все файловые системы из какого-нибудь конкретного кэша посредством использования аргумента all с опцией -d, как показано в следующем примере. Приведенный пример демонстрирует удаление всех файловых систем, кэшированных в /local/cachel, и самого заданного каталога кэша:
cfsadmin -d all /local/cachel
Проверка согласованности
Чтобы убедиться, что кэшированные каталоги и файлы находятся в актуальном состоянии, CacheFS периодически проверяет согласованность (непротиворечивость) файлов, которые сохраняются в данном кэше, с файлами на отдаленной файловой системе. Чтобы выполнить проверку непротиворечивости, CacheFS сравнивает текущее время модификации с предыдущим временем. Если эти времена отличаются между собой, то все данные и атрибуты данного каталога или файла удаляются из кэша, а затем из отдаленной файловой системы извлекаются новые данные и атрибуты.
Когда пользователь выдает запрос на проведение операции с каталогом или файлом, CacheFS проверяет, не пришло ли время для проверки непротиворечивости. Если это так, то CacheFS получает значение времени модификации из отдаленной файловой системы и выполняет сравнение.
По умолчанию CacheFS всегда выполняет проверку согласованности. Если для команды mount задано ключевое слово noconst, то проверка отключается. В этом режиме не предпринимается никаких попыток, чтобы проверить, сохраняется ли согласованность данного кэша с отдаленной файловой системой. В том случае, если отдаленная файловая система доступна только для чтения, проверять непротиворечивость нет никакой необходимости. Если некоторая отдаленная файловая система доступна только для чтения, используйте ключевое слово noconst.
Путем задания команды mount с опции demandconst вы можете выполнять проверки непротиворечивости, если зададите их в явном виде для файловых систем, смонтированных с использованием данной опции. После задания опции demandconst, когда вы смонтируете файловую систему в некоторый кэш, используйте команду cfsadmin с опцией -s для задания проверки непротиворечивости. По умолчанию проверка непротиворечивости проводится последовательно, файл за файлом, по мере того, как эти файлы становятся доступными. Если ни один файл не является доступным, никакие проверки не проводятся. Используйте опцию demandconst для исключения ситуации, когда сеть наводняется проверками непротиворечивости.
Приведенный ниже пример демонстрирует использование опции demandconst при проверке согласованности по запросу для кэшированной файловой системы NFS -/sparc21data, чья отдаленная файловая система называется sparc21:/data:
mount -F cachefs -о backfstype=nfs,cachedir=/local/cachel,demandconst \ sparc21:/data /sparc21data
AutoFS
В тех случаях, когда сеть содержит даже среднее количество систем, любые попытки монтировать файловые системы с каждой вычислительной системы быстро могут превратить управление службой NFS в настоящий ночной кошмар. Средство AutoFS, которое также называется автомонтировщиком (automounter), спроектировано для разрешения подобных ситуаций путем предоставления некоторого метода, при котором дистанционные ката-логи монтируются только тогда, когда используются.
Когда какой-нибудь пользователь или приложение пытается получить доступ к некоторой точке монтирования NFS, то устанавливается требуемое монтирование. Когда же конкретная файловая система перестает быть необходимой или доступ к ней не осуществляется в течение определенного периода времени, то эта файловая система автоматически демонтируется. В результате накладные расходы в сети снижаются, система загружается быстрее, поскольку монтирование файловых систем NFS выполняется позднее, а системы могут быть закрыты без проявления небольших, но неприятных эффектов и без зависания процессов.
Файловые системы, которые совместно используются через NFS, могут быть смонтированы с помощью службы AutoFS. Эта служба является клиентской и представляет собой некоторую структуру файловой системы, которая обеспечивает автоматическое монтирование. Файловая система AutoFS инициализируется программой automount, которая выполняется автоматически в процессе запуска системы. Демон программы automount, называемый automountd, выполняется постоянно, монтируя и демонтируя дистанционные каталоги по мере возникновения и исчезновения потребности в них.
Нет необходимости проводить монтирование непосредственно в процессе запуска системы, а пользователю больше не нужно знать пароль суперпользователя лишь для того, чтобы выполнить монтирование некоторого каталога. При использовании службы AutoFS пользователям не нужно применять команды mount и umount. AutoFS монтирует файловые системы именно тогда, когда пользователям требуется доступ к ним, и демонтирует файловые системы, когда они больше не требуются, без какого-либо вмешательства в эти процессы со стороны пользователя.
Однако некоторые файловые системы по-прежнему должны быть смонтированы с помощью команды mount, выдаваемой с привилегиями суперпользователя. Например, какой-нибудь бездисковый компьютер должен монтировать корневую (/) файловую систему, файловые системы /usr и /usr/kvm с помощью команды mount и не может воспользоваться преимуществами AutoFS.
AutoFS поддерживается двумя программами: automount и automountd. Обе эти программы запускаются в процессе загрузки системы с помощью сценария /etc/init.d/autofs.
Служба automount устанавливает точки монтирования AutoFS и связывает информацию в файле auto master с каждой из этих точек монтирования. Команда automount, вызываемая в процессе запуска системы, считывает главный файл отображения, который имеет имя auto master, для создания исходного набора точек монтирования службы AutoFS. Эти точки не монтируются автоматически в процессе запуска системы. Они представляют собой присоединенные точки, также называемые присоединенными узлами, к которым файловые системы монтируются в будущем. Синтаксис команды automount выглядит следующим образом:
automount -t <duration> -v
где -t <duration> устанавливает время (в секундах), в течение которого некоторая файловая система остается смонтированной, если уже не используется.
Опция -v выбирает режим расширенного вывода информации. Выполнение рассматриваемой команды в режиме расширенного вывода информации позволяет упростить локализацию проблем. Если не была сделана специальная установка, то значение duration для какой-нибудь неиспользуемой точки монтирования устанавливается равным пяти минутам. В большинстве случаев это значение является вполне приемлемым; однако на системах, которые имеют большое количество автоматически монтируемых файловых систем, вам может потребоваться увеличить значение duration. В частности, если какой-нибудь сервер имеет множество пользователей, то активная проверка автоматически монтируемых файловых систем через каждые пять минут может оказаться неэффективной. В результате демонтирования файловых систем через каждые пять минут может оказаться, что файл /etc/mnttab, который проверяется с помощью команды df, будет слишком большим. Проверка файловых систем AutoFS через каждые 1800 секунд (30 минут) может оказаться более оптимальной. Для изменения указанных значений, принятых по умолчанию, отредактируйте сценарий /etc/initd/autofs.
Если AutoFS принимает запрос на предоставление доступа к некоторой файловой системе, которая не смонтирована в настоящее время, то AutoFS вызывает демон automountd, который фактически выполняет монтирование запрошенной файловой системы под присоединенным узлом.
Демон automountd обрабатывает запросы на монтирование и демонтирование файловых систем, которые поступают от AutoFS. Синтаксис соответствующей команды выглядит следующим образом:
automountd <-Tnv> <-D name=va2ue>
Опция -T отображает каждый вызов RPC (Remote Procedure Call - вызов дистанционной, или удаленной процедуры) на стандартное устройство вывода. Эту опцию полезно применять для локализации проблем.
Опция -п отключает просмотр на всех узлах AutoFS.
Опция -v протоколирует все сообщения состояний на системную консоль.
Опция -D name=value подставляет значение value для переменной таблицы automount, которая обозначается параметром name. Значением по умолчанию для таблицы automount является файл /etc/auto_master.
Демон automountd полностью независим от команды automount. Поскольку демон и команда разделены, то существует возможность добавления, удаления или изменения таблицы информации, но при этом не нужно сначала останавливать, а потом вновь запускать процесс демона automountd.
Чтобы проиллюстрировать AutoFS в действии, рассмотрим происходящее:
Программы automount и automountd инициируются в процессе запуска системы с помощью сценария /etc/initd/autofs. Если поступает запрос на предоставление доступа к какой-нибудь файловой системе в некоторой точке монтирования службы AutoFS, то система выполняет следующие операции:
AutoFS перехватывает данный запрос.
AutoFS посылает сообщение демону automountd, чтобы запрошенная файловая система была бы смонтирована.
Демон automountd размещает информацию об этой файловой системе в таблице и выполняет монтирование.
AutoFS разрешает возобновить перехваченный запрос.
AutoFS демонтирует данную файловую систему по истечении некоторого периода ее неактивности.
ПРИМЕЧАНИЕ *.
Точки монтирования, которые управляются через службу AutoFS, не должны монтироваться или демонтироваться вручную. Даже если операция монтирования или демонтирования завершилась успешно, служба AutoFS не проверяет, что данный объект был демонтирован, в результате чего может возникнуть несогласованность. Перезапуск очищает все точки монтирования AutoFS.
Чтобы увидеть, кто может использовать какую-нибудь конкретную монтировку NFS, воспользуйтесь командой showmount, которая описывается в таблице 17.7. Синтаксис команды showmount выглядит следующим образом:
showmount <options>
Та^и^71^К^а^^1^М«)Ц^ <ч
ОпцияОписание
аВыводит на печать список всех дистанционных монтировок в формате
hostname:directory, где hostname представляет собой имя клиента, а directory - имя корневого каталога монтируемой файловой системы.
dВыводит список каталогов, которые были дистанционно смонтированы
клиентами.
еВыводит на печать список разделяемых, или совместно используемых,
файловых систем.
Приведенный ниже пример демонстрирует применение команды showmount для отображения списка файловых систем, которые в настоящее время смонтированы с дистанционных вычислительных систем. На сервере NFS по имени neptune наберите следующую команду:
showmount -а
Система отображает следующую информацию:
apollo:/export/home/neil
Команда showmount сообщает вам о том, что дистанционный хост, имеющий имя apollo, в настоящее время смонтировал файловую систему /export/home/neil данного сервера.
Таблицы службы AutoFS
Поведение автоматического монтировщика регулируется его конфигурационными файлами, которые называются таблицами. Служба AutoFS выполняет поиск в этих таблицах для навигации через сеть. Файлы таблиц содержат такую информацию, как пароли всех пользователей данной сети или имена всех узловых компьютеров в сети.
Главная таблица
Чтобы стартовать процесс навигации, команда automount считывает главную таблицу в процессе запуска системы. Эта таблица как раз и сообщает автомонтировщику о файлах таблиц и точках монтирования. Таблица auto_master содержит список всех прямых и косвенных таблиц и связанных с ними каталогов.
Главная т таблицей. Гла жна проверит!
# Mas *
таблица, которая находится в файле /etc/auto_master, связывает некий каталог с вная таблица - это некоторый список,определяющий все таблицы, которые дол- i AutoFS. Приведенный пример демонстрирует содержимое файла auto master: ter map for automounter
+auto /net /home /xfn
В ЭТОМ П| начинаются +auto_mastei лено в главе имеет следую
_master
-hosts-nosuid,nobrowse
auto_home-nobrowse
-xfn
эимере показан принятый по умолчанию файл auto master. Строки, которые с символа #, представляют собой комментарии. Строка, включающая •, определяет таблицу отображения Autofs NIS, описание которой представ- 18. Каждая следующая строка в главной таблице, файле /etc/automaster, >щий синтаксис:
<mount
Каждое i
Таблица 17
-point> <map-name> <mount-options>
13 приведенных полей описывается в таблице 17.8.
Поле
Описание
mount-point
Это полное (абсолютное) имя маршрута того каталога, который используется в качестве точки монтирования. Если данный каталог не существует, AutoFS создает его, если это возможно. Если данный каталог существует и является непустым, то монтирование к нему скрывает прежнее содержимое каталога. В таком случае служба AutoFS выдает предупреждение. Использование нотации вида /- в качестве точки монтирования обозначает, что с данной таблицей ассоциируется прямое отображение без каких-либо конкретных точек монтирования.
map-name
Это таблица, которую AutoFS использует для поиска каталогов, определяющих местоположение или информацию монтирования. Если имя таблицы начинается с прямого слэша, то AutoFS интерпретирует данное имя как некоторый локальный файл. В противном случае AutoFS выполняет поиск информации монтирования с использованием параметров поиска, определенных в конфигурационном файле переключателей службы имен (файл /etc/nsswitch.conf). Переключатели службы имен описываются в главе 18.
mount-options
Необязательный список опций, разделенных запятыми, которые применяются при монтировании элементов таблицы, заданной аргументом map-name, если только эти элементы не содержат другого списка опций. Опции для каждого конкретного типа файловой системы перечисляются в таблице 17.3 применительно к синтаксису команды mount. 'Для точек монтирования, именно специфичных для службы NFS, опции
bg (монтирование в фоновом режиме) и fg (монтирование в приоритетном режиме) не применяются.
Каждая инсталляция операционной системы Solaris поставляется с главной таблицей, называемой /etc/automaster, которая по умолчанию содержит приведенные выше элементы. Без каких бы то ни было изменений в общей установке системы клиенты должны иметь возможность получения доступа к дистанционным файловым системам через точку монтирования /net. Эту возможность обеспечивает приведенный элемент файла /etc/automaster:
/net -hosts -nosuid,nobrowse
■ 4 ПРИМЕЧАНИЕ
Строка в файле /etc/auto_master, которая начинается с символа номера (#), представляет собой комментарий, а все, что содержится в данной строке после этого символа и до конца строки, игнорируется. Для разделения длинных строк на более короткие поместите символ обратного слэша в конце строки. Максимальное количество символов в одном элементе файла /etc/auto_master равняется 1024.
Например, предположим, что у вас есть сервер NFS, который называется apollo и содержит экспортированную файловую систему /export. В сети имеется еще одна система по имени zeus. В этой системе имеются принятые по умолчанию файл /etc/auto_master и каталог с именем /net. Если вы введете команду
Is /net
то вывод этой команды покажет, что данный каталог пуст- в нем ничего нет. Теперь введите следующую команду:
Is /net/apollo
Система отвечает следующим образом:
export
Почему же каталог был пуст при первой выдаче команды 1s? И почему команда Is /net/ apollo обнаружила в этом каталоге подкаталог? Это результат работы автоматического монтировщика. Когда был задан каталог с именем хоста, то демон automountd нашел файл таблицы - в данном случае, это был файл /etc/bosts -ив этом файле нашел сервер apollo и его IP-адрес. Затем он обратился к серверу apollo, нашел на нем экспортированную файловую систему и создал локальную точку монтирования для файловой системы - /net/apollo/ export. Демон automountd также добавил следующий элемент в файл /etc/mnttab:
-hosts /net/apollo/export autofs nosuid,nobrowse,ignore,nest, \ dev=2b80005 941812769
Этот элемент в файле /etc/mnttab называется присоединенным узлом.
Если вы выдадите команду mount, то не увидите ничего в данной точке монтирования: mount
/ on /dev/dsk/c0t3d0s0 read/write/setuid/largefiles on Mon \
Nov 1 06:05:46 1999
/usr on Zdev/dsk/c0t3d0s6 read/write/setuid/largefiles on Mon \
Nov 1 06:05:46 1999
/proc on /proc read/write/setuid on Mon Nov 1 06:05:46 1999
/dev/fd on fd read/write/setuid on Mon Nov 1 06:05:46 1999
/export on /dev/dsk/o0t3d0s3 setuid/read/write/largefiles on Mon \
Nov 1 06:05:49 1999
/export/swap on /dev/dsk/c0t3d0s4 setuid/read/write/largefiles on Mon \
Nov 1 06:5:49 _A 1999
/tmp on swap read/write on Mon Nov 1 06:05:49 1999
А теперь введите следующую команду:
Is /net/apollo/export
Вы сможете заметить небольшую задержку на то время, пока демон automountd монтирует данную файловую систему, затем система отвечает следующим образом:
files lost+found
Перечисленные файлы находятся на сервере apollo в каталоге /export. Если вы введете команду mount, то увидите файловую систему, смонтированную на сервере apollo, которая не была перед этим включена в список: mount / on /dev/dsk/c0t3d0s0 read/write/setuid/largefiles on Mon \ Nov 1 06:05:46 1999 /usr on /dev/dsk/c0t3d0s6 read/write/setuid/largefiles on Mon \ Nov 1 06:05:46 1999 /proc on /proc read/write/setuid on Mon Nov 1 06:05:46 1999 /dev/fd on fd read/write/setuid on Mon Nov 1 06:05:46 1999 /export on /dev/dsk/c0t3d0s3 setuid/read/write/largefiles on Mon \ Nov 1 06:05:49 1999 /export/swap on /dev/dsk/c0t3d0s4 setuid/read/write/largefiles on Mon \ Nov 1 06:05:49 1999 /tmp on swap read/write on Mon Nov 1 06:05:49 1999 /net/apollo/export on apollo:/export nosuid/remote on Fri Nov 5 \ 09:48:03 1999
Автомонтировщик автоматически смонтировал файловую систему /export, которая находилась на сервере apollo. А теперь посмотрите еще раз на файл /etc/mnttab и вы увидите в нем дополнительные элементы:
more /etc/mnttab /dev/dsk/c0t3d0s0 /ufsrw,suid,dev=800018,largefiles 941454346
/dev/dsk/c0t3d0s6 /usr ufsrw,suid,dev=80001e,largefiles 941454346
/proc /proc proc rw,suid,dev=2940000941454346
fd /dev/fd fd rw,suid,dev=2a00000 941454346 /dev/dsk/c0t3d0s3 /export ufs suid,rw,largefiles,dev=80001b 941454349 /dev/dsk/c0t3d0s4 /export/swap ufs suid,rw,largefiles,dev=80001c swap /tmp tmpfs dev=l 941454349 -hosts /net autofs ignore,indirect,nosuid,nobrowse,dev=2b80001 941454394 auto_home /home autofs ignore,indirect,nobrowse,dev=2b80002 941454394 -xfn /xfn autofs ignore,indirect,dev=2b80003941454394
sparcserver:vold(pid246) /vol nfs ignore,noquota,dev=2b40001 941454409 -hosts /net/apollo/export autofs nosuid,nobrowse,ignore,nest,dev=2b80005 apollo:/export /net/apollo/export nfs nosuid,dev=2b40003 941813283
Если каталог /net/apollo/export является доступным, то служба AutoFS завершает данный процесс, выполняя при этом следующие операции:
Она запрашивает службу монтирования данного сервера, чтобы проверить, функционирует ли эта служба.
Служба AutoFS монтирует запрошенную файловую систему под каталогом /net/ apollo/export. Теперь файл /etc/mnttab содержит следующие элементы:
-hosts /net/apollo/export autofs nosuid,nobrowse,ignore,nest, \ dev=2b80005 941812769 apollo:/export /net/apollo/export nfs nosuid,dev=2b40003 941813283
Поскольку автомонтировщик позволяет всем пользователям выполнять монтирование файловых систем, доступ с привилегиями суперпользователя для этого уже не требуется. Служба AutoFS обеспечивает также автоматическое демонтирование файловых систем, поэтому вам нет необходимости демонтировать их по окончании своей работы.
Прямая таблица
Прямая таблица содержит список некоторого набора несвязанных точек монтирования, которые могут быть развернуты в пределах данной файловой системы. В данной таблице в качестве точки монтирования указывается полное имя маршрута (например, /usr/ local/bin или /usr/man). Ярким примером того, где следует использовать точку прямого монтирования, является каталог /usr/man. Каталог /usr содержит множество других каталогов, таких как /usr/bin и /usr/Iocal; следовательно, он не может использоваться в качестве точки косвенного монтирования. Если бы вы использовали косвенную таблицу для каталога /usr/man, то локальная файловая система /usr могла бы быть точкой монтирования, и вы могли бы перекрывать каталоги /usr/bin и /usr/etc, когда установите данное монтирование. Прямая таблица позволяет автомонтировщику выполнять монтирования на единственный каталог, такой как /usr/man, который в данном случае представляется в качестве некоторой ссылки на имя точки прямого монтирования.
Прямая таблица задается в конфигурационном файле, который называется /etc/ auto direct. С помощью прямой таблицы устанавливается прямая ассоциация между точкой монтирования на системе клиента и каталогом на сервере. Прямые таблицы имеют полное имя маршрута и обозначают взаимоотношения между точкой монтирования и каталогом в явном виде. Вот типичная таблица /etc/auto_direct:
/usr/local-го
/binivy:/export/local/sun4
/shareivy:/export/local/shara
/srcivy:/export/local/src
/usr/man-rooak:/usr/man \
rose:/usr/man \ willow:/usr/man
/usr/game -ro peach:/usr/games
/usr/spool/news -ro pine:/usr/spool/news willow:/var/spool/news Строки прямых таблиц имеют следующий синтаксис:
<key> <mount-options> <location>
Соответствующие поля описываются в таблице 17.9.
ПолеОписание
key
Это поле в некоторой прямой таблице обозначает имя маршрута данной точки монтирования. Это имя маршрута задает локальный каталог, к которому будет выполняться монтирование данной файловой системы NFS.
mount-options
Это поле обозначает опции, которые вы хотите применить к данному конкретному монтированию. Задание опций требуется только в том случае, если они отличаются от опций отображения принятых по умолчанию, которые указываются в файле /etc/auto_master. Опции перечис-
ПолеПолеОписаниеОписаниеПродолжение таблицы 17.9Продолжение таблицы 17.9
Поле
Поле
Описание
Описание
Продолжение таблицы 17.9
Продолжение таблицы 17.9
ляются в таблице 17.3 применительно к синтаксису команды mount. Конкатенация опций между различными таблицами автоматического монтировщика отсутствует. Любые опции, добавленные к какой-нибудь таблице автомонтировщика, перекрывают все опции, которые были перечислены в ранее найденных таблицах. Например, опции, включенные в таблицу файла auto_maeter, могут быть перезаписаны соответствующими элементами любой другой таблицы.
locationЭто поле обозначает местоположение дистанционной файловой систе
мы, заданное в форме Bervenpathname. Может быть задано более одного местоположения. Имя маршрута (аргумент pathname) не должно включать в себя какую-нибудь точку автомонтирования; это должно быть реальное абсолютное имя маршрута для данной файловой системы. Например, местоположение какого-нибудь домашнего каталога должно быть задано в форме server.7export/home/username, но не в форме server:/home/username.
В приведенном ранее примере файла таблицы /etc/auto_direct, как и в этом, для точек монтирования /usr/man и /usr/spool/news указывается более одного местоположения:
/usr/man -го apollo:/usr/man \ zeus:/usr/man \ neptune:/usr/man
/usr/spool/news -ro jupiter:/usr/spool/news Saturn:/var/spool/news
Многочисленные местоположения, подобные тем, которые были приведены в примере, используются для репликации, или отказоустойчивости. В целях отработки сбоев некоторая файловая система может быть названа точной копией в том случае, если она имеет тот же самый тип файловой системы и каждый файл в ней имеет тот же самый размер. При этом не учитываются полномочия доступа, даты создания и другие атрибуты файлов. Если отличается размер файла или тип файловой системы, то повторное отображение завершается аварийно, и данный процесс зависает до тех пор, пока старый сервер опять не окажется доступным.
Репликация имеет смысл лишь в том случае, если вы монтируете какую-нибудь файловую систему только для чтения, поскольку вы должны иметь определенный контроль над местоположением файлов, которые записываете или модифицируете. Вы же не хотите модифицировать файлы на одном сервере в какой-нибудь ситуации, а затем, через несколько минут, модифицировать тот же самый файл на другом сервере. Преимущество репликации заключается в том, что наиболее доступный сервер используется автоматически, не требуя никаких усилий от пользователя.
Если файловые системы конфигурируются в качестве репликаций, то клиенты получают преимущества от использования процедуры отказоустойчивости. При этом не только автоматически определяется наилучший с точки зрения доступности сервер, но и если конкретный сервер становится недоступным, то клиент автоматически использует следующий наиболее доступный сервер.
Хорошим примером файловой системы для конфигурирования в качестве репликации являются страницы оперативного руководства (/usr/man). В какой-нибудь большой сети несколько серверов могут экспортировать текущий набор страниц руководства. При этом не имеет значения, какой именно сервер из этой группы вы смонтируете, до тех пор, пока данный сервер работает и экспортирует свои файловые системы. В предыдущем примере множественное местоположение точек монтирования выражается в форме некоторо-
го списка точек монтирования в данном элементе отображения. Если задано множественное местоположение точек монтирования, то вы можете монтировать страницы руководства с серверов apollo, zeus или neptune. То, какой сервер является наилучшим с точки зрения доступности, зависит от множества факторов, включая количество серверов, которые поддерживают конкретный уровень протокола NFS, близость данного сервера и его весовой коэффициент. Процесс выбора сервера выглядит примерно так:
Ф В процессе сортировки вычисляется количество серверов, которые поддерживают протоколы NFS версии 2 и версии 3.0. Тот протокол, который поддерживается большинством серверов, считается принятым по умолчанию. Это предоставляет клиенту возможность пользоваться услугами максимального количества серверов. Если версия 3.0 протокола NFS является более распространенной, то процесс сортировки становится более сложным. Обычно серверам на локальной подсети отдается предпочтение перед серверами на какой-нибудь дистанционной подсети. Сервер, который поддерживает протокол NFS версии 2, может запутать дело, поскольку он может территориально оказаться ближе, чем ближайший сервер, который поддерживает протокол NFS версии 3.0. Если на данной локальной подсети имеется сервер, который поддерживает протокол NFS версии 2, а ближайший сервер, который поддерживает протокол NFS версии 3.0, находится на какой-нибудь дистанционной подсети, то сервер, поддерживающий протокол NFS версии 2, получает преимущество. Такая проверка выполняется только в том случае, если количество серверов, которые поддерживают протокол NFS версии 3.0, окажется больше, чем количество серверов, поддерживающих протокол NFS версии 2. Если же серверов, которые поддерживают протокол NFS версии 2, окажется больше, то выбирается какой-нибудь из серверов, поддерживающий протокол NFS версии 2.
Ф После того, как было найдено наибольшее подмножество серверов, которые поддерживают одну и ту же версию NFS, список серверов упорядочивается по степени территориальной близости. Серверам на данной локальной подсети отдается предпочтение перед серверами на какой-нибудь дистанционной подсети. Ближайший сервер получает преимущество, что уменьшает время задержки и сетевой трафик. Если на данной локальной подсети имеется несколько серверов, которые поддерживают одну и ту же версию протокола NFS, тогда определяется время установления соединения с каждым из этих серверов и используется самый быстрый из них.
Ф Вы также можете повлиять на процесс выбора серверов с одним и тем же уровнем территориальной близости посредством добавления какого-нибудь численного значения весового коэффициента в круглых скобках после имени данного сервера в таблице службы AutoFS. Например:
/usr/man -го apollo,zeus(1),neptune(2):/usr/man
Серверы, для которых не задано значение весового коэффициента, имеют нулевой весовой коэффициент, что делает выбор одного из этих серверов наиболее вероятным. Чем выше значение весового коэффициента, тем меньше шанс данного сервера быть выбранным. Все остальные факторы выбора сервера являются более важными, чем значение его весового коэффициента. Весовой коэффициент учитывается только в том случае, когда выбор осуществляется между серверами с одинаковым уровнем территориальной близости в данной сети.
При использовании средств отказоустойчивости данная сортировка проверяется один раз при каждом проведении монтирования с целью выбрать один сервер, с которого должно быть выполнено данное монтирование, и повторяется в том случае, если смонтированный сервер становится недоступным. Отработка отказов является особенно полезной в какой-нибудь большой сети с большим количеством подсетей. Служба AutoFS выбирает ближайший сервер и тем самым ограничивает сетевой трафик протокола NFS до какого- нибудь локального сегмента сети. В серверах с несколькими сетевыми интерфейсами служба AutoFS формирует список имен хостов, ассоциированных с каждым сетевым интерфейсом так, как если бы это был отдельный сервер. Затем она выбирает сетевой интерфейс, ближайший к данному клиенту.
В рассматриваемом примере установлена прямая таблица для файла /usr/local на сервере zeus. В настоящее время сервер zeus имеет каталог /usr/local, который содержит следующие каталоги:
Is /usr/local
При этом отображаются следующие локальные каталоги:
bin etc files programs
Если вы установили прямую таблицу автомонтирования, то увидите, как каталог/usr/ local перезаписывается монтированием NFS.
Прежде всего необходимо добавить следующий элемент в файл главной таблицы, имеющий имя /etc/auto_master:
/- /etc/auto_direct
После этого создайте файл прямой таблицы, который имеет имя /etc/autodirect, со следующим элементом:.
/usr/local zeus:/usr/local
Поскольку модифицируется прямая таблица, необходимо остановить процесс автомонтирования и перезапустить его:
/etc/init.d/autofs stop
/etc/init.d/autofs start
Теперь, если у вас есть доступ к каталогу /usr/local, создается точка монтирования службы NFS с использованием установленной вами прямой таблицы. Содержимое каталога /usr/local изменяется, поскольку прямая таблица перекрыла локальную копию каталога /usr/local:
Is /usr/local
Вы увидите следующий список каталогов:
fasttrack answerbook
ПРИМЕЧАНИЕV ‘/
Локальное содержимое каталога /usr/local не перезаписывается. После того, как данная точка монтирования NFS демонтируется, вновь отображается исходное содержимое каталога /usr/local.
Введя команду mount, вы сможете увидеть, что каталог /usr/local в настоящее время смонтирован дистанционно с сервера zeus:
mount
/ on /dev/dsk/c0t3d0s0 read/write/setuid/largefiles on Mon Nov 1 \ 06:05:46 1999
/usr on /dev/dsk/c0t3d0s6 read/write/setuid/largefiles on Mon Nov 1 \ 06:05:46 1999
/proc on /proc read/write/setuid on Mon Nov 1 06:05:46 1999
/dev/fd on fd read/write/setuid on MOn Nov 1 06:05:46 1999
/export on /dev/dsk/c0t3d0s3 setuid/read/write/largefiles on Mon Nov 1 \ 06:05:49 1999
/export/swap on /dev/dsk/c0t3d0s4 setuid/read/write/largefiles on Mon \ Nov 1 06:05:49 1999
/tmp on swap read/write on Mon Nov 1 06:05:49 1999
/usr/local on zeus:/usr/local read/write/remote on Sat Nov 6 08:06:40 \ 1999
Косвенная таблица
Таблицы косвенного отображения представляют собой наиболее простое и наиболее удобное соглашение автомонтировщика. Косвенная таблица использует подстановку значения некоторого ключа для установления связи между точкой монтирования на системе клиента и каталогом на сервере. Косвенные таблицы удобны для получения доступа к конкретным файловым системам, таким как исходные (домашние) каталоги, из любого места в сети. Приведенный элемент файла /etc/auto_master является примером косвенного отображения:
/share /etc/auto_share
При наличии такого элемента в файле /etc/auto_master, поле /etc/auto_share - это имя файла косвенной таблицы для точки монтирования с именем /share. Для данного элемента вам также необходимо создать файл косвенной таблицы по имени /etc/auto_share, который мог бы выглядеть, например, следующим образом:
# share directory map for automounter #
wsneptune:/export/share/ws
Если каталог с именем /share является доступным, то служба AutoFS создает присоединенный узел для /share/ws и вводит следующий элемент в файл /etc/mnttab:
-hosts /share/ws autofs nosuid,nobrowse,ignore,nest,dev=###
Если каталог с именем /share является доступным, то служба AutoFS завершает процесс следующими операциями:
Она запрашивает службу монтирования данного сервера, чтобы проверить, функционирует ли эта служба.
Служба AutoFS монтирует запрошенную файловую систему под каталогом с именем /share. Теперь файл /etc/mnttab содержит следующие элементы:
-hosts /share/ws autofsnosuid,nobrowse,ignore,nest,dev=###
neptune:/export/share/ws /share/ws nfsnosuid,dev=#########
Строки в косвенных таблицах имеют следующий синтаксис:
<кеу> <mount-options> <location>
Поля приведенной строки описываются в таблице 17.10.
Таблица 17.10 Поля косвеннойтаблицы ;;
ПолеОписание
keyЭто просто имя (без прямого слэша) в косвенной таблице.
mount-options
Поле mount-options обозначает опции, которые вы хотите применить к данному монтированию. Они описываются в таблице 18.4. Задание опций в требуется только в том случае, если они отличаются от принятых по умолчанию опций, которые задаются в файле /etc/auto_master.
location
Поле location обозначает местоположение дистанционной файловой системы, заданное в форме server pathname. Может быть задано более одного местоположения. Имя маршрута (аргумент pathname) не должно включать в себя какую-нибудь точку автомонтирования; это должно быть реальное абсолютное имя маршрута для данной файловой системы. Например, местоположение какого-нибудь каталога должно быть задано в форме server/usr/local, но не в форме server/net/server/usr/locai.
Пример косвенной таблицы может быть приведен для домашних каталогов пользователей. Когда пользователи регистрируются на нескольких различных системах, их исходные (домашние) каталоги не всегда являются локальными на этих системах. Для получения доступа к домашним каталогам пользователей удобно использовать автомонтировщик вне зависимости от того, на какой системе зарегистрировался тот или иной пользователь. Чтобы добиться такого эффекта, принятый по умолчанию табличный файл /etc/auto_master должен содержать следующий элемент:
/home /etc/auto_home -nobrowse
В данном случае /etc/auto_home - это имя файла косвенной таблицы, содержащей элементы, которые будут смонтированы под каталогом /home. Типовой табличный файл от /etc/ auto_home мог бы выглядеть следующим образом:
more /etc/auto_home
dean
willow:/export/home/dean
william
cypress:/export/home/william
nicole
poplar:/export/home/nicole
glenda
pine:/export/home/glenda
steve
apple:/export/home/steve
burk
ivy:/export/home/burk
neil-rw,nosuid
peach:/export/home/neil
А теперь предположим, что таблица /etc/auto_home находится на хосте, имеющем имя oak. Если пользователь с именем neil имеет элемент в базе данных паролей, определяющий его исходный каталог как /home/neil, то когда бы данный пользователь ни регистрировался на компьютере, имеющем имя oak, служба AutoFS смонтирует каталог /export/ home/neil, находящийся на компьютере, имеющем имя peach. Домашний каталог данного пользователя монтируется только для чтения и записи с опцией nosuid. Любой пользователь, включая neil, имеет доступ к этому маршруту с любого компьютера, установленного с главной таблицей, которая в данном примере ссылается на таблицу /etc/auto_home.
При соблюдении описанных условий пользователь с именем neil может выполнять команду login или rlogin на любом компьютере, на котором установлена таблица /etc/ auto home, и его исходный каталог монтируется именно туда, где он находится.
Другим примером применения косвенной таблицы является ситуация, когда вы хотите сделать все файлы, относящиеся к конкретному проекту, доступными под каталогом /data. Этот каталог будет общедоступным для всех рабочих станций на данном сайте.
Шаг за шагом ;-
17.4 Установка косвенной таблицы
Для установки косвенного отображения выполните следующие операции:
Добавьте в файл таблицы, /etc/automaster, элемент для каталога /data:
/data /etc/auto_data -nosuid
Файл таблицы auto data, который называется /etc/autodata, определяет содержимое каталога /data.
В качестве меры предосторожности добавьте опцию -nosuid.
Опция препятствует пользователям в создании файлов с установленным битом setuid или setgid. Если вы не усвоили понятия setuid/setgid, обратитесь к главе 8.
Создайте файл /etc/auto data и добавьте элементы в таблицу auto data. Таблица auto data организована таким образом, что каждый элемент в ней описывает какую-нибудь составную часть проекта. Отредактируйте файл /etc/auto data, чтобы создать таблицу, которая выглядит, например, следующим образом:
compilerapollo:/export/data/6
windowapollo:/export/data/6
fileszeus:/export/data/6
driversapollo:/export/data/4
manzeus:/export/data/6
toolszeus:/export/data/6
ПРИМЕЧАНИЕ.
Символ амперсанда (&) в конце каждого элемента представляет собой аббревиатуру ключа данного элемента. Например, первый элемент в приведенном примере эквивалентен следующей записи: compiler apollo:/export/data/compiler
Поскольку серверы apollo и zeus локально видят идентичные таблицы службы AutoFS, то любые пользователи, которые зарегистрируются на этих компьютерах, обнаружат ожидаемую ими файловую систему /data. Этим пользователям предоставляется прямой доступ к локальным файлам через точки монтирования обратной петли вместо точек монтирования службы NFS.
Поскольку вы внесли изменения в таблицу /etc/auto master, то необходимой последней операцией будет останов службы AutoFS и ее перезапуск, как показано ниже:
/etc/init.d/autofs stop /etc/init.d/autofs start
Теперь, если какой-нибудь пользователь переходит в каталог/data/compiler, то создается точка монтирования к apollo:/export/data/compiler:
cd /data/compiler
Наберите команду mount, чтобы увидеть ту точку монтирования, которая была установлена:
mount
Система показывает, что каталог /data/compiler привязывается к каталогу apollo:/export/data/compiler:
/data/compiler on apollo:/export/data/compiler read/write/remote \ on Fri Nov 5 17:17:02 1999
Если пользователь переходит в каталог /data/tools, то точка монтирования zeus:/ export/data/tools создается под /data/tools.
Системный администратор может модифицировать, удалять или добавлять элементы к таблицам для удовлетворения потребностей конкретного окружения. Если приложения (или другие файловые системы, которые требуются пользователям) меняют свое местоположение, таблицы должны отражать эти изменения. Вы можете модифицировать таблицы службы AutoFS в любое время. Однако внесенные изменения не вступят в силу до тех пор, пока данная файловая система не будет демонтирована и смонтирована повторно. Если какое-нибудь изменение вносится в таблицу auto master или в какую-нибудь прямую таблицу, внесенные изменения не вступят в силу до тех пор, пока автомонтировщик не будет перезапущен, как и показано:
/etc/init.d/autofs stop /etc/init.d/autofs start
? ПРИМЕЧАНИЕ|
Нет никакой необходимости создавать каталог /data/compiler для использования его в качестве точки монтирования. Автомонтировщик создает все необходимые каталоги перед установкой конкретного монтирования.
Альтернативный метод заключается в том, чтобы сделать изменения, внесенные в таблицу auto master и таблицу прямого отображения, немедленно распознаваемыми посредством выполнения команды automount из командной строки, как показано ниже:
automount -v
Когда следует использовать автомонтирование
Наиболее распространенный и наиболее эффективный вариант применения автомонтирования - монтирование эпизодически используемых файловых систем, таких как страницы оперативного справочного руководства, на каком-нибудь клиенте службы NFS. Другим широко распространенным вариантом применения автомонтирования является обеспечение доступа пользователей к их исходным каталогам из любого места в сети. Этот подход хорошо работает для пользователей, которые не имеют постоянно закрепленной за ними системы и обычно регистрируются в с самых различных мест. В последнем случае для организации доступа системный администратор должен был создавать домашние каталоги на каждой системе, на которой конкретный пользователь выполняет регистрацию. Данные должны были повсеместно дублироваться, и их трудно было синхронизировать. Вы, конечно же, не захотите создавать постоянные монтирования файловых систем NFS для домашних каталогов всех пользователей на каждой системе, поэтому в данном случае исключительно полезно воспользоваться службой автомонтирования.
Кроме того, автомонтирование используется в тех случаях, когда файловая система, доступная только для чтения, существует на нескольких серверах. За счет использования автомонтирования вместо традиционного монтирования NFS вы сможете сконфигурировать клиента NFS таким образом, чтобы он запрашивал все серверы, на которых существует данная файловая система, и монтировал ее с того сервера, который первым откликнется на этот запрос.
Избегайте устанавливать автомонтирование для часто используемых файловых систем, в том числе тех, которые содержат команды пользователей или часто применяемые приложения; в данной ситуации более эффективным будет традиционное монтирование NFS. Достаточно практичным и распространенным подходом является совместное использование автомонтирования и традиционного монтирования NFS на одном и том же клиенте.
Резюме
Теперь вы уже должны иметь полное представление о том, что такое среда NFS, и о том, как организовать совместное использование ресурсов на сервере NFS. Вы должны понимать проблемы защиты информации от несанкционированного доступа, связанные с использованием NFS, и знать о том, как организовать совместное использование ресурсов NFS таким образом, чтобы только авторизованные пользователи могли бы получить доступ к этим ресурсам. Существует достаточно много способов организации совместного использования ресурсов на сервере NFS. Системному администратору необходимо понимать каждый из этих способов и принимать осознанные решения при организации совместного использования ресурсов, чтобы не пострадала система защиты информации от несанкционированного доступа.
Были рассмотрены вопросы получения доступа к ресурсам клиента NFS с некоторого сервера. Была описана служба AutoFS и множество опций, доступных для применения при организации монтирования ресурсов NFS таким образом, чтобы свести к минимуму время простоя пользователя в случае незапланированных выходов системы из строя и недоступности ресурсов.
Наконец, были описаны подходы к увеличению эффективности и производительности смонтированных ресурсов NFS за счет использования служб AutoFS и CacheFS.
В процессе управления службами NFS и, в особенности, автомонтировщиком, системный администратор может достаточно быстро погрязнуть во множестве конфигурационных файлов, которые должны сохранять согласованность среди множества различных систем. Например, /etc/auto_master и относящиеся к нему файлы таблиц прямого и косвенного отображения должны быть обновлены всякий раз, когда изменяется имя какого- нибудь хоста или файловой системы. Такая задача в условиях достаточно большой сети может оказаться практически неразрешимой. В главе 18 описывается, как NIS (Network Information Service - сетевая информационная служба) может быть использована для оказания помощи в модифицировании всех этих конфигурационных файлов, включая /etc/ passwd и /etc/hosts, с одного и того же места.
Ключевые термины
NFS
Сервер NFS
Примените ваши знания
Клиент NFS
Динамическое средство отказоустойчивости (в части, относящейся к среде NFS)
WebNFS
Демоны NFS
Совместно используемые, или разделяемые, ресурсы
Жесткое (hard) монтирование
Мягкое (soft) монтирование
Репликация
Протоколирование служб NFS
Отдаленная (back) файловая система
Фронтальная (front) файловая система
Кэшированная (cached) файловая система
Каталог кэша
Холодный кэш
Теплый кэш
Проверка непротиворечивости, или согласованности
Таблицы отображения AutoFS (необходимо знать каждую из таблиц)
Присоединенная точка.
Примените ваши знания
При выполнении следующих упражнений вам потребуется, как минимум, две системы Solaris, объединенные в сеть. Определите заранее, какая система будет использоваться в качестве сервера NFS, а какая - в качестве клиента. Сервер NFS должен иметь страницы оперативного руководства, инсталлированные в каталоге /usr/share/man.
упражнения t--';.
Установка сервера NFS
При выполнении настоящего упражнения вам предстоит установить сервер NFS для организации совместного использования содержимого каталога /usr/share/man только для чтения.
Оцениваемое время: 30 минут
Создайте следующий элемент в файле /etc/dfs/dfstab:
share -F nfs -о ro /usr/share/man
Перезапустите сценарий /etc/init.d/nfs.server для запуска демонов nfsd и mountd:
/etc/init.d/nfs.server start
Убедитесь, что оба указанных демона теперь выполняются, для чего введите следующую командную строку:
ps -ef I grep nfs
Убедитесь, что данный ресурс теперь доступен для совместного использования, для чего введите следующую команду:
share
Система должна ответить следующим образом:
- /usr/share/man го " "
В системе клиента NFS переименуйте каталог /usr/share/man таким образом, чтобы страницы руководства более не были доступны, для чего введите следующие команды:
cd /usr/share
mv man man.bkup
Убедитесь в том, что страницы руководства более не доступны:
man tar
Создайте новый каталог man, который будет использоваться в качестве точки монтирования:
mkdir man
Убедитесь в том, что вы можете видеть разделяемый ресурс на сервере NFS: dfshares <nfs server name>
Система должна ответить сообщением, подобным следующему:
RESOURCESERVERACCESSTRANSPORT
192.168.0.4:/usr/share/man192.168.0.4-
Смонтируйте каталог /usr/share/man, который располагается на сервере NFS, в каталог, который вы создали на предыдущем этапе, для чего введите следующую командную строку:
mount <nfs server name>:/usr/share/man /usr/share/man
А теперь проверьте еще раз, доступны ли страницы руководства:
man tar
Проверьте список смонтированных ресурсов, предоставляемых данным сервером, для чего введите следующую командную строку:
dfmounts <nfs server name>
Система отображает подобную информацию:
RESOURCESERVERPATHNAMECLIENTS
-192.168.0.4 /usr/share/man192.168.0.21
Демонтируйте каталог на системе клиента NFS:
umountall -г
Опция -г определяет, что будут демонтироваться только дистанционные (remote) файловые системы.
Убедитесь в том, что данная файловая система более не является смонтированной, для чего введите следующую команду:
dfmounts <nfs server name>
На системе сервера NFS отмените совместное использование каталога /usr/share/ man:
unshare /usr/share/man
Примените ваши знания
На системе клиента NFS попытайтесь смонтировать каталог /usr/share/man с данного сервера NFS:
mount <nfs server name>:/usr/share/man /usr/share/man
Сервер на этот раз не должен разрешить вам монтирование этого каталога.
Проверьте разделяемые ресурсы на данном сервере NFS, для чего введите следующую командную строку:
dfshares <nfs server name>
Эта файловая система больше не может быть смонтирована, поскольку она уже не является разделяемым ресурсом.
Использование AutoFS
Приведенное упражнение демонстрирует использование службы AutoFS.
Оцениваемое время: 30 минут
Сервер NFS уже должен иметь элемент в файле /etc/dfs/dfstab из предыдущего упражнения. Он выглядит следующим образом:
share -F nfs -о го /usr/share/man
На данном сервере должны также быть запущены демоны nfsd и mountd
На системе клиента NFS убедитесь в том, что страницы руководства больше не работают, для чего введите следующую команду:.
man tar
На системе клиента NFS удалите каталог, который вы создали при выполнении предыдущего упражнения:
rmdir /usr/share/man
На системе клиента NFS отредактируйте файл /etc/auto_master с целью добавления к нему приведенной строки для прямого отображения (прямая таблица):
/- auto_direct
На системе клиента NFS воспользуйтесь текстовым редактором vi для создания нового файла с именем /etc/auto_direct и добавления в этот файл приведенной строки:
/usr/share/man <nfs server name>:/usr/share/man
Выполните команду automount для обновления списка каталогов, управляемых с помощью AutoFS:
automount -v
А теперь убедитесь в том, что страницы руководства работают на системе клиента NFS, для чего введите следующую командную строку:
. man tar'
На системе клиента NFS убедитесь в том, что AutoFS автоматически смонтировала данный дистанционный каталог сервера NFS:
mount
На системе сервера NFS отмените совместное использование данного каталога, для чего введите следующую команду:
unshareall
На системе сервера NFS закройте его демоны, для чего введите следующую командную строку:
/etc/init.d/nfs.server stop
На системе клиента NFS отредактируйте файл /etc/auto_master с целью удаления из него приведенной строки:
/- auto_direct
На системе клиента NFS удалите файл с именем /etc/auto_direct:
rm /etc/auto_direct
На системе клиента NFS выполните команду automount для обновления списка каталогов, управляемых с помощью AutoFS:
automount -v
На системе клиента NFS возвратите каталог /usr/share/man в его исходное состояние:
cd /usr/share rmdir man mv man.bkup num
Обзорные вопросы
Какое из следующих условий не является необходимым для организации совместного использования файлов в среде NFS?
На сервере должна быть запущена NFS версии 3.
Система должна находиться на уровне запуска 3.
Система должна быть в сети и должна быть доступна для других систем.
Ресурсы должны быть сделаны доступными путем использования команды share.
Если ресурсы добавляются к перечисленным файлам, то можете ли вы затем сделать эти ресурсы доступными и недоступными при помощи команд shareall и unshareall?
/etc/dfs/dfstab
/etc/dfs/sharetab
/etc/vfstab
D. /etc/mnttab
По умолчанию все файловые системы, совместно используемые через NFS, доступны через WebNFS.
Это утверждение истинно
Это утверждение ложно
Какую из перечисленных опций следует включить в /etc/dfs/dfstab для того, чтобы рассатривать URL в WebNFS относительно ресурса, а не относительно корневого каталога серверов?
A. nosub
В. index
Примените ваши знания
С. secure
D. public
Для останова и перезапуска NFS, чтобы разрешить новое совместное использование ресурса, введите:
/etc/init.d/autofs stop; /etc/init.d/autofs start
/etc/init.d/nfs.client stop; /etc/init.d/nfs.client start
/etc/init.d/nfs.server stop; /etc/init.d/nfs.server start
D. automount -v
Что из перечисленного ниже устраняет необходимость наличия перечня дистанционных файловых систем (монтирований NFS) в файле /etc/vfstab, что обеспечивает ускорение загрузки и закрытия системы?
/etc/dfs/dfstab
automount
/etc/mnttab
void
Что из перечисленного в AutoFS связывает некоторый каталог с отображением?
indirect (косвенная таблица)
direct (прямая таблица)
auto_master (главная таблица)
automountd
Какая из перечисленных таблиц содержит полное имя маршрута и указывает взаимоотношения явным образом?
A. NIS
auto_master (главная таблица)
indirect (косвенная таблица)
direct (прямая таблица)
Какая из перечисленных таблиц удобна для организации доступа к конкретным файловым системам, таким как исходные (домашние) каталоги?
auto_master•
auto master (главная таблица)
indirect (косвенная таблица)
direct (прямая таблица)
Модификации существующих элементов в прямой (direct) таблице или любые изменения в косвенной (indirect) таблице не требуют перезапуска автомонтирования.
Это утверждение истинно
Это утверждение ложно
Что из перечисленного позволяет компьютерам, имеющим различную архитектуру и работающим под управлением различных операционных систем, совместно использовать файлы и приложения через сеть?
A. FTP
В. NIS
С. TCP/IP
D. NFS
Из каких перечисленных файлов запускаются демоны NFS в процессе загрузки?
/etc/init.d/nfs.server
/etc/init.d/nfs.client
/etc/init.d/autofs
D. /etc/inittab
На каком уровне запускаются демоны клиента NFS?
А. 1
2
3
4
Что из перечисленного не является демоном NFS?
rpcd
mountd
lockd
D. statd
Какой из демонов NFS находится только на сервере?
nfsd
lockd
mountd
nfslogd
В каком из перечисленных файлов вы задаете информацию о том, какие файловые системы будут совместно использоваться?
/etc/dfs/sharetab
/etc/dfs/dfstab
/etc/vfstab
/etc/mnttab
Какая из перечисленных команд делает ресурсы доступными для монтирования?
export
share
exportfs
Все команды, перечисленные выше
Какая из перечисленных команд отображает информацию о совместно используемых ресурсах, доступных для данного хоста с некоторого сервера NFS?
shareall
Примените ваши знания
share
dfshares
dfmfo
Какая из опций обозначает, что файловые системы, с ее помощью будут повторно монтироваться в фоновом режиме, если демон монтирования сервера (mountd) не откликается?
A. intr
fg
bg
soft
Какая из опций команды mount определяет, в течение какого времени (в секундах) каждый запрос NFS, сделанный к ядру операционной системы, должен ожидать отклика?
A. retrans
timeo
retry
D. remount
С какой из перечисленных опций всегда должны монтироваться файловые системы, которые доступны в режиме чтения-записи или содержат исполняемые файлы?
A. hard
intr
soft
nointr
Эта опция заставляет команду mount повторять попытки запросов от клиента NFS вплоть до заданного количества раз, если сервер NFS стал недоступным:
retry
retrans
remount
D. timeo
Какая из перечисленных опций команды mount позволяет вам послать сигнал завершения "зависшему" процессу NFS, если какой-нибудь сервер NFS вышел из строя?
bg
nointr
intr
timeo
Что из перечисленного расширяет NFS до Internet?
А. TCP/IP
AutoFS
Webstart
WebNFS
Какая из программ поддерживает службу AutoFS?
A. automount
В. automountd
С. mount
D. share
Из какого из файла запускается automountd?
/etc/init.d/volmgt
/etc/init.d/autofs
С. /etc/init.d/nfs.server ■
D. /etc/init.d/nfs.client
Какую из перечисленных команд вы применяете, чтобы увидеть, кто может использовать какое-нибудь конкретное монтирование NFS?
A. fuser
dfshares
showmount
ps
Какой из файлов перечисляет все прямые и косвенные таблицы AutoFS?
/etc/auto_master
/etc/auto_direct
/etc/auto_share
D. /etc/init.d/autofs
Каждая инсталляция операционной системы Solaris поставляется с принятой по умолчанию главной таблицей, которая содержит элементы по умолчанию. Через какую из перечисленных ниже точек монтирования клиенты должны иметь возможность получения доступа к дистанционным файловым системам без каких бы то ни было изменений в общей установке системы?
/tmp mnt
/net
/export
/export/home
Что из перечисленного представляет собой простейшее и наиболее удобное соглашение автомонтировщика?
direct (прямая таблица)
indirect (косвенная таблица)
master (главная таблица)
Все перечисленное выше
Примером какого типа таблицы является элемент /share /etc/auto_share в файле / etc/auto_master?
A. NIS
Примените ваши знания
Прямая таблица
Главная таблица
Косвенная таблица
Какая из команд должна быть выполнена, чтобы немедленно осуществить изменения, внесенные в таблицу auto_master и прямую таблицу?
A. automount -v
В. automount -f
С. automount -г
D. демонтировать, а затем вновь монтировать данную файловую систему
Какой из перечисленных демонов находится в системе клиента NFS?
mountd
nfsd
statd
rpc.nisd
Какое время установлено по умолчанию для automountd при демонтировании какой-нибудь неиспользуемой файловой системы?
300 секунд'
60 секунд
120 секунд
180 секунд
Какие типы таблиц доступны в автомонтировщике?
Прямая и косвенная таблицы
Главная, прямая и косвенная таблицы
Главная и прямая таблицы
Главная и косвенная таблицы
Какая из команд используется для того, чтобы определить через NFS некоторый дисковый ресурс как доступный для других систем?
A. mount
share
export
dfshares
Из какого сценария запускается демон протоколирования NFS?
/usr/lib/nfs/nfslogd
/etc/nfs/nfslog.conf
/etc/dfs/dfstab
D. /etc/init.d/nfs.server
Данный демон обеспечивает протоколирование служб №8:
syslogd
nfsd
statd
nfslogd
Ответы на обзорные вопросы
А. Нет необходимости в том, чтобы на всех системах была запущена NFS версии 3. Системы, использующие службы NFS, могут применять различные версии NFS.
А. Выполните команду shareall, и любые новые элементы в файле /etc/dfs/dfstab разделяются для совместного использования. Выполните команду unshareall, и любые новые элементы в файле /etc/dfs/dfstab перестанут быть совместно используемыми.
А. Это утверждение истинно, все файловые системы, разделяемые для совместного использования через NFS, также доступны через WebNFS.
D. В WebNFS для того, чтобы URL протокола NFS оценивался относительно ресурсов, а не относительно корневого каталога серверов, включите опцию public в состав данного элемента файла /etc/dfs/dfstab.
С. Для останова и перезапуска службы NFS, чтобы разрешить новое совместное использование ресурса, введите следующую командную строку: /etc/initd/nfs.server stop; /etc/init.d/nfs.server start.
В. Команда automount не требует перечень дистанционных файловых систем (монтирований NFS) в файле /etc/vfstab и обеспечивает ускорение загрузки и закрытия системы.'
С. Команда automount, которая вызывается в процессе запуска системы, считывает файл главной таблицы отображения по имени auto master для создания исходного набора точек монтирования службы AutoFS.
D. С помощью прямой таблицы возникает связь между некоторой точкой монтирования в системе клиента и каталогом на сервере. Прямые таблицы содержат полное имя маршрута и указывают взаимоотношения между точкой монтирования и каталогом в явном виде.
В. Таблицы косвенного отображения (indirect) удобны для получения доступа к конкретным файловым системам, таким как домашние каталоги, из любого места в сети.
А. Модификации существующих элементов в прямой таблице или любые изменения в косвенной таблице не требуют перезапуска автомонтирования.
D. Служба NFS позволяет компьютерам, имеющим различную архитектуру, и работающим под управлением различных операционных систем, совместно использовать файлы и приложения через сеть.
А, В. Для манипулирования своими службами NFS использует несколько демонов. Эти службы инициируются при запуске из сценариев /etc/init.d/nfs.server и /etc/init.d/ nfs.client.
В. Демоны клиента NFS запускаются сценарием /etc/initd/nfs.client на уровне запуска 2.
А. Программы mountd, lockd и statd являются демонами NFS. Программа rpcd не является демоном NFS.
А, В, D. Демонами NFS, которые находятся только на сервере, являются программы nfsd, lockd и nfslogd.
Примените ваши знания
В. Вы определяете, какие именно файловые системы будут совместно использоваться путем ввода соответствующей информации в файл, называемый /etc/dfs/dfstab.
В. Команда share экспортирует некоторый ресурс и делает его доступным для монтирования.
С. Команда dfshares отображает информацию о совместно используемых ресурсах, доступных для данного хоста с некоторого сервера NFS.
С. То, что файловые системы монтируются с опцией bg, означает, что команда mount повторяется в фоновом режиме, если демон монтирования данного сервера (mountd) не откликается, когда, например, перезапускается сервер NFS.
В. После того как данная файловая система смонтирована, каждый запрос протокола NFS к ядру операционной системы ожидает отклика в течение заданного количества секунд (это количество задается опцией timeo=<n>).
А. Фирма Sun рекомендует, чтобы файловые системы, монтирующиеся в режиме чтения-записи или содержащие исполняемые файлы, были бы смонтированы с опцией hard. ■ '
А. Команда mount повторяет от клиента NFS попытки запросов вплоть до количества попыток, заданного опцией retry=n. После того, как данная файловая система смонтирована, каждый запрос протокола NFS к ядру операционной системы ожидает отклика в течение заданного количества секунд.
С. Если какая-нибудь файловая система монтируется жестко (с заданной опцией hard) и при этом опция intr не задана, а сервер NFS вышел из строя, то данный процесс зааисает до тех пор, пока вновь не появится эта дистанционная файловая система. Если же опция intr задана, то отправка какого-нибудь сигнала прерывания данному процессу завершает его.
D. Служба WebNFS предоставляет возможность делать какую-нибудь файловую систему в сети Internet доступной через брандмауэры за счет использования расширения протокола NFS.
А, В. Файловые системы, которые разделяются через службу NFS, могут быть смонтированы с использованием AutoFS. Служба AutoFS является клиентской службой и представляет собой некоторую структуру файловой системы, которая обеспечивает автоматическое монтирование. Файловая система AutoFS инициализируется программой automount, которая выполняется автоматически в процессе запуска системы. Демон программы automount, который называется automountd, выполняется постоянно, осуществляя монтирование и демонтирование дистанционных каталогов по мере возникновения и исчезновения потребности в них.
В. Служба AutoFS поддерживается двумя программами: automount и automountd. Обе эти программы вызываются в процессе запуска системы с помощью сценария /etc/ initd/autofs.
С. Чтобы увидеть, кто может использовать какое-нибудь конкретное монтирование NFS, следует воспользоваться командой showmount.
А. Главная таблица, находящаяся в файле /etc/auto_master, связывает некоторый каталог с отображением. Главная таблица представляет собой список, определяющий все таблицы, которые должна проверить служба AutoFS.
В. Без каких бы то ни было изменений в общей установке системы клиенты должны иметь возможность получения доступа к дистанционным файловым системам через точку монтирования /net.
В. Косвенная (indirect) таблица представляет собой наиболее простое и наиболее удобное соглашение автомонтировщика. Таблицы косвенного отображения удобны для получения доступа к конкретным файловым системам, таким как домашние каталоги, из любого места в сети. .
D. Элемент /etc/auto_share в файле /etc/auto_master представляет собой имя косвенной таблицы.
А. Чтобы сделать изменения, внесенные в таблицу automaster и прямую таблицу, немедленно распознаваемыми, выполните следующую команду: automount -v.
С. Демон statd запускается на сервере и клиенте NFS и взаимодействует с демоном iockd, чтобы обеспечить функции сбоя и восстановления для служб блокирования файлов в среде NFS.
А. Опция -t команды automount устанавливает время в секундах, в течение которого некоторая файловая система остается смонтированной, даже если она уже не используется. Значение этой опции по умолчанию равняется 300 секунд.
В. Три типа таблиц отображения в службе AutoFS-это главная, прямая и косвенная таблицы.
В. Команда share используется, чтобы определить через NFS некоторый дисковый ресурс как доступный для других систем. Команда share экспортирует некоторый ресурс или делает его доступным для монтирования. '
А. Сценарий /usr/lib/nfs/nfslogd запускает демон протоколирования NFS (nfslogd).
D. Демон nfslogd, который обеспечивает протоколирование служб NFS, включается с помощью опции log=</ag> команды share, рассмотренной ранее. Если протоколирование NFS включено, то все операции служб NFS на данной файловой системе регистрируются ядром операционной системы в некотором буфере.
Глава 18Глава 18Службы именСлужбы имен
Глава 18
Глава 18
Службы имен
Службы имен
Темы
В настоящей главе рассматриваются следующие темы экзамена:
Использование служб имен Solaris
Службы имен в среде Solaris помогают централизовать информацию, разделяемую для совместного использования, на вашей сети. В настоящей главе описываются службы имен, доступные в операционной системе Solaris 8. Так что вы сможете определить подходящую службу имен для использования в условиях вашей сети.
Конфигурирование и управление сетевой информационной службой
NIS (Network Information Service - сетевая информационная служба) предоставляет возможность централизованного управления сетевой информацией операционной системы. NIS помогает системному администратору управлять информацией о хостах, пользователях и разных других сетевых ресурсах. В настоящей главе описывается, как конфигурировать NIS и управлять этой службой.
Содержание
(Введение603
Общий обзор слухф имен603
файлы /etc604
MS604
Структура сети MS60S
Определение вашей потребности в cepeepayMS606
Определение хостов, которые будут серверами MS606
Информация, управляемая с помощью MS606
Планирование вашего долина MS610
Конфигурирование главного сервера MS611
Установка клиентов MS622
Установка подчиненныхсерверов MS623
MS*'624
Иерархическая структура пространства имен625
ПРаблицы слуяфы имен MS+625
Защита информации в MS*627
Аутентификация627
Авторизация627
Аутентификация по стандарту AYES629
ФИЗ'629
Протокол ЕФАФ631
(Резюме632
Примените ваши знания633
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
По мере изучения материала настоящей главы, подготовьтесь к тому, чтобы установить назначение службы имен и информацию, которую данная служба использует для управления. Вам потребуются, по крайней мере, две системы Solaris, соединенные в сеть, чтобы попрактиковаться в выполнении примеров и пошаговых упражнений. Настоятельно рекомендуется тренироваться в выполнении этих задач до тех пор, пока вы не сможете выполнять их по памяти.
Служба N1S в настоящей главе описана достаточно подробно, однако по остальным службам имен приведена лишь краткая информация. Это связано с тем, что экзамен будет посвящен в основном службе имен NIS, а по остальным службам имен будет всего несколько вопросов. Убедитесь в том, что вы разобрались со всеми вопросами, связанные с тем, как конфигурировать главные серверы службы имен NIS, подчиненные серверы и клиентов этой службы имен. Вам необходимо понимать элементы в файле переключателей службы имен NIS. Кроме этого, вы должны знать, как добавить какую-нибудь новую таблицу отображения службы имен NIS.
Будьте готовы описать характеристики каждой из служб имен, сопоставить их функциональные возможности и идентифицировать файл переключателей, соответствующий данной службе имен.
Наконец, изучите термины, представленные в конце настоящей главы в разделе "Ключевые термины". Кроме того, убедитесь, что вы в состоянии описать каждую команду, приведенную в настоящей главе, в особенности те из них, которые используются в качестве примеров. На экзамене вам предстоит сопоставлять команду или термин с соответствующим описанием.
Введение
В настоящей главе объясняется, как конфигурировать и администрировать серверы и клиентов в домене NIS. Служба NIS представляет собой огромную тему, которая потенциально может охватить несколько томов. Цель настоящей главы - подготовить вас к ответам на вопросы, относящиеся к службе NIS, которые могут встретиться на экзамене. В настоящей главе также предлагается общий обзор службы NIS, достаточно полной для того, чтобы вы были подготовлены к установке базовой сети NIS и понимали вопросы использования данной службы.
Общий обзор служб имен
Службы имен обеспечивают централизованное хранение информации, которую пользователи, системы и приложения должны использовать для обмена данными через сеть. Эта информация сохраняется в файлах, отображениях, или в таблицах баз данных. Без централизованной службы имен каждой системе пришлось бы эксплуатировать свою собственную копию этой информации. Таким образом, централизованное размещение указанной информациии облегчает администрирование больших сетей. В состав информации, которую обрабатывает служба имен, входят:
$ Имена и адреса систем (хостов)
$ Имена пользователей
$ Пароли
$ Полномочия доступа
Релиз 8 операционной системы Solaris предлагает службы имен, которые перечисляются в таблице 18.1.
Т^ццаЛМ-^Сл^^
Служба имен
Описание
Файлы /etc
Оригинальная система наименований UNIX
NIS
Network Information Service - сетевая информационная служба
NIS+
сетевая информационная служба плюс (описывается более подробно далее в настоящей главе)
DNS
Domain Name System - система имен доменов (описывается более подробно далее в настоящей главе)
LDAP
Lightweight Directory Access Protocol - облегченный протокол службы каталогов (описывается более подробно далее в настоящей главе)
Служба имен обеспечивает централизованное управление host-файлами таким образом, что системы могут быть идентифицированы по общепринятым именам, а не по численным адресам. Это упрощает обмен информацией, поскольку пользователям нет необходимости запоминать и пытаться ввести громоздкие численные адреса, такие как 129.44.3.1.
Адреса являются не единственной сетевой информацией, которую необходимо сохранять в системах. Также необходимо сохранять информацию безопасности, адреса электронной почты, информацию об применяемых интерфейсах сети Ethernet, сетевых службах, группах или пользователях, которым разрешено использование данной сети, о службах, которые предлагаются в данной сети и т. д. По мере того как сети начинают предлагать большее количество служб, этот перечень расширяется. В результате каждой системе может потребоваться поддерживать целый набор файлов, подобных файлу /etc/hosts.
По мере того, как эта информация изменяется, и при отсутствии службы имен, администраторам приходится отслеживать текущую информацию на каждой системе в данной сети. В небольших сетях это просто утомительно, однако в сетях среднего размера или в больших сетях, такая работа не просто требует больших затрат времени, но и становится практически неуправляемой.
Служба имен решает описанную проблему. Она обеспечивает сохранение информации на серверах и предоставление указанной информации любой рабочей станции по ее запросу.
Файлы /etc
Файлы /etc представляют собой традиционный для UNIX способ обслуживания информации о хостах, пользователях, группах и таблицах автомонтирования - и этот список можно продолжать. Эти файлы представляют собой текстовые файлы, которые размещаются на каждой отдельной системе и могут быть отредактированы с использованием текстового редактора vi или пакета Solstice AdminSuite. Указанные файлы описываются в главах 5, 8, 13 и 17.
Каждый такой файл нуждается в индивидуальном обслуживании, а на какой-нибудь большой сети это может быть достаточно сложной задачей. По мере того как изменяются IP-адреса, добавляются и удаляются учетные записи пользователей, может оказаться весьма затруднительным обслуживать все эти файлы и синхронизировать их на каждой системе. В большой изменяющейся сети традиционный подход к обслуживанию рассматриваемой информации должен был измениться, и, как результат, были внедрены описанные далее службы имен.
NIS
Служба имен NIS, которая раньше называлась YP (Yellow Pages - Желтые Страницы), представляет собой распределенную систему баз данных, которая позволяет системному администратору выполнять администрирование конфигураций множества хостов из некоторого центрального местоположения. Общая конфигурационная информация, которая без использования службы N1S могла требовать раздельного обслуживания на каждом хосте в некоторой сети, теперь могла быть сохранена и обслуживаться в некотором центральном местоположении, а затем распространяться на все узлы в данной сети. Служба имен NIS сохраняет информацию об именах и адресах рабочих станций, пользователях, сети и сетевых службах. Этот набор сетевой информации называется пространством имен службы N1S.
ПРИМЕЧАНИЕ -'
Как уже отмечалось выше, службе имен NIS раньше была известна под названием Yellow Pages - YP фирмы Sun. С функциональной точки зрения эти два понятия обозначают одно и то же, изменилось только название. Название "Yellow Pages" представляет собой зарегистрированную в Соединенном Королевстве торговую марку компании British Telecommunications PLC, и это название не могло быть использовано без соответствующих полномочий.
Прежде чем приступить к обсуждению структуры службы имен NIS, вам необходимо знать, что административные базы данных в NIS называются таблицами отображений. Домен представляет собой некоторый набор систем, которые совместно используют один и тот же набор таблиц отображений N1S.
Структура сети NIS
В пределах некоторой сети NIS системы конфигурируются следующим образом:
$ Главный сервер
$ Подчиненные серверы
$ Клиенты серверов NIS
Центром сети NIS является главный сервер. Система, выделенная в качестве главного сервера, содержит набор таблиц отображений, которые вы в качестве администратора службы имен N1S создаете и обновляете по мере необходимости. После того как сеть NIS была установлена, любые изменения в таблицах отображения должны проводиться именно на главном сервере. Каждый домен службы имен NIS должен иметь один и только один главный сервер. Главный сервер должен представлять собой систему, которая может распространять обновления службы имен NIS с минимальным ущербом для производительности.
В дополнение к главному серверу вы можете создать резервные серверы, которые называются подчиненными серверами службы имен NIS и применяются для того, чтобы несколько разгрузить главный сервер, и для замены главного сервера в случае его выхода из строя. Если вы создаете какой-нибудь подчиненный сервер NIS, то таблицы отображения с главного сервера переносятся на данный подчиненный сервер. Подчиненный сервер имеет полную копию главного набора таблиц отображения N1S. Если в одну из таблиц отображения на главном сервере внесено какое-нибудь изменение, то эти обновления распространяются между подчиненными серверами. Существование подчиненных серверов позволяет системному администратору равномерно распределять нагрузку, связанную с ответами на запросы к службе имен NIS, что также минимизирует эффект внезапной недоступности какого-нибудь сервера.
Обычно все хосты данной сети, включая главный и подчиненные серверы, являются клиентами службы имен NIS. Если какой-нибудь процесс на одном из клиентов NIS запрашивает конфигурационную информацию, то он обращается к службе имен NIS вместо того, чтобы просматривать свои локальные файлы конфигурации. Для получения информации о группах и паролях, а также псевдонимах электронной почты, можно сначала обратиться к файлам /etc, а затем - к NIS, если запрошенная информация не найдена в файлах /etc.
Любая система может быть клиентом NIS, однако только системы с дисками должны использоваться в качестве серверов NIS, как главного сервера, так и подчиненных серверов. Серверы одновременно являются клиентами для самих себя.
Как уже отмечалось ранее, набор таблиц отображения, совместно используемый серверами и клиентами, называется доменом службы имен NIS. Главные копии таблиц отображения
находятся на главном сервере NIS, в каталоге, который имеет имя Karly^l<domainname>, где <domainname> - выбранное вами имя для собственного домена. Внутри каталога <domainname> каждая таблица сохраняется в виде двух файлов: mapname.dir и mapname.pag. Каждый подчиненный сервер имеет аналогичный каталог, содержащий точно такой же набор таблиц.
Когда клиент запускается, он отправляет запрос серверу, который обслуживает домен данного клиента. Любой сервер, который имеет набор таблиц отображения для домена данного клиента, вне зависимости от того, является ли он главным или подчиненным, может ответить на запрос. Клиент "привязывается" к первому серверу, ответившему на посланный им запрос, и затем этот сервер отвечает на все запросы клиента к службе NIS.
Хост не может быть главным сервером для более чем одного домена NIS. Однако главный сервер одного домена одновременно может быть подчиненным сервером другого домена. Хост можетбыть подчиненным сервером для несколько доменов. Клиент принадлежит только к одному домену.
Определение вашей потребности в серверах NIS
Для определения того, сколько серверов NIS необходимо иметь в вашем домене, могут быть использованы следующие руководящие принципы:
$ Вы должны разместить по одному серверу в каждой из подсетей вашего домена. Когда какой-нибудь клиент запускается, он рассылает широковещательное в поисках ближайшего к нему сервера. Solaris 8 не требует, чтобы этот сервер находился в той же самой подсети; однако ранние реализации службы имен NIS требовали, чтобы в каждой подсети, которая использует NIS, существовал сервер.
^ В общем случае сервер может обслуживать примерно 30 клиентов NIS, если клиенты и серверы имеют одинаковую производительность. Если клиенты работают быстрее, чем серверы, им требуется большее количество серверов. Если клиенты работают медленнее, чем серверы, то каждый сервер может обслуживать 50 или более клиентов NIS.
Определение хостов, которые будут серверами NIS
Определите следующим образом, какие системы будут использоваться в качестве серверов NIS в вашей сети:
$ Выберите серверы, которые являются надежными и имеют высокую доступность.
$ Выберите быстрые серверы, которые не применяются для запуска приложений, интенсивно использующих центральные процессоры. Не применяйте в качестве серверов NIS шлюзы или терминальные серверы.
^ Хотя это и не является обязательным требованием, весьма полезно распределить серверы соответствующим образом между клиентскими сетями. Другими словами, каждая подсеть должна иметь достаточное количество серверов, чтобы удовлетворить потребности всех своих клиентов.
Информация, управляемая с помощью NIS
Как уже отмечалось выше, NIS хранит информацию в некотором наборе файлов, которые называются таблицами отображения. Таблицы отображения были разработаны для замены в UNIX файлов /etc, а также других конфигурационных файлов.
Таблицы NIS содержат несколько столбцов. Один из этих столбцов является ключом, а все остальные содержат информацию, относящуюся к данному ключу. NIS находит информацию для клиента, выполняя поиск по этим ключам. Некоторая информация сохраняется сразу в нескольких таблицах, поскольку каждая такая таблица использует различные ключи. Например, имена и адреса систем сохраняются в двух таблицах отображения: hosts.byname и hosts.byaddr. По имени сервера можно найти его адрес в таблице отображения hosts.by name. Наоборот, по адресу сервера можно отыскать его имя в таблице отображения hosts.byaddr.
Таблицы домена размещаются в каталоге Narlypl<domainname> каждого сервера. Например, таблицы, которые относятся к домену pyramid.com, размещаются на каждом сервере в каталоге /var/yp/pyramid.com.
В процессе инсталляции в каталоге /var/ур/ сервера NIS сохраняется makefile. Если вы запускаете в указанном каталоге команду /usr/ccs/bin/make, то makedbm создает или модифицирует принятые по умолчанию таблицы NIS из входных файлов. Например, исходным может быть файл /etc/hosts. Сейчас вы уже должны иметь ясное представление о содержимом этого файла. Выдайте следующую команду для создания файлов таблиц отображений NIS:
cd /var/ур
/изг/ccs/bin/make
ПРИМЕЧАНИЕ
Никогда не создавайте таблицы на каком-нибудь подчиненном сервере. Всегда выполняйте команду make на главном сервере NIS.
Создание таблиц отображения N1S описывается более подробно далее в разделе "Конфигурирование главного сервера N1S".
По умолчанию Solaris предоставляет некоторый набор таблиц N1S, описанных в таблице 18.2. Вы можете захотеть использовать все или только некоторые из приведенных таблиц. NIS может также использовать любые таблицы отображения, которые вы создаете или добавляете, когда инсталлируете другие программные продукты.
Таблиц^18.2 »Принйтм^^^MIS
Имя таблицыИмя таблицыbootparamsbootparamsОписаниеОписаниеСоответствующий административный файл службы NIS
Имя таблицы
Имя таблицы
bootparams
bootparams
Описание
Описание
bootparamsbootparamsethers, byaddrethers, byaddrethersethersethers.bynameethers.bynameethersethersgroup.bygidgroup.bygidgroupgroupЭта таблица содержит имена маршрутов, которые необходимы клиентам в процессе запуска: root, swap и, возможно, некоторые другие.
bootparams
bootparams
ethers, byaddr
ethers, byaddr
ethers
ethers
ethers.byname
ethers.byname
ethers
ethers
group.bygid
group.bygid
group
group
Эта таблица отображения содержит имена систем и их адреса в сети Ethernet. Ключом в данной таблице является Ethernet-адрес системы.
Эта таблица содержит имена систем и их адреса в сети Ethernet. Ключом в данной таблице является имя системы.
Эта таблица содержит информацию по защите групп пользователей. Ключом в данной таблице является идентификатор группы (GID).
Имя таблицы
group.byname
hosts.byaddr
hosts.byname
mail.aliases
mail.byaddr
netgroup
netgroup.byhost
netgroup.byuser
netid. byname
Соответствующий административный файл службы NIS
group
hosts
hosts
aliases
aliases
netgroup
netgroup
netgroup
passwd
Продолжение таблицы 18.2
netmasks.byaddr
networks.byaddr
networks.byname
netmasks
networks
networks
Описание
Эта таблица содержит информацию по защите групп пользователей. Ключом в данной таблице является имя группы.
Эта таблица содержит имена систем и их IP-адреса. Ключом в данной таблице является IP-адрес системы.
Эта таблица содержит имена систем и их IP-адреса. Ключом в данной таблице является имя системы (имя хоста).
Эта таблица содержит псевдонимы и адреса электронной почты. Ключом в данной таблице является псевдоним.
Эта таблица содержит адреса электронной почты и псевдонимы. Ключом в данной таблице является адрес электронной почты.
Эта таблица содержит имя группы, имя пользователя и имя системы. Ключом в данной таблице является имя группы.
Эта таблица содержит имя группы, имя пользователя и имя системы. Ключом в данной таблице является имя системы.
Эта таблица содержит имя группы, имя пользователя и имя системы. Ключом в данной таблице является имя пользователя.
Эта таблица используется для аутентификации в стиле UNIXxoctob и групп пользователей. Она содержит имя системы и адрес электронной почты (включая имя домена). Если этот файл доступен, то его информация учитывается в дополнение к информации других файлов.
Эта таблица содержит сетевые маски, используемые для формирования IP-подсетей. Ключом в данной таблице является 1Р-адрес.
Эта таблица содержит имена сетей, известных вашей системе, и их IP-адреса. Ключом в данной таблице является IP- адрес.
Эта таблица содержит имена сетей, известных вашей системе, и их IP-адреса. Ключом в данной таблице является имя сети.
passwd.adjunct.bynamepasswd и shadow
Эта таблица содержит теневую информацию аудита и скрытую информацию паролей для клиентов С2.
Продолжение таблицы 18.2
Имя таблицы
Соответствующий административный файл службы N1S
Описание
passwd.byname
passwd и shadow
Эта таблица отображения содержит информацию паролей и теневую информацию. Ключом в данной таблице является имя пользователя.
passwd.byuid
passwd и shadow
Эта таблица содержит информацию паролей и теневую информацию. Ключом в данной таблице является идентификатор пользователя (ID).
protocols.byname
protocols
Эта таблица содержит сетевые протоколы, известные вашей сети. Ключом в данной таблице является наименование протокола.
protocols.bynumber
protocols
Эта таблица содержит сетевые протоколы, известные вашей сети. Ключом вдан- ной таблице является номер протокола.
rpc.bynumber
rpc
Эта таблица содержит номер программы и наименование RPC (Remote Procedure Calls - вызова дистанционных процедур), известных вашей системе. Ключом в данной таблице является номер программы.
services.byname
services
Эта таблица перечисляет службы Internet, известные вашей сети. Ключом в данной таблице является ключевой порт или протокол.
services.byservice
services
Эта таблица перечисляет службы Internet, известные вашей сети. Ключом в данной таблице является наименование службы.
ypservers
He применяется
Эта таблица перечисляет серверы NIS, известные вашей сети. Эта таблица содержит всего один столбец, и е качестве ключе используется имя системы.
Информация, содержащаяся в перечисленных выше файлах, помещается в базы данных N1S автоматически, когда вы создаете главный сервер. Если вы захотите настроить вашу конфигурацию, то N1S также может управлять другими системными файлами.
N1S позволяет существенно упростить обновление сетевых баз данных по сравнению с файловой системой /etc. Вам больше не понадобится изменять на каждой системе административные файлы в файловой системе /etc всякий раз, когда вы модифицируете сетевое окружение. Например, если вы добавляете новую систему к какой-нибудь сети, на которой запущена N1S, вы должны обновить только входный файл на главном сервере и выполнить команду /usr/ccs/bin/make. Этот процесс автоматически обновит таблицы отображения hosts.byname и hosts.byaddr. Эти таблицы затем передаются на любой подчиненный сервер и становятся доступными для всех клиентских систем данного домена и их программ.
Точно так же, как вы используете команду cat для отображения содержимого какого- нибудь текстового файла, вы можете воспользоваться командой ypcat для отображения
значений из какой-нибудь таблицы. Базовый синтаксис команды ypcat выглядит следующим образом:
ypcat [-k] <mapname>
Если какая-нибудь таблица отображения сформирована только из ключей, как это имеет место в случае таблицы ypservers, то следует использовать команду ypcat с опцией -к, поскольку в противном случае команда ypcat выведет на печать пустые строки.
В данном случае аргумент mapname представляет собой имя таблицы отображения, которую вы хотите проанализировать.
Вы можете воспользоваться командой ypwhitch, чтобы определить, какой сервер является главным сервером некоторой таблицы:
ypwhitch -m <mapname>
В данном случае аргумент mapname представляет собой имя таблицы отображения, для которой вы хотите определить главный сервер. Команда ypwhitch отвечает посредством отображения имени главного сервера.
Другие команды службы имен NIS будут рассматриваться в следующих разделах.
Планирование вашего домена NIS
Прежде чем вы сконфигурируете системы в качестве серверов или клиентов NIS, необходимо спланировать домен NIS. Каждый домен имеет какое-нибудь имя, и каждая система разделяет, или совместно использует, общий набор таблиц отображения, принадлежащий данному домену.
■Л1^а|ц^_
Планирование вашего домена NIS
Для планирования ващего домена выполните следующие операции:
Решите, какие системы будут входить в ваш домен NIS.
Выберите имя домена N1S. Имя домена NIS может иметь длину до 256 символов, хотя с практической точки зрения более целесообразно использовать более короткие имена. Хорошей практикой является ограничение длины имен доменов 32 символами. Имена доменов чувствительны к регистру ввода символов (прописные и строчные буквы рассматриваются как разные символы). Для удобства вы можете использовать ваше доменное имя в сети Internet в качестве основы для имени домена NIS. Например, если вашим доменным именем в сети Internet является pdesigninc.com, вы можете назвать ваш домен NIS как pdesigninc.com.
Прежде чем какая-нибудь система сможет воспользоваться услугами службы NIS, должны быть установлены корректные имена домена NIS и самой системы. Это должно быть сделано как для серверов, так и для клиентов службы NIS. Имя системы устанавливается с помощью файла /etc/nodename, а доменное имя системы - с помощью файла /etc/defaultdomain. Эти файлы считываются при запуске системы и их содержимое используется соответственно командами uname -s и domainname. Просмотреть файл /etc/nodename можно, например, следующим образом:
more /etc/nodename
Система отвечает следующим образом:
sparcserver
Просмотреть файл /etc/defaultdomain можно, например, следующим образом:
more /etc/defaultdomain
Система отвечает следующим образом:
pdesigninc.com
Теперь вы готовы приступить к конфигурированию вашего главного сервера NIS.
Конфигурирование главного сервера NIS
Прежде чем приступить к конфигурированию главного сервера NIS, убедитесь в том, что был инсталлирован пакет программного обеспечения службы NIS. Этот пакет имеет имена SUNWypu и SUNWypr. Для проверки этих пакетов воспользуйтесь командой pkginfo. Оба вышеназванных пакета являются составными частями стандартного релиза Solaris 8. Демоны, которые поддерживают службу NIS, описываются в таблице 18.3.
Таблица18.3 Демоны службы NIS.
Демон
Функциональное назначение
ypserv
Этот демон представляет собой поисковый сервер базы данных службы NIS. Основным функциональным назначением демона ypserv является поиск информации в его локальной базе данных таблиц NIS. Если на момент запуска демона ypserv существует файл /var/yp/ypserv.log, то при возникновении ошибок в этот файл записывается протокол их регистрации. В сети должен присутствовать, по крайней мере, один демон ypserv, чтобы могла функционировать служба NIS.
ypbind
Этот демон реализует процесс привязки службы NIS; он запускается на всех клиентских системах, установленных для использования NIS. Основным функциональным назначением демона ypbind является запоминание информации, разрешающей всем клиентским процессам службы NIS на некотором узле сети обмениваться информацией с серверным процессом.
ypxfr
Этот демон реализует высокоскоростную передачу таблиц. Демон ypxfr передает некоторую таблицу NIS в принятый по умолчанию домен на локальный хост. Он создает временную таблицу в каталоге /var/ур/ ypdomain.
rpc.yppasswdd
Этот демон реализует обработку запросов, от команды yppasswd на изменение паролей. Он изменяет некоторый элемент пароля в файлах passwd, shadow и security/passwd.adjunct.
rpc.ypupdated
Этот демон реализует обновление информации NIS. Демон ypupdated учитывает информацию файлов обновления в каталоге /var/ур, чтобы определить, какие таблицы NIS должны быть обновлены и как изменены.
Команды, которые вы можете использовать для управления службой NIS, представлены в таблице 18.4. Некоторые из этих команд будут более подробно описаны немного позднее в рамках примеров установки NIS.
Т<ад^18$^^ндыт^
УтилитаОписание
make
Эта команда обновляет таблицы NIS посредством считывания makefile (если запускается в каталоге /var/ур). Вы можете применять команду make для обновления всех таблиц, основываясь на соответствующих входных файлах, или для обновления только конкретных таблиц.
makedbm
Эта команда создает файл dbm для некоторой таблицы NIS. Команда makedbm принимает исходный файл и конвертирует его в пару файлов в формате ndbm. Если вы запускаете команду make в каталоге /var/yp, то команда makedbm создает или модифицирует принятые по умолчанию таблицы NIS из входных файлов.
ypcat
Эта команда перечисляет данные таблицы NIS.
ypinit
Эта команда создает и инсталлирует базу данных NIS и инициализирует клиентский и серверный списки ypservers службы NIS. Команда ypinit используется для установки клиента NIS. Только суперпользователь может запускать эту команду.
yppoll
Эта команда получает от сервера порядковый номер таблицы. Команда yppoll запрашивает у процесса ypserv, каков порядковый номер поименованной таблицы и какой хост является для нее главным сервером NIS.
yppush
Эта команда распространяет новую версию некоторой таблицы с главного сервера NIS на подчиненные серверы.
ypset
Эта команда устанавливает привязку к конкретному серверу. Команда ypset полезна для привязки клиентского узла, который находится на другой широковещательной сети..
ypstart
Эта команда используется для запуска NIS. После того, как хост был сконфигурирован с помощью команды ypinit, команда ypstart автоматически определяет статус данной машины в службе NIS и запускает соответствующие демоны.
ypstop
Эта команда применяется для останова NIS.
ypwhich
Эта команда возвращает имя сервера NIS, который предоставляет услуги службы имен некоторому клиенту NIS, или возвращает имя главного сервера NIS для некоторой таблицы.
Главный сервер хранит исходные файлы всех таблиц NIS данного домена. Любые изменения в таблицах NIS должны быть сделаны именно на главном сервере. Главный сервер NIS предоставляет информацию клиентам и обеспечивает подчиненные серверы NIS обновленными таблицами. Прежде чем запускается главный сервер NIS, необходимо создать некоторые из исходных файлов.
Одно из основных предназначений NIS - управление регистрациями пользователей и файлами узлов (host-файлами) в большом сетевом окружении. Вообразите себе попытку поддерживать актуальность файлов /etc/hosts, /etc/passwd и /etc/group в большой сети, которая насчитывает несколько сотен пользователей. Без службы NIS каждый раз при добавлении или удалении какой-нибудь системы должен быть обновлен файл /etc/hosts. При этом важно синхронизировать файлы /etc/hosts каждой системы в вашей сети. Более того, без использования NIS, если какой-нибудь пользователь изменяет свой пароль, он должен уведомить системного администратора, что его пароль был изменен. Затем системный администратор должен убедиться в том, что обновлены все файлы /etc/shadow в пределах данной сети. Если же эти файлы не обновлены, то данный пользователь не сможет зареги-
стрироваться на другой системе с новым паролем.
Системный администратор может управлять системными конфигурационными файлами, такими как /etc/hosts и /etc/passwd, применяя NIS. С помощью NIS системный администратор устанавливает файлы /etc/hosts, /etc/passwd и /etc/group на одном сервере. Вместо того, чтобы заботиться о копировании конфигурационного файла на каждую систему, все системы обращаются за конфигурационной информацией к данному серверу.
Создание главного файла passwd
Первой задачей, которую необходимо решить при установке какого-нибудь главного сервера NIS, является подготовка исходного файла для таблицы passwd. Однако, будьте внимательны при работе с этим исходным файлом. Исходные файлы могут быть размещены либо в каталоге /etc на главном сервере, либо в каком-нибудь другом каталоге. Размещение исходных файлов в каталоге /etc является нежелательным, поскольку содержимое таблиц окажется затем таким же, как и содержимое локальных файлов на этом главном сервере. Особую проблему это составляет для файлов passwd и shadow, поскольку все пользователи могут иметь доступ к таблицам на главном сервере и пароль суперпользователя сможет быть передан всем YP-клиентам через таблицу passwd.
Фирма Sun рекомендует, исходя из соображений защиты информации от несанкционированного доступа и для предотвращения несанкционированного доступа с привилегиями суперпользователя, чтобы файлы, используемые для построения таблицы паролей NIS, ни в коем случае не содержали элемент для суперпользователя. Следовательно, таблицы отображения паролей не должны формироваться из файлов, которые размещаются в каталоге /etc на этом главном сервере. Из файлов паролей, используемых для построения таблиц passwd, должен быть удален элемент для суперпользователя, и, в свою очередь, эти таблицы должны быть размещены в каталоге, который может быть защищен от несанкционированного доступа.
Для выполнения настоящего упражнения скопируйте все исходные файлы из каталога /etc в каталог /var/ур. Поскольку исходные файлы размещаются в каталоге, отличном от /etc, модифицируйте makefile в каталоге /var/ур посредством замены строки DIR=/etc на строку DIR=/var/yp. Кроме того, отредактируйте макрос паролей PWDIR в makefile таким образом, чтобы он ссылался на каталог, в котором находятся файлы passwd и shadow, посредством замены строки PWDIR=/etc на строку PWDIR=/var/yp.
Теперь создайте исходный файл passwd, воспользовавшись для этого копией файла /etc/ passwd на той системе, которая становится главным сервером NIS. Создайте некоторый файл passwd, в котором содержатся все регистрационные имена. Этот файл используется для создания таблицы NIS.
|^за шагом',
Создание исходного файла паролей
Скопируйте файл /etc/passwd с каждого хоста вашей сети в каталог /var/yp на тот хост, который будет главным сервером. Назовите каждую копию этого файла именем /var/yp/passwd.<AosZ/tame>, где <hostname> - это имя того хоста, с которого была сделана данная копия.
Конкатенируйте все файлы passwd в некоторый временный файл passwd, как показано:
cd /var/ур
cat passwd passwd.hostnamel passwd.hostname2 ... > \ passwd.temp
Выдайте команду sort для упорядочивания временного файла passwd по именам пользователей, а затем передайте вывод этой команды через конвейер команде uniq для удаления дублирующихся элементов:
ПРИМЕЧАНИЕ ".' . ■
NIS не требует, чтобы файл passwd был отсортирован каким-нибудь определенным образом. Сортировка этого файла просто упрощает поиск дублирующихся элементов.
Проанализируйте /var/yp/passwd.temp на предмет обнаружения в нем дублирующихся имен пользователей, которые не были выявлены на предыдущем этапе с помощью команды uniq. Это может произойти в том случае, когда какое-нибудь регистрационное имя пользователя встречается два раза, однако соответствующие строки не являются полностью идентичными. Если вы обнаружили несколько элементов для одного и того же пользователя, отредактируйте данный файл для удаления повторяющихся элементов. Убедитесь в том, что каждый пользователь в вашей сети имеет какое-нибудь уникальное имя и идентификатор пользователя (UID).
Выдайте следующую команду для сортировки временного файла passwd по номерам идентификаторов пользователей:
sort -о /var/yp/passwd.temp -t: -k 3n,3 /var/yp/passwd.temp
Проанализируйте файл /var/yp/passwd.temp еще раз на предмет обнаружения в нем дублирующихся идентификаторов пользователя. Если вы обнаружили несколько элементов с одним и тем же идентификатором пользователя, отредактируйте данный файл, меняя идентификаторы таким образом, чтобы никакие два пользователя не имели бы один и тот же идентификатор.
Удалите из файла /var/yp/passwd.temp регистрационное имя суперпользователя. Если вы заметите, что регистрационное имя суперпользователя встречается в нем несколько раз, удалите все соответствующие элементы.
После того как вы удалили из файла /var/yp/passwd.temp все дублирующиеся элементы, переименуйте файл (имеется в виду отсортированный и отредактированный файл), присвоив ему имя /var/yp/passwd. Этот файл используется при генерации таблицы passwd для вашего домена NIS. Удалите все файлы с именами /var/yp/passwd.<hostname> с главного сервера.
Создание главного файла group
Точно так же, как вы создали главный файл /var/yp/passwd, следующей задачей является подготовка одного главного файла /var/yp/group, который будет использоваться для создания таблицы NIS.
111агзашагрм
Создание главного файла group
Скопируйте файл /etc/group с каждого хоста вашей сети в каталог /var/ур на том хосте, который будет главным сервером. Назовите каждую копию этого
файла /var/yp/group.<Aos//tame>, где <hostname> - это имя хоста, с которого была сделана данная копия.
Конкатенируйте все файлы group, включая файл group с главного сервера, в некоторый временный файл group, как показано:
cd /var/ур
cat group group.hostnamel group.hostname2 ... > \ group.temp
Выдайте следующую команду для сортировки временного файла group по именам групп пользователей:
sort -о /var/yp/group.temp -t: -k 1,1 /var/yp/group.temp
NIS не требует, чтобы файл group был отсортирован каким-нибудь определенным образом. Сортировка файла group просто упрощает поиск дублирующихся элементов.
Проанализируйте файл /var/yp/group.temp на предмет обнаружения в нем дублирующихся имен групп пользователей. Если одно и то же имя группы встречается более одного раза, объедините группы, которые имеют одинаковое имя, в одну группу и удалите повторяющиеся элементы.
Выдайте следующую команду для сортировки временного файла group по номерам идентификаторов групп (GID):
sort -о /var/yp/group.temp -t: -k 3n,3 /var/yp/group.temp
Проанализируйте файл /var/yp/group.temp еще раз на предмет обнаружения в нем дублирующихся идентификаторов групп. Если вы обнаружили несколько элементов с одним и тем же идентификатором группы, отредактируйте данный файл, изменяя идентификаторы группы таким образом, чтобы никакие две группы не имели бы один и тот же идентификатор.
Переименуйте файл /var/yp/group.temp (имеется в виду отсортированный и отредактированный файл), присвоив ему имя /var/yp/group. Этот файл используется при генерации таблицы group для вашего домена NIS.
Удалите все файлы с именами lvar/yp/group.<hostname> с главного сервера.
Создание главного файла hosts
Теперь создайте главный файл /etc/hosts точно таким же образом, как вы создавали главные файлы /var/yp/passwd и /var/yp/group.
Шагза шагом ",■■■■.
Создание главного файла hosts
Скопируйте файл /etc/hosts с каждого хоста вашей сети в каталог /var/ур на том хосте, который будет главным сервером. Назовите каждую копию этого файла lvar/yp/hosts.<hostname>, где <hostname> - это имя того хоста, с которого была сделана данная копия.
Конкатенируйте все файлы hosts, включая файл hosts с главного сервера, в некоторый временный файл hosts:
cd /var/ур
cat hosts hosts.hostnamel hosts.hostname2 ... > \ hosts.temp
Выдайте следующую команду для сортировки временного файла hosts таким образом, чтобы дублирующиеся IP-адреса находились в смежных строках этого файла:
sort -о /var/yp/hosts.temp /var/yp/hosts.temp
Проанализируйте файл /var/yp/hosts.temp на предмет обнаружения в нем дублирующихся IP-адресов. Если вам необходимо отобразить какой-нибудь IP- адрес на несколько имен хостов, включите их в качестве псевдонимов в один элемент данного файла.
Выдайте следующую команду для сортировки временного файла hosts по именам хостов:
sort -о /var/yp/hosts.temp -b -k 2,2 /var/yp/hosts.temp
Проанализируйте файл /var/yp/hosts.temp на предмет обнаружения в нем дублирующихся имен хостов. Имя хоста может быть отображено на несколько IP-адресов только в том случае, если эти адреса принадлежат различным платам интерфейса локальной сети, установленным в одном и том же хосте. Если одно и то же имя хоста встречается в нескольких элементах, которые отображаются на IP-адреса различных хостов, удалите все элементы кроме одного.
Проанализируйте файл /var/yp/hosts.temp на предмет обнаружения в нем дублирующихся псевдонимов. Ни один псевдоним не должен появляться более чем в одном элементе.
Переименуйте файл /var/yp/hosts.temp (имеется в виду отсортированный и отредактированный файл), присвоив ему имя /var/yp/hosts. Этот файл используется при генерации таблицы hosts для вашего домена NIS.
Удалите все файлы с именами /var/yp/hosts.<Ao$z«ame> с главного сервера.
Другие исходные файлы
Перечисленные далее файлы также могут быть скопированы в каталог /var/ур для использования в качестве исходных при построении таблиц NIS, однако сначала убедитесь в том, что эти файлы отражают актуальное состояние вашего системного окружения: ф auto.home или auto home ф auto.master или auto master ф bootparams ф ethers.
ф netgroup ф netmasks ф networks ф protocols Ф грс ф services ф shadow
В отличие от других исходных файлов файл /etc/mail/aliases не может быть перемещен в другой каталог. Этот файл должен размещаться в каталоге /etc/mail. Убедитесь в том, что исходный файл /etc/mail/aliases является полным, для чего проверьте, что он содержит все псевдонимы электронной почты, которые вы хотите иметь доступными в пределах создаваемого домена.
Подготовка файла Makefile
После проверки исходных файлов и их копирования в каталог исходных файлов, вам необходимо конвертировать эти файлы в таблицы формата ndbm, который используется службой NIS. Эту задачу для вас автоматически выполняет ypinit. Установка ypinit будет описана в следующем разделе.
Сценарий ypinit вызывает программу make, которая использует Makefile, находящийся в каталоге /var/ур. В этом каталоге к вашим услугам уже имеется принятый по умолчанию Makefile. Он содержит команды, необходимые для преобразования исходных файлов в требуемый для таблиц формат ndbm.
Функциональное назначение Makefile - создание соответствующих таблиц службы NIS для каждой из баз данных, перечисленных под ключевым словом "all". После обработки утилитой makedbm эти данные собираются в двух файлах, mapname.dir и mapname.pag. Оба вышеназванных файла находятся в каталоге /var/yp/<domainname> на главном сервере.
Makefile формирует таблицы passwd из файлов /PWDIR/passwd, /PWDIR/shadow и /PWDIR/security/passwd.adjunct в зависимости от ситуации.
Установка главного сервера с использованием сценария ypinit
Сценарий командного процессора /usr/sbin/ypinit устанавливает главный сервер, подчиненные серверы и клиентов для использования NIS. Этот сценарий также изначально запускает make для создания таблиц на главном сервере.
Шагза wajrqMf1J '
18.5 Использование сценария ypinit для установки главного сервера
Чтобы воспользоваться сценарием ypinit для создания нового набора таблиц NIS на главном сервере, выполните следующие операции:
Зарегистрируйтесь с привилегиями суперпользователя на главном сервере и убедитесь в том, что служба имен получила всю необходимую информацию из файлов /etc/, а не от NIS, для чего введите следующую командную строку:
ср /etc/nsswitch.files /etc/nsswitch.conf
Отредактируйте файл /etc/hosts для добавления в него имен и IP-адресов каждого из серверов NIS.
Для создания новых таблиц на главном сервере введите следующую командную строку:.
/usr/sbin/ypinit -m
' Сценарий ypinit запрашивает у вас список других систем для использования в качестве подчиненных серверов NIS. Наберите имя сервера, на котором вы работаете, вместе с именами ваших подчиненных серверов NIS. Введите имя
сервера, а затем нажмите Enter. Проделайте это для каждого сервера. Вводите имя каждого сервера в отдельной строке. Когда закончите ввод информации, нажмите Ctrl+D.
Сценарий ypinit запрашивает, хотите ли вы, чтобы процедура установки прерывалась при возникновении первой нефатальной ошибки, или вы хотите продолжать установку, не обращая внимания на такие ошибки. Введите в ответ у.
Если вы ввели у, то сценарий ypinit существует до тех пор, пока не столкнется с первой проблемой; затем вы можете разрешить эту проблему и перезапустить сценарий ypinit. Такая процедура рекомендуется в том случае, когда вы запускаете сценарий ypinit в первый раз. Если вы предпочитаете продолжать установку, можете попытаться вручную разрешить все проблемы, которые могли возникнуть, а затем перезапустить сценарий ypinit.
ПРИМЕЧАНИЕ.
Нефатальная ошибка может быть отображена в том случае, если какие-нибудь файлы таблиц не представлены. Подобные ошибки не оказывают влияния на функционирование NIS.
Сценарий ypinit запрашивает у вас, могут ли быть уничтожены существующие файлы в каталоге /varl^l<domainname>.
Это сообщение появляется только в том случае, если NIS была инсталлирована ранее. Для инсталляции новой версии вы должны ответить yes на этот вопрос.
После того, как сценарий ypinit завершит построение списка серверов, он вызывает make.
Команда make использует инструкции, содержащиеся в makefile, который находится в каталоге /var/ур. Она удаляет из указанных вами файлов любые строки комментариев, а затем запускает программу makedbm для обработки этих файлов, создавая соответствующие таблицы и устанавливая имя главного сервера для каждой из них.
Чтобы разрешить использование N1S в качестве службы имен, наберите следующую командную строку:
ср /etc/nsswitch.nis /etc/nsswitch.conf
Эта команда заменяет текущий файл переключателей принятым по умолча- ' нию, ориентированным на NIS. В случае необходимости вы можете отредактировать этот файл. Информация о содержимом файла переключателей представлена в разделе "Переключатель службы имен".
После того как главные таблицы отображения уже созданы, вы можете запустить демоны N1S на главном сервере.
Запуск и останов NIS на главном сервере
Для запуска службы NIS на главном сервере вам необходимо стартовать на этом сервере демон ypserv, а затем запустить демон ypbind. Демон ypserv формирует информационные ответы на запросы клиентов после обнаружения этих клиентов в таблицах NIS. Вы можете запустить службу NIS на данном сервере посредством запуска сценария /usr/lib/ netsvc/yp/ypstart из командной строки. После того как вы сконфигурировали главный сервер
NIS с помощью сценария ypinit, сценарий ypstart автоматически вызывает демон ypserv всякий раз при запуске данной системы.
Для останова службы NIS выполните команду ypstop на данном сервере, как показано:
/usr/lib/netsvc/ур/ypstop
Переключатель службы имен
Следующим этапом в установке службы NIS является установка переключателя службы имен, что подразумевает редактирование файла /etc/nsswitch.conf. Переключатель службы имен управляет тем, как рабочая станция или приложение клиента получает сетевую информацию. Переключатель службы имен часто называется просто переключателем. Этот переключатель определяет, какие службы имен использует некоторое приложение для получения информации об наименовании, а также в каком порядке оно применяет эти службы. Этим переключателем является файл nsswitch.conf, который хранится в каталоге /etc каждой системы.
Каждая рабочая станция имеет файл переключателя службы имен, который находится в ее каталоге /etc и называется nsswitch.conf. Кроме того, в каталоге /etc на каждой системе вы сможете найти шаблоны, которые могут быть использованы в качестве файла nsswitch.conf и описываются в таблице 18.5. Какую бы службу имен вы ни выбрали, выберите соответствующий шаблон переключателя службы имен, настройте его и присвойте этому файлу имя nsswitch.conf.
Имя Описание
nsswitch.files
Используйте данный шаблон в том случае, когда будут применяться локальные файлы в каталоге /etc и службы имен не существует.
nsswitch.nis
Использует базу данных NIS в качестве основного источника информации за исключением таблиц passwd, group, automount и aliases (псевдонимов). Соответствующие запросы адресуются сначала к локальным файлам в каталоге /etc, а затем к базам данных NIS.
nsswitch.nisplus
Использует базу данных NIS+ в качестве основного источника информации за исключением таблиц passwd, group, automount и aliases (псевдонимов). Соответствующие запросы адресуются сначала к локальным файлам в каталоге /etc, а затем к базам данных NIS+.
nsswitch.dns
Устанавливает службу имен для выполнения поиска всех элементов в локальных файлах каталога /etc за исключением элемента hosts. Для поиска элемента hosts обращается непосредственно к DNS.
nsswitch.ldap
Использует LDAP в качестве основного источника информации за исключением таблиц passwd, group, automount и aliases (псевдонимов). Соответствующие запросы адресуются сначала к локальным файлам в каталоге /etc, а затем к базам данных службы LDAP.
Найдите файл шаблона, который называется /etc/nsswitch.nis и был установлен, когда вы загружали программное обеспечение Solaris 8. Этот файл шаблона содержит принятые по умолчанию конфигурации переключателя, которые используются службой NIS и локальными файлами. Когда программное обеспечение Solaris 8 инсталлировалось в первый раз, то, если вы указали службу имен NIS в качестве принятой по умолчанию, данный файл шаблона был скопирован в файл /etc/nsswitch.conf. Если же в процессе инсталляции программного обеспечения вы выбрали "files" в качестве службы имен по умолчанию, то файл /etc/ nsswitch.conf создается из файла nsswitch.files, который выглядит подобно приведенному:
* # /etc/nsswitch.files: *
An example file that could be copied over to /etc/nsswitch.conf; it # does not use any naming service. #.
"hosts:" and "services:" in this file are used only if the # /etc/netconfig file has a "-" for nametoaddr_libs of "inet" transports, passwd:files
group:files
hosts:files
networks:files
protocols:files
rpc:files
ethers:files
netmasks:files
bootparams:files
publickey:files
At present there isn't a 'files' backend for netgroup; the system will # figure it out pretty quickly, and won't use netgroups at all. netgroup:files
automount:files
aliases:files
services:files
sendmailvars:files
Если вы не выбрали NIS в качестве вашей службы имен в процессе инсталляции программного обеспечения, то можете переместить этот файл на свое место вручную: ср /etc/nsswitch.nis /etc/nsswitch.conf
Принятый по умолчанию файл /etc/nsswitch.nis выглядит подобно приведенному: # # /etc/nsswitch.nis: # # An example file that could be copied over to /etc/nsswitch.conf; it * uses NIS (YP) in conjunction with files. # # "hosts:" and "services:" in this file are used only if the # /etc/netconfig file has a "-" for nametoaddr_libs of "inet" transports. # the following two lines obviate the "+" entry in /etc/passwd and # /etc/group. passwd:files nis
group:files nis
consult /etc "files" only if nis is down, hosts: xfn nis [NOTFOUND=return] files networks: nis [NOTFOUND=return] files protocols: nis [NOTFOUND=return] files
rpc: nis [NOTFOUND=return] files ethers: nis [NOTFOUND=return] files netmasks: nis [NOTFOUND=return] files bootparams: nis [NOTFOUND=return] files publickey: nis [NOTFOUND=return] files
netgroup:nis
automount:files nis
aliases:files nis
# for efficient getservbyname() avoid nis services:files nis
sendmailvars:files
Каждая строка в файле /etc/nsswitch.nis определяет какой-нибудь конкретный тип сетевой информации, например, host (узел сети), password (пароль) или group (группу); после этого типа следует один или несколько источников информации, таких как таблицы NIS+, таблицы отображения NIS, таблица хостов DNS или локальный каталог /etc. Указанные источники информации - это именно то место, где клиент выполняет поиск сетевой информации. Например, система должна в первую очередь выполнить поиск информации о паролях в файле /etc/passwd. Затем, если регистрационное имя не было обнаружено в этом файле, системе необходимо послать запрос серверу службы имен NIS.
В файле переключателя службы имен перечислено множество типов сетевой информации, которая называется базами данных, вместе с источниками информации службы имен для разрешения в том порядке, в каком выполняется поиск в них. Допустимые источники информации, которые могут быть заданы в этом файле, перечисляются в таблице 18.6.
Источник Описание
files
Ссылается на локальные файлы в каталоге /etc данного клиента.
nisplus
Ссылается на таблицу службы имен NIS+.
nis
Ссылается на таблицу службы имен NIS.
User
Применяется только к элементу printers.
dns
Применяется только к элементу hosts.
Idap
Ссылается на какое-нибудь дерево информации каталогов (DIT - Directory Information Tree).
compat
Поддерживает старый стиль синтаксиса "+", который применяется в информации файлов passwd и group.
Как было показано в предыдущем примере файла шаблона по имени nsswitch.nis, файл переключателя службы имен может включать в себя значения действий для некоторых из элементов. Когда служба имен выполняет поиск в заданном источнике информации, таком как локальные файлы или таблицы отображения NIS, то источник возвращает некоторый код состояния. Эти коды состояния описываются в таблице 18.7.
ИсточникОписание
SUCCESS21 2300SUCCESS21 2300Запрошенный элемент был найден
SUCCESS
21 2300
SUCCESS
21 2300
Продолжение таблица 18.7
Источник
Описание
UNAVAIL
Источник информации был недоступен
NOTFOUND
Источник информации не содержит запрошенного элемента
TRYAGAIN
Источник информации возвратил сообщение "1 am busy, try later” ("Я занят, попытайтесь позже")
Для каждого кода состояния существуют два действия:
^ Continue Попытаться провести поиск в другом источнике информации
$> ReturnПрекратить поиск элемента
Следующие действия являются принятыми по умолчанию:
SUCCESS = return
UNAVAIL = continue
NOTFOUND = continue
TRYAGAIN = continue
Например, приведенный элемент в файле шаблона nsswitch.nis
hosts: nis [NOTFOUND=return] files
устанавливает, что выполняется только поиск в таблице hosts из таблицы отображения службы имен NIS. Если данная таблица отображения службы имен NIS не содержит искомого элемента, система не сможет обратиться к локальному файлу /etc/hosts. Если вы хотите выполнять поиск как в таблице hosts службы имен NIS, так и в локальном файле /etc/ hosts, удалите элемент [NOTFOUND=return].
Установка клиентов NIS
В качестве суперпользователя вы должны выполнить четыре задачи, чтобы установить некоторую систему в качестве клиента N1S:
$> Удалить информацию учетных записей пользователей из файлов /etc/passwd и /etc/group на системе клиента.
Ф Установить доменное имя на системе клиента.
$> Установить на системе клиента файл nsswitch.conf, как было описано в предыдущем разделе.
Ф Выполнить конфигурирование данного клиента для использования NIS; этот процесс будет поясняться далее.
Первый этап - удаление из файла /etc/passwd всех элементов, относящихся к пользователям, которые будут управляться сервером NIS. Не забудьте обновить файл /etc/shadow. Кроме этого, удалите элементы из файлов /etc/group, /etc/hosts и любых других сетевых файлов, которые теперь управляются службой имен NIS.
После установки файла nsswitch.conf и вашего доменного имени, как было описано в разделе, озаглавленном "Планирование вашего домена NIS", вы конфигурируете каждую клиентскую систему для использования N1S, для чего следует зарегистрироваться в системе как суперпользователь и выполнить команду ypinit:
ypinit -с
Вам будет предложено указать серверы NIS, с которых данный клиент может получать информацию службы имен. Введите имя каждого сервера, а затем возврат каретки. Вы можете перечислить один главный сервер и столько подчиненных серверов, сколько захотите. Серверы, которые вы перечисляете, могут находиться где угодно в пределах данного домена. С практической точки зрения весьма полезно сначала перечислить серверы, которые находятся ближе всего (с сетевой точки зрения) к данной системе, а затем указать более отдаленные серверы сети, поскольку клиент будет пытаться выполнить привязку к первому серверу из списка.
Протестируйте данного клиента NIS, для чего выйдите из системы и войдите в нее еще раз, используя регистрационное имя, которое теперь отсутствует в файле /etc/passwd и управляется средствами NIS. Протестируйте также таблицу отображения узлов сети, послав с помощью команды ping запрос какой-нибудь системе, которая теперь не идентифицируется в локальном файле /etc/hosts.
Установка подчиненных серверов NIS
Прежде чем устанавливать подчиненный сервер NIS, вы должны установить на нем клиентскую систему NIS. После того, как вы убедитесь, что главный сервер NIS функционирует должным образом, проведя тестирование службы имен NIS на этой системе, вы можете установить эту систему в качестве подчиненного сервера. Ваша сеть может содержать один или несколько подчиненных серверов. Наличие подчиненных серверов обеспечивает непрерывность функционирования служб NIS в том случае, если главный сервер является недоступным. Прежде чем реально выполнять сценарий ypinit для создания подчиненных серверов, вы должны выполнить команду domainname на каждом из подчиненных серверов службы имен NIS, чтобы убедиться, что его доменное имя согласовано с главным сервером. Вспомните, что доменное имя устанавливается посредством его добавления в файл /etc/defaultdomain.
Шаг за шагом ' ', ' '.
18.6 Установка подчиненного сервера NIS
В качестве суперпользователя отредактируйте файл /etc/hosts на данном подчиненном сервере для добавления в него имен и IP-адресов всех остальных серверов службы имен NIS. Эта операция является необязательной и выполняется только для удобства. При этом предполагается, что вы не используете службу имен DNS для управления именами узлов сети (этот вопрос будет объясняться далее в настоящей главе). На этапе 3 вам будет предложено указать имя хоста для сервера NIS. Вам потребуется элемент для этого имени узла в локальном файле /etc/hosts; в противном случае придется задать IP-адрес сервера NIS.
Перейдите в каталог /var/ур на подчиненном сервере.
Для инициализации данного подчиненного сервера в качестве клиента, наберите следующую командную строку:
/usr/sbin/ypinit -с
Команда ypinit предложит ввести перечень серверов NIS. Сначала введите имя локального подчиненного сервера, на котором вы работаете, затем - имя главного сервера, а затем - имена остальных подчиненных серверов NIS в данном домене, начиная с ближайшего сервера (в сетевом смысле) и заканчивая наиболее удаленным.
Далее необходимо определить, работает ли в данное время демон ypbind.
Если он выполняется, то вам необходимо остановить его и запустить повторно. Для проверки того, выполняется ли в данное время демон ypbind, введите следующую командную строку: ps -ef | grep ypbind
Если в ответ возникает некоторый листинг, это значит, что демон ypbin работает. Если демон ypbind выполняется, остановите его, для чего наберите следующую командную строку: /usr/lib/netsvc/yp/ypstop
Для повторного запуска демона ypbind наберите такую командную строку: /usr/lib/netsvc/yp/ypstart
Для инициализации данной системы в качестве подчиненного сервера введите: /usr/sbin/ypinit -s master
В приведенном примере аргумент master обозначает имя системы существующего главного сервера NIS.
Повторите описанные выше процедуры для каждой системы, которую вы хотите сконфигурировать в качестве подчиненного сервера N1S.
Теперь вы можете запустить демоны на подчиненном сервере и начать работу со службой имен NIS. Прежде всего, вы должны остановить все существующие процессы ур, для чего введите следующую командную строку:
/usr/lib/netsvc/yp/ypstop
Для запуска демона ypserv на подчиненном сервере и выполнения демона ypbind, вы можете либо перезапустить данный сервер, либо ввести следующую командную строку, призванное заменить NIS:
/usr/lib/netsvc/yp/ypstart
NIS+
NIS+ является аналогом службы имен NIS, однако при этом она обладает большими функциональными возможностями. Служба имен NIS+ не является расширением N1S, она представляет собой новое программное обеспечение.
ПРИМЕЧАНИЕ ;-v. . ....
Служба имен NIS+ не рассматривается в подробностях на второй части сертификационного экзамена системного администратора. Вам будет задано несколько общих вопросов обзорного плана, относящихся к NIS+ и поднятых в настоящей книге, однако практические знания в области службы имен NIS+ не потребуются аам до тех пор, пока вы не будете сдавать экзамен S.
Служба имен NIS ориентирована на удовлетворение административных требований малых и средних компьютерных сетей с архитектурой клиент/сервер - то есть сетей, объединяющих порядка нескольких сотен клиентских станций. Хотя даже на некоторых сайтах с тысячами пользователей служба имен N1S также считается вполне пригодной. NIS+ проектировалась для больших сетей, объединяющих тысячи клиентских станций; такие сети становятся преобладающими в настоящее время. Кроме того, информация, которая сохраняется в сетях, сегодня изменяется куда более часто, и NIS должна была быть обновлена, чтобы соответствовать такому окружению. Наконец, системы сегодня требуют высо-
кого уровня защиты, a NIS+ способна решить многие проблемы безопасности, которые не могли быть решены службой имен NIS.
Иерархическая структура пространства имен
NIS+ позволяет вам хранить информацию об адресах рабочих станций, защите от несанкционированного доступа, электронной почте, интерфейсах сети Ethernet и сетевых службах в централизованных местах, где все рабочие станции в сети могут получить доступ к этой информации. Такая конфигурация сетевой информации называется пространством имен NIS+.
Пространство имен представляет собой конфигурацию информации, которая сохраняется службой NIS+. Для удовлетворения потребностей некоторой организации пространство имен может быть организовано различными способами. Служба имен NIS+ может быть организована для управления большими сетями, в состав которых входит несколько доменов. Хотя конфигурация пространства имен NIS+ может отличаться от одного сайта к другому, однако все сайты используют одни и те же структурные компоненты: каталоги, таблицы и группы. Эти компоненты называются объектами, и они могут быть организованы в некоторую иерархическую структуру, которая напоминает файловую систему UNIX.
Объекты каталогов формируют скелет данного пространства имен. Будучи упорядочены в некоторую древовидную структуру, они разделяют пространство имен на отдельные части, очень похожие на каталоги и подкаталоги UNIX. Каталогом самого верхнего уровня в пространстве имен является корневой каталог. Если некоторое пространство имен является плоским, то оно имеет только один каталог - корневой. Объекты каталогов, которые находятся в иерархии ниже корневого каталога, называются каталогами.
Пространство имен может иметь несколько уровней каталогов. При определении отношения одного каталога к другому каталог, лежащий ниже, называется дочерним каталогом, а каталог, лежащий выше, - родительским.
Хотя каталоги UNIX разрабатывались для хранения файлов UNIX, каталоги NIS+ разработаны для хранения объектов NIS+: других каталогов, таблиц и групп. Любой каталог NIS+, который хранит группы службы имен NIS+, называется groupsdir, и любой каталог, который хранит системные таблицы NIS+, называется org_dir.
Таблицы службы имен NIS+
В среде NIS+ большая часть информации пространства имен сохраняется именно в таблицах; они представляют собой аналог таблиц отображения NIS, которые были описаны ранее. Все таблицы NIS+ сохраняются в каталогов объекте домена NIS+ под названием orgdir, исключение составляют административные таблицы и таблицы групп, которые сохраняются в каталогов объекте groups_dir. Таблицы, которые поставляются по умолчанию в составе стандартного дистрибутива NIS+, описываются в приведенной таблице 18.8. Пользователи и разработчики приложений часто создают таблицы, совместимые со спецификациями NIS+, для решения собственных задач.
Имя таблицы N/S+ Описание
auto_homeЭта таблица представляет собой таблицу косвенного отображения авто
монтировщика, которая позволяет клиенту NIS+ монтировать исходный, или домашний, каталог любого пользователя в пределах данного домена.
Продолжение таблицы 18.8
Имя таблицы NIS+
Описание
auto_master
Эта таблица перечисляет все таблицы отображения автомонтировщика в пределах домена. Для прямых таблиц таблица auto_master предоставляет имя таблицы отображения. Для косвенных таблиц - предоставляет как имя таблицы отображения, так и имя верхнего каталога ее точки монтирования.
bootparams
Эта таблица сохраняет конфигурационную информацию каждой бездисковой рабочей станции в пределах домена. Бездисковая рабочая станция представляет собой рабочую станцию, которая подсоединена к сети, однако не имеет жесткого диска.
client_info
Это необязательная внутренняя таблица NIS+, которая используется для хранения предпочтений сервера в том домене, в котором он располагается.
cred
Эта таблица сохраняет доверительную информацию о действующих лицах NIS+. Каждый домен имеет одну таблицу cred, которая сохраняет доверительную информацию о клиентских рабочих станциях, которые относятся к данному домену, и о пользователях клиентских машин, которые могут регистрироваться на них.
ethers
Эта таблица сохраняет информацию о 48-разрядных адресах Ethernet для рабочих станций, которые относятся к данному домену.
group
Эта таблица сохраняет информацию о группах пользователей UNIX.
hosts
Эта таблица связывает имена всех рабочих станций, относящихся к данному домену, с их IP-адресами. Эти рабочие станции обычно являются клиентами NIS+, однако могут и не быть таковыми.
mail_aliases
Эта таблица перечисляет псевдонимы электронной почты в данном домене, распознаваемые программой sendmail.
netgroup
Эта таблица определяет группы в масштабах всей сети для проверки полномочий доступа при проведении дистанционного монтирования, регистрации и запуска оболочек. Членами сетевых групп, используемых при проведении монтирования ресурсов в режиме дистанционного доступа, являются рабочие станции; при проведении регистрации в системе и запуске командного процессора в режиме дистанционного доступа членами сетевых групп являются пользователи.
netmasks
Эта таблица содержит сетевые маски, используемые для формирования стандартных внутренних подсетей.
networks
Эта таблица содержит перечень сетей в Internet. Обычно данная таблица создается на основе официальной сетевой таблицы, которая поддерживается NIC (Network Information Center-сетевым информационным центром), однако у вас может возникнуть необходимость добавить к этой таблице свои локальные сети.
passwd
Эта таблица содержит информацию об учетных записях пользователей в пределах домена. Эти пользователи обычно являются действующими лицами NIS+, хотя могут и не быть ими. Однако необходимо помнить, что если эти пользователи являются действующими лицами NIS+, то их доверительная информация сохраняется не в этой таблице, а в таблице cred данного домена. Таблица passwd обычно предоставляет полномочия на чтение группе world (всем) или группе nobody (никому). Данная таблица сохраняет все регистрационные имена, исключение составляет регистрационное имя суперпользователя, которое хранится в локальном файле /etc/passwd.
Продолжение таблицы 18.8 Имя таблицы N1S+ Описание
protocolsВ этой таблице перечисляются сетевые протоколы, используемые для
организации межсетевого взаимодействия.
грсВ этой таблице перечисляются имена программ RPC (Remote Procedure
Call - вызов дистанционных процедур)..
servicesЭта таблица содержит информацию о службах, доступных на объеди
ненной сети.
timezoneВ этой таблице перечисляются часовые пояса, установленные по умол
чанию для каждой рабочей станции в пределах данного домена.
Таблицами NIS+ можно манипулировать с помощью инструмента AdminTool. Главный сервер NIS+ обновляет эти объекты немедленно, однако, он при этом пытается собрать в пакет несколько обновлений, прежде чем распространять эти обновления по своим репликациям (подчиненным серверам N1S+).
Защита информации в NIS+
Защита информации в NIS+ расширяется в двух направлениях. Прежде всего вы можете аутентифицировать доступ к данной службе, и за счет этого можете провести границу между правами доступа, которые разрешены для того, кто является членом данного сообщества, и для всех остальных объектов сети. Во-вторых, защита информации от несанкционированного доступа в NIS+ включает в себя некоторую модель авторизации, которая позволяет предоставлять конкретные права или лишать таких прав в зависимости от результатов аутентификации.
Аутентификация
Используется, чтобы указать действующие лицaNIS+. Действующим лицом службы имен NIS+ может быть любой, кто зарегистрировался на какой-нибудь клиентской системе в качестве обычного пользователя, любой, кто зарегистрировался в качестве суперпользователя, или любой процесс, который выполняется с полномочиями доступа суперпользователя на какой-нибудь клиентской системе. Таким образом, действующим лицом в NIS+ может быть какой-нибудь пользователь клиентской системы или какая-нибудь клиентская рабочая станция. Всякий раз, когда действующее лицо (пользователь или система) пытается получить доступ к какому-нибудь объекту NIS+, личность данного пользователя и защищенный службой RPC пароль проверяются и подтверждаются.
Авторизация
Используется для задания прав доступа. Всякий раз, когда действующие лица пытаются получить доступ к какому-нибудь объекту NIS+, они помещаются в один из четырех классов, или категорий, авторизации:
^ Владелец (Owner): единственное действующее лицо NIS+
$> Группа (Group): набор действующих лиц NIS+
$> Мир (World): все действующие лица, которые прошли аутентификацию в NIS+
$> Никто (Nobody): действующие лица, которые не прошли аутентификацию
Сервер NIS+ определяет, какие именно права доступа назначены действующим лицам по конкретному объекту. Если права доступа совпадают, то данный сервер отвечает на запрос. Если же они не совпадают, то сервер отменяет запрос и возвращает сообщение об ошибке.
Авторизация в NIS+ - это процесс предоставления действующим лицам прав доступа к некоторому объекту NIS+. Права доступа аналогичны полномочиям на файл. Существует четыре типа прав доступа:
Ф Чтение (Read): действующее лицо может считывать содержимое данного объекта.
Ф Модифицирование (Modify): действующее лицо может модифицировать содержимое данного объекта.
Ф Создание (Create): действующее лицо может создавать новые объекты в таблице или каталоге.
Ф Уничтожение (Destroy): действующее лицо может уничтожать объекты в таблице или каталоге.
Права доступа отображаются в виде 16 символов. Они могут быть показаны с помощью команды nisls -1 и изменены с помощью команды nischmod.
Система защиты информации от несанкционированного доступа в NIS+ позволяет администраторам задавать различные права - на чтение, модифицирование, создание и уничтожение объектов - для каждого класса. Например, какой-нибудь конкретный класс может быть уполномочен на модифицирование конкретного столбца в таблице passwd, но не на чтение этого столбца, или различным классам может быть разрешено считывать некоторые элементы в какой-нибудь таблице и запрещено считывать другие элементы в той же таблице.
Конкретная реализация схемы авторизации, которая была описана выше, зависит от уровня защиты в данном домене. Сервер NIS+ может функционировать в рамках одного из трех уровней защиты информации. Эти уровни обобщаются в таблице 18.9.
Уровень защиты Описание
ОУровень 0 защиты информации от несанкционированного доступа раз
рабатывался для тестирования и установки исходного пространства имен NIS+. Сервер службы имен NIS+, работающий на уровне защиты 0, предоставляет любому действующему лицу полные права доступа ко всем объектам NIS+ в домене. Уровень 0 предназначен только для целей установки, и администраторы должны использовать его только с указанной целью. Обычные пользователи не должны использовать уровень О в сетях в нормальном режиме эксплуатации.
Уровень 1 защиты информации использует схему защиты AUTH_SYS.
Этот уровень защиты информации не поддерживается NIS+ и не должен использоваться в работе.
Уровень 2 защиты информации принят по умолчанию. Это наивысший
уровень защиты информации, предоставляемый в настоящее время NIS+, и одновременно уровень защиты информации по умолчанию, который назначается серверу NIS. На этом уровне происходит аутентификация только тех запросов, которые используют мандаты DES (Data Encryption Standard - стандарта шифрования данных). Стандарт DES описывается в следующем разделе. Запросы, не имеющие мандатов, назначаются в класс nobody (никто) и имеют только те права доступа, которые были предоставлены данному классу. Запросы, которые имеют некорректный мандат стандарта DES, повторяются. После повторного отказа при попытке получения действительного мандата стандарта-та DES, запросы с некоррект-
Продолжение таблицы 18.9
Уровень защиты Описание ’
ными мандатами сбрасываются с ошибкой аутентификации. Мандат может быть некорректным по многим причинам, например, когда действующее лицо, сформировавшее данный запрос, не имеет ключевой регистрации на данной системе, когда часы не синхронизированы, когда имеет место несовпадение ключей и т. д.
Аутентификация по стандарту DES
Аутентификация по стандарту DES (Data Encryption Standard - стандарт шифрования данных) использует криптографию DES и криптографию с открытым ключом общего пользования для аутентификации как пользователей, так и систем в сети. DES - стандартный механизм шифрования. Криптография с ключом общего пользования представляет собой кодовую систему, которая применяет два ключа: один ключ общего пользования и один личный ключ.
Защита информации с помощью аутентификации по стандарту DES базируется на возможности отправителя зашифровать текущее время, которое получатель затем может расшифровать и сверить со своими собственными часами. Временная метка шифруется с помощью стандарта DES. Чтобы такая схема работала, необходимы две вещи: оба агента должны использовать одно и то же текущее время, а отправитель и получатель должны применять один и тот же ключ шифрования.
Если некоторая сеть выполняет программу синхронизации времени, то время на системе клиента и на сервере синхронизируется автоматически. Если же программа синхронизации времени недоступна, то временные метки могут быть вычислены с использованием шкалы времени данного сервера вместо сетевого времени. Клиент запрашивает время с сервера перед началом сеанса службы RPC, а затем он вычисляет рассогласование между шкалой времени собственной системы и сервера. При вычислении временной метки полученное значение рассогласования используется для сдвига шкалы времени на системе клиента. Если часы клиента и сервера не синхронизированы к тому моменту, когда сервер начинает отклонять запросы данного клиента, то система аутентификации по стандарту DES выполняет повторную синхронизацию с данным сервером.
Клиент и сервер достигают применения одного и того же ключа для шифрования посредством генерирования некоторого случайного договорного ключа и последующего использования криптографии с ключом общего пользования (это схема шифрования, которая использует ключ общего пользования и секретный ключ) для установления общего ключа. Общий ключ - такой ключ, который способны установить только данные клиент и сервер. Договорный ключ используется для шифрования и дешифрования временной метки клиента; общий - для шифрования и дешифрования договорного ключа.
DNS
DNS (Domain Name System - служба имен доменов) - служба имен, предоставляемая Internet для сетей, использующих протокол TCP/IP (Transmission Control Protocol/Internet Protocol - протокол управления передачей/межсетевой протокол). Эта служба была разработана таким образом, чтобы рабочие станции в сети могли бы быть идентифицированы посредством использования общепринятых имен вместо их адресов в Internet. DNS - про-
грамма, конвертирующая доменные имена в соответствующие им IP-адреса. Без такой службы пользователям для доступа к сети Internet приходилось бы в качестве адресов запоминать не слова, а наборы чисел. Процесс нахождения IP-адреса некоторого компьютера посредством использования соответствующего ему имени хоста в качестве индекса называется разрешением, или отображением, имен в адреса.
Набор сетевых систем, использующих DNS, называется пространством имен DNS. Пространство имен DNS может быть разделено на иерархию доменов. Домен DNS - это просто группа систем. Каждый домен поддерживается двумя или более серверами имен: первичным, вторичным или кэширующим серверами. Каждый домен должен иметь один первичный сервер и, по крайней мере, один вторичный сервер для обеспечения резервирования.
Каждый сервер реализует службу имен DNS посредством запуска демона, который называется in.named. На клиентской стороне реализация DNS обеспечивается через резольвер. Функциональное назначение резольвера - разрешение запросов пользователей. Резольвер не является ни демоном, ни одиночной программой; он представляет собой набор подпрограмм динамических библиотек, используемых приложениями, которым необходимо знать имена систем. После выполнения конфигурирования резольвера система может запрашивать службу DNS с некоторого сервера имен. Если файл /etc/nsswitch.conf содержит определение вида hosts: dns, то библиотеки резольвера используются автоматически. Если же в файле nsswitch.conf перед DNS указана какая-нибудь другая служба имен, например, NIS, то обращение за информацией по хостам сначала выполняется к этой службе. Только в том случае, если служба имен, указанная первой, не находит заданный хост, используются библиотеки резольвера.
Например, если в файле nsswitch.conf строка hosts задана следующим образом - hosts: nis dns, то сначала служба имен NIS выполняет поиск информации по хостам. Если службой имен NIS искомая информация не обнаружена, то используется резольвер. Поскольку службы имен, такие как NIS и NIS+, содержат информацию о хостах только их собственной сети, то назначением строки hosts: nis dns в файле переключателя является установление использования NIS для информации о локальных хостах, a DNS - для информации о дистанционных хостах в Internet. Если резольвер запрашивает сервер имен, то сервер либо возвращает запрошенную информацию, либо направляет на другой сервер.
Отображение имен в адреса происходит в том случае, если какой-нибудь программе на вашей локальной системе требуется установить контакт с дистанционным компьютером. Эта программа, скорее всего, знает имя хоста дистанционного компьютера, однако она может не знать, как установить его местоположение, особенно если эта дистанционная система находится в другой компании, за многие мили от вашего сайта. Для получения адреса дистанционной системы программа обращается за помощью к программному обеспечению DNS, которое работает локально на вашей системе и рассматривается в данном случае как клиент DNS.
Ваша система посылает запрос на сервер, который обслуживает распределенную базу данных DNS. Файлы в базе данных DNS имеют небольшое сходство с таблицей hosts службы имен NIS+ и даже с локальным файлом /etc/hosts, хотя все они обслуживают аналогичную информацию: имена хостов, IP-адреса и другую информацию о конкретной группе компьютеров. Сервер имен использует имя хоста вашей системы, посылаемое в качестве составной части запроса, для того, чтобы найти, или "разрешить", IP-адрес дистанционной системы. Затем сервер возвращает найденный IP-адрес на вашу локальную систему, если имя хоста имеется в базе данных DNS.
Если же имя хоста отсутствует в базе данных DNS, то это означает, что данная система находится за пределами его полномочий или, используя терминологию службы DNS, вне пределов локального административного домена.
Поскольку эксплуатация централизованного перечня соответствия доменных имен IP- адресам может быть неудобной с практической точки зрения, такие перечни распределяются по всей сети Internet с учетом иерархии авторства. Сервер DNS отображает доменные имена в ваших Internet-запросах или переадресовывает эти запросы другим серверам Internet. Такая пересылка, наиболее вероятно, происходит в ближней с географической точки зрения зоне относительно вашего провайдера Internet.
DNS не рассматривается в подробностях на второй части сертификационного экзамена системного . администратора. Необходимо знать определение службы DNS, однако практические знания в области службы имен DNS не потребуются вам до тех пор, пока вы не будете сдавать сертификационный экзамен сетевого администратора фирмы Sun.
Протокол LDAP
Протокол LDAP (Lightweight Directory Access Protocol - облегченный протокол доступа к каталогам) представляет собой самую последнюю службу поиска, которая была добавлена к среде Solaris. Строго говоря, протокол LDAP представляет собой службу каталогов. Служба каталогов подобна базе данных, однако она содержит больше описательной информации, основанной на атрибутах. Информация в каталоге обычно считывается, но не записывается в него.
LDAP используется в качестве указателя ресурсов, однако практическое применение он находит только в средах с интенсивным чтением информации, где вам ие требуется часто выполнять ее обновление. Протокол LDAP может быть использован для хранения той же самой информации, которая содержится в таблицах NIS или NIS+. Вы можете использовать LDAP в качестве указателя ресурсов для интерактивного телефонного справочника, чтобы исключить необходимость применения отпечатанного телефонного справочника. Такое приложение в основном интенсивно работает в режиме чтения данных, однако авторизованные пользователи будут иметь возможность обновлять содержимое этого справочника для поддержки точности его сведений.
< ПРИМЕЧАНИЕ
Протокол LDAP может быть использован программами электронной почты для поиска на сервере контактной информации. Например, каждая программа электронной почты имеет персональную адресную книгу, однако как найти адрес того человека, который никогда не присылал вам сообщения электронной почты? Клиентские почтовые программы могут запрашивать серверы протокола LDAP в целях поиска элементов самыми разнообразными способами. Протокол LDAP позволяет производить поиск в некоторых частях данного каталога для обнаружения элементов, удовлетворяющих некоторым критериям, задаваемым через какой-нибудь фильтр поиска.
Протокол LDAP представляет собой иерархическую структуру, которая очень тесно приближена к структуре организации и может предоставлять доступ к многочисленным доменам, подобно DNS или NIS+. Служба имен NIS предоставляет только плоскую структуру, доступную лишь для одного домена. В службе каталогов LDAP элементы каталогов упорядочены в иерархическую древовидную структуру, которая отражает политические, географические и/или организационные границы. Элементы, представляющие страны,
находятся на вершине этого дерева. Ниже находятся элементы, представляющие штаты или национальные организации. Еще ниже могут находиться элементы, представляющие людей, организационные единицы, принтеры, документы и вообще все, что вы в состоянии себе представить.
Протокол LDAP имеет возможности для добавления или удаления какого-нибудь элемента данного каталога, изменения существующих элементов и имени существующего элемента. Однако большую часть времени протокол LDAP используется для поиска информации в заданном каталоге.
Серверы LDAP индексируют все данные в их элементах, могут применяться "фильтры" для выбора конкретного человека или группы, которая вас интересуют, и эти серверы возвращают именно ту информацию, которую вы хотите увидеть. Информация может быть запрошена из любого элемента, удовлетворяющего заданному критерию. Например, здесь приведен пример запроса LDAP, переведенный на обычный английский язык: "Search people located in Hudsonville whose name contains "Bill" that have an email address. Return their full name and email address" ("Найти людей, проживающих в Гудзонвилле, имена которых содержат выражение "Bill" и которые имеют адреса электронной почты; возвратить их полные имена и адреса электронной почты".)
Возможно, вы хотите выполнить поиск по целому поддереву каталога, лежащему ниже элемента "Университет штата Мичиган", для обнаружения человека, имеющего имя Билл Калкинс (Bill Calkins), извлекая при этом адреса электронной почты для каждого найденного элемента. Протокол LDAP позволяет вам с легкостью справиться с этой задачей. Или вам может потребоваться выполнить поиск по всем элементам, лежащим ниже элемента "Соединенные Штаты Америки", для обнаружения организаций, в названиях которых присутствует слово "Пирамида" (Pyramid), и затем получить номер факса. Протокол LDAP решит для вас и эту задачу.
Некоторые службы каталогов не предоставляют защиты, позволяя любому просматривать информацию. Протокол LDAP предоставляет метод для аутентификации клиента или для удостоверения его личности на сервере каталогов, обеспечивая путь для достижения полного контроля над доступом с целью защиты информации, которую содержит данный сервер.
Протокол LDAP был разработан в Университете штата Мичиган с целью адаптации сложной системы каталогов масштаба предприятия, которая называется протоколом Х.500, к современной сети Internet. Сервер службы каталогов запускается на каком-нибудь из ведущих компьютеров в сети Internet, и различные клиентские программы, понимающие данный протокол, могут выполнять регистрацию на данном сервере и поиск элементов. Протокол Х.500 слишком сложен для поддержки его на настольных компьютерах и в Internet, поэтому LDAP был создан именно с целью предоставления службы каталогов обычным пользователям.
Резюме
Настоящая глава охватывает все темы, связанные со службами имен, которые встречаются на второй части сертификационного экзамена администратора Solaris, в том числе локальные файлы в каталоге /etc, NIS, NIS+, DNS и LDAP.
В настоящей главе описывается, как выполнять конфигурирование главного сервера, подчиненных серверов и клиентов для наиболее широко распространенной службы имен NIS. Также описывается файл переключателя службы имен, используемый операционной системой для выполнения любого поиска сетевой информации.
Примените ваши знания
Естественно, что ваше понимание изложенных тем будет улучшаться по мере того, как вы будете использовать описанные программные продукты и накапливать опыт. Многие большие сети, которые применяют службу имен, являются гетерогенными сетями, а это означает, что они представляют собой нечто большее, чем просто системы под Solaris, соединенные в сеть. Вам необходимо обращаться к документации изготовителя для каждого конкретного типа системы, чтобы понять, как именно каждая операционная система реализует службы имен. Вы увидите, что в этих реализациях очень много общего и существует лишь небольшое количество различий. По мере того, как вы накопите опыт и завершите сдачу сертификационных экзаменов администратора Solaris, вашей следующей целью должно стать получение сертификата в сетевого администратора Solaris фирмы Sun. Сертификация в обеих названных предметных областях является ценной для любого системного администратора UNIX.
В следующей главе описывается программный продукт Solstice AdminSuite и то, как этот продукт может помочь вам в управлении вашей сетью.
Ключевые термины
Служба имен
NIS
NIS+
DNS
LDAP
Главный сервер N1S
Подчиненный сервер N1S
Клиент NIS
Таблица отображения NIS
Исходный файл NIS
Makefile
Переключатель службы имен
Иерархическая структура пространства имен
Объекты NIS+
Таблицы NIS+
Аутентификация NIS+
Авторизация NIS+ (необходимо знать четыре класса авторизации и четыре типа прав доступа)
Уровни защиты информации в NIS+ (необходимо знать три уровня)
Резольвер DNS
Примените ваши знания
УПРАЖНЕНИЯ.
При выполнении настоящих упражнений вам потребуется две системы Solaris, подключенные к сети. Одна из этих систем будет сконфигурирована в качестве главного сервера N1S, а вторая - клиента N1S.
Установка главного сервера NIS
При выполнении настоящего упражнения вам предстоит выполнить несколько операций для установки вашего главного сервера NIS.
Оцениваемое время: 20 минут
Зарегистрируйтесь в системе как суперпользователь.
Установите ваше доменное имя, если оно не было установлено до сих пор:
domainname <yourname>.сот
Занесите имя вашего домена в файл /etc/defaultdomain:
domainname > /etc/defaultdomain
На системе, которая станет вашим главным сервером N1S, создайте главные файлы /etc/passwd, /etc/group и /etc/hosts. При этом следуйте инструкциям, которые приведены в настоящей главе, по созданию указанных файлов.
Замените в двух приведенных элементах файла /var/yp/Makefile каталог /etc на /var/yp:
Строки
DIR = /etc
PWDIR = /etc
Замените строками
DIR = /var/yp
PWDIR = /var/ур
Создайте файл переключателя службы имен путем копирования файла-шаблона службы NIS, как показано:
ср /etc/nsswitch.nis /etc/naswitch.conf
Запустите команду ypinit для установки данной системы в качестве главного сервера N1S:
ypinit -m
Когда получите запрос на ввод следующего хоста в качестве подчиненного сервера N1S, нажмите CtrH-D. При выполнении настоящего упражнения мы не будем добавлять подчиненный сервер NIS.
Укажите, что вы не хотите, чтобы ypinit прерывалась при возникновении первой нефагальной ошибки, для чего введите N в ответ на соответствующий запрос.
Вы узнаете о том, что процесс установки завершился успешно, когда получите сообщение, что текущая система была установлена в качестве главного сервера без каких бы то ни было ошибок.
Запустите службу имен NIS на этом главном сервере, для чего выполните:
/uar/lib/netsvc/yp/ypstart
Убедитесь в том, что этот главный сервер NIS находится в работоспособном состоянии, для чего введите следующую командную строку:
ypwhich -m
Примените ваши знания
Установка клиента NIS
При выполнении настоящего упражнения вам предстоит выполнить несколько операций для установки вашего клиента NIS.
Оцениваемое время: 10 минут
Зарегистрируйтесь в системе как суперпользователь.
Установите ваше доменное имя, если оно не было установлено до сих пор:
domainname <yournazne>. com
Занесите имя вашего домена в файл /etc/defaultdomain.
domainname > /etc/defaultdomain
Создайте файл переключателя службы имен путем копирования файла-шаблона службы NIS, как показано:.
ср /etc/nsswitch.nis /etc/nsswitch.conf
Сконфигурируйте клиентскую систему для использования NIS посредством выполнения команды ypinit:
ypinit -с
Вам будет предложено указать сервер NIS, с которого данный клиент сможет получать информацию службы имен. Введите имя главного сервера NIS, а затем нажмите Enter.
Когда вы получите приглашение ввести имя следующего хоста для добавления, нажмите Ctrl+D.
Запустите демоны NIS, для чего выполните следующий сценарий:
/usr/lib/netsvc/yp/ypstart
Убедитесь в том, что данный клиент NIS привязан к главному серверу, для чего наберите следующую команду:
ypwhich
В ответ должно быть отображено имя главного сервер NIS.
Протестируйте данного клиента NIS, для чего выйдете из системы и зарегистрируйтесь в ней еще раз, используя регистрационное имя, которое теперь отсутствует в файле /etc/passwd, но известно и управляется средствами службы имен NIS.
Обзорные вопросы
Какая из перечисленных служб сохраняет информацию, которую пользователи, системы и приложения должны использовать для обмена через сеть, в некотором центральном месте?
Служба NIS
Служба NFS
Автомонтирование
AutoFS
Что из перечисленного не является службой имен Solaris?
A. DES
В. /etc
С. NIS+
D. DNS
Что из перечисленного представляет собой традиционный способ UNIX для обслуживания информации о системах, пользователях, паролях, группах н таблицах авто- монтировання?
A. DNS
В. NIS
С. NIS+
D. /etc
Административные базы данных NIS называются:
А. Файлами
Таблицами
Таблицами отображения
Объектами
Набор таблиц отображения, которые используются совместно серверами и клиентами, называется:
Таблица
Объект
Домен N1S
Ничего из перечисленного не подходит
Когда вы добавляете какую-нибудь новую систему к сети, на которой работает N1S, вы должны обновить входной файл на главном сервере и запустить:
makedbm
make
yppush
ypinit
Какая из команд используется для отображения значений из таблицы отображения N1S?
ypcat
ypwhich
ypserv
ypbind
Какая нз команд может быть использована для определения того, какой из серверов является главным для конкретной таблицы отображения?
ypbind
ypcat
ypserv
ypwhich
Примените ваши знания
Что из перечисленного распространяет новую версию таблицы отображения NIS с главного сервера на подчиненные?
ypinit
yppush
make
yppoll
Что из перечисленного устанавливает главный и подчиненные серверы и клиенты для использования NIS?
A. makedbm
make
ypinit
yppush '
Что из перечисленного является конфигурационным файлом для переключателя службы имен?
nsswitch.conf
resolve.conf
/etc/netconfig
nsswitch.nis
В каком из перечисленных файлов каждая строка определяет какой-нибудь конкретный тип сетевой информации, например, хост, пароль или группу; после этого типа следует один или несколько источников информации: таблицы NIS+, таблицы отображения NIS, таблица хостов DNS или локальный каталог /etc?
resolve.conf
nsswitch.conf
/etc/netconfig
nsswitch.nis
Что обозначает приведенный элемент в файле переключателя службы имен?
hosts: nis [NOTFOUND=return] files
Искать таблицу отображения N1S, а затем локальный файл /etc/hosts.
Искать только таблицу hosts в таблице отображения N1S.
Искать только таблицу hosts в таблице отображения NIS и локальный файл /etc/ hosts.
Не искать таблицу hosts службы N1S или локальный файл /etc/hosts.
Какие файлы шаблонов переключателя службы имен находятся в Solaris 8?
A. nsswitch.files
nsswitch.nis+
nsswitch.nisplus
nsswitch.fhs
Компоненты пространства имен NIS+ называются:
Таблицы
Объекты
Таблицы отображения
Каталоги
Что из перечисленного не является одним из четырех классов авторизации NIS+?
Все (АП)
Владелец (Owner)
Группа (Group)
Никто (Nobody)
Каковы четыре типа прав доступа NIS+?
read, write, create, modify
read, write, execute, no access
read, write, delete, modify
read, modify, create, destroy
Сколько уровней защиты информации имеется в NIS+?
2
1
3
4
Какой уровень защиты информации в NIS+ является принятым по умолчанию?
3
О
1
2
Что из перечисленного является службой имен, предоставляемой Internet для сетей TCP/IP?
A. DNS
NIS
N1S+
Ничего из перечисленного выше
Каждый сервер реализует DNS посредством запуска демона, который называется:
named
in.named
nfsd
dnsd
Основная задача DNS заключается в предоставлении:
службы защиты информации
разрешения имен в адреса
Примените ваши знания
службы имен
служб пространства имен
Что из перечисленного описывает различия между аутентификацией и авторизацией NIS?
Аутентификация представляет собой проверку того, что инициатор запроса является правомочным пользователем данной сети, а авторизация определяет, разрешено ли конкретному пользователю получать или модифицировать информацию.
Авторизация представляет собой проверку того, что инициатор запроса является правомочным пользователем данной сети, а аутентификация определяет, разрешено ли конкретному пользователю получать или модифицировать информацию.
Элементы какого из файлов определяют, каким образом добывается конкретный тип информации (другими словами, какая из служб имен - NIS, NIS+, DNS и так далее - может быть использована для получения того или иного типа информации (о хостах, паролях, группах) и в какой последовательности должны запрашиваться службы имен)?
A. /etc/nsswitch.conf
/etc/resolve.conf
/etc/nsswitch.nis
/etc/nsswitch.nisplus
Сколько служб имен поддерживает Solaris 8?
3
4
5
6'
Какая из перечисленных служб имен используется в Internet?
A. DNS
NIS
NIS+
DES
Какая из перечисленных команд применяется для установки главного сервера N1S?
ypserver -m
nisinit -m
nisserver -m
ypinit -m
Ответы на обзорные вопросы
А. Служба NIS сохраняет информацию об именах и адресах рабочих станций, пользователях, сети как таковой и сетевых службах.
A. DES не является службой имен Solaris.
D. Файлы /etc представляют собой традиционный способ UNIX для обслуживания информации о системах, пользователях, паролях, группах и таблицах автомонтирования.
С. Административные базы данных NIS называются таблицами отображения.
С. Набор таблиц отображения, которые используются совместно серверами и клиентами, называется доменом NIS.
В. Чтобы обновить исходный файл на главном сервере путем добавления имени новой системы, вы должны выполнить команду /usr/ccs/bin/make.
А. Точно так же, как вы используете команду cat для вывода содержимого какого-нибудь текстового файла, можно воспользоваться командой ypcat для демонстрации значений из таблицы отображения NIS.
D. Вы можете воспользоваться командой ypwhich для определения того, какой из серверов является главным для конкретной таблицы отображения.
В. Команда yppush распространяет новую версию таблицы отображения NIS с главного сервера службы имен NIS на подчиненные серверы.
С. Команда ypinit создает и инсталлирует базу данных NIS и инициализирует клиентский и серверный списки ypservers службы NIS.
А. В процессе установки NIS установите переключатель службы имен, что включает в себя редактирование файла /etc/nsswitch.conf.
В. Каждая строка в файле /etc/nsswitch.conf определяет какой-нибудь конкретный тип сетевой информации, например, хост, пароль или группу; после этого типа следует один или несколько источников информации: таблицы NIS+, таблицы отображения NIS, таблица хостов DNS или локальный каталог /etc.
В. Приведенный элемент в файле шаблона nsswitch.nis
hosts: nis [NOTFOUND=return] files
устанавливает, что только поиск таблицы hosts выполняется в таблице отображения NIS.
А, С. Доступны следующие файлы шаблонов: nsswitch.files, nsswitch.nisplus, nsswitch.nis, nsswitch.dns и nsswitch.ldap.
В. Конфигурация пространства имен NIS+ может отличаться от одного сайта к другому; все сайты используют одни и те же структурные компоненты: каталоги, таблицы и группы. Эти компоненты называются объектами, и они могут быть организованы в некоторую иерархическую структуру, напоминающую файловую систему UNIX.
А. Всего в службе имен NIS+ существует четыре класса авторизации: Owner (Владелец), Group (Группа), World (Мир) и Nobody (Никто).
D. Права доступа аналогичны полномочиям доступа к файлам. Всего существует четыре типа прав доступа: Read (Читать), Modify (Модифицировать), Create (Создать) и Destroy (Уничтожить).
С. Всего существует три уровня защиты информации: 0, 1 и 2.
D. Уровень 2 защиты информации принят по умолчанию в NIS+. Это наивысший уровень защиты информации, предоставляемый NIS+ в настоящее время.
A. DNS является службой имен, предоставляемой Internet для сетей, использующих протокол TCP/IP (Transmission Control Protocol/Internet Protocol - протокол управления передачей/межсетевой протокол).
В. Каждый сервер реализует службу имен DNS посредством запуска демона, который называется in.named.
В. Процесс нахождения IP-адреса некоторого компьютера посредством использования соответствующего ему имени хоста в качестве индекса называется разрешением адресов по именам, или отображением имен в адреса. Основная задача службы имен DNS заключается в предоставлении разрешения имен в адреса.
А. Аутентификация используется для идентификации действующих лиц в NIS+. Таким действующим лицом в NIS+ может быть какой-нибудь пользователь-клиент или клиентская рабочая станция. Каждый раз, когда действующее лицо (пользователь или система) пытается получить доступ к какому-нибудь объекту службы NIS+, наличие данного пользователя и защищенный службой RPC пароль проверяются и подтверждаются. Авторизация используется для задания прав доступа.
А. Файл /etc/nsswitch.conf определяет, каким образом добывается конкретный тип информации и в какой последовательности должны запрашиваться службы имен.
С. Операционная система Solaris 8 поддерживает следующие службы имен: файлы /etc, NIS, NIS+, DNS и LDAP.
A. DNS представляет собой службу имен, которая используется в Internet.
D. Для построения новых таблиц отображения на главном сервере введите следующую командную строку: /usr/sbin/уpinit -m.
Глава 19
Консоль управления Solaris и пакет Solaris AdminSuite
Темы
В настоящей главе рассматриваются следующие темы экзамена:
Представление о консоли управления Solaris
Программа SMC (Solaris Management Console - консоль управления Solaris) - инструмент, написанный на Java и предназначенный для оказания помощи системным администраторам в части администрирования серверов. Она представляет собой инструмент централизованного управления для важных приложений и служб.
Ознакомление с Solaris AdminSuite
Подобно Admintool и SMC пакет Solaris AdminSuite представляет собой инструмент, имеющий графический интерфейс пользователя и предназначенный для оказания помощи системным администраторам при установке учетных записей пользователей, администрировании хостов, файловых систем и конфигурировании последовательных портов в локальном окружении или в среде службы имен.
Содержание
(Введение644
Консоль управления Solaris645
Использование SSMC646
Solaris AdminSuite654
Использование Solaris AdminSuite654
(Резюме661
Примените ваши знания662
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
Наилучшим способом изучения SMC и Solaris AdminSuite является практическое использование этих программных продуктов. Убедитесь в том, что оба названных продукта инсталлированы на системе Solaris. У вас может возникнуть потребность загрузить и инсталлировать пакет AdminSuite, как это описывается в настоящей главе. Выполните практически каждый пошаговый пример, приведенный в данной главе. Эти примеры ознакомят вас с важными функциональными особенностями рассматриваемых инструментов.
Будьте готовы перечислить и описать важнейшие функциональные возможности инструментов SMC и AdminSuite.
Введение
SMC (Solaris Management Console - консоль управления Solaris) - набор инструментов GUI, предназначенных облегчить администрирование ваших серверов. Консоль управления Solaris базируется на технологии Java и позволяет с какого-нибудь дистанционного местоположения управлять администрировными и сетевыми службами на ваших серверах. Например, используя SMC, администратор может управлять разбивкой дисков как локально, так и на дистанционных системах. Одним из основных преимуществ консоли управления Solaris является концепция RBAC (Role-Based Access Control - ролевого управления доступом), которая позволяет администраторам делегировать определенные административные права пользователям в рамках защищенной системы.
Solaris AdminSuite - еще один набор инструментов GUI и команд, которые применяются для выполнения таких административных задач как управление пользователями, группами, хостами, файловыми системами, ресурсами NFS, терминалами и модемами. Пакет AdminSuite подобен пакету Admintool в той части, что он помогает системному администратору в решении задач установки последовательных портов, файловых систем и учетных записей пользователей. Основное отличие данного пакета от пакета Admintool заключается в том, что Solaris AdminSuite позволяет вам выполнять указанные задачи как локально, так и в масштабах сети с одной системы. Пакет Solaris AdminSuite отличается также и от SMC в том, что он не использует ролевое управление доступом ине предоставляет инструментов для управления дисками, планирования работ или управления процессами.
Консоль управления Solaris
Консоль управления Solaris (SMC) использует набор инструментов GUI для облегчения администрирования ваших серверов. Программное обеспечение Solaris Management Console 2.0 (Консоль управления Solaris 2.0) базируется на технологии Java и упрощает решение задач администрирования как локальных, так и дистанционных серверов Solaris путем предоставления следующих возможностей:
Ф Консоль с упрощенной навигацией и графическим интерфейсом пользователя, которая содержит контекстно-зависимую панель помощи, интегрирующую оперативную документацию
Ф Администрирование множества систем Solaris с единственной консоли и при однократной регистрации
Ф Ролевое управление доступом, которое позволяет администраторам делегировать определенные административные права пользователям в рамках защищенной системы
Ф Открытая и расширяемая среда, которая интегрирует приложения, написанные на Java, традиционные приложения Х.11, мастеров (wizards), и HTML с помощью SDK (Software Development Kit - набора инструментальных средств разработки программного обеспечения) консоли управления Solaris версии 2.0
Консоль управления Solaris позволяет администраторам запускать приложения дистанционно и просматривать локально активность всех серверов. Централизованное и дистанционное управление всеми серверами может быть реализовано с любого сервера в сети.
В состав SMC входят три компонента:
Ф Клиент SMC, который называется SMC, или просто консолью
Ф Сервер SMC
ф Редактор инструментальных панелей SMC
Консоль SMC - это окно, содержащее три панели, четыре линейки и две закладки.
Для выполнения модификации и регистрации данных консоль SMC "опирается" на сервер SMC, запущенный наодном или нескольких компьютерах. Каждый из этих серверов представляет собой некоторое хранилище программного кода, который консоль может извлекать после того, как сервер выполнит аутентификацию пользователя данной консоли.
Консоль управления Solaris использует концепцию панели инструментов для представления различных средств системного администрирования или приложений. Инструментальная панель, или панель инструментов, представляет собой иерархически организованный набор папок, инструментов, традиционных приложений и ссылок на другие панели. SMC поставляется в комплекте с принятой по умолчанию инструментальной панелью, корневой, которая называется "ManagementTools" (инструменты управления) и включает в себя инструменты GUI для выполнения следующих задач:
ф Управление процессами. Приостанов, возобновление, мониторинг процессов и управление ими.
Ф Управление пользователями. Установка и обслуживание учетных записей пользователей, пользовательских шаблонов, списков почтовой рассылки, административных ролей и прав. Предоставление или лишение пользователей прав и ролей администрирования с целью управления тем, с какими конкретными при-
ложениями может работать каждый пользователь и какие конкретные задачи он может выполнять.
Ф Планирование заданий. Планирование, запуск и управление ими.
ф Управление монтированием и совместным использованием, или разделением, файловых систем. Просмотр и управление монтированием, разделением доступа, предоставление информации по доступу.
ф Управление дисками. Создание и просмотр разделов дисков.
Ф Управление последовательными портами. Конфигурирование существующих последовательных портов и управление ими.
Ф Управление Log Viewer (программой просмотра системных журналов, или протоколов). Просмотр сообщений приложений и командной строки, управление файлами протоколов.
Консоль может извлекать панели инструментов с сервера. Эти панели представляют собой описание упорядоченных наборов инструментов, доступных на сервере. После того как одна из этих панелей инструментов загружается, консоль отображает ее и инструменты, на которые она ссылается.
Консоль управления Solaris также может быть запущена на каком-нибудь терминале (а не в графическом режиме) для использования через дистанционные соединения или в неинтерактивном режиме из некоторого сценария.'
Использование SMC
Консоль управления Solaris (Solaris Management Console - SMC) инсталлируется, когда вы инсталлируете операционное окружение Solaris 8 версии 1/01 или более поздней версии, и запускается в процессе загрузки системы с помощью сценария /etc/init.d/ init.wbem. Вы можете в любой момент времени проверить состояние сервера SMC, для чего следует ввести следующую командную строку:
/etc/init.d/init.wbem status
Если сервер SMC запущен, вы получите в ответ следующее сообщение:
SMC server version 2.0.0 running on port 898.
Шаг за шагом .''-, >- V '
Использование SMC
Запустите консоль управления Solaris, для чего наберите следующую командную строку:.
/usr/sbin/smc 6
На растровом дисплее вы увидите инициализацию SMC, экран которой представлен на рисунке 19.1.
После завершения процесса инициализации окно консоли управления Solaris имеет вид, представленный на рисунке 19.2. Вы можете запустить консоль управления Solaris, не обладая привилегиями суперпользователя, однако некоторые инструменты и приложения могут не загрузиться до тех пор, пока вы не зарегистрируетесь в системе как суперпользователь или не примете эту роль. Этот процесс описывается далее в настоящем разделе.
*gTh:tCWMer(WU»5) :*gTh:tCWMer(WU»5) :Рисунок 19.1. Экран заставки Solaris Management Console.Рисунок 19.1. Экран заставки Solaris Management Console.q Welcome to the Solaris Mana^tmciu Console
*gTh:tCWMer(WU»5) :
*gTh:tCWMer(WU»5) :
Рисунок 19.1. Экран заставки Solaris Management Console.
Рисунок 19.1. Экран заставки Solaris Management Console.
< СЬАЬЯЛШ dt^iey wi dwwm at SMC « uin "Ovemtw- ». Ox SMC Нортон, I» : wewthcevtreewsrxiybme
’ LAtiuw bifonusttcn pax ‘now fix Ox ow sy«i6c Mp
|i»ion..«>i>n
—У 7/»сгтт«*ьстт Sd<tt«iu«6mUieldt(H#vic«:cit>)pwi<u>iMipirfiiKif<*iUHieleneK(V>e*'P*M Toevwxle
' toHspstd item in IhcNm^uon pecs. doubled!* the ii«n or engl<.didrthe ‘tumor" и theirft »f Kutten
Ctidt has to dielsy on event rw of SMC. Mxtb mdu4« dtfiteuont bf сомик termumlogy mJ tunge aumm«oni.pty*tw»ngeerwiinemaicn<f4rtiittSrn uwcofSMC Sdeci 'Стяг mibeHdpmwito vtcwihe wnvicwM w time
15L22S1BlE3@!BS15L22S1BlE3@!BSРисунок 19.2. Окно SMC.
15L22S1BlE3@!BS
15L22S1BlE3@!BS
э <|>И|^^.
Когда вы запускаете SMC в первый раз, этот процесс может занять несколько минут.
В левой части окна находится навигационная панель. Когда вы разворачиваете какой-нибудь элемент (пункт меню) в навигационной панели, то детали, или составляющие, этого элемента отображаются в правой панели. Например, если щелкнуть This Computer (ultraS), то панели окна консоли изменятся так, как показано на рисунке 19.3.
:O31t** gdll M**. yiW.-W'Wp.
HevsgoUtinФ Management Toesf SlTiitsTorniMer^tM<k Jt Sytttm Status*• 3b Syuem CcrtiguaitHWi* % Serrtces^ 5: Storage<* Sfc Devk.es and ikeraereHevsgoUtinФ Management Toesf SlTiitsTorniMer^tM<k Jt Sytttm Status*• 3b Syuem CcrtiguaitHWi* % Serrtces^ 5: Storage<* Sfc Devk.es and ikeraere^^Syelein Steu* System Config.. ServicesSyelein Steu* System Config.. ServicesStorage Device* wu к .Storage Device* wu к .«Ц i«N a ta
HevsgoUtin
Ф Management Toes
f SlTiitsTorniMer^tM
<k Jt Sytttm Status
*• 3b Syuem CcrtiguaitHWi
* % Serrtces
^ 5: Storage
<* Sfc Devk.es and ikeraere
HevsgoUtin
Ф Management Toes
f SlTiitsTorniMer^tM
<k Jt Sytttm Status
*• 3b Syuem CcrtiguaitHWi
* % Serrtces
^ 5: Storage
<* Sfc Devk.es and ikeraere
^
^
Syelein Steu* System Config.. Services
Syelein Steu* System Config.. Services
Storage Device* wu к .
Storage Device* wu к .
Рисунок 19.3.
Отображение панели Navigation
И:йппм<вя
ты* Сигпвяег (штаб;ты* Сигпвяег (штаб;У SekclanKeaitesSMseS|Kltem?K) T7-^У SekclanKeaitesSMseS|Kltem?K) T7-^TUi Computer :s toe todboxtiiM couwintaU of theireniganauttrolr formansging Ihetavtcetsud coafiguniti'jn of ultra? Clidu dosed "turner" uwin the tell (Nwpucn) panels cktpiaysyasii гыт^епнгД WokthstMt wahotenr. utirs? CUrkMi s toohfl t&eNragrfiMip.wtolMditMd SwpUy ths result iulh*ngbl(Via*) pone. Hote Jwtyoukmto rtoubie-dicke too: uithe View репе to ioedn.
ты* Сигпвяег (штаб;
ты* Сигпвяег (штаб;
У SekclanKeai
tesSMseS
|Kltem?K) T7-^
У SekclanKeai
tesSMseS
|Kltem?K) T7-^
Элементы, отображенные в навигационной панели, представляют собой приложения, которыми SMC может управлять. Эти приложения были зарегистрированы в качестве приложений SMC для текущего хоста.
В первый раз, когда вы регистрируетесь в системе с привилегиями суперпользователя и запускаете SMC, вы несете ответственность за установку, по крайней мере, одной учетной записи пользователя с правами главного администратора и за предоставление прав для других пользователей. Например, вы можете предоставить другому пользователю (не
суперпользователю) право управления учетными записями пользователей в данной системе. Чтобы установить учетную запись главного администратора, вы должны назначить роли учетным записям пользователей. Это называется RBAC (ролевое управление доступом) и описывается в главе 20. Роли - это специальные учетные записи, гарантирующие права администраторам. Для установки учетной записи с правами главного администратора щелкните кнопку меню Action на панели инструментов, которая размещается в верхней части окна SMC, и на экране появится опускающееся меню, как показано на рисунке 19.4. Затем щелкните пункт Add Administrative Role. Возникнет окно Add Administrative Role,
как показано на рисунке 19.5.
Рисунок 19.4.
Опускающееся меню Action
Рисунок 19.5.
Окно Add Administrative Role
Заполните соответствующие поля, описанные в таблице 19.1, и, когда закончите ввод информации, щелкните кнопку Next.
Таблица 19.1 жиш4|Щ^^Rofe?
ПолеОписание
Role Name
Это имя, которое использует пользователь для регистрации в конкретной роли. Данное имя должно быть уникальным, содержать от 2 до 32 буке и цифр, начинаться с буквы, иметь в своем составе, по крайней мере, одну букву нижнего регистра (строчную букву) и быть уникальным в пределах домена.
Full Name
Полное описательное имя для этой роли.
ПолеПолеОписаниеОписаниеDescriptionDescriptionRole ID NumberRole ID NumberПродолжение таблицы 19.1Продолжение таблицы 19.1Описание данной роли, в котором может быть использовано не более 256 символов.Описание данной роли, в котором может быть использовано не более 256 символов.Это идентификационный номер, назначенный данной роли. Он должен представлять собой некоторое целое число в диапазоне от 10 до 2147483647 и должен быть уникальным в пределах домена.Это идентификационный номер, назначенный данной роли. Он должен представлять собой некоторое целое число в диапазоне от 10 до 2147483647 и должен быть уникальным в пределах домена.4. Вам будет предложено ввести пароль для данной роли, как показано на ри4. Вам будет предложено ввести пароль для данной роли, как показано на рисунке 19.6.сунке 19.6.Рисунок 19.6.Окно пароля SMC.Рисунок 19.6.Окно пароля SMC.Пароль должен содержать от 6 до 15 букв (пароль чувствителен к регистру - прописные и строчные буквы считаются разными), цифр и специальных символов. Реально используются только первые восемь символов пароля, однако некоторым пользователям нравятся длинные пароли, поскольку их проще запоминать. В пределах первых шести символов пароля, по крайней мере, два символа должны быть алфавитными и, по крайней мере, один символ должен быть цифрой или специальным символом. Затем щелкните кнопку Next, и появится окно Select Role Rights, которое представлено на рисунке 19.7.Пароль должен содержать от 6 до 15 букв (пароль чувствителен к регистру - прописные и строчные буквы считаются разными), цифр и специальных символов. Реально используются только первые восемь символов пароля, однако некоторым пользователям нравятся длинные пароли, поскольку их проще запоминать. В пределах первых шести символов пароля, по крайней мере, два символа должны быть алфавитными и, по крайней мере, один символ должен быть цифрой или специальным символом. Затем щелкните кнопку Next, и появится окно Select Role Rights, которое представлено на рисунке 19.7.Рисунок 19.7.Окно Select Role Rights.Рисунок 19.7.Окно Select Role Rights.
Поле
Поле
Описание
Описание
Description
Description
Role ID Number
Role ID Number
Продолжение таблицы 19.1
Продолжение таблицы 19.1
Описание данной роли, в котором может быть использовано не более 256 символов.
Описание данной роли, в котором может быть использовано не более 256 символов.
Это идентификационный номер, назначенный данной роли. Он должен представлять собой некоторое целое число в диапазоне от 10 до 2147483647 и должен быть уникальным в пределах домена.
Это идентификационный номер, назначенный данной роли. Он должен представлять собой некоторое целое число в диапазоне от 10 до 2147483647 и должен быть уникальным в пределах домена.
4. Вам будет предложено ввести пароль для данной роли, как показано на ри
4. Вам будет предложено ввести пароль для данной роли, как показано на ри
сунке 19.6.
сунке 19.6.
Рисунок 19.6.
Окно пароля SMC.
Рисунок 19.6.
Окно пароля SMC.
Пароль должен содержать от 6 до 15 букв (пароль чувствителен к регистру - прописные и строчные буквы считаются разными), цифр и специальных символов. Реально используются только первые восемь символов пароля, однако некоторым пользователям нравятся длинные пароли, поскольку их проще запоминать. В пределах первых шести символов пароля, по крайней мере, два символа должны быть алфавитными и, по крайней мере, один символ должен быть цифрой или специальным символом. Затем щелкните кнопку Next, и появится окно Select Role Rights, которое представлено на рисунке 19.7.
Пароль должен содержать от 6 до 15 букв (пароль чувствителен к регистру - прописные и строчные буквы считаются разными), цифр и специальных символов. Реально используются только первые восемь символов пароля, однако некоторым пользователям нравятся длинные пароли, поскольку их проще запоминать. В пределах первых шести символов пароля, по крайней мере, два символа должны быть алфавитными и, по крайней мере, один символ должен быть цифрой или специальным символом. Затем щелкните кнопку Next, и появится окно Select Role Rights, которое представлено на рисунке 19.7.
Рисунок 19.7.
Окно Select Role Rights.
Рисунок 19.7.
Окно Select Role Rights.
В средней оконной панели находится перечень прав, которые могут быть назначены данному пользователю. Когда вы щелкаете каждый элемент в этом списке, на панели Help появляется описание соответствующего права. В примере,
который показан на рисунке 19.7, добавлены права System Administrator (системного администратора), которые автоматически предоставляют целый список прав, таких как User Management (управление пользователями) и Printer Management (управление принтерами). Когда вы закончите назначать права, щелкните кнопку Next. Появится окно Select a Home Directory, которое представлено на рисунке 19.8, позволяющее выбрать исходный (домашний) каталог.
® №|р® №|рИфлг-смвогь bhnwxtNMoty/Ифлг-смвогь bhnwxtNMoty/Рисунок 19.8.Окно Select а Ноте Directory.Рисунок 19.8.Окно Select а Ноте Directory.For this йер, <di« the home dtreetoty server vdiere this rote's pnvete files will be dared.For this йер, <di« the home dtreetoty server vdiere this rote's pnvete files will be dared.• • .ferwK iulh»3: • • •Fath; j/export/home• • .ferwK iulh»3: • • •Fath; j/export/homeW лЛ nemtwiti at.added to tn* «« or the t»ih when me sire dory it «wtotiW лЛ nemtwiti at.added to tn* «« or the t»ih when me sire dory it «wtoti
® №|р
® №|р
Ифлг-смвогь bhnwxtNMoty/
Ифлг-смвогь bhnwxtNMoty/
Рисунок 19.8.
Окно Select а Ноте Directory.
Рисунок 19.8.
Окно Select а Ноте Directory.
For this йер, <di« the home dtreetoty server vdiere this rote's pnvete files will be dared.
For this йер, <di« the home dtreetoty server vdiere this rote's pnvete files will be dared.
• • .ferwK iulh»3: • • •
Fath; j/export/home
• • .ferwK iulh»3: • • •
Fath; j/export/home
W лЛ nemtwiti at.added to tn* «« or the t»ih when me sire dory it «wtoti
W лЛ nemtwiti at.added to tn* «« or the t»ih when me sire dory it «wtoti
«$>aek| | Hejd ^ j | Cencelj
Введите имя каталога, где должны быть сохранены личные файлы для данной роли. В рассматриваемом примере выбран принятый по умолчанию каталог /export/home. После того, как щелкнуть кнопку Next, будет предложено составить список пользователей, уполномоченных на данную роль. В примере, показанном на рисунке 19.9, выбран пользователь bcalkins; затем выполнен щелчок на кнопке Add.
Рисунок 19.9.Окно Assign Users to This Role.Рисунок 19.9.Окно Assign Users to This Role.
Рисунок 19.9.
Окно Assign Users to This Role.
Рисунок 19.9.
Окно Assign Users to This Role.
Щелкните кнопку Next, и возникнет итоговое окно, представленное на рисунке 19.10.
Рисунок 19.10.Итоговое окно Add Administrative Role.Рисунок 19.10.Итоговое окно Add Administrative Role.If you went to make changes, dick Back to the screen you went toIf you went to make changes, dick Back to the screen you went toF«U Maw*» t'F«U Maw*» t'Ио«№ WrucieryИо«№ Wruciery
Рисунок 19.10.
Итоговое окно Add Administrative Role.
Рисунок 19.10.
Итоговое окно Add Administrative Role.
If you went to make changes, dick Back to the screen you went to
If you went to make changes, dick Back to the screen you went to
F«U Maw*» t'
F«U Maw*» t'
Ио«№ Wruciery
Ио«№ Wruciery
, Hj^l лм*|*>| ; Cancel :
Щелкните кнопку Finish для возврата в окно Solaris Management Console. В нем отображается вновь созданная роль, как показано на рисунке 19.11.
Nastattenj:‘ #|пй * ' , j^ege^ptio»' "
& Management loots:4$^mitr “
ф Й This computer (imaQ
Ж System Status'
Ф System Contigutaugn
f <& Users'
$ UserAccounts<
$ UserTcmpteteoA
Рисунок 19.11.Вновь созданная роль в окне Solaris Management Console.Рисунок 19.11.Вновь созданная роль в окне Solaris Management Console.<1 Rights;
Рисунок 19.11.
Вновь созданная роль в окне Solaris Management Console.
Рисунок 19.11.
Вновь созданная роль в окне Solaris Management Console.
Й Gitjups '?
Mating usts
O' ^ Services5
©* i^f Storage:'
6* ^) Devices ana Haiuware
intortBatlen
<^^ Ths tool i $ for managing adrmwdntive roles.
Admmtsuauve Rotes Roles are apeoal accounts, used to grant n^s to admuiaralofs. Indudedui each role's --^,^1 of users who are «titled to assume that rale, and# list of the rights granted to
В любое время вы можете щелкнуть мышью имя роли, скажем, такой как adminusr, и на экране появятся свойства конкретной роли, как показано на рисунке 19.12.
Рисунок 19.12.Окно Role Properties.Рисунок 19.12.Окно Role Properties.Use this dialog box to w ew or, if you are a Primary Admirdslrator. to change pt yperites fur the ted e named inthistfaalog box's titleA roltiA ir. effect, a specs! user account that has been granted specific rights to administer network components.A Primary Administrator must grant a user the tight to aasuotta role.Once я ucw taker on a role. Ute user, in effect, tdinquiiheshis ocher own us< idenbly and takes on the properties, mdudingtlie rights, of IhatroleUse this dialog box to w ew or, if you are a Primary Admirdslrator. to change pt yperites fur the ted e named inthistfaalog box's titleA roltiA ir. effect, a specs! user account that has been granted specific rights to administer network components.A Primary Administrator must grant a user the tight to aasuotta role.Once я ucw taker on a role. Ute user, in effect, tdinquiiheshis ocher own us< idenbly and takes on the properties, mdudingtlie rights, of Ihatrole••riilt hole N3«lft! P|-OBSCrtption;j^.kt sneff?pumini^^s^••riilt hole N3«lft! P|-OBSCrtption;j^.kt sneff?pumini^^s^
Рисунок 19.12.
Окно Role Properties.
Рисунок 19.12.
Окно Role Properties.
Use this dialog box to w ew or, if you are a Primary Admirdslrator. to change pt yperites fur the ted e named inthistfaalog box's title
A roltiA ir. effect, a specs! user account that has been granted specific rights to administer network components.
A Primary Administrator must grant a user the tight to aasuotta role.
Once я ucw taker on a role. Ute user, in effect, tdinquiiheshis ocher own us< idenbly and takes on the properties, mdudingtlie rights, of Ihatrole
Use this dialog box to w ew or, if you are a Primary Admirdslrator. to change pt yperites fur the ted e named inthistfaalog box's title
A roltiA ir. effect, a specs! user account that has been granted specific rights to administer network components.
A Primary Administrator must grant a user the tight to aasuotta role.
Once я ucw taker on a role. Ute user, in effect, tdinquiiheshis ocher own us< idenbly and takes on the properties, mdudingtlie rights, of Ihatrole
••riilt hole N3«lft! P|-
OBSCrtption;j
^.kt sneff?pumini^^s^
••riilt hole N3«lft! P|-
OBSCrtption;j
^.kt sneff?pumini^^s^
9. В этом окне вы можете просматривать свойства выбранной роли. Если вы являетесь главным администратором, то можете изменять свойства конкретной роли. После того как роль была определена и пользователи были назначены на данную роль, эти пользователи могут запустить SMC, принять свою роль и воспользоваться функциями, которые были назначены упомянутой роли. Например, когда пользователь bcalkins запускает SMC, отображается окно ее консоли, как показано на рисунке 19.13.9. В этом окне вы можете просматривать свойства выбранной роли. Если вы являетесь главным администратором, то можете изменять свойства конкретной роли. После того как роль была определена и пользователи были назначены на данную роль, эти пользователи могут запустить SMC, принять свою роль и воспользоваться функциями, которые были назначены упомянутой роли. Например, когда пользователь bcalkins запускает SMC, отображается окно ее консоли, как показано на рисунке 19.13.
9. В этом окне вы можете просматривать свойства выбранной роли. Если вы являетесь главным администратором, то можете изменять свойства конкретной роли. После того как роль была определена и пользователи были назначены на данную роль, эти пользователи могут запустить SMC, принять свою роль и воспользоваться функциями, которые были назначены упомянутой роли. Например, когда пользователь bcalkins запускает SMC, отображается окно ее консоли, как показано на рисунке 19.13.
9. В этом окне вы можете просматривать свойства выбранной роли. Если вы являетесь главным администратором, то можете изменять свойства конкретной роли. После того как роль была определена и пользователи были назначены на данную роль, эти пользователи могут запустить SMC, принять свою роль и воспользоваться функциями, которые были назначены упомянутой роли. Например, когда пользователь bcalkins запускает SMC, отображается окно ее консоли, как показано на рисунке 19.13.
Maw^emsKTodt-Sohrls Мапззет<гМ£<)г$<й2 Э.|Maw^emsKTodt-Sohrls Мапззет<гМ£<)г$<й2 Э.|^witoteEdit^^j^y go "Stipi " -Ц/^witoteEdit^^j^y go "Stipi " -Ц/NawgafitHi4- Management Tool* » S This Computer (ultreB)NawgafitHi4- Management Tool* » S This Computer (ultreB)Welcome to the Solaris ManagementWelcome to the Solaris ManagementConsoleConsoleРисунок 19.13.
Maw^emsKTodt-Sohrls Мапззет<гМ£<)г$<й2 Э.|
Maw^emsKTodt-Sohrls Мапззет<гМ£<)г$<й2 Э.|
^witoteEdit^^j^y go "Stipi " -Ц/
^witoteEdit^^j^y go "Stipi " -Ц/
NawgafitHi
4- Management Tool* » S This Computer (ultreB)
NawgafitHi
4- Management Tool* » S This Computer (ultreB)
Welcome to the Solaris Management
Welcome to the Solaris Management
Console
Console
Окно Solaris Management Console.
IM i^£ tod splay s-ntOTirr* cf hMf ot t«e>4 •OverwpW я th? ?N( НИр won to «еы '-he отстаем at uty time.Look in the inf imKuiun pane beta* fir the context soeafic betaIM i^£ tod splay s-ntOTirr* cf hMf ot t«e>4 •OverwpW я th? ?N( НИр won to «еы '-he отстаем at uty time.Look in the inf imKuiun pane beta* fir the context soeafic beta(ubtthatiui
IM i^£ tod splay s-ntOTirr* cf hMf ot t«e>4 •OverwpW я th? ?N( НИр won to «еы '-he отстаем at uty time.
Look in the inf imKuiun pane beta* fir the context soeafic beta
IM i^£ tod splay s-ntOTirr* cf hMf ot t«e>4 •OverwpW я th? ?N( НИр won to «еы '-he отстаем at uty time.
Look in the inf imKuiun pane beta* fir the context soeafic beta
General Information ^r w’‘:en ^ ^ left (Naiaticfi) oanc tc display the rssuit in toe richt View) загс "о e^ird a colled item in the N®lg$len разе. dsubie-tiitk the left or si^lt'C ick (b# 'tumor* to the loft rhe iem.
COBSole ^dil j^o» View Go HelpCOBSole ^dil j^o» View Go HelpРисунок 19.14.Пиктограмма Users в окне Solaris Management Console.Рисунок 19.14.Пиктограмма Users в окне Solaris Management Console.Naflgatian$• Management Tool»t 21 This Computer (ultraS)♦• ih System Statusf Л System Configuration-Эг Users*• ^ Services* ® Storage^ !§] Devices aud HardwareNaflgatian$• Management Tool»t 21 This Computer (ultraS)♦• ih System Statusf Л System Configuration-Эг Users*• ^ Services* ® Storage^ !§] Devices aud HardwareWelcome to the SolarisWelcome to the SolarisManagement ConsoleManagement ConsoleClick here to display an oxeniew of SMC or select “Ove-vicw* ir< the SMC Help menu io dew Iha o^men ai any time.Click here to display an oxeniew of SMC or select “Ove-vicw* ir< the SMC Help menu io dew Iha o^men ai any time.Look is ike Itforiiatiui pane below for ife ranlext specific teipLook is ike Itforiiatiui pane below for ife ranlext specific teipfaformatfo»faformatfo»
COBSole ^dil j^o» View Go Help
COBSole ^dil j^o» View Go Help
Рисунок 19.14.
Пиктограмма Users в окне Solaris Management Console.
Рисунок 19.14.
Пиктограмма Users в окне Solaris Management Console.
Naflgatian
$• Management Tool»
t 21 This Computer (ultraS)
♦• ih System Status
f Л System Configuration
-Эг Users
*• ^ Services
* ® Storage
^ !§] Devices aud Hardware
Naflgatian
$• Management Tool»
t 21 This Computer (ultraS)
♦• ih System Status
f Л System Configuration
-Эг Users
*• ^ Services
* ® Storage
^ !§] Devices aud Hardware
Welcome to the Solaris
Welcome to the Solaris
Management Console
Management Console
Click here to display an oxeniew of SMC or select “Ove-vicw* ir< the SMC Help menu io dew Iha o^men ai any time.
Click here to display an oxeniew of SMC or select “Ove-vicw* ir< the SMC Help menu io dew Iha o^men ai any time.
Look is ike Itforiiatiui pane below for ife ranlext specific teip
Look is ike Itforiiatiui pane below for ife ranlext specific teip
faformatfo»
faformatfo»
Когда в навигационной панели пользователь выполнит щелчок пиктограммы This Computer, то под пиктограммой System Configuration появится пиктограмма Users, как показано на рисунке 19.14.
Man ige went Tools Solan-s Management Ceut, ole 2 U
General InformationGeneral InformationSeieci ar item * the left (Navication) ралеto ospoy the retail mihe ngh! fView) pane- lo wnand 6 collated item in the Narigaion pann douhe^lieHteit^ or single-click toe 'turner* to the left of the item.
General Information
General Information
Click hiCLK luli'pky «i iwrnmul SNC, winch TttUdts urlmhiu-rr» uf :швиЬ kmiuu.uy? uml usage inftrutkns, plus qetbr>g started ^strjcten: fa the fnt user cf SMC Select 4««W in the Help menu to new the wtrw at any tine
Когда пользователь bcalkins щелкнет пиктограмму Users, откроется окно регистрации Log In, представленное на рисунке 19.15 и приглашающее ввести пароль.
Login: Ui^r Name
Рисунок 19.15.Окно Log In консоли управления Solaris.Рисунок 19.15.Окно Log In консоли управления Solaris.йи*Log In: User NameL Enter a u$*r name and pasjwwd.Note: f you re Ihe first pencn to log in to this SMC server, you may went io log m as root and enter the root passworc, which willйи*Log In: User NameL Enter a u$*r name and pasjwwd.Note: f you re Ihe first pencn to log in to this SMC server, you may went io log m as root and enter the root passworc, which will-§M6 W^tv iulteMS •Uss-rf^rft#* ;ЬсмПипыRa^emd: "..-Л-§M6 W^tv iulteMS •Uss-rf^rft#* ;ЬсмПипыRa^emd: "..-Л
Рисунок 19.15.
Окно Log In консоли управления Solaris.
Рисунок 19.15.
Окно Log In консоли управления Solaris.
йи*
Log In: User Name
L Enter a u$*r name and pasjwwd.
Note: f you re Ihe first pencn to log in to this SMC server, you may went io log m as root and enter the root passworc, which will
йи*
Log In: User Name
L Enter a u$*r name and pasjwwd.
Note: f you re Ihe first pencn to log in to this SMC server, you may went io log m as root and enter the root passworc, which will
-§M6 W^tv iulteMS •
Uss-rf^rft#* ;ЬсмПипы
Ra^emd: "..-Л
-§M6 W^tv iulteMS •
Uss-rf^rft#* ;ЬсмПипы
Ra^emd: "..-Л
Пользователь bcalkins вводит свой пароль, щелкает кнопку ОК, а на экране
появляется окошко выбора под названием Role Name, которое представлено
на рисунке 19.16.
Role LoginRole LoginISM©S«vw ^иНгаВ'Лвв, _У» №ua<-.bcalkins: RoInMMtc:iadmhmsr ■ <*1ISM©S«vw ^иНгаВ'Лвв, _У» №ua<-.bcalkins: RoInMMtc:iadmhmsr ■ <*1Log’in: Roi« Name
Role Login
Role Login
ISM©S«vw ^иНгаВ'Лвв, _
У» №ua<-.bcalkins
: RoInMMtc:iadmhmsr ■ <*1
ISM©S«vw ^иНгаВ'Лвв, _
У» №ua<-.bcalkins
: RoInMMtc:iadmhmsr ■ <*1
Рисунок 19.16.Окно Role NameРисунок 19.16.Окно Role NameYou have one or mare adminkiratke roles avaflabk io
Рисунок 19.16.
Окно Role Name
Рисунок 19.16.
Окно Role Name
1. Stiett a role name (ram Ihe pulldown menu.
2 4n»r^bn^d?-D*,n*Kd^IXus. ..... Л
^~lop‘n wllkRo1n p logln.w*lhout Role . I Cancel i
Выберите роль из опускающегося меню, введите пароль для выбранной роли и щелкните кнопку Login with Role.
Обратите внимание на то, что вы должны использовать пароль главного администратора, введенный при создании этой роли, а не регистрационный
пароль данного пользователя.
Теперь окно консоли управления Solaris отображает пиктограммы функций, на выполнение которых вам были гарантированы права, что и показано на
рисунке 19.17.
Рисунок 19.17.
Пиктограммы, представляющие функции, доступные пользователю, в окне SMC.
За более подробной информацией по ролевому управлению доступом (КВАС) обратитесь к главе 20.'
Solaris AdminSuite
К этому времени вы уже должны познакомиться с инструментом Admintool. Он описывался несколько раз в качестве удобного в использовании графического интерфейса для администрирования пользователей, принтеров и устройств с последовательными каналами передачи данных. Solaris AdminSuite аналогичен инструменту Admintool в том, что он также представляет собой удобный в использовании GUI для облегчения решения стандартных задач администрирования серверов. AdminSuite 3.0 - интегрированный пакет инструментов для администрирования ваших систем Solaris. Мастера и диалоговые окна предоставляют поддержку и инструкции для управления учетными записями пользователей, группами, списками почтовой рассылки, компьютерами/сетями, монтированием/совместным использованием файловых систем, последовательными портами, файлами протоколов и службами имен доменов. Каждый из инструментов подробно описывается далее в настоящем разделе.
Admintool применяется для управления автономной системой, тогда как AdminSuite ориентирован на ваши потребности в снижении стоимости и сложности управления распределенными системами. Пакет AdminSuite может помочь в администрировании вашей сети по следующим направлениям:
Ф Предлагает локальное администрирование рабочими группами Solaris посредством использования сетевых служб, таких как NIS (Network Information Service - сетевая информационная служба). Это позволяет централизовать администрирование систем и делает безболезненным процесс дистанционного управления.
$> Автоматизирует рутинные задачи администрирования, такие как установки хостов, принтеров и учетных записей пользователей.
$> Предоставляет простые в использовании инструменты системного администрирования, включающие расширенный GUI для облегчения централизованной установки и эксплуатации сетевого окружения. Администрирование не требует наличия привилегий суперпользователя, что делает реальным централизованное администрирование.
Ко времени написания настоящей книги пакет AdminSuite версии 3.0.1 был еще недоступен в составе программного обеспечения операционной среды Solaris 8, однако его можно загрузить бесплатно из www.sun.com/bigadmin/content/adminPack.
Использование Solaris AdminSuite
Прежде чем пакет AdminSuite сможет быть запущен, вы должны убедиться, что запущен демон сервера AdminSuite. Чтобы проверить это, введите следующую командную строку:
ps -ef I grep admin.server
Если этот демон запущен, то система выводит сообщение, подобное приведенному:
root 24971013:46:28?0:05 \
/usr/javal.l/bin/sparc/native_threads/java \
mx32m -Dadmin.server.properties=/et
Демон сервера считывает файл свойств серверного управления, который был создан при инсталляции AdminSuite для получения его конфигурационной информации. Демон сервера также инициализирует провайдера защиты информации и создает экземпляры служб общего назначения, таких как служба протоколирования. После конфигурирования и инициализации управляющего сервера он принимает запросы от могущих управлять клиентов пакета AdminSuite версии 3.0. Каждая инсталлированная версия приложения сервера AdminSuite имеет единственный экземпляр процесса демона на управляющем сервере.
Процесс демона управляющего сервера AdminSuite версии 3.0 автоматически запускается в процессе загрузки операционной системы данного сервера с помощью сценария /etc/init.d/admsvr3_0. Этот сценарий возникает в процессе инсталляции программного продукта AdminSuite.
Для запуска AdminSuite наберите следующую командную строку:
/opt/SUNWseam/3_0/bin/admapp 4
После инициализации AdminSuite на экране появляется заставка, представленная на
рисунке 19.18.рисунке 19.18.Рисунок 19.18.
рисунке 19.18.
рисунке 19.18.
Экран инициализации AdminSuite.
Рисунок 19.19.Окно AdminSuite Log On.Рисунок 19.19.Окно AdminSuite Log On.|.O Oofii^xt Help:Type your Solaris userUser Name: ibcalkins jPassword: ’iname...Domain: f«j_tiraS._(Segyer)_|.O Oofii^xt Help:Type your Solaris userUser Name: ibcalkins jPassword: ’iname...Domain: f«j_tiraS._(Segyer)_""AdminSuite Log On ’f^Fj""AdminSuite Log On ’f^FjOK j{ CaaenlOK j{ CaaenlКогда на экране появится окно AdminSuite Log On, представленное на рисунке 19.19, введите регистрационное имя и пароль главного администратора AdminSuite.
Рисунок 19.19.
Окно AdminSuite Log On.
Рисунок 19.19.
Окно AdminSuite Log On.
|.O Oofii^xt Help:
Type your Solaris user
User Name: ibcalkins j
Password: ’i
name.
..Domain: f«j_tiraS._(Segyer)_
|.O Oofii^xt Help:
Type your Solaris user
User Name: ibcalkins j
Password: ’i
name.
..Domain: f«j_tiraS._(Segyer)_
""AdminSuite Log On ’f^Fj
""AdminSuite Log On ’f^Fj
OK j{ Caaenl
OK j{ Caaenl
В рассматриваемом примере главным администратором является пользователь с именем bcalkins. Следует ввести его регистрационное имя и пароль, а затем щелкнуть кнопку ОК для продолжения. Через несколько секунд на экране появится главное окно Solaris AdminSuite, как показано на рисунке 19.20.
Sevens Aoi , tSu te - >dt д^^-у-яг.Sevens Aoi , tSu te - >dt д^^-у-яг.Системный администратор определяет регистрационное имя и пароль главного администратора AdminSuite в процессе инсталляции этого программного обеспечения.
Sevens Aoi , tSu te - >dt д^^-у-яг.
Sevens Aoi , tSu te - >dt д^^-у-яг.
Window gUlNUtfoЦЫр
О|[а.рГ|а,
ultraS1ч.
f,^U»ers•[.•••
iSfCompulers/Networke^■ -.v
^ Mmmht/Slmre*V-.
Mr-serial PortsL.
■Ife 1,03: Viewer=■.
Рисунок 19.20.
Главное окно AdminSuite.
О $ unkit Help' HelpTopfoe...
Solari* AdminSuite 3.0 provide* a set of tool* fur administering network user* and^ network eom|Kment*. Tn begin, select from the following tool#:,:
• Users . to manage user aeeounw, groups, and mailing IImix.^
-™-^CampiiijerxzMtiw.Q.rk<_^LQjnanaM ц^
SUI** 'v:.$K'< ■.:• .. . •; . , ■
Главное окно Solaris AdminSuite отображает инструменты GUI, которые могут быть использованы для выполнения разнообразных административных задач, в число которых входят следующие:
<$> Администрирование пользователей (Users)
<$> Администрирование компьютеров/сетей (Computers/Networks)
<$> Администрирование монтирования/совместного использования файловых систем (Mounts/Shares)
<$> Администрирование последовательных портов (Serial Ports)
^ Просмотрщик файлов протоколов, или журналов (Log Viewer)
Каждый из этих инструментов обсуждается далее в соответствующих разделах.
Users
Щелкните пиктограмму Users для управления учетными записями пользователей, группами и списками почтовой рассылки. Выберите одного из двух мастеров для добавления учетных записей пользователей, как показано на рисунке 19.21.
Вы можете использовать Add User для добавления по одному пользователю за раз, либо Add Multiple Users для одновременного добавления нескольких пользователей, имеющих одни и те же свойства. Кроме того, вам доступны инструменты для управления группами (Groups) и списками почтовой рассылки (Mailing Lists).
Рисунок 19.21.Мастера добавления пользователей.Рисунок 19.21.Мастера добавления пользователей.
Рисунок 19.21.
Мастера добавления пользователей.
Рисунок 19.21.
Мастера добавления пользователей.
Ниже приведен перечень файлов, которые могут быть модифицированы с использованием инструмента управления учетными записями пользователей:
ф passwd. Файл информации учетных записей пользователей.
ф shadow. Файл информации паролей пользователей.
ф aliases. Файл информации адресов электронной почты.
ф group. Файл информации групп пользователей.
ф auto_home. Файл таблицы отображения AutoFS (подробная информация об этом приведена в главе 18).
ф user_attr. Файл прав пользователей, связанных с ролями этих пользователей (вопросы ролевого управления доступом освещаются в главе 21).
Computers/Networks
Инструмент Computers/Networks позволяет вам просматривать, определять, модифицировать, удалять, искать, сортировать и выполнять фильтрацию компьютеров, сетей и подсетей. Щелкните Computers/Networks на рисунке 19.20.
Выполните двойной щелчок на пиктограмме Computers, и на экране будут отобра
жены все компьютеры, входящие в состав вашего домена.
Как показано во всплывающем меню на рисунке 19.22, вы можете добавить какой- нибудь компьютер к сети.
atiens AVtiHUiulU •• ulifaS.Seivefj
Wlaaww Domaia Help ■ •
Рисунок 19.22.Меню Action окна Computers.Рисунок 19.22.Меню Action окна Computers.ultraSA Utters& Computers/Networks * Computers*►& in(arpaael)C I27(loopbaek) Й Mouaia/Sheres !» Serial Poet* & Log ViewerultraSA Utters& Computers/Networks * Computers*►& in(arpaael)C I27(loopbaek) Й Mouaia/Sheres !» Serial Poet* & Log Viewerъ8«и«|е..ъ8«и«|е..='q .«pare*»='q .«pare*»
Рисунок 19.22.
Меню Action окна Computers.
Рисунок 19.22.
Меню Action окна Computers.
ultraS
A Utters
& Computers/Networks * Computers
*►& in(arpaael)
C I27(loopbaek) Й Mouaia/Sheres !» Serial Poet* & Log Viewer
ultraS
A Utters
& Computers/Networks * Computers
*►& in(arpaael)
C I27(loopbaek) Й Mouaia/Sheres !» Serial Poet* & Log Viewer
ъ8«и«|е..
ъ8«и«|е..
='q .«pare*»
='q .«pare*»
Выполните двойной щелчок на пиктограмме конкретного компьютера, и на экране возникнет окно Computers Properties, представленное на рисунке 19.23.
Рисунок 19.23.Окно Computers Properties.Рисунок 19.23.Окно Computers Properties.To define a multihomed host, click Action->Add Computer to define a new computer, enter the name of an existing computer, and then specify a
Рисунок 19.23.
Окно Computers Properties.
Рисунок 19.23.
Окно Computers Properties.
Computer Properties for sparc2uComputer Properties for sparc2uView or modify properties for the currently selected computer (host).View or modify properties for the currently selected computer (host).1 Ethernet Address:, other IP^ .Addresses’;1 Ethernet Address:, other IP^ .Addresses’;^Addhtonikl tefotessdoft' , Aliases; ,"j6s»«tpilop:>., .^Addhtonikl tefotessdoft' , Aliases; ,"j6s»«tpilop:>., .GetAddresaen !GetAddresaen !Ниже приведен перечень файлов, которые могут быть модифицированы с использованием инструмента Computers/Networks:
Computer Properties for sparc2u
Computer Properties for sparc2u
View or modify properties for the currently selected computer (host).
View or modify properties for the currently selected computer (host).
1 Ethernet Address:
, other IP
^ .Addresses’;
1 Ethernet Address:
, other IP
^ .Addresses’;
^Addhtonikl tefotessdoft' , Aliases; ,
"j6s»«tpilop:>., .
^Addhtonikl tefotessdoft' , Aliases; ,
"j6s»«tpilop:>., .
GetAddresaen !
GetAddresaen !
ф hosts. Файл hosts - локальная база данных, которая связывает имена хостов с их IP-адресами.
ф ethers. Это БД установления соответствия между Ethernet-адреса и именем хоста.
ф networks. Файл networks представляет собой локальный источник информации о сетях, входящих в Internet.
ф netmasks. Файл netmasks содержит сетевые маски, которые используются для формирования IP-подсетей.
Mounts/Shares
Рисунок 19.24.Окно Mounts/Shares.Рисунок 19.24.Окно Mounts/Shares.Этот инструмент следует применять для просмотра и управления монтированием и совместным использованием файловых систем в пределах текущего домена.
Рисунок 19.24.
Окно Mounts/Shares.
Рисунок 19.24.
Окно Mounts/Shares.
Если щелкнуть пиктограмму Shares, то будут отображены все локальные совместно используемые ресурсы данной системы (рисунок 19.24).
Если щелкнуть кнопку Action, как показано на рисунке 19.25, то можно установить (Share) или отменить (Unshare) совместное использование дополнительных каталогов.
Ътм I A^rw-Swte- atVaSftenyrv
Wfadow' l
Ж»
Рисунок 19.25.Меню Action в окне Mounts/Shares.Рисунок 19.25.Меню Action в окне Mounts/Shares.Usersi>Compaters/NetworksComputers••£ lOfarpMnet)£ 1X7 (loopbacl) Si Mwete/ShereeV Mouatstt Steyr»Ui Hi* Syetefn Usage ^Serial PortsS Log ViewerUsersi>Compaters/NetworksComputers••£ lOfarpMnet)£ 1X7 (loopbacl) Si Mwete/ShereeV Mouatstt Steyr»Ui Hi* Syetefn Usage ^Serial PortsS Log ViewerAJd Shared Otreetory,.. Bt^3I3Zj-a«?^S^are» Kead/Wnte;yosihNw.. •.=.»*:iAJd Shared Otreetory,.. Bt^3I3Zj-a«?^S^are» Kead/Wnte;yosihNw.. •.=.»*:i
Рисунок 19.25.
Меню Action в окне Mounts/Shares.
Рисунок 19.25.
Меню Action в окне Mounts/Shares.
Users
i>Compaters/Networks
Computers
••£ lOfarpMnet)
£ 1X7 (loopbacl) Si Mwete/Sheree
V Mouats
tt Steyr»
Ui Hi* Syetefn Usage ^Serial Ports
S Log Viewer
Users
i>Compaters/Networks
Computers
••£ lOfarpMnet)
£ 1X7 (loopbacl) Si Mwete/Sheree
V Mouats
tt Steyr»
Ui Hi* Syetefn Usage ^Serial Ports
S Log Viewer
AJd Shared Otreetory,.. Bt^3I3Zj-a«?^
S^are» Kead/Wnte;
yosihNw.. •.=.»*:i
AJd Shared Otreetory,.. Bt^3I3Zj-a«?^
S^are» Kead/Wnte;
yosihNw.. •.=.»*:i
f tliire*
Ниже приведен перечень файлов, которые могут быть модифицированы с использованием инструмента Mounts/Shares.
$> /etc/mnttab. Информация монтирования, которая генерируется командой mount.
$> /etc/dfs/sharetab. Информация о совместно используемых ресурсах, которая генерируется командой share; данный файл содержит таблицу локальных совместно используемых ресурсов.
$> /etc/nfssec.conf. Перечень параметров авторизации, определенных на компьютере клиента NFS.
$> /etc/nsswitch.conf. Конфигурационный файл для переключателя службы имен (см. главу 18).
$> /etc/vfstab. В этом файле, который считывается в процессе загрузки системы, описываются принятые по умолчанию параметры каждой файловой системы, которая будет смонтирована.
$> /etc/dfs/dfstab. Этот файл, который считывается в процессе загрузки системы, содержит команды для разделения ресурсов через сеть.
Управление последовательными портами
Инструмент Serial Ports используется в целях добавления и поддержки служб портов для терминалов и модемов. Использование для конфигурирования менеджера последовательных портов позволяет вам устанавливать терминалы и модемы без создания и редактирования необходимых файлов вручную. Этот инструмент может отображать информацию последовательных портов и облегчает установку, модифицирование или удаление портов. Кроме того, инструмент Serial Ports предоставляет шаблоны для конфигураций терминалов и модемов общего назначения. Окно инструмента управления последовательными портами представлено на рисунке 19.26. ■
Если выделить какой-нибудь последовательный порт и щелкнуть кнопку Action, которая находится в верхней части панели инструментов, как показано на рисунке 19.27, то появится всплывающее меню с возможностью выбора конфигурирования, удаления или просмотра свойств конкретного последовательного порта.
jgladow Damaln • yelpjgladow Damaln • yelpKnatded Enabled . .•Knatded Enabled . .•7? док» Wr r- ^LxL^JBasLSss&7? док» Wr r- ^LxL^JBasLSss&Рисунок 19.26.Окно инструмента Serial Ports.Рисунок 19.26.Окно инструмента Serial Ports.4ё< Сотри tera/Nctworke Computers*•«6 10(агрме1)Д 127 (loopback)§8 Mounts/Sharee9 МайямSk Shares& Hie System Usage i* Serial Ports^l.ng Vl#w*r4ё< Сотри tera/Nctworke Computers*•«6 10(агрме1)Д 127 (loopback)§8 Mounts/Sharee9 МайямSk Shares& Hie System Usage i* Serial Ports^l.ng Vl#w*rььРисунок 19.27.Меню Action инструмента Serial Ports.Рисунок 19.27.Меню Action инструмента Serial Ports.
jgladow Damaln • yelp
jgladow Damaln • yelp
Knatded Enabled . .•
Knatded Enabled . .•
7? док» Wr r- ^LxL^JBasLSss&
7? док» Wr r- ^LxL^JBasLSss&
Рисунок 19.26.
Окно инструмента Serial Ports.
Рисунок 19.26.
Окно инструмента Serial Ports.
4ё< Сотри tera/Nctworke Computers
*•«6 10(агрме1)
Д 127 (loopback)
§8 Mounts/Sharee
9 Майям
Sk Shares
& Hie System Usage i* Serial Ports
^l.ng Vl#w*r
4ё< Сотри tera/Nctworke Computers
*•«6 10(агрме1)
Д 127 (loopback)
§8 Mounts/Sharee
9 Майям
Sk Shares
& Hie System Usage i* Serial Ports
^l.ng Vl#w*r
ь
ь
Рисунок 19.27.
Меню Action инструмента Serial Ports.
Рисунок 19.27.
Меню Action инструмента Serial Ports.
Например, можно выделить последовательный порт b, щелкнуть кнопку Action, находящуюся в верхней части панели инструментов, и из всплывающего меню выбрать пункт Properties (рисунок 19.28). На экране появится меню Properties, которое позволит вам просматривать или модифицировать свойства последовательного порта Ь.
Рисунок 19.28.Меню Properties.Рисунок 19.28.Меню Properties.Н^ Cosies’! HelpUse this tab to set basic serial port information.Properties far Serial Port b>>PortNlunet b< vDescHptiom ; Serviee'Shihisit■•^Enabled■G Disabled . ,,BWd Rule;9600I ‘Termin»lTypei'tvi925 „_ iI'Loglir Prompt* ittyb logmtГ"OK 11 CancelН^ Cosies’! HelpUse this tab to set basic serial port information.Properties far Serial Port b>>PortNlunet b< vDescHptiom ; Serviee'Shihisit■•^Enabled■G Disabled . ,,BWd Rule;9600I ‘Termin»lTypei'tvi925 „_ iI'Loglir Prompt* ittyb logmtГ"OK 11 Cancel
Рисунок 19.28.
Меню Properties.
Рисунок 19.28.
Меню Properties.
Н^ Cosies’! Help
Use this tab to set basic serial port information.
Properties far Serial Port b>>
PortNlunet b< v
DescHptiom ; Serviee'Shihisit■•
^Enabled■
G Disabled . ,,
BWd Rule;9600I ‘
Termin»lTypei'tvi925 „_ i
I'Loglir Prompt* ittyb logmtГ
"OK 11 Cancel
Н^ Cosies’! Help
Use this tab to set basic serial port information.
Properties far Serial Port b>>
PortNlunet b< v
DescHptiom ; Serviee'Shihisit■•
^Enabled■
G Disabled . ,,
BWd Rule;9600I ‘
Termin»lTypei'tvi925 „_ i
I'Loglir Prompt* ittyb logmtГ
"OK 11 Cancel
Вы можете использовать менеджер последовательных портов для управления информацией последовательного порта на локальной системе или на какой-нибудь дистанционной системе, если обладаете соответствующими привилегиями для доступа к ней.
Ниже приведен перечень файлов, которые могут быть модифицированы с использованием инструмента Serial Ports:
$> /etc/saf/_sactab. Информация монитора последовательных портов.
$> /etc/saf/zsmon/_pmtag. Конфигурационная информация последовательных портов.
Log Viewer
Инструмент Log Viewer позволяет вам просматривать файлы протоколов для инструментов и событий пакета AdminSuite и управлять этими файлами. По умолчанию указанные файлы протоколов сохраняются в каталоге /var/opt/SUNWseam/3_0/log. Инструмент Log Viewer регистрирует и просматривает объекты только для событий пакета AdminSuite, а вовсе не отображает все файлы протоколов системы.
Резюме
SMC (Solaris Management Console - консоль управления Solaris) - набор инструментов, предназначенных для упрощения администрирования серверов. SMC предоставляет системному администратору простые в использовании, основанные на технологии Java GUI-инструменты, которые предназначены для того, чтобы управлять процессами, пользователями, локальными файловыми системами и файловыми системами NFS, разбивкой дисков, последовательными портами и процессами из любого места в сети. Кроме того, SMC предоставляет возможность делегирования административных задач другим пользователям, не предоставляя им при этом доступа к учетной записи суперпользователя.
Solaris AdminSuite предоставляет множество таких же инструментов, как и SMC, однако он не предоставляет возможность делегирования административных задач с использованием ролевого доступа. Кроме того, в состав данного пакета не входят инструменты для планирования заданий или для управления дисками и процессами. Однако инструменты, включенные в состав Solaris AdminSuite, предоставляют вам простой в использовании GUI для управления вашими системами из любого места в сети. Применение инструментов и команд в среде GUI позволяет решать те же самые задачи администрирования значительно быстрее, чем при использовании многочисленных команд операционной системы Solaris.
Уделите некоторое время ознакомлению с инструментами, доступными в SMC и Solaris AdminSuite. Поскольку все эти инструменты реализованы в среде GUI, вы можете просто щелкнуть кнопку Help для получения более подробной информации о них.
В настоящей главе прн описании SMC было введено понятие ролевого управления доступом. В следующей главе эта тема будет рассматриваться более подробно.
Ключевые термины
SMC
AdminSuite
Компоненты SMC
Консоль SMC
Сервер SMC
Главный администратор
Управляющий сервер AdminSuite
Гпава 19. Консоль управления Solaris и пакет Solaris AdminSuite 001 Примените ваши знания '
Примените ваши знания
Использование AdminSuite
При выполнении настоящего упражнения вам предстоит воспользоваться пакетом AdminSuite для добавления новой учетной записи пользователя.
Оцениваемое время: 10 минут
Зарегистрируйтесь в системе как суперпользователь и запустите AdminSuite, для чего введите следующую командную строку:
/opt/SUNWseam/3_0/bin/admapp 6
Когда возникнет экран AdminSuite Log On, выберите локальную систему и за- ■ полните пустые поля следующим образом:
User Name: root
Password: <root password*
Находясь в главном окне AdminSuite, щелкните пиктограмму Users.
Щелкните пиктограмму User Accounts в правой панели окна.
Не снимая выделения User Accounts, щелкните кнопку Action, находящуюся в правой панели окна.
В опускающемся меню щелкните Add User.
Появится окно мастера для установки новой учетной записи пользователя.
В первом окне, которое появится на экране, заполните пустые поля следующим образом:
User Name: adminl
Full Name: Administrative Assistant
Щелкните кнопку с изображением стрелки, направленной вправо, для продолжения; кнопка находится в нижией части данного окна.
В следующем окне примите тот номер идентификатора пользователя, который назначается по умолчанию, и щелкните кнопку с изображением стрелки, направленной вправо, для продолжения.
В этом окне щелкните радиокнопку, которая находится после надписи User Must Use This Password At First Login ("пользователь должен использовать данный пароль при первой регистрации"). Затем назначьте пароль в поле Password и щелкните кнопку с изображением стрелки, идущей вправо, для продолжения.
В следующих двух окнах вам будет предложено ввести имена первичной группы и домашнего каталога для вновь созданной учетной записи пользователя. Примите предложенные по умолчанию значения.
На экране появляется итоговое окно. Щелкните кнопку Finish в итоговом окне, и теперь новая учетная запись пользователя установлена.
Использование консоли управления Solaris
При выполнении настоящего упражнения вам предстоит добавить некоторую административную роль через консоль управления Solaris и делегировать административные задачи пользователю, который не обладает привилегиями суперпользователя.
Оцениваемое время: 15 минут
При выполнении настоящего упражнения вам потребуется учетная запись для пользователя admin 1, который не обладает привилегиями суперпользователя. Создайте новую учетную запись для пользователя с именем adminl и 1D группы, равным 10.
В качестве суперпользователя запустите консоль управления Solaris, как показано: smc &
Щелкните объект This Computer в навигационной панели консоли управления Solaris. Затем щелкните инструменты System Configuration и Users. Когда появится окно Log In, введите root в качестве имени пользователя, а затем введите пароль суперпользователя. Щелкните кнопку ОК для продолжения.
В правой панели появляется список инструментов User Management. Щелкните инструмент Administrative Roles.
Щелкните кнопку Action на панели инструментов, которая размещается в верхней части окна SMC. Из опускающегося меню щелкните пункт Add Administrative Role. На экране появляется окно Add Administrative Role. Заполните поля в этом окне следующей информацией:
Role Name: adminusr
Full Name: Administrative Assistant
Description: Admin assistant for performing general administrative tasks (помощник администратора по выполнению общих задач администри- рирования)
Role ID number: <принять предложенное по умолчанию значение>
Role Shell: Administrator's Bourne
В следующем окне вам будет предложено ввести пароль для данной роли. Введите пароль длиной от 6 до 15 символов. Щелкните кнопку Next для продолжения.
В следующем окне вы назначаете права для данной роли. В средней оконной панели выберите System Administrator и щелкните кнопку Add. Под панелью Granted Rights должно появится отображение System Administrator. Щелкните кнопку Next для продолжения.
Выберите исходный (домашний) каталог, а затем щелкните кнопку Next для продолжения.
В следующем окне, которое озаглавлено Assign Users to This Role, введите admin 1 в первом поле и щелкните кнопку Add. Щелкните кнопку Next для продолжения.
■10. Когда на экране появится итоговое окно, щелкните кнопку Finish. Процесс на
значения роли для пользователя завершается.
11. Выйдите из системы и зарегистрируйтесь в ней еще раз под именем adminl. Запустите SMC и протестируйте новую пользовательскую роль. Вы должны иметь общие привилегии системного администратора, такие как добавление новых пользователей, планирование заданий и совместное использование файловых систем.
Глава 19. Консоль управления Solaris и пакет Solaris AdminSuite OOP Примените ваши знания
Обзорные вопросы
Какие три утверждения относительно консоли управления Solaris являются истинными?
Она предоставляет графические средства для управления метаустройствами.
Она упрощает процесс администрирования за счет сосредоточения инструментов системного администрирования в одном месте.
Она обеспечивает управление всеми серверами консоли управления Solaris из одного места.
Она позволяет системному администратору делегировать задачи администрирования пользователям, которые не обладают привилегиями суперпользователя, не предоставляя им при этом пароль суперпользователя.
Для выполнения каких задач используется пакет AdminSuite 3.0? Выберите все подходящие варианты ответов.
Управление учетными записями пользователей
Управление совместно используемыми ресурсами
Управление дисками
Управление процессами
Планирование процессов
Управление последовательными портами
G. Установка систем типа AutoClient
Для выполнения каких задач, из числа перечисленных, используется пакет SMC? Выберите все подходящие варианты ответов.
Управление учетными записями пользователей
Управление совместно используемыми ресурсами
Управление дисками
Управление процессами
Планирование процессов
Управление последовательными портами
Установка систем типа AutoClient
Какие три компонента SMC существуют?
Инструменты GUI
Клиент SMC
Сервер SMC
Редактор панели инструментов
КВАС
Какая команда используется для запуска AdminSuite?
Он должен запускаться из консоли управления Solaris
admapp
solstice
adminsuite
smc
admsvr
В чем заключаются различия, если они существуют, между SMC и AdminSuite 3.0? Выберите все подходящие варианты ответов.
Только SMC поддерживает ролевое управление доступом.
Только AdminSuite может управлять учетными записями пользователей.
Только SMC может управлять дисками.
Только AdminSuite может управлять принтерами.
SMC требует, чтобы был запущен сервер SMC; AdminSuite не требует запускать демон сервера.
Ответы на обзорные вопросы
В, С, D. Консоль управления Solaris упрощает процесс администрирования за счет расположения инструментов системного администрирования в одном месте. Она также обеспечивает управление всеми серверами консоли управления Solaris из одного места. Наконец, она позволяет системному администратору делегировать задачи администрирования пользователям, которые не обладают привилегиями суперпользователя, не предоставляя им при этом пароль суперпользователя.
А, В, F. Версия 3.0 пакета AdminSuite представляет собой интегрированный пакет инструментов для администрирования ваших систем Solaris. Мастера и диалоговые окна предоставляют поддержку и инструкции для управления учетными записями пользователей, группами, списками почтовой рассылки, компьютерами/сетями, монтированием/ совместным использованием файловых систем, последовательными портами, файлами протоколов и службами имен доменов.
А, В, С, D, Е, F. SMC позволяет вам управлять службами администрирования и сетевыми службами на ваших серверах с какого-нибудь дистанционного местоположения. Используя SMC, администратор может управлять системными процессами, сетевыми ресурсами, учетными записями пользователей, последовательными портами и разбивкой дисков как локально, так и на дистанционных системах.
В, С, D. В состав консоли управления Solaris входят три компонента:
Клиент SMC, который называется собственно консолью управления Solaris, или просто консолью
Сервер SMC
Редактор панелей инструментов SMC
В. Для запуска AdminSuite введите следующую командную строку:
/opt/SUNWseam/3_0/bin/admapp
А, С. Основные различия между SMC и AdminSuite 3.0 заключаются в том, что только SMC поддерживает ролевое управление доступом и может управлять дисками.
Глава 20Глава 20Ролевое управление доступом (RBAC)
Глава 20
Глава 20
Темы
В настоящей главе рассматриваются следующие темы экзамена:
Понимание ролевого управления доступом
Традиционные системы, построенные на концепции суперпользователя, предоставляют полную власть суперпользователя всякому, кто может зарегистрироваться в системе с привилегиями суперпользователя. С помощью ролевого управления доступом в операционной среде Solaris 8 администраторы могут предоставлять ограниченные административные возможности обычным пользователям, которые вовсе не являются суперпользователями. В настоящей главе ролевое управление доступом рассматривается в плане защиты информации в среде Solaris.
Ознакомление с базами данных поддержки ролевого управления доступом
Ролевое управление доступом базируется на четырех базах данных, чтобы предоставить пользователям возможность выполнять привилегированные операции. В настоящей главе описываются базы данных поддержки ролевого управления доступом и конфигурационные команды.
Содержание
(Введение667
Использование ЭДВЛС668
Хрмпоненты ОДЛС672
(Расширенная База данньсуатрибутов пользователей (user_attr)673
База данных_авторизаи,ий (autR_attr)674
База данных.про^илгй прав доступа (prof_attr)676
База данньсуатрибутов выполнения (exec_attr)678
(Резюме680
Примените ваши знания681
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
Изучите все термины, которые представлены в разделе "Ключевые термины" в конце настоящей главы. Будьте готовы определить целевое назначение КВАС в плане защиты информации в среде Solaris. Также будьте готовы к выбору утверждений, которые корректно описывают функциональные возможности баз данных КВАС.
Потренируйтесь в практическом применении КВАС, чтобы освоить функциональные возможности этого программного обеспечения. Выполните все пошаговые примеры, которые представлены в нас-тоящей главе, на какой-нибудь системе Solaris.
Введение
Предоставление возможностей доступа с привилегиями суперпользователя тем обычным пользователям, которые не являются суперпользователями, всегда было спорным вопросом в системах UNIX. В прошлом для предоставления подобной функциональности вы должны были опираться на пакет сторонней разработки, sudo. Проблема при этом заключалась в том, что sudo представлял собой неподдерживаемую часть свободно распространяемого программного обеспечения, которое должно было быть загружено из Internet и инсталлировано на вашей системе. В крайних случаях системный администратор устанавливал бит полномочий UID на конкретный файл таким образом, чтобы пользователь мог выполнить данную команду в качестве суперпользователя.
С помощью КВАС ( Role-Based Access Control - ролевого управления доступом) в операционной среде Solaris 8 администраторы могут предоставлять ограниченные возможности пользователям, которые не являются суперпользователями. Это достигается с помощью трех новых возможностей:
Ф Авторизация. Права пользователей, которые гарантируют доступ к какой-нибудь ограниченной функции.
ф Профили выполнения. Механизмы пакетирования для группирования возможностей авторизации и команд со специальными атрибутами, например, идентификаторами пользователей и групп или идентификатором суперпользователя.
$> Роли. Специальные типы учетных записей пользователей, предназначенных для выполнения некоторого набора административных задач.
ПРЕДУПРЕЖДЕНИЕЛ?\>-
Наиболее часто вы, вероятно, будете применять RBAC для организации доступа к административным задачам в рамках данной системы. Относитесь внимательно к предупреждениям, сопровождающим упражнения, чтобы исключить создание дефектов в защите информации путем предоставления доступа к административным функциям неавторизованным пользователям.
Использование RBAC
Чтобы лучше описать RBAC, проще всего начать с описания того, как системный администратор может воспользоваться им для того, чтобы передать выполнение какой- нибудь административной задачи пользователю, который не является суперпользователем, в некотором вымышленном учреждении Acme Corp.
В воображаемой компании, которая называется Acme Corp., системный администратор перегружен. Он собирается передать, или делегировать, часть своих обязанностей Нейлу (Neil), пользователю из технического подразделения, который иногда выручает его при решении задач системного администрирования.
Прежде всего системному администратору необходимо решить, в каких именно задачах он хотел бы получить помощь от Нейла. Он определил три такие задачи:
Ф Изменение паролей пользователей, но только не добавление или удаление учетных записей пользователей
ф Монтирование и совместное использование файловых систем
Ф Закрытие системы
В рамках RBAC, когда мы говорим о делегировании административных задач, то это относится к учетной записи роли. Учетная запись роли, или ролевая учетная запись - специальный тип учетной записи пользователя, которая предназначена для выполнения некоторого набора административных задач. Она во многих отношениях аналогична обычной учетной записи пользователя за исключением того, что пользователи могут получить доступ к этой учетной записи только через команду su после того, как они зарегистрируются в системе с использованием их обычных учетных записей. Учетная запись роли недоступна для выполнения обычных регистраций, например, через окно регистрации CDE. Благодоря учетной записи роли пользователь может получить доступ к командам со специальными атрибутами, которыми обычно являются идентификаторы суперпользователя, недоступные для пользователей в обычных учетных записях.
В компании Acme Corp, системному администратору необходимо определить ролевое имя пользователя для задач, которые он хочет делегировать. Допустим, что используется ролевое имя пользователя "adminusr". После того как Нейл зарегистрируется в системе под своим обычным именем ncalkins, ему необходимо выдать команду su и переключаться на ролевое имя пользователя adminusr всякий раз, когда он хочет выполнять административные задачи.
Самый простой способ определения учетной записи роли заключается в использовании консоли управления Solaris, как было описано в предыдущей главе. В главе 19 представлена вся необходимая информация для того, чтобы определить данную административную роль для некоторого пользователя. Однако в настоящей главе будет описана методика создания некоторой роли из командной строки.
Как уже упоминалось, мы хотим присвоить данной учетной записи роли имя adminusr. Системный администратор создаетучетную запись роли с использованием команды roleadd.
Команда roleadd добавляет учетную запись роли в файлы /etc/passwd, /etc/shadow и /etc/ user_attr. Синтаксис команды roleadd выглядит следующим образом:
roleadd [-с comment] f-d dir] [-е expire] f-f inactive] \
[~g group] [-6 group] [-m] [-k skel_dir] [~u uid] \ [-s shell] [~A authorization] <role username>
Как вы увидите далее, команда roleadd выглядит во многих отношениях похожей на команду useradd, которая была описана в главе 5. Опции команды roleadd описываются в таблице 20.1.
Таблица 20.1Опции команды roleadd: \ !.'
Опция
Описание
-с <comment>
Произвольная текстовая строка для краткого описания данной роли.
-d <dir>
Домашний каталог для новой учетной записи роли.
-m
Создает домашний каталог для новой учетной записи роли, если он не был создан до сих пор.
-s <sheil>
Определяет оболочку, или командный процессор, данного пользователя, используемый при его регистрации в системе. Значение данной опции по умолчанию - /Ып/вЬ.
-A <authorization>
Обе эти опции (данная и следующая) соответственно назначают авторизацию и профили для данной роли.
-P <profile>
Авторизации и профили описываются далее в настоящем разделе.
Остальные опции - это те же самые опции, которые были описаны для команды useradd, представленной в главе 6.
Когда выполняется создание учетной записи роли с использованием команды roleadd, вам необходимо задать авторизацию и профиль для данной роли. Авторизация - это право некоторого пользователя на доступ к ограиичениой функции. Она представляет собой некоторую уникальную строку, которая определяет и кто авторизуется, и кто создает авторизацию.
Конкретные привилегированные программы проверяют авторизации, чтобы определить, могут ли пользователи исполнять ограниченную административную функцию. Ниже перечисляются предопределенные авторизации из файла /etc/security/auth_attr, которые применяются к делегируемым задачам:
Solaris .admin.usermgr.pswd: : ‘.Change User Passwords: :help=UserMgrPswd.html
Solaris.system.shutdown:::Shutdown the System::help-SysBhutdown.html
Solaris.admin.fsmgr.write:::Mount/Share File Systems::help=FsMgrWrite.html
Все авторизации сохраняются в базе данных auth attr, поэтому системному администратору необходимо использовать одну или несколько из них, сохраняемых в указанном файле. Для рассматриваемого примера компании Acme Corp, системному администратору необходимо задать авторизации, которые называются, как показано здесь:
Solaris.admin.usermgr.pswd
Solaris.system.shutdown
Solaris.admin.fsmgr.write
Таким образом, системный администратор мог бы выдать команду roleadd, как показано далее:
roleadd -m -d /export/home/adminusr -c "Admin Assistant" \
-A Solaris.admin.usermgr.pswd,Solaris.system.shutdown, \
Solaris.admin.fsmgr.write adminusr
В результате создается учетная запись роли с именем adminusr и с требуемой структурой каталогов. Следующим этапом работы является установка пароля для учетной записи роли с именем adminusr, для чего следует набрать следующую команду:
passwd admi nnar
<enter the new password twice> (введите новый пароль дважды)
Теперь вам необходимо установить учетную запись Нейла таким образом, чтобы он мог получить доступ к новой учетной записи роли с именем adminusr. С помощью команды usermod с опцией -R вы назначаете данную роль в качестве учетной записи пользователя:
usermod -R adminusr neil
Для получения доступа к административным функциям Нейлу необходимо сначала зарегистрироваться в системе с использованием его обычной учетной записи с именем neil. Нейл может проверить, какие роли ему предоставлены, посредством ввода следующей команды:
roles
Система отвечает именами ролей, которые были предоставлены учетной записи с именем neil:
adminusr
После этого для перехода к учетной записи роли с именем adminusr Нейлу необходимо воспользоваться командой su, что и показано:.
su adminusr
<enter the password for adminusr> (введите пароль для учетной записи adminusr)
Теперь Нейл может модифицировать пароли пользователей, выполнять закрытие системы, монтировать файловые системы и определять их для совместного использования. Любой другой пользователь, который попытается воспользоваться командой su для перехода к учетной записи роли adminusr, получит в ответ следующее сообщение:
$ su adminusr
Password:
Roles can only be assumed by authorized users su: Sorry
$
Если позднее системный администратор захочет назначить дополнительные авторизации для учетной записи роли с именем adminusr, он может сделать это, воспользовавшись командой rolemod. Команда rolemod модифицирует регистрационную информацию роли в данной системе. Синтаксис команды rolemod выглядит следующим образом:
rolemod [-u uid] [-о] Hg group] [-6 group] [-d dir] [-m] \
[-s shell] [-c comment] [-1 nev_name] [-f inactive] \
[-e expire] [-A Authorization] [-P profile] <role account>
Опции команды rolemod описываются в таблице 20.2.
-f < inactive>-f < inactive>-g <group>-g <group>-G <group>-G <group>-I <new_logname>-I <new_logname>-m-mНапример, вы можете ввести 12/30/02, или December 30,2002. Значение "" аннулирует статус истечения срока действия роли.Определяет максимальное количество дней, разрешенное между двумя последовательными применениями регистрационного идентификатора прежде, чем регистрационный идентификатор объявляется недействительным. Стандартными значениями этой опции являются положительные целые числа.Указывает целочисленный идентификатор существующей группы или ее имя в виде символьной строки. Эта опция переопределяет первичную группу, членом которой является данная роль.Определяет целочисленный идентификатор существующей группы или ее имя в виде символьной строки. Эта опция переопределяет дополнительную группу, членом которой является данная роль. Дублирования между группами с опциями -д и -G игнорируются.Указывает новое регистрационное имя данной роли. Аргумент <new_log- name> данной опции представляет собой строку, которая имеет длину не более восьми байт и включает алфавитные и цифровые символы, точку (.), подчеркивание (_) и дефис (-). Первый символ в этой строке должен быть алфавитным, и данное поле должно содержать, по крайней мере, один алфавитный символ нижнего регистра (строчную букву). Если перечисленные ограничения не выдерживаются, выдается предупреждающее сообщение. Будущие релизы операционной системы Solaris могут отказаться принимать поля регистрационного имени, которые не удовлетворяют данным требованиям. Аргумент <new_logname> данной опции должен содержать, по крайней мере, один символ и не должен содержать символа двоеточия (;) или символа новой строки newline (\п).Перемещает домашний каталог данной роли в новый каталог, задаваемый с помощью опции -d. Если данный каталог уже существует, то он должен иметь полномочия на чтение/запись/исполнение для группы, которая является первичной для этой роли.Например, вы можете ввести 12/30/02, или December 30,2002. Значение "" аннулирует статус истечения срока действия роли.Определяет максимальное количество дней, разрешенное между двумя последовательными применениями регистрационного идентификатора прежде, чем регистрационный идентификатор объявляется недействительным. Стандартными значениями этой опции являются положительные целые числа.Указывает целочисленный идентификатор существующей группы или ее имя в виде символьной строки. Эта опция переопределяет первичную группу, членом которой является данная роль.Определяет целочисленный идентификатор существующей группы или ее имя в виде символьной строки. Эта опция переопределяет дополнительную группу, членом которой является данная роль. Дублирования между группами с опциями -д и -G игнорируются.Указывает новое регистрационное имя данной роли. Аргумент <new_log- name> данной опции представляет собой строку, которая имеет длину не более восьми байт и включает алфавитные и цифровые символы, точку (.), подчеркивание (_) и дефис (-). Первый символ в этой строке должен быть алфавитным, и данное поле должно содержать, по крайней мере, один алфавитный символ нижнего регистра (строчную букву). Если перечисленные ограничения не выдерживаются, выдается предупреждающее сообщение. Будущие релизы операционной системы Solaris могут отказаться принимать поля регистрационного имени, которые не удовлетворяют данным требованиям. Аргумент <new_logname> данной опции должен содержать, по крайней мере, один символ и не должен содержать символа двоеточия (;) или символа новой строки newline (\п).Перемещает домашний каталог данной роли в новый каталог, задаваемый с помощью опции -d. Если данный каталог уже существует, то он должен иметь полномочия на чтение/запись/исполнение для группы, которая является первичной для этой роли.Таблица 20.2 Опции команды rolemod
-f < inactive>
-f < inactive>
-g <group>
-g <group>
-G <group>
-G <group>
-I <new_logname>
-I <new_logname>
-m
-m
Например, вы можете ввести 12/30/02, или December 30,2002. Значение "" аннулирует статус истечения срока действия роли.
Определяет максимальное количество дней, разрешенное между двумя последовательными применениями регистрационного идентификатора прежде, чем регистрационный идентификатор объявляется недействительным. Стандартными значениями этой опции являются положительные целые числа.
Указывает целочисленный идентификатор существующей группы или ее имя в виде символьной строки. Эта опция переопределяет первичную группу, членом которой является данная роль.
Определяет целочисленный идентификатор существующей группы или ее имя в виде символьной строки. Эта опция переопределяет дополнительную группу, членом которой является данная роль. Дублирования между группами с опциями -д и -G игнорируются.
Указывает новое регистрационное имя данной роли. Аргумент <new_log- name> данной опции представляет собой строку, которая имеет длину не более восьми байт и включает алфавитные и цифровые символы, точку (.), подчеркивание (_) и дефис (-). Первый символ в этой строке должен быть алфавитным, и данное поле должно содержать, по крайней мере, один алфавитный символ нижнего регистра (строчную букву). Если перечисленные ограничения не выдерживаются, выдается предупреждающее сообщение. Будущие релизы операционной системы Solaris могут отказаться принимать поля регистрационного имени, которые не удовлетворяют данным требованиям. Аргумент <new_logname> данной опции должен содержать, по крайней мере, один символ и не должен содержать символа двоеточия (;) или символа новой строки newline (\п).
Перемещает домашний каталог данной роли в новый каталог, задаваемый с помощью опции -d. Если данный каталог уже существует, то он должен иметь полномочия на чтение/запись/исполнение для группы, которая является первичной для этой роли.
Например, вы можете ввести 12/30/02, или December 30,2002. Значение "" аннулирует статус истечения срока действия роли.
Определяет максимальное количество дней, разрешенное между двумя последовательными применениями регистрационного идентификатора прежде, чем регистрационный идентификатор объявляется недействительным. Стандартными значениями этой опции являются положительные целые числа.
Указывает целочисленный идентификатор существующей группы или ее имя в виде символьной строки. Эта опция переопределяет первичную группу, членом которой является данная роль.
Определяет целочисленный идентификатор существующей группы или ее имя в виде символьной строки. Эта опция переопределяет дополнительную группу, членом которой является данная роль. Дублирования между группами с опциями -д и -G игнорируются.
Указывает новое регистрационное имя данной роли. Аргумент <new_log- name> данной опции представляет собой строку, которая имеет длину не более восьми байт и включает алфавитные и цифровые символы, точку (.), подчеркивание (_) и дефис (-). Первый символ в этой строке должен быть алфавитным, и данное поле должно содержать, по крайней мере, один алфавитный символ нижнего регистра (строчную букву). Если перечисленные ограничения не выдерживаются, выдается предупреждающее сообщение. Будущие релизы операционной системы Solaris могут отказаться принимать поля регистрационного имени, которые не удовлетворяют данным требованиям. Аргумент <new_logname> данной опции должен содержать, по крайней мере, один символ и не должен содержать символа двоеточия (;) или символа новой строки newline (\п).
Перемещает домашний каталог данной роли в новый каталог, задаваемый с помощью опции -d. Если данный каталог уже существует, то он должен иметь полномочия на чтение/запись/исполнение для группы, которая является первичной для этой роли.
Опция
Описание
-A <authorization>
Одна или несколько авторизаций, разделенных запятыми, в том виде, как они определены в базе данных auth_attr. Эта опция заменяет любые существующие установки авторизации.
-с < commenc
Определяет строку комментария и может быть любой текстовой строкой. Обычно представляет собой краткое описание регистрационного имени, в настоящее время используется в качестве поля для полного имени пользователя. Эта информация сохраняется в элементе файла /etc/ passwd для данного пользователя.
'd <dir>
Определяет новый исходный (домашний) каталог данной роли. По умолчанию принят каталог <base_dir>/login, где <base_dir> - базовый каталог для новых домашних каталогов регистрации, a login - собственно новое регистрационное имя.
-е <expire>
Определяет дату истечения срока действия роли. После наступления указанной даты ни один пользователь не сможет получить доступ к данной роли. Аргумент <expire> данной опции представляет собой дату, введенную в одном из форматов, включенных в файл шаблонов по имени /etc/datemsk.
-о-оРазрешает, чтобы заданный UID дублировался (не был уникальным).
-о
-о
Продолжение таблицы 20.2
Опция
Описание
-Р <profile>
Заменяет любую существующую установку профиля. Один или несколько рабочих профилей, разделенных запятыми, определяются в базе данных auth_attr.
-s <shell>
Определяет полное имя маршрута программы, которая используется в качестве командного процессора данной роли при регистрации в системе. Значение аргумента <sheil> должно быть допустимым исполняемым файлом.
-u <uid>
Определяет новый DID данной роли. Это должно быть неотрицательное целое число. Идентификатор пользователя, который ассоциируется с домашним каталогом данной роли, не модифицируется с помощью этой опции; некоторая роль не будет иметь доступа к своему исходному (домашнему) каталогу до тех пор, пока данный UID не будет переназначен вручную с использованием команды chown.
Чтобы добавить возможность очищать файлы протоколов, вам необходимо добавить solaris.admin.logsvc.purge к списку авторизаций для учетной записи роли с именем adminusr. Для этого выдайте команду rolemod следующим образом:
rolemod -А \ Solaris.admin.usermgr.pswd,Solaris.system.shutdown, \ Solaris.admin.fsmgr.write,Solaris.admin.logsvc.purge \ adminusr
• ' ПРИМЕЧАНИЕ■■■■
Установка авторизации команды rolemod не добавляется, а лишь заменяет любую существующую установку авторизации.
Если вы хотите удалить какую-нибудь учетную запись роли, воспользуйтесь командой roledel, синтаксис которой выглядит следующим образом:
roledel [ -г] <role account name>
Опция -г обеспечивает удаление домашнего каталога данной роли из системы. Например, для удаления учетной записи роли по имени adminusr выдайте следующую команду:
roledel -г adminusr
В следующем разделе подробно обсуждается каждая база данных ролевого управления доступом, описываются элементы, которые были созданы ранее при выполнении команд roleadd и usermod.
Компоненты RBAC
Чтобы предоставить пользователям доступ к привилегированным операциям, КВАС базируется на четырех перечисленных базах данных:
ф userattr (расширенная база данных атрибутов пользователей). Связывает пользователей и роли с авторизациями и профилями.
ф auth attr (база данных атрибутов авторизации). Определяет авторизации и их атрибуты, идентифицирует ассоциированный файл помощи, или подсказки.
Ф prof_attr (база данных атрибутов для профилей прав доступа). Определяет профили, поддерживает список авторизаций, назначенный данному профилю, и идентифицирует ассоциированный файл помощи.
Ф exec_attr (база данных атрибутов профиля). Определяет привилегированные операции, назначенные профилю.
Перечисленные базы данных взаимодействуют друг с другом.
Расширенная база данных атрибутов пользователей (user_attr)
База данных /etc/user_attr дополняет базы данных passwd и shadow. Она содержит расширенные атрибуты пользователей, такие как авторизации и профили. Она также разрешает назначение ролей некоторому пользователю. Ниже приведена копия базы данных /etc/userattr:
more /etc/user_attr
Copyright (с) 1999 by Sun Microsystems, Inc. All rights reserved.::::
: : : :
/etc/user_attr::::
: : : :.
user attributes, see user_attr(4)::: :
: : : :
♦pragma ident "6(#)user_attr 1.299/07/14 SMI”::::
::::
root::::type=normal;auths=solaris.*,solaria.grant;profiles=All
adminuar::::type-role;auths=aolaria.admin.usermgr.pswd,/
aolaria.ayatem.shutdown,solaria.admin.fsmgr.write;profiles=All neil::::type=normal;rolea=adminuar
Перечисленные далее поля базы данных userattr разделяются символом двоеточия:
user:qualifier:real:res2:attr
Каждое из представленных полей описывается в таблице 20.3.
Имя ПОЛЯ
Описание
user
Описывает имя пользователя так, как оно определено в базе данных passwd.
qualifier
Зарезервировано для использования в будущем.
res1
Зврезервировано для использования в будущем.
res2
Зарезервировано для использования в будущем.
attr
Содержит необязательный список пар вида "ключ-значение", разделенных символами точки с запятой (;), которые описывают атрибуты защиты информации и применяются, когда данный пользователь выполняет команды. Существует четыре допустимых значения ключа: auths, profiles, roles и type.
auths
Определяет список имен авторизаций, разделенных запятыми; авторизации выбираются из имен, определенных в базе данных auth_attr. Имена авторизаций могут включать символ звездочки (*) в качестве символа подстановки. Например, имя solaris.device.* обозначает все авторизации устройств операционной системы Solaris.
Продолжение таблицы 20.3
Имя поляОписание
profilesСодержит упорядоченный список имен профилей, разделенных запяты
ми; профили выбираются из имен, определенных в базе данных prof_attr. Профиль определяет, какие команды может выполнять пользователь и с какими атрибутами. Как минимум, каждый пользователь, указанный в базе данных user_attr, должен иметь профиль АН, который делает все команды доступными, но без атрибутов. Важен порядок перечисления профилей, он работает аналогично маршрутам поиска в UNIX. Первый профиль в данном списке, который содержит команду, подлежащую выполнению, определяет, какие атрибуты (если они вообще существуют) будут применены к данной команде. Профили будут описаны далее в разделе, озаглавленном "База данных авторизациий (auth_attr)’’.
rolesРоли могут быть назначены данному пользователю с использованием
списка имен ролей, разделенных запятыми. Обратите внимание, что роли определяются в той же самой базе данных user_attr. Они обозначаются посредством установки для роли значения type. Роли, в свою очередь, не могут быть назначены другим ролям. ■
typeКлюч типа может быть установлен в значение normal, если данная учет
ная запись предназначена для пользователя, или в значение role, если данная учетная запись предназначена для роли. Обычный пользователь получает роль после того, как он зарегистрируется в системе.
В предыдущем разделе для добавления роли с именем adminusr использовалась следующая команда roleadd:
roleadd -m -d /export/home/adminusr -c "Admin Assistant" \
A Solaris.admin.usermgr.pswd,Solaris.system.shutdown, \
Solaris.admin.fsmgr.write adminusr
Данная команда roleadd создает такой элемент в базе данных user_attr:
adminusr::::type=role;auths=solaris.admin.usermgr.pswd, \
Solaris.system.shutdown,Solaris.admin.fsmgr.write;profiles=All
Затем была выдана команда usermod для назначения новой роли пользователю с именем neil:
usermod -R useradmin neil
и был создан следующий элемент в базе данных user attr:
neil::::type=normal;roles=adminusr
База данных авторизаций (auth_attr)
Авторизация - право пользователя на предоставление ему доступа к некоторой ограниченной функции. В предыдущем разделе речь шла о том, что системный администратор захотел поручить Нейлу некоторые из задач системного администрирования. Это решается посредством назначения авторизаций для роли с именем adminusr. Авторизация представляет собой некоторую уникальную строку, которая идентифицирует как те права, которые авторизуются, так и того, кто создает данную авторизацию. Вспомните, что мы использовали перечисленные далее авторизации для того, чтобы предоставить Нейлу возможность модифицировать пароли пользователей, выполнять закрытие системы, монтировать файловые системы и назначать их для совместного использования:
Solaris.admin.usermgr pswd
Solaris.system.shutdown
Solaris.admin.fsmgr.write
Определенные привилегированные программы проверяют авторизации для установления того, могут ли пользователи выполнять ограниченную функция. Например, чтобы один пользователь мог редактировать файл crontab другого пользователя, требуется авторизация solaris.jobs.admin.
Все авторизации сохраняются в базе данных authattr. Если никакая служба имен не используется, то эта база данных размещается в файле, который называется /etc/security/ auth attr. Авторизации могут быть назначены непосредственно для пользователей (или ролей), и в таком случае они вводятся в базу данных userattr. Авторизации могут быть также назначены для профилей, которые, в свою очередь, назначаются пользователям. Профили описываются в разделе, который озаглавлен "База данных профилей прав доступа (prof attr)".
Поля в базе данных auth_attr разделяются символами двоеточия:
authname:resi:res2:short_desc:long_desc:attr
Каждое из представленных полей описывается в таблице 20.4.
Табйи<20#ПЙ1
Имя поля
Описание
authname
Это уникальная символьная строка, которая имеет формат prefix.Vsuffix^ и используется для идентификации данной авторизации. Авторизации для операционной среды Solaris используют в качестве префикса prefix слово Solaris. Все остальные авторизации должны использовать префикс, начинающийся с записанного в обратной последовательности доменного имени той организации, которая создает данную авторизацию (например, com.xyzcompany). Аргумент suffix обозначает то, что подлежит авторизации, обычно это функциональная область и операция.
Если никакой аргумент suffix не задан (то есть, значение опции authname состоит из префикса и функциональной области и заканчивается точкой), тогда опция authname служит в качестве заголовка, который используется приложениями в их GUI, а не в качестве авторизации. Примером такого заголовка может служить запись solaris.prlntmgr.
Если значение опции authname заканчивается словом grant, то опция authname служит в качестве авторизации гранта, позволяя данному пользователю делегировать связанные с ней авторизации (то есть авторизации с теми же самыми префиксом и функциональной областью) другим пользователям. Примером опции authname для авторизации гранта может служить запись solaris.printmgr.grant; она предоставляет данному пользователю право делегировать такие авторизации, как solaris.printmgr.admin и solaris.printmgr.nobanner, другим пользователям.
rest
Зарезервировано для использования в будущем.
res2
Зарезервировано для использования в будущем.
short_desc
Укороченное имя для авторизации, удобное для отображения в пользовательских интерфейсах, таких как список прокрутки в GUI.
long_desc
Расширенное описание. Данное поле идентифицирует цель авторизации, приложения, в которых она используется, и типы пользователей, заинтересованных в применении данной авторизации. Расширенное описание может быть отображено в тексте помощи, или подсказки, приложения.
Продолжение таблицы 20.4 Имя поляОписание
attrСодержит необязательный список пар вида "ключ-значение", разделен
ных символами точки с запятой (;) и описывающих атрибуты авторизации. Может быть задано несколько ключей или не задано ни одного ключа.
Ключевое слово help идентифицирует некоторый файл помощи в формате HTML. Файлы помощи могут быть доступны из файла index.html, который находится в каталоге /usr/lib/help/auths/locale/C.
Ниже приведены типовые значения, которые находятся в базе данных авторизации authattr по умолчанию:
Solaris.admin.usermgr.pswd:::Change User Passwords::help=UserMgrPswd.html
Solaris.system.shutdown:::Shutdown the System::help=SysShutdown.html
Solaris.admin.fsmgr.write:::Mount/Share File Systems::help=FsMgrWrite.html
Посмотрите на взаимоотношения между базами данных userattr и auth attr для роли adminusr, которую мы добавляли ранее:
adminusr::::type=role;auths=solaris.admin.usermgr.pswd, \
Solaris.system.shutdown, Solaris.admin.fsmgr.write;proflies=All
Обратите внимание на элементы авторизации, выделенные полужирным шрифтом. Эти элементы авторизации исходят из базы данных auth attr, которая была представлена выше. Авторизация solaris.system.shutdown, которая определяется в базе данных auth attr, предоставляет данной роли право на выполнение закрытия системы.
База данных профилей прав доступа (prof_attr)
Профили прав доступа, или просто профили, уже упоминались ранее в настоящей главе. До сих пор мы назначали права авторизации учетной записи роли. Определение учетной записи роли, которая имеет несколько авторизаций, может быть достаточно утомительной работой. В данном случае лучше определить некоторый профиль, который соберет воедино несколько авторизаций под единым именем, называемым именем профиля. Определение конкретного профиля сохраняется в базе данных prof_attr. Здесь приведен пример профиля по имени Operator для принятой по умолчанию базы данных profattr. Как и ранее, если вы не используете никакой службы имен, то файл базы данных prof attr размещается в каталоге /etc/security.
Operator:::Can perform simple administrative tasks:profiles=Printer \ Management,Media Backup,All;help=RtOperator.html
ПРИМЕЧАНИЕ ""I1"./)
В зависимости от инсталлированной вами версии операционной системы Solaris 8, некоторые из профилей, которые описаны в настоящем разделе, могут отсутствовать в файле prof_attr. Например, версия 10/00 не включает профиль Operator или Media Backup. Если конкретный профиль отсутствует, то у вас может возникнуть законное желание рассмотреть вопрос о загрузке более свежей версии операционной системы Solaris 8.
В базе данных prof attr определяется еще несколько других профилей. Поля в базе данных prof attr разделяются символом двоеточия, что и показано:
profname:resl:res2:desc:attr
Каждое из представленных полей описывается в таблице 20.5.
ОписаниаОписаниаИмя поля
Описаниа
Описаниа
profname
Имя профиля. Имена профилей чувствительны к регистру ввода символов (прописные и строчные буквы рвссмвтриваются как разные символы).
rest
Зарезервировано для использования в будущем.
res2
Зарезервировано для использования в будущем.
Iong_desc
Расширенное описание. Двнное поле должно пояснять целевое назначение профиля, включая и то, какие типы пользователей могут быть заинтересованы в его применении. Расширенное описание должно быть удобным для отображения в тексте помощи, или подсказки, некоторого приложения.
attr
Содержит необязательный список пар вида "ключ-значение", разделенных символами точки с запятой (;) и описывающих атрибуты защиты информации для приложения к объекту во время выполнения. Может быть задано несколько ключей или не задано ни одного ключа. Двумя допустимыми значениями ключей являются help и auths
Ключевое слово help идентифицирует файл помощи в формате HTML. Файлы помощи могут быть доступны из файла index.html, находящегося в каталоге /usr/lib/help/auths/locale/C.
Ключевое слово auths определяет список имен авторизаций, разделенных запятыми и выбранных из имен, определенных в базе данных auth_attr. Имена авторизаций могут быть заданы с использованием символа звездочки (*) в качестве символа подстановки.
Предположим, что системный администратор хочет создать новую учетную запись роли и поручить управление принтерами и резервным копированием. Для этого он может просмотреть файл userattr в поисках авторизаций и с помощью команды roleadd назначить каждую из них для новой учетной записи роли либо воспользоваться профилем Operator, который уже определен в базе данных profattr и выглядит подобно приведенному:
Operator:::Can perform simple administrative tasks:profiles=Printer \ Management,Media Backup, All;help=RtOperator.html
Профиль Operator, в свою очередь, состоит из трех других профилей:
Ф Printer Management
Ф Media Backup
Ф All
Давайте посмотрим, как каждый из этих профилей определяется в базе данных profattr:
Printer Management:::Manage printers, daemons,\
spooling:help-RtPrntAdmin.html; \
auths=solaris.admin.printer.read,Solaris.admin.printer \ modify,solaria.admin, printer.delete
Media Backup:::Backup files and file systems:help-RtMediaBkup.html
All:::Execute any command as the user or role:help=RtAll.html
Профилю Printer Management назначено три авторизации:
Ф solaris.admin.printer.read
ф solaris.admin.printer.modify
Ф solaris.admin.printer.delete
Если взглянуть на эти три авторизации в базе данных auth_attr, то можно увидеть следующие элементы:
solaria.admin.printer.read:::View Printer \
Information::help=AuthPrinterRead.html
solaria.admin.printer.modify:::Update Printer \
Information::help=AuthPrinterModifу.html
aolaris.admin.printer.delete:::Delete Printer \
Information::Help=AuthPrinterDelete.html
Теперь видно, что назначение профиля Printer Management аналогично назначению трех авторизаций: для просмотра, обновления и удаления информации принтера.
Профиль Media Backup предоставляет авторизацию для выполнения резервного копирования данных, но не для их восстановления. Профиль Media Backup не имеет ассоциированных с ним авторизаций подобно тому, как это имеет место с профилем Printer Management. Описание того, как определяется этот профиль, приводится в следующем разделе, где описываются атрибуты выполнения.
Профиль АН предоставляет учетной записи роли право на использование любой команды при работе в среде оболочки администратора. Эти оболочки могут выполнять только те команды, которые были специально назначены учетной записи роли через предоставление прав. Мы рассмотрим эту концепцию несколько позднее, когда в следующем разделе будут описываться атрибуты выполнения.
Чтобы создать новую учетную запись роли с именем adminZ, указывая профиль Operator, воспользуйтесь командой roleadd с опцией -Р:
roleadd -m -d /export/home/admin2 -c "Admin Assistant" -P Operator admin2
При этом к базе данных user_attr добавляется следующий элемент:
admin2::::type=role;profiles=Operator
В любое время пользователи могут проверить, какие профили были им гарантированы, воспользовавшись для этого командой profiles:
profiles
Система возвращает список профилей, которые были гарантированы конкретной учетной записи пользователя.
База данных атрибутов выполнения (exec_attr)
Атрибут выполнения, ассоциированный с некоторым профилем, представляет собой команду (с любыми специальными атрибутами защиты информации), которая может быть выполнена теми пользователями или ролями, которым назначается данный профиль. Например, в предыдущем разделе мы рассматривали профиль, имеющий имя Backup Media, в базе данных prof attr. Хотя данному профилю не было назначено никаких авторизаций, профиль Backup Media был определен в базе данных exec_attr следующим образом:
Media Backup:suser: cmd:::/usr/bin/mt:euid=0
Media Backup:suser:cmd:::/usr/sbin/tar:euid=0
Media Restore:auaer:cmd:::/usr/sbin/tar:euid=0
Media Backup:suser: and: : : /usr/lib/fs/ufs/ufsdunip:euid=O ;gid=aya
Media Reatore:auaer:and:::/uar/bin/cpio:euid=0
Media Reatore:auaer:and:::/uar/bin/mt:euid=O
Media Reatore:auaer: and:::/uar/!ib/fa/ufa/ufareatore:euid=0
База данных execattr содержит следующие поля, которые разделяются символами двоеточия:
name:policy:type:real:rea2:id:attr
Каждое из представленных полей описывается в таблице 20.6,
Таблица 20.6 Поля базы дайй^Х^S 7
Имя поляОписание
Name
Имя профиля. Имена профилей чувствительны к регистру ввода символов (прописные и строчные буквы рассматриваются как разные символы).
policy
Стратегия защиты информации, связанная сданным профилем. В настоящее время единственным допустимым элементом стратегии является suser (the superuser policy model - модель стратегии суперпользователя).
type
Тип объекта, атрибуты которого определяются. В настоящее время единственным допустимым типом объекта является cmd (команда).
resl
Данное поле зарезервировано для использования в будущем.
res2
Данное поле зарезервировано для использования в будущем.
id
Строка, которая идентифицирует данный объект; может быть использован символ звездочки (*) в качестве символа подстановки. Команды должны иметь полный маршрут или маршрут с символами подстановки. Чтобы указать аргументы, напишите какой-нибудь сценарий с этими аргументами и адресуйте поле id этому сценарию.
attr
Содержит необязательный список пар вида "ключ-значение", разделенных символами точки с запятой (;) и описывающих атрибуты защиты информации для приложения к объекту во время выполнения. Может быть задано несколько ключей или не задано ни одного ключа. Перечень допустимых ключевых слов зависит от установленной стратегии. Всего существует четыре допустимых значения ключа: euid, uid, egid и gid.
Значения euid и uid содержат одно имя пользователя или численный идентификатор пользователя (ID). Команды, определенные с использованием значения euid, выполняются с обозначенным действующим идентификатором пользователя, что эквивалентно установке бита setuid на каком-нибудь исполняемом файле. Команды, определенные с использованием значения uid, выполняются как с подлинным идентификатором пользователя, так и с действующим.
Значения egid и gid содержат одно имя группы или численный идентификатор группы (GID). Команды, определенные с использованием значения egid, выполняются с обозначенным действующим идентификатором группы, что эквивалентно установке бита setgid на каком-нибудь исполняемом файле. Команды, определенные с использованием значения gid, выполняются как с подлинным идентификатором группы, так и с действующим.
Если обратиться еще раз к профилю Media Backup, который определен в базе данных exec attr, то мы увидим, что перечисленные команды имеют действующий идентификатор пользователя (UID), равный нулю (что соответствует суперпользователю):
Примените ваши знания
/uar/bin/mt
/uar/abin/tar
/uar/lib/fa/ufa/ufadump
/uar/bin/cpio
/uar/lib/fa/ufa/ufareatore
Таким образом, любой пользователь, которому будет предоставлен профиль Media Backup, сможет выполнить перечисленные команды с действующим идентификатором пользователя, равным нулю (что соответствует суперпользователю).
В базе данных profattr мы также видели профиль Operator, который содержит профиль с именем АН. Как и ранее, профиль АП не имеет авторизаций, ассоциированных с ним. Когда мы посмотрим на определение профиля АН в базе данных exec_attr, то увидим следующий элемент:
All:suser: and:::*:
Проанализировав каждое из полей, мы видим, что АН - это имя профиля, стратегия защиты информации установлена в значение suser (superuser), а типом объекта является cmd. В поле атрибутов стоит звездочка (*).
Это то общее, что может гарантировать всем пользователям профиль АП. Символ звездочки (*) является элементом подстановки, который соответствует любой команде. Другими словами, данный пользователь имеет доступ к любой команде до тех пор, пока работает в среде данного командного процессора. Без профиля АП пользователь, возможно, будет иметь доступ к привилегированным командам, но при этом не будет иметь доступ к обычным командам, таким как 1s или cd. Обратите внимание на то, что никакие специальные атрибуты процессов не ассоциируются с символом подстановки, поэтому эффект заключается в том, что все команды, соответствующие этому символу подстановки, выполняются с идентификатором пользователя и идентификатором группы текущего пользователя (или текущей роли). Всегда назначайте профиль АП последним в списке профилей. Если этот профиль будет указан в списке первым, то ни к каким другим правам при анализе атрибутов команды обращение производиться не будет.
Резюме
В настоящей главе было рассмотрено ролевое управление доступом для делегирования ограниченных административных возможностей пользователям, которые не являются суперпользователями. Описаны функциональные особенности, которые являются неотъемлемой составной частью RBAC - ролевого управления доступом, в том числе:
Ф Роли. Специальные учетные записи пользователей, предназначенные для выполнения некоторого набора административных задач.
ф Авторизации. Иногда называемые также "правами", авторизации предоставляют доступ к некоторой функции, доступ к которой в противном случае является ограниченным.
ф Профили выполнения. Механизмы пакетирования для группировки авторизаций и команд со специальными атрибутами. Профили выполнения представляют собой концепцию, аналогичную установке бит полномочий UID и GID на исполняемые файлы.
В настоящей главе были также описаны четыре базы данных, которые взаимодействуют между собой для предоставления доступа пользователям к привилегированным операциям:
user_attr. Связывает пользователей и роли с авторизациями и профилями выполнения.
auth_attr. Определяет авторизации и их атрибуты и идентифицирует ассоциированный файл помощи, или подсказки.
prof_attr. Определяет профили, перечисляет авторизации, назначенные профилям, и идентифицирует ассоциированный файл помощи.
exec_attr. Определяет привилегированные операции, назначенные профилю.
Теперь, когда вы больше узнали о КВАС, рекомендуется возвратиться назад к главе 19 для повторного рассмотрения консоли управления Solaris, предоставляющей простой в использовании GUI для создания и назначения ролей, а также для назначения прав на эти роли. Вы увидите, что этим инструментом пользоваться гораздо проще, чем аналогичными средствами, запускаемыми из командной строки.
В следующей главе будут рассматриваться вопросы установки сервера для поддержки инсталляций автономных систем с использованием утилиты JumpStart. Применяя JumpStart, клиенты в сети обращаются к упомянутому серверу для инсталляции их операционных систем. Утилита JumpStart может быть использована для сквозной автоматизации процесса инсталляции программного обеспечения.
Ключевые термины.
Ролевое управление доступом (КВАС)
Учетная запись роли
Авторизация
Базы данных КВАС (необходимо знать специфические особенности всех четырех баз данных)■
Примените ваши знания
Создание пользователя и роли
Оцениваемое время: 20 минут
Для создания пользователя и роли выполните следующие операции:
Создайте роль с именем adminl:
roleadd -u 2000 -g 10 -d /export/home/ adminl -m adminl
paaawd adminl
■(назначение пароля учетной записи роли>
Создайте профиль, разрешающий пользователю выполнять закрытие системы.
Отредактируйте файл /etc/security/profattr, введите в него следующую строку:
Shutdown:::Permit ayatem shutdown:
Примените ваши знания
Сохраните и закройте данный файл. '■
Добавьте к созданной роли-профили Shutdown и АП, как показано:
rolemod -Р Shutdown,All adminl
Убедитесь, что в базе данных userattr были сделаны соответствующие изменения:
more /etc/user_attr
Создайте учетную запись пользователя и назначьте ей доступ к роли с именем adminl:
useradd -u 3000 -g 10 -d /export/home/trngl -m -s /bin/ksh -R \ adminl trngl
Назначьте пароль новой учетной записи пользователя, как показано:
passwd trngl «назначьте пароль>
Убедитесь, что в файлах passwd, shadow и user_attr были созданы соответствующие элементы:
more /etc/passwd more /etc/shadow more /etc/user_attr
Назначьте команды для профиля Shutdown:
Отредактируйте файл /etc/security/exec_attr, добавив в него следующую строку: shutdown:suser:cmd:::/usr/sbin/shutdown:uid=0
Сохраните и закройте данный файл.
Протестируйте новую роль и учетную запись пользователя следующим образом: а. Зарегистрируйтесь в системе под именем пользователя trngl.
Просмотрите список ролей, предоставленных вам, для чего введите следующую команду:
roles
Воспользуйтесь командой su для получения роли adminl: su adminl «введите пароль для adminl>
Просмотрите список профилей, предоставленных вам, для чего введите следующую команду:
profiles
Закройте систему:
/usr/sbin/shutdown -i 0 -g 0
Обзорные вопросы
Какие два из перечисленных утверждений относительно команды roleadd являются истинными?
К Команда roleadd является аналогом команды useradd.
Команда roleadd по умолчанию использует тот же самый командный процессор, что и команда useradd.
Опция -А этой команды связывает учетную запись с профилем.
Учетная запись, созданная с помощью команды roleadd, является точно такой же, как и обычная регистрационная учетная запись пользователя.
Какой компонент RBAC ассоциирует пользователей и роли с авторизациями и профилями?
A. user attr
profattr■
auth_attr
D. execattr
Какой компонент КВАС определяет привилегированные операции, назначенные профилю?
user_attr
prof attr
auth_attr
exec_attr
Что из перечисленного не является допустимым значением для поля attr из базы данных атрибутов выполнения?
euid
uid
egid
suid
После создания некоторой роли КВАС вы обнаруживаете, что только те команды, которые вы установили, являются привилегированными командами, которые могут быть выполнены в рамках данной роли. Обычные непривилегированные команды являются недоступными. При установке КВАС возникла проблема. В чем причина данной проблемы?
Данная роль не ассоциирована с корректным профилем.
Механизм доступа к данной роли инициализирован неправильно.
Профиль данной роли не ассоциирован с корректными командами.
В файле, который идентифицирует привилегированные команды, имеются отсутствующие элементы.
Профиль данной роли не ассоциирован с корректными авторизациями.
Какие три файла использует КВАС?
/etc/usr attr
/etc/user attr
/etc/security/exec_attr
/etc/security/prof_attr
Глава 20. Ролевое управление доступом (КВАС)
Примените ваши знания
Вы хотите разрешить какому-нибудь пользователю администрирование таблиц cron всех пользователей. В эту задачу входит внесение изменений в элементы файла crontab любого пользователя. Имея в виду обеспечение защиты системной информации, что вы должны сделать, чтобы разрешить упомянутому пользователю выполнение указанных обязанностей?
Предоставить данному пользователю пароль суперпользователя.
Установить suid на команду crontab.
Воспользоваться RBAC при авторизации данного пользователя для администрирования таблиц cron.
Воспользоваться RBAC для предоставления данному пользователю идентификатора суперпользователя при выполнении команды crontab.
Воспользоваться механизмом ACL для предоставления данному пользователю доступа RW к каждой таблице crontab.
Какие команды предоставляет пользователю доступ к учетной записи роли?
roleadd
rolemod
useradd
usermod
Какая опция команды rolemod добавляет авторизацию к существующему перечню авторизаций?
-А
-Р
-а
-о
Никакая
В каких файлах определяются профили?
profattr
userattr
exec_attr
auth_attr
Какие утверждения являются истинными относительно следующей строки: Media Restore:suser:cmd:::/usr/lib/fs/ufs/ufsrestore:euid=0
Она представляет собой профиль в базе данных exec attr.
Любая роль, которая содержит Media Restore в качестве профиля, имеет возможность выполнять команду ufsrestore с действующим UID суперпользователя.
Она представляет собой профиль в базе данных prof attr.
Она представляет собой определение роли в базе данных user attr.
Что из перечисленного представляет собой механизм пакетирования в RBAC для группирования авторизаций и команд со специальными атрибутами?
Профиль
Роль
Авторизация
Группа
Ответы на обзорные вопросы
А, В. Команда roleadd является аналогом команды useradd, и она по умолчанию использует тот же самый командный процессор, что и команда useradd.
А. Расширенная база данных атрибутов пользователей user_attr связывает пользователей и роли с авторизациями и профилями.
D. База данных атрибутов профилей exec_attr определяет привилегированные операции, назначенные профилю.
D. Существует четыре допустимых значения ключа: euid, uid, egid и gid.
А. Если некоторая роль не ассоциирована с корректным профилем, то только те команды, которые вы установили, являются привилегированными командами, и могут быть выполнены в рамках данной роли. Обычные непривилегированные команды являются недоступными.
В, С, D. КВАС использует следующие три файла: /etc/user_attr, /etc/security/ execattr и /etc/security/profattr.
С. Чтобы разрешить какому-нибудь пользователю администрирование таблиц cron всех пользователей, сконфигурируйте КВАС для авторизации данного пользователя в сфере администрирования таблиц cron.
A, D. Воспользуйтесь командой roleadd для создания учетной записи роли. После этого с помощью команды usermod с опцией -R назначьте учетной записи пользователя данную роль.
Е. Команда rolemod ничего не добавляет к существующему перечню авторизаций; она лишь заменяет любую существующую установку авторизации.
А, С. prof_attr (база данных атрибутов для профилей прав доступа) определяет профили, перечисляет список авторизаций, назначенных данному профилю, и идентифицирует ассоциированный файл помощи, или подсказки. exec_attr (база данных атрибутов профиля) определяет привилегированные операции, назначенные профилю.
1L А, В. В базе данных exec_attr следующий элемент
Media Restore:suser:and:::/usr/lib/fs/ufs/ufsrestore:euid=0
представляет профиль с именем Media Restore. Любая роль, которая содержит Media Restore в качестве профиля, имеет возможность выполнять команду ufsrestore с действующим идентификатором суперпользователя.
А. Профили выполнения представляют собой механизмы пакетирования для группирования авторизаций и команд со специальными атрибутами.
Глава 21Глава 21JumpStartJumpStart
Глава 21
Глава 21
JumpStart
JumpStart
Темы
В настоящей главе рассматривается следующая тема экзамена:
Ознакомление с инсталляцией по методу JumpStart
► Настоящая глава поможет вам понять все компоненты сетевой инсталляции по методу JumpStart. Вы узнаете об установке серверов и клиентов для поддержки инсталляции по методу JumpStart, включая команды, файлы конфигурации и службы, относящиеся этому методу.
Содержание
(Введение688
Общий обзор688
Подготовь ^пользовательский инсталляции JumpStart690
(Что происходит в процессе пользовательский инсталляции JumpStart?691
Загрузочный сервер691
Инсталляционный сервер695
Конфигурационный сервер697
;3 2-300
файл правил.699
Проверка файла правил707
Начальный и конечный сценарии708
Создание файлов классов и ключевые слова такилфайлов709
6ac^up_mecfia710
6oot_cfevice711
cRent_arcR712
cRent_root■712
cRent_swap713
cluster713
cfontuse714
fiCesys714
instaK_type716
geo717
isa_6its717
(ayout_constraint718
locate719
num_cRents720
pactage720
partitioning720
root_cfevice721
system_type721
usectist^721
Тестирование файлов цлассов722
файл sysitCtfg724
•Ключевые слова слулфы имен, долсенного имени и сервера имен725
Ключевые слова, относящиеся i^cemu726
Установи# пароля суперпользователя727
Установи#, системной лтули, терминала, часового пояса и сервера
слулфы времени728
Установка JumpStart в среде слулфы илеен729
Установка клиентов729
Пример инсталляури JumpStart731
Установка инсталляционного сервера731
Создание каталога gumpStart732
Установка конфигурационного сервера732
Установка клиентов733
Запускуусиентов734
Фезюлее736
Примените ваши знания73 7
Стратегия обучения
Следующая стратегия поможет вам подготовиться к экзамену:
Потренируйтесь в практическом выполнении пошаговых примеров, представленных в настоящей главе, на какой-нибудь системе Solaris. Убедитесь в том, что вы разобрались с каждой операцией и можете описать процессы установки загрузочного, инсталляционного и конфигурационного серверов. Вы также должны уметь идентифицировать события, происходящие в процессе загрузки клиента JumpStart.
Постарайтесь понять каждую из описанных команд. Изучите все опции этих команд, а в особенности те из них, которые применяются в представленных примерах. На экзамене вы встретитесь с вопросами, относящимися к сценариям add_install_client, add_to_install_server и modify install server.
Определитесь с целевым назначением файла sysidcfg, файла класса и файла правил. При помощи соответствующих источников программного обеспечения будьте готовы объяснить порядок создания конфигурационного сервера с пользовательским файлом правил и файлами классов.
Определитесь с целевым назначением сервера JumpStart и основными компонентами серверов каждого типа. Изучите термины, перечисленные в разделе "Ключевые термины" в конце настоящей главы. Будьте готовы сформулировать описание каждого из этих терминов.
Введение
Существует всего четыре метода инсталляции программного обеспечения Solaris на некоторой системе: интерактивная инсталляция (описана в главе 3), пользовательский метод инсталляции JumpStart (описывается в настоящей главе), метод инсталляции Web Start (описывается в приложении А) и инсталляция через сеть (она также была описана в главе 3). Чтобы инсталлировать операционную систему (ОС) на сервере, вам следует воспользоваться интерактивным методом, изложенным в главе 15. В настоящей главе описывается, как инсталлировать ОС Solaris на клиентских системах при помощи метода пользовательской инсталляции JumpStart.
ПРИМЕЧАНИЕ • J'' ,, • ■ , '. ' /
Вам предстоит столкнуться с тем, что файл класса (class file) называется профилем (profile) во многих документах фирмы Sun, сценариях и программах, относящихся к методу JumpStart. Однако на учебных курсах системных администраторов фирмы Sun он называется именно файлом класса. Вот почему в настоящей главе применяется данное название. На экзаменах также будет использоваться термин файл класса. То же самое справедливо применительно к конфигурационному серверу. Иногда фирма Sun будет называть его сервером профилей (profile server).
Общий обзор
Существует две версии JumpStart: собственно JumpStart и пользовательский метод JumpStart. Причем, JumpStart позволяет вам автоматически инсталлировать программное обеспечение на системе с архитектурой SPARC просто путем установки компакт-диска Solaris и включения электропитания. Вам нет необходимости задавать команду boot в ответ на приглашение ок. Инсталлируемое программное обеспечение определяется принятым по умолчанию файлом класса, который выбирается исходя из модели системы и размеров ее дисков; вы
не сможете выбрать программное обеспечение, которое будет инсталлироваться. Дня новых систем с архитектурой SPARC, поставляемых фирмой Sun, этот метод инсталляции ОС принимается по умолчанию, когда вы в первый раз включаете электропитание системы.
Пользовательский метод JumpStart инсталляции ОС представляет собой способа для автоматической и идентичной инсталляции группы систем. Если вы используете интерактивный метод инсталляции ОС, то должны проводить диалоге инсталляционной программой, отвечая на задаваемые ею вопросы. На большом сайте, где несколько систем должны быть сконфигурированы абсолютно одинаково, эта монотонная задача может потребовать значительных затрат времени. Кроме того, нет гарантии, что каждая система будет установлена одинаково. Пользовательский метод инсталляции JumpStart решает эту проблему посредством предоставления способа заблаговременного создания наборов конфигурационных файлов, которые затем смогут быть использованы в процессе инсталяции для конфигурирования каждой системы.
Пользовательский, или сделанный по заказу, метод JumpStart требует проведения предварительной работы, направленной на создание конфигурационных файлов, прежде чем системы смогут быть инсталлированы. Однако это наиболее эффективный способ для централизации и автоматизации процесса инсталляции ОС на больших сайтах масштаба предприятия. Пользовательский метод инсталляции JumpStart может быть установлен для работы в полностью автоматическом режиме.
Пользовательские файлы конфигурации, которые должны быть созданы для метода инсталляции JumpStart, - это файлы правил и классов. Указанные типы файлов содержат несколько ключевых слов и значений, описанных в настоящей главе.
В таблице 21.1 перечисляются команды, которые будут введены в настоящей главе.
Таблица'21.1 Команды метода JumpStart ' /z ' Команда Описание
setup_install_serveradd_to_install_servermodify_install_serveradd_install_clientrm_install_clientcheckpfinstallpatchadd -Csetup_install_serveradd_to_install_servermodify_install_serveradd_install_clientrm_install_clientcheckpfinstallpatchadd -CУстанавливает инсталляционный сервер для предоставления операционной системы клиенту в процессе инсталляции JumpStart.
setup_install_server
add_to_install_server
modify_install_server
add_install_client
rm_install_client
check
pfinstall
patchadd -C
setup_install_server
add_to_install_server
modify_install_server
add_install_client
rm_install_client
check
pfinstall
patchadd -C
Это сценарий, который копирует на локальный диск существующего инсталляционного сервера дополнительные пакеты программного обеспечения из дерева продуктов на компакт-дисках Solaris 8 Software и Solaris 8 Languages.
Это сценарий, который добавляет программное обеспечение пользовательского интерфейса Solaris Web Start к образам компакт-дисков Solaris 8 Software и Solaris 8 Languages на существующем инсталляционном сервере, что дает возможность пользователям применять Solaris Web Start для загрузки системы и инсталляции программного обеспечения Solaris 8 через сеть.
Команда, добавляющая сетевую инсталляционную информацию о системе к файлам каталога /etc инсталляционного или загрузочного сераера для того, чтобы система могла быть инсталлирована через сеть.
Удаляет клиентов JumpStart, которые ранее были установлены для сетевой инсталляции.
Проверяет информацию в файле правил.
Выполняет "пробный прогон" инсталляции для тестирования файла класса.
Это команда для добавления заплат к файлам, размещенным в каталоге miniroot (то есть, в каталоге Solaris_8/Tools/Boot) образа инсталляционного компакт-диска, созданного с помощью setup_install_server. Это средство позволяет вам накладывать заплаты на инсталляционные команды Solaris и на другие команды, специфические для каталога miniroot.
В состав JumpStart входят три основных компонента:
^ Службы загрузки и идентификации клиента. Эти службы предоставляются сетевым загрузочным сервером и предлагают информацию, необходимую клиенту JumpStart для выполнения загрузки с использованием сети.
^ Службы инсталляции. Эти службы предоставляются сетевым инсталляционным сервером, который предлагает образ операционной среды Solaris, используемый клиентом JumpStart в качестве источника данных для выполнения инсталляции.
^ Службы конфигурации. Эти службы предоставляются сетевым конфигурационным сервером и предлагают информацию, которую клиент JumpStart использует для разбивки дисков и создания файловых систем, добавления и удаления пакетов программного обеспечения Solaris и выполнения других конфигурационных задач.■
Временами загрузочный, инсталляционный и конфигурационный серверы описываются как три различные системы. Однако в реальной жизни большинство компаний используют одну систему, выполняющую все три перечисленные функции. Этот вопрос будет более подробно рассматриваться в разделе "Инсталляционный сервер" настоящей главы.
Каждый из трех компонентов, перечисленных ранее, рассматривается в настоящей главе. Если любой из трех названных компонентов неправильно сконфигурирован, то клиенты JumpStart могут:
^ Потерпеть неудачу в процессе загрузки.
^ Потерпеть неудачу при попытке найти операционную среду Solaris для загрузки.
^ Получить в интерактивном режиме вопросы для конфигурирования.
^ Потерпеть неудачу при выполнении разбивки дисков, создании файловых систем и загрузке операционного окружения.
Подготовка к пользовательской инсталляции JumpStart
При подготовке к пользовательской инсталляции JumpStart прежде всего требуется решить, как вы хотите инсталлировать системы на вашем сайте. Ниже приведено несколько вопросов, на которые вы должны ответить до того, как приступать к работе:
^ Будет ли данная инсталляция первоначальной инсталляцией или обновлением?
^ Какие приложения будет поддерживать система?
^ Кто будет использовать систему?
^ Каков требуемый размер области своппинга, или подкачки?
Эти вопросы помогут вам сгруппировать системы при создании файла класса и файлов правил далее в настоящей главе.
Дополнительно следует учесть, какие пакеты программного обеспечения необходимо будет инсталлировать, а также какого размера должны быть создаваемые разделы дисков. После того как вы ответите на все эти вопросы, сгруппируйте системы в соответствии с их конфигурацией, как будет показано в примере пользовательской инсталляции JumpStart ближе к окончанию настоящей главы.
Следующим этапом в подготовке пользовательской инсталляции JumpStart является создание конфигурационных файлов, которые будут использоваться в процессе инсталляции: файла rules.ok (это файл проверки правил) и файла класса для каждой группы систем. Файл rules.ok содержит некоторое правило для каждой группы систем, на которых вы хотите инсталлировать ОС. Каждое правило, характеризующее группу систем, основывается на одном или нескольких системных атрибутах. Правило связывает каждую группу систем с файлом класса - текстовым файлом, определяющим, как будет инсталлироваться программное обеспечение Solaris на каждой системе данной группы. Как файл rules.ok, так и файлы классов должны быть размещены в каталоге, который вы определите.
Конфигурационные файлы пользовательской инсталляции JumpStart, которые вам необходимо установить, могут находиться либо на дискете, называемой конфигурационной, либо на сервере, называемом конфигурационным. Пользоваться конфигурационной дискетой следует в том случае, когда вы хотите выполнить пользовательские инсталляции JumpStart на не подключенных к сети, автономных системах. Конфигурационным сервером следует пользоваться в том случае, когда вы хотите выполнить пользовательские инсталляции JumpStart на подключенных к сети системах, имеющих доступ к серверу. В настоящей главе будут рассматриваться обе процедуры инсталляции.
Что происходит в процессе пользовательской инсталляции JumpStart?
Настоящий раздел - это краткий обзор происходящего в процессе пользовательской инсталляции JumpStart. В настоящей главе подробно описывается каждый этап этого процесса.
Для подготовки к рассматриваемой инсталляции вы создаете набор конфигурационных файлов JumpStart, включающий файлы правил и классов, на сервере, расположенном на той же сети, что и клиент, которого вы собираетесь инсталлировать. Далее вы устанавливаете данный сервер для запуска ядра операционной системы, которое передается клиенту через сеть. Такой сервер называется загрузочным (иногда его еще называют сервером запуска).
После запуска клиента загрузочный сервер переадресует его в каталог JumpStart, который обычно размещается именно на загрузочном сервере. Конфигурационные файлы в каталоге JumpStart направляют и автоматизируют весь процесс инсталляции Solaris на клиентской системе.
Чтобы иметь возможность запустить и инсталлировать ОС на клиентской системе, вам необходимо установить три сервера: загрузочный, инсталляционный и конфигурационный. Это могут быть три различных сервера; однако, в большинстве случаев один и тот же сервер предоставляет все три вида служб.
Загрузочный сервер
Загрузочный сервер (иногда его еще называют сервером запуска) - это то место, где клиентские системы получают доступ к файлам запуска. Этот сервер должен размещаться на локальной подсети, то есть, доступ к нему должен осуществляться не через маршрутизатор. Хотя существует возможность инсталляции через сеть таких систем, которые не находятся на одной и той же подсети с инсталляционным сервером, однако должен быть загрузочный сервер, находящийся на той же самой подсети, что и клиент.
Когда происходит первое включение электропитания клиентской машины, на ней еще не инсталлирована операционная система и ей не назначен IP-адрес; таким образом, когда клиент запускается в первый раз, то эту информацию предоставляет загрузочный сервер. Загрузочный сервер, запустивший демон протокола RARP (Reverse Address Resolution Protocol - протокол обратного разрешения адреса), in.rarpd, анализирует Ethernet-адрес в файле /etc/ ethers, находит соответствующее имя в файле /etc/hosts и возвращает клиенту Internet-адрес.
ПРИМЕЧАНИЕ (
Как уже отмечалось в главе 13, демон in.rarpd - сетевая служба, которая выполняется не всегда. Демон inetd представляет собой программу, которая прослушивает сеть и автоматически запускает демон in.rarpd всякий раз, когда к нему делается запрос.
Протокол RARP предоставляет метод, с помощью которого клиенту назначается IP- адрес, основываясь на результатах анализа его Ethernet-адреса. После предоставления IP- адреса сервер ищет символическую ссылку, поименованную в соответствии с IP-адресом данного клиента, который выражен в шестнадцатеричном формате. Эта ссылка указывает на загрузочную программу для конкретных релиза операционной системы Solaris и архитектуры клиентской системы. Для систем SPARC имя данного файла имеет формат <hex- IP address.architecture>, например:
С009С864.SUN4U -> inetboot.sun4u.Solaris_8-1
Загрузочный сервер использует демон in.tftpd для передачи загрузочной программы клиенту с помощью протокола TFTP (Trivial File Transfer Protocol - тривиальный протокол передачи файлов). Клиент выполняет эту загрузочную программу для запуска.
Загрузочная программа пытается смонтировать корневую файловую систему. Чтобы сделать это, она выдает запрос whoami для определения имени хоста клиента. Загрузочный сервер запускает демон параметров загрузки, rpc.bootparamd, определяет данное имя и сообщает его клиентской системе. Затем загрузочная программа выдает запрос getfile для получения информации о местоположении корневой файловой системы клиента и области подкачки. Загрузочный сервер отвечает информацией, полученной из файла /etc/bootparams.
Как только клиент получает свои параметры загрузки, загрузочная программа на клиентской системе монтирует корневую файловую систему с загрузочного сервера. Клиент загружает свое ядро операционной системы и запускает программу ink. Когда загрузочный сервер завершает процесс начальной загрузки клиентской системы, он переадресовывает данного клиента на конфигурационный сервер.
Клиент выполняет поиск конфигурационного сервера, используя информацию параметров загрузки. Клиент монтирует каталог конфигурации и запускает программу sysidtool. Затем клиент использует информацию параметров загрузки для обнаружения и монтирования инсталляционного каталога, в котором находится образ Solaris. После этого клиент выполняет программу suninstall и инсталлирует операционную систему.
Для выполнения операций загрузки необходимо правильно сконфигурировать следующие файлы на загрузочном сервере: /etc/ethers, /etc/hosts, /etc/bootparams, /etc/dfs/dfstab и /tftpboot. В последующих разделах представлено подробное описание каждого из этих файлов.
/etc/ethers
Когда клиент JumpStart загружается, он еще не имеет IP-адреса, поэтому и обращается к сети с использованием протокола RARP и Ethernet-адреса данного клиента. Загрузоч-
ный сервер принимает этот запрос и пытается сопоставить Ethernet-адрес данного клиента с каким-нибудь элементом в локальном файле /etc/ethers.
Если соответствие установлено, то имя данного клиента сопоставляется с каким-нибудь элементом в файле /etc/hosts. В ответ на запрос по протоколу RARP от клиента загрузочный сервер возвращает ему IP-адрес из файла /etc/hosts. Клиент продолжает процесс загрузки с использованием назначенного ему IP-адреса.
Элемент для клиента JumpStart может быть создан посредством редактирования файла /etc/ethers либо с помощью сценария add_install_client, который описывается далее в настоящей главе в разделе, озаглавленном "Установка клиентов".
/etc/hosts
Файл /etc/hosts был описан в главе 13. Он представляет собой локальный файл, связывающий имена узлов сети с их IP-адресами. Загрузочный сервер обращается к этому файлу, когда пытается сопоставить элемент в локальном файле /etc/ethers в ответ на запрос клиента по протоколу RARP. В среде службы имен этот файл мог бы контролироваться службой NIS. Более подробная информация о том, как NIS управляет данным файлом, представлена в главе 18.
/tftpboot
Представляет собой каталог, содержащий файл inetboot.SUN4x.Solaris_8-l, который создается для каждого клиента JumpStart в процессе выполнения сценария add_install_client.
IP-адрес клиента выражается в шестнадцатеричном формате. Эта ссылка указывает на загрузочную программу для конкретных релиза операционной системы Solaris и архитектуры клиентской системы.
В процессе выполнения загрузки через сеть загрузочное PROM (ППЗУ) клиента JumpStart формирует запрос по протоколу RARP и, когда оно принимает ответ на этот запрос, транслирует запрос по протоколу TFTP для выборки файла inetboot с любого сервера, откликнувшегося и выполнившего этот запрос. Конфигурирование каталога /tftpboot описывается в разделе, озаглавленном "Установка клиентов".
/etc/dfs/dfstab
Файл /etc/dfs/dfstab содержит перечень локальных файловых систем, подлежащих совместному использованию через сеть. Этот файл подробно описывается в главе 17.
/etc/bootparams
Файл /etc/bootparams содержит элементы, которые сетевые клиенты используют для выполнения загрузки. Клиенты JumpStart извлекают информацию из этого файла посредством выдачи запросов к серверу, запускающему программу rpc.bootparamd. Более подробная информация по конфигурированию данного файла содержится в разделе, озаглавленном "Установка клиентов".
Установка загрузочного сервера
Загрузочный сервер устанавливается для ответа на запросы клиентов по протоколу RARP с использованием команды add_install_client. Прежде чем клиент сможет запус-
титься с загрузочного сервера, для установки самого загрузочного сервера применяется команда setup_install_server. Если один и тот же сервер предполагается использовать как в качестве загрузочного, так и в качестве инсталляционного, переходите к разделу, озаглавленному "Инсталляционный сервер".
Обычно инсталляционный сервер также предоставляет загрузочную программу для загрузки клиентов. Однако сетевая загрузочная архитектура Solaris требует от вас установить отдельный загрузочный сервер, когда инсталлируемый клиент и инсталляционный сервер находятся в различных подсетях. Для этого есть причина: инсталлируемые клиенты - системы с архитектурой SPARC - требуют наличия загрузочного сервера, когда они находятся в различных подсетях, поскольку сетевая загрузочная архитектура использует протокол RARP. Когда клиент загружается, он посылает запрос по протоколу RARP для получения своего IP-адреса. Однако протокол RARP не запрашивает маску сети, которая требуется для распространения информации по сети через маршрутизатор. Если к загрузочному серверу приходится добираться через маршрутизатор, загрузка завершится аварийно, поскольку сетевой трафик не может быть корректно проложен без использования маски сети.
llliiilliAaigllliiliii^^
Установка загрузочного сервера
Выполните перечисленные операции для установки данного сервера только в качестве загрузочного:
В системе, которая представляет собой загрузочный сервер, зарегистрируйтесь как суперпользователь. Обеспечьте, чтобы в данной системе имелся какой-нибудь пустой каталог с приблизительно 250 Мбайт доступного дискового пространства.
Вставьте компакт-диск, помеченный Solaris 8 OS Installation в привод CD- ROM, позволяя void автоматически монтировать устройство. Измените свой каталог на каталог монтирования, как показано в примере:
cd /cdrom/cdromO/sO/Solaris_8/Tools
Для установки загрузочного сервера воспользуйтесь командой setup_install_server. Опция -Ь этой команды обеспечивает копирование программного обеспечения запуска с компакт-диска Solaris на локальный диск. Введите следующую командную строку:
./setup_install_server -Ь <boot_dir_-path>
где опция -Ь определяет, что данная система устанавливается в качестве загрузочного сервера, a <boot_dir jath> определяет каталог, куда копируется образ ' данного компакт-диска. Вы можете подставить маршрут к любому каталогу, пока данный маршрут пригоден для совместного использования через сеть.
Например, следующая команда копирует информацию об архитектуре ядра операционной системы в каталог/export/jumpstart:
./setup_install_server -Ь /export/jumpstart
Система отвечает следующим образом:
Verifying target directory.....
Calculating spaoe required for the installation boot image
Copying Solaris_8 Tools hierarchy...
Install Server setup complete
Приведенное ниже сообщение об ошибке обозначает, что в данном каталоге недостаточно свободного места для инсталляции необходимых файлов:
ERROR: Insufficient space to copy Install Boot image
152691 necessary - 69372 available.
Вам необходимо либо произвести чистку файлов в этой файловой системе, чтобы высвободить дисковое пространство, либо выбрать какую-нибудь другую файловую систему.
Если целевой каталог не пустой, вы увидите следующее сообщение об ошибке:
The target directory /export/jumpstart is not empty. Please choose an empty directory or remove all files from the specified directory and run this program again.
Если на экране не появилось никаких сообщений об ошибках, то загрузочный сервер установлен. Этот загрузочный сервер будет обрабатывать все запросы загрузки на данной подсети. Клиентская система может быть загружена только с загрузочного сервера, который находится с ней на одной и той же подсети. Если у вас имеются клиенты JumpStart на других подсетях, то необходимо создать загрузочный сервер на каждой из них. Инсталляционная программа будет создавать подкаталог с именем Solaris_8 в каталоге <boot_dir_path>.
Инсталляционный сервер
Как было пояснено в предыдущем разделе, загрузочный и инсталляционный серверы обычно являются одной и той же вычислительной системой. Исключение составляет лишь случай, когда клиент, на котором инсталлируется операционная система Solaris 8, находится в разных подсетях с инсталляционным сервером, и тогда в подсети клиента требуется отдельный загрузочный сервер.
Инсталляционный сервер - это сетевая система, предоставляющая образы компактдисков Solaris 8, с которых вы можете инсталлировать операционную систему на другой системе в данной сети. Вы можете создать инсталляционный сервер посредством копирования образов инсталляционных носителей Solaris на жесткий диск данного сервера.
Путем копирования образов этих компакт-дисков на жесткий диск данного сервера вы даете возможность использовать единый инсталляционный сервер для предоставления образов компакт-дисков Solaris 8 многочисленных релизов операционной системы, включая образы для различных аппаратных платформ. Например, инсталляционный сервер платформы SPARC может предоставить:
Ф Образ первого из двух компакт-дисков Solaris 8 Software на платформе SPARC
Ф Образ второго из двух компакт-дисков Solaris 8 Software на платформе SPARC Ф Образ компакт-диска Solaris 8 Languages на платформе SPARC
а также:
Ф Образ первого из двух компакт-дисков Solaris 8 Software на платформе Intel
Ф Образ второго из двух компакт-дисков Solaris 8 Software на платформе Intel
Ф Образ компакт-диска Solaris 8 Languages на платформе Intel
Установка сервера в качестве как загрузочного, так и инсталляционного
В настоящем разделе предполагается, что все системы находятся в одной и той же подсети, а загрузочный и инсталляционный серверы будут установлены на одной и той же системе.
Первым этапом является копирование образа инсталляционного компакт-диска Solaris 8 на данный сервер; для этого выполните следующие операции: Вставьте инсталляционный компакт-диск операционной системы Solaris 8 ■ OS Installation в привод CD-ROM и позвольте void автоматически смонтировать его. Перейдите в каталог Tools на смонтированном компакт-диске:
cd /cdrom/cdromO/sO/Solaris_8/Tools
Воспользуйтесь командой setup_install_server для инсталляции программного обеспечения на жесткий диск. Синтаксис команды setup_install_server выглядит следующим образом:
./setup_install_server <install_dir_path>
здесь <install_dirjath> определяет маршрут к каталогу, куда будет скопирован образ данного компакт-диска. Этот каталог должен быть пустым и принятым для совместного использования, чтобы в процессе инсталляции JumpStart клиент мог бы получить доступ к данному каталогу через сеть. Многие системные администраторы предпочитают помещать образы компакт-дисков на загрузочных и инсталляционных серверах в каталог /export/install. ' Это вопрос персональных предпочтений; просто убедитесь в том, что целевой каталог является пустым, предназначен для совместного использования и имеет приблизительно 1 Гбайт доступного дискового пространства.
Для инсталляции программного обеспечения операционной среды в каталог /export/jumpstart выдайте следующую команду:
./setup_install_server /export/jumpstart
Система отвечает следующим образом:
Verifying target directory...
Calculating space required for the installation boot image
Copying Solaris_2.8 Tools hierarchy...
Install Server setup complete
Извлеките это компакт-диск и вставьте первый из двух компакт-дисков, помеченных Solaris 8 Software, в привод CD-ROM, позволяя использовать void для автоматического монтирования компакт-дисков.
Перейдите в каталог Tools на смонтированном компакт-диске, как показано:
cd /cdrom/cdromO/sO/Solaris_8/Tools
Запустите сценарий add_to_install_server для инсталляции дополнительного программного обеспечения в инсталляционный каталог сервера, который задан аргументом <install_dirjpath>\
./add_to_install_server <install_dir_path>
Например, приведенная команда копирует программное обеспечение в каталог/export/jumpstart:.
./add_to_install_server /export/jumpstart
Система отвечает следующими сообщениями:
The following Products will be copied to
/export/jumpstart/install/Solaris_8/Product:
Solaris_l_of_2
If only a subset of products is needed enter
Control-C and invoke ./add_to_install_server with the -s option.
Checking required disk space...
Copying the Early Access products...
202847 blocks
Processing completed successfully.
После проверки наличия требуемого дискового пространства данный образ копируется с компакт-диска на жесткий диск. Когда эта инсталляция закончится, повторите тот же самый процесс для второго из двух компакт-дисков Solaris 8 Software и дисков Solaris 8 Languages.
После копирования компакт-дисков Solaris, вы можете воспользоваться командой patchadd -с для наложения заплат на образ компакт-диска Solaris, находящийся на жестком диске инсталляционного сервера, именно для того, чтобы не пришлось после завершения инсталляции накладывать эти заплаты индивидуально.
Конфигурационный сервер
Если вы отрабатываете пользовательские инсталляции JumpStart для систем, объединенных в сеть, то должны создать на сервере каталог, который называется конфигурационным. Этот каталог содержит все существенные конфигурационные файлы пользовательской JumpStart, такие как файл правил, файл rules.ok, файл класса, сценарий проверки, а также необязательные начальный и конечный сценарии.
Тот сервер, на котором находится конфигурационный каталог JumpStart, носит название конфигурационного сервера. Обычно это та же самая система, которая используется в качестве инсталляционного и загрузочного серверов, однако это может быть и совершенно другой сервер. Владельцем указанного конфигурационного каталога на конфигурационном сервере должен быть суперпользователь, и для этого каталога значение полномочий должно быть установлено равным 755.
Установка конфигурационного сервера
Установка конфигурационного сервера
Для установки конфигурационного сервера выполните следующие операции:
Зарегистрируйтесь как суперпользователь на системе, которая работает в качестве конфигурационного сервера.
Создайте где-нибудь на этом сервере конфигурационный каталог (например, /jumpstart).
Чтобы быть уверенным в том, что данный каталог может совместно использоваться в сети, отредактируйте файл /etc/dfs/dfstab и добавьте к нему следующий элемент:
share -F nfs -о ro,anon=0 /jumpstart
Выполните команду /etc/init.d/nfs.server start. Если данная система уже является сервером NFS, то вам необходимо только ввести команду shareall и нажать Enter.
Поместите файлы JumpStart (то есть, правила, rules.ok и файлы классов) в каталог /jumpstart. Файлы правил, rules.ok и файлы классов будут рассматриваться далее в настоящем разделе.
Для создания необходимого элемента в файле /etc/dfs/dfstab вы также можете воспользоваться сценарием add_install_client. Сценарий addJnstalJ cJient описывается в разделе, озаглавленном "Установка клиентов".
Установка конфигурационной дискеты
Альтернативой установке конфигурационного сервера является создание конфигурационной дискеты (предполагается, что система, на которой будет происходить инсталляция, оснащена приводом гибких дисков). Если вы используете дискету для пользовательских инсталляций JumpStart, то существенные конфигурационные файлы, такие как файл правил rules.ok, файлы классов, должны находиться в корневом каталоге на данной дискете. Дискета, содержащая конфигурационные файлы JumpStart, называется конфигурационной. Владельцем указанных файлов пользовательской JumpStart должен быть суперпользователь, и для этих файлов значение полномочий должно быть установлено равным 755.
Установка конфигурационной дискеты
Ниже описаны операции, которые необходимо выполнить для создания конфигурационного диска:
Отформатируйте данный гибкий диск, для чего введите следующую командную строку:
fdformat -V
Создайте на данном диске файловую систему UFS. Если ваша система использует менеджер томов, вставьте данный диск в привод, и он будет смонтирован автоматически.
Создайте на данном диске файловую систему с помощью команды newfs:
newfs /vol/dev/aliases/flcppyO
(Команда newfs рассматривается в главе 4).
Извлеките дискету из привода, для чего введите следующую команду: eject floppy
Вставьте отформатированную дискету в устройство.
Вы завершили создание гибкого диска, который может быть использован в качестве конфигурационного. Теперь вы можете создавать файл правил и файлы классов для аы- полнения пользовательских инсталляций JumpStart.
Файл правил
Файл правил представляет собой текстовый файл, содержащий правило для каждой группы систем, которые вы хотите инсталлировать автоматически. Каждое правило охватывает группу систем, основываясь на одном или нескольких системных атрибутах, и связывает каждую группу с некоторым файлом класса, который также представляет собой текстовый файл, определяющий, как программное обеспечение Solaris инсталлируется на каждой системе в данной группе.
После принятия решения о том, как вы хотите инсталлировать каждую группу систем на вашем сайте, необходимо создать файл правил для каждой конкретной группы систем, подлежащих инсталляции. Разрешенной версией файла правил, которую инсталляционная программа Solaris применяет для выполнения пользовательской инсталляции JumpStart, является rules.ok.
После создания файла правил проверьте его с помощью сценария check, для чего следует перейти в каталог /jumpstart и выдать команду check. Если сценарий check выполняется успешно, он создает файл rules.ok. В процессе пользовательской инсталляции JumpStart инсталляционная программа Solaris считывает файл rules.ok и пытается найти первое правило, которое имеет системный атрибут, соответствующий инсталлируемой системе. Если такое совпадение обнаружено, то инсталляционная программа использует файл класса, определенный в данном правиле, для инсталляции системы.
Ниже представлен пример файла правил для системы Sun Ultra. Вы сможете найти пример файла правил на инсталляционном сервере в каталоге <install_dir_patA>/SoIaris_8/Misc/ jumpstart sample. Здесь <install_dir jath> указывает каталог, который был определен с помощью сценария setup install server в процессе установки инсталляционного сервера.
Обратите внимание на то, что все строки в данном файле являются закомментированными. Эти строки представляют собой просто инструкции и примеры элементов, которые призваны помочь системному администратору создать правильный элемент. Последняя незаком- ментированная строка представляет собой правило, которое было добавлено к данному файлу для примера. Ее синтаксис будет описан позднее. Каждая строка в данной кодовой таблице содержит ключевое слово правила и допустимое значение для этого ключевого слова. Инсталляционная программа Solaris сканирует файл правил в направлении сверху вниз. Если эта программа сопоставит какое-нибудь незакомментированное ключевое слово правила и значение этого ключевого слова с какой-нибудь известной системой, она инсталлирует программное обеспечение Solaris, определенное файлом класса, который задан в соответствующем поле.
#
е(#)rules 1.12 94/07/27 SMI
'
* The rules file is a text file used to create the rules.ok file for
a custom Jumpstart installation. The rules file is a lookup table # consisting of one or more rules that define matches between system # attributes and profiles.
#
* This example rules file contains:
о syntax of a rule used in the rules file
о rule_keyword and rule_value descriptions
о rule examples
#
See the installation manual for a complete description of the rules file. #
#
############################################################################ #
RULE SYNTAX:
#
[!]rule_keyword rule_value [&& [!]rule_keyword rule_value]... begin \
profile finish
#
#
"[ ]" indicates an optional expression or field
#
". . ." indicates the preceding expression may be repeated
#
"SS" used to "logically AND" rule_keyword and rule_value pairs
#
together
# #
"!"indicates negation of the following rule_keyword
#
rule_keyworda predefined keyword that describes a general system
#
attribute. It is used with the rule_value to match a
# #
system with the same attribute to a profile.
#
rule_value a value that provides the specific system attribute
#
for the corresponding rule_keyword. A rule_value can
#
be text or a range of values (NN-MM).
#
To match a range of values, a system's value must be
# #
greater than or equal to NN and less than or equal to MM.
#
begina file name of an optional Bourne shell script
#
that will be executed before the installation begins.
#
If no begin script exists, you must enter a minus
# #
sign(-)in this field.
#
profilea file name of a text file used as a template by the
#
custom Jumpstart installation software that defines how
# #
to install Solaris on a system.
#
finisha file name of an optional Bourne shell script
#
that will be executed after the installation completes.
#
If no finish script exists, you must enter a minus sign
# #
(-) in this field.
#
Notes:
#
1.You csn add comments after the pound sign (#) anywhere on a line.
#
2.Rules are matched in descending order: first rule through the
#
last rule.
#
3.Rules can be continued to a new line by using the backslash (\)
#
before the carriage return.
#
4.Don't use the "*" character or other shell wildcards, because the
####rules file is interpreted by a Bourne shell script.
#
#
#
#
#
############################################################################# #
RULE_KEYWORD AND RULE_VALUE DESCRIPTIONS #
#
rule_keyword rule_value Type rule_value Description
#
amy minus
sign (-) always matohes
#
arch text
system's architecture type
#
domainname
text system's domain name
#
disksize
text ramge system's disk size
#
disk device name (text)
#
disk size (MBytes ramge)
#
hostname
text system's host name
#
installed
text text system's installed version of Solaris
#
disk device name (text)
#
OS release (text)
#
karch
text system's kernel architecture
#
memsize
ramge system's memory size (MBytes ramge)
#
model text
system's model number
#
network
text system's IP address
#
totaldisk
ramge system's total disk size (MBytes ramge)
# #
############################################################################
# # RULE EXAMPLES #
The following rule matches only one system:■
thostname sample_host - host_class set_root_pw
The following rule matches any system that is on the 924.222.43.0 # network and has the sun4u kernel architecture:
Note: The backslash (\) is used to continue the rule to a new line.
«network 924.222.43.0 44 \
karch sun4o - net924_sun4u -
The following rule matches any spare system with a c0t3d0 disk that is # between 400 to 600 MBytes and has Solaris 2.1 installed on it:
arch spare 44 \
*disksize c0t3d0 400-600 44 \
installed c0t3d0s0 solaris_2.1 - upgrade -
The following rule#arch ±386 x86-begin#The following ruleThe following rule#arch ±386 x86-begin#The following rulematches all x86 systems x86-class -matches any system:matches all x86 systems x86-class -matches any system:#any - - any_machine - #
The following rule
#arch ±386 x86-begin
#
The following rule
The following rule
#arch ±386 x86-begin
#
The following rule
matches all x86 systems x86-class -
matches any system:
matches all x86 systems x86-class -
matches any system:
# END RULE EXAMPLES
#
#
karch sun4u - basic_prof
В таблице 21.2 описывается синтаксис, которому должен удовлетворять данный файл правил.
ПолеОписание
[]rule_keywordrule_value&&<begin>profile>[]rule_keywordrule_value&&<begin>profile>Используйте этот символ перед ключевым словом правила, чтобы обозначить отрицание.
[]
rule_keyword
rule_value
&&
<begin>
profile>
[]
rule_keyword
rule_value
&&
<begin>
profile>
Используйте эти символы для того, чтобы обозначить какое-нибудь необязательное выражение или поле.
Используйте эти символы для того, чтобы обозначить, что предыдущее выражение может быть повторено.
Это предопределенное ключевое слово, которое описывает какой-нибудь общий системный атрибут, такой как имя хоста (ключевое слово hostname) или размер памяти системы (ключевое слово memsize). Это поле используется совместно с полем rule_value для сопоставления системы, имеющей аналогичный атрибут, с профилем. Полный перечень значений поля rule_keyword представлен в таблице 21.3.
Предоставляет значение конкретного атрибута системы для соответствующего поля rule_keyword. Полный перечень значений поля rule_value представлен в таблице 21.3.
Используйте эти символы для того, чтобы объединить пары "ключевое слово правила - значение правила" в одном и том же правиле (логическое "И"). В процессе пользовательской инсталляции JumpStart система должна соответствовать каждой такой паре в правиле, прежде чем она будет признана соответствующей правилу в целом.
Это имя необязательного сценария командного процессора Bourne, который может быть выполнен перед началом инсталляции. Если никакого начального сценария не существует, то вы должны поставить в этом поле знак минус (-). Все начальные сценарии должны находиться в каталоге JumpStart. Более подробная информация по этому сценарию представлена в разделе, который озаглавлен "Начальный и конечный сценарии”.
Это имя файла класса, который представляет собой текстовый файл, определяющий, как программное обеспечение Solaris инсталлируется на данной системе, если эта система соответствует данному правилу. Информация в файле класса состоит из ключевых слов и соответствующих им значений. Все файлы классов должны находиться в каталоге JumpStart. Файлы классов описываются в разделе, который озаглавлен "Создание файлов классов и ключевые слова такоих файлов".
Продолжение таблицы 21.2
ПолеОписание
<finish>Это имя необязательного сценария командного процессора Bourne, кото
рый может быть выполнен после завершения инсталляции. Если никакого конечного сценария не существует, то вы должны поставить в этом поле знак минус (-). Все конечные сценарии должны находиться в каталоге JumpStart. Более подробная информация по этому сценарию представлена в разделе, который озаглавлен "Начальный и конечный сценарии".
Файл правил должен иметь следующее:
^ По крайней мере, одно правило
^ Имя "rules"
^ По крайней мере, ключевое слово правила, значение правила и соответствующий профиль
^ Знак минус (-) в полях begin и finish, если эти поля не содержат элементов
Файл правил должен быть сохранен в каталоге JumpStart, его владельцем должен быть суперпользователь, и для этого файла должно быть установлено значение полномочий, равное 644.
В файле rules.ok разрешается следующее:
^ Комментарий после символа # в любом месте строки. Если некоторая строка начинается с символа #, то вся эта строка представляет собой комментарий. Если символ # задан в середине некоторой строки, то все после символа # представляет собой комментарий.
^ Наличие пустых строк.
^ Правила, которые занимают несколько строк. Вы можете либо позволить правилу перейти на новую строку, либо продолжить правило в новой строке, поставив символ обратной косой черты (\) перед нажатием Enter.
В таблице 21.3 описываются различные значения полей rule_keyword и rule value, которые были введены ранее.
Таблица 21.ЗОписания полей rulejkeyword игиГе_уа1ие
Поле rule_keyword
Поле rule_value
Описание
Любое слово
Знак минус (-)
Соответствие достигается всегда.
arch
processor_type
Допустимые значения для поля перечисляются далее таблице:
Platform SPARC х86
processor_type spare i386
Сопоставляется тип процессора системы. Тип процессора системы определяется с помощью команды uname -р.
domainname
domain_name
Сопоставляется доменное имя системы, которое контролирует то, как служба имен определяет информацию. Если ваша система уже инсталлирована, то для определения ее доменного имени следует воспользоваться командой domainname.
disksize
<disk_name> <size_range>.
<disk_name> Имя диска задается либо в форме c?t?d?
Сопоставляется емкость диска системы (в Мбайт). Пример задания значения: disksize c0t3d0 1000-2000. В этом при-
Продолжение таблицы 21.3
Поле rule_keyword
Поле rule_value
Описание
например c0t3d0, либо с помощью специальрого слова rootdisk. Если используется значение rootdisk, то сопоставляемый диск определяется в следующем порядке: 1. Диск, который содержит предварительно инсталлированный загрузочный образ (новая система с архитектурой SPARC, для которой производителем была выполнена инсталляция JumpStart). 2. Диск c0t3d0s0, если таковой существует.
3. Первый доступный диск (поиск выполняется в принятой ядром операционной системы последовательности). 4. <size_range> - по емкости диска, которая должна быть задана в виде диапазона значений в Мбайт (в форме хх-хх).
мере делается попытка сопоставить систему, у которой емкость диска находится в диапазоне от 1 до 2 Гбайт. Примечание: при вычислении значения <size_range> не забывайте, что один мегабайт равен 1048576 байт. Диск может рекламироваться как имеющий емкость"535 Мбайт", однако на самом деле он может иметь толь- 510 миллионов байт дискового пространства. Инсталляционная программа Solaris вид иг диск емкостью "535 Мбайт" какдиск емкостью 510 Мбайт, поскольку 535000000/ 1048576 = 510. Таким образом, диск емкостью "535 Мбайт" может не соответствовать аргументу <size_range>, лежащему в диапазоне от 530 до 550 Мбайт.
hostaddress
<IP-address>
Сопоставляется IP-адрес системы.
hostname
<host-name>
Сопоставляется имя хоста системы. Если ваша система уже инсталлирована, то для определения имени ее хоста следует воспользоваться командой uname -п.
installed
<slice> <version> <slice> - это имя части диска, которое задается либо в форме c?t?d?s?, например c0t3d0s5, либо с помощью специальных слов any или rootdisk. Если используется значение any, то все диски данной системы будут приве- ряться на предмет соответствия (сопоставление выполняется в принятой ядром операционной системы последовательности). Если используется значение rootdisk, то соответствующий диск определяется в следующем порядке: 1. Диск, который содержит предварительно инсталлированный загрузочный образ (новая система с архитектурой SPARC, для которой производите-
Сопоставляется диск, который содержит корневую файловую систему, соответствующую конкретной версии программного обеспечения Solaris. Пример задания значения: installed c0t3d0s1 Solaris_2.7. В этом примере делается попытка сопоставить систему, у которой на диске c0t3d0s1 имеется корневая файловая система операционной среды Solaris 2.7.
Поле rule_keyword
Поле mle_value
Продолжение таблицы 21.3
Описание
лем была выполнена инсталляция JumpStart).
2. Диск c0t3d0a0, если таковой существует. 3. Первый доступный диск (поиск выполняется в принятой ядром опврвционной системы последовательности).
4. <version> - это наименование версии: Soleris_2.x, либо специальные слове any или upgrade. Если применяется значение any, то сопостввляется любой релиз опервционной системы Solaris или SunOS. Если используется знвчвние upgrade, то сопоставляется любой обновляемый релиз Solaris 2.1 илиболве поздний.
karch
<p!atform_group>. Допустимыми являются значения sun4d, sun4c, sun4m, sun4u, I86pc и prep.
Сопостввляется группа вппаратных платформ системы. Если ваша система уже инсталлирована, то для определения ее группы аппаратных платформ следует воспользоваться командой arch -к или командой uname -m.
memsize
<physical_mem>. Значение должно быть задано в виде диапазона значений (в форме хх-хх) или в виде одиночного значения в Мбайт
Сопоставляется размер физической памяти системы (в Мбайт). Пример задания значения: memBizB 64-128. В этом примере делается попытке сопоставить систему, у которой рвзмвр физической пв- мяти находится в дивпазонв от 64 до 128 Мбайт. Если ввшв системе уже инстал- лироввна, то для определения ее размере физической памяти следует воспользоваться командой prtconf (ато- рая строка выводе).
model
<pletform_name>
network
<network_num>
Сопостввляется имя вппаратной платформы системы. Допускается любое разрешенное имя аппаратной платформы. Если веша система уже инсталлирована, то для определения имени ее аппаратной платформы следует воспользоваться командой ипвтв -I или командой prtconf (пятая строка вывода). Примечание: Если аргумент <plBtform_namB> содержит пробелы, вы должны заключить его в прямые одиночные кавычки. Например: 'SUNW, Ultra-510'.
Сопоставляется сетевой номер системы, который инсталляционная программа Solaris определяет посредством выполне-
Продолжение таблицы 21.3
Поле rule keyword
Поле rule_value Описание
ния логической операции "И" между IP- адресом данной системы и маской подсети. Пример задания значения: network 193.144.2.1. В этом примере делается попытка сопоставить систему, IP-адрес которой 193.144.2.0 (если маска подсети 2SS.2SS.2SS.0).
osname
<Solaris_2.x>Сопоставляется версия программного
обеспечения Solaris, которое уже инстал-
лировано а системе. Пример задания значения: osname Solaris_2.7. В этом примере делается попытка сопоставить систему, на которой уже инсталлировано программное обеспечение Solaris_2.7.
totaldisk<size_range>. Значениедолжно быть задано а виде диапазона (в форме хх-хх) в Мбайт.totaldisk<size_range>. Значениедолжно быть задано а виде диапазона (в форме хх-хх) в Мбайт.Сопоставляется суммарная емкость дискового пространства системы (в Мбайт). Суммарная емкость дискового пространства включает все эксплуатируемые диски, присоединенные к данной системе. Пример задания значения: totaidiek 10002000. В этом примере делается попытка сопоставить систему, у которой суммарная емкость дискового пространства находится в диапазоне от 1 до 2 Гбайт.
totaldisk<size_range>. Значение
должно быть задано а виде диапазона (в форме хх-хх) в Мбайт.
totaldisk<size_range>. Значение
должно быть задано а виде диапазона (в форме хх-хх) в Мбайт.
В процессе пользовательской инсталляции JumpStart инсталляционная программа Solaris пытается установить соответствие между инсталлируемой системой и правилами в файле rules.ok в следующей последовательности - от первого правила к последнему. Совпадение с правилом возникает в том случае, когда совпадут все системные атрибуты инсталлируемой системы, которые определены данным правилом. Как только для какой-нибудь системы установлено совпадение с правилом, инсталляционная программа Solaris прекращает чтение файла rules.ok и начинает инсталляцию программного обеспечения, основываясь на файле класса для совпавшего правила.
Вот несколько примеров правил:
karch sun4u - basic_prof -
Настоящее правило определяет, что инсталляционная программа Solaris должна автоматически инсталлировать любую систему с группой аппаратных платформ sun4u, основываясь на информации, заданной в файле класса по имени basic_prof. Начальный или конечный сценарий в данном случае отсутствует.
hostname pyramid2 - ultra_class -
Настоящее правило сопоставляет систему в сети по имени pyramid!. Файл класса, который будет использоваться, называется ultra_class. Начальный или конечный сценарий в данном случае также не задается.
network 192.168.0.0 tt ! model 1SUNW,Ultra-5_10' - net_class \ set_root_passwd
Третьему правилу соответствует любая система в данной сети, которая не является системой Ultra 5 или Ultra 10. Файл класса, который будет использоваться, называется netciass. Конечный сценарий, который будет выполняться, называется set_root_passwd.
any - - generic_class -
В последнем примере сравнивается любая система. Файл класса, который будет использоваться, называется generic_ciass, начальный или конечный сценарий в данном случае не применяется.
Проверка файла правил
Прежде чем файл правил сможет быть использован, вы должны выполнить сценарий check для того, чтобы убедиться в корректности установки этого файла. Если все правила являются допустимыми, создается файл rules.ok.
Для проверки файла правил следует воспользоваться сценарием check, который размещается в каталоге <install_dir_pafft>/Solaris_8/Misc/jumpstart_sample на инсталляционном сервере.
Измените имя этого каталога на имя каталога JumpStart и выполните сценарий check для проверки файла правил:
<install_dir_path>/Solaris_8/Misc/jumpstart_sample/check \
[-р path] [-г file_name]
Cinstall dir_path> - это каталог, который был указан используя сценарий setup_install_server, когда устанавливался инсталляционный сервер.
Опции сценария check описываются в таблице 21.4.
Опция
Описание_
-р <path>
Проверяет файл правил при помощи сценария check из заданного образа компакт-диска Solaris 8 вместо сценария check из используемой вами системы. Аргумент <path> - это имя маршрута к инсталляционному образу Solaris на локальном диске или имя маршрута смонтированного компакт-диска Solaris. Используйте эту опцию для выполнения самой последней версии, чтобы увидеть, если на ваша системе запускается какая-нибудь из предыдущих версий Solaris.
-г <file name>
Задает некоторый файл правил, отличный от файла с именем "rules". Используя данную опцию, вы можете проверить допустимость какого- нибудь правила, прежде чем интегрировать его в файл правил. При использовании данной опции файл rules.ok не создается.
Когда вы используете сценарий check для проверки файла правил, происходят следующие события:
Проверяется синтаксис файла правил. Сценарий check убеждается, что ключевые слова правил являются допустимыми и в каждом правиле определены поля <begin>, <class> и <finish>.
Если в файле правил никаких ошибок не обнаружено, то проверяется синтаксис каждого файла класса, определенного в данном файле правил.
Если и здесь никаких ошибок не обнаружено, то сценарий check создает файл rules.ok из данного файла правил, удаляя при этом все комментарии и все пус-
тые строки, сохраняя все правила и добавляя в конец файла следующую строку комментария:
version=2 checksum=< num>
При запуске сценария check он сообщает о том, что проверяет допустимость данного файла правил и каждого файла класса. Если никаких ошибок зафиксировано не было, то данный сценарий формирует следующее сообщение:
The custom JumpStart configuration is ok.
(Пользовательская конфигурация JumpStart в норме).
Ниже приведен пример некоторого сеанса, в котором используется сценарий check для проверки файла правил и файла класса. Файлу правил временно присвоено имя "rulestest", файл класса имеет имя "basic_prof", а сценарий check используется с опцией -г. При наличии опции -г файл rules.ok не создается, а только выполняется проверка файла rulestest.
#/export/jumpstart/install/Solaris_8/Mise/jumpstart_sample/ \ check -r /tmp/rulestest
Validating /tmp/rulestest...
Validating profile basic_prof...
Error in file "/tmp/rulestest", line 113 any - - any_maine -
ERROR: Profile missing: any_maine
Обратите внимание, что в приведенном выше сообщении об ошибке используется термин profile (профиль). Повторим еще раз, что на экзамене фирмы Sun для обозначения этого понятия используется термин (файл класса).
В приведенном выше примере сценарий check обнаружил некорректную опцию. Вместо "any machine" ошибочно записано "anymaine". Сценарий check сообщает об этой ошибке.
В следующем примере отмеченная ошибка исправлена, файл rulestest скопирован в файл rules, и повторно запущен сценарий check:
#ср rulestest rules
#/export/jumpstart/install/Solaris_8/Misc/jumpstart_sample/check Validating /tmp/rules...
Validating profile basic_prof...
Validating profile any_machine...
The custom JumpStart configuration is ok.
При запуске сценария check он сообщает о том, что проверяет допустимость данного файла правил и каждого файла класса. Если никаких ошибок зафиксировано не было, то данный сценарий формирует сообщение "The custom JumpStart configuration is ok". ("Пользовательская конфигурация JumpStart в порядке"). Теперь файл правил проверен.
После того как будет создан файл rules.ok, убедитесь, что его владельцем является суперпользователь и значение полномочий доступа для него установлено равным 644.
Начальный и конечный сценарии .
Начальный сценарий представляет собой определяемый пользователем сценарий оболочки, или командного процессора Bourne, который располагается в конфигурационном
каталоге JumpStart на конфигурационном сервере, определен в файле правил и выполняет свои задачи перед тем, как программное обеспечение Solaris инсталлируется на данной системе. Вы можете установить начальные сценарии для выполнения следующих задач:
^ Выполнение резервного копирования какой-нибудь файловой системы перед ее обновлением
^ Сохранение файлов в каком-нибудь безопасном месте
^ Загрузка других приложений
Будьте осторожны, чтобы не задать в этом сценарии что-нибудь такое, что может воспрепятствовать монтированию файловых систем к точке монтирования /а в процессе первоначальной инсталляции или обновления. Если инсталляционная программа Solaris не сможет смонтировать файловые системы к точке монтирования /а, возникнет ошибка, и инсталляция завершится аварийно.
Вывод начального сценария поступает в файл /var/sadm/begin.log.
Владельцем начального сценария должен быть суперпользователь, и значение полномочий доступа для него должно быть установлено равным 744.
В дополнение к начальным сценариям вы также можете иметь конечные сценарии. Конечный сценарий представляет собой определяемый пользователем сценарий оболочки, или командного процессора Bourne, который определен в файле правил и выполняет свои задачи после того, как программное обеспечение Solaris инсталлируется на данной системе, однако перед тем, как данная система перезапускается. Вы можете установить конечные сценарии для выполнения следующих задач:
^ Перемещение сохраненных файлов обратно на свое место
^ Добавление пакетов или заплат программного обеспечения
^ Установка пароля суперпользователя для данной системы
Вывод конечного сценария поступает в файл протокола, /var/sadm/finish.log.
При использовании для добавления заплат и пакетов программного обеспечения начальный и конечный сценарии могут гарантировать непротиворечивость данной инсталляция между всеми системами.
Создание файлов классов и ключевые слова таких файлов
Файл класса - текстовый файл, определяющий, как инсталлировать программное обеспечение Solaris на какой-нибудь системе. Каждое правило в файле правил определяет какой- нибудь файл класса, который указывает, как инсталлируется некоторая система при совпадении данного правила. Обычно вы создаете для каждого правила различные файлы классов; однако при этом один и тот же файл класса может быть использован более чем в одном правиле.
Файл класса состоит из одного или нескольких ключевых слов (эти ключевые слова описываются в следующих разделах). Каждое ключевое слово файла класса представляет собой некоторую команду, которая управляет одним из аспектов того, как инсталляционная программа Solaris устанавливает программное обеспечение на некоторой системе. Для создания файла класса в конфигурационном каталоге JumpStart на конфигурационном сервере применяется редактор vi или любой другой текстовый редактор. Вы можете создать новый файл
класса или отредактировать один из имеющихся примеров профилей, которые находятся в каталоге /cdrom/cdromO/sO/Solaris_2.8/Misc/jumpstart_sample на компакт-диске Solaris. Файл класса может иметь любое имя, однако это имя должно отражать способ, которым инсталлируется программное обеспечение Solaris на некоторой системе. Примерами имен файлов классов являются следующие имена: basicinstall, eng_profile и accntg__profile.
Файл класса должен иметь следующие обязательные реквизиты:
^ Ключевое слово install_type в качестве первого элемента
^ Только одно ключевое слово в строке
^ Ключевое слово root_device в том случае, если те системы, которые обновляются с использованием данного файла класса, содержат более одной корневой файловой системы, которые могут быть обновлены
В файле класса разрешается следующее:
^ Комментарий после символа # в любом месте строки. Если некоторая строка начинается с символа #, то вся эта строка представляет собой комментарий. Если символ # задан в середине некоторой строки, то все после символа # является комментарием.
^ Наличие пустых строк.
Файл класса формируется из ключевых слов и их значений. Они описываются в следующих разделах.
backup_media
Ключевое слово backup_media определяет носитель информации, который используется для выполнения резервного копирования файловых систем в том случае, если их необходимо перераспределить в процессе обновления из-за наличия проблем с дисковым пространством. Если для выполнения резервного копирования требуется несколько магнитных лент или дисков, то вам будет предложено вставлять их в процессе обновления. Синтаксис ключевого слова backup media выглядит следующим образом:
backup_media <type> <path>
Аргумент type может быть одним из ключевых слов, которые перечисляются в таблице 21.5.'
Ключевое слово Описание
!ocal_tape
Определяет локальный накопитель на магнитной ленте на обновляемой системе. Аргумент <path> должен представлять собой маршрут символьного (низкоуровневого) устройства данного накопителя на магнитной ленте, например, /dev/rmt/О.
local_diskette
Определяет локальный привод гибких дисков на обновляемой Системе. Аргумент <path> представляет собой маршрут для устройства локального привода гибких дисков, например, /dev/rdisketteO. Дискета должна быть отформатирована.
local_filesystem
Определяет локальную файловую систему на обновляемой системе. Аргумент <path> должен представлять собой маршрут блочного устройства для некоторой части диска или абсолютное имя маршрута для файловой системы, которая монтируется с помощью файла /etc/vfetab. Примерами значений аргумента <path> служат /dev/dsk/c0t0d0B7 и /home.
Ключевое словоremote_filesystemКлючевое словоremote_filesystemremote_systemremote_systemПродолжение таблицы 21.5 Описание
Ключевое слово
remote_filesystem
Ключевое слово
remote_filesystem
remote_system
remote_system
Определяет какую-нибудь файловую систему NFS на дистанционной системе. Аргумент <path> должен включать имя или IP-адрес хоста дистанционной системы и абсолютное значение маршрута для данной файловой системы NFS. Файловая система NFS должна иметь доступ на чтение и запись. Примером значения аргумента <path> служит sparci :/home.
Определяет каталог на дистанционной системе, до которого можно добраться с помощью дистанционной оболочки (rsh). Обновляемая система должна иметь доступ к указанной дистанционной системе через ее файл .rhosts (на дистанционной системе). Аргумент <path> должен включать имя дистанционной системы и абсолютный маршрут к этому каталогу. Если регистрационное имя пользователя не задано, то предпринимается попытка зарегистрироваться в системе с привилегиями суперпользователя. Примером значения аргумента <path> служит bcalkins@sparc1:/home.
Вот несколько примеров строк файла класса с ключевым словом backup media:
backup_media local_tape /dev/rmt/О
backup_media local_diskette /dev/rdisketteO
backup_media local_filesystem /dev/dsk/c0t3d0s7
backup_media local_filesystem /export
backup_media remote_filesystem sparcl:/export/temp
backup_media remote_system bcalkins@sparcl:/export/temp
Ключевое слово backup media должно быть использовано с опцией upgrade только в том случае, когда необходимо перераспределение дискового пространства.
boot_device
Ключевое слово boot_device определяет устройство, на котором инсталляционная программа устанавливает корневую файловую систему, и, как следствие, устройство, с которого будет выполняться запуск данной системы. Значение eeprom также позволяет вам обновить EEPROM (Electrically erasable programmable read-only memory-электрически стираемое программируемое ПЗУ) системы, если вы изменяете ее текущее устройство запуска таким образом, чтобы система могла автоматически стартовать с нового устройства.
Синтаксис ключевого слова boot_device выглядит следующим образом:
boot_device <device> <eeprom>
Значения аргументов device и eeprom описываются в таблице 21.6.
Таблица 21.6 Ключевые слова booLdevice, -
Ключевое слово Описание
<device>
Определяет устройство запуска путем задания некоторой части диска, такой как cOMdOsO. В качестве значения этого аргумента может использоваться ключевое слово existing, которое помещает корневую файловую систему на существующее устройстао запуска, или ключевое слово any, которое позволяет инсталляционной программе самой выбрать место расположения корневой файловой системы.
Продолжение таблицы 21.6
Ключевое слово Описание.
<eeprom>Определяет, хотите ли вы выполнить обновление EEPROM данной сис
темы в целях указания заданного устройства запуска. Если <eeprom> принимает значение update, то инсталляционной программе будет приказано обновить EEPROM данной системы для указания заданного устройства запуска; значение preserve обеспечивает неизменность устройства запуска в EEPROM данной системы. Пример задания значения: boot_device cOtldOsO update.
Инсталляционная программа устанавливает корневую файловую систему на устройство cOtldOsO и обновляет EEPROM для обеспечения автоматического выполнения запуска с нового устройства.
client_arch
Ключевое слово client arch обозначает, что данный сервер операционной системы поддерживает некоторую группу аппаратных платформ, отличную от его собственной группы. Если вы не задаете ключевое слово client arch, то любой бездисковый клиент или система типа Solstice AutoClient, которые используют данный сервер операционной системы, должны иметь ту же самую группу аппаратных платформ, что и у сервера. Ключевое слово client arch может быть применено только в том случае, если для ключевого слова system_type установлено значение server. Вы должны задать каждую группу аппаратных платформ, поддержку которой вы хотите обеспечить со стороны сервера операционной системы.
Синтаксис ключевого слова client arch выглядит следующим образом:
client_arch karch_value [ karch_value... ]
Допустимыми значениями аргументаkarch являются sun4d, sun4c, sun4m, sun4u и i86pc.
Ниже приведен пример строки файла класса с ключевым словом client arch:
client_arch sun4m
client_root
Ключевое слово client root определяет размер дискового пространства (в Мбайт), выделяемого для корневой файловой системы каждого клиента. Если вы не зададите ключевое слово client root в профиле сервера, то инсталляционная программа выделит по 15 Мбайт дискового пространства для корневой файловой системы каждого клиента. Аргумент client root используется совместно с ключевым словом num_clients для определения того, сколько всего дискового пространства необходимо зарезервировать для файловой системы /export/root.
Синтаксис ключевого слова client root выглядит следующим образом:
client_root <root_size>
Значение аргумента root_size задается в Мбайт.
Ниже приведен пример строки файла класса с ключевым словом client_root:
client_root 20
При выделении дискового пространства для корневой файловой системы следует иметь в виду, что адекватным значением является 20 Мбайт. Значение 15 Мбайт представляет собой минимально требуемый размер этого дискового пространства. Любое значение свыше 20 Мбайт - это пустая трата дискового пространства.
client_swap
Ключевое слово client swap определяет размер области своппинга, или подкачки, в Мбайт, выделяемой для каждого бездискового клиента. Если вы не зададите ключевое слово client_swap, то инсталляционная программа выделит по 32 Мбайт дискового пространства для области своппинга. Суммарный размер физической памяти и области подкачки должен быть не менее 32 Мбайт. Если в каком-нибудь файле класса размер области подкачки не задан явным образом, то инсталляционная программа Solaris определяет максимальный размер, который может иметь файл подкачки, основываясь на размере физической памяти данной системы. Инсталляционная программа Solaris задает размер области подкачки не свыше 20 процентов от емкости диска, на котором размещается эта область, если только на этом диске не остается свободное пространство после размещения остальных файловых систем.
Синтаксис ключевого слова client swap выглядит следующим образом:
client_swap <swap_size>
Значение аргумента swap size задается в Мбайт.
Вот пример строки файла класса с ключевым словом client_swap:
client_swap 64
Приведенный пример определяет, что каждый бездисковый клиент имеет размер области своппинга, равный 64 Мбайт.
cluster
Ключевое слово cluster определяет, какую именно группу программного обеспечения следует добавить к системе. Эти группы программного обеспечения перечисляются в таблице 21.7.
Таблица 21.7 Группы программного обеспечения.
Группа программного обеспечения
Значение аргумента дгоир_пате
Ядро
XSUNWCreq
Система поддержки конечного пользователя
SUNWCuser
Система поддержки разработчика
SUNWCprog
Полный дистрибутив
SUNWCall
Полный дистрибутив плюс поддержка OEM
SUNWCXall (только для систем с архитектурой SPARC)
В профиле вы можете задать только одну группу программного обеспечения, и она должна быть задана перед другими ключевыми словами cluster и package. Если вы не задали группу программного обеспечения с помощью ключевого слова cluster, то по умолчанию на данной системе инсталлируется группа программного обеспечения поддержки конечного пользователя, SUNWCuser.
Синтаксис ключевого слова cluster выглядит следующим образом:
cluster <grroup_name>•
Вот пример строки файла класса с ключевым словом cluster:
cluster SUNWCall
В приведенном примере определяется, что должна быть инсталлирована группа программного обеспечения полного дистрибутива.
Ключевое слово cluster также может использоваться для определения того, должен ли некоторый кластер быть добавлен к группе программного обеспечения или удален из группы, которая была инсталлирована на данной системе. Аргументы add и delete определяют, должен ли заданный кластер быть добавлен или удален. Если вы не задали аргумент add или delete,то по умолчанию устанавливается add.
Синтаксис ключевого слова cluster выглядит в данном случае следующим образом:
cluster <cluster_name> [add I delete]
Аргумент cluster name должен быть задан в форме SUNWCname. Для просмотра детальной информации о кластерах программного обеспечения и об их именах запустите AdminTool на инсталлированной системе и выберите Browse, Software.
dontuse
Если вы не хотите, чтобы один или несколько дисков использовались инсталляционной программой Solaris, на помощь придет ключевое слово dontuse. По умолчанию инсталляционная программа использует все функционирующие диски системы. Аргумент <disk_name> должен быть задан в форме c?t?d? или c?d?, например, cOtOdO.
Синтаксис ключевого слова dontuse выглядит следующим образом:
dontuse disk_name [disk_name...]
Приведен пример строки файла класса с ключевым словом dontuse:
dontuse cOtOdO cOtldOdontuse cOtOdO cOtldOВы не можете задать в одном и том же файле класса ключевые слова usedisk и dontuse.Вы не можете задать в одном и том же файле класса ключевые слова usedisk и dontuse.
dontuse cOtOdO cOtldO
dontuse cOtOdO cOtldO
Вы не можете задать в одном и том же файле класса ключевые слова usedisk и dontuse.
Вы не можете задать в одном и том же файле класса ключевые слова usedisk и dontuse.
filesys
Ключевое слово filesys устанавливает инсталлируемую систему на автоматическое монтирование дистанционных файловых систем при ее запуске. Вы можете задавать ключевое слово filesys более одного раза.
Синтаксис filesys для монтирования дистанционных файловых систем выглядит следующим образом:
filesys <server>:<path> <server_address> <mount_-pt_nazne> [mount_options]Ключевые слова filesys описываются в таблице 21.8.filesys <server>:<path> <server_address> <mount_-pt_nazne> [mount_options]Ключевые слова filesys описываются в таблице 21.8.Ключевое словоКлючевое словоОписаниеОписание<server>:Это имя сервера, на котором находится дистанционная файловая сис<server>:Это имя сервера, на котором находится дистанционная файловая сис
filesys <server>:<path> <server_address> <mount_-pt_nazne> [mount_options]
Ключевые слова filesys описываются в таблице 21.8.
filesys <server>:<path> <server_address> <mount_-pt_nazne> [mount_options]
Ключевые слова filesys описываются в таблице 21.8.
Ключевое слово
Ключевое слово
Описание
Описание
<server>:Это имя сервера, на котором находится дистанционная файловая сис
<server>:Это имя сервера, на котором находится дистанционная файловая сис
тема. Не забудьте включить символ двоеточия (:).
<path>Имя точки монтирования дистанционной файловой системы.
<server_address>
iP-адрес сервера, заданный в виде <server>:<path>. Если на вашей сети не работает какая-нибудь служба имен, то это значение может быть занесено в файл /etc/hosts, но вы должны задать знак минус (-).
Ключевое слово Описание
Продолжение таблицы 21.8
[mount_options]
Одна или несколько опций монтирования, которые добавляются к элементу из файла /etc/vfstab для указанной точки монтирования. Если вам необходимо задать более одной опции монтирования, то эти опции должны быть разделены запятыми, но не пробелами. Пример задания опций монтирования: го,quota.
<mount_pt_name>Имя точки, к которой будет смонтирована дистанционная файловая си
стема.
Вот пример строки файла класса с ключевым словом filesys:
filesys zeus:/export/home/userl 192.9.200.1 /home ro,bg,intr
Ключевое слово filesys может также быть использовано в процессе инсталляции для создания локальных файловых систем; в этом случае синтаксис будет выглядеть по- другому:
filesys <slice> <size> [file_system] [optional_parameters]
Для аргумента <slice> могут использоваться значения, представленные в таблице 21.9.
ЗначениеЗначениеanyc?t?d?s? или c?d??zrootdisk.snanyc?t?d?s? или c?d??zrootdisk.snОписание
Значение
Значение
any
c?t?d?s? или c?d??z
rootdisk.sn
any
c?t?d?s? или c?d??z
rootdisk.sn
Эта переменная передает инсталляционной программе указание поместить данную файловую систему на любом диске.
Это часть диска, на которую инсталляционная программа Solaris помещает данную файловую систему, например, cOtOdOBO.
Это переменная, которая содержит значение для корневого диска данной системы, определяемого средствами инсталляционной программы Solaris. Суффикс sn указывает конкретную часть диска.
Для аргумента <size> могут использоваться значения, представленные в таблице 21.10.
ЗначениеЗначениеОписание
Значение
Значение
num
Размер файловой системы в Мбайт.
existing
Текущий размер существующей файловой системы.
auto
Размер файловой системы определяется автоматически в зависимости от выбранного программного обеспечения.
all
Для размещения файловой системы используется весь диск целиком. Если вы задаете это значение, то на указанном диске не могут быть размещены никакие другие файловые системы.
free
Оставшееся неиспользованное пространство на диске применяется для размещения файловой системы.
<start>:<size>
Размещение файловой системы задается явным образом. Аргумент <start> определяет номер цилиндра, с которого начинается данная часть диска, а аргумент <size> - количество цилиндров для этой части.
file_system - необязательный аргумент, указываемый в том случае, если для поля slice задано значение any или значение вида c?t?d?s?. Если аргумент file system не определен, то по умолчанию устанавливается значение unnamed (без имени), однако при этом вы не сможете задавать аргумент optional parameters.
Значения, которые могут быть использованы для аргумента file system, перечисляются в таблице 21.11.
ЗначениеОписание
<mount_pt_name>
Имя точки монтирования файловой системы, например, /opt.
<swap>
Заданная часть диска используется в качестве области подкачки.
<overlap>
Заданная часть (slice) определяется как представление целого диска. Значение <overlap> может быть задано в том случае, когда для аргумента <size> определено одно из значений existing, aii или startsize.
<unnamed>
Заданная часть диска определяется в качестве низкоуровневой части, поэтому эта часть не может иметь имени точки монтирования. Если аргумент fiie_system не определен, значение unnamed устанавливается по умолчанию.
<ignore>
Заданная часть диска не используется или не распознается инсталляционной программой Solaris. Указанное значение позволяет в процессе инсталляции игнорировать какую-нибудь файловую систему на некотором диске; таким образом, инсталляционная программа Solaris может создать новую файловую систему на том же самом диске с тем же самым именем. Значение ignore может быть использовано только в том случае, когда задается существующая разбивка.
В приведенном примере размер области подкачки устанавливается равным 64 Мбайт, и эта область инсталлируется на устройстве c0t3d0sl:
filesys c0t3d0sl 64 swap
В следующем примере размер файловой системы /usr определяется исходя из выбранного программного обеспечения, и, когда вы задаете значение any, инсталляционная программа самостоятельно определяет, на каком диске следует разместить эту файловую систему: filesys any auto /usr
Поле optional parameters может содержать в качестве своего значения одну из опций, перечисленных в таблице 21.12.
Таблица 21.12 0пцйи поля optionai_parameters ,
Опция
Описание
preserve
Файловая система на заданной части диска является сохраняемой. Значение preserve может быть задано только в том случае, когда для аргумента size задано значение existing, а для аргумента slice - значение c?t?d?s?.
mount_options
Одна или несколько опций монтирования, которые добавляются к элементу из файла /etc/vfetab для заданного значения mount_pt_name.
install_type
Ключевое слово install-type определяет, выполняется ли на данной системе первоначальная инсталляция или обновление. Ключевое слово install type должно быть первым ключевым словом файла класса в каждом профиле.
Синтаксис ключевого слова install—type выглядит следующим образом:
install—type [initial—install i upgrade]
Выберите либо значение initiaMnstall (первоначальная инсталляция), либо- upgrade (обновление).
Далее приведен пример строки файла класса с ключевым словом install_type:
install_type initial_install
geo
Ключевое слово geo вместе со следующим за ним аргументом locale определяют региональную локаль или докали, которые вы хотите инсталлировать в системе или добавить при ее обновлении. Синтаксис ключевого слова geo выглядит следующим образом:
део <1оса1е>
Значения,
ИЖЙИ
которые вы можете задать для <1оса1е>, перечисляются в таблице 21.13. атуйенгакиЖ||Й^||§Й^^
Значение
Описание.
N_Africa
C_America
Северная Африка, включая Египет
Центральная Америка, включая Коста-Рику, Сальвадор, Гватемалу, Мексику, Никарагуа и Панаму
N_America
S_America
Северная Америка, включая Канаду и Соединенные Штаты Америки
Южная Америка, включая Аргентину, Боливию, Бразилию, Чили, Колумбию, Эквадор, Парагвай, Перу, Уругвай и Венесуэлу
Asia
Азия, включая Японию, Южную Корею, Китай, Тайвань и Таиланд
Ausi
Австралия и Новая Зеландия
C_Europe
Центральная Европа, включая Австрию, Чехию, Германию, Венгрию, Польшу, Словакию и Швейцарию
E_Europe
Восточная Европа, включая Албанию, Боснию, Болгарию, Хорватию, Эстонию, Латвию, Литву, Македонию, Румынию, Россию, Сербию, Словению и Турцию
N_Europe
Северная Европа, включая Данию, Финляндию, Исландию, Норвегию и Швецию
S_Europe
W_Europe
Южная Европа, включая Грецию, Италию, Португалию и Испанию
Западная Европа, включая Бельгию, Францию, Великобританию, Ирландию и Нидерланды
M_East
Ближний Восток, включая Израиль
Полный перечень значений для <1оса1е> можно найти в руководстве по инсталляции Solaris 8 Advanced Installation Guide.
Вот пример строки файла класса с ключевым словом geo, где для аргумента <1оса1е> задано значение S_America:
geo S_America
isa_bits
Ключевое слово isa_bits определяет, какие пакеты программного обеспечения Solaris 8 будут инсталлированы: 64-разрядные или 32-разрядные. Синтаксис ключевого слова isa bits выглядит следующим образом:
isa bits <bit switoh>
Аргумент <bit_switch> представляет опцию 64 или 32, которую вы используете для обозначения того, какие пакеты программного обеспечения Solaris 8 будут инсталлированы: 64-разрядные или 32-разрядные. Если вы не устанавливаете это ключевое слово в данном файле класса, то JumpStart инсталлирует:
64-разрядные пакеты программного обеспечения на системах UltraSPARC (ТМ) 32-разрядные пакеты программного обеспечения на все остальных системах
Например, для задания того, что будут загружены только 32-разрядные пакеты программного обеспечения Solaris 8, используйте следующий элемент в файле класса:
isa_bits 32
layout_constraint
Ключевое слово layout_constraint определяет ограничение, которое должно учитываться при автоматическом размещении некоторой файловой системы в том случае, если необходимо ее перераспределение в процессе обновления из-за наличия проблем с дисковым пространством. Ключевое слово layout_constraint может быть использовано только для опции upgrade в том случае, если требуется перераспределение дискового пространства.
С помощью ключевого слова layout_constraint вы задаете файловую систему и ограничение, которое вы хотите наложить на нее.
Синтаксис ключевого слова layout constraint выглядит следующим образом:
layout_constraint <slice> <constraint> [mininnun_size]
Поле <slice> определяет часть диска (slice) той файловой системы, для которой задается ограничение. Это поле должно быть задано в форме c?t?d?s? или c?d?s?.
Опции для ключевого слова layout_constraint описываются в таблице 21.14.
Опция
Описание
changeable
Служба автоматического размещения может перенести данную файловую систему в другое место и может изменить ее размер.
Вы можете изменить размер данной файловой системы посредством задания значения опции minimum_size. Если вы пометили данную файловую систему как доступную для изменения с помощью опции changeable, а значение опции minimum_size не определено, то минимальный размер данной файловой системы устанавливается на 10 процентов больше, чем требуемый минимальный размер. Например, если минимальный размер файловой системы равен 100 Мбайт, то измененный размер может быть равен 110 Мбайт. Если задано значение опции minimum_size, то любое оставшееся свободным дисковое пространство (определяется как разность между исходным размером файловой системы и ее минимальным размером) используется для других файловых систем.
movable
Служба автоматического размещения может переместить файловую систему на другую часть того же самого диска или на какой-нибудь другой диск, и при этом ее размер остается неизменным.
available
Служба автоматического размещения может использовать все пространство данной файловой системы для перераспределения дискового пространства. В результате все данные этой файловой системы будут потеряны. Этаособенность может быть задано только для тех файловых систем, которые не монтируются с помощью файла /etc/vfetab.
Продолжение таблицы 21.14
Опция
Описание
collapse
Служба автоматического размещения перемещает (сворачивает) файловую систему в ее родительскую файловую систему.
Вы можете использовать данную опцию для сокращения количества файловых систем на некоторой вычислительной системе в процессе ее обновления. Например, если конкретная система имеет файловые системы /usr и /usr/openwin, то сворачивание файловой системы /usr/openwin переместит ее в файловую систему /usr (в ее родительскую файловую систему).
minimum_size
Это значение позволяет вам изменить размер какой-нибудь файловой системы посредством задания того желаемого размера, который вы хотите иметь после перераспределения дискового пространства в процессе автоматического размещения файловых систем. Размер файловой системы может, в конце концов, оказаться больше заданного, если к ней было добавлено нераспределенное дисковое пространство, однако этот размер никогда не может быть меньше, чем заданное вами значение. Вы можете использовать это необязательное значение только в том случае, если пометили данную файловую систему как доступ- ' ную для изменения с помощью опции changeable. Значение опции minimum_size не может быть меньше, чем необходимо данной файловой системе для ее существующего содержимого.
Ниже приведено layout_constraint.
несколько примеров строки файла класса с ключевым словом
layout_constraint c0t3d0sl changeable 200
Файловая система c0t3d0sl может быть перемещена в другое местоположение, а ее размер может быть изменен до величины, превышающей 200 Мбайт, но никогда не может быть меньше, чем 200 Мбайт.
layout_constraint c0t0d0s4 movable
Файловая система на части диска под названием c0t0d0s4 может быть перемещена на другую часть диска, однако ее размер остается неизменным.
layout_constraint c0t2d0sl collapse
c0t2d0sl перемещается в родительский каталог для сокращения общего количества файловых систем.
locale
Ключевое слово locale определяет, какие пакеты языков, или локалей, должны быть инсталлированы для заданного значения locale_name. Локаль определяет то, как отображается оперативная информация, такая как значения даты, времени, проверки правописания и денежной единицы для конкретного языка или географического региона. Таким образом, если вы желаете использовать английский язык в качестве языка ввода, однако при этом хотите денежную единицу Австралии, то можно выбрать значение ключевого слова locale для Австралии (en_AU) вместо значения английского языка (С).
Пакеты на английском языке устанавливаются по умолчанию. Вы можете задать ключевое слово locale для каждого языка или каждой локали, которые вам необходимо добавить к системе.
Синтаксис ключевого слова locale выглядит следующим образом:
locale locale_name
И по традиции пример строки файла класса с ключевым словом locale: locale es
В приведенном примере испанский определяется в качестве языкового пакета, который вы хотите инсталлировать.
num_clients
Когда инсталлируется какой-нибудь сервер, то выделяется дисковое пространство для корневой файловой системы и файловой системы своппинга каждого бездискового клиента данного сервера. Ключевое слово num clients определяет количество бездисковых клиентов, которых поддерживает сервер. Если вы не задали ключевое слово num clients, то дисковое пространство выделяется для пяти бездисковых клиентов.
Синтаксис ключевого слова num clients выглядит следующим образом:
num_clients client_num
Следующий пример демонстрирует строку файла класса с ключевым словом num_clients
num__clients 10
В приведенном примере дисковое пространство выделяется для десяти бездисковых клиентов.
package
Ключевое слово package определяет, должен ли какой-нибудь пакет быть добавлен или удален из группы программного обеспечения при ее инсталляции в системе. Требуемое действие задается с помощью значения add или delete. Если вы не задали ни одно из этих значений, то по умолчанию устанавливается add.
Синтаксис ключевого слова package выглядит следующим образом:
package package_name [add I delete]
Аргумент package_name должен быть задан в форме SUNWname.
Далее приведен пример строки файла класса с ключевым словом package:
package SUNWxwman delete
В приведенном примере пакет программного обеспечения SUNWxwman (страницы оперативного руководства по системе X Window) не инсталлируется на данной системе.
partitioning
Ключевое слово partitioning определяет, как в процессе инсталляции выполняется разбивка дисков на части для файловых систем. Если вы не задали ключевое слово partitioning, то устанавливается схема разбивки по умолчанию.
Синтаксис ключевого слова partitioning выглядит так:
. partitioning default I existing | explicit
Опции ключевого слова partitioning описываются в таблице 21.15.
Таблица 21.15 Опции ключевого слова partitioning ’ г 1
ОпцияОписание
defaultИнсталляционная программа Solaris выбирает диски и создает файло
вые системы там, куда инсталлируется заданное программное обеспечение. За исключением файловых систем, заданных с помощью ключевого слова filesys, первым выбирается корневой диск. Дополнительные диски используются в том случае, если заданное программное обеспечение не размещается на корневом диске.
existingИнсталляционная программа Solaris использует существующие файло
вые системы на дисках вычислительной системы. Все файловые системы, за исключением корневой и файловых систем /usr, /usr/openwin, /opt и /ver, сохраняются. Инсталляционная программа использует поле последней точки монтирования из суперблока файловой системы для определения того, точку монтирования какой именно файловой системы представляет данная часть диска. Если вы задаете в файле класса ключевое слово filesys вместе с partitioning, то для последнего ключевого слова должна быть задана опция existing.
explicitИнсталляционная программа Solaris использует диски и создает фай
ловые системы, заданные с помощью ключевого слова filesys. Если с помощью ключевого слова filesys вы задали только корневую файловую систему, то все программное обеспечение Solaris инсталлируется именно в корневой файловой системе. Когда вы применяете значение опции explicit в файле класса, то должны также использовать в нем ключевое слово filesys, чтобы указать, какие диски следует задействовать и какие файловые системы создавать.
root_device*
Ключевое слово root_device определяет корневой диск системы.
Синтаксис ключевого слова root device выглядит таким образом:
root_device slice
А вот и пример строки файла класса с ключевым словом root_device:
root_device c0t3d0s2
systemjype
Ключевое слово system type определяет тип инсталлируемой системы. Если вы не задали ключевое слово system type в файле класса, то по умолчанию устанавливается автономная система (значение standalone).
Синтаксис ключевого слова system_type выглядит следующим образом:
system_type [standalone | server]^.
А вот пример строки файла класса с ключевым словом system type:
system_type server
usedisk
Ключевое слово usedisk определяет один или несколько дисков, относительно которых вы хотите, чтобы они использовались инсталляционной программой Solaris, когда для ключевого слова partitioning задано значение default. По умолчанию инсталляционная
программа использует все функционирующие диски данной системы. Аргумент disk_name должен быть задан в форме c?t?d? или в форме c?d?, например, cOtOdO. Если вы задаете ключевое слово usedisk в каком-нибудь файле класса, то инсталляционная программа Solaris использует только те диски, которые вы задали.
Синтаксис ключевого слова usedisk выглядит так:
usedisk disk_name [disk_name]
Пример строки файла класса с ключевым словом usedisk выглядит так:
usedisk cOtOdO cOtldO
ПРИМЕЧАНИЕ ,.
Вы не можете задать в одном и том же файле класса ключевые слова usedisk и dontuse.
Тестирование файлов классов
После того как вы создали файл класса, можете воспользоваться командой pfinstall, чтобы протестировать его. Тестирование файла класса иногда называется пробным (формальным) прогоном инсталляции. Просматривая вывод инсталляции, который формируется командой pfinstall, вы сможете быстро определить, будет ли файл класса делать именно то, чего вы от него ожидаете. Например, вы можете определить, располагает ли какая-нибудь система достаточным дисковым пространством для своего обновления до нового релиза программного обеспечения Solaris, прежде чем действительно выполнять обновление.
Чтобы оттестировать файл класса какого-нибудь конкретного выпуска программного обеспечения Solaris, вы должны опробовать его именно в операционной среде того же самого релиза. Например, если вы хотите протестировать файл класса операционной системы Solaris 8, то должны выполнить команду pfinstall в системе, работающей под управлением именно Solaris 8.
Для тестирования какого-нибудь файла класса перейдите в каталог JumpStart, содержащий данный файл, и введите такую командную строку:
/usr/sbin/install.d/pfinstall -d
ИЛИ
/usr/sbin/install.d/pfinstall -D
Синтаксис команды pfinstall выглядит следующим образом:
/usr/sbin/install.d/pfinstall [-D | -d] disk_config [-c path] profile
Без использования опции -d или -D команда pfinstall реально инсталлирует программное обеспечение Solaris на данной системе с помощью заданного файла класса, и данные на этой системе будут перезаписаны.
Опции команды pfinstall описываются в таблице 21.16.
ОпцияОписание
-DЧтобы оттестировать данный файл класса, передает команде pfinstall
указание использовать в качестве основы текущую конфигурацию дисков данной системы.
Опция-d <disk_config>Опция-d <disk_config>-с path-с pathprofileprofile
Опция
-d <disk_config>
Опция
-d <disk_config>
-с path
-с path
profile
profile
Продолжение таблицы 21.16 Описание
Передеет команде pfinstall указание использовать конфигурацию дисков, заданную с помощью аргумента <disk_config>, е качестве основы для проведения тестирования данного файла класса. Если файл, на который ссылается аргумент <disk_config>, не находится в каталоге, в котором выполняется команда pfinstall, то вы должны задать имя маршрута. Эта опция не может быть использована с каким-нибудь файлом класса обновления (файлом, у которого в ключевом слове install_type задано значение upgrade). Вы должны всегда проводить тестирование файла класса обновления, используя в качестве основы текущую конфигурацию дисков данной системы и опцию -D. Файл конфигурации дисков представляет некоторую дисковую структуру. В нем описываются количество байт на сектор, флаги и части диска.
Обратите внимание на пример, приведенный после настоящей таблицы, который показывает, как создавать файл <disk_config>.
Указывает маршрут к образу компакт-диска Solaris. Это необходимо в том случае, когда компакт-диск Solaris не смонтирован к точке /cdrom. Например, вы можете применять эту опцию в том случае, когда на данной системе используется менеджер томов для монтирования компактдиска Solaris.
Определяет имя файла класса, подлежащего тестированию. Если данный файл класса не находится в каталоге, в котором выполняется команда pfinstall, необходимо задать имя маршрута.
Вы можете создать файл <disk_config> посредством выдачи следующей команды:
prtvtoo /dev/rdsk/<device_name> <disk_config>
Здесь ldeNlrdskI<device_name> представляет собой имя устройства данного диска системы. Значение аргумента <device_name> должно быть задано в форме c?t?d?s2 или c?d?s2. Аргумент <disk_conflg> - это имя файла конфигурации дисков.
ПРИМЕЧАНИЕ ; ,■
Значение в форме c?t?d?s2 определяет конкретный номер целевого диска с интерфейсом SCSI, а значение в форме c?d?s2 определяет не-SCSI диск.
Следующий пример демонстрирует командную строку для создания файла конфигурации дисков:
prtvtoc /dev/rdsk/c0t3d0s2 > test
Файл с именем test, созданный в приведенном примере, может быть вашим файлом <disk_config>, он может выглядеть, например, следующим образом:
* /dev/rdsk/c0t3d0s2 partition map
* Dimensions:
*512bytes/sector
*126sectors/track
*4tracks/cylinder
*504sectors/cylinder
*4106cylinders
*4104accessible cylinders
* Flags:
*1: unmountable
*10: read-only
*
*
First
Sector
Last
* Partition
Тад
Flags
Sector
Count
Sector
Mount Directory
0
2
00
0
268632
268631
/
1
3
01
268632
193032
461663
2
5
00
0
2068416
2068415
3
0
00
461664
152712
614375
export
4
0
00
614376
141624
755999
export/swap/
6
4
00
756000
1312416
206S415
/usr
ПРИМЕЧАНИЕ ~ 3
Если вы хотите протестировать инсталляцию программного обеспечения Solaris на нескольких дисках, выполните конкатенацию файлов конфигурации отдельных дисков и сохраните выходную информацию в каком-нибудь новом файле.
В следующем примере тестируется файл класса под названием ultra_class, в качестве основы для проведения тестирования используется текущая конфигурация дисков некоторой системы Solaris 8, на которой выполняется команда pfinstall. Файл класса ultra_class находится в каталоге /jumpstart, и также задается маршрут к образу компакт-диска Solaris, поскольку используется менеджер томов.
' Если вы хотите протестировать файл класса какой-нибудь системы с заданным объемом системной памяти, установите значение переменной SYSMEMSIZE равным заданному объему памяти в Мбайт:
SYS_MEMSIZE=memory_size
export SYB_MEMSIZE
cd /jumpstart/usr/sbin/install.d/pfinstall -D -c /cdrom/cdromO/ sO \ ultra_class
Система тестирует данный файл класса и выводит на экран несколько страниц результатов тестирования. Обратите внимание на следующее сообщение, свидетельствующее о том, что тестирование завершилось успешно:
Installation complete
Test run complete. Exit status 0.
Файл sysidcfg
Когда клиент JumpStart загружается в первый раз, программное обеспечение загрузки прежде всего пытается получить информацию системной идентификации (в том числе, имя хоста системы, IP-адрес, локаль, часовой пояс и пароль суперпользователя) из файла, который называется sysidcfg, а затем из базы данных службы имен. Если вы не используете никакую службу имен, то на начальном этапе инсталляции вам предстоит воспользоваться именно этим файлом для ответов на вопросы системной идентификации. Если вы используете какую-нибудь службу имен, то имеет смысл обратиться к разделу, который озаглавлен "Установка JumpStart в среде службы имен".
Вы будете использовать файл sysidcfg для ответов на вопросы системной идентификации на начальном этапе инсталляции. Если сервер предоставляет эту информацию, то клиент пропускает начальную фазу системной идентификации и инсталляции Solaris 8. При отсутствии файла sysidcfg, на клиентской машине отображается соответствующий интерактивный диалог для запроса информации системной идентификации. Вы должны создать уникальный файл sysidcfg для каждой системы, требующей различной конфигурационной информации.
Файл sysidcfg может находиться в каком-нибудь совместно используемом каталоге NFS или в корневом каталоге файловой системы UFS. Он также может находиться в файловой системе PCFS, которая располагается на дискете. В каталоге или на дискете может размещаться только один файл sysidcfg. Местоположение файла sysidcfg задается с помощью аргумента -р сценария add_install_client, используемого для создания информационного файла клиента JumpStart.
Создание файла sysidcfg требует, чтобы системный администратор задал набор ключевых слов в этот файл для предварительного конфигурирования системы. В файле sysidcfg применяются два типа ключевых слов: независимые и зависимые. Следующий пример иллюстрирует независимые и зависимые ключевые слова:
name_service=NIS {domain_name=pyraiiu.d. com \
naine_server=sex-ver (192.168.0.1))
В приведенном примере name_service - это независимое ключевое слово, тогда как domain name и name_server - зависимые ключевые слова.
ПРИМЕЧАНИЕ
Заключайте все зависимые ключевые слова в фигурные скобки {} для того, чтобы привязать их к соответствующему независимому ключевому слову. Значения могут быть заключены в одиночные (1 ') или в двойные кавычки (""), хотя это и необязательно.
Чтобы вам легче было понять ключевые слова файла sysidcfg, эти слова сгруппированы по категориям, и каждая категория описана подробно.
Ключевые слова службы имен, доменного имени
и сервера имен
Следующие ключевые слова относятся к службе имен, которую вам предстоит использовать.
name_service=<value>
Этому ключевому слову назначается одно из пяти значений, которое определяет используемую службу имен: NIS, NIS+, LDAP, DNS и NONE. Например, если вы используете службу имен NIS, задайте:
name_service=NIS
Для служб имен NIS и NIS+ задаются дополнительные ключевые слова, которые приведены далее:
domain_name=<value>
Здесь <value> представляет собой доменное имя, такое как pyramid.com.
name aerver=<value>
А здесь <value> представляет собой имя хоста или IP-адрес для сервера имен. Для аргумента <valae> ключевого слова name server вы можете задать до трех IP-адресов для сервера имен. Например:
name_aerver=192.168.0.1,192.168.0.2,192.168.0.3
Если для аргумента <value> ключевого слова name service задается ключевое слово DNS, например, name_service=DNS, то тогда вы должны задать следующие дополнительные ключевые слова:
domain_name=< val ue>
В качестве значения <value> ключевого слова domain_name введите доменное имя. Например, если доменным именем является pyramid.com, задайте его следующим образом: domain_name=pyramid.com.
name_aerver=< value>
В качестве значения <value> ключевого слова name server вы можете задать до трех IP-адресов для сервера имен. Например:
name_aerver=192.168.0.1,192.168.0.2,192.168.0.3 aearch=<value>
где <value> представляет собой элемент поиска, который не может содержать более 250 символов. Приведен пример элемента поиска для службы имен DNS:
aearch=pyramid.com,еааt.pyramid.com,weat.pyramid.com■
Если в качестве <value> ключевого слова name service задается LDAP, то есть, name_service=LDAP, то тогда вы должны задать дополнительные зависимые ключевые слова:
domain_name=< val ue>
В качестве <valae> ключевого слова domain_name введите доменное имя. Например, если доменным именем является pyramid.com, задайте его следующим образом: domain_name=py ramid.com.
profiled val ue>
где <value> - это имя данного профиля.
profile_server=< value>
где <value> представляет собой IP-адрес сервера профилей.
Ниже приведен элемент LDAP с его зависимыми ключевыми словами:
name_aervice_LDAP
{domain_name=wea t. pyramid. coin
profile»default
profile_server=192.168.0.100}
Ключевые слова, относящиеся к сети
network_interface=<value>
Задайте для <value> значение NONE или PRIMARY, как показано:
network_interface=primary
Следующие зависимые ключевые слова применяются, как показано:
Если вы не используете DHCP, то зависимыми ключевыми словами для значения PRIMARY являются следующие:
hostname=<hostname> ip_address=< ip_address> netmask=<netmask value> protocol_ipv6=<yes or no>
Например, если ваш первичный сетевой интерфейс имеет имя 1е0, то образец файла sysidcfg может выглядеть так:
network_interfасе=1eO {ho a tnaine=cl ien tl ip_address=192.168.0.10 netmask=255.255.255.0 protocol_ipv6=no}
Если вы используете DHCP, то будут доступны только приведенные ключевые слова: dhcp;protocol_ipv6=< yes или по>
Далее приведен образец соответствующего элемента:
network_interface=primary {dhcp protocol_ipv6=no}
Вне зависимости оттого, используется DHCP или нет, ключевое слово protocol_ipv6 является необязательным.
Установка пароля суперпользователя
Ключевое слово для установки пароля суперпользователя выглядит следующим образом: root_password=<encrypted passvd>
Значение для <encryptedpasswd> выбирается из файла /etc/shadow. Например, соответствующий элемент мог бы выглядеть следующим образом:
root_pasaword=XbcjeAgl8jLeI
Так выглядит ключевое слово, связанное с защитой информации: aecurity_policy=< value>
где <value> принимает значение либо KERBEROS, либо NONE.
Если указано значение KERBEROS, то необходимо также задать следующие зависимые ключевые слова:
default_realm=<npaB0M04H0e доменное имя>
admin_server=<npaBOMO4HOe доменное имя> kdc=<value>
В данном случае список из не более трех KDC (Key Distribution Centre - центр распространения ключей) может выступать в качестве значения <value> для ключевого слова security_policy. При этом, по крайней мере, один центр должен быть задан обязательно. Далее приведен пример задания ключевого слова security_policy:
security_policy=kerberos {defaul t_realm=pyramid.com admin_server=krbadmin.pyramid.com kdc-kdcl.pyramid.com,kdc2.pyramid.com}
Установка системной локали, терминала, часового пояса и сервера службы времени
Ключевое слово для установки системной локали выглядит следующим образом: system_locale=<va2ue>
где <value> - это элемент из каталога /usr/hb/locale. Приведенный пример устанавливает значение <value> для английского языка:
system_locale=en_US
А ключевое слово для установки терминала выглядит так: terminals terminal—type>
где <terminal_type> - это элемент из базы данных /usr/share/lib/terminfo. В следующем примере устанавливается значение типа терминала как vt 100:
terminal=vtlОО
Ключевое слово для установки часового пояса выглядит следующим образом: timezone=< timezone>
где <timezone> - это элемент из каталога /usr/share/lib/zoneinfo. Приведенный далее пример устанавливает значение часового пояса для Восточного стандартного времени:
timezone=EST■
Так выглядит ключевое слово для установки сервера службы времени: timeaerver=< value>
где <value> может принимать одно из следующих значений: LOCALHOST, HOSTNAME или IP_ADDRESS. Приведенный ниже пример устанавливает сервер службы времени в значение LOCALHOST:
timeserver=localhost
К ключевым словам файла sysidcfg применимы следующие правила: Ф Ключевые слова могут употребляться в произвольном порядке, ф Ключевые слова не чувствительны к регистру ввода символов (прописные и строчные буквы считаются одинаковыми).
ф Значения ключевых слов могут быть заключены в одиночные кавычки (' ’), хотя это вовсе и необязательно.
ф Допустимым является только первый экземпляр некоторого ключевого слова; если вы задаете одно и то же ключевое слово более одного раза, то будет использоваться ключевое слов, заданное первым.
Приведен образец файла sysidcfg, который размещается в конфигурационном каталоге с именем /jumpstart:
ayatem_locale=en_US timezone=EST timeaerver=localhoat terminal=vtl00
name_server=NONE security_policy=none root_password=XbcjeAgl8jLel network_interface=primary {protocol_ipv6-no netmaak=255.255.255.0}
Установка JumpStart в среде службы имен
Как было показано в предыдущем разделе, вы можете воспользоваться файлом sysidcfg для ответа на вопросы системной идентификации, которые задаются на начальном этапе инсталляции вне зависимости от того, применяется ли какая-нибудь служба имен. Если файл sysidcfg используется совместно со службой имен NIS, то идентификационные параметры, такие как локаль и часовой пояс, могут быть предоставлены изданной службы имен. Файл sysidcfg, необходимый для инсталляции клиента JumpStart в сети, где функционирует служба имен NTS, обычно гораздо короче, и при этом не требуется отдельный файл sysidcfg для каждого клиента.
Вы будете использовать файлы /etc/locale, /etc/timezone, /etc/hosts/, /etc/ethers и /etc/ netmasks в качестве источников информации для создания базы данных службы имен NIS, чтобы обеспечить поддержку инсталляции клиента JumpStart. Более подробная информация о службе имен NIS и о том, как создавать таблицы отображения данной службы имен, представлена в главе 18.
Установка клиентов
Теперь вы должны установить клиентов таким образом, чтобы можно было выполнить инсталляцию по сети. После установки каталога /jumpstart и соответствующих файлов, воспользуйтесь командой addinstallclient на инсталляционном сервере для того, чтобы подготовить дистанционные рабочие станции для инсталляции программного обеспечения Solaris с инсталляционного сервера. А вот как выглядит синтаксис команды add_install_client:
add_install_client -е <е theme t_addr> -i <ip_addr> -s \
<install_svr:/dlst> -c <config_svr:/config_dlr> -p \
<sysidcfg_svr/sysid_config_dir> <client_name> <client_arch>
Опции команды add install client описываются в таблице 21.17.
Таблица 21.1 ТОпциикоманды addJnstall_client>'
Опция
Описание
-е <ethemet_addr>
Указывает Ethernet-адрес инсталлируемого клиента и является необходимой, если данный клиент не определен в службе имен.
-i <ip_eddr>
Указывает IP-адрес инсталлируемого клиента и является необходимой, если данный клиент не определен в службе имен.
-d
Определяет данного клиента в качестве клиента DHCP.
-s <install_svr.ldist>
Определяет имя инсталляционного сервера (install_svr) и маршрут к дистрибутиву операционной среды Solaris 8 (Idist). Эта опция необходима в том случае, когда клиент добавляется к какому-нибудь загрузочному серверу.
-p <sysidcfg_svrisysid_config_dir>
Определяет имя конфигурационного сервера (sysidcfg_svr) и маршрут к файлу syeidcfg ^sysid_config_dirY Эта опция доступна для дистрибутива опереционной системы Solaris 8 и более поздних версий.
<client_name>
-c <config_svr.lconfig_dir>
Имя хоста инсталлируемого клиента.
Указывает имя конфигурационного сервера tconfigjsvr') и маршрут к конфигурационному каталогу (/conffg_d/r).
<client_arch>
Определяет группу аппаратных платформ для систем, которые используют <servername> в качестве инсталляционного сервера.
Для ознакомления с дополнительными опциями команды add_install_client следует обратиться к страницам оперативного руководства Solaris.
На следующих этапах будет создаваться клиент JumpStart, который будет загружаться от системы, сконфигурированной одновременно и в качестве загрузочного сервера, и в качестве инсталляционного. Кроме того, носитель информации Solaris 8 был целиком скопирован на локальный диск.
ПРИМЕЧАНИЕ *: J'
В следующих примерах были сделаны следующие назначения:
Имя инсталляционного сервера - server
Имя каталога дистрибутива - /export/jumpstart/install
Имя конфигурационного сервера - server
Имя конфигурационного каталога - /export/jumpstart/config
Имя загрузочного сервера - server
Имя инсталлируемого клиента - clientl
Архитектура системы инсталлируемого клиента - sun4u
Создание клиента JumpStart
Для установки клиента JumpStart выполните следующие операции:
На инсталляционном сервере перейдите в каталог, который содержит образ инсталлируемого операционного окружения Solaris 8:
cd /export/jumpstart/install/Solaris_8/Tools
Создайте клиента JumpStart с помощью сценария add_install_client, который находится в локальном каталоге, как показано:
. /add_install_client -s ultras:/export/jumpstart/install \ -c ultras:/jumpstart -p ultras:/jumpstart -e 8:0:20:21:49:25 \ -i 192.168.1.106 client! sun4u
Система отвечает следующим образом:
Adding Ethernet number for client! to /etc/ethers
Adding "share -F nfs -o ro,anon=0 /export/jumpstart/install" to \ /etc/dfs/dfstab making /tftpboot enabling tftp in /etc/inetd.conf updating /etc/bootparams copying inetboot to /tftpboot
Сценарий add_install_client автоматически создак элементы в следующих файлах и каталогах: /etc/ethers 8:0:20:21:49:25 clientl /etc/dfs/dfstab share -F nfs -o ro,anon=0 /export/jumpstart /etc/bootparams clientl root=ultra5:/export/jumpstart/Solaris_8/Tools/Boot \
install=ultra5:/export/jumpstart boottype» \ :in sysid_config=ultra5:/jumpstart \ install_config=ultra5:/jumpstart rootopts=:rsize=32768 /tftpboot directory Irwxrwxrwx 1 root other 26 Jun 19 16:11 \ C0A8016A -> \ inetboot.SUN4U.Solaris_8-1 Irwxrwxrwx 1 root other 26 Jun 19 16:11 \ C0A8016A.SUN4U -> \ inetboot.SUN4U.Solaris_8-1 -rwxr-xr-x 1 root other 158592 Jun 19 16:11 \ inetboot.SUN4U.Solaris_8-1 -rw-r-r- 1 root other 317 Jun 19 16:11 rm.192.168.1.106 Irwxrwxrwx 1 root other 1 Jun 19 16:11 tftpboot -> .
Воспользуйтесь командой rm install client для удаления элементов и конфигурационной информации клиента JumpStart с загрузочного сервера: ./rm_install_client clientl Система отвечает следующим образом: removing clientl from bootparams removing /eto/bootparams, since it is empty removing /tftpboot/inetboot.SUN4U.Solaris_8-1 removing /tftpboot disabling tftp in /etc/inetd.conf
Пример инсталляции JumpStart
Следующий пример демонстрирует, как вы могли бы осуществить пользовательскую инсталляцию JumpStart на некотором воображаемом сайте. Рассматриваемая сеть состоит нз сервера Enterprise 3000 и пяти рабочих станций SparclO.
Установка инсталляционного сервера
Первым этапом является установка инсталляционного сервера. Вам предстоит выбрать сервер масштаба предприятия. Это то место, где расположено содержимое компактдиска Solaris. Содержимое указанного компакт-диска может стать доступным либо посредством загрузки этого компакт-диска в привод CD-ROM, либо путем копирования этого компакт-диска на локальный жесткий диск сервера. В этом примере вам предстоит скопировать файлы на локальный жесткий диск. Чтобы скопировать содержимое компакт-диска Solaris на локальный диск сервера, воспользуйтесь командой setup_install_server. Файлы копируются в каталог /export/install.
Шаг за шагом '
Установка инсталляционного сервера
Для установки инсталляционного сервера необходимо выполнить следующие операции: 1. Вставьте инсталляционный компакт-диск Solaris в привод CD-ROM сервера. 2. Наберите следующее:
cd /cdrom/cdromO/sO/Solaris_8/Tcols ./setup install_server /export/install
Система отвечает следующим образом:
Verifying target directory...
Calculating space required for the installation boot image
copying Solaris_8 Tools hierarchy...
Install Server setup complete
Извлеките инсталляционный компакт-диск Solaris 8 и вставьте первый из двух компакт-дисков Solaris 8 Software. Дайте возможность демону void автоматически смонтировать этот компакт-диск.
Перейдите в каталог Tools на указанном компакт-диске:
cd /cdrom/cdromO/8olaris_8/Tools
Выполните сценарий add_to_install_server, чтобы скопировать образы с указанного компакт-диска в каталог /export/install:
./add_to_install_server /export/install
Повторите описанную процедуру для второго компакт-диска Solaris 8 Software.
Создание каталога JumpStart
После того как вы установили инсталляционный сервер, необходимо разместить на нем конфигурационный каталог JumpStart. Этот каталог хранит файлы, необходимые для пользовательской инсталляции JumpStart программного обеспечения Solaris. Вы устанавливаете этот каталог посредством копирования образца данного каталога с одного из образов компакт-диска Solaris, помещенного в каталог /export/install. Для этого наберите следующие команды:
mkdir /jumpstart
ср -г /export/install/8olaris_8/Miso/jumpstart_sample /jumpstart
При этом можно использовать любое имя каталога. В настоящем примере вы будете использовать имя каталога /jumpstart.
Установка конфигурационного сервера
1^ВЗ|||||ЙЙ1||1Й^^।
Установка конфигурационного сервера
Следующим этапом работ является установка конфигурационного сервера. Для этого выполните такие операции:
Зарегистрируйтесь как суперпользователь на том сервере, где вы хотите расположить конфигурационный каталог JumpStart.
Отредактируйте файл /etc/dfs/dfstab. Добавьте в этот файл приведенный далее элемент:
share -F nfs -о ro,anon=0 /jumpstart
Наберите shareall и нажмите Enter. В результате содержимое этого каталога /jumpstart становится доступным всем системам данной сети.
Работая с образцом файла класса и файлами правил, которые были скопированы ранее в каталог JumpStart, используйте их для создания конфигураци-
онных файлов, представляющих вашу сеть. Для настоящего примера был создан файл класса с именем engrg prof. Данный файл выглядит следующим образом:
♦Specifies that the installation will be treated as an initial
♦installation, as opposed to an upgrade.
install_type initial_install
♦Specifies that the engineering systems are standalone systems.
system_type standalone
♦Specifies that the Jumpstart software uses default disk
♦partitioning for installing Solaris software on the engineering ♦systems.
partitioning default
♦Specifies that the developer's software group will be
♦installed.
Cluster SUNWCprog
♦Specifies that each system in the engineering group will have 50
♦Mbytes of swap space.
filesys any 50 swap
Файл правил в данном случае содержит следующее правило:
network 192.9.200.0 - engrg_prof -
Этот файл правил устанавливает, что системы в сети 192.9.200.0 инсталлируются с использованием файла класса с именем engrg_prof.
Проверьте данные правила файлов и классов следующим образом:
cd /jumpstart
./check /usr/sbin/install.d/pfinstall -c /export/install engrg_prof
Если check не обнаружит ни одной ошибки, она создает файл rules.ok. Обратите внимание на следующее сообщение, которое свидетельствует о том, что тестирование с помощью команды pfinstall было проведено успешно:
Installation complete .
Test run complete. Exit status 0.
На этом вы завершаете создание конфигурационного сервера.
Установка клиентов
А теперь на инсталляционном сервере установите каждого клиента следующим образом:
cd /export/install/Solaris_8/Tools
./add_install_client -s spareserver:/export/install \
c sparcserver:/jumpstart -p sparcserver:/jumpstart \
e 8:0:20:21:49:25 -i 192.9.200.106 sunl sun4u.
./add_install_client -s sparcserver:/export/install \
c sparcserver:/jumpstart -p sparcserver:/jumpstart \
e 8:0:20:21:49:24 -i 192.9.200.107 sun2 sun4u
Приведенный пример демонстрирует установку двух рабочих станций проектировщика с именами sunl и sun2 через сеть с инсталляционного сервера, имеющего имя sparcserver.
Запуск клиентов
После завершения установки вы можете запустить указанные системы проектировщика посредством использования приведенной далее команды запуска в ответ на приглашение ок из PROM каждой системы: boot net - install
На экране вы увидите следующее:
Rebooting with command: net - install
Boot device: /iommu/sbus/ledma@f,400010/le@f,cOOOOO File and args: - install 20800
SunOS Release 5.8 Version Generic_108528-05 32-bit Copyright 1983-2000 Bun Microsystems, Inc. All rights reserved, whoami: no domain name Configuring /dev and /devices Using RPC Bootparams for network configuration information. Configured interface leO Using sysid configuration file 192.9.200.101:/jumpstart/sysidcfg The system is coming up. Please wait. Starting remote procedure call (RPC) services: sysidns done. Starting Solaris installation program... Searching for JumpStart directory... Using rules.ok from 192.9.200.101:/jumpstart. Checking rules.ok file... Using profile: engrg_prof Executing JumpStart preinstall phase... Searching for SolStart directory... Checking rules.ok file... Using begin script: install_begin Using finish script: patch_finish Executing SolStart preinstall phase...
Executing begin script "install_begin". . .
Begin script install_begin execution completed.
Processing default locales
Specifying default locale (en_US) Processing profile - Selecting cluster (SUNWCprog)
WARNING: Unknown cluster ignored (SUNWCxgl) - Selecting package (SUNWaudmo) - Selecting locale (en_US)
Installing 32 Bit Solaris Packages - Selecting all disks - Configuring boot device - Configuring swap (any) - Configuring /opt (any) - Automatically configuring disks for Solaris operating environment
Verifying disk configuration Verifying space allocation
Total software size: 401.60 Mbytes Preparing system for Solaris install Configuring disk (c0t3d0)
Creating Solaris disk label (VTOC)
Creating and checking UFS file systems - Creating / (c0t3d0s0) - Creating /opt (c0t3d0s5)
Beginning Solaris software installation Starting software installation SUNWxwrtl...done. 401.55 Mbytes remaining. SUNWulcf....done. 397.28 Mbytes remaining. SUNWuium....done. 397.25 Mbytes remaining. SUNWuiuB....done. 390.46 Mbytes remaining.
<вывод уреэан>
Completed software installation Solaris 8 software installation succeeded Customizing system files
Mount points table (/etc/vfstab)
Network host addresses (/etc/hosts) Customizing system devices
Physical devices (/devices)
Logical devices (/dev) Installing boot information
Installing boot blocks (c0t3d0s0) Installation log location
/a/var/sadm/system/logs/install_log (before reboot)
/var/sadm/system/logs/install_log (after reboot) Installation complete Executing SolStart postinstall phase...
Executing finish script "patch_finish". . . Finish script patch_finish execution completed. Executing Jumpstart postinstall phase...
The begin script log 'begin.log' is located in /var/sadm/system/logs after reboot. The finish script log 'finish.log' is located in /var/sadm/system/logs after reboot, syncing file systems... done rebooting...
Клиент последовательно считывает с сервера файл sysidcfg, затем файл класса и, наконец, файлы rules.ok. Если в файле sysidcfg отсутствует какая-нибудь информация системной идентификации, клиентская машина будет отображать соответствующий диалог, запрашивая необходимую идентификационную информацию. Затем на данной системе автоматически инсталлируется операционная среда Solaris.
На этом конфигурирование JumpStart завершается.
Примените ваши знания
Резюме
Описание подобной инсталляции - это, безусловно, эксперимент со стороны автора: JumpStart применяется не слишком широко, главным образом, из-за ее сложности. Многие системные администраторы, недооценивая этот метод, предпочли бы выполнить интерактивную инсталляцию для каждой системы, чем автоматизировать сам процесс инсталляции. Многие из популярных систем UNIX имеют инсталляционные программы, подобные JumpStart, хотя большинство этих программ редко применяется. Системные администраторы могли бы сэкономить уйму времени, если бы смогли больше узнать о данном типе инсталляции.
В настоящей главе был описан полный процесс инсталляции сетевой системы с использованием JumpStart. В частности, в ней было описано, как установить загрузочный сервер, инсталляционный сервер и конфигурационные файлы, расположенные на конфигурационном сервере. Также были описаны необходимые процедуры, которые должны быть выполнены для каждого клиента, инсталляцию которого вы планируете.
Настоящая глава завершает учебный материал для второго экзамена. Настоятельно рекомендуется воспользоваться тестовыми экзаменами на прилагаемом компакт-диске, чтобы проверить знания прочитанных вами глав. Если вы полностью поняли весь материал, охваченный настоящей книгой, то для вас не составит никакого труда успешно пройти оба экзамена. Если вы не набираете достаточного количества очков при прохождении тестовых экзаменов на прилагаемом компакт-диске, вернитесь назад и просмотрите еще раз те главы, недостаточные знания которых обнаружились.
Перед сдачей экзамена рекомендуется посетить Web-сайт по адресу www.Ddesieninc.com и прочитать актуальную информацию об экзаменах, комментарии тех, кто уже прошел эти экзамены, советы по прохождению тестирования и ссылки на дополнительные учебные материалы, чтобы убедиться, что вы должным образом подготовлены, перед тем как заплатить 150 долларов за экзамен.
Если вы уверены в том, что усвоили весь материал, представленный в этой книге, то вы готовы сдавать реальный экзамен. Желаем удачи!
Ключевые термины
Сервер JumpStart
Клиент JumpStart
Файл класса
Файлы правил
Пользовательский метод инсталляции JumpStart
Загрузочный сервер
Инсталляционный сервер
Конфигурационный сервер
RARP
Профиль
Сценарий check
Примените ваши знания
УПРАЖНЕНИЯ .
Создание серверов JumpStart
При выполнении настоящего упражнения вам предстоит создать загрузочный сервер JumpStart, инсталляционный и конфигурационный серверы, конфигурационные файлы, а также сконфигурировать клиента JumpStart для выполнения автоматической инсталляции операционной среды Solaris 8 через сеть.
Для выполнения настоящего упражнения вам потребуются две системы, объединенные в сеть. Одна система будет служить в качестве загрузочного/инсталляционного/конфигура- ционного сервера, поэтому на ней следует иметь, по крайней мере, 1 Гбайт свободного дискового пространства. Вторая система будет выступать в роли клиента, поэтому вся информация на ее диске будет разрушена, а операционная система на ней будет перезагружена.
Описываемая процедура разрушает информацию на диске. Убедитесь в том, что у вас имеются корректные резервные копии, если вы хотите сохранить хоть какие-нибудь данные на этих системах.
Оцениваемое время: 1 час
Зарегистрируйтесь как суперпользователь в системе, которая будет использоваться одновременно в качестве загрузочного и инсталляционного серверов.
Отредактируйте файл /etc/hosts и создайте элемент для данного клиента JumpStart.
Создайте загрузочный сервер, как показано далее:
Вставьте инсталляционный компакт-диск Solaris 8 Installation в привод CD- ROM и позвольте демону void автоматически смонтировать его.
Перейдите в каталог Tools на смонтированном компакт-диске:
cd /cdrom/cdromO/sO/Solaris_8 /Tools
Запустите сценарий setup_install_server и укажите местоположение для образа данного компакт-диска. Убедитесь в том, что вы располагаете, по крайней мере, 1 Гбайт свободного дискового пространства и целевой каталог является пустым. В рассматриваемом примере в качестве инсталляционного каталога используется /export/install:
./setup_install_server /export/install
Добавьте дополнительное программное обеспечение, как показано:
Извлеките инсталляционный компакт-диск Solaris 8 Installation и вставьте первый из двух компакт-дисков Solaris 8 Software. Дайте возможность демону void автоматически смонтировать этот компакт-диск.
Перейдите в каталог Tools на указанном компакт-диске:
cd /cdrom/cdromO/Solaris_8/Tools'
Выполните сценарий add_to_install_server, чтобы скопировать образы с указанного компакт-диска в каталог /export/install:
./add_to_install_server /export/install
Повторите описанную здесь процедуру для второго из двух компакт-дисков Solaris 8 Software.
Глава 21. JumpStart 1 Примените ваши знания
Теперь создайте конфигурационный каталог JumpStart:"
mkdir /jumpstart
Добавьте в файл /etc/dfs/dfstab приведенный элемент для того, чтобы разрешить совместное использование в сети конфигурационного каталога JumpStart: share -F nfs -о ro,anon=0 /jumpstart
Если демон nfsd еще не запущен, стартуйте сервер NFS следующим образом:
/etc/init.d/nfs.server start
Находясь в каталоге /jumpstart, воспользуйтесь текстовым редактором vi для создания некоторого файла класса с именем basic_class, который включает следующие элементы:
♦Specifies that the installation will be treated as an initial ♦installation, as opposed to an upgrade. install_type initial_install ♦Specifies that the engineering systems are standalone systems. system_type standalone ♦Specifies that the JumpStart software uses default disk ♦partitioning for installing Solaris software on the engineering ♦systems. partitioning default ♦Specifies that the developer's software group will be ♦installed cluster SUNWCprog ♦Specifies that each system in the engineering group will have 50 ♦Mbytes of swap space, filesys any 50 swap
Находясь в каталоге /jumpstart, воспользуйтесь текстовым редактором vi для создания некоторого файла правил с именем "rules", который включает такой элемент:
hostname sunl - basic_class -
Проверьте файлы класса и правил с помощью команд check и pfinstall:
cd /jumpstart
/export/install/Solaris_S/Misc/jumpstart_sample/check
/usr/sbin/install.d/pfinstall -c /export/install basic_class
А теперь установите клиента JumpStart:.
cd /export/install/Solaris_S/Tools ./add_install_client -s <SERVERNAME>:/export/install \
-с <SERVERMAME>:/jumpstart -р <SERVERNAME>:/jumpstart \ -е <МАС ADDRESS> -i <IP ADORESS> <CLIENTNAME> <PLATFORM>
где
SERVERNAME - это имя хоста вашего загрузочного/инсталляционного серверов MAC ADDRESS - Ethernet-адрес вашего клиента
IP ADDRESS - IP-адрес вашего клиента
CLIENTNAME - имя хоста вашего клиента
PLATFORM - аппаратная архитектура ваших клиентов (скажем, sun4m, sun4u). Например:
./add_install_client -s sparcserver:/export/install \
-c sparcserver:/jumpstart -p sparcserver:/jumpstart \ -e 8:0:20:21:49:24 -i 192.168.1.107 sunl sun4u
Перейдите к системе клиента, включите ее, в ответ на приглашение PROM введите следующую команду:
boot net - install
Выполняется инсталляция JumpStart.
Обзорные вопросы
Что из перечисленного представляет собой метод автоматической инсталляции Solaris на новой системе SPARC посредством установки компакт-диска с операционной системой в привод CD-ROM и включения данной системы?
JumpStart
WebStart
Интерактивная инсталляция
Пользовательский метод JumpStart
Что из перечисленного представляет собой метод автоматической инсталляции группы идентичных систем?
Пользовательский, или сделанный по заказу, метод JumpStart
JumpStart
WebStart
Интерактивная инсталляция
Что из перечисленного выполняет установку инсталляционного сервера для предоставления клиенту операционной системы в процессе инсталляции JumpStart?
add install client
add_install_server
pfinstall•
setup install server’
Какой из файлов должен содержать некоторое правило для каждой группы систем, которые вы хотите инсталлировать с помощью JumpStart?
Примените ваши знания
A. rules
rules.ок
profile
D. check
Какой из серверов устанавливается для инсталляции JumpStart, чтобы предоставить ответы на запросы протокола RARP от клиентов?
Загрузочный сервер (boot server)
Инсталляционный cepBep(install server)
Конфигурационный сервер (configuration server)
Сервер JumpStart
Что из перечисленного используется в качестве альтернативы установи конфигурационного каталога?
Загрузочный сервер
Инсталляционный сервер.
Конфигурационный диск
D. Файл rules.ok
Какой из перечисленных файлов содержит имя конечного сценария для инсталляции JumpStart?
A. check
профиль (profile)
rules.ok
дискета профилей
Что из перечисленного представляет собой определяемый пользователем сценарий оболочки Bourne, заданный внутри файла правил?
Сценарий add install client
Файл класса
Сценарий check
Начальный сценарий
Какой из файлов в JumpStart определяет то, как инсталлировать программное обеспечение Solaris на некоторой системе?
А. Файл класса
rules
rules.ok
install.log
Что из перечисленного используется для тестирования файла класса JumpStart?
A. check
В. pfinstall
" С. rules
D. add_install_client
Какой из файлов при работе с JumpStart не используется для предоставления информации о клиентах?
rules (правила)
sysidcfg
check
class (файл класса)
Что из перечисленного не является допустимым элементом в первом поле файла правил?
A. karch
any
hostname
ip_address
■ 13. Какой из перечисленных файлов JumpStart может использовать любое имя и при этом все равно работает правильно?•
class (файл класса)
rules (файл правил)
sysidcfg
profile (профиль)
Какой из сценариев будет обновлять или создавать файл rules.ok?
pfmstall
check
setup_instal [server
installtype
Что из перечисленного предоставляет операционную систему в процессе инсталляции JumpStart?
Установочный сервер
Инсталляционный сервер
Сервер профилей
Каталог/jumpstart
Что из перечисленного содержит каталог JumpStart и конфигурационные файлы, такие как файл класса и файл правил?
Дискета с профилями
Установочный сервер
Инсталляционный сервер
. D. Конфигурационный сервер
Какая из команд выдается на инсталляционном сервере для подготовки дистанционных рабочих станций к инсталляции Solaris с этого сервера?
add_install_client■
add install server
Примените ваши знания.
setup_install_client
setup_client
Какая из команд устанавливает систему в качестве исключительно загрузочного сервера?
setup_install_server
add_install_server -b
setup_install_server -b
setup_boot_server
Какая из перечисленных команд используется на клиенте JumpStart для запуска инсталляции?
boot net - install
boot net
boot-jumpstart
boot net - jumpstart
Какой сценарий копирует дополнительные пакеты программного обеспечения в дерево программных продуктов на локальный диск какого-нибудь существующего инсталляционного сервера?
add install server -а
add_to_install_server
setupinstallserver
server-а
Ответы на обзорные вопросы
А. Метод JumpStart позволяет вам автоматически инсталлировать программное обеспечение Solaris на системе с архитектурой SPARC просто путем установки компактдиска Solaris и включения системы. Вам нет необходимости задавать команду boot в ответ на приглашение ок.
А. Пользовательский метод инсталляции операционной системы JumpStart представляет собой способ автоматической и идентичной инсталляции группы систем.
D. Сценарий setup install server подготавливает инсталляционный сервер для предоставления клиенту операционной системы в процессе инсталляции JumpStart.
В. Файл rules.ok должен содержать некоторое правило для каждой группы систем, которые вы хотите инсталлировать.
А. Загрузочный сервер устанавливается, чтобы предоставить ответы на запросы протокола RARP от клиентов JumpStart.
С. Конфигурационный диск используется в качестве альтернативы установкекон- фигурационного каталога.
С. Имя конечного сценария содержит файл rules.ok.
D. Начальный сценарий - определяемый пользователем сценарий оболочки Bourne, который располагается в конфигурационном каталоге JumpStart на конфигурационном сервере, определен в файле правил и выполняет свои задачи перед тем, как программное обеспечение Solaris инсталлируется на данной системе.
А. Файл класса - текстовый файл, определяющий то, как инсталлировать программное обеспечение Solaris на какой-нибудь системе.
В. После создания файла класса вы можете воспользоваться командой pfinstall, чтобы протестировать этот файл.
С. Файл sysidcfg, файлы правил (rules) и класса (class) предоставляют информацию о клиенте JumpStart. Сценарий check используется для проверки файла правил.
D. Ключевые слова any, hostname и karch являются допустимыми и могут быть использованы в файле правил.
А. Файл класса может иметь любое имя, однако он должен отражать способ, которым инсталлируется программное обеспечение Solaris на некоторой системе.
В. Обновлять или создавать файл rules.ok будет сценарий check.
В. Инсталляционный сервер предоставляет операционную систему в процессе инсталляции JumpStart.
D. Конфигурационный сервер содержит все существенные конфигурационные файлы пользовательского метода JumpStart, такие как файл правил, файл rules.ok, файл класса, сценарий проверки, а также необязательные начальный и конечный сценарии.
А. Для подготовки дистанционных рабочих станций к инсталляции Solaris с конкретного инсталляционного сервера следует воспользоваться командой add_install_client на данном инсталляционном сервере.
С. Команда setup_install_server -b устанавливает систему в качестве исключительно загрузочного сервера.
А. На клиенте JumpStart для запуска инсталляции используется команда
boot net - install.
А. Сценарий add_install_server -а копирует дополнительные пакеты программного обеспечения в дерево продуктов на локальный диск какого-нибудь существующего инсталляционного сервера.
Советы по обучению и подготовке к экзамену
Практический экзамен
Быстрые фактыБыстрые факты
Быстрые факты
Быстрые факты
Сертификация системного администратора Solaris
В главах настоящей книге детально излагались темы, которые вы должны знать для сдачи экзамена системного администратора Solaris. Теперь, когда подошло время тестирования, вам необходимо усовершенствоваться в основных предметных областях и освежить свою память. Какие же предметные области являются наиболее важным и для обучения?
Следующий раздел представляет собой сжатое изложение пройденных глав настоящей книги. Он охватывает наиболее ключевые концепции, лаконично представляя необходимую вам информацию. Всегда помните, что важно понять эти концепции, а не просто запомнить их, и вы окажетесь на пути к успешной сдаче экзамена.
Запуск системы
Вы можете воспользоваться несколькими опциями команды boot в ответ на приглашение ок. Итоговая таблица 1 описывает каждую из этих опций.
;Ит$0ВЗ>**абЛ1ИЦ^
ОпцияОписание
аИнтерактивная загрузка■
гЗагрузка с реконфигурацией
sЗагрузка с переходом в однопользовательский режим работы
vЗагрузка в расширенном режиме
Приведенный ниже перечень описывает этапы интерактивной загрузки:
В ответ на приглашение ок наберите boot -а и нажмите Enter. Программа загрузки приглашает вас к диалогу.
Нажмите Enter, чтобы задействовать принятое по умолчанию ядро (/kernel/unix), в ответ на соответствующий запрос или введите наименование файла ядра, подлежащего использованию при загрузке системы, и нажмите Enter.
В ответ на соответствующий запрос нажмите Enter для использования маршрута к каталогу принятых по умолчанию модулей или наберите маршрут к каталогу модулей и нажмите Enter..
В ответ на соответствующий запрос нажмите Enter для использования принятого по умолчанию файла /etc/system или наберите имя системного файла и нажмите Enter.
В ответ на соответствующий запрос нажмите Enter, чтобы использовать принятый по умолчанию тип корневой файловой системы (файловая система ufs для загрузки с локального диска или файловая система nfs для бездисковых клиентов).
В ответ на соответствующий запрос нажмите Enter, чтобы использовать принятое по умолчанию физическое имя корневого устройства, или наберите имя устройства.
Операционная система Solaris имеет восемь системных состояний запуска: от нулевого до шестого и состояние запуска s; все они перечисляются в итоговой таблице 2. Уровень запуска первоначально устанавливается в процессе загрузки ядром операционной системы; он также может быть установлен посредством загрузки в однопользовательский режим (команда boot -s) либо после загрузки с помощью команды init.
И^^в^<#||рицгй# восемь состояний запуска системы :1
Состояние запуска Описание
ООстанавливает системные службы и демоны. Завершает все работаю
щие процессы. Демонтирует все файловые системы.
S, sОднопользовательское состояние (состояние системного администрато
ра). Только суперпользователь допускается к регистрации в системе за консолью, а любые зарегистрированные в системе пользователи выводятся из нее, когда вводится рассматриваемый уровень запуска. Все ранее смонтированные файловые системы остаются смонтированными и доступными. Все службы, за исключением самых главных служб операционной системы, закрываются в определенной последовательности.
Однопользовательское состояние (состояние системного администра
тора). Все файловые системы остаются доступными, и любой зарегистрированный пользователь может остаться зарегистрированным. Все службы, за исключением самых главных служб операционной системы, закрываются в определенной последовательности.
Нормальная работа в многопользовательском режиме без организации
разделяемого доступа к файловым системам NFS. Устанавливается переменная часового пояса. Монтируется файловая система /usr. Очищаются каталоги /tmp и /var/tmp. Загружаются сетевые интерфейсы, и запускаются процессы. Стартует демон cron. Очищаются временные файлы uucp. Запускается система печати 1р. Стартует демон Bendmail.
Продолжение итоговой таблицы 2
Состояние запуска
Описание
3
Нормальная работа файл-сервера в многопользовательском режиме с организацией разделяемого доступа к файловым системам NFS. Выполняются все задачи, перечисленные для уровня запуска 2. Стартуют демоны NFS.
4
Альтернативное состояние многопользовательского режима (в настоящее время не применяется).
5
Состояние выключения питания. Закрывает систему таким образом, чтобы можно было безопасно отключить электропитание системы. Если возможно, автоматически отключает питание тех систем, которые поддерживают такую возможность.
6
Перезагружает систему.
Команды закрытия системы
При подготовке к закрытию системы необходимо определить, какие из перечисленных команд подходят для конкретной системы и для ближайшей задачи:
/usr/sbin/shutdown
/sbin/init
/usr/sbin/halt
/usr/sbin/reboot
'/usr/sbin/poweroff
Stop+A или Ll+A (следует использовать в качестве последнего средства).
OpenBoot .
Полное имя маршрута некоторого устройства представляет собой последовательность имен узлов, разделенных символами косой черты (/). Корнем этого дерева является узел компьютера, который не именуется в явном виде, однако обозначается ведущим символом косой черты (/). Компоненты имени маршрута устройства описываются в итоговой таблице 3.
Параметр
Описание
driver-name
Удобочитаемая символьная строка, содержащая от 1 до 31 символов, в число которых входят буквы, цифры и следующие знаки препинания:,._ + -.
Символы верхнего и нижнего регистра различаются. В некоторых случаях имя устройства включает наименования изготовителя данного устройства и его модели, разделенные запятой. Обычно в качестве наименования изготовителя используется его фирменный знак, набранный заглавными буквами (например, SUNW,hmeO). Для встроенных устройств наименование изготовителя обычно опускается (например, sbus или pci).
Перед адресным параметром должен быть записан символ @; он служит в качестве разделителя между именем драйвера и адресом устройства.
unit-address
Текстовая строка, представляющая физический адрес данного устройства в его родительском адресном пространстве. Точное значение конкретного адреса зависит от шины, к которой подсоединено данное устройство. В приведенном примере
Продолжение Итоговой таблицы 3
ПараметрОписание
/sbus@1f,0/esp@0,40000/sd@3,0:a
символы 1f,0 представляют адрес главной системной шины, поскольку здесь устройство SBus подключено непосредственно к главной системной шине.
Символы 0,40000 представляют собой номер слота (разъема) Sbus. Рассматриваемый пример показывает, что данное устройство подключено к разъему 0 на шине SBus и смещение составляет 40000.
'Символы 3,0 представляют целевое SCSI-устройство и номер логичес
кого устройства. В рассматриваемом примере дисковое устройство подключено к интерфейсу SCSI как устройство 3, логическое устройство 0. Более подробная информация по ведущим адаптерам SCSI, целевым и логическим устройствам представлена в приложении D.
device-argumentsТекстовая строка, формат которой зависит от конкретного устройства.
Этот параметр может использоваться для передачи дополнительной информации программному обеспечению данного устройства. В приведенном примере:
/sbus@1f,0/scsi@2,1/sd@3,0:a
аргументом для данного дискового устройства является "а". Программный драйвер этого устройства интерпретирует этот аргумент как раздел диска, поэтому рассматриваемое имя маршрута устройства ссылается на раздел "а" данного диска.
В итоговой таблице 4 описывается команда devalias, которая используется для анализа, создания и изменения псевдонимов среды OpenBoot.
Итоговая таблица 4 Команда devalias ^ & ...v; ./ ■ ’
КомандаОписание•
devaliasОтображает все текущие псевдонимы устройств.
devalias_aliasОтображает имя маршрута устройства, соответствующее псевдониму.
devalias_alias device-path Определяет псевдоним, представляющий device-path.
Установка программного обеспечения Solaris 8
Компьютер должен соответствовать следующим требованиям, прежде чем вы сможете инсталлировать операционную систему Solaris 8 с использованием интерактивного метода инсталляции:
Ф Система должна иметь как минимум 64 Мбайт оперативной памяти. Требования по достаточному количеству памяти определяются несколькими факторами, в число которых входит количество активных пользователей и количество приложений, которые вы планируете запускать.
Ф Solaris 8 распространяется только на дисках CD-ROM, поэтому система должна либо иметь локальный привод CD-ROM, либо иметь доступ к нему по сети.
Ф Требуется как минимум 2.3 Гбайт дискового пространства. Требования по размеру свободного дискового пространства для конкретного программного обеспечения Solaris, которое вы планируете инсталлировать, рассматриваются в следующем разделе. Кроме того, добавьте дисковое пространство для поддержки требований вашей среды к размеру области своппинга, или подкачки.
^ Система должна иметь архитектуру SPARC или Intel.
В итоговой таблице 5 приведен краткий обзор конфигураций каждого типа систем. В ней показано, какие файловые системы являются локальными, а какие - доступны через сеть.
ИтоговаятаблицаДК^^*... v " • ■ "
Тил системы
Локальные файловые системы
Локальная область подкачки
Дистанционные файловые системы
Сервер
Корневая файловая система, файловые системы /usr, /opt
Да
Необязательные файловые системы /home, /export/home
JavaStation
Отсутствуют
Нет
/home
Бездисковый клиент
Отсутствуют
Нет
Корневая файловая система, /usr, /home, область подкачки
AutoClient
Кэшированные корневая файловая система и /usr
Да
/var
Автономная система
Корневая файловая система, /usr
Да
Необязательные файловые системы /usr, /export/home
Операционная система Solaris выделяет дисковое пространство в виде отдельных файловых систем. Далее описана типовая схема разбивки для системы с единственным дисковым накопителем:
ф Корневая (/) файловая система и файловая система /usr. Операционная система ■ Solaris обычно создает для собственных нужд две файловые системы: корневую и /usr. Инсталляционная программа определяет необходимое вам дисковое пространство. Большинство файлов в этих двух разделах являются статическими. Если корневая файловая система полностью заполняется, система будет работать некорректно.
ф Подкачка (своппинг). Эта область на диске не содержит внутри себя файлов. В операционной системе UNIX вам разрешено иметь больше программ, чем может разместиться в памяти. Части, которые не требуются в памяти в данный момент времени, передаются в область подкачки, тем самым освобождая физическую память для других активных процессов.
ф Файловая система /home. На однодисковой системе все, что не относится к корневой файловой системе, /usr или к области своппинга, должно размещаться в отдельном разделе. Файловая система /home - это то место, где вы можете размещать файлы, созданные пользователями данной системы.
ф Файловая система/var (необязательная). Операционная система Solaris использует эту область для файлов системного журнала, спулеров печати и сообщений электронной почты.
Ф Файловая система /opt (необязательная). По умолчанию инсталляционная программа операционной системы Solaris загружает сюда необязательные пакеты программного обеспечения. Кроме того, приложения сторонних разработчиков обычно также загружаются в файловую систему /opt.
Используйте вывод команд prtconf и sysdef для определения того, какие дисковые, ленточные устройства и приводы CD-ROM подключены к данной системе. Выходная информация этих команд отображает после экземпляров устройств сообщение driver not attached (драйвер не присоединен). Поскольку некоторые системные процессы всегда контролируют эти устройства, то сообщение driver not attached (драйвер не присоединен) обычно является хорошим индикатором того, что в данном экземпляре устройства нет никакого физического устройства.
Логические устройства организованы в подкаталоги, находящиеся внутри каталога /dev, по типам устройств, как показано в итоговой таблице 6. .
Итоговая таблица 6 Размещение устройств "'
Каталог
Тип устройства
/dev/dsk
Блочный интерфейс к дисковым устройствам
/dev/rdsk
Низкоуровневый, или символьный, интерфейс к дисковым устройствам
/dev/rmt
Ленточные устройства
/dev/term
Устройства последовательных линий (с последовательной передачей данных)
/dev/cua
Модемы для коммутируемых линий связи
/dev/pts
/dev/fbs
Псевдотерминалы
Буферы кадров (буферы дисплея).
/dev/sad
Административный драйвер STREAMS
Поля имени логического устройства описаны в итоговой таблице 7.
Итоговая таблица 7 Имялогическогоустройствадлядискового"
Поле
Описание
сх
Ссылается на номер контроллера SCSI
tx
Ссылается на целевой номер шины SCSI
dx
Ссылается на номер диска (это поле всегда имеет значение 0 за исключением дисковых массивов)
sx
Ссылается на номер части (slice) или раздела
Администрирование пакетов программного обес
печения
Операционная система Solaris предоставляет инструменты для добавления и удаления программного обеспечения из системы. Эти инструменты описываются в итоговой таблице 8.
управления программйымуправления программйымИтоговая таблица 8 Инструменты для'обеспечением
управления программйым
управления программйым
КомандаОписание
Управление программным обеспечением из командной строки
pkgaddДобавляет к системе пакеты программного обеспечения.
pkgrmУдаляет из системы пакеты программного обеспечения.
pkgchkПроверяет правильность инсталляции пакета программного обеспечения.
pkglnfoОтображает информацию о пакете программного обеспечения.
pkgaskСохраняет ответы в некотором файле ответов таким образом, чтобы
они могли быть автоматически представлены в процессе инсталляции.
pkgparamОтображает значения параметров пакета программного обеспечения.
Управление программным обеспечением из графического интерфейса пользователя
admintoolВызывает GUI из среды СОЕ или OpenWindows.
У вас может возникнуть желание узнать больше о заплатах, которые были инсталлированы ранее. В итоговой таблице 9 показаны команды, которые предоставляют полезную информацию о заплатах, уже инсталлированных в системе.
Команда
Функциональное назначение
showrev -р
Показывает все заплаты, наложенные на систему.
pkgparam pkgid PATCHLIST
Показывает все заплаты, наложенные на пакет, который идентифицируется аргументом pkgid.
pkgparam pkgid PATCH_
Показывает дату инсталляции и имя хоста, с которого была наложена данная заплата.
patchadd -R client_root_
Показывает все заплаты, наложенные на клиента с консоли сервера.
patchadd -p
Показывает все заплаты, наложенные на систему.
patchrm patchname
Удаляет указанную заплату.
Установка учетных записей пользователей
При добавлении нового пользователя в Admintool вы должны заполнить несколько полей. Каждое из них описывается в итоговой таблице 10.
■И^г6йа^^иц||^1|о*.
Объект
Описание
User Name
Введите уникальное имя пользователя, которое будет вводиться в приглашении регистрации Solaris. Выберите имя, уникальное для вашей организации. Это имя может содержать от 2 до 8 символов верхнего регистра (A-Z), символов нижнего регистра (a-z) или цифр (0-9), однако в нем не должны использоваться символы подчеркивания или пробелы. Первым символом имени должна быть буква, и, по крайней мере, один символ должен быть буквой нижнего регистра (строчной буквой).
ОбъектUser IDОбъектUser IDPrimary GroupSecondary GroupsCommentLogin ShellPasswordPrimary GroupSecondary GroupsCommentLogin ShellPasswordПродолжение итоговой таблицы 10
Объект
User ID
Объект
User ID
Primary Group
Secondary Groups
Comment
Login Shell
Password
Primary Group
Secondary Groups
Comment
Login Shell
Password
Описание
Введите уникальный идентификатор пользователя (подробнее этот вопрос рассматривается в главе 8). Admintool автоматически назначает следующий доступный UID; однако в сетевой среде необходимо убедиться, что данное число не дублируется другим пользователем или на другой системе. Все идентификаторы UID должны быть согласованы по всей сети. Обычно UID представляет собой некоторое число в диапазоне от 100 до 60002, однако его максимальное значение может достигать 2147483647. Обратите внимание на примечание в описании поля "Primary Group", которое относится к использованию UID больших, чем 60000.
Введите имя первичной группы или GID (идентификатор группы) группы, к которой будет относиться данный пользователь. Это та группа, которую операционная система будет присваивать файлам, созданным данным пользователем. Группа 10 (личный состав) - это предопределенная группа, которая подходит для большинства пользователей. Идентификатор GID может лежать в диапазоне от 0 до 60002, однако его максимальное значение может достигать и 2147483647.
(Необязательное поле). Введите имена или GID, разделенные пробелами, любых дополнительных групп, к которым будет относиться данный пользователь. Однако пользователь может входить в состав не более чем шестнадцати вторичных групп.
(Необязательное поле). Введите любые комментарии, такие как полное имя пользователя или его номер телефона.
Щелкните эту кнопку для выбора оболочки, которую будет использовать данный пользователь, например, /Ып/csh. Если ничего не выбрано, то по умолчанию выбирается оболочка Bourne (/bin/sh).
Щелкните эту кнопку для определения статуса пароля. Для выбора доступны следующие опции:
Cleared until first login (Пароль очищен до первой регистрации пользователя в системе).Cleared until first login (Пароль очищен до первой регистрации пользователя в системе).Account is locked (Учетная запись пользователя блокируется).Account is locked (Учетная запись пользователя блокируется).No password; setuid only . (Пароля нет; только setuid).No password; setuid only . (Пароля нет; только setuid).Normal password(Обычный пароль).Normal password(Обычный пароль).Это опция по умолчанию. Данная учетная запись пользователя не имеет присвоенного пароля. Пользователю будет предложено ввести пароль при первой регистрации в системе, если только параметру passreq в файле /etc/default/login не присвоено значение по.
Cleared until first login (Пароль очищен до первой регистрации пользователя в системе).
Cleared until first login (Пароль очищен до первой регистрации пользователя в системе).
Account is locked (Учетная запись пользователя блокируется).
Account is locked (Учетная запись пользователя блокируется).
No password; setuid only . (Пароля нет; только setuid).
No password; setuid only . (Пароля нет; только setuid).
Normal password(Обычный пароль).
Normal password(Обычный пароль).
Учетная запись пользователя отключается при вводе неправильного пароля и может быть разблокирована путем присвоения нового пароля. Данный тип учетной записи разрешает пользователю владеть файлами, но не регистрироваться в системе.
Данный тип учетной записи не дает возможности пользователю непосредственно зарегистрироваться в системе. Это позволяет программам, таким как Ip или uucp, запускаться под учетной записью, не предоставляя пользователю возможности зарегистрироваться в системе.
Данный тип учетной записи пользователя будет иметь пароль, который вы устанавливаете в возникшем всплывающем окне.
■Продолжение итоговой таблицы 10
ОбъектОписание.. .
Min Change.(Необязательное поле). Введите мини
мальное количество дней, допускаемое между сменами пароля. Это мешает пользователю изменить свой пароль, а затем вернуть его обратно через несколько секунд, что может привести к аннулироаа- нию концепции устаревания пароля. По умолчанию это поле имеет значение 0.
Max Change.(Необязательное поле). Введите макси
мальное количество дней, в течение которых пароль будет действителен, до того, как этот пароль должен быть изменен; в противном случае данная учетная запись пользоаателя блокируется. Если оставить это поле пустым, это означает, что пароль никогда не будет изменен.
Max Inactive.(Необязательное поле). Введите макси
мальное количество дней, в течение которых данная учетная запись может сохраняться при отсутствии доступа пользователя, после чего она автоматически блокируется. Если оставить поле пустым, это означает, что учетная запись остается активной ане зависимости от того, как долго она не использовалась.
Expiration Date.(Необязательное поле). Введите дату, ког
да истекает срок действия данной учетной записи пользователя. Значение None в данном поле означает, что срок действия учетной записи никогда не заканчивается.
Warning.(Необязательное поле). Введите количе
ство дней до истечения срока действия пароля, когда пользователь начнет получать предупреждения. Если оставить поле пустым, это означает, что никаких предупреждений не будет.
Create Home Dir.Выберите эту кнопку-флажок для автома
тического создания исходного (домашнего) каталога пользователя.
Path.Используйте это поле для указания на
какой-нибудь существующий каталог или для создания нового каталога.
Другой способ управления учетными записями пользователей - управление ими из командной строки. Хотя использование командной строки гораздо сложнее, чем графического интерфейса в среде Admintool, однако командная строка предоставляет несколько большую гибкость. Операционная система Solaris поддерживает команды администрирования, перечисленные в итоговой таблице 11, для установки и управления учетными записями пользователей.
Итоговая таблица 11 Команды администрированияучетных записей
w
Команда
"Описание'
useradd
Добавляет новую учетную запись пользователя
userdel
Удаляет учетную запись пользователя
usermod
Модифицирует учетную запись пользователя
groupadd
Добавляет новую группу
groupmod
Модифицирует группу (например, изменяет идентификатор или имя группы)
groupdel
Удаляет группу
Наиболее распространенной настройкой для сценариев запуска командных процессоров являются переменные окружения. В итоговой таблице 12 описываются переменные окружения и командных процессоров, которыми вы можете захотеть воспользоваться для настройки пользовательского файла инициализации.
Итоговая таблица 12
Переменная
Описание
history
Устанавливает протоколирование команд (историю) для командного процессора С.
НОМЕ
Устанавливает маршрут к домашнему каталогу данного пользователя.
LPDEST
Устанавливает принтер по умолчанию для данного пользователя.
РАТК (или path в командном процессоре С)
Перечисляет в определенном порядке имена каталогов, которые командный процессор просматривает в поисках программы для запуска, когда пользователь вводит какую-нибудь команду. Если конкретный каталог отсутствует в маршруте поиска, пользователи должны вводить команду с полным именем маршрута.
prompt
Определяет приглашение оболочки для командного процессора С.
TERM (или term в
Определяет терминал. Эта переменная должна быть сброшена в фай
командном процессоре С)
ле /etc/profile или в файле /etc/.login.
Устанавливает маршрут к почтовому ящику пользователя.
MANPATH
Устанавливает маршрут поиска страниц системного руководства.
umask
Устанавливает маску пользователя по умолчанию.
Введение в файловые системы
Файловая система представляет собой некоторую структуру каталогов, применяемую для организации файлов и их хранения на диске в стандартном формате файловой системы UNIX. Все компьютерные системы, базирующиеся надисках, имеют какую-либо файловую систему. В UNIX файловые системы имеют два основных компонента: файлы и каталоги. Файл представляет реальную информацию в том виде, как она хранится на диске, а каталог - это список имен файлов. Помимо отслеживания имен файлов файловая система должна также отслеживать даты доступа к файлам и права собственности на них.
Жесткий диск состоит из нескольких отдельных дисковых пластин, смонтированных на общем шпинделе. Данные, которые хранятся на каждой поверхности пластины, запи-
сываются и считываются с помощью головок диска. Круговая траектория, которую головка диска отслеживает над вращающейся дисковой пластиной, называется дорожкой.
Каждая дорожка образована из нескольких секторов, которые покрывают ее от начала до конца. Сектор состоит из заголовка, трейлера и 512 байт данных. Заголовок и трейлер содержат информацию для контроля ошибок, помогающую обеспечивать точность данных. Собранный вместе набор дорожек, который проходит сквозь все поверхности отдельных дисковых пластин для одного и того же положения головок, называется цилиндром.
Далее приведены четыре типа дисковых файловых систем, используемых в среде Solaris 8:
^ UFS. Файловая система, которая базируется на традиционной файловой системе UNIX - BSD FAT Fast. UFS представляет собой дисковую файловую систему, которая используется в среде Solaris по умолчанию.
^ HSFS. Это файловая система High Sierra и ISO 9660. Файловая система HSFS используется на дисках CD-ROM и доступна только для чтения.
^ PCFS. Это файловая система персонального компьютера, которая предоставляет доступ на чтение и запись к данным и программам, находящимся на дисках, отформатированных под DOS и предназначенных для DOS-ориентированных персональных компьютеров.
^ UDFS. Новой в версии Solaris 8 является файловая система UDF (Universal Disk Format - универсальный формат диска). Файловая система UDF представляет собой новый индустриальный стандарт формата хранения информации с использованием технологии оптических носителей, которая называется DVD (Digital Video Disk - цифровой видеодиск, или Digital Versatile Disk - универсальный цифровой диск).
Network File System (NFS - Сетевая файловая система), или дистанционные файловые системы, представляют собой файловые системы, доступные с отдаленных систем. NFS является единственной доступной сетевой файловой системой. Файловая система NFS подробно рассматривается в главе 17 и входит в перечень тем второго экзамена.
При создании файловой системы UFS часть диска (slice) делится на группы цилиндров. Затем данная часть делится на блоки для контроля и организации структуры файлов внутри данной группы цилиндров. Файловая система UFS имеет четыре типа блоков. Каждый блок в данной файловой системе выполняет специфическую функцию:
^ Загрузочный блок. Хранит информацию, используемую при выполнении загрузки системы.
Ф Суперблок. Хранит основную часть информации о файловой системе.
^ Индексный дескриптор. Хранит всю информацию о файле за исключением его имени.
❖ Хранилище, или блок данных. Этот блок хранит данные каждого файла.
Файловые системы могут быть смонтированы из командной строки с использованием команды mount. Команды, представленные в итоговой таблице 13, применяются из командной строки, чтобы монтировать и демонтировать файловые системы.
Итоговаятабп^цд 13 Команды файловы^ио*^
КомандаОписание
mountМонтирует заданные файловые системы и дистанционные ресурсы
Продолжение итоговой таблицы 13
Команда
Описание
mountall
Монтирует все файловые системы, заданные в таблице файловых систем (vfstab)
umount
Демонтирует заданные файловые системы и дистанционные ресурсы
umountall
Демонтирует все файловые системы, заданные в таблице файловых систем
Отчет об использовании дискового пространства файловой системой
Для просмотра емкости каждой смонтированной файловой системы, размера доступного дискового пространства и процента этого пространства, используемого в настоящее время, следует применить команду df и ее опции. Для получения отчета о количестве свободных дисковых блоков и количестве файлов следует применить команду du (directory usage -использование каталога).
Файловые системы Solaris: дополнительные темы
Команда mkfs создает файловую систему на символьном (или низкоуровневом) устройстве, находящемся в каталоге /dev/rdsk. Напомним еще раз, что настоятельно рекомендуется не запускать mkfs непосредственно, а использовать вместо нее более дружественную команду newfs, которая автоматически определяет все необходимые параметры, требуемые mkfs для создания файловой системы. Опция -v команды newfs позволяет выводить все параметры, которые передаются утилите mkfs.
Опции команды tunefs описываются в итоговой таблице 14.
-a <maxcontig>-a <maxcontig>ОпцияОписание
-a <maxcontig>
-a <maxcontig>
Определяет максимальное количество последовательно расположенных блоков, которые выкладываются перед введением циклической задержки (см. опцию -d). По умолчанию значение этой опции равно 1, поскольку драйверы большинства устройств требуют прерывания на каждую дисковую операцию. Для драйверов тех устройств, которые могут в рамках единой операции передачи данных соединять в цепочку несколько буферов, установите в качестве значения параметра максимальную длину цепочки блоков.
-d <rotde)ay>
Определяет ожидаемое время (в миллисекундах), требуемое, чтобы прервать выполнение передачи данных и инициировать новую передачу данных на тот же самый диск. Этот параметр позволяет решить, какой промежуток должен соблюдаться между последовательно идущими блоками в файле.
-е <maxbpg>Устанавливает максимальное количество блоков, которые могут быть
-m <minfree>-m <minfree>выделены из некоторой группы цилиндров любому одиночному файлу, прежде чем начнется выделение блоков из другой группы цилиндров.
-m <minfree>
-m <minfree>
Задает процент дискового пространства, скрытого от обычных пользователей (пороговое значение минимально свободного пространства). Значение этой опции по умолчанию - 10 процентов.
Введите или имя специального устройства (такое как /dev/rdsk/ c0t0d0s6), или имя файловой системы (такое как /home).Введите или имя специального устройства (такое как /dev/rdsk/ c0t0d0s6), или имя файловой системы (такое как /home).
Введите или имя специального устройства (такое как /dev/rdsk/ c0t0d0s6), или имя файловой системы (такое как /home).
Введите или имя специального устройства (такое как /dev/rdsk/ c0t0d0s6), или имя файловой системы (такое как /home).
Продолжение итоговой таблицы 14
Опция
Описание
-о <value>
Изменяет стратегию оптимизации данной файловой системы. Значение этой опции - space или time. Используйте значение space для экономии дискового пространства, а значение time - для организации размещения файлов и минимизации времени доступа. В общем случае оптимизируйте файловую систему по времени, если только она не заполнится более чем на 90%.
<special>/<filesystem>
Несколько других команд помогут вам администрировать менеджер томов на вашей системе. Они описываются в итоговой таблице 15.
КомандаОписание
rmmount
Это монтировщик сменных носителей информации. Эта команда используется демоном void для автоматического монтирования файловых систем /cdrom и /floppy, если инсталлирован компакт-диск или гибкий диск.
volcancel
Отменяет запрос пользователя на доступ к конкретной файловой системе компакт-диска или гибкого диска. Эта команда, выданная системным администратором, является удобной, если сменный носитель информации, содержащий файлоаую систему, в данный момент времени не находится на устройстве.
volcheck
Системный администратор выдает эту команду для проверки конкрет- ного.устройства на предмет наличия в нем носителя информации. По умолчанию эта команда проверяет устройство, указываемое именем / dev/diskette.
volmissing
Это действие, которое определяется в файле vold.conf, уведомляет пользователя, если он предпринимает попытку получить доступ к компактдиску или гибкому диску, который более не находится на устройстве.
void
Демон менеджера томов, который управляется конфигурационным файлом /etc/vold.conf.
Безопасность системы
Защита вашей системы от злоумышленников начинается со следующих мероприятий:
^ Физическая безопасность. Ограничьте физический доступ к оборудованию компьютера.
^ Управление доступом к системе. Ограничьте доступ пользователей с помощью паролей и полномочий.
^ Управление доступом к файлам. Ограничьте доступ к данным путем назначения полномочий доступа к файлам.
Ф Аудит пользователей. Контролируйте деятельность пользователей, чтобы обнаружить опасность раньше, чем произойдет повреждение системы.
^ Безопасность в сети. Защищайтесь от доступа через телефонные линии, последовательные линии связи или через сеть.
^ Защита от доступа с привилегиями суперпользователя. Зарезервируйте доступ с привилегиями суперпользователя только для системного администрирования.
Для отображения полномочий доступа к файлам используется команда Is -la. Первый столбец возвращенной этой командой информации отображает с помощью букв тип файла и полномочия доступа для пользователя, группы и всех остальных пользователей. Символы г, w и х описываются в итоговой таблице 16.
Итоговаяj^Hi^4fcVri^^
Символ
Полномочия
Это означает, что указанные пользователи...
г
Чтение
могут открывать данный файл и читать его содержимое.
W
Запись
могут писать в данный файл (изменять его содержимое), добавлять к нему данные или удалять данный файл.
X
Исполнение
могут исполнять данный файл, если он представляет собой программу или сценарий оболочки.
-
Отказ в доступе
не могут читать данный файл, писать в него или исполнять его.
Если посмотреть на полномочия для каталога, то все столбцы информации являются теми же самыми, что и для файла, с одним единственным исключением. Символы г, w и х, находящиеся в первом столбце, трактуются несколько по-другому, чем в случае файла. Эти символы описываются в итоговой таблице 17.
Символ
Полномочия
Это означает, что указанные пользователи...
г
Чтение
могут просматривать список файлов в каталоге.
W
Запись
могут добавлять или удалять файлы или ссылки в данном каталоге.
X
Исполнение
могут открывать или исполнять файлы в данном каталоге. Кроме того, могут создавать каталог и каталоги, вложенные в текущий каталог.
-
Отказ в доступе
не имеет привилегий на чтение, запись или исполнение.
Чтобы модифицировать полномочия доступа к файлу или его принадлежность, следует использовать команды, перечисленные в итоговой таблице 18, однако не забывайте, что только владелец файла или суперпользователь может присваивать или изменять указанные значения.
^^Bggti^nua 18 Команды доступа к файл?
КомандаОписание
chmod
Изменяет полномочия доступа к файлу. Для изменения полномочий вы можете аоспользоваться либо симаолическим режимом (буквы и символы), либо абсолютным режимом (числа а восьмеричном формате).
chown
Изменяет принадлежность файла.
chgrp
Изменяет группу, владеющую файлом.
Важно отключить все сетевые службы, которые не являются необходимыми, поскольку многие службы, запускаемые inetd, такие как rexd, представляют собой серьезные угрозы безопасности. Программа rexd - это демон, отвечающий за исполнение дистанционных программ. В системе, соединенной с остальным миром через сеть Internet, rexd может создать потенциальную точку входа для хакера. Служба протокола TFTP должна быть обязательно отключена, если только у вас нет бездисковых клиентов, которые получают преимущества от использования этой службы. Многие сайты также будут отключать finger, чтобы внешние пользователи не смогли бы узнать имена внутренних пользователей. Все остальное в большой степени зависит от потребностей вашего сайта.
В операционной системе Solaris 8 протокол FTP (File Transfer Protocol - протокол передачи файлов) представляет собой общепринятый инструмент для передачи файлов по сети. Хотя большинство сайтов разрешают протокол FTP, вам необходимо ограничить круг лиц, которые могут пользоваться им. Solaris 8 содержит файл /etc/ftpusers, который используется для ограничения доступа через FTP. Файл /etc/ftpusers содержит список имен пользователей, которым запрещена регистрация через FTP на данной системе.
Ниже перечислены основные преимущества использования SUDO для предоставления доступа с привилегиями суперпользователя:
^ Вам не нужно передавать пароль суперпользователя кому бы то ни было. Это удобный способ предоставления пользователям контролируемого доступа к командам, которые требуются им для выполнения их работы.
^ Это хороший инструмент для начинающих системных администраторов, который позволяет им приступить к работе, не получая при этом полного доступа к системе.
^ Журналы аудита очень удобны для отслеживания деятельности суперпользователя. Если что-нибудь изменяется, вы сможете обратиться к этому журналу и посмотреть, что случилось, и кто это сделал.
^ SUDO хорошо работает и представляет собой простое, но эффективное точечное решение.
Операционная система Solaris 8 включает в себя ASET (Automated Security Enhancement Tool - инструмент оптиматизации автоматической защиты), который помогает вам контролировать и управлять защитой системы посредством автоматического выполнения задач, которые в противном случае пришлось бы выполнять вручную. ASET выполняет семь задач, которые перечисляются далее, и каждая из них реализует конкретные проверку и настройку системных файлов и полномочий для обеспечения защиты информации системы:
^ Проверяет соответствующие полномочия системных файлов
^ Проверяет содержимое системных файлов
^ Проверяет непротиворечивость и целостность элементов файлов /etc/passwd и /etc/group
^ Проверяет содержимое системных файлов конфигурации
^ Проверяет файлы окружения (.profile, .login и .cshrc)
^ Проверяет соответствующие настройки команды eeprom
^ Создает брандмауэр на маршрутизаторе
Системный администратор может реализовать наилучшие мероприятия по защите информации системы, однако без сотрудничества с пользователями идея защиты системы
будет скомпрометирована. Системный администратор должен изучить следующие общепринятые правила, относящиеся к защите системы:
ф Используйте правильные пароли. Многочисленные сайты применяют для учетных записей суперпользователя такие пароли, как "admin" и "supervisor".
ф Не предоставляйте никому свой пароль, кем бы этот человек ни представился. Один из лучших взломщиков систем нашего времени сказал, что он может просто притвориться сотрудником службы системной поддержки, узнать у какого- нибудь пользователя его пароль и получить возможность свободно распоряжаться данной системой.
ф Если вы отходите от системы, выйдите из нее или заблокируйте экран. Подумайте об ущербе, который вы можете понести, если кто-нибудь подойдет к вашей рабочей станции и отправит от вашего имени паскудное сообщение электронной почты президенту вашей компании!
ф Не подключайте модемы к своей системе без разрешения системного администратора.
Управление процессами
Процесс отличается от задания или команды, которые могут быть образованы совокупностью процессов, работающих совместно для выполнения конкретной задачи. Каждый процесс имеет ассоциированный с ним идентификатор, который обозначается аббревиатурой pid (process identifier - идентификатор процесса). Вы можете контролировать процессы, выполняющиеся в данный момент времени, используя одну из команд, перечисленных в итоговой таблице 19.
Mirgffteii^процессов" '
КомандаОписание
ps
Выполняется из командной строки для отображения информации об активных процессах.
pgrep
Выполняется из командной строки для поиска процессов по заданному имени или атрибуту.
prstat
Выполняется из командной строки для отображения информации об активных процессах системы.
Менеджер процессов СОЕ
Графический интерфейс пользователя, используемый для отображения и управления процессами на некоторой системе. Эта утилита требует наличия терминала, способного отображать графическую информацию.
Процесс имеет определенные атрибуты, которые непосредственно влияют на его выполнение. Эти атрибуты перечисляются в итоговой таблице 20.
АтрибутОписание
PID
Идентификация процесса (уникальный номер, который определяет данный процесс внутри ядра операционной системы).
PPID
Идентификатор родительского процесса (создателя данного процесса).
UID
Номер идентификатора того пользователя, который является владельцем данного процесса.
Продолжение итоговой таблицы 20
Атрибут
Описание
EUID
Действующий идентификатор пользователя данного процесса.
GID
Идентификатор группы пользователя, который является владельцем данного процесса.
EGID
Действующий идентификатор группы, которая владеет данным процессом.
Priority
Приоритет, с которым запускается данный процесс.
Использование команды kill
Команда kill посылает сигнал завершения (сигнал 15) конкретному процессу, и этот процесс прекращает выполняться. Сигнал 15, принятый по умолчанию, когда с командой kill не используется никаких опций, является сигналом мягкого завершения, который разрешает процессу осуществить работу по очистке перед тем, как прекратить выполняться. Сигнал 9, с другой стороны, называется истинным, безусловным завершением, поскольку не может быть перехвачен или проигнорирован. Если конкретный процесс все еще существует после выдачи команды kill -9, то это означает либо то, что в ядре операционной системы UNIX произошел останов и ядро ожидает какого-нибудь события, такого как завершение дисковой операции ввода-вывода, либо то, что вы не являетесь владельцем данного процесса.
КомандаКомандаЧасто задание, выполняемое в течение длительного времени, должно иметь пониженный приоритет для ослабления его влияния на систему, что позволяет более коротким или более срочным заданиям получать большую долю системных ресурсов. В подобных случаях используйте команду nice так, так описывается в итоговой таблице 21, предоставляя какую-нибудь команду или программу.
Команда
Команда
Описание
Понижение приоритета некоторого процесса
nice <command_name>Повышает значение nice на четыре единицы (по умолчанию).
nice +4 <command_name>Повышает значение nice на четыре единицы.
nice +10 <command_name> Повышает значение nice на десять единиц.
Повышение приоритета некоторого процесса
nice -10 <command_name> Повышает приоритет данной команды посредством уменьшения значения nice
nice - -10 <command_name> Повышает приоритет данной команды посредством уменьшения значения nice. В данном случае требуется наличие двух знаков минуса (-). Первый из них представляет собой знак опции, а второй обозначает отрицательное число.
В итоговой таблице 22 описываются поля файла crontab для планирования выполнения заданий на регулярной основе.
Поле
Описание
Значения
1
Минута
От 0 до 59. Символ звездочки (*) в этом поле обозначает каждую минуту.
2
Час
От 0 до 23. Символ звездочки (*) в этом поле обозначает каждый час.
3
День месяца
От 1 до 31. Символ звездочки (*) в этом поле обозначает каждый день месяца.
4
Месяц
От 1 до 12. Символ звездочки (*) в этом поле обозначает каждый месяц.
5
День недели
От 0 до 6 (значение 0 соответствует воскресенью). Символ звездочки (*) в этом поле обозначает каждый день недели.
6
Команда
Введите команду, которая будет выполняться.
Планирование одиночного системного события (at)
Команда at применяется для планирования заданий, которые будут выполняться позднее. В отличие от файла crontab, который позволяет планировать задание для многократного выполнения через строго соблюдаемые интервалы времени, задание, представленное с помощью команды at, выполняется только один раз, в Заданный момент времени.
Служба печати LP
Для определения принтера в системе Solaris может быть использовано множество методов. Инструменты, которые Solaris предоставляет для добавления принтеров, описываются в итоговой таблице 23.
:№MW Т^иц^З ^т«даж Sota^■
SunSoft Print Client SoftwareSunSoft Print Client SoftwareУтилитаОписание
SunSoft Print Client Software
SunSoft Print Client Software
Интерфейс, который ранее был доступен только в составе набора инструментов администрирования Solstice AdminSuite. Теперь он доступен в качестве составной части стандартного дистрибутиве программного обеспечения Solaris и применяется для установки клиентов печати.
Admintool
Графический интерфейс пользователя, используемый на локальной системе для создания, модифицирования и удаления принтеров. Эта утилита представляет рекомендованный способ добавления принтеров для начинающих пользователей.
Solstice Print Manager
Графический интерфейс пользователя в составе менеджера печати, применяемый для управления принтерами е среде службы имен. Эта утилита доступна только в составе дистрибутива Solaris 8 для программного обеспечения сервера.
Команды службы печати LP
Эти утилиты командной строки используются для установки и управления принтерами. Эти команды предоставляют полную функциональность; при решении расширенных задач пакеты Admintool и AdminSuite иногда имеют ограничения.
В итоговой таблице 24 перечисляются команды 1р, которые представляют собой средства командной строки для управления принтерами и очередями печати.
КомандаОписание
accept/reject
Принимает или отвергает любые последующие запросы к принтеру или классу, входящему в область спулинга.
cancel
Позволяет пользователю остановить печать информации.
enable/disable
Разрешает или запрещает дальнейший вывод информации из спулера на данный принтер.
Ip
Пользовательская команда печати. Помещает информацию, подлежащую выводу на печать, в спулер.
Ipadmin
Разрешает конфигурировать службу печати.
Ipmove
Перемещает запросы на печать между адресатами.
Ipsched
Запускает службу печати.
Ipshut
Останавливает службу печати.
Ipstat
Отображает статус службы печати.
Резервное копирование и восстановление
Операционная система Solaris предоставляет утилиты, перечисленные в итоговой таблице 25. Эти утилиты могут быть использованы для копирования данных с диска на сменный носитель информации и для их последующего восстановления.
1^ого'В|д,табли1^:25. УтилиЭД^ л.
Утилита
Описание
tar
Архивирует данные в другой каталог, на другую систему или на другой носитель информации.
dd
Быстро копирует данные.
cpio
Копирует данные из одного места в другое.
pax
Копирует файлы и поддеревья каталогов на одну магнитную ленту. Эта утилита обеспечивает лучшую переносимость, чем tar или cpio, поэтому она может быть использована для переноса файлов на другие типы систем UNIX.
ufsdump
Выполняет резервное копирование всех файлов в некоторой файловой системе.
ufsrestore
Восстанавливает некоторые или все файлы, архивированные с помощью команды ufsdump.
Написание сценариев и программ оболочек
Операционная среда Solaris 8 предлагает три широко распространенных командных процессора:
ф Командный процессор Bourne (/sbin/sh). Принятая по умолчанию оболочка. Включает язык командного программирования, исполняющий команды, считываемые с терминала или из файла.
^ Командный процессор С (/bin/csh). Это командный интерпретатор, имеющий синтаксис, подобный синтаксису языка программирования С. Командный процессор С предоставляет несколько удобных функций для интерактивного применения, которые недоступны в среде Bourne, включая завершение имени файла, использование псевдонимов команд, подстановку истории.
^> Командный процессор Korn (/bin/ksh). Включает язык командного программирования, исполняющий команды, считываемые с терминала или из файла.
Оболочка регистрации - это командный интерпретатор, который запускается, когда вы регистрируетесь в системе. Операционная среда Solaris 8 предлагает три наиболее широко используемых командных процессора, которые описываются в итоговой таблице 26.
Итоговая таблица 26 Основные особенности командных процессоров
Особенность
Bourne
С
Кот
Синтаксис, совместимый с sh
Да
Нет
Да
Управление заданиями
Да
Да
Да
Список истории (протокол выдачи команд)
Нет
Да
Да
Редактирование командной строки
Нет
Да
Да
Псевдонимы
Нет
Да
Да
Односимвольная аббревиатура (для каталога регистрации)
Нет
Да
Да
Защита файлов от перезаписи
Нет
Да
Да (не затирает полезные данные)
Игнорирование Ctrl+D (конца файла)
Нет
Да
Да
Расширенные функции команды cd
Нет
Да
Да
Разделение файлов инициализации
Нет
Да
Да
Файл logout
Нет
Да
Нет
Сетевая среда Solaris
В модели ISO/OSI отдельные службы, которые требуются для системы связи, организованы в виде семи уровней, построенных один на другом. Эти уровни можно представить себе как некоторые этапы, каждый из которых должен быть завершен, прежде чем вы сможете перейти к следующему этапу, и, в конце концов, обеспечить обмен информацией между системами. В итоговой таблице 27 описываются функции каждого отдельного уровня.
Итоговаятаблица 27GftTBtNifrypoBnii а-
Уровень ISO/OSIФизическийУровень ISO/OSIФизическийФункция
Уровень ISO/OSI
Физический
Уровень ISO/OSI
Физический
КанальныйКанальныйУровень 1 описывает аппаратные средства сети, включая электрические и механические соединения сетевого оборудования.
Канальный
Канальный
Уровень 2 разбивает данные на кадры для пересылки нв физический уровень и принимает кадры подтверждения приема. На этом уровне выполняются контроль ошибок и повторная передача кадров, принятых некорректно.
Продолжение итоговой таблицы 27
Уровень ISO/OSI
Функция
Сетевой
Уровень 3 управляет доставкой данных через уровень канала передачи данных и, в свою очередь, используется транспортным уровнем.
Транспортный
Уровень 4 определяет порядок использования сетевого уровня, чтобы обеспечить виртуальное соединение типа точка-точка, свободное от ошибок, позволяющее хосту А посылать сообщения хосту В таким образом, чтобы эти сообщения прибывали к адресату без повреждений и в правильной последовательности.
Сеансовый
Уровень 5 использует транспортный уровень для установления соединения между процессами на различных хостах. Он обеспечивает защиту и создание сеанса связи.
Представительский
Уровень 6 выполняет такие функции, как сжатие текста, кодирование или преобразование форматов, пытаясь сгладить различия между хостами. Он позволяет несовместимым процессам связываться друг с другом на прикладном уровне через сеансовый уровень.
Прикладной
Уровень 7 отвечает за пользовательский вид данной сети (например, форматирование сообщений электронной почты). Представительский уровень обеспечивает прикладному уровню привычное локальное представление данных, независимое от формата, используемого в данной сети.
Определения понятий, используемых в сетях
Далее приведены определения понятий, используемых в сетях:
^ Пакет. Пакет - базовая единица информации, передаваемая через сеть.
^ Ethernet. Ethernet - это стандарт, который определяет физические компоненты машины, используемые для доступа к сети, и скорость, с которой работает сеть. Этот стандарт включает в себя спецификации кабелей, коннекторов (соединителей) и компонентов интерфейса компьютера.
^ FDDI. FDDI (Fiber Distributed Data Interface - распределенный волоконно-оптический интерфейс передачи данных) представляет собой стандарт для передачи данных на волоконно-оптических линиях связи в локальной сети, которая может быть протянута на расстояние до 200 км (124 мили). FDDI базируется на протоколе кольцевой сети с маркерным доступом.
Сетевые аппаратные средства
Сетевые аппаратные средства представляют собой физическую часть сети, которую вы можете реально увидеть. Физические компоненты сети соединяют системы между собой. В их состав входят NIC, хост, проложенный кабель, соединители, хабы (концентраторы) и маршрутизаторы. Далее приведены определения этих компонентов:
^ Сетевая интерфейсная плата. Аппаратная часть компьютера, которая позволяет вам подсоединить его к некоторой сети, носит название NIC (Network Interface Card - сетевая интерфейсная плата, или сетевой адаптер).
^ Хосты (узлы сети). Если вы являетесь опытным пользователем Solaris, то вам, безусловно, знаком термин "хост", часто используемый в качестве синонима слова "компьютер", или "машина". С точки зрения TCP/IP в сети могут быть только два типа сущностей: маршрутизаторы и хосты.
^ Хабы (концентраторы) и кабельная проводка. Кабель сети Ethernet подводится к каждой системе от концентратора. Концентратор не делает ничего кроме соединения всех кабелей сети Ethernet таким образом, чтобы компьютеры могли соединяться один с другим. Он не занимается усилением сигнала или маршрутизацией пакетов из одной сети в другую.
^ Маршрутизаторы. Маршрутизатор представляет собой машину, которая направляет пакеты Ethernet из одной сети в другую. Другими словами, маршрутизатор соединяет локальные сети, а концентратор - компьютеры.
Команды протокола TCP/IP
Далее перечисляются команды протокола TCP/IP:
^ telnet. Программа telnet используется для регистрации в другой системе в данной сети.
^ rlogin. Команда rlogin также предназначена для регистрации в другой системе в данной сети. В отличие от telnet команда rlogin имеет некоторый механизм, благодаря которому вам нет необходимости вводить регистрационное имя и пароль, если файлы /.rhosts и /etc/hosts.equiv находятся на своих местах.
^ Программа ftp. Протокол FTP (File Transfer Protocol - протокол передачи файлов) используется для передачи одного или нескольких файлов между двумя системами в сети.
^ гср. Для передачи одного или нескольких файлов между двумя системами в сети вы также можете воспользоваться командой rep (remote сору - дистанционного копирования). Другая система должна доверять вашему идентификатору ID на текущем хосте.
^ rsh. Вы можете воспользоваться командой rsh (remote shell - дистанционной оболочки) для выполнения какой-нибудь оболочки на другой системе в сети. Другая система должна доверять вашему идентификатору ID на текущем хосте.
^ гехес. Команда гехес также используется для выполнения какой-нибудь оболочки на другой системе в сети. Эта команда отличается от rsh тем, что вы должны ввести пароль. На многих сайтах команда rsh недоступна по соображениям безопасности, и в качестве замены для нее используется гехес.
^ finger. Команда finger отображает информацию о пользователях, зарегистрированных в локальной системе или в других системах.
^ rup. Команда rup отображает статус хоста некоторой дистанционной системы аналогично команде uptime.
^ ping. Для тестирования сетевого соединения с конкретным хостом следует ис. пользовать команду ping.
Классы сетей
Всего существует пять классов IP-адресов: А, В, С, D и Е. Ниже приведено краткое описание каждого из этих пяти классов.
Сети класса А
Класс А применяется для очень больших сетей с миллионами узлов, таких как Internet. В номере сети класса А используются первые восемь бит IP-адреса в качестве собственного идентификатора сети. Оставшиеся 24 бит образуют часть, предназначенную для хоста. Значения, назначаемые первому байту номеров сети класса А, попадают в диапазон от 0 до 127. Для примера рассмотрим IP-адрес 75.4.10.4. Значение 75 в первом байте означает, что данный хост находится в сети класса А. Оставшиеся байты, 4.10.4, устанавливают адрес хоста. Агентство InterNIC присваивает только первый байт номера сети класса А. Использование остальных трех байт - на усмотрение владельца сети данного номера. Всего может существовать только 127 сетей класса А; каждая из таких сетей может объединять до 16777214 хостов.
Сети класса В
Сети класса В представляют собой сети среднего размера, такие как сети университетов и крупных компаний с большим количеством узлов. В качестве номера сети класса В используются первые 16 бит IP-адреса, а вторые 16 бит-для номеров хостов. Значения первого байта номера сети класса В находятся в диапазоне от 128 до 191. В номере 129.144.50.56 первые два байта, 129.144, присваиваются InterNIC и образуют адрес данной сети. Последние два байта, 50.56, образуют адрес хоста и оставлены на усмотрение владельца данной сети. Сеть класса В может объединять до 65534 узлов.
Сети класса С
Класс С используется для небольших сетей, содержащих менее 254 узлов. В номере сети класса С используются первые 24 бит IP-адреса, а оставшиеся 8 бит - для номеров хостов. Номер сети класса С занимает первые три байта IP-адреса; только четвертый байт оставлен на усмотрение владельца данной сети. Значения первого байта номера сети класса С находятся в диапазоне от 192 до 223. Значения второго и треть-его байтов находятся в диапазоне от 1 до 255. Типичный адрес сети класса С может вы-глядеть как 192.5.2.5, где первые три байта, 192.5.2, формируют номер данной сети. Последний байт в приведенном примере, 5, представляет собой номер конкретного хоста. Сети класса С может объединять не более 254 узлов.
Сети класса D и Е
Адреса класса D находятся в диапазоне от 224 до 239 и применяются для многоадресной рассылки IP-сообщений, как это определено в документе RFC 988. Адреса класса Е находятся в диапазоне от 240 до 255 и зарезервированы для экспериментального использования.
Псевдофайловые системы и область своппинга в Solaris
Псевдофайловая система, которая иногда называется также расположенной в памяти, или виртуальной, файловой системой, не размещается на жестком физическом носителе информации. Псевдофайловые системы размещаются только в физической памяти и существуют лишь до тех пор, пока работает операционная система. Псевдофайловые системы, которые поддерживаются в операционной среде Solaris 8, перечисляются в итоговой таблице 28.
ЖОяЖЖШЙЯИВ^^
Файловая система Описание
proofs
proofs (Process file system -файловая система процессов) содержит список активных процессов, поименованных в соответствии с их номерами, в каталоге /ргос. Здесь сохраняются образы активных процессов, упорядоченные по их идентификаторам. В каталоге /usr/proc/bin доступны инструменты для работы с процессами, которые отображают очень подробную информацию о процессах, перечисленных в каталоге /ргос.
tmpfs
Это временная файловая система, предназначенная для хранения файлов в памяти без накладных расходов, связанных с записью в дисковую файловую систему. Данные в этой файловой системе разрушаются всякий раз, когда файловая система демонтируется или перезагружается система.
fdfs1
Файловая система файловых дескрипторов предоставляет явные имена для открытия файлов с использованием файловых дескрипторов.
swapfs
Файловая система своппинга, или подкачки, используется ядром операционной системы для управления областью подкачки на дисках.
Инсталляция сервера
Сервер должен соответствовать некоторым минимальным требованиям, прежде чем на него можно будет инсталлировать операционную систему Solaris 8:
^ Релиз операционной системы Solaris 8 поддерживает все платформы sun4c, sun4d, sun4u и sun4m. Некоторые системы sun4c могут не поддерживаться в будущих выпусках операционной системы Solaris 8 после релиза 11/99. Если у вас имеется система платформы sun4c, то прежде чем приступать к работе, обратитесь к вашему поставщику аппаратных средств, чтобы убедиться, что эта система поддерживается.
^ Для запуска инсталляции с GUI система должна иметь не менее 32 Мбайт оперативной памяти. Однако для сервера обычно устанавливается 256 Мбайт оперативной памяти или даже больше.
^ Диск должен быть достаточно большим для хранения операционной системы Solaris, области своппинга и дополнительного программного обеспечения, такого как пакеты Solstice AdminSuite и AutoClient. Кроме того, на сервере операционной системы вам потребуется выделить дополнительное дисковое пространство в файловой системе /export для поддержки бездисковых клиентов или систем Solstice AutoClient. Планируйте не менее 1 Гбайт дискового пространства, одна-ко реально вы должны иметь 2 Гбайт или даже больше.
В итоговой таблице 29 перечисляются команды, которые помогут собрать необходимую информацию о вашем сервере.
ТребуемаяКоманда(ы), используемая
информациядля сбора информации
Имя системы/usr/bin/uname -и
Первичный сетевой интерфейсifconfig -а
Продолжение итоговой таблицы 29
Требуемая информацияIP-адресИмя доменаЯвляется ли данная система частью подсетиКакая служба имен используется.Требуемая информацияIP-адресИмя доменаЯвляется ли данная система частью подсетиКакая служба имен используется.Команда(ы), используемая для сбора информации
Требуемая информация
IP-адрес
Имя домена
Является ли данная система частью подсети
Какая служба имен используется.
Требуемая информация
IP-адрес
Имя домена
Является ли данная система частью подсети
Какая служба имен используется.
ypmatch <system_name> <host> nismatch <system_name>
more /etc/inet/hosts
/usr/bin/domainname
more /etc/netmasks
more /etc/nsswitch.conf
Администрирование устройств и управление дисками
В операционной системе Solaris каждое дисковое устройство описывается тремя способами, используя три различных соглашения о наименовании:
ф Имя физического устройства. Представляет полное имя маршрута данного устройства в иерархической структуре информации устройств.
ф Имя экземпляра. Представляет сокращенное имя, принятое в ядре, каждого возможного устройства в системе.
ф Имя логического устройства. Используется системными администраторами с большинством команд файловых систем для ссылки на устройства.
Системные команды, которые применяются для предоставления информации о физических устройствах, описываются в итоговой таблице 30.
Итоговая таблица 30 Команды, предоставляющие информацию об устройствах
Команда
Описание
prtconf
Отображает информацию системной конфигурации, включая общее количество памяти и конфигурацию устройств так, как она описана в системной иерархии. Это удобный инструмент, чтобы проверить, "видит" ли система конкретное устройство.
sysdef
Отображает информацию о конфигурации устройств, включая аппаратные средства системы, псевдоустройства, загружаемые модули и выбранные параметры ядра операционной системы.
dmesg
Отображает диагностические сообщения системы, а также список устройств, подключенных к системе после ее последней перезагрузки.
Логические устройства организованы в подкаталоги, находящиеся внутри каталога /dev, по типам устройств, как показано в итоговой таблице 31.
Каталог
Описание содержимого
/dev/dsk
Блочный интерфейс к дисковым устройствам
/dev/rdsk
Низкоуровневый, или символьный, интерфейс к дисковым устройствам
/dev/rmt
Ленточные устройства
/dev/term
Устройства последовательных линий (с последовательной передачей данных)
/dev/cua
Модемы для коммутируемых линий связи
/dev/pts
Псевдотерминалы
/dev/fbs
Буфер кадра, или буфер дисплея
/dev/sad
Административный драйвер STREAMS
Используя утилиты командной строки пакета DiskSuite или GUI пакета DiskSuite Tool, системный администратор создает каждое устройство путем перетаскивания частей диска на один из трех типов объектов метаустройств: собственно метаустройства, репликации (точные копии) базы данных состояния и динамически распределяемые области "горячего" резервирования. Эти объекты описываются в итоговой таблице 32.
ОбъектОписание
Мета устройствоМета устройствоБаза данных состояния метаустройстваБаза данных состояния метаустройстваДинамически распределяемая область "горячего" резервированияДинамически распределяемая область "горячего" резервированияМетаустройство - группа физических частей диска, которые сточки зрения операционной системы выглядят как единое логическое устройство. Метаустройство применяется для увеличения емкости хранения данных и повышения их доступности.
Мета устройство
Мета устройство
База данных состояния метаустройства
База данных состояния метаустройства
Динамически распределяемая область "горячего" резервирования
Динамически распределяемая область "горячего" резервирования
Это база данных, которая сохраняет информацию о состоянии конфигурации DiskSuite. Пакет DiskSuite не может функционировать до тех пор, пока вы не создадите репликации базы данных состояния метаустройства.
Это некоторый набор частей диска (областей "горячего” резервирования), зарезервированных для обеспечения автоматического замещения в случае отказа какой-нибудь части либо в подзеркале, либо в метаустройстве RAIDS. Динамически распределяемые области "горячего" резервирования используются для повышения доступности данных.
Среда NFS
Служба NFS позволяет компьютерам, имеющим различную архитектуру и работающим под управлением различных операционных систем, совместно использовать, или разделять, файловые системы через сеть. Точно так же, как команда mount позволяет вам монтировать файловую систему на локальном диске, служба NFS позволяет монтировать файловую систему, которая находится на другой системе в любом месте данной сети. Служба NFS обеспечивает следующие преимущества:
^ Позволяет множеству компьютеров использовать одни и те же файлы таким образом, чтобы любой пользователь данной сети мог бы получить доступ к одним и тем же данным. Это исключает необходимость резервирования данных на нескольких системах..
^ Уменьшает затраты на хранение данных за счет того, что компьютеры получают возможность совместного использования приложений и данных.
^ Обеспечивает непротиворечивость и надежность данных, поскольку все пользователи имеют возможность читать один и тот же набор файлов.
^ Обеспечивает для пользователей прозрачность процесса монтирования файловых систем.
^ Обеспечивает для пользователей прозрачность получения доступа к дистанционным файлам.
^ Поддерживает гетерогенные среды.
^ Сокращает накладные расходы на системное администрирование.
Для манипулирования своими службами NFS использует несколько демонов. Эти службы инициируются из сценариев запуска/etc/init.d/nfs.server и /etc/init.d/nfs.client. Наиболее важные демоны NFS перечисляются в итоговой таблице 33.
ДемонОписание
nfsdЭтот демон поддерживает экспортирование файловых систем и запро
сы с дистанционных систем на предоставление доступа к файлам. Сервер NFS запускает несколько экземпляров данного демона. Рассматриваемый демон обычно вызывается на уровне запуска 3 и стартует от сценария запуска /etc/init.d/nfs.server.
mountdЭтот демон обрабатывает запросы на монтирование от клиентов NFS.
Данный демон также предоставляет информацию о том, какие именно файловые системы монтируются клиентом. Для просмотра этой информации воспользуйтесь командой showmount, которая описывается далее в настоящей главе. Рассматриваемый демон обычно вызывается на уровне запуска 3 и стартует от сценария запуска /etc/init.d/nfs.server.
lockdДанный демон запускается и на сервере, и на клиенте NFS и обеспечи
вает службы блокирования файлов в среде NFS. Рассматриваемый демон запускается сценарием /etc/init.d/nfs.client на уровне запуска 2.
statdДанный демон запускается и на сервере, и на клиенте NFS и взаимо
действует с демоном lockd при обеспечении функций сбоя и восстановления для служб блокирования файлов в среде NFS. Рассматриваемый демон запускается сценарием /etc/init.d/nfs.client на уровне запуска 2.
rpcbindСпособствует установлению начального соединения между клиентом и
сервером NFS.
nfslogdДемон обеспечивает протоколирование процессов функционирования
на сервере NFS в среде операционной системы Solaris.
WebNFS
WebNFS - программный продукт, предлагающий стандартный протокол от фирмы Sun Microsystems, который расширяет возможности ее службы NFS до Internet. Фирма Sun считает, что WebNFS предоставляет весомые преимущества в части повышения производительности по сравнению с современными протоколами Internet, HTTP и FTP.
CacheFS
Одним из важнейших показателей производительности компьютера является время доступа к файлам. В сетевой среде, где применяется NFS, каждый запрос на доступ к файлу через сеть влияет на производительность. Файловая система CacheFS может быть использована для повышения производительности файловых систем, смонтированных средствами NFS, или медленных устройств, таких как привод CD-ROM. Когда выполняется кэширование некоторой файловой системы, то данные, считанные с дистанционной файловой системы или диска CD-ROM, сохраняются в кэше на диске локальной системы.
AutoFS
В тех случаях, когда некоторая сеть содержит даже среднее количество систем, любые попытки монтировать файловые системы с каждой из систем могут быстро превратить управление службами NFS в настоящий ночной кошмар. Средство AutoFS, которое также называется автоматическим монтировщиком, спроектировано для разрешения подобных ситуаций путем предоставления такого метода, в котором дистанционные каталоги монтируются только тогда, когда они используются.
Службы имен
Служба имен имеет дело со следующей информацией:
^ Имена систем (хостов) и их адреса
Имена пользователей
Пароли
^ Полномочия доступа
Службы имен, доступные в Solaris 8, описываются в итоговой таблице 34.
Итоговая таблица 34 Службы имен
Служба имен
Описание
Файлы /etc
Оригинальная система наименований принятая в Unix.
NIS
Network Information Service - сетевая информационная служба.
NIS+
Network Information Service Plus - сетевая информационная служба с дополнительными возможностями (более детально описывается далее в этой главе).
DNS
Domain Name System - система доменных имен (более детально описывается далее в этой главе).
LDAP
Lightweight Directory Access Protocol - облегченный протокол доступа к каталогам (более детально описывается далее в этой главе).
' Служба имен NIS
Служба имен NIS, которая раньше называлась YP (Yellow Pages - Желтые Страницы), представляет собой распределенную систему баз данных, позволяющую системному администратору управлять конфигурацией многочисленных хостов из некоторого центрального местоположения. Общая конфигурационная информация, которая без использования
службы NIS могла требовать раздельного обслуживания на каждом хосте сети, теперь может быть сохранена и может обслуживаться в некотором центральном местоположении, а затем распространяться на все узлы в сети. Служба имен NIS сохраняет информацию об именах и адресах рабочих станций, о пользователях, о самой сети и сетевых службах.
Системы в сети NIS конфигурируются следующим образом:
Ф Главный сервер
ф Подчиненные серверы ф Клиенты серверов NIS
Переключатель службы имен управляет тем, как клиентская рабочая станция или приложение получает сетевую информацию. Каждая рабочая станция имеет файл переключателя службы имен, который находится в ее каталоге /etc и называется nsswitch.conf. Кроме того, в каталоге /etc на каждой системе вы сможете найти шаблоны для файла nsswitch.conf. Эти шаблоны описываются в итоговой таблице 35.
ИмяОписание
nsswitch.files
Данный шаблон применяется в том случае, когда будут использоваться локальные файлы в каталоге /etc и не существует никакой службы имен.
nsswitch.nis
Использует базу данных NIS в качестве основного источника информации за исключением таблиц отображения паролей (passwd), групп (group), автомонтирования (automount) и псевдонимов (aliases). Соответствующие запросы адресуются сначала локальным файлам каталога /etc, а затем базам данных NIS.
nsswitch.nisplus
Использует базу данных службы имен NIS+ в качестве основного источника информации за исключением таблиц отображения паролей (passwd), групп (group), аатомонтирования (automount) и псевдонимов (aliases). Соответствующие запросы адресуются сначала локальным файлам каталога /etc, а затем базам данных NIS+.
nsswitch.tins
Файл шаблонов выполняет поиск в локальных файлах каталога /etc для всех элементов за исключением элемента hosts. Для поиска элемента hosts используется DNS.
nsswitch.Idap
Использует службу имен LDAP в качестве основного источника для всей информации за исключением таблиц отображения паролей (passwd), групп (group), аатомонтироаания (automount) и псевдонимов (aliases). Соответствующие запросы адресуются сначала локальным файлам каталога /etc, а затем базам данных LDAP.
Файл переключателя службы имен содержит перечень из более чем 19 типов сетевой информации, которые называются базами данных, вместе с источниками информации для разрешения и порядком, в каком выполняется поиск в этих источниках информации. Допустимые источники информации, которые могут быть заданы в этом файле, перечисляются в итоговой таблице 36.
Итоговая таблица 36 Источники информации баз данных для служб имен в
Источник
■ файле/etc/nsswitch.conf <-
Описание
files
Ссылается на локальные файлы в каталоге /etc данного клиента.
nisplus
Ссылается на таблицу службы имен NIS+.
Источник
Продолжение итоговой таблицы 36 Описание
nis
Ссылается на таблицу службы имен NIS.
user
Применяется только к элементу printers (принтеры).
dns
Применяется только к элементу hosts.
Idap
Ссылается на DIT (Directory Information Tree - дерево информации каталогов).
compat
Поддерживает старый стиль синтаксиса "+", который используется в информации файлов паролей (pasewd) и групп (group).
NIS+
Служба имен NIS+ подобна NIS, однако при этом она обладает большими возможностями. Служба имен NIS+ вовсе не является расширением NIS, а представляет собой новое программное обеспечение.
Служба имен NIS ориентирована на удовлетворение административных потребностей малых и средних компьютерных сетей с архитектурой клиент/сервер, то есть сетей, объединяющих несколько сотен клиентских станций. На некоторых сайтах с тысячами пользователей NIS также считается вполне адекватной. Служба имен NIS+ проектировалась для больших сетей, объединяющих тысячи клиентов, в которых системы распределены между дистанционными сайтами в различных часовых поясах. В настоящее время такие сети становятся преобладающими. Кроме того, информация, которая сохраняется в сетях, сегодня изменяется куда чаще, и служба имен NIS должна была быть обновлена, чтобы соответствовать такой среде. Наконец, сегодняшние системы требуют высокого уровня защиты информации, a NIS+ способна решить многие проблемы безопасности, которые не могли быть решены службой имен NIS.
Аутентификация по стандарту DES
Аутентификация по стандарту DES (Data Encryption Standard - стандарт шифрования данных) использует криптографию с ключом общего пользования для аутентификации как пользователей, так и систем в сети. DES - стандартный механизм шифрования; криптография с ключом общего пользования представляет собой кодовую систему, которая использует два ключа: общего пользования (открытый) и личный.
DNS
Служба имен DNS, предоставляемая Internet для сетей, использующих протокол TCP/IP (Transmission Control Protocol/Internet Protocol - протокол управления передачей/межсетевой протокол). Эта служба была разработана таким образом, чтобы рабочие станции в сети могли бы быть идентифицированы посредством использования общепринятых имен вместо их Internet-адресов. Служба имен DNS - это программа, которая конвертирует доменные имена в соответствующие им IP-адреса. Без такой службы пользователям для доступа в Internet приходилось бы запоминать не слова, а наборы чисел. Процесс нахождения IP-адреса некоторого компьютера посредством использования его имени хоста в качестве индекса называется разрешением адресов по именам, или отображением имен в адреса.
LDAP
Протокол LDAP (Lightweight Directory Access Protocol - облегченный протокол доступа к каталогам) представляет собой самую последнюю службу поиска имен, которая была добавлена к Solaris 8. Строго говоря, протокол LDAP представляет собой службу каталогов. Служба каталогов подобна базе данных, однако она содержит больше описательной информации, основанной на атрибутах. Информация в каталоге обычно считывается, но не записывается в него.
Консоль управления Solaris
SMC (Solaris Management Console - консоль управления Solaris) использует набор инструментов GUI, чтобы упростить администрирование ваших серверов. Программное обеспечение Solaris Management Console 2.0 базируется на технологии Java и упрощает решение задач администрирования как локальных, так и дистанционных серверов Solaris путем предоставления следующих возможностей:
ф Консоль с упрощенной навигацией и графическим интерфейсом пользователя, которая содержит контекстно-зависимую панель помощи, включающую оперативную документацию
ф Администрирование множества систем Solaris с единственной консоли и при однократной регистрации
ф RBAC (Role-Based Access Control - ролевое управление доступом), позволяющее администраторам делегировать определенные административные права пользователям в рамках системы защиты информации
ф Открытая и расширяемая среда, которая интегрирует приложения, написанные на Java, традиционные приложения X. 11, wizards (мастеров) и страницы HTML, используя SDK (Software Development Kit - набор инструментальных средств разработки программного обеспечения) из SMC 2.0
SMC позволяет администраторам запускать приложения дистанционно и просматривать локально их активность на всех серверах. Централизованное и дистанционное управление всеми серверами может быть реализовано с любого сервера в сети.
Solaris AdminSuite
Пакет Solaris AdminSuite аналогичен Admintool в том смысле, что он также предоставляет удобный в использовании GUI для облегчения рутинных задач администрирования серверов. AdminSuite 3.0 - интегрированный пакет инструментов для администрирования ваших систем Solaris. Мастера и диалоговые окна предоставляют поддержку и инструкции для управления учетными записями пользователей, группами, списками почтовой рассылки, компьютерами/сетями, монтированием/совместным использованием файловых систем, последовательными портами, файлами протоколов и службами доменных имен.
Admintool применяется для управления автономной системой, тогда как AdminSuite ориентирован на ваши потребности в снижении стоимости и сложности управления распределенными системами.
Ролевое управление доступом
С помощью RBAC (Role-Based Access Control - ролевого управления доступом) в операционной среде Solaris 8 администраторы могут предоставлять ограниченные административные возможности пользователям, которые не являются суперпользователями. Это достигается с помощью трех возможностей:
Ф Авторизация. Права пользователей, гарантирующие доступ к какой-нибудь ограниченной функции.
ф Профили выполнения. Механизмы пакетирования для группирования авторизаций и команд со специальными атрибутами; например, идентификаторы пользователей и групп или идентификатор суперпользователя.
ф Роли. Специальные типы учетных записей пользователей, предназначенных для выполнения некоторого набора административных задач.
Чтобы предоставить пользователям возможности выполнения привилегированных операций, RBAC базируется на четырех следующих базах данных:
Ф user attr (расширенная база данных атрибутов пользователей). Связывает пользователей и роли с авторизациями и профилями.
Ф auth attr (база данных атрибутов авторизации). Определяет авторизации и их атрибуты и идентифицирует ассоциированный файл системной помощи, или подсказки.
Ф prof_attr (база данных атрибутов для профилей прав доступа). Определяет профили, поддерживает список авторизаций, назначенных профилю, и идентифицирует ассоциированный файл помощи.
ф exec_attr (база данных атрибутов профилей). Определяет привилегированные операции, назначаемые профилю.
JumpStart
В состав JumpStart входят три основных компонента:
Ф Службы загрузки и идентификации клиента. Эти службы реализуются сетевым загрузочным сервером и предоставляют информацию, необходимую клиенту JumpStart для выполнения загрузки с использованием сети.
Ф Службы инсталляции. Эти службы реализуются сетевым инсталляционным сервером, который предоставляет образ операционной среды Solaris, используемый клиентом JumpStart в качестве источника информации для выполнения инсталляции.
Ф Службы конфигурации. Эти службы реализуются сетевым конфигурационным сервером и предоставляют информацию, которую клиент JumpStart использует для разбивки дисков и создания файловых систем, добавления и удаления пакетов программного обеспечения Solaris и выполнения других конфигурационных задач.
В итоговой таблице 37 перечисляются и описываются некоторые команды JumpStart.
ИтоговаШтаблица
Команда
Описание
setup_install_server
Подготавливает инсталляционный сервер для предоставления операционной системы клиенту в процессе инсталляции Jumpstart.
add_to_install_server
Это сценарий, копирующий дополнительные пакеты программного обеспечения в рамках дерева продуктов с компакт-дисков Solaris 8 Software и Solaris 8 Languages на локальный диск существующего инсталляционного сервера.
modify_install_server
Это сценарий, который добавляет программное обеспечение интерфейса пользователя Solaris Web Start к образам компакт-дисков Solaris 8 Software и Solaris 8 Languages на существующем инсталляционном сервере, что дает возможность пользователям применять Solaris Web Start для загрузки системы и инсталляции программного обеспечения Solaris 8 через сеть.
add_install_client
Добавляет сетевую инсталляционную информацию о системе к файлам каталога /etc инсталляционного или загрузочного сервера для того, чтобы система могла быть инсталлирована через сеть.
rm_install_client
Удаляет клиентов Jumpstart, которые ранее были установлены для сетевой инсталляции.
check
Проверяет информацию в файле правил.
pfinstall
Выполняет "пробный прогон" инсталляции для тестирования профиля.
patch add -C
Добавляет заплаты к файлам, размещенным в каталоге miniroot (то есть, в каталоге Solaris_8/Tools/Boot) образа инсталляционного компакт-диска, созданного с помощью команды setup_install_server. Эта команда позволяет вам накладывать заплаты на инсталляционные команды Solaris и другие команды, специфичные для каталога miniroot.
Советы по
I обучению и подготовке к экзамену
Настоящая глава предоставляет вам некоторые общие указания, которые должны помочь подготовиться к экзамену на звание сертифицированного системного администратора фирмы Sun. Информация в настоящей главе организована в виде двух разделов. Первый раздел относится к вашей подготовительной деятельности перед экзаменом и включает в себя общие советы по обучению. Второй раздел предлагает вам некоторые советы и рекомендации для реальной ситуации прохождения тестирования. Однако прежде, чем коснуться этих областей, задумайтесь ненадолго иад тем, как вы учитесь.
Обучение как процесс
Чтобы лучше понять природу подготовки к экзаменам, важно осознать обучение как некоторый процесс. Вы, вероятно, знаете, как вы лучше всего усваиваете новый материал. Для вас может оказаться наилучшим вариантом работа с конспектами илн, возможно, вы сторонник визуального обучения. Каким бы нн был ваш стиль обучения, подготовка к тестированию занимает определенное время. Очевидно, что вы не сможете начать подготовку к данному экзамену в ночь перед его сдачей; аажно понимать, что обучение - это эволюционный процесс; в рамках этого процесса вам необходимо сфокусироваться на том, что вы уже знаете и чего вы еще не знаете.
Обучение имеет место тогда, когда мы сопоставляем новую информацию со старой. Вы уже имеете некоторый предварительный опыт работы с компьютерами и сейчас гото-
витесь к сдаче сертификационного экзамена. Использование настоящей книги, программного обеспечения и вспомогательных материалов будет не просто постепенно увеличивать объем ваших знаний; в процессе обучения вы будете реально изменять организацию ваших знаний по мере того, как будете интегрировать вновь изученную информацию в вашу существующую базу знаний. Это приведет вас к всестороннему пониманию задач и концепций, очерченных в темах, и обработки данных в целом. Повторимся еще раз, что все это происходит скорее как повторяющийся процесс, а не как одиночное событие. Имейте в виду описанную выше модель обучения в процессе вашей подготовки к экзамену и вы сможете принять более правильные решения относительно того, что следует изучать и сколько еще времени вам нужно уделить обучению.
Советы по обучению
Существует множество способов того, как подойти к процессу обучения, так же, как и множество различных типов материала для изучения. Однако приведенные советы должны хорошо работать для того материала, который выносится на сертификационный экзамен.
Стратегии обучения
Хотя разные люди используют различные способы для своего обучения, тем не менее, существуют некоторые базовые принципы, которые применимы ко всем. Вы должны адаптировать некоторые стратегии обучения, чтобы воспользоваться преимуществами этих принципов. Один из таких принципов заключается в том, что обучение может быть разделено по глубине на различные уровни. Распознавание (например, терминов) являет собой пример поверхностного уровня обучения, в котором вы опираетесь на запрос некоторого типа, чтобы вызвать активизацию в памяти имеющихся знаний. Осмысление, или понимание (например, понимание концепций, лежащих в основе терминов), представляет собой более глубокий уровень обучения. Возможность анализировать некоторую концепцию и предлагать свое понимание этой концепции представляет еще более глубокий уровень обучения.
Ваша стратегия обучения должна позволить вам постичь материал на один или два уровня глубже, чем просто распознавание. Это поможет вам уверенно чувствовать себя на экзамене. Вы будете знать материал настолько глубоко, что сможете легко справиться с вопросами, ориентированными на уровень распознавания, которые используются при проведении тестирования с множественным выбором. Вы также сможете применить ваши знания для решения новых проблем.
Макро и микростратегии обучения
Одна из стратегий, которая сможет привести к более глубокому уровню освоения материала, включает в себя подготовку некоторого конспекта, который охватывает все темы данного экзамена. Вы должны несколько больше погрузиться в изучаемый материал и включиться на один или два уровня детализации глубже заявленных тем этого экзамена. Затем расширьте свой конспект, добавив к нему формулировки определений или выводы по каждому пункту.
Конспект предполагает два подхода к обучению. Прежде всего вы можете изучать конспект, сосредоточившись при этом на организации изучаемого материала. Работая таким образом, вы продвигаетесь через пункты и подпункты вашего конспекта для того,
чтобы изучить, как они связаны между собой. В частности, необходима уверенность в том, что вы понимаете, в чем каждая из изучаемых предметных областей подобна другим областям и чем она отличается от них. Далее вам необходимо поработать над конспектом, сосредоточившись на деталях. Запоминайте и старайтесь понять термины и их определения, факты, правила и стратегии, преимущества и недостатки и т.д. В процессе этого этапа проработки конспекта попытайтесь изучить не столько картину в целом (организационную информацию, над которой вы работали на первом этапе изучения конспекта), сколь отдельные ее детали.
Исследования показали, что попытка усвоить оба типа информации в одно и то же время оказывает негативное влияние на процесс обучения в целом. Чтобы лучше чувствовать себя на экзамене, разделите весь процесс обучения на два описанных выше этапа.
Активные стратегии обучения
Разработайте и реализуйте на практике активную стратегию обучения. Выписывайте и формулируйте темы, терминологию, факты и определения. С точки зрения процесса обработки информации человеком записывание заставит вас более активно кодировать информацию. Обычное чтение являет собой пример более пассивного подхода к обработке информации. После этого определите, можете ли вы применить изученную вами информацию, для чего попытайтесь создать ваши собственные примеры и сценарии. Задумайтесь над тем, где именно вы сможете применить изученные вами концепции. Повторимся еще раз - выписывайте изучаемую информацию для того, чтобы обрабатывать факты и концепции более активно.
Стратегии на основе здравого смысла
Наконец, вы должны в процессе обучения придерживаться практики, сформированной на основе здравого смысла. Учитесь в то время, когда вы сосредоточены, уменьшайте или исключите факторы, которые отвлекают ваше внимание, делайте перерывы, когда вы утомились, и т.д.
Предварительное самотестирование
Предварительная проверка своих знаний позволит вам оценить, как идет процесс обучения. Одним из наиболее важных аспектов обучения является то, что называется метаобучением. Метаобучение относится к тем ситуациям, когда вы знаете что-нибудь хорошо или когда вам необходимо изучить немного больше. Другими словами, вы узнаете, насколько хорошо или насколько плохо вы усвоили изучаемый материал.
Для большинства людей получение объективной самооценки может оказаться достаточно сложной задачей. В этом смысле удобными являются практические тесты, поскольку они более объективно выявляют как то, что вы уже освоили, так и то, что еще изучено недостаточно. Вы должны использовать эту информацию для обзоров и дальнейшего обучения. Когда вы циклически проходите через процесс обучения, оцениваете качество своих знаний, делаете обзор и снова повторяете процедуру оценивания до тех пор, пока не поймете, что уже готовы к сдаче экзамена - тогда можно говорить, что имеет место процесс эволюционного обучения.
Вы, возможно, уже обратили внимание на практический экзамен, включенный в настоящую книгу. Используйте его в качестве составной части процесса обучения. Программное обеспечение ExamGear на прилагаемом диске CD-ROM также предоставляет вам раз-
личные способы для самопроверки, прежде чем вы подойдете к реальному экзамену. Посредством использования практического экзамена вы сможете пройти полностью рассчитанную, практическую проверку своих знаний, которая по своему характеру полностью аналогична тому, с чем вам предстоит столкнуться на реальном экзамене Solaris. Опция Adaptive Exam программного обеспечения ExamGear может быть использована для проведения аналогичной проверки в адаптивной среде тестирования. В ходе прохождения тестирования этот режим контролирует ваш прогресс, предлагая более сложные вопросы по мере того, как вы добиваетесь успехов. Используя опцию Study Mode, вы можете установить свое собственное ограничение времени, сосредоточиться только на какой-нибудь конкретной предметной области (например, на защите информации), а также получать немедленную реакцию на ваши ответы.
Установите цель для вашей предварительной самопроверки. Обоснованной можно считать цель добиться результата в пределах 90%. Более подробная информация по этому инструменту тестирования представлена в приложении Е
Советы по подготовке к экзамену
Сертификационный экзамен Solaris отражает области знания, установленные фирмой Sun. Этот экзамен базируется на фиксированном наборе экзаменационных вопросов. В течение сеанса тестирования отдельные вопросы представляются в случайном порядке. Если вы будете сдавать один и тот же экзамен более одного раза, то увидите одно и то же количество вопросов, но при этом вы не обязательно увидите те же самые вопросы.
Экзамены по Solaris являются идентичными с точки зрения охвата содержания, количества вопросов и времени, выделяемого для ответов, однако сами вопросы при этом отличаются. Однако вы можете заметить, что некоторая часть одних и тех же вопросов появляется или даже распределяется между различными конечными формами. Когда на некотором экзамене вопросы распределяются между несколькими конечными формами, то процент такого разделения обычно невелик.
Экзамены по Solaris также имеют фиксированное ограничение времени, в течение которого вы должны завершить весь процесс. Инструмент тестирования ExamGear на диске CD- ROM, прилагаемом к настоящей книге, предоставляет фиксированный формат экзаменов.
Наконец, количество очков, которое вы наберете на экзамене с фиксированным форматом, основывается на количестве вопросов, на которые вы дадите правильные ответы. Количество очков, необходимое для прохождения данного экзамена, является одним и тем же для всех конечных форм данного экзамена с фиксированным форматом.
Формат данного экзамена представлен в таблице 1.
Таблица 1 Время, количество вопросов и количество очков для '
’ * ’’ прохождения экзамена 5 4 Л/, -
Экзамен
Ограничение времени e минутах
Количество вопросов
Процент правильных ответов для прохождения экзамена
Solaris 8 Certified
90
57
66
System Administrator for the Solaris 8 Operating Environment: часть 1
Экзамен
Ограничение времени в минутах
Количество вопросов
Продолжение таблицы 1 Процент правильных ответов для прохождения экзамена
Solaris 8 Certified
90
61
70
System Administrator for the Solaris 8
Operating Environment: часть 2
На обоих экзаменах используются вопросы типа "выбор ответа из нескольких вариантов", "заполнение поля ответа" и "сопоставление".
Не забывайте, что не следует задерживаться на любом из вопросов слишком долго. 120 минут, отведенные для сдачи экзамена, истекут очень быстро.
Соберем все вместе
Дав все эти разные куски информации, теперь ставится задача сформировать некоторый набор советов, которые помогут вам успешно преодолеть сертификационный экзамен Solaris.
Дополнительные советы по подготовке к экзаменам
Общие рекомендации по подготовке к экзаменам всегда являются полезными. Эти советы включают в себя следующие положения:
Ф Освойтесь с общей терминологией, командами и оборудованием. Практический опыт является одним из ключей к успеху; будет весьма затруднительно, хотя и возможно, выдержать этот экзамен, не имея такого опыта. Просмотрите специфические советы по обучению, помещенные в начале каждой главы, для получения указаний о том, как наилучшим образом подготовиться к экзамену.
Ф Ознакомьтесь с текущей версией руководства по подготовке к экзамену на Web- сайте фирмы Sun. Посетите также Web-сайт по адресу www.unixed.com, на котором можно найти последние изменения и актуальные советы по обучению от других администраторов, которые сдавали данный экзамен.
Ф Выучите фундаментальные технические подробности, однако помните о том, что вам необходимо иметь возможность продумать ваш вариант ответов на вопросы.
Ф Воспользуйтесь любой возможностью практического тестирования. Рекомендуется воспользоваться тестами, включенными в настоящую книгу, и теми, которые вы сможете создать с использованием программного обеспечения ExamGear на прилагаемом диске CD-ROM. Средство тестирования на компакт-диске было спроектировано таким образом, чтобы соответствовать материалу, представленному в настоящей книге, и чтобы помочь вам подготовиться к настоящему экзамену. Другие примеры вопросов для тестирования можно найти на Web-сайте по адресу www.unixed.com. На этом сайте обеспечивается поддержка актуальности и существенности вопросов. Кроме того, вы можете экспериментировать совместно с другими администраторами Solaris, которые готовятся к экзамену, как и вы. Этот Web-сайт также предоставит вам актуальные ссылки на официальные Web-сайты сертификации фирмы Sun.
В процессе экзаменационной сессии
Приведенные общие рекомендации по сдаче данного экзамена обобщают опыт, накопленный за годы его проведения:
^ Дышите глубже и постарайтесь расслабиться, когда вы в первый раз придете на экзамен. Важно контролировать давление, которое вы можете ощутить, что вполне естественно, в процессе сдачи экзамена.
ф Вам будет предоставлена бумага для заметок. Выделите время для того, чтобы записать любую фактическую информацию и технические подробности, которые вы занесли в краткосрочную память.
ф Внимательно читайте всю информацию и инструкции на экране. Эти отображения, будучи сведены воедино, дадут вам существенную для сдаваемого экзамена информацию.
ф Внимательно читайте экзаменационные вопросы. Перечитывайте каждый вопрос, чтобы выявить все существенные детали.
ф Отвечайте на вопросы в том порядке, в котором они представлены. Пропуск вопросов не прибавит вам уверенности; время убывает неумолимо.
Ф Не суетитесь, однако и не засиживайтесь над сложными вопросами. Вопросы отличаются по степени сложности. Не позволяйте какому-нибудь особенно сложному или развернутому вопросу повергнуть вас в панику.
ф Обратите внимание на выделенное время и на количество вопросов, которые вынесены на сдаваемый вами экзамен. Сделайте приближенный расчет количества минут, которое вы можете потратить на один вопрос, и используйте эту оценку, регулируя темп прохождения экзамена.
ф Воспользуйтесь как преимуществом тем, что вы можете вернуться назад и взглянуть еще раз на вопросы, которые пропустили или на которые уже ответили. Записывайте на предоставленной вам бумаге для заметок вопросы, на которые вы не смогли ответить уверенно, и помечайте относительную сложность каждого вопроса. После того, как вы сделаете это, ближе к окончанию экзамена вернитесь к наиболее сложным вопросам.
Ф Если после того, как вы ответили на все вопросы (и при этом не слишком переутомились!), еще осталось время до конца экзаменационной сессии, просмотрите еще раз ваши ответы. Обратите особое внимание на вопросы с большим количеством деталей и на вопросы, содержащие графические изображения.
ф Что же касается изменения ответов на вопросы, то наиболее общий практический совет в данном случае - не делайте этого'. Если вы внимательно прочли вопрос и с первого раза почувствовали, что знаете правильный ответ, то, вероятнее всего, так оно и есть. Не пытайтесь повторно угадывать. Если и после того, как вы проверили ответы, один из них все равно кажется вам ошибочным, тогда измените этот ответ. Если же вы все еще не уверены, доверьтесь вашему первому ощущению.
Если вы завершили обучение и следуете при этом приведенным рекомендациям, то все должно быть хорошо. Желаем удачи!
Практичес кий экзамен
Вопросы практического экзамена
Из каких перечисленных компонентов состоит ядро?
Оболочка и переменные окружения
Небольшое статическое ядро и множество динамически загружаемых модулей
Загрузочное PROM и операционная система
Состояния запуска системы 0, 1 и s
Чем характеризуется переход на уровень запуска s? Выберите все приемлемые варианты ответов.
Однопользовательский режим.
Состояние закрытия.
Все пользователи выводятся из системы.
Файловые системы остаются смонтированными.
Какая команда используется для изменения уровней запуска?
A. sudo
В. kill
С. init D. run
Что из перечисленного ограничивает набор операций, которые пользователям разрешается выполнять в ответ на приглашение OpenBoot?
security-password
set-security
С. set-secure
D. security-mode
Из каких перечисленных основных фаз состоит процедура начальной загрузки? Выберите все приемлемые варианты ответов.
Загрузка ядра.
autoboot - автозагрузка (если установлена auto-boot?).
Включение аппаратных средств.
Выполнение POST (Power-on self test - самотестирования при включении питания).
Какая команда является наилучшей для определения вашей аппаратной платформы и текущей версии операционной системы?
init -q
sysdef
С. uname -а
D. arch
Какая информация необходима в процессе инсталляции? Выберите все приемлемые варианты ответов.
А. IP-адрес
Код изделия
С. Часовой пояс
D. Пароль суперпользователя
Какие из перечисленных условий не будут препятствовать инсталляции заплаты? Выберите все приемлемые варианты ответов.
Инсталлируемая заплата требует наличия другой заплаты, которая не инсталлирована.
Данная заплата несовместима с другой заплатой, которая уже инсталлирована.
Заплата была удалена.
Версия данной заплаты не является самой последней.
Что делает команда pkgchk?
Отображает информацию пакета программного обеспечения.
Сохраняет ответы в некотором файле ответов для того, чтобы они могли быть представлены автоматически в процессе инсталляции.
Определяет корректность инсталляции пакета программного обеспечения.
Отображает значения параметров пакета программного обеспечения.
Какое поле в Admintool соответствует максимальному количеству дней, в течение которых учетная запись может обходиться без доступа пользователя до того, как она автоматически блокируется?
Max Change
Max Inactive
Expiration Date
Max Days
Какие пользовательские файлы инициализации применяются соответственно в командных процессорах Bourne, Korn и С?
.bshrc, .kshrc, .cshrc
.exrc, .profile, .login
.profile, .profile, .login
.profile работает для всех оболочек
Какая из перечисленных файловых систем может размещаться на локальном физическом диске? Выберите все приемлемые варианты ответов.
A. HSFS
TMPFS
UFS
NFS
Какой блок файловой системы содержит информацию о данной файловой системе?
Загрузочный блок (boot block)
Суперблок (superblock)
Индексный дескриптор (inode)
Блок данных (data block)
Какую команду вы должны использовать для просмотра объема всех файловых систем, смонтированных в данной системе?
du -а
1s
df
mountall
Какая команда представляет собой более дружественный способ создания файловой системы?
A. mkfs
newfs
fsck
mknod
Какая из перечисленных команд не может быть использована для копирования файловых систем?
A. dd
В. ufsdump
С. fsck
D. volcopy
Какую команду вы можете использовать, чтобы посмотреть, какой процесс препятствует демонтированию файловой системы?
ps
mountall
С. fsck
D. fuser
Что из перечисленного является легко угадываемым паролем?
Britney
ТпКОТЬ!
С. Dietcoke
ZunSpOts
Что может установить значение 023 umask в качестве полномочий по умолчанию на новые файлы?■
Владелец не имеет прав; Группа только записывает; Мир только записывает и выполняет
Владелец читает, записывает и выполняет; Группа только читает; Мир только выполняет
Владелец читает, записывает и выполняет; Группа только читает и выполняет; Мир только читает
Владелец не имеет прав; Группа только читает и выполняет; Мир только читает 20. Какое утверждение является справедливым относительно команды sudo? Выберите все приемлемые варианты ответов.
Она поставляется стандартно с Solaris 8.
Она может быть использована для избирательного предоставления доступа с привилегиями суперпользователя.
Она предотвращает необходимость передачи пароля суперпользователя.
Она отслеживает команды суперпользователя в журнале аудита.
Для чего вы можете использовать команду prstat? Выберите все приемлемые варианты ответов.
Для получения информации обо всех процессах конкретного пользователя.
Для определения использования дискового пространства.
Для определения того, какие процессы используют наибольшее количество циклов центрального процессора.
Для изменения уровня запуска системы.
Какой из перечисленных сигналов безусловно останавливает процесс?
S1GHUP
SIGK1LL
SIGTERM
SIGQU1T
Что делает команда at?
Устанавливает режим "завершить все"; завершает все процессы, не принадлежащие суперпользователю.
Выполняет пакетное задание однократно в заданное время в будущем.
Устанавливает повторяющееся пакетное задание для выполнения в заданное время суток.
Отображает время последней регистрации в системе некоторого пользователя.
Какая из перечисленных задач принтеров не может быть выполнена с помощью Admintool?
Добавление локальной очереди печати.
Добавление сетевого принтера.
Выбор принтера по умолчанию.
Изменение типа принтера.
Какая команда (или команды) может сообщить вам, если очередь печати завершилась? Выберите все приемлемые варианты ответов.
Ipadmin
Ipstat
admintool
HP Jetadmin
Какая оболочка обладает всеми перечисленными возможностями: редактирование командной строки, синтаксическая совместимость с командным процессором Bourne и создание списка истории?
A. csh
ksh
sh
Ни одна из перечисленных
Что делает команда tar xvf /tmp/backup.tar? Выберите все приемлемые варианты ответов.
Извлекает архивы из файла /tmp/backup.tar в текущий каталог.
Выводит на печать расширенный листинг файлов и каталогов из /tmp/backup.tar.
Сжимает/tmp/backup.tar.
Архивирует текущий каталог и все его содержимое в /tmp/backup.tar.
Какое из перечисленных утверждений является несправедливым относительно команды dd?
К. Она быстро преобразовывает и копирует файлы с различными форматами данных.
Она может быть использована для копирования целой файловой системы или раздела диска на магнитную ленту.
Она может быстро и эффективно сжимать файлы.
Она может быть использована для считывания стандартной входной информации от другой программы для записи на магнитную ленту.
Что необходимо сделать, чтобы файл мог стать сценарием командного процессора Bourne? Выберите все приемлемые варианты ответов.
Его первая строка должна быть #!/bin/sh.
Его последняя строка должна быть done.
Должна существовать функция main.
Для этого файла должен быть установлен бит исполнения с помощью команды chmod.
Как вы можете послать текстовый файл с именем testfile.txt по данному адресу user@devnull.org через электронную почту из командной строки? Выберите все приемлемые варианты ответов.
mail user@devnull.org > testfile.txt
cat testfile.txt | mail user@devnull.org
mail user@devnull.org < testfile.txt
mail testfile.txt > user@devnull.org
Как описывается сеансовый уровень в эталонной модели сети IS0/0S1?
Он управляет доставкой данных через канальный уровень и, в свою очередь, используется транспортным уровнем. Наиболее распространенным протоколом сетевого уровня является 1Р.
Он определяет порядок использования сетевого уровня для того, чтобы обеспечить виртуальное соединение типа точка-точка, свободное от ошибок, позволяющее хосту А посылать сообщения хосту В таким образом, чтобы эти сообщения прибывали адресату без повреждений и в правильной последовательности.
Он использует транспортный уровень для установления соединения между процессами на различных хостах. Он обеспечивает защиту и создание сеанса связи.
Он выполняет такие функции, как сжатие текста, кодирование или преобразование форматов, для того, чтобы попытаться сгладить различия между хостами.
Что из перечисленного обычно простирается на более чем одну сеть?
А. Хаб (концентратор)
В, Маршрутизатор
С. NIC (сетевая интерфейсная плата)
D. Хост
Сколько IP-адресов доступно для присвоения в пределах сети класса С?
А. 254
В. 24
С. 65534
D. ни одного
Какая псевдофайловая система находится на физическом диске?
procfs
swapfs
tmpfs
D. fdfs
Чему соответствуют каталоги в /ргос?
Файловым системам
Физическим и виртуальным устройствам, присоединенным к данной системе
Идентификаторам активных процессов
Идентификаторам активных пользователей
Что требуется системе типа AutoClient от сервера? Выберите все приемлемые варианты ответов.
Дистанционное дисковое пространство для файловой системы /usr и корневой файловой системы
Программное обеспечение для установки собственных файловой системы /usr и корневой файловой системы
Дистанционная область своппинга, или подкачки
Ничего после первоначальной инсталляции
На какой из перечисленных систем не может быть инсталлировано программное обеспечение Solaris 8?
Бездисковый клиент
Система типа JavaStation
AutoClient
Сервер AutoClient
Какими соглашениями о наименовании описывается каждое дисковое устройство в среде Solaris? Выберите все приемлемые варианты ответов.
Имя экземпляра
Имя физического устройства
Виртуальное имя
Имя логического устройства
Что из перечисленного не базируется на NFS?
WebNFS
AutoFS
CacheFS
D. UFS
С какой из перечисленных опций всегда должны быть смонтированы файловые системы, которые монтируются для чтения и записи или содержат исполняемые файлы? Выберите все приемлемые варианты ответов.
A. hard
В. intr
С. soft
D. nointr
Что делает statd?
Она поддерживает экспортирование файловых систем и запросы на предоставление доступа к файлам от дистанционных систем.
Она обрабатывает запросы на монтирование от клиентов NFS.
Она выполняется на сервере и на клиенте NFS и обеспечивает блокирование файлов.
Она выполняется на сервере и на клиенте NFS и взаимодействует с lockd, чтобы предоставить функции аварийного завершения и восстановления для служб блокирования в NFS.
Что из перечисленного представляет собой средство для обеспечения избирательного доступа к административным возможностям? Выберите все приемлемые варианты ответов.
Передача какому-нибудь пользователю пароля суперпользователя
Использование команды sudo
КВАС
D. usermod
Что из перечисленного относится к информации, которую обрабатывает служба имен? Выберите все приемлемые варианты ответов.
Системные имена и адреса хостов
Имена пользователей
Полномочия доступа
Динамическое присвоение IP-адресов
Как вы можете определить сервер NIS, используемый данной машиной?
Воспользоваться ypwhich.
Воспользоваться ypcat.
Обратиться к каталогу/etc/nsswitch.conf.
Обратиться к каталогу /var/yp.
Какой файл вы можете отредактировать, чтобы придать локальному файлу /etc/ hosts преимущество перед просмотром узлов через DNS или NIS?
/etc/inetd.conf
/etc/resolv.conf
/etc/defaultrouter
D /etc/nsswitch.conf
Какие из перечисленных утверждений являются несправедливыми относительно консоли управления Solaris?
Она предоставляет единую консоль, единое администрирование регистраций для множества систем Solaris.
Она представляет собой удобную для навигации консоль с графическим интерфейсом пользователя (GUI).
Она имеет интерфейс командной строки в дополнение к управлению через GUI.
Она использует ролевое управление доступом.
Что может делать SMC Toolbox Editor? Выберите все приемлемые варианты ответов.‘
Приостанавливать процессы и возобновлять их выполнение, контролировать процессы и управлять ими.
Инсталлировать пакеты программного обеспечения и заплаты.
Планировать, запускать задания и управлять ими.
Просматривать информацию об использовании и управлять монтированием и совместным использованием ресурсов.
Solaris AdminSuite делает все то же, что и SMC, за исключением чего? Выберите все приемлемые варианты ответов.
Использование RBAC для делегирования административных задач.
Предоставление инструментария для планирования заданий.
Администрирование учетных записей пользователей.
Управление локальными файловыми системами и файловыми системами NFS.
Что из перечисленного представляет собой метод для автоматической инсталляции группы идентичных систем?
A. Web Start
Пользовательский метод JumpStart
Интерактивная инсталляция
Сетевая инсталляция
Какую команду вы можете использовать для выполнения пробного (формального) прогона инсталляции с целью тестирования профиля JumpStart?
A. check
patchadd -С
fsck
pfinstall
Ответы на вопросы практического экзамена
В. Ядро состоит из небольшой статической базовой части и большого количества загружаемых модулей. Многие модули ядра загружаются автоматически в процессе загрузки системы, а другие, такие как драйверы устройств, загружаются ядром с диска по мере возникновения необходимости в них.
А, С, D. Уровень запуска s осуществляет переход в однопользовательский режим (состояние системного администратора). Только суперпользователь допускается к регистрации за консолью, а любые зарегистрированные пользователи выводятся из системы. Все ранее смонтированные файловые системы остаются смонтированными и доступными. Все службы, за исключением самых главных служб операционной системы, закрываются в определенной последовательности.
С. Команда init используется для изменения уровней запуска, которые также называются состояниями init.
D. security-mode ограничивает набор операций, которые пользователям разрешается выполнять в ответ на приглашение OpenBoot.
В, С, D. На большинстве систем с архитектурой SPARC процедура начальной загрузки состоит из следующих основных фаз. Прежде всего включаются аппаратные средства системы либо встроенное системное PROM исполняет процедуру POST (Power-on self test - самотестирования при включении питания). После того как все тесты будут успешно завершены, встроенное программное обеспечение пытается выполнить автоматическую загрузку, если соответствующая переменная (auto-boot?) конфигурации OpenBoot была установлена.
С. Команда uname с установленным флагом -а отображает основную информацию, доступную в данное время в системе, включая аппаратную платформу и текущий релиз операционной системы.
А, С, D. Программа инсталляции операционной системы Solaris предложит вам ввести следующую информацию: имя хоста, IP-адрес, маску подсети, нужно ли инсталлировать IPv6, службу имен, нужно ли инсталлировать службу защиты Kerberos, часовой пояс, пароль суперпользователя и язык.
С, D. Заплата не может быть инсталлирована, если она требует наличия другой заплаты, которая не инсталлирована, или если данная заплата несовместима с другой заплатой, которая уже инсталлирована.
С. Команда pkgchk проверяет корректность инсталляции пакета программного обеспечения.
В. Max Inactive. Это поле содержит максимальное количество дней, в течение которых учетная запись может обходиться без доступа пользователя до того, как она автоматически блокируется. Пустое значение в данном поле означает, что учетная запись пользователя остается активной вне зависимости от того, как долго она не использовалась.
С. Инициализация командных процессоров Bourne и Korn осуществляется с помощью файла .profile, а командного процессора С - с помощью файла .login.
А, С. High Sierra (HSFS) представляет собой файловую систему, доступную только для чтения, которая используется на дисках CD-ROM, а файловая система UNIX (UFS) представляет собой дисковую систему, которая используется в среде Solaris по умолчанию. Файловая система TMPFS размещается в памяти. NFS (Network File System) является сетевой файловой системой, которая дистанционно монтируется через сеть.
В. Суперблок (superblock) хранит большую часть информации о файловой системе. Загрузочный блок хранит информацию, которая используется при выполнении загрузки системы. Индексный дескриптор хранит всю информацию о некотором файле за исключением его имени. Блок хранения, или блок данных, хранит собственно данные каждого файла.
С. Для просмотра объема каждой файловой системы, смонтированной в некоторой системе, размера доступного дискового пространства и процента этого пространства, используемого в настоящее время, следует применять команду df и ее опции.
В. Команда newfs автоматически определяет все необходимые параметры файловой системы для передачи команде mkfs, которая и формирует новую файловую систему. Команда newfs была добавлена в Solaris, чтобы упростить процесс создания новых файловых систем.
С. Команда fsck проверяет и ремонтирует файловые системы. Все остальные команды могут быть использованы для копирования одной файловой системы в другую.
D. Команда fuser позволяет увидеть, какие процессы используют конкретную файловую систему. В приведенном примере команда fuser используется для определения того, почему занята файловая система /cdrom:
fuser -u /cdrom
А, С. Хотя вопрос о том, какой пароль может считаться "хорошим", является спорным, однако правильное имя (Britney) может быть легко угадано тем, кто подбирает пароли. Пароль должен представлять собой некоторую комбинацию букв, цифр и символов (таких как пробел, запятая, точка и т.д.). Варьирование регистрами ввода символов и смешивание слов также могут помочь расширить количество вариантов, которые должны быть охвачены программой подбора паролей. *
С. Значение 023 в команде umask формирует маску пользователя, автоматически сбрасывая биты из битов полномочий полного доступа к файлам, которые существовали бы в противном случае. Поскольку каждая цифра представляет собой восьмеричное число, которое определяет соответственно полномочия Владельца, Группы и Мира, данные полномочия доступа могут быть отображены с помощью команды 1s в виде rwxr-xr--. Первые три бита полномочий, rwx (чтение, запись, выполнение), относятся к Владельцу, далее следуют полномочия r-х (чтение, выполнение) для Группы и в самом конце полномочия г (только чтение) для Мира.
В, С, D. Хотя sudo и не поставляется как стандартная часть Solaris 8, она является прекрасным инструментом для ограничения доступа с привилегиями суперпользователя и обеспечения протоколирования деятельности суперпользователя без необходимости передавать кому бы то ни было его пароль.
А, С. Команда prstat выполняется из командной строки для отображения информации об активных процессах данной системы. Аналогично команде ps, данная команда предоставляет информацию об активных процессах. Различие между этими командами заключается в том, что в данном случае вы можете указать, хотите ли вы получить информацию по конкретным процессам, по идентификаторам пользователей, по идентификаторам центральных процессоров или по группам процессоров. По умолчанию команда prstat отображает информацию обо всех процессах, отсортированную по величине загрузки центрального процессора.
В. Сигнал SIGKILL может быть послан какому-нибудь процессу с помощью команды kill -9, или kill-SIGHUP. Сигнал 9 называется истинным, безусловным завершением, поскольку он не может быть перехвачен или проигнорирован процессом. Если конк-
ретный процесс все еще существует после выдачи команды kill -9, то это означает либо то, что в ядре операционной системы UNIX произошел останов и ядро ожидает какого-нибудь события, такого как завершение дисковой операции ввода-вывода, либо то, что вы не являетесь владельцем данного процесса.
В. Команда at используется для планирования заданий, которые будут выполняться позднее. В отличие от crontab, которая планирует какое-нибудь задание для многократного выполнения через строго соблюдаемые интервалы времени, задание, представленное с помощью команды at, выполняется только один раз в заданный момент времени.
С. Если пользователь не задал имя принтера или класса в каком-нибудь из допустимых стилей, проверяются переменные окружения PRINTER или LPDEST данного пользователя для определения имени принтера по умолчанию. Если ни одна из переменных окружения для задания имени принтера по умолчанию не определена, проверяется файл .printers в домашнем каталоге данного пользователя для определения принятого по умолчанию псевдонима принтера. Если же принятый по умолчанию псевдоним принтера не обнаруживается в файле .printers, тогда проверяется файл клиента печати /etc/ printers.conf для получения конфигурационной информации. Если и в файле клиента печати /etc/printers.conf принтер не обнаружен, тогда происходит обращение к службе имен (NIS илиМ8+), если таковая есть.
В, D. Команда Ipstat -р <printer-name> будет сообщать вам о том, является ли принтер активным или он простаивает, когда принтер был разрешен или запрещен к использованию, принимает ли он запросы на печать. Инструмент Jetadmin фирмы Hewlett- Packard - способ администрирования и мониторинга очередей печати через систему меню.
В. Командный процессор Korn (ksh) обладает всеми тремя возможностями. Командный процессор Bourne (sh) синтаксически совместим только с самим собой. Командный процессор С (csh) синтаксически не совместим с командным процессором Bourne.
А, В. Эта команда использует флаги х (извлечение из архива), v (расширенный вывод, формирует список всех извлекаемых файлов и каталогов) и f (архив находится в файле, имя которого следует за данным флагом).
С. Команда dd быстро преобразовывает и копирует файлы с различными форматами данных, включая разницу в размерах блоков или в длинах записей. Команда dd может быть использована для копирования целой файловой системы или раздела жесткого диска на магнитную ленту, может принимать входную информацию от других программ через стандартный ввод. Однако она не может сжимать файлы в процессе их копирования, поскольку создает копию-отображение (точную побайтовую копию).
A, D. Любой сценарий оболочки требует наличия в первой строке символов #! и следующего за ними полного имени маршрута к интерпретатору, в данном случае /bin/sh для командного процессора Bourne. Кроме того, для файла сценария должен быть установлен бит исполнения, чтобы операционная система Solaris рассматривала его как программу, а не как какой-нибудь файл данных.
В, С. Ответ А может перезаписать файл testfile.txt, поскольку вывод программы mail переадресовывается в данный файл с помощью символа >. Ответ D может создать некоторый файл с именем user@devnull.org, содержащий вывод команды mail.
С. Ответ А представляет сетевой уровень, Ответ В - транспортный, ответ D - представительский.
В. Маршрутизатор представляет собой машину, которая пересылает пакеты Ethernet из одной сети в другую. Другими словами, маршрутизатор соединяет локальные сети, а концентратор - компьютеры. Хост может быть маршрутизатором, однако это скорее исключе-
ние, чем правило. NIC (Network Interface Card - сетевая интерфейсная плата) представляет собой аппаратное обеспечение хоста, которое позволяет подсоединить его к сети.
А. Номера сети класса С используют первые 24 бит IP-адреса в качестве номера сети, а оставшиеся 8 бит - для номеров хостов. Номер сети класса С занимает первые три байта IP-адреса; только четвертый байт оставляется на усмотрение владельца данной сети. Сеть класса С может объединять не более 254 узлов.
В. Псевдофайловая система swapfs представляет собой либо раздел подкачки на некотором диске, либо файл подкачки, который находится в какой-нибудь другой файловой системе на диске. Псевдофайловые системы proofs, tmpfs и fdfs размещаются в памяти.
С. Каждый элемент в каталоге /ргос представляет собой некоторое десятичное число, соответствующее идентификатору какого-нибудь процесса. Каждый каталог в файловой системе /ргос имеет файлы, которые содержат более подробную информацию о том процессе.
А, В. Системам AutoClient сервер операционной системы предоставляет все системное программное обеспечение, которое требуется для установки индивидуальной корневой файловой системы и файловой системы /usr, необходимых для организации локальной подкачки и кэширования. Типы систем определяются тем, как они получают доступ к корневой файловой системе и к файловой системе /usr, включая область подкачки. Автономные системы и серверы монтируют упомянутые файловые системы с какого-нибудь локального диска, тогда как бездисковые клиенты и клиенты типа AutoClient монтируют эти файловые системы дистанционно, опираясь на серверы для предоставления этих служб.
В. Система JavaStation - клиент, который не имеет локальной файловой системы и получает доступ к своему каталогу /home с некоторого сервера через сеть. Система JavaStation выполняет только те приложения, которые на 100% являются чистыми Java- приложениями. Все данные, приложения и конфигурационная информация находятся на каком-нибудь централизованном сервере, на котором выполняется программное обеспечение Netra J в операционной среде Solaris. Приложения Java загружаются по запросу, а затем выполняются локально.
А, В, D. В операционной системе Solaris каждое дисковое устройство описывается тремя способами, используя три различных соглашения о наименовании:
^ Имя физического устройства. Представляет полное имя маршрута данного устройства в иерархической структуре информации устройств.
^ Имя экземпляра. Представляет сокращенное имя, известное ядру, каждого возможного устройства системы.
^ Имя логического устройства. Используется системными администраторами с большинством команд файловых систем для ссылки на устройства.
D. UFS -файловая система UNIX. Служба WebNFS представляет собой программный продукт, предлагающий стандартный протокол, разработанный фирмой Sun Microsystems, который расширяет возможности ее NFS-служб до Internet. Файловая система CacheFS может быть использована для повышения производительности файловых систем, смонтированных средствами NFS, или медленных устройств, таких как привод CD- ROM. Средство AutoFS, которое также называется автомонтировщиком, упрощает процесс NFS-монтирования путем предоставления метода, в котором дистанционные каталоги монтируются только тогда, когда они используются.
А, В. Фирма Sun рекомендует, чтобы файловые системы, смонтированные для чтения-записи или содержащие исполняемые файлы, всегда бы монтировались с опцией hard. Если вы используете файловые системы, смонтированные с опцией soft, то могут
возникнуть неожиданные ошибки ввода-вывода. Например, рассмотрим какой-нибудь запрос на выполнение записи. Если данный сервер NFS вышел из строя, то неисполненный запрос на выполнение записи просто пропадает, что приводит к повреждению какого-нибудь файла дистанционной файловой системы. Файловая система, доступная для чтения и записи, должна всегда быть смонтирована с заданными опциями hard и intr. Это дает возможность пользователям принимать самостоятельные решения относительно завершения зависших процессов.
D. Ответ А описывает nfsd, ответ В - mountd, ответ С - lockd.
В, С. Как программа sudo, так и КВАС (ролевое управление доступом) позволяют системному администратору назначать ограниченные административные возможности тем пользователям, которые не обладают привилегиями суперпользователя. Передача кому бы то ни было пароля суперпользователя позволяет какому-нибудь пользователю получить доступ ко всем возможностям суперпользователя, что существенно ухудшает безопасность системы.
А, В, С. Службы имен также предоставляют информацию о паролях. В Solaris 8 доступными являются следующие службы имен: NIS, NIS+, DNS, LDAP и файлы /etc.
А. Выданная без аргументов, команда ypwhich отображает текущий главный сервер службы имен NIS.
D. Переключатель службы имен, /etc/nsswitch.conf, управляет тем, как рабочая станция или приложение клиента получает сетевую информацию. В данном случае вы можете отредактировать файл /etc/nsswitch.conf и изменить строку hosts для считывания файла hosts: files dns nis.
С. Консоль управления Solaris не имеет никакого интерфейса командной строки.
А, С, D. Редактор из набора инструментов SMC управляет процессами, пользователями, монтироваиием файловых систем и их совместным использованием, дисками, последовательными портами, а также планирует задания и включает в себя просмотрщик журналов (файлов протоколов).
А, В. Пакет Solaris AdminSuite предоставляет многие инструменты, аналогичные инструментам SMC, однако он не обеспечивает делегирования административных задач с использованием КВАС. Кроме того, он не предоставляет инструментов для управления дисками, для планирования заданий или управления процессами. Однако инструменты, предоставляемые AdminSuite, предлагают вам простой в использовании GUI для управления вашими системами с любого места в сети. Инструменты и команды в среде GUI позволяют работать быстрее, чем в случае применения многочисленных команд Solaris для выполнения тех же самых задач.
В. Пользовательский метод JumpStart инсталляции операционной системы представляет собой способ для автоматической и идентичной инсталляции группы систем. Если вы применяете интерактивный метод инсталляции операционной системы, то должны проводить диалог с инсталляционной программой, отвечая на различные задаваемые ею вопросы.
D. После того как вы создали некоторый профиль, можно воспользоваться командой pfinstall для тестирования этого профиля. Тестирование файла класса иногда называется "сухой прогонкой " (формальной, но не фактической) инсталляции. Просматривая вывод инсталляции, формируемый командой pfinstall, вы сможете быстро определить, будет ли файл класса делать именно то, чего вы от него ожидаете.
Web Start
Администрирование и конфигурирование CDE
История Solaris
Обзор процесса сертификации
Содержимое прилагаемого диска CD-ROM
Использование ExamGear - программного руководства по обучению (Training Guide Edition)
Приложение
Web Start
Web Start 3.0 - инсталляционная программа, разработанная фирмой Sun на основе технологий Java, которая упрощает и ускоряет процесс инсталляции программного обеспечения Solaris. Web Start использует технологию от InstalIShield, компании, которая является общепризнанным провайдером технологий, ставших стандартом де-факто для инсталляции приложений Microsoft Windows. Этот инструмент позволяет сетевым администраторам применять знакомый Web-браузер, использующий интерфейс типа "указать и щелкнуть" для инсталляции всего программного обеспечения, которое поставляется в едином пакете с Solaris. Используя Solaris Web Start, вы выбираете и инсталлируете все программное обеспечение, требуемое для вашей машины, включая группу программного обеспечения Solaris и утилиты Solstice. Кроме того, Web Start - единственная утилита инсталляции, которая также инсталлирует остальное программное обеспечение, поставляемое на дополнительных компакт-дисках. Она очень похожа на интерактивную инсталляционную программу Solaris, которая описывалась в главе 15, однако со значительно более дружественным интерфейсом. Solaris Web Start использует утилиту JumpStart для автоматического считывания профиля конфигурации, что обеспечивает инсталляцию программного обеспечения Solaris и других выбранных вами программных продуктов с минимальным вмешательством. Вот несколько основных характерных особенностей Web Start:
ф При использовании программного обеспечения и технологий мастеров (wizards) Solaris Web Start операционная среда Solaris и другие приложения могут быть инсталлированы в интерактивном режиме с применением интерфейса, основанного на браузере.
ф Технология Web Start Flash позволяет администраторам получать полный образ операционной среды Solaris и конфигурации системы, а затем выполнять репликации этого образа на множество серверов в сети. Эта возможность является доступной, начиная с релиза 04/01 операционной системы Solaris 8.
ф Технология Web Start использует преимущества технологии Solaris JumpStart и может предоставить автоматическую инсталляцию и установку систем Solaris.
ф Технология Solaris Live Upgrade сокращает обычный перерыв в обслуживании, как правило, связанный с обновлением операционной системы.
Если вы устанавливаете машину, оснащенную буфером кадра (буфером дисплея), клавиатурой и монитором, то можете запустить Web Start прямо с этой машины. Если же у вас есть только алфавитно-цифровой терминал, подключенный через последовательный порт, то вы, тем не менее, сможете воспользоваться интерфейсом командной строки Web Start.
Минимальные системные требования для Solaris Web Start
Если вы хотите запустить Solaris Web Start, ваш компьютер должен удовлетворять следующим минимальным системным требованиям:
ф Иметь, по крайней мере, 64 Мбайт оперативной памяти.
ф Иметь стартовый диск емкостью 1.05 Гбайт просто для запуска Solaris Web Start, после чего данная программа определяет, располагает ли ваша система дисковым пространством, достаточным для инсталляции всех выбранных вами программных продуктов. Для инсталляции программного обеспечения сервера рекомендуется иметь 2 Гбайт дискового пространства.
Инсталляция Solaris с использованием технологии Web Start
Solaris Web Start позволяет вам воспользоваться простотой и удобством инсталляции с применением графического интерфейса пользователя. Вы можете использовать Web Start одним из двух описанных способов:
ф GUI (Graphical-User Interface - графический интерфейс пользователя). Требует наличия локального или доступного в режиме дистанционного доступа привода CD-ROM или сетевого подключения, наличия буфера кадра, клавиатуры и растрового монитора.
ф CL1 (Command-Line Interface - интерфейс командной строки). Требует наличия локального или доступного в режиме дистанционного доступа привода CD-ROM или сетевого подключения, наличия клавиатуры и монитора.
Для запуска инсталляции Web Start загрузите вашу систему с компакт-диска Solaris 8 Installation, как показано:
ok boot cdrom - browser
Если в процессе загрузки Web Start обнаружит в системе наличие буфера кадра, то будет использовать GUI; если же Web Start не обнаружит буфер кадра, то использует интерфейс командной строки. Содержание и последовательность инструкций в обоих случаях будут одинаковыми.
После выполнения загрузки системы с диска CD-ROM программа Web Start запускает соответствующий интерфейс пользователя и запрашивает некоторую общую информацию системной идентификации. У вас запрашивается та же самая информация, что и в процессе интерактивной инсталляции, которая была описана в главе 15, за исключением того, что система в данном случае использует другой GUI с несколько отличающимися внешним видом и наполнением. Первое окно, возникающее на экране - окно сетевого подключения Network Connectivity, которое показано на рисунке АЛ.
Выберите, будет ли ваша система подсоединяться к сети, а затем щелкните кнопку Next. Появляется окно DHCP, показанное на рисунке А.2.
В этом окне вас запрашивают, будете ли вы использовать протокол DHCP для конфигурирования сетевого интерфейса или этот интерфейс будет конфигурироваться вручную. Выбрав DHCP для конфигурирования сетевого интерфейса системы, щелкните кнопку Next. В рассматриваемом примере отказались от использования протокола DHCP для конфигурирования сетевой интерфейсной платы, и поэтому далее будет запрашиваться информа-
Рисунок А.2.Окно DHCP.Рисунок А.2.Окно DHCP.
Рисунок А.2.
Окно DHCP.
Рисунок А.2.
Окно DHCP.
Рисунок А.1.
Окно Network Connectivity.
ция, необходимая для конфигурирования первичного сетевого интерфейса. Если бы было указано использование DHCP, то эта информация не запрашивалась бы, а сервер DHCP мог бы автоматически предоставить информацию сетевого интерфейса в процессе загрузки системы. После щелчка кнопки Next, на экране появляется окно Host Name, представ
ленное на рисунке А.З.
Рисунок А.З.
Окно Host Name.
Введите имя хоста данной системы. Имя хоста может иметь длину от 2 до 255 символов. После ввода имени хоста щелкните Next для продолжения. Возникает окно IP Address,
показанное на рисунке А.4.
Рисунок А.4.
Окно IP Address.
Введите IP-адрес данной системы, щелкните Next, и на экране появляется окно Netmask, представленное на рисунке А.5.
Рисунок А.5.
Окно Netmask.
Рисунок А.6.Окно IPv6.Рисунок А.6.Окно IPv6.Задайте маску сети для вашей подсети, щелкните Next для продолжения, появляется окно IPv6, показанное на рисунке А.6.
Рисунок А.6.
Окно IPv6.
Рисунок А.6.
Окно IPv6.
Укажите, будет ли разрешено использование для данной системы IPv6, нового протокола Internet. Щелкните Next для продолжения, появляется окно Name Service, представ
ленное на рисунке А.7.
Рисунок А.7.Окно Name Service.Рисунок А.7.Окно Name Service.IIIIддV»^a£ 2.ХV»^a£ 2.Х88>‘4>‘4SolarisSolaris«Sack«Sack
Рисунок А.7.
Окно Name Service.
Рисунок А.7.
Окно Name Service.
II
II
д
д
V»^a
£ 2.Х
V»^a
£ 2.Х
8
8
>‘4
>‘4
Solaris
Solaris
«Sack
«Sack
Рисунок А.8.Окно Default Router.Рисунок А.8.Окно Default Router.мегаин кошегмегаин кошег
Рисунок А.8.
Окно Default Router.
Рисунок А.8.
Окно Default Router.
мегаин кошег
мегаин кошег
Укажите, будет ли для данной системы использоваться служба имен, и щелкните Next для продолжения. Возникает окно Default Router, показанное на рисунке А.8.
кТЫ|йййй№йЙ^eleekM- —
ВйЙ&ГО^ адЙМЙЙВе
ЗюВядмед®ж wStew» «SMt|iW ^s^W^:R ««Hw^t y«0)«aireutEt.th9t t>ro«d«is Itself ' »>>#»»«,* ’ ‘'^3 , .
SpKlfy on». •■,
Если вы хотите задать принятый по умолчанию маршрутизатор, сделайте это в данном окне. После того как вы сделаете свой выбор, щелкните Next. В рассматриваемом примере был выбран маршрутизатор по умолчанию, поэтому в следующем окне, представленном на рисунке А.9, запрашивается его адрес.
Рисунок А.9.
Принятый по умолчанию маршрутизатор.
Задайте IP-адрес для принятого по умолчанию маршрутизатора и щелкните Next. Появляется окно Time Zone, изображенное на рисунке АЛО.
Рисунок АЛО.
Окно Time Zone.
В окне укажите подходящую опцию для установки часового пояса по умолчанию:
Ф Географический регион (Geographic Region)
ф Смещение относительно времени по Гринвичу (Offset from GMT)
ф Файл часового пояса (Time Zone File)
После выбора подходящей опции щелкните Next для продолжения. В рассматриваемом примере был выбран географический регион, поэтому в следующем окне, изображенном на рисунке А. 11, запрашивается географический регион.
Рисунок АЛ1.
Окно Geographic Region.
Выберите ваш географический регион и щелкните Next для продолжения. На экране появляется окно Date and Time, показанное на рисунке А. 12.
Рисунок А.12.
Окно Date and Time.
В окне Date and Time примите значение времени по умолчанию или введите какое- нибудь новое значение и щелкните Next для продолжения. В следующем окне, представленном на рисунке А.13, у вас запрашивают пароль суперпользователя.
Рисунок А.13.
Окно Root Password.
Введите пароль суперпользователя и щелкните Next для продолжения. Возникает окно Proxy Server Configuration, как на рисунке А. 14.
Рисунок АЛ4.
Окно Proxy Server Configuration.
Contirm шГогнкИкшContirm шГогнкИкшDefault Route: YesRouter Address: 192.168.1.1 proxy Configuration;Direct connection ю the internet (no proxy) Time Zone: MichiganDefault Route: YesRouter Address: 192.168.1.1 proxy Configuration;Direct connection ю the internet (no proxy) Time Zone: MichiganРисунок A.15. Окно Confirm Information.Рисунок A.15. Окно Confirm Information.Host Name: sum IP Address: 192.168.1.201 System part of a subnet Yes Netmask 2S5.255.255.0 Enable IPv6: No Name Service: NoneHost Name: sum IP Address: 192.168.1.201 System part of a subnet Yes Netmask 2S5.255.255.0 Enable IPv6: No Name Service: NoneСервер Proxy функционирует в качестве посредника между хостом и Internet, обеспечивая защиту информации, административное управление и службу кэширования. Если вы не используете Proxy, примите предложенное по умолчанию значение для непосредственного подсоединения к Internet. Сделав свой выбор, щелкните Next для продолжения. Появляется окно Confirm Information, изображенное на рисунке А. 15.
Contirm шГогнкИкш
Contirm шГогнкИкш
Default Route: Yes
Router Address: 192.168.1.1 proxy Configuration;
Direct connection ю the internet (no proxy) Time Zone: Michigan
Default Route: Yes
Router Address: 192.168.1.1 proxy Configuration;
Direct connection ю the internet (no proxy) Time Zone: Michigan
Рисунок A.15. Окно Confirm Information.
Рисунок A.15. Окно Confirm Information.
Host Name: sum IP Address: 192.168.1.201 System part of a subnet Yes Netmask 2S5.255.255.0 Enable IPv6: No Name Service: None
Host Name: sum IP Address: 192.168.1.201 System part of a subnet Yes Netmask 2S5.255.255.0 Enable IPv6: No Name Service: None
Проверьте, что вся информация в данном окне является корректной; затем щелкните кнопку Confirm для продолжения. Этап системной идентификации для Web Start завершается, и система будет сконфигурирована в соответствии с предоставленными вами установками. Через несколько минут на экране появляется окно Welcome, как на рисунке А. 16.
Рисунок А.16.
Окно Web Start под названием Welcome.
Щелкните Next для продолжения. В следующем окне, изображенном на рисунке А. 17, вас попросят указать инсталляционный носитель информации.
Рисунок А.17.
Окно Specify Media.
Сделав свой выбор, щелкните Next для продолжения. В рассматриваемом примере была выбрана опция CD, поэтому в следующем окне, показанном на рисунке А. 18, вам предложат вставить в привод первый компакт-диск (Solaris 8 OS Installation).
Рисунок А.18. •
Окно Insert CD.
На экране отображается окно, показанное на рисунке А. 19, обозначающее, что систе
ма выполняет инициализацию.
Рисунок А.19.
Окно Initializing...
В следующем окне, представленном на рисунке А.20, у вас запросят тип инсталляции: инсталляция по умолчанию (Default) или пользовательская инсталляция (Custom).
Рисунок А.20.
Окно Select Type of Install.
Инсталляция по умолчанию (Default) проводит вас через общепринятый процесс, предоставляя ответы по умолчанию на все конфигурационные опции. Если у вас имеются специфические требования, выберите пользовательскую заказную инсталляцию (Custom).
Рисунок А.21. Окно Select Software Localizations.Рисунок А.21. Окно Select Software Localizations.Пользовательская инсталляция (Custom) требует более глубоких знаний процесса. Вам будет предложено принимать такие решения, как выбор инсталляционного диска и схемы разбивки для него. В рассматриваемом примере была выбрана пользовательская инсталляция (Custom), а затем выполнен щелчок кнопки Next для продолжения. В следующем окне, представленном на рисунке А.21, вам предложат выбрать локализацию вашего программного обеспечения.
Рисунок А.21. Окно Select Software Localizations.
Рисунок А.21. Окно Select Software Localizations.
По умолчанию инсталлируется англоязычная версия (English). Выберите любые дополнительные географические регионы и щелкните мышью Next для продолжения. Следующее окно, показанное на рисунке А.22, отображает исходную локаль системы.
Рисунок А.22.
Окно Select System Locale.
.г.гРисунок А.23.Окно Select Products.Рисунок А.23.Окно Select Products.йIйISelects СРлпц у г с dj Solaris 8 Documentation European 0.0 И8_J Solaris 8 Documentation Asian o.o мВ□ Solaris 8 Software 2 of 2 0.0 MSSelects СРлпц у г с dj Solaris 8 Documentation European 0.0 И8_J Solaris 8 Documentation Asian o.o мВ□ Solaris 8 Software 2 of 2 0.0 MSии>4>4SOLA!1SOLA!1^ж#йВ8^ж#йВ8В этом окне перечисляются дополнительные программные продукты, которые могут быть помечены для инсталляции. Завершив свой выбор, щелкните Next для продолжения. Вам будет задан вопрос о том, хотите ли вы выполнить поиск дополнительных программных продуктов, которые уже готовы к инсталляции Web Start, как показано на рисунке А.24.В этом окне перечисляются дополнительные программные продукты, которые могут быть помечены для инсталляции. Завершив свой выбор, щелкните Next для продолжения. Вам будет задан вопрос о том, хотите ли вы выполнить поиск дополнительных программных продуктов, которые уже готовы к инсталляции Web Start, как показано на рисунке А.24.в®в®РисуНОК А.24. Окно Additional Products.РисуНОК А.24. Окно Additional Products.Это окно позволяет вам выбрать более конкретную языковую локализацию по сравнению с языками, которые были выбраны в предыдущем окне. Выберите локаль, щелкните Next для продолжения, и на экране отображается окно Select Products, представленное на рисунке А.23.
.г
.г
Рисунок А.23.
Окно Select Products.
Рисунок А.23.
Окно Select Products.
й
I
й
I
Selects СРлпц у г с d
j Solaris 8 Documentation European 0.0 И8
_J Solaris 8 Documentation Asian o.o мВ
□ Solaris 8 Software 2 of 2 0.0 MS
Selects СРлпц у г с d
j Solaris 8 Documentation European 0.0 И8
_J Solaris 8 Documentation Asian o.o мВ
□ Solaris 8 Software 2 of 2 0.0 MS
и
и
>4
>4
SOLA!1
SOLA!1
^ж#йВ8
^ж#йВ8
В этом окне перечисляются дополнительные программные продукты, которые могут быть помечены для инсталляции. Завершив свой выбор, щелкните Next для продолжения. Вам будет задан вопрос о том, хотите ли вы выполнить поиск дополнительных программных продуктов, которые уже готовы к инсталляции Web Start, как показано на рисунке А.24.
В этом окне перечисляются дополнительные программные продукты, которые могут быть помечены для инсталляции. Завершив свой выбор, щелкните Next для продолжения. Вам будет задан вопрос о том, хотите ли вы выполнить поиск дополнительных программных продуктов, которые уже готовы к инсталляции Web Start, как показано на рисунке А.24.
в®
в®
РисуНОК А.24. Окно Additional Products.
РисуНОК А.24. Окно Additional Products.
/ПРИМЕЧАНИЕ
Как уже отмечалось ранее, компакт-диск Solaris Software 2 of 2 (второй из двух) содержит DiskSuite 4.2.1, Live Upgrade 1.0 и Sunscreen 3.1 Lite.
Выберите местоположение любых, возможно имеющихся у вас, дополнительных программных продуктов, которые готовы к инсталляции Web Start, и щелкните Next для продолжения. Следующее окно, представленное на рисунке А.25, содержит вопрос о 64-раз- рядной или 32-разрядной поддержках.
Рисунок А.25.
Окно 64-Bit Selection.
Если ваша система поддерживает 64-разрядную архитектуру, щелкните Yes. Завершив свой выбор, щелкните Next для продолжения. Следующее окно, представленное на рисунке А.26, позволяет вам выбрать группу программного обеспечения для инсталляции.
Рисунок А.26.
Окно Select Solaris Software Group.
Каждая из представленных в этом окне групп программного обеспечения была описана в главах 3 и 4. Выберите вашу группу программного обеспечения и щелкните Next для продолжения. Появляется окно Disk Selection, как на рисунке А.27.
Disk Sd-
«r’ecf w№$ Aki you *«nt tc -at out tor J»b systems ^n
<4c6t3dO (bootdisk)
..аОй
«>
Рисунок А.27.
Окно Disk Selection.
Reimredtfhkt^ec»* 7ШН8
Selected disk spue*. 2MS.
-Ш
/ -MJ
Выберите диск (или диски), на который вы хотите инсталлировать программное обеспечение, и щелкните Next для продолжения. Возникает окно, как на рисунке А.28, обозначающее, что инсталляционная программа собирает требования к дисковому пространству.
Рисунок А.28.
Окно Gathering Disk Space Requirements.
После того как программа убедится, что вы располагаете достаточным дисковым пространством для хранения выбранного вами программного обеспечения, на экране появится окно Lay Out File Systems, изображенное на рисунке А.29.
Рисунок А.29.
Окно Lay Out File Systems.
Если вы удовлетворены отображенной схемой разбивки диска, щелкните Next. В рассматриваемом примере было принято решение модифицировать схему разбивки диска, поэтому выделен диск (cOOdO), а затем был выполнен щелчок кнопки Modify. Наэкране отображается окно Disk Modification, показанное на рисунке А.ЗО.
Рисунок А.ЗО.
Окно Disk Modification.
Были просмотрены выведенные значения, а затем добавлены отдельные разделы для файловых систем /var, /opt и /usr, как показано на рисунке А.31.
Рисунок А.31.
Внесение изменений в окне Disk Modification.
После внесения необходимых изменений щелкните кнопку ОК для их введения в действие. Вы снова увидите окно Lay Out File Systems, отражающее сделанные изменения, как показано на рисунке А.32.
Рисунок А.32.
Отражение изменений в окне Lay Out File Systems.
Проверьте внесенные изменения и щелкните Next для продолжения. На экране отображается окно Ready to Install, как на рисунке А.ЗЗ, обобщающее сделанные вами установки.
Если все выглядит нормально, щелкните кнопку Install Now, на экране появляется окно Installing..., показанное на рисунке А.34.
Рисунок А.34.
Окно Installing...
Над строкой отражения динамики процесса, или шкалой прогресса, отображаются сообщения состояния и имя каждого инсталлируемого пакета программного обеспечения. Продолжительность процесса инсталляции зависит от выбранной группы программного обеспечения и от скорости инсталляционного носителя информации.
Когда потребуются дополнительные компакт-диски, такие как Solaris 8 Software 1 of 2 и Solaris 8 Software 2 of 2, вам будет предложено извлечь компакт-диск и установить требуемый. Вы увидите окно, отображающее ход инсталляции для каждого компакт-диска. Когда инсталляция завершается, компакт-диск выбрасывается из устройства, а на экране отображается итоговое окно инсталляции. Каждый программный продукт, который был инсталлирован, перечисляется совместно с сообщением состояния, которое информирует о том, была ли инсталляция успешной.
Резюме
Как было показано в настоящем разделе, Web Start предоставляет дружественный интерфейс пользователя для инсталляции операционной системы Solaris 8. Она также предназначена для инсталляции дополнительного программного обеспечения, подготовленного к применению технологии Web Start, чего не обеспечивает метод интерактивной инсталляции. Вы можете использовать Web Start одним из двух описанных способов:
Ф GUI. Требует наличия локального или доступного в режиме дистанционного доступа привода CD-ROM или сетевого подключения, наличия буфера кадра, клавиатуры и растрового монитора.
Ф CLI. Требует наличия локального или доступного в режиме дистанционного доступа привода CD-ROM или сетевого подключения, наличия клавиатуры и монитора.
На этом обсуждение Web Start завершается. Для получения более подробной информации о технологиях Web Start Flash и Web Start Wizards, обратитесь к онлайновой документации по адресу http://docs.sun.com.
ПриложениеПриложение
Приложение
Приложение
Администрирование и конфигурирование CDE
Solaris CDE (Common Desktop Environment - общая настольная среда) представляет собой простой в использовании графический интерфейс, производящий хорошее впечатление и ощущение целостности среди других UNIX и даже не-UNIX сред, таких как OpenVMS, SunSoft, Inc., Hewlett-Packard, IBM и Novell, Inc. Каждая из таких сред предлагала "наилучшие" технологии при установлении нового стандарта для пользовательского и прикладного интерфейсов, но все они базировались на системе X Window и MOTIF. Наряду с обеспечением совместимости со стандартами CDE, Solaris CDE предлагает своим пользователям и разработчикам дополнительные преимущества. Например, вы можете воспользоваться просмотрщиком изображений для отображения, вращения, масштабирования и конвертирования изображений и файлов в формате PostScript.
Если вам уже приходилось пользоваться более старой оконной средой фирмы Sun, называемой Open Windows, то вам должны быть знакомы фоновые изображения, цветовые палитры и всплывающие меню Workspace (рабочей области). В среде CDE пользователь также может выполнять приложения OpenWindows, причем, без каких бы то ни было модификаций. В частности, среда CDE поддерживает взаимодействие в стиле "drag-and-drop" ("перетащить и отпустить") между приложениями OpenWindows и CDE.
Ключевые возможности, доступные вам в CDE, - это окружение и инструменты рабочего стола. В настоящей главе обсуждаются вопросы настройки и администрирования среды CDE, которые включают в себя следующее:
Ф Менеджер регистрации (Login Manager). Графическое окно регистрации, возникающее на экране после завершения загрузки системы.
Ф Менеджер сеансов (Session Manager). Служба, которая запускает при регистрации пользовательские приложения на рабочем столе и "запоминает" состояние рабочего стола до следующей регистрации.
Ф Передняя панель (Front Panel). Набор всплывающих меню и пиктограмм, которые появляются в нижней части экрана CDE и устанавливают среду CDE обратно в ее состояние по умолчанию.
Ф Действия и типы данных. Ассоциируют команды с пиктограммами.
ф Менеджер приложений (Application Manager). Контейнер рабочего стола, который отображает приложения, доступные пользователю.
Ф Оболочка dtksh. Написание сценариев kshell в среде рабочего стола.
Менеджер регистрации
Менеджер регистрации (Login Manager) представляет собой сервер, который несет ответственность за отображение экрана регистрации, аутентификацию пользователей и запуск сеанса пользователя. Дисплеи, управляемые этим сервером регистрации, могут быть непосредственно подключены либо к серверу регистрации, либо к какому-нибудь Х-тер- миналу или рабочей станции в сети.
Экран, отображаемый сервером регистрации, представляет собой привлекательную альтернативу традиционному регистрационному экрану символьного режима. Он предоставляет возможности, выходящие за рамки тех, что предоставляются при регистрации в символьном режиме. Как и при регистрации в символьном режиме, пользователь вводит свое имя и следующий за ним пароль. Если пользователь прошел аутентификацию, сервер регистрации запускает для него сеанс рабочего стола. Когда пользователь завершает сеанс рабочего стола, сервер регистрации отображает новый экран регистрации, и все повторяется сначала.
Вы можете выполнить настройку экрана регистрации следующими способами:
ф Изменить внешний вид регистрационного экрана.
ф Сконфигурировать полномочия Х-сервера.
ф Изменить принятый по умолчанию язык.
ф Выдать команды до отображения экрана регистрации.
Ф Изменить содержимое меню Language экрана регистрации.
ф Задать команду для запуска сеанса пользователя.
ф Выдать команды до того, как запускать для пользователясеанс рабочего стола.
Ф Выдать команды после завершения сеанса пользователя.
Каждая из описанных настроек может быть сделана как для всех экранов сразу, так и для каждого экрана в отдельности. Поскольку указанные настройки не выносятся на экзамен, их обсуждение не включено в настоящую главу. Если вы хотите узнать больше об настройке CDE, вам следует обратиться к Solaris CDE Advanced User’s and System Administrator's Guide (Руководству продвинутого пользователя и системного администратора по Solaris CDE).
Запуск сервера регистрации
Сервер регистрации, который также называется менеджер регистрации (Login Manager), обычно запускает окружение CDE, когда загрузка системы выполняется через сценарий /etc/ rc2.d/S99dtlogin. Он также может быть запущен из командной строки, для этого введите следующую команду:
/etc/init.d/dtlogin start
ИЛИ'
/usr/dt/bin/dtlogin -daemon; exit
Чтобы выполнить останов сервера регистрации из командной строки, введите следу-, ющую команду:.
/etc/init.d/dtlogin stop
ПРИМЕЧАНИЕ • -«‘1 - У-v- г
►х*«fir 5 «»>>** Лг УК.»* ч^Д*<
Хотя вы можете для тестирования временной конфигурации запускать сервер регистрации из командной строки, но обычно следует устанавливать запуск этого сервера после звгрузки системы.
Для установки сервера регистрации таким образом, чтобы в следующий раз запустить CDE после загрузки системы, введите следующую командную строку:
/usr/dt/bin/dtconfig -е
Теперь сервер регистрации запускается автоматически после того, как пользователь перезагружает систему.
Останов сервера регистрации
Чтобы в следующий раз после загрузки системы отменить запуск сервера регистрации CDE, введите следующую командную строку:
/usr/dt/bin/dtconfig -d
Эта команда дает указание системе не запускать сервер регистрации при следующей перезагрузке.
Вы можете немедленно остановить сервер регистрации посредством уничтожения его идентификатора процесса. Наберите такую команду:
/usr/dt/bin/dtconfig -kill
Приведенная строка выдает команду kill <login_server_process_ID>.
Если пользователь регистрируется на рабочем столе в то время, когда вы прекращаете работу сервера регистрации, то его сеанс рабочего стола немедленно завершается.
Отображение экрана регистрации на локальном дисплее
Стартуя, сервер регистрации проверяет файл Xservers с целью определить, требуется ли запускать Х-сервер, должен ли быть отображен экран регистрации на локальном дисплее или на дисплеях в сети, а если должен, то как именно. Так выглядит формат строки в файле Xservers:
<display_name> <display_class> <display_type> <X_server_command>
Каждое поле файла Xservers описывается в таблице В.1.
Таблица В ЛПоляфайла Xservers? 1 ' " ■' ’,'
Поле
Описание
display_name
Сообщает серверу регистрации, какое имя следует использовать при подсоединении к Х-серверу (в рассматриваемом далее примере это имя :0). Значение * в данном поле разворачивается до hostname:0 (где hostname - имя хоста). Заданное число должно соответствовать номеру соединения в поле X_server_command.
display_c!ass
Определяет ресурсы, специфические для данного дисплея (в рассматриваемом далее примере - Local).
display_type
Сообщает серверу регистрации, является ли данный дисплей локальным или сетевым, а также, как следует из командной строки управлять опцией регистрации на экране регистрации (в следующем примере - local@console).
Продолжение таблицы В. 1 ПолеОписание
X_server_commandОпределяет командную строку, номер соединения и другие опции, ис
пользуемые сервером регистрации для запуска Х-сервера (в следующем примере - /usr/bin/X11/X:0). Номер соединения должен соответствовать числу, заданному в поле diBplay_name.
Строка по умолчанию в файле Xservers аналогична приведенной:
:0 Local localeconsole /usr/bin/Xll/X:О
Чтобы внести изменения в файл Xservers, скопируйте его из каталога /usr/dt/config в /etc/dt/config. Каталог /etc/dt содержит пользовательские конфигурационные файлы, специфичные для конкретной рабочей станции. Если каталог /etc/dt не существует, необходимо создать его. Системный администратор может модифицировать принятые по умолчанию системные ресурсы посредством создания каталога /etc/dt/config/. В этом каталоге вы можете создавать конфигурационные файлы, чтобы перекрыть принятые по умолчанию ресурсы или задать дополнительные ресурсы для всех пользователей рабочего стола. В процессе запуска сеанса этот файл объединяется с принятыми по умолчанию ресурсами рабочего стола. Ресурсы, определенные в данном файле, имеют преимущество перед теми, которые определены по умолчанию в файле ресурсов рабочего стола. После внесения изменений в файл /etc/dt/config/Xservers, сообщите серверу регистрации о необходимости повторно прочесть этот файл, набрав следующее:
/usr/dt/bin/dtconfig -reset
Команда dtconfig -reset инициирует команду kill -HUP <Iogin_server_process_ID>.
Если ваша система с сервером регистрации имеет алфавитно-цифровой дисплей вместо растрового, вам необходимо установить параметр display_terminal_d evice из файла Xservers в значение попе, чтобы, отключив экран регистрации, включить вместо него экран символьного режима.
Менеджер сеансов
Сеанс - это набор приложений, установок и ресурсов, присутствующих на рабочем столе пользователя. Управление сеансом - это набор соглашений и протоколов, которые позволяют менеджеру сеансов сохранять и восстанавливать сеанс пользователя. Когда по-льзова- тели регистрируются иа рабочем столе впервые, загружается заданный по умолчанию исходный сеанс. Позднее пользователи смогут зарегистрироваться в системе и увидеть тот же самый набор выполняющихся приложений, установок и ресурсов, которые имели место в момент последнего выхода из системы.
Менеджер сеансов несет ответственность за запуск рабочего стола, а также за автоматическое сохранение и восстановление выполняющихся приложений, цветов, шрифтов, поведения мыши, громкости воспроизведения звука и щелчков клавиатуры. С помощью менеджера сеансов вы можете решать следующие задачи:
ф Настраивать исходный сеанс для всех пользователей рабочего стола.
ф Настраивать окружение и ресурсы для всех пользователей рабочего стола.
Ф Изменять сообщение, выдаваемое при запуске сеанса.
ф Изменять параметры инструментальных средств запуска сеанса и демонов, ф Настраивать использование цветов рабочего стола для всех пользователей.
Менеджер сеансов запускается через /usr/dt/bin/Xsessjon. Когда пользователь входит в систему, используя менеджер регистрации, Xsession запускается по умолчанию. Когда запускается менеджер сеансов, он, чтобы запустить сеанс пользователя, выполняет последовательно следующие операции:
Берет в качестве исходного сценарий .dtprofile.
Берет в качестве исходных сценарии Xsession.d.
Отображает приветствие.
Устанавливает маршруты поиска файлов для рабочего стола.
Собирает доступные приложения.
Берет в качестве исходного SHOME/.profile или SHOME/.login (это необязательная операция).
Запускает демон передачи сообщений ToolTalk.
Загружает ресурсы сеанса.
Запускает сервер цветов.
Запускает менеджер рабочих областей.
Запускает приложения сеанса.
Поиск сценария $HOME/.dtprofile
При запуске сеанса сценарий Xsession отталкивается от сценария SHOME/.dtprofile данного пользователя, который представляет собой сценарий командного процессора /bin/ sh или /bin/ksh, разрешающий пользователям устанавливать переменные окружения для их сеансов. Сценарий .dtprofile принимает только синтаксис sh или ksh. Сценарий /usr/dt/ config/sys.dtprofile принят по умолчанию для рабочего стола. Если сценарий SHOME/ .dtprofile не .существует (например, когда пользователь регистрируется в данной системе впервые), Xsession копирует принятый по умолчанию сценарий рабочего стола sys.dtprofile в файл SHOME/.dtprofile.
Вы можете настраивать сценарий sys.dtprofile посредством копирования его файла из каталога /usr/dt/config в каталог /etc/dt/config и редактирования этого нового файла. Вы можете также устанавливать персональные переменные окружения в SHOME/.dtprofile. Например, строку export MYVARIABLE-'value" устанавливает переменную MYVARIABLE в окружении данного пользователя при его следующей регистрации в системе.
Чтобы установить переменные окружения в масштабе всей системы, создайте файл в каталоге /etc/dt/config/Xsession.d, который устанавливает переменную и экспортирует ее. Например, если вы создаете какой-нибудь исполняемый сценарий командного процессора ksh, скажем, /etc/dt/config/Xsession.d/sitevars, который содержит строку export SITEVARIABLE="vaIue", то переменная SITEVARIABLE устанавливается в окружении каждого пользователя при его следующей регистрации в системе.
Й$§Й||ЬйЙ||Й81^^•
Хотя менеджер сеансов не считывает автоматически файлы .profile или .login, он может быть сконфигурирован так, чтобы использовать эти файлы. Чтобы передать Xsession указание о поиске сценария .profile или .login, установите в сценарии SHOME/.dtprofile переменную DTSOURCEPROFILE в логическое значение true.
Берем сценарии Xsession.d в качестве исходных
После обнаружения сценария SHOME/.dtprofile, сценарий Xsession выполняет поиск сценариев Xsession.d. Эти сценарии устанавливают дополнительные переменные окружения и запускают необязательные демоны для сеанса пользователя.
Ошибки в любом из файлов запуска сеанса могли бы помешать регистрации пользователя в системе. Чтобы локализовать проблемы запуска сеанса, проверьте файл $HOME/.dt/startlog. Менеджер сеансов протоколирует в этом файле процесс запуска сеанса каждого пользователя.
Настройка приветствия
После того как будут обнаружены сценарии /etc/dt/config/sys.dtprofile (если этот сценарий существует), SHOME/.dtprofile и Xsession.d, сценарий Xsession отображает на экране приветствие. Вы можете настраивать приветствие или полностью отключить его.
Для отображения приветствия используется клиент dthello. Чтобы изменить текст приветствия, измените опции клиента dthello посредством модифицирования переменной dtstart_hello[0]. Создайте сценарий /usr/dt/config/Xsession.d, который устанавливает новое значение этой переменной. Например, чтобы отобразить сообщение дня для всех пользователей, создайте исполняемый сценарий командного процессора sh или командного процессора ksh, присвоив этому сценарию имя /usr/dt/config/Xsession.d/myvars, и установите переменную dtstart_hello[0] следующим образом:
dtstart_hello[0]-"/usr/dt/bin/dthello -file /etc/motd 6"
Пользователи также могут изменять приветствия своих собственных сеансов посредством установки переменной dtstart_hello[OJ в сценарии SHOME/.dtprofile.
Чтобы полностью отключить приветствие, установите
dtstart_hello[0]-" "'
Установка маршрутов поиска файлов для рабочего стола
Рабочий стол использует маршруты поиска файлов, созданные при входе в систему, чтобы определить местоположение приложений и связанных с ними файлов рабочего стола. Рабочий стол предоставляет четыре маршрута поиска файлов, которые описываются в Таблице В.2.
Таблица В;2 Маршруты поиска файлов рабочего стола
Маршрут поиска
Описание
Приложения
Используется, чтобы определить местоположение приложений. Менеджер приложений использует маршрут поиска приложений, чтобы динамически заполнять верхний уровень данного маршрута, когда какой-нибудь пользователь регистрируется в системе.
База данных
Используется, чтобы задать дополнительное местоположение файлов определения действий и типов данных (файлов *.dt), а также файлов передней панели (файлов *.fp).
Пиктограммы
Используется, чтобы задать дополнительное местоположение пиктограмм.
Данные помощи, или подсказки
Используется, чтобы задать дополнительное местоположение данных системы помощи, или подсказки, для рабочего стола.
Внесение изменений в маршрут поиска файлов.
iMWiiiiliilil^
Внесение изменений в маршрут поиска файлов
Чтобы модифицировать маршрут поиска файлов какого-нибудь конкретного пользователя, выполните следующие операции:
Откройте файл SHOME/.dtprofile для редактирования.
Добавьте или отредактируйте строку, которая определяет и экспортирует персональную переменную ввода.
Например, следующая строка добавляет местоположение к персональному маршруту поиска приложений конкретного пользователя:
export DTSPUSERAPPHOSTS=/projectsl/editors.
Чтобы сделанные изменения возымели действие, выйдите из системы и повторно зарегистрируйтесь в ней.
Сборка доступных приложений
После установки маршрутов поиска файлов для рабочего стола следующим этапом должна стать сборка доступных приложений, для чего следует воспользоваться утилитой dtappgather. Именно эти приложения будут отображаться в окне менеджера приложений (Application Manager). Утилита dtappgather собирает файлы приложений для их представления посредством менеджера приложений и несет ответственность за создание и регенерацию подкаталога менеджера приложений для данного пользователя.
Чтобы изменять опции командной строки утилиты dtappgather, измените переменную dtstart_appgather либо в файле /etc/dt/config/Xsession.d/sitevars для всех пользователей, либо в файле SHOME/.dtprofile отдельных пользователей. Установите переменную dtstart_appgather следующим образом:
dtstart_appgather="/usr/dt/bin/dtappgather 6"
Поиск файла .profile или файла .login некоторого пользователя
Сценарий Xsession может выполнять поиск традиционных пользовательских сценариев SHOME/.profile или SHOME/.login, но по умолчанию эта возможность заблокирована. Чтобы заставить сценарий Xsession выполнять поиск сценария .profile или .login, установите переменную DTSOURCEPROFILE из сценария SHOME/.dtprofile в логическое значение true:
DTSOURCEPROFILE=true
Запуск демона передачи сообщений ToolTalk
Следующая задача сценария Xsession состоит в том, чтобы запустить демон передачи сообщений ToolTalk. Служба ToolTalk позволяет независимым приложениям обмениваться информацией, и при этом им не требуются непосредственные знания друг о друге. Приложения создают и посылают сообщения ToolTalk для того, чтобы обмениваться информацией друг с другом. Служба ToolTalk получает эти сообщения, определяет получателей и
затем доставляет сообщения соответствующим приложениям. Пользователи могут изменять опции ttsession для их собственных сеансов посредством установки переменной dtstartttsession в сценарии SHOME/.dtprofile следующим образом:
dtstart_ttsession="/usr/dt/bin/ttsession -s"
Загрузка ресурсов сеанса
Ресурсы используются приложениями, чтобы установить некоторые аспекты внешнего вида и поведения. Например, менеджер стилей (Style Manager, dtstyle) предоставляет ресурсы, позволяющие определять, где система выполняет поиск файлов, содержащих информацию о цветовых палитрах. Для этого следует ввести следующую строку в файл sys.resources из каталога /etc/dt/config/<language>:
dtstyle*paletteDirectories: /usr/dt/palettes/С $НОМВ/.dt/palettes
ПРИМЕЧАНИЙ
Если файл sys.resources не существует, то вам придется создать его, для чего следует воспользоваться инструкциями, приведенными в следующем абзаце.
Менеджер сеансов загружает ресурсы при запуске сеанса. Заданные по умолчанию ресурсы рабочего стола могут быть найдены в файле /usr/dt/config/</angeage>/ sys.resources. Эти ресурсы становятся доступными для сеанса каждого пользователя через свойство RESOURCE-MANAGER. Этот файл не должен редактироваться, поскольку внесенные в него изменения перезаписываются при последующих инсталляциях рабочего стола. Системный администратор может изменять принятые по умолчанию системные ресурсы посредством создания файла /etc/dt/config/</a«#n«ge>/sys. resources. В этом файле вы можете перекрывать заданные по умолчанию ресурсы или определять дополнительные ресурсы для всех пользователей рабочего стола. Чтобы установить персональные ресурсы, создайте элементы в файле $HOME/.Xdefaults.
Пользователи могут изменять принятые по умолчанию ресурсы рабочего стола и ресурсы в масштабе всей системы через их файл SHOME/.XdefauIts. Ресурсы, указанные в этом файле, имеют приоритет над теми, которые определены по умолчанию в файлах ресурсов рабочего стола или файлах ресурсов системного администратора.
Запуск сервера цветов
Вы можете выбирать широкий диапазон цветов для вашего дисплея либо путем использования панели менеджера стилей, как показано на рисунке В.1, либо посредством настройки ресурсов цветов, которые используются менеджером стилей для того, чтобы управлять цветовым решением рабочего стола.
Рисунок ВЛ.
Панель Style Manager.
Установите ресурсы сервера цветов для всех пользователей при помощи создания файла /etc/dt/config/</«n^n«^e>/sys.resources и определения ресурсов в указанном файле. Пользователи могут аналогичным образом устанавливать эти ресурсы для своих собственных сеансов, определяя их в файле SHOME/.Xdefaults.
Запуск менеджера рабочих областей
Менеджер сеансов несет ответственность за запуск менеджера рабочих областей Workspace Manager). По умолчанию запускается программа /usr/dt/bin/dtwm. Менеджер рабочих областей - это оконный менеджер, предоставляемый рабочим столом. Он управляет решением следующих задач:
Ф Внешний вид компонентов рамки окна
ф Поведение окон, включая порядок их наложения и поведение фокуса
ф Связывание клавишей и кнопок мыши
Ф Внешний вид свернутых окон
Ф Рабочая область и оконные меню
Кроме перечисленного, менеджер рабочих областей управляет компонентами рабочего стола, которые представлены в таблице В.З.
Рабочие области
Менеджер рабочих областей управляет количеством рабочих областей и отслеживает, какие именно окна открыты в каждой из них.
Фоновые изображения рабочих областей
Пользователь может менять фоновое изображение с помощью менеджера стилей. Однако управление фоновым изображением представляет собой функцию менеджера рабочих областей.
Передняя панель
Хотя передняя панель использует свои собственные файлы конфигурации, она создается и управляется с помощью менеджера рабочих областей.
Компонент
Описание
Дополнительные модификации, которые могут быть сделаны с помощью менеджера рабочих областей, включают изменение числа рабочих областей и предоставление имен рабочим областям в масштабе всей системы.
Изменение количества рабочих областей в масштабе всей системы
По умолчанию конфигурация рабочего стола предоставляет четыре рабочие области (workspaces). Пользователь имеет возможность добавлять, удалять и переименовывать рабочие области при помощи всплывающего меню, связанного с переключателем рабочих областей.
Ресурс workspaceCount в файле /usr/dt/app-defaults/C/Dtwm устанавливается на следующее принятое по умолчанию число рабочих областей: .
Dtwm*0*workspaceCount: 4
Dtwm*workspaceCount: 1
На экране 0 определено несколько рабочих областей; на любом другом экране - одна рабочая область. Вы можете создавать файл /etc/dt/config/C/sys.resources или модифицировать его, если он уже существует, для того, чтобы изменить заданное по умолчанию количество рабочих областей для всех новых пользователей рабочей станции.
Используйте ресурс 0*workspaceCount, чтобы установить на первичном экране принятое по умолчанию количество рабочих областей в масштабе всей системы:
Dtwm*0*workspaceCount: количество_областей'
Например, следующий ресурс устанавливает на первичном экране принятое по умолчанию количество рабочих областей для всей системы равным 6:
Dtwm*0*workspaoeCount: 6
Предоставление имен рабочим областям в масштабе всей системы
Внутри системы рабочие области пронумерованы в соответствии с соглашением нумерации ws<n>, в котором п представляет собой числа 0, 1, 2 и т.д. Например, четыре рабочие области, которые устанавливаются по умолчанию, внутри пронумерованы от wsO до ws3.
Используйте ресурс title для изменения имени конкретной рабочей области через файл sys.resources, который был описан ранее:
Dtwm*wsn*title: имя
Например, следующие ресурсы устанавливают для четырех принятых по умолчанию рабочих областей такие имена:
Dtwm*wsO*title: Glenda Dtwm*wsl*title: Neil Dtwm*ws2*title: Nicole Dtwm*ws3*title: William
Запуск приложений сеанса
При запуске сеанса менеджер сеансов перезапускает любые приложения, сохраненные во время предыдущего сеанса. Набор системных приложений по умолчанию, которые будут восстановлены как часть начального сеанса пользователя, может быть найден в файле /usr/dt/config/</«ngw«ge>/sys.session. Не редактируйте этот файл. ■
Системный администратор может заменить набор приложений, запущенных в качестве составной части начального сеанса пользователя, копируя файл /usr/dt/config/ <language>/sys.sesskm в файл /etc/dt/config/</angw«ge>/sys.session и модифицируя последний. В отличие от файлов ресурсов этот файл используется в качестве полной замены принятого по умолчанию файла рабочего стола.
Передняя панель
Содержит набор пиктограмм и всплывающих меню (более похожих на сворачиваемые меню), которые появляются внизу экрана. Двумя основными элементами передней панели являются основная панель (Main Panel) и субпанели. Основная панель включает в себя переключатель рабочих областей, показанный на рисунке В.2. Этот переключатель содержит кнопки, используемые вами для перехода из одной рабочей области в другую.
Рисунок В.2. Переключатель рабочих областей Передней панели.
Если элемент управления из основной панели имеет стрелку в его верхней части, это означает, что данный элемент управления имеет субпанель, как показано на рисунке В.З.
Рисунок В.З.Субпанель.Рисунок В.З.Субпанель.
Рисунок В.З.
Субпанель.
Рисунок В.З.
Субпанель.
Пользователи могут перетаскивать пиктограммы из менеджера файлов или менеджера приложений и добавлять их к субпанелям. Может быть сконфигурировано до 12 дополнительных рабочих областей, каждая со своим фоном и цветами. Каждая рабочая область может содержать произвольное количество выполняющихся в ней приложений, и некоторое приложение может быть установлено таким образом, чтобы появляться в одной, в нескольких или во всех рабочих областях одновременно. В некоторых экземплярах системный администратор может счесть необходимым блокировать переднюю панель так, чтобы пользователи не могли изменять ее.•
Используя интерфейс рабочего стола, можно легко модифицировать переднюю панель (Front Panel) в следующих направлениях:
^ Настраивая рабочую область
^ Добавляя и удаляя рабочую область
^ Переименовывая рабочую область
^ Добавляя элементы управления к субпанелям и удаляя их
Системный администратор может также предпринять более тонкую настройку вне среды CDE, редактируя конфигурационные файлы CDE непосредственно из командной строки UNIX. Одиако такая расширенная настройка не входит в перечень экзаменационных тем. Поэтому для получения более подробной информации о расширенной настройке передней панели следует обратиться к Руководству продвинутого пользователя и системного администратора CDE (CDE Advanced User’s and System Administrator‘s Guide).
Настройка рабочих областей
Пользователи могут применять переключатель рабочих областей на передней панели для переименования рабочих областей или изменения их количества. Щелкните на кнопках рабочих областей, чтобы изменить их. Когда курсор мыши позиционирован на экранной кнопке рабочей области, то щелчок третьей кнопкой мыши отображает всплывающее меню данной рабочей области, как показано на рисунке В.4.
Рисунок В.4.
Всплывающее меню кнопки данной рабочей области.
Всплывающее меню экранных кнопок рабочих областей включает в себя элементы, описанные в таблице В.4.
Таблица В.4 Опции всплывающего меню
Опция
Add Workspace
Delete
Описание
Добавляет рабочую область к списку рабочих областей
Удаляет рабочую область
Rename
Редактируя имя рабочей области, заменяет текстовое поле кнопки
Help
Отображает справку (помощь, или подсказку) переключателя рабочих областей
Шаг за шагом (
Переименование рабочей области
Используйте всплывающее меню для того, чтобы модифицировать параметры кнопки рабочей области. Например, чтобы переименовать рабочую область, выполните следующие операции:
Укажите экранную кнопку той рабочей области, которую вы хотите переименовать.
Выберите Rename из всплывающего меню кнопки (это меню отображается, когда вы выполняете щелчок экранной кнопки с помощью третьей кнопки мыши). Экранная кнопка рабочей области превращается в текстовое поле.
Отредактируйте текстовое поле.
Нажмите Enter.
Шаг за шагом,'. . .
Добавление рабочей области
Чтобы добавить рабочую область, выполните следующие операции:
Укажите на любую часть переключателя рабочих областей и выполните щелчок третьей кнопкой мыши, чтобы отобразить всплывающее меню.
Выберите Add Workspace из всплывающего меню. Новая рабочая область, названная New, помещается в конец набора рабочих областей. Если создается несколько новых рабочих областей, то эти области именуются New_l, New_2 и т.д.
Переименуйте рабочую область так, как было описано ранее.
В.4 Удаление рабочей областиВ.4 Удаление рабочей области
В.4 Удаление рабочей области
В.4 Удаление рабочей области
Чтобы удалить рабочую область, выполните следующие операции:
Укажите на кнопку той рабочей области, которую вы хотите удалить.
Выберите Delete из всплывающего меню экранной кнопки (это меню отображается, когда вы выполняете щелчок экранной кнопки с помощью третьей кнопки мыши).
Настройка элементов управления рабочих областей
Настройка элементов управления в переключателе рабочих областей - достаточно сложная задача, требующая, чтобы системный администратор создал конфигурационный файл передней панели. Этот раздел описывает некоторые простые настройки, которые могут быть выполнены в среде рабочего стола. Поэтому, для получения более подробной информации о расширенной настройке, следует обратиться к Руководству продвинутого пользователя и системного администратора ODE (CDE Advanced User’s and System Administrator's Guide).
Настройка области переключателя передней панели
Часть области переключателя рабочих областей, изображенная на рисунке В.5, не занята другими элементами управления или кнопками рабочих областей.
Рисунок В.5.
Область переключателя.
Область переключателя имеет собственное всплывающее меню, которое состоит из следующих элементов:
Add WorkspaceДобавляет рабочую область и создает ее экранную кнопку в пе
реключателе рабочих областей
HelpОтображает справку (помощь, или подсказку) переключателя
рабочих областей
Добавление к субпанели некоторого приложения или другой пиктограммы
Пользователь может добавлять к передней панели любой тип пиктограммы менеджера файлов или менеджера приложений. Наиболее удобное использование этой возможности - добавление пиктограмм приложений.Пользователь может добавлять к передней панели любой тип пиктограммы менеджера файлов или менеджера приложений. Наиболее удобное использование этой возможности - добавление пиктограмм приложений.В.5 Добавление пиктограммы приложения на субпанельЧтобы добавить пиктограмму приложения на субпанель, выполните следующие опеВ.5 Добавление пиктограммы приложения на субпанельЧтобы добавить пиктограмму приложения на субпанель, выполните следующие опе
Пользователь может добавлять к передней панели любой тип пиктограммы менеджера файлов или менеджера приложений. Наиболее удобное использование этой возможности - добавление пиктограмм приложений.
Пользователь может добавлять к передней панели любой тип пиктограммы менеджера файлов или менеджера приложений. Наиболее удобное использование этой возможности - добавление пиктограмм приложений.
В.5 Добавление пиктограммы приложения на субпанель
Чтобы добавить пиктограмму приложения на субпанель, выполните следующие опе
В.5 Добавление пиктограммы приложения на субпанель
Чтобы добавить пиктограмму приложения на субпанель, выполните следующие опе
рации:
Отобразите пиктограмму данного объекта в окне менеджера файлов или в окне менеджера приложений.
Отобразите субпанель, к которой должен быть добавлен данный объект.
Перетащите объект на элемент управления Install Icon, используя первую кнопку мыши, и отпустите его на данном элементе управления.
(Application group) Пиктограмма приложения(Application icon)(Application group) Пиктограмма приложения(Application icon)Поведение элементов управления, добавленных к передней панели при помощи элемента управления Install Icon, зависит от типа отпущенной пиктограммы. В таблице В.5 описываются особенности элементов управления для пиктограммы каждого типа.
(Application group) Пиктограмма приложения
(Application icon)
(Application group) Пиктограмма приложения
(Application icon)
Файл (File)
Отображает содержимое файла, пригодное для редактирования, когда пользователь щелкает пиктограмму File. Точно такая же особенность, как пиктограмма файла в окне менеджера файлов.
Тип пиктограммы
Особенность
Папка (Folder)Открывает вид данной папки в окне менеджера файлов.
Группа приложений
Открывает вид данной группы приложений в окне менеджера приложений.
Автоматически запускает приложение, когда пользователь щелкает данную пиктограмму. Поведение в данном случае точно такое же, как и пиктограммы приложения в окне менеджера файлов или менеджера приложений.
Сброс всех пользовательских установок в исходное состояние
Шагза шагом • ,Л V
Сброс фпередней панели-
Чтобы установить переднюю панель в исходное состояние и удалить все пользовательские установки, выполните следующие операции:
Откройте окно менеджера приложений (Application Manager) и выполните двойной щелчок на пиктограмме группы приложений Desktop_Tools.
Выполните двойной щелчок на Restore Front Panel.
Экран опустеет на нескольких секунд? пока перезапускается менеджер рабочих областей. Действие Restore Front Panel удаляет все установки, сделанные с помощью элемента управления Install Icon или с помощью всплывающих меню передней панели.
Эта процедура не затрагивает расширенные настройки, выполняемые посредством редактирования вручную конфигурационных файлов передней панели.
Действия и типы данных
Действия - это инструкции, которые автоматизируют задачи рабочего стола, такие как выполнение приложений и открытие файлов данных. Действия работают практически так же, как макрокоманды приложений или функции языков программирования. Они могут быть назначены пиктограммам таким образом, чтобы ассоциированные команды вызывались при выполнении щелчка на пиктограмме.
Шагзашагом-v чй;: ■
Создание действия
Вы можете создать некоторое действие, воспользовавшись для этого меню Create Action, как описано в следующих шагах:
Вызовите всплывающее меню Applications, представленное на рисунке В.6.
Рисунок В.6.Всплывающее меню Applications.Рисунок В.6.Всплывающее меню Applications.:- . «» i:- . «» i
Рисунок В.6.
Всплывающее меню Applications.
Рисунок В.6.
Всплывающее меню Applications.
:- . «» i
:- . «» i
Выберите пункт DesktopApps из указанного меню. На экране появляется окно Desktop_Apps, показанное на рисунке В.7.
Рисунок В.7.
Окно Desktop_Apps.
В окне Desktop Apps щелкните пиктограмму Create Action. Появляется окно Create Action, как на рисунке В.8.
Рисунок В.8.
Окно Create Action.
Для получения информации относительно заполнения соответствующих полей и создания какого- нибудь действия щелкните кнопку Help, расположенную в верхней части окна Create Action.
Определив некоторое действие, вы, чтобы упростить задачу, можете выполнить его в пользовательском интерфейсе рабочего стола. Рабочий стол предоставляет возможность присоединения компонентов интерфейса пользователя, таких как пиктограммы, элементы управления передней панели и пункты меню для действий. Каждая из этих пиктограмм совершает какое-нибудь действие при выполнении пользователем на ней двойного щелчка.
Другой общепринятый вариант использования действий - их применение в меню. Файлы данных обычно содержат действия в меню их выбора в менеджере файлов. Например, файлы XWD (файлы с именами, заканчивающимися на .xwd или .wd) имеют действие Open, обеспечивающее отображение образа экрана, когда вы выполняете XWD-действие.
Действия и типы данных - мощные компоненты для интегрирования приложений в среду рабочего стола. Они обеспечивают способ создания интерфейса пользователя для запуска приложений и манипулирования файлами данных. Если вы хотите узнать больше о создании действий, то вам следует обратиться к Руководству продвинутого пользователя и системного администратора по Solaris CDE (Solaris CDE Advanced User's and System Administrator's Guide).
Менеджер приложений
Менеджер приложений (Application Manager) представляет собой контейнер рабочего стола, который отображает приложения, доступные пользователям. Эти приложения выбираются из всплывающего меню Applications, которое расположено на передней панели и представлено ранее на рисунке В.6.
При первоначальном открытии окно менеджера приложений отображает его каталог верхнего уровня. Взаимодействие пользователя с менеджером приложений аналогично использованию менеджера файлов за исключением того, что менеджер приложений содержит исполняемые модули. Пользователь запускает менеджер приложений с помощью пиктограммы на передней панели, после чего открывается окно, показанное на рисунке В.9.
Рисунок В.9.
Окно Application Manager.
Программы и пиктограммы могут быть установлены в менеджере приложений системным администратором и в ходе инсталляционного процесса могут быть перенесены на другие рабочие станции. По умолчанию менеджер приложений поставляется предварительно сконфигурированным таким образом, что он включает несколько утилит и программ, представленных на рисунке В.9. Каждая из этих утилит расположена в некотором каталоге, который вместе с его информационным содержимым носит название группы приложений. Группы приложений, которые по умолчанию предоставляются вместе с рабочим столом, описываются в таблице В.6.
■■Mii^^
Группа
Описание
Desktop_Apps
Приложения рабочего стола, такие как менеджер файлов (File Manager), менеджер стилей (Style Manager) и калькулятор (Calculator).
Desktop_Toois
Инструменты администрирования рабочего стола и операционной системы, такие как регистрация пользователей (User Registration), перезагрузка приложений (Reload Applications), текстовый редактор vi и проверка орфографии (Check Spelling).
Information
Пиктограммы, представляющие часто используемые разделы системной помощи, или подсказки.
System_Admin
Инструментальные средства системного администратора.
Desktop Controls
Инструментальные средства для установки вашей среды СОЕ: поведение мыши, шрифты рабочего стола, хранитель экрана и поведение окна.
OpenWindows
Это группа, содержащая несколько действий в стиле OpenWindows, таких как инструментальное средство электронной почты и менеджерфайлов.
Для менеджера приложений каталогом верхнего уровня иерархии является /var/dt/ appconfig/appmanagerAogin-hostnametdisplay, который создается динамически всякий раз, когда пользователь регистрируется в системе. Например, если пользователь bcalkins регистрируется в системе с дисплея sparcl :0, то создается следующий каталог:
/ var /dt/appconf1д/appmanager/bcalkins-sparcl:0 ■
Менеджер приложений формируется посредством сбора групп приложений из каталогов, расположенных по маршруту поиска файлов приложений. Заданный по умолчанию маршрут включает в себя местоположения, перечисленные в таблице В.7.
3#iSBiisSililli^^
ВидВидМестоположение
Вид
Вид
Встроенные приложения/usr/dt/appconfig/appmanager/</anguege>
Приложения масштаба/etc/dt/appconfig/appmanager/</anguage>
всей системы
Персональные приложения $HOME/.dt/appmanager
Чтобы создать каталог верхнего уровня для менеджера приложений, во время регистрации пользователя в системе создаются ссылки от каталогов групп приложений к каталогу менеджера приложений, в результате чего возникает /var/dt/appconfig/appmanager/ <login-hostname-display>. Операция сборки выполняется с помощью утилиты рабочего стола dtappgather, которая автоматически запускается менеджером регистрации после успешной регистрации польвателя в системе.
Например, рабочий стол предоставляет встроенную группу приложений/usr/dt/appconfig/ appmanager/</awg«age>/Desktop_Tools. Во время регистрации пользователя в системе создается символическая ссылка на /var/dt/appconfig/appmanager l<login-hostname-display>l DesktopTools.
Приложения могут быть добавлены к менеджеру приложений посредством копирования пиктограмм из других групп приложений в персональную группу.
Шагза'Шгомх v-A : ^ ^ytAy-
Создание групп персональных приложений
Чтобы создать группу персональных приложений, выполните следующие операции:
Из вашей домашней папки перейдите в подпапку .dt/appmanager.
Создайте новую папку. Имя этой папки становится именем новой группы приложений.
Выполните двойной щелчок на Reload Applications в группе приложений DesktopApps.
Ваша новая группа приложений регистрируется на верхнем уровне иерархии менеджера приложений.
Пользователи могут изменять группу персональных приложений, поскольку они имеют полномочия доступа на запись к данному каталогу. Например, пользователи могут копировать (перетаскивая при нажатой клавише Ctrl на клавиатуре) пиктограмму Calculator из группы приложений Desktop_Tools в новую персональную группу приложений. Другой возможный метод решения этой задачи заключается в том, чтобы создать некоторое действие для приложения, а затем поместить пиктограмму приложения (действия) в группу персональных приложений.
Оболочка DTKSH
Для рабочего стола CDE доступен командный процессор Korn (dtksh - Desktop Korn Shell), который через сценарии предоставляет возможность простого доступа к большинству существующих функций Xt и MOTIF. Командный процессор Korn для рабочего стола базируется на версии ksh-93, которая предлагает мощный набор инструментов и команд для программиста командных процессоров и поддерживает стандартный набор команд программирования оболочки Korn. Разработчики и программисты могут использовать командный процессор dtksh для создания приложений MOTIF в среде CDE.
Резюме
Всегда возникает один и тот же вопрос: нужно ли разрешать пользователям самостоятельно настраивать CDE? Большинство крупных фирм отрицательно относятся к тому, что пользователи выполняют настройку их собственной рабочей среды. Обычно системный администратор обеспечивает установку по умолчанию, которая применима ко всем пользователям. Принятая умолчанию установка обеспечивает непротиворечивость и предотвращает "самодельные" проблемы, которые могут возникать в тех случаях, когда пользователи неправильно модифицируют системные файлы. Ответ на указанный вопрос зависит также и от того, насколько вы готовы пострадать для блага вашего сообщества пользователей. Пользователям нравится тот системный администратор, который предоставляет им гибкие возможности для упорядочивания их собственных рабочих столов. Однако у вас могут возникнуть многочисленные проблемы, если пользователи должным образом не обучены в части применения утилит настройки.
Графический интерфейс пользователя, доступный в CDE, представляет собой долгожданное расширение системы UNIX. Работая в CDE, пользователи больше не должны
общаться с загадочной оболочкой UNIX. Большинство стандартных задач, выполняемых пользователями, теперь может быть решено с использованием меню и пиктограмм, предоставляемых CDE. В качестве системного администратора ваша работа заключается в том, чтобы настраивать CDE и управлять ею, используя предоставленные инструментальные средства для облегчения решения задач и поддержки производительности вашей конкретной среды.
Настройка CDE - достаточно сложная тема. И хотя настоящий раздел предоставляет некоторые основные темы настройки, за дополнительной информацией вам следует обратиться к публикациям, специально посвященным данному вопросу.
Приложение
История Solaris
UNIX - многочисленна. Это не одна операционная система, но множество воплощений идеи, которая возникла еще в 1965 году. Как системный администратор вы должны понимать историю развития операционной системы UNIX - откуда она произошла, как создавалась и чего достигла на сегодняшний день. Понимание различных версий UNIX и их происхождения проясняет, почему UNIX приобрела известность несколько враждебной операционной системы. Например, система UNIX не была разработана единственной компанией с большой организацией маркетинга, продвигающей интерфейс пользователя. Другими словами, развитие UNIX шло не таким путем, каким развивалась, например, система Microsoft Windows. С другой стороны, система UNIX не была изобретена хакерами, которые вводили в заблуждение окружающих; она выросла из мощных академических корней. Первые разработчики UNIX были высокообразованными математиками и учеными в области компьютеров, нанятыми организацией, которую многие люди воспринимают как главный промышленный исследовательский центр во всем мире, Bell Laboratories. Будучи хорошо осведомленными и опытными в своих профессиональных областях, эти разработчики поддерживали профессиональные контакты с исследователями из академических учреждений, что привело к обмену взаимовыгодными идеями. Понимание взаимоотношений симбиоза между системой UNIX и академическим сообществом обеспечивает понимание подоплеки изобретателей системы и истории взаимодействий между университетами и Bell Laboratories.
Как все это начиналось
Все это началось в Bell Laboratories, исследовательской лаборатории AT&T, которая представляет собой одну из самых больших и наиболее мощных компаний нашего времени. Как ни странно, AT&T не была заинтересована в разработках и продажах компьютеров или операционных систем. Фактически Министерство юстиции Соединенных Штатов Америки не позволяло AT&T продавать программное обеспечение. Однако существующие системы AT&T, состоящие из людей и бумаги, были в опасности, которая возникла в результате бума 60-х годов прошлого столетия. К 70-м годам положение дел в телефонном бизнесе продолжало оставаться неопределенным. Из-за отчаяния и необходимости Кен Томпсон (Ken Thompson) из AT&T намеревается разрабатывать то, что не была готова обеспечить никакая компьютерная компания, - многопользовательскую, многопроцессорную операционную систему, которую предполагалось использовать для собственных нужд отдела обработки информации. Более конкретно, целью его работы было создание операционной системы, которая поддерживала бы одновременную работу нескольких программистов в более гостеприимной среде.
Далее приводится перечень основных дат и событий в цикле развития операционной системы UNIX.
1965-1969 годы
В 1965 году Bell Labs объединила усилия с MIT (Massachusetts Institute of Technology - Массачусетским технологическим институтом) и компанией General Electric в области совместной разработки Multics, многопользовательской интерактивной операционной системы, выполняющейся на мейнфрейме GE 645. Но неудачи в ходе разработки этой системы, которая сталкивалась с многочисленными задержками и имела высокую стоимость, вынудили Bell Labs в 1969 году выйти из проекта разработки Multics.
В 1969 году Кен Томпсон, выделенный Bell Labs для участия в проекте Multics, встретился с Деннисом Ритчи (Dennis Ritchie), который предоставил миникомпьютер PDP-7 корпорации Digital Equipment Corporation для продолжения разработки операционной системы, способной к поддержке группы программистов в исследовательской среде. После того как они создали прототип, Томпсон возвратился в Bell Labs, чтобы предложить использование этой новой операционной системы в качестве инструмента для подготовки документов в патентном отделе Bell Labs. Новая операционная система была названа UNIX, чтобы отгородить ее от сложности Multics. Продолжали прикладываться многочисленные усилия, направленные на разработку системы, ив 1971 году операционная система UNIX стала функционировать в Bell Labs.
Первая версия операционной системы UNIX была написана на ассемблере для PDP- 11/20. В ее состав входили файловая система, fork, roff и ed. Система использовалась в качестве инструмента обработки текста при подготовке патентов.
1970-1972 годы
В начале 70-х операционная система UNIX стала приобретать популярность во всех подразделениях Bell Labs, и, как только пошли разговоры о распространении новой операционной системы, университеты не преминули воспользоваться ею. Однако, хотя UNIX была благосклонно встречена академическими кругами и сферой высоких технологий, деловое сообщество отнеслось к ней со скептицизмом. С целью повышения популярности операционной системы UNIX компания AT&T начала лицензировать университетам исходный текст UNIX по минимальной стоимости. Компания AT&T предоставила множество лицензий на программный код и руководства по системе, однако она не обеспечивала техническую поддержку. К концу 70-х уже 70% всех колледжей и университетов имели операционную систему UNIX.
Дипломированные специалисты в области информатики использовали эту систему и даже вносили изменения в программный код, чтобы сделать ее более стабильной. Операционная система UNIX была написана на ассемблере и выполнялась первоначально на аппаратных средствах корпорации DEC: сначала на миникомпьютере PDP-7, затем на PDP- 11/40, PDP-11/45 и, наконец, на PDP-11/70, где и получила широкую популярность. -
1973-1979 годы
Этот период стал наиболее существенным в развитии операционной системы UNIX. В период между 1969 и 1973 годами Ритчи и Томпсон разработали язык программирования С и переписали ядро системы UNIX на языке высокого уровня С. Операционная система могла быть откомпилирована так, чтобы выполняться на различных компьютерах. В течение нескольких месяцев операционная система UNIX могла быть перенесена на новые аппаратные средства. Модификации самой операционной системы были достаточно просты. Как и ранее, Томпсон действовал в унисон с членами академического сообщества, которые уже использовали UNIX во многих учебных курсах системного проектирования. Операционная система UNIX, написанная на универсальном языке программирования, поддерживающем современные команды, начала перемещаться в области обработки текстов и программирования. ■
К этому моменту была выпущена уже версия 6 операционной системы UNIX. Это был первый выпуск системы UNIX, подхваченный коммерческой фирмой Whitesmiths, Inc., создавшей коммерческую копию версии 6 под названием Idris.
В 1975 году Томпсон, который в то время находился в творческом отпуске, посетил Университет Беркли и инсталлировал версию 6 на PDP-11/70. Именно в это время два аспиранта, Билл Джой (Bill Joy) и Чак Халей (Chuck Haley), включились в работу над версией 6 и позднее сыграли важную роль в развитии операционной системы UNIX в Университете Беркли. Первым проектом, над которым они работали, была разработка текстового редактора ех для UNIX.
Джой и Халей начали интересоваться внутренними операциями UNIX - и, в частности, ядра системы. Джой формирует дистрибутив операционной системы UNIX, получивший название BSD (Berkeley Software Distribution - дистрибутив программного обеспечения Беркли). Он включил в систему такие усовершенствования, как командный процессор С (С-по- добный интерфейс к операционной системе UNIX) и текстовый редактор vi. Первый дистрибутив BSD был выпущен в 1975 году. В 1978 году в рамках второго выпуска BSD Джой добавил поддержку виртуальной памяти, позволяющей программам выполняться даже в том случае, если они требовали больше физической памяти, чем было доступно в данное время. Это второе издание BSD оказало очень сильное влияние на выпуск Bell Labs версии 7 операционной системы UNIX, которая появилась на свет в 1979 году и стала последней из "чистых" версий UNIX, то есть, произведенных исключительно Bell Labs. Выпуск версии 7 привел к появлению ряда переносов операционной системы UNIX на другие аппаратные платформы, и впервые как промышленность, так и академические учреждения, предложили усовершенствования, которые были включены в будущие выпуски.
В конце 70-х DARPA (Defense Advanced Research Projects Agency - агентство перспективных исследовательских программ Министерства обороны Соединенных Штатов Америки) приняло решение базировать свою универсальную вычислительную среду на версии Беркли операционной системы UNIX. В релизе BSD 4.1 агентство DARPA обеспечило несколько существенных усовершенствований именно в области эффективности операционной системы UNIX. Файловая система fast, предоставившая способ для повышения эффективности файловой системы и предотвращения фрагментации файлов, была добавлена в выпуске 4.2.
1982-1983 годы
В 1982 году AT&T формально выпустила бета-версию операционной системы UNIX для коммерческого сектора. В 1983 году AT&T выпустила первую по-настоящему промышленную версию операционной системы UNIX, назвав ее System III (версии System I и System II никогда не существовали). Хотя она была основана на версии 7 операционной системы UNIX и поэтому включала в себя некоторые утилиты BSD, в состав System III не вошли текстовый редактор vi и командный процессор С. Вместо этого AT&T включила в этот выпуск инструментальные средства программиста.
С выпуском System III компания AT&T увидела будущее операционной системы UNIX и уже в скором времени выпустила System V. (System IV никогда не была замечена вне компании AT&T.) В состав System V входили текстовый редактор, curses (экранно-ориентированные библиотеки программного обеспечения) и программа init, используемая для запуска процессов при выполнении загрузки UNIX.
В начале 80-х Джой окончил Беркли со степенью магистра электротехники и стал соучредителем фирмы Sun Microsystems (название Sun произошло от первых букв слов Stanford University Network - сеть Стэнфордского университета). Реализация BSD UNIX от фирмы Sun получила название SunOS. Фирма Sun расширила инструментальные средства организации сети UNIX для того, чтобы включить в состав системы сетевую файловую систему NFS, которой суждено было стать промышленным стандартом. Фирма Sun также выполнила часть первоначальных работ по созданию оконного программного обеспечения для UNIX. Операционная система SunOS была впервые выпущена в 1983 году.
Вместе с рабочими станциями, предлагаемыми теперь фирмой Sun, операционная система UNIX начала получать признание в сфере высоких технологий и особенно в области CAD/CAE (Computer-Aided Design/Computer-Aided Engineering - автоматизированного проектирования и автоматизированного конструирования). Начало 80-х показало, что системы CAD/CAE становятся популярными. Другие поставщики рабочих станций, такие как HP и Apollo, начали использовать возможности и эффективность систем CAD/CAE для достижения прибыли, сравнимой с набирающими в то время популярность персональными компьютерами. Эти рабочие станции могли превзойти персональные компьютеры по быстродействию и в случае использования UNIX в качестве операционной системы обеспечить работу в многопользовательской среде.
Однако в других коммерческих вычислительных средах операционная система UNIX все еще рассматривалась как враждебная пользователю среда и не ставила под сомнение вневременные возможности мэйнфреймов. UNIX должна была прежде всего определить сама себя как дружественную к пользователю, испытанную и подтвержденную практикой операционную систему. Однако основу UNIX составляли достижения в области многозадачного режима и организации работы в сети. Что более важно, UNIX рекламировалась как операционная система, которая обеспечивала переносимость между аппаратными средствами с различной архитектурой, и, как следствие, разработчики программного обеспечения приходили в возбуждение при слове UNIX. Теоретически, программа, написанная на языке программирования С для UNIX, могла быть перенесена на любую аппаратную платформу, которая работает под управлением операционной системы UNIX.
1984-1987 годы
В 1984 году AT&T выпустила System V, релиз 2, а в 1987 году - релиз 3. Релиз 2 содержал в своем составе файл базы данных терминальных возможностей termcap, названный terminfo, который обеспечивал поддержку различных терминалов с электроннолучевой трубкой, соединенных с системой UNIX. Другим изменением явилось включение Streams и дистанционных файловых систем в состав Unix-систем.
1988-1992 годы
В 1988 году AT&T потрясла сообщество UNIX приобретением доли фирмы Sun Microsystems, в то время уже ставшей лидером индустрии. Другие поставщики аппаратных средств увидели в этом необоснованное преимущество фирмы Sun и в результате быстро сформировали консорциум под названием OSF (Open Software Foundation - фонд открытого программного обеспечения). Они совместно вложили несколько миллионов долларов, чтобы разработать новый стандарт UNIX и конкурировать с фирмой Sun.
В качестве ответного удара компании AT&T, Sun, Data General и Unisys объединили свои усилия, чтобы создать свою собственную организацию, призванную бороться с консорциумом OSF. Этот новый консорциум компаний, названный UI (UNIX International), был сформирован для наблюдения за развитием стандартов System V. Консорциумы OSF и UI оказались двумя главными конкурирующими коммерческими стандартами для операционной системы UNIX.
К концу 80-х AT&T пришла к заключению, что операционная система UNIX была отвлечением от основного направления бизнеса компании по производству аппаратных средств. В результате, AT&T создала USL (UNIX Software Lab - лабораторию программного обеспечения UNIX), которая в конечном итоге была приобретена компанией Novell в 1992 году.
В 1992 году на летней конференции UseNIX представители университета Беркли объявили, что университет завершает свои действия по разработке операционной системы UNIX на версии 4.4 BSD. Несколько человек, участвовавших в создании BSD UNIX, учредили небольшие компании, чтобы попытаться продолжить развитие BSD UNIX, но без участи Университета Беркли и агентства АКРА это было далеко не то же самое.
В 90-х доминировали BSD и System V UNIX, и несколько поставщиков предлагали на рынке собственные версии одной из этих двух операционных систем. Довольно скоро UNIX как операционная система, претендующая на обеспечение переносимости прикладных программ между различными аппаратными платформами, вышла из-под контроля. Приложения не могли быть перенесены даже между UNIX System V, релиз 3 и BSD UNIX. Словно для того, чтобы создать еще больший беспорядок, поставщики аппаратных средств создавали свои собственные расширения BSD и System V.
1993 год
Фирма Sun объявила, что операционная система SunOS 4.1.4 будет ее последним выпуском, основанным на BSD UNIX. Фирма Sun увидела зловещее предзнаменование и перешла на UNIX System V, релиз 4, которую они назвали Solaris. Операционная система UNIX System V, релиз 4 (SVR4) представляла собой объединение System V и BSD UNIX, включающее в себя важные функциональные возможности, заложенные в SunOS.
По мере того как на рынке начало появляться большее количество поставщиков аппаратных средств, таких как фирма Sun, начался быстрый рост количества версий операционной системы UNIX. Хотя эти поставщики аппаратных средств должны были приобрести исходный текст у компании AT&T и переносить (портировать) UNIX на собственную аппаратную платформу, политика AT&T в области лицензирования торговой марки UNIX позволяла практически любому желающему поставщику аппаратных средств оплатить лицензию и приобрести UNIX. Поскольку слово UNIX представляло собой торговую марку, поставщики аппаратных средств должны были давать своим операционным системам уникальные названия. Далее перечислено несколько наиболее популярных версий операционной системы UNIX, которые выжили за эти годы:
ф SCO UNIX. Операционные системы SCO Open Desktop и SCO Open Server, созданные компанией SCO (Santa Cruz Operation) для аппаратной платформы Intel. Базируются на System V UNIX.
Ф SunOS. Ранняя операционная система фирмы Sun и лучшая среди известных версий BSD UNIX.
ф Solaris. Реализация SVR4 UNIX от фирмы Sun, которая также известна под названием SunOS 5.x.
ф HP-UX. Версия UNIX, созданная компанией Hewlett-Packard. Операционная система HP-UX 9.x представляла собой версию UNIX System V, релиз 3, a HP-UX 11 i базируется на System V, релиз 4.
ф Digital UNIX. Версия OSF/1 UNIX, созданная компанией Digital Equipment.
ф IRIX. Версия UNIX, созданная компанией Silicon Graphics. Ранние версии этой операционной системы базировались на BSD UNIX; версия 6 представляла собой UNIX System V, релиз 4.
ф AIX. Версия UNIX, созданная компанией IBM на основе System V UNIX.
ф Linux. Свободно распространяемая операционная система UNIX для аппаратной платформы INTEL; она быстро завоевала признание в сообществе UNIX. Версии Linux в настоящее время доступны на вычислительных системах производства Sun, HP и IBM.
На фоне безудержного роста количества версий UNIX главной проблемой стали стандарты. В 1993 году фирма Sun объявила, что перешла на System V, для того, чтобы внедрить стандарты в сообществе UNIX. При наличии двух основных разновидностей операционной системы UNIX стандарты не могли стать реальностью. Однако без стандартов операционная система UNIX не могла бы всерьез рассматриваться в качестве основы для коммерческих систем. Таким образом, фирма Sun разрабатывала BSD UNIX, но одновременно обеспечивала своих пользователей операционной системой UNIX System V, релиз 4, лицензированной непосредственно от компании AT&T. Кроме того, любые приложения, разработанные фирмой Sun для добавления к операционной системе UNIX, должны были быть 8УК4-совместимыми. Фирма Sun бросила вызов конкурентам, чтобы обеспечить сообществу пользователей истинную переносимость программного обеспечения.
GUI (Graphical User Interface - графический интерфейс пользователя) стал следующей волной в развитии операционной системы UNIX. Поскольку каждый поставщик аппаратных средств стремился превзойти других, то проблемой стала простота использования операционной системы. Как и ранее, а в этой области особенно, были важны стандарты. Приложениям, которые должны были быть переносимыми, требовался стандартный
графический интерфейс пользователя. Поэтому Sun и AT&T начали продвигать стандарт OPEN LOOK, который был результатом их совместной работы. Их цель состояла в том, чтобы создать целостный внешний вид и непротиворечивое ощущение для всех разновидностей UNIX; к сожалению, консорциум OSF имел свой собственный графический интерфейс пользователя под названием OSF/MOTIF. Таким образом, второй раунд борьбы за стандарты начался с победы стандарта MOTIF над стандартом OPEN LOOK.
Стандарт MOTIF был основан на графическом интерфейсе пользователя, разработанном в Массачусетском технологическом институте под названием X Window System, и позволял пользователю, сидящему перед одной машиной, выполнять программы на дистанционной машине и при этом сохранять локальное взаимодействие с программой. Интерфейс X Window фактически представлял собой единый способ организации взаимодействия различных систем друг с другом. Интерфейс X Window позволял программе, выполняемой на одном компьютере, отображать свою выходную информацию на другом компьютере даже в том случае, когда этот другой компьютер имел отличающиеся операционную систему и аппаратную архитектуру. Программа отображала свою выходную информацию на локальной машине и принимала входную информацию от клавиатуры и мыши локальной машины, но при этом она выполнялась на центральном процессоре дистанционной машины.
Локальная машина обычно представляла собой рабочую станцию или терминал, называемый выделенным X терминалом, и была спроектирована специально для того, чтобы выполнять X Window System. Дистанционная машина могла представлять собой миникомпьютер или сервер, мэйнфрейм или даже суперкомпьютер. В некоторых случаях локальная и дистанционная машины могли, фактически, представлять .собой одну и ту же систему. Короче говоря, интерфейс X Window - это распределенная, интеллектуальная, аппаратно-независимая и независимая от операционной системы оконная система.
Как уже отмечалось ранее, стандарт интерфейса MOTIF одержал верх над стандартом OPEN LOOK. И CDE (Common Desktop Environment - общая настольная среда), предложенная фирмой Sun и задуманная в качестве пакета программного обеспечения, который содержал бы как OPEN LOOK, так и MOTIF, поставляется в качестве стандартного компонента, начиная с Solaris 2.5.1.
2001 год ■
К этому времени многие поставщики аппаратных средств зарыли топор войны и ради своих пользователей дорабатывают собственные реализации UNIX, чтобы обеспечить их совместимость с SVR4. Версия SVR4, очевидно, будет доминирующей разновидностью операционной системы UNIX среди основных платформ. Поскольку все поставщики начинают реализовывать SVR4 UNIX совместно с CDE или интерфейсом GNOME, пользователи скоро увидят все более непротиворечивые реализации UNIX. Кроме того, поставщики программного обеспечения могут быть уверены в том, что приложения, написанные с обеспечением 8УК4-совместимости, будут действительно переносимы между основными аппаратными платформами.
2002 год
Операционная среда Solaris 9, появившаяся в 2002 году, основана на применении web- технологии. Среди ее ключевых особенностей и расширений хотелось бы выделить следующие:■
Ф Solaris 9 Resource Manager - менеджер, позволяющий размещать, отслеживать и управлять системными ресурсами, в состав которого входит FSS (fair share scheduler - планировщик распределения разделяемых ресурсов по правилам) и динамически распределяемые области для разбивки системных ресурсов.
ф Расширенные технологии централизованного сетевого администрирования.
ф Улучшенный вывод системной информации.■
Ф MPSS (Multiple Page Size Support - поддержка нескольких размеров страниц памяти), позволяющая любой программе использовать любой поддерживаемый аппаратными средствами размер страницы, чтобы получать доступные порции виртуальной памяти.
Ф Совместимость с Linux. Многие приложения Linux могут виртуально выполняться в Solaris без каких-либо изменений. А разработчикам прикладного программного обеспечения сейчас куда легче разрабатывать и компилировать свои Linux-приложения в операционной среде Solaris.
Ф В составе операционной системы Solaris 9 появился рабочий стол с интерфейсом GNOME. Этот новый рабочий стол заменит, в конечном счете, CDE и будет намного лучше с точки зрения удобства и простоты использования, внешнего вида и функциональных возможностей. Основные поставщики операционной системы UNIX постепенно переходят на интерфейс GNOME.
Операционная система Linux все еще будет основным игроком на рынке. Теперь, когда большинство основных поставщиков операционной системы UNIX, включая Sun, HP и IBM, объединились вокруг Linux, эта система не уйдет.
Ф Средства повышенной безопасности системы, а именно:
IKE (Internet Key Exchange - протокол обмена в Internet по ключу), позволяющий администраторам управлять большим числом защищенных сетей.
Solaris Secure Shell - оболочка безопасного соединения, позволяющая обезопасить доступ пользователя к дистанционному хосту через незащищенную сеть.
Secure LDAP Client - новая библиотека протокола LDAP, предоставляющая механизмы шифрования SSL и CRAM-MD5.
Strong Encryption - принятое по умолчанию усиленное ш ифрование с помощью шифров максимального размера 128 бит.
Ф Solaris Volume manager - менеджер томов, предоставляющий инструментальные средства управления хранилищами информации и позволяющий создавать и управлять томами RAID О, RAID 1 и RAIDS так же, как и сеансовыми устройствами, и "мягкими" (программными) разделами диска.
Ф Новые возможности файловых систем, такие как расширенные атрибуты файлов и усовершенствования прямого ввода/вывода.
ф Новые возможности рабочего стола, а именно:
Поддержка наборов многобайтовых символов (UTF-8 и др.) в эмуляторе терминала Xterm.
Возможность печатать в CDE текстовые файлы не формата ISO-1; это же справедливо для печати почтовых сообщений dtmail.
Новые аудиовозможности. В Solaris 9 добавлены новые каталоги: /usr/ include/audio с заголовочными файлами для аудиоприложений, /usr/share/ audio - новое хранилище разнообразных аудиофайлов.
Свободно распространяемое программное обеспечение рабочего стола: GNU grep 2.4.2, GNU tar 1.13, GNU wget 1.6, Ncftp Client 3.0.3.
ф Включение в систему усовершенствованной и скоростной многопоточной библиотеки.
ф На дистрибутивные диски CD и DVD операционной системы Solaris 9 включена поддержка 162 локальных сред, охватывающих 39 языков.
ф Новые команды pargs и ргеар, первая из которых позволяет отобразить все переданные процессу аргументы, а вторая - убрать зомби-процессы.
ф Каталог ExtraValue, содержащий два подкаталога CoBundled и EarlyAccess, первый из которых содержит пакеты SunScreen 3.2 (брандмауэр, фильтрующий пакеты, для вашего сервера Solaris) и Web Start Wizards SDK 3.0.1, ранее поставляемые отдельно. Второй содержит предварительно оценённое программное обеспечение, такое как Netscape 6.2.1.
ф Следующие пакеты свободно распространяемого программного обеспечения были обновлены для включения в Solaris 9:
Apache 1.3.20
bash 2.05
bzip2 1.0.1
gzip 1.3
less 358■
mkisofs 1.13'
tcsh 6.0.10
zip 2.3
. zsh 3.0.8
Операционная система Solaris
Никакая другая разновидность операционной системы UNIX не является более популярной и не имеет большего числа пользователей и культурного наследия, чем операционная система Solaris фирмы Sun Microsystems. Начиная с момента своего основания в 1982 году, фирма Sun Microsystems сосредоточилась на UNIX и, кажется, не имеет никакого намерения уходить далеко от операционной системы UNIX. Пользователи фирмы Sun обладают высоким уровнем лояльности к компании, также как и к ее операционной системе. Самая распространенная сегодня версия фирмы Sun - это операционная система Solaris 8, основанная на System V, релиз 4. Операционная система Solaris доступна для архитектуры SPARC, собственного процессора фирмы Sun, и для платформы Intel.
Новинка фирмы Sun Microsystems - операционная система Solaris 9, появившаяся в середине 2002 года.
Этапы развития Solaris
1965'
Bell Laboratories объединяется с Массачусетским технологическим институтом и корпорацией General Electric для разработки операционной системы Multics.
1970
Кен Томпсон и Деннис Ритчи разрабатывают операционную систему UNIX.
1971
Версия операционной UNIX, написанная на языке программирования В (ассемблер), работает на PDP-11.
1973
Операционная система UNIX переписывается на языке программирования С.
1974
Томпсон и Ритчи публикуют статью и вызывают энтузиазм в академическом сообществе. Университет Беркли начинает программу BSD.
1975
Выпущена первая лицензионная версия BSD UNIX.
1979
Билл Джой представляет "Расширения Университета Беркли" как операционную систему BSD 4.1.
1982.
Компания AT&T начинает продажи операционной системы UNIX. Основана компания Sun Microsystems.
1983
Компания Sun Microsystems представляет операционную систему SunOS.
1984
ПО всему миру существует примерно 100000 сайтов UNIX.
1988
Компании AT&T и Sun начинают работу над созданием SVR4, унифицированной версии операционной системы UNIX.
1988
Создаются консорциумы OSF и UI.
1989
AT&T выпускает System V, релиз 4.
1990
Консорциум OSF выпускает 0SF/1.
1992
Фирма Sun представляет операционную систему Solaris, основанную на System V, релиз 4. Операционная система SunOS, основанная на BSD UNIX, будет сниматься с производства.
1993
Компания Novell приобретает операционную систему UNIX у компании AT&T.
1994
Доступна Solaris 2.4.
Приложение С. История Solaris 841
1995 ■
Компания Santa Cruz Operation приобретает операционную систему UnixWare у компании Novell. Компании SCO and HP объявляют о сотрудничестве в области разработки 64-разрядной версии операционной системы UNIX. Доступна Solaris 2.5.
1997
Доступна Solaris 2.6.
1998
Доступна Solaris 7.
2000
Доступна Solaris 8.
2001
Операционная система Solaris 9 находится на этапе бета-тестирования Q3.
2002
Доступна Solaris 9.
Приложение О
Обзор процесса сертификации
Путь к сертификации
Фирма Sun предоставляет целый ряд различных типов и уровней профессиональной сертификации для Java-разработчиков и администраторов Solaris. Сертификации, которые непосредственно связаны с содержанием этого Руководства по обучению, относятся к операционной системе Solaris 8: это сертификация системного администратора фирмы Sun (Sun Certified System Administrator) и сертификация сетевого администратора фирмы Sun (Sun Certified Network Administrator).
Получение сертификатов по операционной систе ме Solaris 8
Отраслевые сертификаты фирмы Sun предназначены удостоверять уровень компетентности тех, кто хорошо осведомлен в областях системного и сетевого администрирования операционной системы Solaris 8. Каждый из этих сертификатов и требования для их получения обсуждаются в двух следующих разделах.
Сертификат системного администратора по операционной системе Solaris 8 от фирмы Sun
Фирма Sun, подобно многим другим поставщикам программных продуктов, которые проводят программы сертификации, откликнулась на потребности отрасли в наличии стандартных удостоверений, отражающих уровень квалификации при работе с операционной системой Solaris. Выданный фирмой Sun сертификат системного администратора (Sun Certified System Administrator) предназначен отражать демонстрируемый уровень знаний и навыков при работе с операционной системой по многим направлениям, включая печать, безопасность, управление дисками, выполнение резервного копирования и восстановления данных.
Для успешного получения сертификата системного администратора операционной системы Solaris 8, выдаваемого фирмой Sun, кандидат должен преодолеть два испытания. Эти два экзамена, 310-011 и 310-012, в настоящей книге называются часть I и часть И. Часть I представляет собой, в сущности, предварительное условие для части II; вы должны пройти экзамен 310-011, прежде чем пытаться сдать экзамен 310-012. На первой части экзамена требовалось (на момент написания книги) преодолеть 66 % из предлагаемых 57 вопросов, то есть, дать 38 правильных ответов. Вам будут предложены вопросы с альтер-
нативным выбором ответа, со свободным ответом и типа "drag-and-drop" ("перетащить и отпустить"). Для сдачи данного экзамена вам выделяется 90 минут. На второй части экзамена требуется, чтобы вы прошли первую часть, а затем преодолели 70% из предлагаемых 61 вопроса, то есть, дали 43 правильных ответа. Этот экзамен также основан на вопросах с альтернативным выбором ответа, со свободным ответом и типа "drag-and-drop". Как и на первой части экзамена, для сдачи его второй части вам предоставляется 90 минут.
Фирма Sun предложила, чтобы на экзамене по операционной системе Solaris 8 могли бы появляться вопросы типа сценариев. Вопросы-сценарии-это просто вопросы с альтернативным выбором ответа, имеющие более длинные "ветви" и представляющие вам какую-нибудь ситуацию из области информационных технологий. Вас обычно спрашивают, какое действие вы бы предприняли в приведенной ситуации для того, чтобы разрешить проблему или добиться желаемого состояния. Вопросы-сценарии чаще используются при попытке оценить у испытуемого аналитические способности и навыки разрешения проблемы, нежели просто выбор фактической информации. В основу оценки этих вопросов ставится drag-and-drop умение применять навыки в реальной жизни, а не просто "книжные" знания.
Сертификат сетевого администратора по операционной системе
Solaris 8 от фирмы Sun
Выдавая сертификат сетевого администратора, фирма Sun вновь откликнулась на потребность индустрии в наличии стандартных удостоверений. В данном случае этот сертификат обозначает более высокий уровень квалификации в работе с операционной системой Solaris 8. Это сертификат, как предполагается, отражает реально демонстрируемый высокий уровень квалификации, которая охватывает навыки системного администратора и способность реализовывать более сложные локальные сети в среде клиент-сервер, включая протокол TCP/IP и связанные с ним протоколы.
Чтобы получить от фирмы Sun удостоверение сертифицированного сетевого администратора операционной системы Solaris 8, вы должны сначала получить сертификат системного администратора операционной среды Solaris 2.5, 2.6,7 или 8. После этого вы должны пройти экзамен на получение сертификата сетевого администратора фирмы Sun (экзамен 310-043). Этот экзамен требует, чтобы вы преодолели 67% из предлагаемых 58 вопросов (норма на момент издания данной книги), то есть, дали 39 правильных ответов. Вам дается 120 минут для сдачи этого экзамена. Форматы вопросов аналогичны тем, которые используются для экзаменов системного администратора: вопросы с альтернативным выбором ответа, с заполнением поля для ответа, типа" drag-and-drop " и вопросы-сценарии.
Как планировать экзамены
Чтобы спланировать какой-нибудь экзамен, позвоните в компанию Prometric по телефону 1-800-795-ЕХАМ или посетите ее Web-сайт по адресу www.2test.com. Фирма Sun рекомендует, чтобы стоимость сдачи экзамена была равна 150 долларам, однако она может отличаться в разных странах. Вы можете ознакомиться с результатами сдачи экзамена на сайте по адресу http://www.galton.com/~sun/. Результаты тестирования поступают на этот сайт спустя четыре рабочих дня после сдачи экзамена. Мы уверены, что после проработки материала, приведенного в настоящем Руководстве по обучению, вам не придется сдавать экзамен повторно. Однако, если такая потребность все-таки возникнет, то следует знать, что политика фирмы Sun требует, чтобы вы выждали, как минимум, две недели перед повторной сдачей экзамена.
Приложение X_j
Содержимое прилагаемого диска CD-ROM
Настоящее приложение представляет собой краткое описание того, что вы сможете найти на компакт-диске, сопутствующем настоящей книге. За более подробной информацией по инструменту тестирования ExamGear обратитесь к приложению F.
ExamGear
Программа ExamGear - инструмент тестирования, разработанный специально для издательства New Riders Publishing. По мнению издательства - это лучший из доступных инструментов тестирования, поскольку ои наиболее адекватно имитирует вид и ощущение тестирования, проводимого фирмой Prometric, и экзаменов по операционной системе Solaris 8. Прилагаемый компакт-диск содержит 181 вопрос и отражает содержание экзаменационных тем и стиль вопросов, задаваемых на реальном экзамене. Каждый раз, когда вы запускаете инструмент тестирования ExamGear, он случайным образом выбирает набор вопросов из соответствующей базы данных, так что вы никогда не получите один и тот же экзамен дважды.
Помимо оценки знаний экзаменационного материала инструмент ExamGear демонстрирует несколько новшеств, помогающих повысить ваше мастерство в данной предметной области.
Практические тесты позволяют проверить ваши результаты по всему экзамену или по отдельным категориям, чтобы определить, какие темы требуют более детального изучения. Другие режимы подготовки к тестированию предполагают непосредственную обратную связь с вами и объяснения правильных ответов. Для получения более подробного описания преимуществ ExamGear обратитесь к приложению F.
Эксклюзивная электронная версия текста настоящей книги
Прилагаемый диск CD-ROM содержит также электронную версию этой книги в формате PDF (Portable Document Format - формат переносимого, или межплатформенного, документа). Вы может'е использовать эту электронную версию для нахождения терминов, необходимых вам для обучения, или других элементов книги. Электронная версия поставляется в полном соответствии с печатной версией и со всеми рисунками, которые встречаются в книге.
Информация об авторских правах и дискламация
Инструмент тестирования ExamGear издательства New Riders Publishing: авторское право с 2001 года, Издательство New Riders Publishing. Все права защищены. Произведено в Соединенных Штатах Америки.
28 2-,0°
Приложение Л
Использование ExamGear- программного руководства по обучению
Настоящее Руководство по обучению включает в свой состав специальную версию ExamGear-современного инструмента тестирования, предназначенного предоставить вам наилучшие возможности для подготовки к экзамену на получение сертификата. Инструмент тестирования ExamGear (Training Guide Edition - издание руководства по обучению) предлагает примеры и практические экзамены для проведения многих технических сертификаций, которые сегодня пользуются наибольшим спросом. Настоящий специальный выпуск программного обеспечения поставляется с данной книгой, чтобы оценить ваши знания по материалам Руководства по обучению и одновременно предоставить возможность получения опыта сдачи электронного экзамена. Экзаменационные вопросы сфокусированы на материале, представленном в настоящем Руководстве по обучению.
В настоящем приложении подробно описывается, что представляет собой ExamGear, как работает и что может сделать для того, чтобы помочь вам подготовиться к сдаче экзамена.
Имитация экзамена
Одна из основных функций ExamGear, Training Guide Edition - имитация экзамена. Чтобы подготовить вас к реальному экзамену на получение сертификата от поставщика, Training Guide Edition спроектировано таким образом, чтобы предоставить наиболее эффективную из доступных имитаций экзамена.
Качество вопросов
Вопросы, представленные в ExamGear, Training Guide Edition, составлены в соответствии с высокими стандартами технической точности. Эти вопросы выявляют содержание глав Руководства по обучению и помогут вам оценить свои знания до фактической сдачи экзамена.
Дизайн интерфейса
ExamGear, Training Guide Edition поможет вам приобрести опыт сдачи электронного экзамена и возможность эффективно подготовиться к сдаче реального экзамена, так как тестирование очень его напоминает. Такая имитация экзамена поможет устранить эффекты неожиданности или беспокойства, которые вы могли бы испытать в центре тестирования, поскольку вы уже будете знакомы с компьютерным тестированием.
Использование ExamGear - программного руководства по обучению М/ Приложение F.
Инструментальные средства обучения
Собственно ExamGear предлагает вам несколько инструментальных средств обучения, призванных помочь при подготовке к реальному экзамену.
Эффективная среда обучения
ExamGear, Training Guide Edition предоставляет среду обучения, которая не только проверяет ваши знания с помощью компьютера, но также и преподает материал, который вы должны знать для успешной сдачи сертификационного экзамен. На каждый вопрос вместе с правильным ответом дается подробное объяснение и того, почему другие варианты ответа были бы неправильными. Эта информация помогает закрепить имеющиеся знания и также предоставляет практическую информацию, которую вы сможете использовать в реальной работе.
Автоматическое отслеживание прогресса обучения
ExamGear, Training Guide Edition автоматически отслеживает весь ход работы над вопросами тестирования. Из таблицы Item Review (она более подробно обсуждается далее в настоящем приложении) вы сразу сможете увидеть, какого результата добились по темам, главе или по отдельным вопросам, как показано на рисунке F.I. Вы также можете сконфигурировать инструмент тестирования ExamGear таким образом, чтобы потренироваться в приобретении навыков, которые больше всего пригодятся вам в практической деятельности.
ChepteiNamePercentage J Attempted Itorredt^ ^^KftSSVL \.IChapter 1 - Installation Confrgufatian and Upgi-adrigi21.2811/43/iGChapter 2-Diagnosing and Troubleshooting17.7890180Chapter 3 - Preventive Maintenance23.9146110Chapter 4-System Boards14.045Z8q**mChapter 5 • Printers14.29S390 >|„Overall ^Chaplet | „ /, . -. ,.’y—s—„—»-^»-#*---^2-*4**---‘-i"'—i—-Ь^^-^Дч^Д^и--«^ChepteiNamePercentage J Attempted Itorredt^ ^^KftSSVL \.IChapter 1 - Installation Confrgufatian and Upgi-adrigi21.2811/43/iGChapter 2-Diagnosing and Troubleshooting17.7890180Chapter 3 - Preventive Maintenance23.9146110Chapter 4-System Boards14.045Z8q**mChapter 5 • Printers14.29S390 >|„Overall ^Chaplet | „ /, . -. ,.’y—s—„—»-^»-#*---^2-*4**---‘-i"'—i—-Ь^^-^Дч^Д^и--«^"5"5| fiueslions t^^^*S£®5j|| fiueslions t^^^*S£®5j|,| Your Percentage 19 |,| Your Percentage 19 |I Required Percentage 70 L' «iiiiiqiyil^Wimumniaiqpwiwyemaqy^roI Required Percentage 70 L' «iiiiiqiyil^Wimumniaiqpwiwyemaqy^ro
ChepteiNamePercentage J Attempted Itorredt^ ^^KftSSVL \.
IChapter 1 - Installation Confrgufatian and Upgi-adrigi21.2811/43/iG
Chapter 2-Diagnosing and Troubleshooting17.7890180
Chapter 3 - Preventive Maintenance23.9146110
Chapter 4-System Boards14.045Z8q**m
Chapter 5 • Printers14.29S390 >|
„Overall ^Chaplet | „ /, . -. ,.
’y—s—„—»-^»-#*---^2-*4**---‘-i"'—i—-Ь^^-^Дч^Д^и--«^
ChepteiNamePercentage J Attempted Itorredt^ ^^KftSSVL \.
IChapter 1 - Installation Confrgufatian and Upgi-adrigi21.2811/43/iG
Chapter 2-Diagnosing and Troubleshooting17.7890180
Chapter 3 - Preventive Maintenance23.9146110
Chapter 4-System Boards14.045Z8q**m
Chapter 5 • Printers14.29S390 >|
„Overall ^Chaplet | „ /, . -. ,.
’y—s—„—»-^»-#*---^2-*4**---‘-i"'—i—-Ь^^-^Дч^Д^и--«^
"5
"5
| fiueslions t^^^*S£®5j|
| fiueslions t^^^*S£®5j|
,| Your Percentage 19 |
,| Your Percentage 19 |
I Required Percentage 70 L' «iiiiiqiyil^Wimumniaiqpwiwyemaqy^ro
I Required Percentage 70 L' «iiiiiqiyil^Wimumniaiqpwiwyemaqy^ro
А расА рас
А рас
А рас
О 102030 Qverd By Chapter |
.; I Chapter 6 - Basic Networking 27.273 К «^Chapter5-Printers 14Д8ё|‘"''~’■;
J Chapter 4 - System Boards 14 03s|> , - 1t
I 3 • Preventive Maintenance 23 91 з! tly, , Chapter 2 - Diagnosing and Troubleshodlng 17,778 |Л#:
1 Chanter 1 - installation. Configuration and Upgrading 21.264 I '
Рисунок F.1. Item Review (обзор пунктов).
Как работает ExamGear
ExamGear включает в себя два основных элемента: интерфейс и базу данных. Интерфейс представляет собой ту часть программы, которую вы используете для обучения и выполнения практических тестов. База данных сохраняет всю информацию о вопросах и ответах на них.
Интерфейс
ExamGear, Training Guide Edition отличается простотой применения, предоставляя вам наиболее эффективные из доступных методов обучения. Этот интерфейс позволяет вам сделать выбор между перечисленными режимами работы:
Ф Study Mode (режим обучения). В этом режиме вы можете выбирать количество вопросов, на которые хотите ответить, и время, которое отводите на тестирование. Можно выбирать вопросы по всем или только по определенным главам настоящей книги, что дает возможность закрепить ваши знания в определенной предметной области или углубить их в областях, имеющих отношение к определенной теме. В течение экзамена вы можете отображать правильный ответ на каждый вопрос вместе с объяснением, почему именно этот ответ является правильным.
Ф Practice Exam (режим практического экзамена). В этом режиме вы сдаете экзамен, разработанный таким образом, чтобы смоделировать реальный сертификационный экзамен. Вопросы выбираются из всех групп тем, выносимых на тестирование. Количество отобранных вопросов и отведенное время в точности соответствуют аналогичным параметрам реального экзамена на получение сертификата.
База данных
База данных ExamGear, Training Guide Edition хранит приблизительно 180 вопросов и ответов на них. Вопросы организованы по главам. Вы можете также приобрести дополнительные вопросы (600 на момент выхода книги в свет) на сайте по адресу UnixEd.com.
Инсталляция и регистрация ExamGear, Training Guide Edition
Настоящий раздел содержит указания по инсталляции ExamGear, Training Guide Edition и описывает процесс и преимущества регистрации вашего программного продукта Training Guide Edition.
Требования
ExamGear требует наличия компьютера со следующими основными параметрами:
Ф Microsoft Windows 95, Windows 98, WindowsNT4.0, Windows 2000 или Windows ME.
Рекомендуется процессор Pentium или более поздний.■
Использование ExamGear - программного руководства по обучению 84У Приложение F.
Ф 20-30 Мбайт свободного дискового пространства.
Ф Не менее 32 Мбайт оперативной памяти.
Как и для любого приложения Windows, увеличение размера оперативной памяти обеспечивает повышение производительности.
Ф Подключение к сети Internet.
Подключение к сети Internet не является необходимым для работы рассматриваемого программного обеспечения, однако оно требуется для диалоговой регистрации и загрузки обновлений программного продукта.
Ф Web-браузер.
Web-браузер не является необходимым для работы рассматриваемого программного обеспечения, однако он вызывается из опции Online меню web-сайтов.
Инсталляция ExamGear
Инсталлируйте ExamGear посредством запуска программы установки с компакт-диска ExamGear, Training Guide Edition. Далее приведены инструкции по инсталляции на вашем компьютере:.
Вставьте компакт-диск в ваш привод CD-ROM. Функция AutoRun операционной системы Windows вызывает программное обеспечение. Если на вашем компьютере функция AutoRun отключена, щелкните Пуск (Start) и выберите Выполнить... (Run...). Перейдите в корневой каталог на данном компакт-диске и выберите файл START.EXE. Щелкните Открыть (Open), а затем щелкните кнопку ОК.
Щелкните кнопку в кружке. Появляется экран приветствия. Отсюда вы можете инсталлировать ExamGear. Щелкните кнопку ExamGear, чтобы начать инсталляцию.
На экране появляется окно Installation Wizard, в котором вам предлагаются инструкции по инсталляции. Выберите каталог, в который вы хотите инсталлировать ExamGear, Training Guide Edition.
Мастер Installation Wizard копирует файлы ExamGear на ваш жесткий диск, добавляет пиктограмму этого продукта в меню Программы (Program menu) вашего главного меню, добавляет необходимые параметры в системный реестр и инсталлирует динамически подключаемые библиотеки (файлы *.dll) в соответствующие системные папки. Чтобы убедиться в том, что процесс инсталляции завершился успешно, работа программы установки завершается запуском ExamGear, Training Guide Edition.
Мастер Installation Wizard протоколирует процесс инсталляции и сохраняет соответствующую информацию в файле с именем INSTALL.LOG. Этот файл протокола используется для процесса деинсталляции в том случае, если вы решите удалить ExamGear, Training Guide Edition с вашего компьютера. Поскольку инсталляция ExamGear добавляет на ваш компьютер ключи реестра и динамически подключаемые библиотеки, важно деинсталлировать эту программу соответствующим образом (подробная информация по этому вопросу представлена в разделе, озаглавленном "Удаление ExamGear, Training Guide Edition с вашего компьютера").
Преимущества регистрации
Регистрация позволит издательству New Riders информировать вас об обновлениях и появлении новых выпусков рассматриваемого программного продукта.
Удаление ExamGear, Training Guide Edition с вашего компьютера
В случае, если вы решите удалить ExamGear, Training Guide Edition с вашего компьютера, можно воспользоваться процессом деинсталляции, чтобы быть уверенным, что данное программное обеспечение убирается безопасно для системы и в полном объеме. Далее приведены инструкции по деинсталляции ExamGear:
Щелкните кнопку Пуск (Start) и выберите команду Настройка (Settings), а затем Панель управления (Control Panel).
Выполните двойной щелчок на пиктограмме Установка и удаление ... (Add/ Remove).
Вам будет представлен перечень программного обеспечения, инсталлированного на вашем компьютере. Выберите в этом списке строку Solaris 8 Training Guide - System Administrator и щелкните кнопку Добавить/Удалить (Add/ Remove). После этого программное обеспечение ExamGear, Training Guide Edition удаляется с вашего компьютера.
Важно, чтобы в каталоге, в котором вы инсталлировали программное обеспечение ExamGear, Training Guide Edition, присутствовал файл INSTALL.LOG, который потребуется вам в том случае, если вы когда-либо решите деинсталлировать данный программный продукт. Не удаляйте этот файл. В процессе деинсталляции файл INSTALL.LOG используется для безопасного удаления файлов и параметров настройки системного реестра, добавленных на ваш компьютер при инсталляции.
Использование ExamGear, Training Guide Edition
Программное обеспечение ExamGear разрабатывалось таким образом, чтобы быть дружественным по отношению к пользователю и интуитивно понятным. Это не требует от вас детального изучения программного обеспечения только для того, чтобы отвечать на экзаменационные вопросы. Поскольку данное программное обеспечение имеет гладкую кривую обучения, ваше время становится максимально насыщенным именно за счет того, что вы начинаете практиковаться практически сразу.
Общее описание работы программного обеспечения
Программное обеспечение ExamGear имеет два режима работы: Study Mode (режим обучения) и Practice Exam (режим практического экзамена), как это показано на рисунке F.2.
Оба режима работы имеют один и тот же, удобный в применении интерфейс. Используя режим обучения, вы можете совершенствовать ваши знания и возможности по успешной сдаче экзамена с помощью опции Show Answers. Во время прохождения тестирования вы можете просматривать ответы вместе с кратким описанием, почему они являются правильными или неправильными, что дает возможность лучше понять представленный материал.
Использование ExamGear - программного руководства по обучению 851 Приложение F
examGEAR
Рисунок F.2.Начальный экран предлагает два режима тестирования.Рисунок F.2.Начальный экран предлагает два режима тестирования.-.<>■ -йкЬ'Я i l&MOlKiSW-.<>■ -йкЬ'Я i l&MOlKiSWPremium Exam PreparaHon Software
Рисунок F.2.
Начальный экран предлагает два режима тестирования.
Рисунок F.2.
Начальный экран предлагает два режима тестирования.
-.<>■ -йкЬ'Я i l&MOlKiSW
-.<>■ -йкЬ'Я i l&MOlKiSW
Режим практического экзамена имеет, в основном, те же самые опции, что и режим обучения, но здесь вы не можете отобразить ответы. Таким образом, вы оказываетесь в более традиционной среде тестирования.
Опции меню
Интерфейс инструмента ExamGear, Training Guide Edition имеет простое в использовании меню, предоставляющее вам следующие возможности:
МенюКоманда
Описание
FilePrint
Выводит содержимое текущего экрана.
Print Setup
Позволяет вам выбрать принтер.
Exit ExamGear
Обеспечивает выход из программы.
OnlineRegistration
Запускает Registration Wizard и предоставляет вам возможность интерактивной регистрации. Эта опция меню удаляется после того, как вы успешно зарегистрировали данный программный продукт
Check for Product Updates
Открывает Web-сайт ExamGear с доступными обновлениями.
web sites
Открывает Web-браузер с домашними страницами либо издательства New Riders Publishing, либо ExamGear.
HelpContents
Открывает файл помощи инструмента тестирования ExamGear, Training Guide Edition.
About
Отображает информацию о программном продукте ExamGear, Training Guide Edition, включая серийный номер, имя зарегистрированного владельца и так далее.
Меню File
Позволяет вам выйти из данной программы и сконфигурировать опции печати.
Меню Online'
В этом меню вы можете зарегистрировать программный продукт ExamGear, Training Guide Edition, проверить наличие обновлений программного продукта ExamGear (как обновлений самой программы, так и обновлений свободно распространяемых комплектов экзаменационных вопросов). Меню Online доступно всегда за исключением тех случаев, когда вы проходите тестирование.
Опция Registration
Регистрация является бесплатной и дает вам возможность получить доступ к обновлениям. Регистрация - первая задача, которую предлагает вам выполнить программный продукт ExamGear, Training Guide Edition. Вы не сможете получить доступ к свободно распространяемым обновлениям данного программного продукта, если не зарегистрируетесь.
Опция Check для обновлений программного продукта
Эта опция переносит вас на Web-сайт продукта ExamGear, Training Guide Edition, где вы можете обновить данное программное обеспечение. Чтобы воспользоваться этой опцией, вы должны иметь доступ к сети Internet. Web-сайт программного продукта ExamGear содержит список возможностей, которые стали доступными с тех пор, как ваша версия ExamGear была инсталлирована на вашем компьютере.
Опция web sites
Эта опция предоставляет удобную возможность для запуска вашего Web-браузера и соединения либо с домашней страницей издательства New Riders, либо ExamGear.
Меню Help
Как вы уже догадались, это меню предлагает доступ к системе помощи программного продукта ExamGear, которая также предоставляет важную информацию, такую как серийный номер программного продукта ExamGear, Training Guide Edition, версия данного программного обеспечения и т.д.
Запуск сеанса работы в режиме обучения
Study Mode (режим обучения) предоставляет вам возможность контролировать процесс тестирования такими способами, которые не предоставляет реальный сертификационный экзамен:
^ Можете устанавливать ваши собственные лимиты времени.
^ Можете сосредоточиться на избранных предметных областях (главах настоящей книги).
3> Можете вывести на экран ответы или получать оценку за каждый ответ в виде мгновенной обратной связи.
3> Можете ограничить задаваемые вопросы только теми, на которые не смогли ответить, или теми, на которые ответили правильно заданное количество раз.
^ Можете управлять порядком, в котором представляются вопросы, а именно: в произвольном или определяемом предметной областью (главой).
Использование ExamGear — программного руководства по обучению 853 Приложение F.
Чтобы начать тестирование в режиме обучения, щелкните кнопку Study Mode на основном экране интерфейса. Появляется страница конфигурации режима обучения, представленная на рисунке F.3.
Рисунок F.3.
Страница конфигурации режима обучения.
В верхней части экрана конфигурации вы увидите раскрывающийся построчно список Exam. Этот список показывает активизированный экзамен, который вы приобрели вместе с программным продуктом ExamGear, Training Guide Edition. Кроме того, в этом списке отображаются любые другие экзамены, которые вы могли бы загрузить, или любые экзамены предварительного просмотра, поставляемые с вашей версией программного продукта ExamGear. Выберите из списка тот экзамен, в сдаче которого вы хотите попрактиковаться.
Ниже списка Exam вы увидите вопросы, которые доступны для выбранного экзамена. Каждый экзамен имеет, по крайней мере, один набор вопросов. Вы можете выбрать либо индивидуальный набор вопросов, либо любую комбинацию наборов вопросов, если для выбранного экзамена доступно несколько таких наборов.
Ниже списка набора вопросов находится список предметных областей, или глав, на которых вы можете сконцентрироваться. Эти предметные области, или главы, отражают экзаменационные темы, определенные фирмой Sun для данного экзамена. В пределах каждой предметной области вы найдете несколько экзаменационных тем. Вы можете сосредоточиться на единственной предметной области, или главе, или выбрать любую комбинацию доступных областей/глав, чтобы настроить модель экзамена применительно к вашим индивидуальным потребностям.
В дополнение к тем наборам вопросов и предметным областям, на которых вы хотите самостоятельно проверить свои знания, вы также можете определять, какие вопросы следует включать в данное тестирование, основываясь на вашем предыдущем прогрессе при проведении тестирования. Программный продукт ExamGear, Training Guide Edition автоматически отслеживает прогресс в ответах на доступные вопросы. При конфигурировании опций режима обучения вы можете принять решение рассматривать все вопросы, доступные в пределах наборов вопросов и предметных областей, которые вы выбрали, или можете ограничить представляемые вопросы. Выберите одну из следующих опций:
3> Select from АП Available Questions. Эта опция вынуждает ExamGear, Training Guide Edition представлять все доступные вопросы из выбранных наборов вопросов и предметных областей.
■ 3> Exclude Questions I Have Answered Correctly X or More Times. Программный продукт ExamGear предоставляет вам возможность исключать вопросы, на которые вы ранее дали правильные ответы. Вы можете указать, сколько раз вы должны дать правильный ответ на какой-нибудь вопрос, прежде чем ExamGear сочтет, что вы освоили этот вопрос (значение этой опции по умолчанию - два раза).
3> Select Only Questions That I Have Missed X or More Times. Эта опция конфигурирует ExamGear, Training Guide Edition таким образом, чтобы экзаменовать вас только по тем вопросам, на которые вы неоднократно не смогли дать правильный ответ. Вы можете самостоятельно определить, сколько раз вы должны пропустить какой-нибудь вопрос, прежде чем ExamGear сочтет, что вы не справились с этим вопросом (значение этой опции по умолчанию - два раза).
В любое время вы можете сбросить информацию контроля продукта ExamGear, Training Guide Edition, щелкнув кнопку Reset для той функции, показатели которой вы хотите очистить.
В верхнем правом углу страницы конфигурации вы можете видеть ваш уровень доступа к наборам вопросов для выбранного вами экзамена. Для уровня доступа существуют два возможных значения: Full (полный доступ) или Preview (доступ в режиме предварительного просмотра). Детальное объяснение каждого из этих уровней доступа представлено в разделе настоящего приложения, озаглавленном "Получение обновлений".
Под значением вашего уровня доступа вы можете увидеть результат, требуемый для прохождения выбранного экзамена. Ниже значения требуемого результата вы можете выбрать, будет ли данное тестирование проводиться с контролем времени, а также, сколько времени будет отведено для завершения ответов на все вопросы данного экзамена. Чтобы установить время для завершения экзамена, выберите кнопку контроля Stop Test After 90 Minutes. Введите количество минут, которое вы хотите отвести на проведение данного тестирования. Значение этой опции по умолчанию - 90 минут. Отменив выбор этой кнопки контроля, вы сможете проходить экзамен без ограничения времени.
Вы также можете сконфигурировать количество вопросов, включаемых в данный экзамен. Заданное по умолчанию количество вопросов изменяется в зависимости от того, какой конкретно экзамен вы выбрали. Введите то количество вопросов, которое вы хотите включить в данный экзамен, в опции Select No More Than X Questions.
Вы можете сконфигурировать порядок, в котором программный продукт ExamGear, Training Guide Edition представляет вопросы данного экзамена. Выберите одну из следующих опций:
3> Display Questions in Random Order. Эта опция принята по умолчанию. Если она выбрана, то ExamGear, Training Guide Edition представляет вопросы данного экзамена в произвольном порядке.
3> Order by Skill Area. Эта опция вынуждает программный продукт ExamGear, Training Guide Edition представлять вопросы данного экзамена по предметным областям. Все вопросы по каждой выбранной предметной области представляются последовательно. Тестирование проводится от одной выбранной предметной области к следующей до тех пор, пока не будут представлены все вопросы от каждой выбранной области.
Использование ExamGear - программного руководства по обучению оЭэ Приложение F
Программный продукт ExamGear предлагает вам две опции для определения результата сдачи экзаменов. Выберите одну из следующих опций:
3> Grade at the End of the Test. Эта опция конфигурирует программный продукт ExamGear, Training Guide Edition для подведения итогов вашего тестирования после того, как вам будут представлены все вопросы выбранного вами экзамена. Вы можете просмотреть на экране правильные ответы на какой-нибудь вопрос, но если вы сделаете это, то данный вопрос не засчитывается при подсчете.
3> Grade as I Answer Each Question. Эта опция конфигурирует программный продукт ExamGear, Training Guide Edition для оценки каждого вопроса непосредственно после того, как вы даете на него ответ, предоставляя вам немедленную обратную связь по мере прохождения тестирования. Все вопросы учитываются при подсчете, если только вы не щелкнули кнопку Show Answer до завершения ответа на данный вопрос.
Вы можете возвратиться к главному экрану запуска ExamGear, Training Guide Edition с экрана конфигурирования режима обучения, щелкнув кнопку Main Menu. Если вы нуждаетесь в помощи по вопросам опций конфигурирования экзамена в режиме обучения, щелкните кнопку Help для получения инструкций.
После того как вы закончили конфигурирование всех опций экзамена, щелкните кнопку Start Test, чтобы начать экзамен.
Запуск практического экзамена
Настоящий раздел описывает практический экзамен, определяет опции этого экзамена и опцию режима обучения и предоставляет инструкции для запуска практического экзамена.
Различия между практическим экзаменом и режимом обучения
Экраны вопросов практического экзамена в основном идентичны экранам вопросов режима обучения за исключением того, что кнопки Show Answer, Grade Answer и Item Review являются недоступными, когда вы сдаете практический экзамен. По завершении практического экзамена вам предоставляется экран итогов.
При сдаче практического экзамена экран Item Review является недоступным до тех пор, пока вы не ответите на все вопросы. Это соответствует технологии проведения современных сертификационных экзаменов большинства поставщиков. В режиме обучения экран Item Review доступен в любое время.
Когда время, отведенное для сдачи экзамена, истекает или когда вы щелкаете кнопку End Exam, появляется экран Examination Score Report.
Начало экзамена
Чтобы начать практический экзамен, щелкните кнопку Practice Exam на экране главного меню программного продукта ExamGear, Training Guide Edition.
Типы вопросов и как на них отвечать
Поскольку экзамены на получение сертификата различаются у большинства поставщиков, на любом конкретном экзамене вы столкнетесь со многими типами вопросов. ExamGear, Training Guide Edition представляет вам различные типы вопросов, чтобы ознакомить с раз-
личными способами, которыми будут проверяться ваши знания на реальном экзамене. В настоящем разделе описывается каждый из типов вопросов, представляемых ExamGear, и прилагаются инструкции для ответа на них.
Множественный выбор
Большинство вопросов, с которыми вы столкнетесь на сертификационном экзамене, относятся к типу множественного выбора (стандартный вопрос данного типа представлен на рисунке F.4). Этот тип вопроса предполагает, что вы выберете правильный ответ из предоставленного вам списка возможных вариантов ответа. Иногда вы должны выбрать только один ответ из приведенных ответов, которым предшествуют переключатели (круглые кнопки выбора). В других случаях на конкретный вопрос существует несколько правильных ответов, обозначенных кнопками-флажками (кнопки контроля), которые предшествуют возможным комбинациям ответов.
Рисунок F.4.
Типовой вопрос множественного выбора.
Чтобы выбрать некоторый ответ, вы можете воспользоваться тремя следующими методами:
^ Щелкните кнопку выбора или кнопку-флажок, находящуюся рядом с текстом ответа. Если на данный вопрос существует несколько правильных ответов, то ответам будут предшествовать кнопки-флажки. Если на данный вопрос возможен только один правильный ответ, то каждому ответу будет предшествовать круглая кнопка выбора. ExamGear, Training Guide Edition предоставляет вам несколько ответов, из которых вы должны сделать свой выбор.
Ф Щелкните текст выбранного вами ответа.
ф Нажмите на клавиатуре клавишу с буквой, которая соответствует выбранному вами ответу.
Вы можете воспользоваться любым из трех следующих методов, чтобы очистить кнопку выбора:
ф Щелкните другую кнопку.
Ф Щелкните текст другого ответа.
Использование ExamGear - программного руководства по обучению 63/ Приложение Е
^ Нажмите на клавиатуре клавишу с буквой, которая соответствует другому ответу.
Вы можете воспользоваться любым из трех следующих методов, чтобы очистить кнопку-флажок:
3> Щелкните кнопку-флажок за выбранным вами ответом.
Ф Щелкните текст выбранного вами ответа.
Ф Нажмите на клавиатуре клавишу с буквой, которая соответствует выбранному вами ответу.
Чтобы очистить все варианты ответов, щелкните кнопку Reset.
Помните, что некоторые из вопросов имеют несколько правильных ответов. Не позволяйте этому обстоятельству сбить вас с толку. Вопросы, которые имеют несколько правильных ответов, не имеют при этом какого-нибудь одного ответа, более правильного, чем другие. В формате с единственно правильным ответом только один ответ является правильным. ExamGear, Training Guide Edition для каждого вопроса предоставляет вам свое количество ответов, из которых вы должны выбирать.
Стандартные опции программного продукта ExamGear, Training Guide Edition
Независимо от типа вопроса непротиворечивый набор экранных кнопок, доступных для щелчков мышью, дает вам возможность перемещаться и взаимодействовать с вопросами. Приведенный далее перечень описывает функцию каждой из кнопок, которые вы увидите на экране. В зависимости от типа вопроса некоторые из кнопок будут серого цвета и недоступны. Кнопки, которые соответствуют данному типу вопроса, являются активными.
ф Run Simulation. Эта кнопка доступна лишь в том случае, если данный вопрос поддерживает эмуляцию. Эта опция для настоящей книги заблокирована. Щелчок мышью данной кнопки запускает процесс эмуляции.
ф Exhibits. Эта кнопка активна лишь в том случае, если для поддержки данного вопроса прилагаются экспонаты для показа. Такой экспонат представляет собой некоторое графическое изображение, видеофрагмент, звуковой или текстовый файл, предлагая дополнительную информацию, необходимую для ответа на вопрос. Если данный вопрос имеет несколько экспонатов, то на экране появляется диалоговое окно с их списком, упорядоченным по именам. Если существует только один экспонат, то соответствующий файл открывается сразу же после того, как вы щелкнете кнопку Exhibits.
ф Reset. Эта кнопка отменяет любой сделанный вами выбор и возвращает окно вопроса в первоначальное состояние, которое оно имело в момент вывода на экран.
ф Instructions. Эта кнопка отображает инструкции для взаимодействия с текущим типом вопроса.
ф Item Review. Эта кнопка обеспечивает выход из окна данного вопроса и открывает экран Item Review. Более подробные пояснения экрана Item Review представлены далее в разделе "Экран Item Review" настоящего приложения.
ф Show Answer. Эта опция отображает правильный ответ с объяснением того, почему именно этот ответ является правильным. Если вы выбираете эту опцию, то текущий вопрос не будет зачтен при подсчете результата экзамена.
3> Grade Answer. Если при конфигурации выбрана опция Grade at the End of the Test, то эта кнопка заблокирована. Она разрешена лишь в том случае, когда выбрана опция конфигурации Grade as I Answer Each Question. Щелчок этой кнопки обеспечивает немедленное оценивание ответа на текущий вопрос. Одновременно предоставляется объяснение правильного ответа точно так же, как если бы была нажата кнопка Show Answer. Однако в данном случае ответ на вопрос засчитывается при подсчете результатов.
^ End Exam. Эта кнопка обеспечивает завершение данного экзамена и выводит экран Examination Score Report.
^ Previous. Эта кнопка возвращает предшествующий вопрос данного экзамена.
^ Next. Эта кнопка предлагает следующий вопрос данного экзамена.
^ Previous Marked. Эта кнопка отображается в том случае, если вы решили сделать обзор вопросов, отмеченных вами на экране Item Review. Эта кнопка обеспечивает отображение предыдущего отмеченного вопроса. Способы маркирования вопросов обсуждаются более подробно далее в настоящем приложении.
^ Previous Incomplete. Эта кнопка отображается в том случае, если вы решили, воспользовавшись экраном Item Review, сделать обзор вопросов, на которые еще не ответили. Эта кнопка обеспечивает отображение предыдущего вопроса, на который вы не смогли ответить.
^ Next Marked. Эта кнопка отображается в том случае, если вы решили сделать обзор вопросов, отмеченных вами на экране Item Review. Эта кнопка обеспечивает отображение следующего отмеченного вопроса. Способы маркирования вопросов обсуждаются более подробно далее в настоящем приложении.
^ Next Incomplete. Эта кнопка отображается в том случае, если вы решили, воспользовавшись экраном Item Review, сделать обзор вопросов, на которые еще не ответили. Эта кнопка обеспечивает отображение следующего вопроса, на который вы не ответили.
Маркировка вопросов и учет оставшегося времени
Программный продукт ExamGear предоставляет два метода, которые позволяют работать с ограничением времени тестирования. Если вы считаете, что должны пропустить какой-нибудь вопрос или проверить время, оставшееся для завершения тестирования, воспользуйтесь одной из опций, которые обсуждаются в следующих разделах.
Маркированный вопрос
Отметьте кнопку-флажок, маркируя при этом какой-нибудь вопрос так, чтобы вы могли позже возвратиться к нему, используя функцию Item Review. Адаптационный экзамен не позволяет маркировать вопросы, поскольку он не поддерживает функцию Item Review.
Учет оставшегося времени
Если тест ограничен по времени, то доступен индикатор Time Remaining. Этот индикатор ведет обратный отсчет минут, оставшихся до завершения тестирования. Адаптационный экзамен не предоставляет такой возможности, поскольку для него не устанавливается контроль времени.
Использование ExamGear - программного руководства по обучению 63У Приложение F.
Экран Item Review
Позволяет вам перейти к любому вопросу. ExamGear, Training Guide Edition рассматривает в качестве незавершенного любой вопрос, оставшийся без ответа, или любой вопрос множественного выбора, для которого не было выбрано требуемое количество ответов. Если на конкретный вопрос требовалось выбрать три ответа, а вы, например, выбрали только ответы А и С, то ExamGear полагает, что данный вопрос остался незавершенным.
Item Review предоставляет вам возможность сделать обзор экзаменационных вопросов различными способами. Вы можете ввести одну из двух последовательностей просмотра (наборов аналогичных записей): Browse Marked Questions или Browse Incomplete Questions. Вы можете также создавать индивидуальные группы экзаменационных вопросов для обзора, основываясь на нескольких критериях.
Если применялась функция Item Review, когда для некоторого вопроса в процессе сдачи экзамена была выбрана опция Show Answer, то данный вопрос является недоступным (серого цвета) в перечне. На этот вопрос можно будет отвечать повторно в том случае, если вы воспользуетесь кнопкой Reset для сброса его статуса.
Экран Item Review содержит две таблицы. Таблица Questions отражает список вопросов и информацию о них в столбцах. Таблица Current Score выводит информацию о результатах вашего экзамена, представленную в виде процента правильных ответов от общего числа ответов для каждой главы и в виде диаграммы результатов экзамена в целом.
Таблица Questions экрана Item Review
Предлагает список вопросов экзамена и информацию об этих вопросах в форме таблицы, приведенной на рисунке F.5. Вы можете выбрать любую строку, щелкая мышью на сетке данной таблицы. Кнопка Go То доступна всякий раз, когда выбрана какая-нибудь строка. Щелчок мышью кнопки Go То отображает на экране вопрос, связанный с выбранной строкой. Вы также можете отобразить на экране какой-нибудь вопрос, выполнив двойной щелчок мышью соответствующей строки в таблице.
Рисунок F.5.Таблица Questions на экране Item Review.Рисунок F.5.Таблица Questions на экране Item Review.299113.10235437935102066' 977579862897589984010982511=97721298141310193149910299113.10235437935102066' 977579862897589984010982511=97721298141310193149910|| Chapter 1 - Inhalation. Confguraticrr and Upgra Multpie Chace Ц Chapter 5 -Pinterr Multpie Choice О Chapter 1 • Insulation. Configuration and Upgra Miitple ChoiceChaplet 5 • Pifritett Miitple Chace 51 Chapter 1 • IruLalalion. Conliguralion and Upgra Miitple Choice 13 Chaplet 1 • Insulation, Conliguralion and Upgra Mullpie Choice О Chapter 1 • Insulation. Conliguralion and Upgra Mtilpie Choice Q Chapter i • IruLalalion, Coniguration and Upgra Miitple Choice Q Chaplet 1 • IrwUiation, Configuration and Upgra MUtpie Choice C Chaplet 1 • Inetalation. Conliguraticrr and Upgra MtAiple Choice O Chapter 1 - IrwUiation, Cdnlguralicn and Upgra Miitple Choice 7 Chapter 5 • Ptinieis Miitiple Chace О Chapter 1 ■ Insulation Conliguralion and Upgra Miitple Choice|| Chapter 1 - Inhalation. Confguraticrr and Upgra Multpie Chace Ц Chapter 5 -Pinterr Multpie Choice О Chapter 1 • Insulation. Configuration and Upgra Miitple ChoiceChaplet 5 • Pifritett Miitple Chace 51 Chapter 1 • IruLalalion. Conliguralion and Upgra Miitple Choice 13 Chaplet 1 • Insulation, Conliguralion and Upgra Mullpie Choice О Chapter 1 • Insulation. Conliguralion and Upgra Mtilpie Choice Q Chapter i • IruLalalion, Coniguration and Upgra Miitple Choice Q Chaplet 1 • IrwUiation, Configuration and Upgra MUtpie Choice C Chaplet 1 • Inetalation. Conliguraticrr and Upgra MtAiple Choice O Chapter 1 - IrwUiation, Cdnlguralicn and Upgra Miitple Choice 7 Chapter 5 • Ptinieis Miitiple Chace О Chapter 1 ■ Insulation Conliguralion and Upgra Miitple ChoiceUege^M-Maked 9 *1гкы*Йе C »Сж( O^naMtg-i^tflh^^Uege^M-Maked 9 *1гкы*Йе C »Сж( O^naMtg-i^tflh^^
Рисунок F.5.
Таблица Questions на экране Item Review.
Рисунок F.5.
Таблица Questions на экране Item Review.
29911
3.10235
43793
510206
6' 9775
79862
89758
99840
109825
11=9772
129814
1310193
149910
29911
3.10235
43793
510206
6' 9775
79862
89758
99840
109825
11=9772
129814
1310193
149910
|| Chapter 1 - Inhalation. Confguraticrr and Upgra Multpie Chace Ц Chapter 5 -Pinterr Multpie Choice О Chapter 1 • Insulation. Configuration and Upgra Miitple Choice
Chaplet 5 • Pifritett Miitple Chace 51 Chapter 1 • IruLalalion. Conliguralion and Upgra Miitple Choice 13 Chaplet 1 • Insulation, Conliguralion and Upgra Mullpie Choice О Chapter 1 • Insulation. Conliguralion and Upgra Mtilpie Choice Q Chapter i • IruLalalion, Coniguration and Upgra Miitple Choice Q Chaplet 1 • IrwUiation, Configuration and Upgra MUtpie Choice C Chaplet 1 • Inetalation. Conliguraticrr and Upgra MtAiple Choice O Chapter 1 - IrwUiation, Cdnlguralicn and Upgra Miitple Choice 7 Chapter 5 • Ptinieis Miitiple Chace О Chapter 1 ■ Insulation Conliguralion and Upgra Miitple Choice
|| Chapter 1 - Inhalation. Confguraticrr and Upgra Multpie Chace Ц Chapter 5 -Pinterr Multpie Choice О Chapter 1 • Insulation. Configuration and Upgra Miitple Choice
Chaplet 5 • Pifritett Miitple Chace 51 Chapter 1 • IruLalalion. Conliguralion and Upgra Miitple Choice 13 Chaplet 1 • Insulation, Conliguralion and Upgra Mullpie Choice О Chapter 1 • Insulation. Conliguralion and Upgra Mtilpie Choice Q Chapter i • IruLalalion, Coniguration and Upgra Miitple Choice Q Chaplet 1 • IrwUiation, Configuration and Upgra MUtpie Choice C Chaplet 1 • Inetalation. Conliguraticrr and Upgra MtAiple Choice O Chapter 1 - IrwUiation, Cdnlguralicn and Upgra Miitple Choice 7 Chapter 5 • Ptinieis Miitiple Chace О Chapter 1 ■ Insulation Conliguralion and Upgra Miitple Choice
Uege^M-Maked 9 *1гкы*Йе C »Сж( O^naMtg-i^tflh^^
Uege^M-Maked 9 *1гкы*Йе C »Сж( O^naMtg-i^tflh^^
heUmidEgisw |
Столбцы
Таблица Questions содержит шесть столбцов информации:
Ф Seq. Указывает порядковый номер, под которым данный вопрос будет отображен на экзамене.
Ф Question Number. Отображает идентификационный номер данного вопроса для упрощения ссылки на него.
Ф Marked. Указывает вопрос, который вы маркировали с использованием кнопки Mark Question.
ф Status. Допустимыми значениями статуса являются:
М маркированный вопрос
? незавершенный вопрос
С вопрос, на который был дан правильный ответ
I вопрос, на который был дан неправильный ответ
X вопрос, на который был выведен ответ для просмотра
ф Chapter Name. Наименование главы, к которой относится каждый вопрос.
Ф Туре. Тип вопроса, принимающий значение Multiple Choice (множественный выбор) или Hot Spot ("горячая точка").
Чтобы изменить ширину столбца, наведите указатель мыши на вертикальную линию между заголовками столбца. Когда указатель мыши преобразуется в пару правых и левых стрелок, вы сможете перетаскивать границу столбца налево или направо, делая столбец шире или уже. Просто щелкните на границе столбца левой кнопкой мыши и удерживайте эту кнопку в то время, пока перемещаете его границу в желаемом направлении.
Экран Item Review позволяет вам отсортировать вопросы по любому из заголовков столбцов таблицы. Первоначально список вопросов сортируется в порядке убывания значений в столбце порядкового номера вопроса. Чтобы отсортировать вопросы по другому заголовку столбца таблицы, щелкните этот заголовок. Вы увидите, что на заголовке данного столбца появляется стрелка, указывающая направление сортировки (по возрастанию или по убыванию). Чтобы изменить направление сортировки, щелкните этот заголовок столбца еще раз.
Экран Item Review также позволяет вам создать индивидуальные группы вопросов. Эта особенность дает возможность отсортировать вопросы, основываясь на произвольной комбинации критериев, которые вы предпочитаете. Например, вы можете захотеть сделать обзор вопросов, отсортированных сначала в зависимости от того, были ли они маркированы, затем по названию соответствующей главы и, наконец, по порядковому номеру вопроса. Функция Custom Grouping предоставляет вам возможность сделать это. Начните с отметки кнопки- флажка Custom Grouping, как показано на рисунке F.6. Когда вы сделаете это, то вся таблица вопросов на экране немного сместится вниз, а наверху таблицы появится сообщение, которое гласит: Drag a Column Header Here to Group by That Column (Перетащите сюда заголовок столбца для группирования по данному столбцу).
Просто щелкните нужный вам заголовок столбца левой кнопкой мыши и удерживайте эту кнопку в то время, пока перемещаете заголовок столбца в область непосредственно над таблицей вопросов (область индивидуального группирования). Чтобы оставить заголовок столбца в области индивидуального группирования, отпустите левую кнопку мыши. Чтобы выполнить индивидуальное группирование, процедура которого была описана ра-
*•*‘ymtn&yi |iewiie"-in, ■ t У2?Л1»зггЕР* j*•*‘ymtn&yi |iewiie"-in, ■ t У2?Л1»зггЕР* jИспользование ExamGear - программного руководства по обучению 861 Приложение Е
*•*‘ymtn&yi |
iewiie"-in, ■ t У2?Л1»зггЕР* j
*•*‘ymtn&yi |
iewiie"-in, ■ t У2?Л1»зггЕР* j
Рисунок F.6.
Кнопка-флажок Custom Grouping позволяет создать ваш собственный порядок сортировки вопросов.
нее, прежде всего отметьте кнопку Custom Grouping. Затем перетащите заголовок столбца Marked в область индивидуального группирования над таблицей вопросов. После этого перетащите заголовок столбца Chapter Name в область индивидуального группирования. Вы увидите эти два заголовка столбца, соединенные вместе линией, обозначающей порядок индивидуального группирования. Наконец, перетащите заголовок столбца Seq в область индивидуального группирования. Этот заголовок будет соединен с заголовком Chapter Name другой линией, обозначающей порядок индивидуального группирования.
Обратите внимание на то, что каждый заголовок столбца в области индивидуального группирования имеет стрелку, указывающую направление сортировки элементов под этим заголовком. Вы можете, используя эти стрелки, изменять направление сортировки для конкретных заголовков столбцов на противоположное. Щелкните заголовок столбца в области индивидуального группирования для того, чтобы изменить направление сортировки только для данного заголовка столбца. Например, используя ранее созданное индивидуальное группирование, вы можете отобразить список вопросов, отсортированный сначала по убыванию в зависимости от того, был ли данный вопрос маркирован, потом по убыванию названий глав и, наконец, по возрастанию порядкового номера вопроса.
Возможность индивидуального группирования на экране Item Review предоставляет вам большую гибкость в настройке обзора экзаменационных вопросов. Чтобы удалить индивидуальное группирование и возвратить экран Item Review к его настройке по умолчанию (сортировка вопросов по убыванию их порядковых номеров), просто снимите отметку кнопки-флажка Custom Grouping.
Таблица Current Score
Таблица Current Score экрана Item Review, изображенная на рисунке F.7, предоставляет снимок ваших результатов в реальном масштабе времени. Верхняя половина экрана представляет собой разворачиваемую таблицу. Когда эта таблица свернута, то результаты тестирования отображаются для каждой главы. Главы могут быть развернуты для того, чтобы отобразить результаты тестирования в процентах для общих тем и входящих в них частных тем каждой главы. Информация о ваших достижениях при сдаче экзамена представлена в следующих столбцах:
Ф Chapter Name. Этот столбец отображает наименование главы для каждой тематической группы.
ф Percentage. Этот столбец показывает процент вопросов, на которые вами были даны правильные ответы, для каждой тематической группы.
ф Attempted. Этот столбец содержит количество вопросов, на которые вы ответили полностью или частично, для каждой тематической группы.
ф Correct. Этот столбец содержит фактическое количество вопросов, на которые вы ответили правильно, для каждой тематической группы.
ф Answer Shown. Этот столбец содержит количество вопросов для каждой тематической группы по которым вы выводили на экран ответ, используя кнопку Show Answer.
Рисунок F.7.
Таблица Current Score на экране Item Review.
Столбцы в таблице подсчета результатов изменяются по ширине и сортируются точно таким же образом, как и столбцы в таблице Questions экрана Item Review. Более подробная информация по этому вопросу может быть найдена в приведенном ранее разделе "Таблица Questions экрана Item Review".
Графический обзор результата представлен ниже описанной таблицы и содержит две красные полосы (столбчатые диаграммы): верхняя полоса представляет ваш текущий результат экзамена; нижняя полоса - результат, требуемый для успешного прохождения экзамена. Справа от указанных полос находится описание, отображающее достигнутый вами и требуемый результаты. Это же описание, по сути, повторяется в виде текстовой строки ниже диаграмм.
Кроме того, информация может быть представлена на основании всех результатов экзамена или по отдельным главам. Клавиша Overall демонстрирует полный результат, клавиша By Chapter - по отдельным главам.
Щелчок мышью кнопки End Exam завершает данный экзамен и передает управление на экран Examination Score Report.
Кнопка Return to Exam возвращает вас на тот вопрос экзамена, на котором была нажата кнопка Item Review.
Использование ExamGear - программного руководства по обучению 50J Приложение F
Просмотр маркированных вопросов
Экран Item Review позволяет вам ввести последовательность обзора для маркированных вопросов. Когда вы щелкаете кнопку Review Marked, то для обзора предлагаются те вопросы, которые вы предварительно промаркировали с использованием кнопки Mark Question. При просмотре маркированных вопросов вы увидите следующие изменения в доступных кнопках:
Ф Название кнопки Next изменяется на Next Marked.
ф Название кнопки Previous изменяется на Previous Marked.
Просмотр незавершенных вопросов
На экране Item Review предоставляется возможность ввести последовательность обзора незавершенных вопросов. Когда вы щелкаете кнопку Review Incomplete, то для вашего обзора предлагаются те вопросы, на которые вы не ответили вообще или ответили не полностью. При просмотре незавершенных вопросов вы увидите следующие изменения в кнопках:
ф Название кнопки Next изменяется на Next Incomplete.
Ф Название кнопки Previous изменяется на Previous Incomplete.
Экран Examination Score Report
Экран отчета о результатах экзамена под названием Examination Score Report, показанный на рисунке F.8, появляется тогда, когда завершается режим обучения, практический или адаптационный экзамен. Это может произойти в результате истечения отведенного времени, завершения ответов на все вопросы или вашего решения о досрочном завершении.
Рисунок F.8.
Экран Examination Score Report.
Этот экран предлагает вам графическое представление вашего экзаменационного результата, а также табличную разбивку полученного результата по главам. Графическое отображение в верхней части экрана сравнивает ваш полный результат с тем, который требу-
ется для успешной сдачи экзамена. Кнопки, расположенные ниже графического отображения, позволяют вам открыть последовательность просмотра (Show Me What I Missed), распечатать содержимое экрана или возвратиться в главное меню программы.
Последовательность обзора Show Me What I Missed
Вызывается посредством выполнения щелчка мышью кнопки Show Me What I Missed на экране отчета о результатах экзамена, Examination Score Report, или из конфигурационного экрана какого-нибудь адаптационного экзамена.
Обратите внимание на то, что заголовок окна программы изменяется, показывая, что вы находитесь в режиме просмотра Show Me What I Missed (покажите, что я пропустил). Идентификаторы вопросов и их положение в последовательности просмотра отображаются в верхней части экрана, на месте индикаторов Mark Question и Time Remaining. Основное содержимое окна также изменяется в зависимости от типа вопроса. Приведенный перечень описывает кнопки, доступные в последовательности просмотра Show Me What I Missed, и функции, выполняемые указанными кнопками:
ф Return to Score Report. Возвращает управление на экран Examination Score Report. В случае адаптационного экзамена эта кнопка имеет заголовок Exit и возвращает управление на экран конфигурирования адаптационного экзамена.
Ф Run Simulation. Открывает эмуляцию в режиме Grade, обеспечивая отображение вашего и правильного ответов. Если текущий вопрос не предполагает эмуляцию, данная кнопка недоступна.
ф Exhibits. Открывает окно Exhibits. Эта кнопка доступна, если для данного вопроса имеется один или более экспонатов.
ф Instructions. Показывает, как следует отвечать на текущий тип вопроса.
ф Print. Выводит содержимое текущего экрана.
ф Previous или Next. Отображает пропущенные вопросы.
Проверка Web-сайта
Чтобы проверить домашнюю страницу издательства New Riders или продукта ExamGear, Training Guide Edition на предмет обновлений или другой информации о рассматриваемом программном обеспечении, выберите желаемый Web-сайт из опции web sites меню Online. Вы должны быть подключены к сети Internet, чтобы добраться до этих Web-сайтов.
FAQ
Ответы на часто задаваемые вопросы относительно программного продукта ExamGear могут быть найдены по адресу http://www.newriders.com/examgear/support/faq.cfm.
Получение обновлений
В настоящем разделе рассматриваются процедуры получения обновлений.
Использование ExamGear - программного руководства по обучению доз Приложение F.
Каталог Web-сайтов для получения обновлений
Выберите опцию Check for Product Updates из меню Online для отображения полного перечня программных продуктов, которые вы можете либо загрузить бесплатно, либо приобрести с помощью вашего Web-браузера. Вы должны быть подключены к сети Internet, чтобы добраться до этих Web-сайтов.
Типы обновлений
Для загрузки могут быть доступны несколько типов обновлений, включая различные свободно распространяемые обновления и дополнительные объекты, доступные для приобретения.
Программа свободно распространяемых обновлений
Программа свободно распространяемых обновлений включает изменения для исполняемых модулей и динамически подключаемых библиотек программного продукта ExamGear, Training Guide Edition. Когда любой из этих объектов загружается, то программа ExamGear автоматически инсталлирует обновления. После завершения инсталляции программный продукт ExamGear, Training Guide Edition будет перезапущен.
Свободно распространяемые обновления баз данных
Такие обновления баз данных включают в себя обновления для экзамена или экзаменов, которые вы зарегистрировали. Обновления экзамена содержатся в сжатых, зашифрованных файлах и включают в себя экзаменационные базы данных и экспонаты. Программный продукт ExamGear, Training Guide Edition автоматически распаковывает эти файлы в надлежащее место и модифицирует программное обеспечение ExamGear для того, чтобы зарегистрировать изменение версии и импортировать новые наборы вопросов. Вы можете приобрести какую-нибудь дополнительную базу данных вопросов на сайте UnixEd.com.
Контакты с издательством New Riders Publishing
В издательстве New Riders прежде всего стремятся отзываться на потребности своих клиентов и удовлетворять их. Там разработали программный продукт ExamGear, Training Guide Edition, чтобы поразить специалистов по работе с сетями, желающих получить технические сертификаты, и превзойти все их ожидания, и думают, что им это удалось. А как думаете вы?
Если вам необходим контакт с издательством New Riders Publishing относительно любого направления линейки программных продуктов ExamGear, Training Guide Edition, не стесняйтесь обращаться туда, где всегда ждут ваших откликов. Связаться с издательством можно по приведенным адресу и номеру телефона:
New Riders Publishing
201 West 103 Street
Indianapolis, IN 46290
800-545-5914
Или через Internet по адресу:
http://www.newriders.com
Техническая поддержка
Техническая поддержка доступна по следующему номеру телефона в течение указанного времени:
Телефон: 317-581-3833, с понедельника по пятницу, с 10 часов утра до 3 часов пополудни центрального стандартного времени.
Вы можете связаться с издательством по электронной почте: examgear@newriders.com.
Наконец, вы можете посетить Web-сайт интерактивной поддержки по адресу:
www.newriders.сот/support
и направить ваш запрос о технической поддержке через Internet.
Обслуживание клиентов
Если вы имеете поврежденный программный продукт и нуждаетесь в его замене или возврате денег, пожалуйста, позвоните по следующему номеру телефона:
800-858-7674
Обновления программного продукта'
Вы можете получить обновления, выбрав интерактивное спускающееся меню программного продукта ExamGear, Training Guide Edition и указав в нем пункт Check for Product Updates. В результате вы попадете на Web-сайт, где представлена самая подробная информация об обновлениях.
Предложения и замечания
Издательство высоко ценит ваш вклад! Пожалуйста, отправьте свои предложения и замечания относительно данного программного продукта по электронной почте:
nrfeedback@newriders.com
Лицензионное соглашение
ВЫ ДОЛЖНЫ ВНИМАТЕЛЬНО ПРОЧИТАТЬ ПРИВЕДЕННЫЕ НИЖЕ УСЛОВИЯ ПЕРЕД ВСКРЫТИЕМ УПАКОВКИ ПАКЕТА. СРЕДИ ПРОЧЕГО НАСТОЯЩЕЕ СОГЛАШЕНИЕ ПРЕДОСТАВЛЯЕТ ВАМ ЛИЦЕНЗИЮ НА ПРИЛАГАЕМОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ И СОДЕРЖИТ ГАРАНТИИ И ПРЕДУПРЕЖДЕНИЯ ОБ ОГРАНИЧЕННОЙ ОТВЕТСТВЕННОСТИ ВЛАДЕЛЬЦА АВТОРСКИХ ПРАВ. ВСКРЫВ УПАКОВКУ ПАКЕТА, ВЫ ТЕМ САМЫМ ПРИНИМАЕТЕ И СОГЛАШАЕТЕСЬ С УСЛОВИЯМИ НАСТОЯЩЕГО ЛИЦЕНЗИОННОГО СОГЛАШЕНИЯ. ЕСЛИ ВЫ НЕ СОГЛАШАЕТЕСЬ С УСЛОВИЯМИ НАСТОЯЩЕГО ЛИЦЕНЗИОННОГО СОГЛАШЕНИЯ, НЕ ВСКРЫВАЙТЕ УПАКОВКУ. ВЫ ДОЛЖНЫ БЫСТРО ВОЗВРАТИТЬ ПАКЕТ В ЗАПЕЧАТАННОЙ УПАКОВКЕ.
Лицензия
Подчиняясь условиям, содержащимся здесь, издательство New Riders Publishing (далее НКР)тем самым предоставляет вам неисключительную непередаваемую лицензию на использование данной версии компьютерного программного продукта (далее программ-
Использование ExamGear - программного руководства по обучению 60/ Приложение F.
кого обеспечения), который содержится в данной упаковке, на единственном компьютере, тип которого обозначен на упаковке.
Программное обеспечение и документация
NRP поставит вам программное обеспечение на носителях информации в форме машинно-читаемого объектного кода и может также предоставить стандартную документацию (далее просто документацию), которая содержит инструкции по эксплуатации и использованию программного обеспечения.
Условия настоящей лицензии и ответственность
Условия настоящей лицензии вступают в силу с момента поставки вам программного обеспечения и не ограничены по времени, если их действие не закончится ранее по умолчанию или в соответствии со сформулированными здесь положениями.
Название -
Название, права владения и интеллектуальной собственности на программное обеспечение и документацию должны сохраняться за NRP и/или за поставщиками программ, содержащихся в программном обеспечении NRP. Согласно настоящей лицензии программное обеспечение предоставляется для вашего собственного внутреннего использования. Эта лицензия не включает право вторичного лицензирования и предоставлена лично вам, а поэтому не может быть назначена (в силу действия законодательных норм или иным способом) или передана без предварительного письменного согласия NRP. Вы подтверждаете, что программное обеспечение в форме исходного текста остается конфиденциальным коммерческим секретом NRP и/или его поставщиков, и поэтому Вы обязуетесь не пытаться декодировать или декомпилировать, изменять, дизассемблировать, перепроектировать или подготавливать производные функции программного обеспечения, развивать исходный текст программного обеспечения или сознательно позволять другим делать это. Далее, вы не можете копировать документацию или другие письменные материалы, сопровождающие программное обеспечение.
Обновления
Настоящая лицензия не предоставляет вам никаких права, лицензии или участия в любых усовершенствованиях, модификациях, расширениях или обновлениях программного обеспечения и документации. Обновления, если они доступны, могут быть получены вами на условиях, действующих в настоящее время, и по стандартным ценам NRP.
Ограниченная гарантия и дискламация
NRP гарантирует, что носитель информации, содержащий программное обеспечение и предоставленный издательством NRP, свободен от дефектов поверхности и производственных дефектов при нормальном использовании сроком в шестьдесят (60) дней, начиная с даты, когда вы приобрели лицензию на программное обеспечение.
НАСТОЯЩЕЕ ПРЕДСТАВЛЯЕТ СОБОЙ ОГРАНИЧЕННУЮ ГАРАНТИЮ, И ЭТО - ЕДИНСТВЕННАЯ ГАРАНТИЯ, ПРЕДОСТАВЛЯЕМАЯ NRP. ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ПРЕДОСТАВЛЯЕТСЯ НА УСЛОВИЯХ "КАК ЕСТЬ", И NRP ОПРЕДЕЛЕННО ОТВЕРГАЕТ ВСЕ ГАРАНТИИ ЛЮБОГО ВИДА, ЯВНО ВЫРАЖЕННЫЕ ИЛИ ПОДРАЗУМЕВАЕМЫЕ, ВКЛЮЧАЯ, НО, НЕ ОГРАНИЧИВАЯСЬ, ПОДРАЗУМЕВАЕМОЙ ГАРАНТИЕЙ ТОВАРНОГО СОСТОЯНИЯ И ПРИГОДНОСТИ ДЛЯ ИСПОЛЬЗОВАНИЯ ПО НАЗНАЧЕНИЮ. ДАЛЕЕ, КОМПАНИЯ НЕ ГАРАНТИРУЕТ И НЕ ДАЕТ НИКАКИХ ПРЕДСТАВЛЕНИЙ ОТНОСИТЕЛЬНО ИСПОЛЬЗОВАНИЯ ИЛИ РЕЗУЛЬТАТОВ ИСПОЛЬЗОВАНИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ, ПРАВИЛЬНОСТИ, ТОЧНОСТИ, НАДЕЖНОСТИ, ЦЕЛОСТНОСТИ ИЛИ ЧЕГО-ЛИБО ЕЩЕ И НЕ ГАРАНТИРУЕТ, ЧТО ЭКСПЛУАТАЦИЯ ЛЮБОГО ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ БУДЕТ НЕПРЕРЫВНА ИЛИ СВОБОДНА ОТ ОШИБОК. NRP ЯВНЫМ ОБРАЗОМ ОТКАЗЫВАЕТСЯ ОТ ЛЮБЫХ ГАРАНТИЙ, НЕ ЗАЯВЛЕННЫХ ЗДЕСЬ. НИКАКАЯ УСТНАЯ ИЛИ ПИСЬМЕННАЯ ИНФОРМАЦИЯ ИЛИ СОВЕТ, ДАННЫЙ NRP ИЛИ ЛЮБЫМ ДИЛЕРОМ, АГЕНТОМ, СЛУЖАЩИМ ИЛИ ДРУГИМИ ПРЕДСТАВИТЕЛЯМИ NRP, НЕ ДОЛЖЕН СОЗДАВАТЬ, ИЗМЕНЯТЬ ИЛИ РАСШИРЯТЬ НАСТОЯЩУЮ ГАРАНТИЮ ИЛИ ЛЮБЫМ СПОСОБОМ УВЕЛИЧИВАТЬ ОБЛАСТЬ ДЕЙСТВИЯ ПРЕДШЕСТВУЮЩЕЙ ГАРАНТИИ, И НИКАКАЯ ДРУГАЯ ОСОБА, КОТОРОЙ ПЕРЕДАНА ЛИЦЕНЗИЯ, ИЛИ ПОКУПАТЕЛЬ НЕ МОЖЕТ ПОЛАГАТЬСЯ НА ЛЮБУЮ ТАКУЮ ИНФОРМАЦИЮ ИЛИ СОВЕТ. Если носители информации подверглись несчастному случаю, неправильному обращению или ненадлежащему использованию или если вы нарушаете условия настоящего соглашения, действие этой гарантии должно быть немедленно прекращено. Эта гарантия не должна применяться, если программное обеспечение используется на аппаратных средствах и программном обеспечении, отличающимися от тех, для которых было разработано данное программное обеспечение, чтобы употребляться так, как это описано в документации.
Ограничение ответственности
Ваши единственные и исключительные права на возмещение любого ущерба или потерь, любым способом связанных с программным обеспечением, сформулированы далее.
НИ В КОЕМ СЛУЧАЕ И НИ ПО КАКИМ ЮРИДИЧЕСКИМ ТЕОРИЯМ, НАРУШЕНИЯМ ЗАКОННЫХ ПРАВ, КОНТРАКТУ ИЛИ ПО ЧЕМУ-ЛИБО ЕЩЕ NRP НЕ БУДЕТ НЕСТИ ОТВЕТСТВЕННОСТЬ ПЕРЕД ВАМИ ИЛИ ПЕРЕД ЛЮБЫМ ДРУГИМ ЛИЦОМ ЗА ЛЮБОЙ КОСВЕННЫЙ, СПЕЦИАЛЬНЫЙ, НЕПРЕДВИДЕННЫЙ ИЛИ ПОСЛЕДУЮЩИЙ УЩЕРБ ЛЮБОГО ХАРАКТЕРА, ВКЛЮЧАЯ БЕЗ ОГРАНИЧЕНИЯ УЩЕРБ ОТ ПОТЕРИ РЕПУТАЦИИ, ПОТЕРЮ ПРИБЫЛИ, ОСТАНОВ РАБОТЫ, ОТКАЗ ИЛИ СБОЙ КОМПЬЮТЕРА ИЛИ ЛЮБОЙ ДРУГОЙ И ВСЕ ПРОЧИЕ ВИДЫ КОММЕРЧЕСКОГО УЩЕРБА И ПОТЕРЬ ИЛИ ЛЮБЫЕ ДРУГИЕ ВИДЫ УЩЕРБА, ДАЖЕ ЕСЛИ NRP ДОЛЖНО БЫЛО БЫТЬ ИНФОРМИРОВАНО ОТНОСИТЕЛЬНО ВОЗМОЖНОСТИ ТАКОГО УЩЕРБА ИЛИ ПО ЛЮБЫМ ДРУГИМ ТРЕБОВАНИЯМ ВОЗМЕЩЕНИЯ УЩЕРБА ДРУГОЙ СТОРОНЕ. СТОРОННИЕ ПОСТАВЩИКИ ПРОГРАММ ДЛЯ NRP НЕ ДАЮТ НИКАКОЙ ГАРАНТИИ И ВООБЩЕ НЕ НЕСУТ НИКАКОЙ ОТВЕТСТВЕННОСТИ ПЕРЕД ВАМИ.
Единственное и исключительное обязательство и ответственность NRP, а также ваше исключительное право на возмещение ущерба будут следующими: по выбору NRP, (!) замена дефектного носителя информации; или (ii) восстановление и исправление вашего дефектного носителя информации, если NRP в состоянии сделать это так, что он будет соответство-
Использование ExamGear - программного руководства по обучению 60У Приложение F.
вать вышеупомянутой гарантии; или (iii), если NRP не в состоянии заменить или восстановить носитель информации, вы можете завершить действие этой лицензии, возвратив программное обеспечение. Только в том случае, если вы сообщите NRP о вашей проблеме в течение соответствующего гарантийного периода, NRP будет обязано выполнять свои обязательства по настоящей гарантии. НЕКОТОРЫЕ ГОСУДАРСТВА ИЛИ ЮРИСДИКЦИИ НЕ ДОПУСКАЮТ ИСКЛЮЧЕНИЯ ПОДРАЗУМЕВАЕМЫХ ГАРАНТИЙ ИЛИ ОГРАНИЧЕНИЯ ИЛИ ИСКЛЮЧЕНИЯ ПОСЛЕДУЮЩЕГО УЩЕРБА, ТАК ЧТО ВЫШЕУПОМЯНУТЫЕ ОГРАНИЧЕНИЯ ИЛИ ИСКЛЮЧЕНИЯ МОГУТ НЕ ОТНОСИТЬСЯ К ВАМ. ЭТА ГАРАНТИЯ ДАЕТ ВАМ ОПРЕДЕЛЕННЫЕ ЮРИДИЧЕСКИЕ ПРАВА, НО ВЫ ТАКЖЕ МОЖЕТЕ ИМЕТЬ ДРУГИЕ ПРАВА, КОТОРЫЕ ИЗМЕНЯЮТСЯ ГОСУДАРСТВОМ ИЛИ ЮРИСДИКЦИЕЙ.
Разное
Если любое условие настоящего соглашения признано недействующим, неосуществимым или незаконным при некоторых обстоятельствах по любой причине, то такое решение не должно иметь законной силы (i) из такого условия при других обстоятельствах или (ii) из оставшихся условий настоящего соглашения при всех обстоятельствах; такое условие должно быть преобразовано в такой и только в такой степени, которая является необходимой, чтобы сделать его эффективным, осуществимым и законным при таких обстоятельствах. Все заголовки приведены исключительно для удобства и не должны рассматриваться в интерпретации этого соглашения. Настоящее соглашение должно регулироваться и рассматриваться согласно закону штата Нью-Йорк постольку, поскольку такой закон применяется к соглашениям между резидентами штата Нью-Йорк, которые введены и обязаны быть выполненными полностью в пределах штата Нью-Йорк кроме тех случаев, когда этого требуют правила и инструкции Правительства Соединенных Штатов Америки, регулируемые в соответствии с Федеральным законом.
ВЫ ПОДТВЕРЖДАЕТЕ, ЧТО ПРОЧЛИ НАСТОЯЩЕЕ СОГЛАШЕНИЕ, ПОНИМАЕТЕ ЕГО И СОГЛАШАЕТЕСЬ СЧИТАТЬ СЕБЯ СВЯЗАННЫМИ С ЕГО УСЛОВИЯМИ. ВЫ, ДАЛЕЕ, СОГЛАШАЕТЕСЬ, ЧТО ИМЕННО НАСТОЯЩИЕ ПОЛОЖЕНИЯ ПРЕДСТАВЛЯЮТ СОБОЙ ЗАКОНЧЕННОЕ И ИСКЛЮЧИТЕЛЬНОЕ СОГЛАШЕНИЕ, УСТАНОВЛЕННОЕ МЕЖДУ ИЗДАТЕЛЬСТВОМ И ВАМИ И ЗАМЕНЯЮЩЕЕ ЛЮБОЕ ПРЕДЛОЖЕНИЕ ИЛИ ПРЕДШЕСТВУЮЩЕЕ СОГЛАШЕНИЕ, УСТНОЕ ИЛИ ПИСЬМЕННОЕ, И ЛЮБЫЕ ДРУГИЕ ВЗАИМООТНОШЕНИЯ МЕЖДУ НАМИ, КАСАЮЩИЕСЯ ПРЕДМЕТА НАСТОЯЩЕГО СОГЛАШЕНИЯ.
Ограничение прав Правительства Соединенных
Штатов Америки
Использование этого продукта, дублирование или раскрытие Правительством подчиняется ограничениям, сформулированным в подпунктах от (а) до (d) предложения Commercial Computer-Restricted Rights в FAR 52.227-19, когда соответствующие ограничения являются применимыми, или в подпункте (с) (1) (ii) Rights in Technical Data and Computer Software в DFARS 252.227-7013 и в подобных предложениях в Дополнении NASA FAR.
Предметный указатель
Идентификаторы
64-Bit Selection окно 808
$HOME/.dtprofile сценарий 816
&& 425
.enet-addr команда 82 .version команда 82-83 / корневой файловой системы
407-408
/.гЬоз15файл 289
/etc 604
/etc/default/login файл 287, 291
/etc/defaultdomain 453 /etc/defaultrouter 455 /etc/group файл 270-271 /etc/hostname.interface 453 /etc/hosts.equiv файл 288 /etc/inet/hosts 453-454
/etc/inittab файл 39-40 /etc/mnttab файл 212, 237-238 /etc/nodename 453
/etc/passwd файл 268-269
/etc/shadow файл 269
/etc/vfstab файл 210-211
/sbin/init команда 50
/usr файловая система 407-408
/usr/sbin/halt команда 51
/usr/sbin/poweroff команда 51
/usr/sbin/reboot команда 51 /usr/sbin/shutdown команда 49-50 /usr/sbin/swap команда 482 /var/adm каталог 339-340
II 425
A
ABI интерфейс 139
absolute debugger (adb) команда 95
accept команда 370
ACL 274-278
Add команда (меню) Edit 165
add_install_client команда 728
add_to_install_server, команда 695 Additional Products окно 807
AdminSuite 643
Computers/Networks инструменты 656
Log Viewer инструмент 660
Mounts/Shares инструмент 657658
Serial Ports инструмент 658-659 пользователи 655-656 применение 653
Admintool 139
группы 165
принтеры
конфигурирование 358-361
модифицирование 372-374
учетные записи пользователей внесение изменений 164 добавления 160-161 удаление 163-164
Application Manager 827-829
ARP 446
aset команда 295
at -I команда 335
at команда 334-335
atq команда 335
auth_attr, БД авторизации 673-675
AutoClient 115, 498
AutoFS 574-575, 587
главные таблицы 576-577
косвенные таблицы 584-587
прямые таблицы 580-584
Autoshutdown 508, 511, 512
В
backup_media ключевое слово 709710
banner команда 82
bg 559
BIOS 63
boot_device ключевое слово 710711.
bootblk программа 30, 65
bootstrapping 30
Bourne оболочка 420
if условие 426
test команда 426-427
true /false программы 425
встроенные команды 424 команды повторения действий 429
for цикл 429
unti цикл 430
while цикл 430
переменные 420
кавычки 420
просмотр значений 422, 432
разделители 421
условные выражения 425
функции 430
С
С оболочка 418
CacheFS 186, 566
мониторинг 570-572
проверка согласованности 573
создание 566-570
удаление 572
cachefslog команда 570
cachefsstat команда 569, 570
cachefswssize команда 570
Carrier Sense 449
case оператор 428
cat команды 218
CD-ROM монтирование 254-255
CDE 419, 812
dtksh оболочка 812, 829
Process Manager 320-323
действия 825-827
менеджер приложений 827-829
менеджер процессов CDE 320323
менеджер регистрации 813-815 запуск 813 обзор 814-815 останов 814
менеджер сеансов 815-821 $HOME/.dtprofile сценарий 816 Xsession.d сценарий 816-817
конфигурирование маршрутов поиска файлов рабочего стола 817-818
сборка доступных приложений 818
передняя панель 821-822
типы данных 827
CDE Process Manager 320-323 cfsadmin команда 567, 571 check команда 706 chmod команда 273 client_arch ключевое слово 711 client_root ключевое слово 711 client_swap ключевое слово 712 cluster ключевое слово 712-713 Collision Detect 449 Computers/Networks инструмент, AdminSuite 656
Confirm Information окно 804 copy-in режим 393-394 copy-out режим 393 cpio команда 391-394
CSMA/CD 449
D
Date and Time окно 803
dd команда 390
Default Router окно 802
devalias команда 72
devfsadm команда 526
Device Power Management 509 df -k команда 478, 487 dfкоманда 250, 252 dfmounts команда 561 dfshares команда 557
DHCP окно 800
Disk Modification окно 809
Disk Selection окно 808 dmesg команда 519, 522 DNS 629-631 domainname команда 634-635 dontuse ключевое слово 713 dtksh 419 dtpower 510 echo команда 422, 432
Е
EEPROM 710
eeprom значение 710
eeprom команда 77
EFT 197
envкоманда 422, 432
Ethernet 354, 448-449
exec_attr, БД атрибутов выполнения 677-679
export команда 422
F
FCode интерпретатор 65 fdformat команда 248-249, 697 fdfs 478 fg 559
File Manager 246
filesys ключевое слово 713-715 find команда 279-280, 393
finger команда 461 fmthard команда 195-196 for цикл 429
format утилита 190-193
Forth, монитор 63, 67
Free Hog 193
Front Panel 821-822 fsck команда 250-251 fstyp команда 233
FTP 289, 552-553
команда 460
с ограничением доступа 289 ftp команда 460 fuser команда 239
G
gap 204
Gathering Disk Space Requirements окно 809
genunix 32
geo ключевое слово 716
Geographic Region окно 803 getfacl команда 277
GID 268-269
groupadd команда 168 groupdel команда 169 groupmod команда 168
GUI 246-247
H
halt команда 51
help команда из OpenBoot 67-68
Host Name окно 800
hot spare pool 534
hot-pluggable 527
hot-swappable 528
HSFS 185
HTTP 447
HUP (hangup) 458
ICANN 457
ICMP 446
IEEE 445
IETF 350
if условное выражение 426
ifconfig -а команда 451
ifconfig команда 451, 454
inetd демон 286
Initializing окно 806
Insert CD окно 805
install_type ключевое слово 715-716
installboot команда 408
installboot утилита 31
Installing окно 811
IP (Internet Protocol) 446
адресация (IPv4) 455
класс А сетей 456
класс В сетей 456
класс С сетей 456
класс Dсетей 456
класс Есетей 456
планирование 457
IP Address окно 801
IPv6 окно 801
isa_bits ключевое слово 716-717
J
J-оболочка 418
JavaStation 497
JumpStart 124-125
sysidcfg файлы 723-724 инсталляция
клиенты 728-729 конфигурирование инсталляционных серверов 694-696
конфигурирование серверов
694-695, 697
создание каталога 731
клиенты 728-729
ключевые слова доменных имен 708
ключевые слова службы имен 724-725
команды 689
подготовка 689-690
пользовательская инсталляция 688
custom 687-688
файлы классов 712-721
файлы правил 698-706 начальные/конечные сценарии 707-708
проверка 706-707
К
КОС 726
Korn оболочка 418
L
labelit команда 229
LAN 443
last команда 285
Lay Out File Systems окно 809
layout_constraint ключевое слово 717-718
LDAP 631-632
locale ключевое слово 718-719
LOFS 186
Login Manager 813-815
запуск 813
обзор 814-815
останов 814
logins команда 281-282
Ip команда 357,367, 371
Ipadmin команда
357, 363, 364, 368
Ipd демон 356
Ipmove команда 357, 363
Ipr команда 357
Ipsched демон 356-357, 371
Ipstat команды 365-366
LWP 318
M
make команда 612, 618
Makefile 617
makefile 618
MAXUP 326
MDB отладчик 96
mkfile команда 487
mkfs команда 226-228, 232
MNTFS 187
Modular Debugger (MDB) 96 mount команда 211, 234-
236, 477, 558-560, 567-569 mountall команда 211
Mounts/Shares инструмент 657-658 Multiple Access 449
N
Name Service окно 802
Netmask окно 801
netstat команда 464-465
Network Connectivity окно 800
newfs команда 200-202, 407
NFS 186, 550-551
AutoFS 574-575, 587
создание кэша 566-570
CacheFS 566
мониторинг кэша 570
проверка согласованности 573
удаление кэша 572
WebNFS 563
доступа к URL 565
получение доступа 564-565
автомонтирование 574
демоны 553
дистанционные файловые
системы 558-562
защита информации 557-558 команда mount 558-560, 567-569 конфигурирование 553 отношения клиент-сервер 550
серверы 550
NIC 450
nice команда 329-330
NIS 604, 653
NIS+ 624
структура пространства имен
625
таблицы 625-627
конфигурирование главных
серверов 611-619
планирование доменов 610-611
подчиненные сервера 623-624 принятые по умолчанию таблицы
607-609
установка клиентов 622-623
NIS+ 624
num_clients ключевое слово 719 NVRAM
команды 79
конфигурирование 75
О
ОВР 62
OpenBoot 31
help 67-68
NVRAM 73-78
архитектура 65
диагностика 80-81
загрузка 84, 87-89
задачи встроенного программного обеспечения 64-65
защита 79-80
интерфейс 66
монитор с ограниченными
возможностями 66-67
монитор Forth 67
полные имена устройств 69-70
псевдонимы 72-73
сравнение одно/
многопроцессорных систем
63-64
среда 62-63
OpenBoot PROM (ОВР) 62
Р
package ключевое слово 719 partitioning ключевое слово 719-720
pass режим 394
patchadd команда 147, 148-149
patchrm команда 147, 150
рахкоманда 394-397
PCFS 185
pfinstall команда 723
pgrep команда 315-316
РЮ 313
ping -sRv команда 465 ping команда 461-463 pkgadd команда 139, 140 pkgaskкоманда 139 pkgchк команда 139
pkginfo команда 139, 140, 142
pkgparam команда 139, 140, 147
pkgrm команда 139, 141
POST 31, 64, 85
Power Management 510-511
poweroff команда 51
printenv команда 75
priocntl команда 329, 330-331
probe-ide команда 81, 98
probe-scsi команда 81, 98
probe-scsi-all команда 81, 98 Process Manager 320-323 PROOFS 186
proofs 475-476
prodreg команда 144
prof_attr, БД профилей прав доступа 675-677
profiles команда 677
PROM 63
полные имена устройств 69-70
фаза 30
Proxy Server Configuration окно 804 prstat команда 312, 317, 319-320 prtconf команда 519, 520 prtvtoc команда 195-196, 722 ps-el 313, 314 ps команда 312-314 psrinfo команда 320 ptree команда 323 pwconvкоманда 269
Q
quota команда 215
Предметный указатель 875
R
Select Software Localizations окно
RAIDS 534
RARP 446
RBAC 666
компоненты 671-672 auth_attr 673-675 exec_attr 677-679 prof_attr 675-677 user_attr 672-673
применение 667-669
гс-сценарии 40-44
rep команда 460
re-preinstall команда 125
Ready to Install окно 810
reboot - -г команда 524
reboot команда 51
reject команда 369-370
renice команда 330
repquota команда 215
Restricted Korn 419
rexecкоманда 461
RIP 447
rlogin команда 459
rm_install_client команда 730
roleadd команда 669, 673, 677
roledel команда 671
rolemod команда 669
roles команда 669
ROM 63
root 291
доступ 291-292
Root Password окно 804
root_device ключевое слово 720
RPC 447
rpebind команда 458
rpcinfo команда 458
rsh команда 461
ги1е5.окфайл 702, 705
rup команда 461
rwho команда 461
806
Select Solaris Software Group окно 808
Select System Locale окно 807
Select Type of Install окно 806
Serial Ports инструмент, AdminSuite
658-659
Session Manager 815-816
Set Source Media окно 143
set команда 424, 432
setenv 75-76, 79-80
setfacl команда 275, 277-278
setgid 279-280
setuid 279-280
setup_install_server, команда
693, 695, 730
share команда 554-557
shareall команда 556
show-devs команда 70, 518
showmount команда 576
showrev команда 147
shutdown команда 49-50
SLP 350
SMTP 447
SNMP 447
snoop утилита 464
Solaris
инсталляция 126
носители 113
Solaris 8 23
Solstice DiskSuite 533-535
sort команда 214-215
SPARC 65
special параметр 242
Specify Media окно 805
spray команда 463
sticky-бит 274
StorEdge Volume Manager 535-537
su команда 273, 669
SUDO команда 293-294
S
Sun Certified Network Administrator 842-843
SBus шина 65
SDK 644.
sdtprocess команда 320
Select Products окно 807
Sun Certified System Administrator 842
Suspend-Resume 509
swap -а команда 488
swap -d команда 489
swap -I команда 482
swap -s команда 483
SWARFS 186 swapfs 479 swapper процесс 38 symname параметр 242 sync команда 199 sysdef команда 519, 520 sysidcfg файл 723-724 syslog 336-337 syslogd демон 336-337 system_type ключевое слово 720
T
Т-оболочка 419 tapes команда 409 tar команда 388-390 TCP 551-552
TCP Wrappers 287
TCP/IP команды 459-463
finger 461
ftp 460 ping 461-463 rep 460 rexec 461 rlogin 459 rsh 461 rup 461 rwho 461 spray 463 telnet 459
test программа 426 .
Time Zone окно 803
TMPFS 186, 476-477, 480
TOD 63 touch команда 523 tunefs команда 231-232
U
UDF 185
UDP 447, 463, 551-552
UFS 185, 197-202 ufsboot 31, 88-89 блоки хранения 200 загрузочный блок 199
индексные дескрипторы 199 протоколирование 213 свободные блоки 200 создание 200-202
суперблок 199
ufsboot программа 31, 88-89
ufsdump команда 397-403
ufsrestore команда 403-406
UID 268-269
umaskкоманда 273-274
umount команда 211, 238, 571
umountall команда 211
unset команда 433
unshare команда 558
until цикл 430
usedisk ключевое слово 720-721
user_attr, расширенная БД
атрибутов пользователей 672 673
useradd команда 166-167
userdel команда 168
usermod команда 167
168, 669, 673
V
VFS 184
volcheck команда 245
volcopy команда 229-230
void демон 241
void.conf действия 243, 245
Volume Manager 240-250
CD-ROM 254
GUI менеджера сменных носителей 246-248
команды 245
локализация проблем 247 ссылки 241
VTOC 185
W
WAN 443
Web Start
инсталляция 799-811
минимальные требования 799 Окно Welcome 805
WebNFS 563
Предметный указатель 877
URL 565
получение доступа 564-565
while цикл 430
who команда 282-283
whodo команда 284-285
Workspace Manager 820
Wrappers, TCP 287
X
Serial Ports инструмент 658- 659 пользователи 655-656 применение 653
NIS 604 конфигурирование главного сервера 611-619 подчиненные серверы 623-624 установка клиентов 622-623
Xservers файл 814-816
Xsession.d 816
NIS+ 624
структура пространства имен
Y
625
таблицы 625-627
ypcatсинтаксис 610, 612
ypinit команда 612, 617-618, 623-
624
ypstart команда 612, 624
ypstop команда 612, 624
ypwhich команда
610, 612, 634, 635
Z
RBAC 666-667, 673
SMC 643, 644-653
Solstice DiskSuite 533-535
StorEdge Volume Manager 535-
537
виртуальный том 532
планирование доменов 610-611
принтеры 362
доступ 362-363
Z-оболочка 419 zcatкоманда 148
очереди 366-369
проверка статуса 365-366
создание классов 364-365
удаление 362-363
службы имен 603-604
управление электропитанием 510
A
учетные записи 165-168
Адресация, IP (IPv4) 455
Аварийный дамп 484
Автомонти рование
демон 574-575
команды 574
применение 587-588
Авторизация
auth_attr, БД 673-675
NIS+ 627-629
Администрирование
/etc файлы 604
AdminSuite 643
Computers/Networks инструмент 656
Log Viewer инструмент 660 Mounts/Shares инструмент 657-
658
класс А сетей 456 класс В сетей 456 класс С сетей 456 класс D сетей 456 класс Е сетей 456 планирование 457
Активные процессы, планирование 311, 327
Аппаратное обеспечение аппаратный уровень 445 принтеры 353
Ethernet-соединение 354 конфигурирование 353 параллельное соединение 354 последовательное соединение 354 сети 450
> 9 2-300
NIC 450
маршрутизаторы 452
хабы 451-452
хосты 450
Аргументы
Ipadmin 364, 368
Ipmove 362
prstat команда 319
Архитектура
OpenBoot 65-66
неподдерживаемая Sun4c 110
Атрибуты, процессы 312
Аудит пользователей 280-285
Аутентификация
DES 629
NIS+ 627
Базы данных
NIS 607-609
авторизаций (auth_attr) 673-675 атрибутов выполнения (exec_attr) 677-679
атрибутов пользователей (user_attr) 672-673,
источники 621
исходные файлы 616
профилей прав доступа (prof_attr) 675-677
БД программных продуктов 141 Бездисковый клиент 496-497 Безопасность
ASET 294
модемы 287-288 сети 285
/.rhosts файл 289 /etc/default/login 287, 291 /etc/hosts.equiv файл 288 FTP с ограничением доступа 289
TCP Wrappers 287 брандмауэры 285 доверяемый хост 288 модемы 287-288 службы сетевой защиты 285286
системы
командные процессоры ограниченного доступа 271 оболочки ограниченного доступа 271
управление доступом 266 хранение учетных записей пользователей 268
суперпользователи 291
SUDO 293-294
мониторинг 292
ограничение доступа 291-292 файлы
ACL 274-278
GID/UID 268-269
setgid полномочия 279-280
setuid полномочия 279-280
sticky-бит 274
umask по умолчанию 274
управление доступом 271-273
установка маршрута 278-279
Блок хранения 200
Блоки
загрузочный 199
индексный дескриптор 200
размер логического блока 202203
размеры 251
свободный 200
суперблок 199
хранения 200
Большие файловой системы 234
Брандмауэры 285
В
Ввод/вывод 123-124
Включение
WebNFS доступ 563
протоколирования служб сервера NFS 562
питания 31
Внесение изменений в окне Disk
Modification 810
Вопросы экзаменационные 782 Восстановление
/ корневая файловая система 407-408
/usr файловая система 407-408
copy-in 393-394
утилиты 388, 403-405
файлы 393-394
Время
at 334
crontab 331-332
серверы 727
экзамены 780-781
Время дня 63
Встроенные команды 424
Вторичные файлы своппинга 485
Выбор
просмотр родословной процесса 322-323
Вывод
swap-l 482-483
swap-s 483
Выделение
размеры фрагментов 202
Выполнение
процессы 311
планирование 327
приоритеты 328-331
Г
Геометрия дисков 184
контроллеры 184
метки 185
списки дефектов 184-185
таблицы разделов 185
Главные номера устройств 528-529
Главные серверы
NIS 611
копии 605
Главные таблицы 576
Главные файлы group, создание
614-615
Главные файлы hosts, создание
615-616
Главные файлы passwd, создание
613-614
Глобальные переменные 422
Графический интерфейса
пользователя 246-247, 510
Группы
учетные записи
внесение изменений 168-169
добавление 164, 168 удаление 169
д
дампы,планирование 397-398
Деинкапсуляция 448
Действия
СОЕ 825-827
void.conf 243, 245
команды повторения действий
429
for цикл 429
until цикл 430
while цикл 430
Демонтирование файловой системы
238
Демоны
automountd 574-575
devfsadmd 527
inetd 286
Ipsched 356, 371
mountd 458.
NFS 553
NIS 611
sprayd 458
syslogd 336-337
void 241
службы печати LP 352
Дерево устройство 69-70
Дискеты, конфигурирование 697
Диски
Solstice DiskSuite 533-535
StorEdge Volume Manager 535
537
геометрия 184
контроллеры 184
метка 185
списки дефектов 184-185
таблицы разделов 185
разделы
на нескольких дисках 120
планирование 119-120
системы хранения 117-120
употребление дискового
пространства квоты 215 просмотр 213-214
управление виртуальными томами 532
части 187-188
Free Hog 193
восстановление разделов 195— 196
информация по конфигурации 189-190
логические тома 196 модифицирование разделов 193-195
создание 190-193
Дисковые файловые системы 185
Дистанционные серверы, применение 644, 655
Дистанционные файловые системы, монтирование 558-562
Добавление
групп 164, 168
сценариев 44
учетных записей пользователей
158-163, 166-167
Домены
NIS 610-611
ключевые слова службы имен 724-725
Дополнительная область своппинга, добавление 485-488
Дополнительные номера устройств
528, 530
Доступ
RBAC 667-669, 673-674
root 291
WebNFS
URL 565
разрешение 564-565
к crontab-файлам 333-334
к среде Open Boot 64
к файлам
ACL 274-278
setgid 279-280
setuid 279-280
Sticky-бит 274
umask по умолчанию 274
управление 271-273
установка маршрута 278-279
принтеры
ограничения 367-369 управление 362-366 системы
командный процессор ограниченного доступа 271 сохранение учетной записи пользователя 268-270 управление 266-267 суперпользователи
SUDO 293-294 безопасность 291 мониторинг 292 ограничение доступа с привилегиями суперпользовате 291-292
Драйверы устройств 121
Загрузка системы 30 включение питания 31 фаза IN IT 39 команда загрузки 32-35 OpenBoot 63-66
команды 73-75, 80
Загрузочный блок 31, 89
Загрузочный сервер 690-691, 694- 695
Задания в очереди 335 удаление 336
Закрытие системы 48, 49-50
Заплат администрирование 147
Заплаты 147
инсталляция 148-149
удаление 150
Запросы печати модифицирование 370-371 отмена 367 принятие/отклонение 369
Запуск
NIS 612, 618
инсталляции 126-127 клиентов 733-734
приложения СОЕ 821 реконфигурирования 524 служб 44
Защита
NFS 557-558
И
Идентификатор процесса 313
Иерархическая структура
пространства имен 625
Имена
домены 724-725
логические устройства 122-123, 530-531
образцы устройств 122
полные имена устройств (PROM) 69-70
службы 173
физические устройства 121-122, 518-519
Имена экземпляров 525-526
Имя образца устройства 122
Имя физического устройства 121
122, 518-519
Инициализация
конфигурирование 169
настройка под требования
пользователя 170-171
подчиненные серверы 623-624
ядра 32, 90-92
Инкапсуляция 448
Инсталляционный сервер 694-696
Инсталляция
JumpStart
backup_media 709-710, 718
cluster 712
dontuse 713
filesys 713-715
geo 716
install_type 715
isa_bits 716
layout_constraint 717-718
locale 718-719
num_clients 719
package 719
partitioning 719-720
root_device 720
sysidcfg файлы 723-724
system_type 720
usedisk 720
запуск клиентов 733-734 клиенты 728-729 конфигурирование 694695, 697, 728-729 начальные/конечные сценарии 707-708
проверка файлов классов 721— 723
создание файлов классов 708709
тестирование файлов классов 721-723
файл правил 698-706
Web Start 799-811
дисковые системы хранения 117 драйверы устройств 121
запуск 126-127
имен образцов 122
имена логических устройств 123
имена физических устройств 121-122
комплект носителей 113 конфигурация выбранной
системы 113-114
методы 124
JumpStart 124
WebStart 125
интерактивный метод 124 пользовательский JumpStart 125
через сеть 126
неподдерживаемые архитектуры 110
операционные системы 111 подготовка 109-110
программа инсталляции 126 программное обеспечение
кластеры 501-502 программы интерактивной инсталляции 500-509
разделы
на нескольких дисках 120 планирование 119-120
серверы
Solaris 497
минимальные требования 498 требования 111
файлы блочных устройств 123— 124
файлы символьных устройств 123-124
Инструменты
AdminSuite 643
Computers/Networks 656
Log Viewer 660
Mounts/Shares 657-658 Serial Ports 658-659 пользователи 655-656 применение 653
CDE Process Manager 320
dtappgather 818
Admintool добавление учетных записей пользователей 160-161 модификация учетных записей пользователей 164 удаление учетных записей пользователей 163
командная строка добавление групп 168 добавление учетных записей пользователей 166 модификация записей групп 168
модификация учетных записей пользователей 167
удаление групп 169 удаление учетных записей пользователей 168
Менеджер процессов CDE 320323
управление электропитанием 509 отключение 510
утилита format модифицирование разделов 193-195
создание частей 190-193 Интерактивная прграмма
инсталляции 124, 500-509
Интерфейсы ABI 139 FDDI 449-450 Open Boot 66 help 67
монитор с ограниченными возможностями 66-67 монитор Forth 67 пользователь за системной
консолью 66
программа инсталляции Solaris 126
Информация NIS 606-611
Информация о системе 82-83
К
Кавычки 420-421
Кадр 446
Канальный уровень 444
Каталоги
восстановление 393, 406
домашние 169, 173
исходные 169, 173
пакетов программного обеспечения 147
резервное копирование
393, 397, 402
служба печати LP 351
спул 141
файловые системы 183
Квоты
дисковое пространство 215
файловые системы 215
Класс А сетей 456
Класс В сетей 456
Класс С сетей 456
Класс D сетей 456
Класс Е сетей 456
Класса файл
backup_media 709-710
boot_device 710-711
client_arch 711
client_root 711
client_swap 712 cluster 712-713 dontuse 713 filesys 713-715 geo 716
install_type 715-716
isa_bits 716-717
layout_constraint 717-718
locale 718-719 num_clients 719 package 719 partitioning 719-720 root_device 720 system_type 720 usedisk 720-721 создание 708-709 тестирование 721-723 Классы
главные/дополнительные номера устройств 528-530
Кластеры 111-113, 712-713
Клиенты 497-498 arch 711 AutoClient 115-116 JavaStation 115, 116 JumpStart 687-690 NFS 550 root 720 автономная система 116-117 бездисковый клиент 115, 116, 711
запуск 733-734 конфигурирование 728-730 область своппинга 712 печать 357-358
Командная строка монтирование файловых систем 211
программное обеспечение 139 Командные процессоры ограниченного доступа 271 Команды
.enet-addr 82
.version 82 /sbin/init 50 /usr/sbin/halt 51 /usr/sbin/poweroff 51 /usr/sbin/reboot 51 /usr/sbin/shutdown 49-50 /usr/sbin/swap 482 accept 370 adb 95
add_install_client 728 add_to_install_server 695 aset 294
at 334-335 at-I 335 atq 335 banner 82 boot 32-35, 86-89 cachefsstat 569, 570 case 428 cfsadmin 567, 571 check 706 chmod 273 cpio 391-394 crontab 333 dd 390-391 devalias 72 devfsadm 526
df 204, 213-214, 250, 252 df-k 478, 487 dfmounts 561 dfshares 557
dmesg 519, 522 domainname 634-635 du 214-215
echo 422, 432
eeprom 77
env 422, 432
export 422
fdformat 248-249, 697
find 279-280, 393
fmthard 195-196 for 429
format 190-193
fsck 206-209, 250-251
fstyp 233 fuser 239
getfacl 277
groupadd 168
groupdel 169
groupmod 168
gzcat 148
halt 51, 127
help 67-68 if 426
installboot 408 kill 325-327 labelit 229 last 285
logins 280-281
Ip 357, 367, 371
reboot---r 524
Ipadmin 357, 363, 364, 368
reject 369-370
Ipmove 357
renice 330
Ipr 357
repquota 215
Ipstat 357
rm 489
Is 476
rm_install_client 730
make 612, 618
roleadd 668, 673, 677
mkdir 490
roledel 671
mkfile 487
rolemod 669-671
mkfs 200, 226-228, 232
roles 669
mount 211, 213, 234-
sdtprocess 320
236, 477, 558-560, 567-569
set 424, 432
mountall 211
setenv 75-76
newfs 200-202, 209, 407, 486
setfacl 275, 277-278
nice 329-330
setup_install_server 693, 695, 73C
nvalias 78
share 554-556
nvedit 78
shareall 556
nvunalias 78
show-devs 70, 518
patchadd 147, 148-149
showmount 576
patchrm 147, 150
showrev 147
pax 394-397
shutdown 49
pfinstall 723
sort 214-215
pgrep 315-316
su 273, 669
pkgadd 139, 140, 148-149
sudo 293-294
pkgask 139
swap-a 488
pkgchk 139
swap-d 489
pkginfo 139, 140, 142
swap-I 482
pkg param 139, 140, 147
swap-s 483
pkgrm 139, 141
sync 199
pkill 327
sysdef 519, 520
poweroff 51
tapes 409
printenv 75-76
tar 388-389
priocntl 329, 330-331
TCP/IP 459
probe-ide 81, 98
finger 461
probe-scsi 81, 98
ftp 460
probe-scsi-all 81, 98
ping 461-463
prodreg 144
rep 460
profiles 677
rexec 461
prstat 317, 319-320
rlogin 459
prtconf 479, 519, 520
rsh 461
prtvtoc 195-196, 735
rup 461
ps 313, 482
rwho 461
psrinfo 320
spray 463
ptree 323
telnet 459
pwconv 269
touch 282, 523
quota 215
tunefs 204, 205, 231-232
re-preinstall 125
ufsdump 397-403
ufsrestore 403-406
umask 273-274
umount 211, 238, 571
umountall 211
unset 433
unshare 558
unzip 148
useradd 166-167
userdel 168
usermod 167-168, 669, 673
volcheck 245
volcopy 229-230
who 282-283
whodo 284-285
ypcat 610, 612
ypinit 612, 617-618, 623-624
ypstart 612, 624
ypstop 612, 624
ypwhich 610, 612, 634, 635
zcat 148
доступа к файлу 272-273
информации об устройствах 519
Меню Edit
Add 160, 165
Delete 163
Modify 164
повторения действий 429
for 429
until 430
while 430
статистики CacheFS 571
Команды повторения действий 429
for цикл 429
until цикл 430
while цикл 430
Компоненты
Jumpstart 688-689
RBAC 671-672
auth_attr, база данных 673-675 exec_attr, база данных 677-679 prof_attr, база данных 675-677
user_attr, база данных 672-673
Конечные сценарии 707-708
Конструирование файловых систем
226-228
Контроллеры 184
Конфигурационный сервер 696
Конфигурация
СОЕ
$HOME/.dtprofile сценарий 816 Xsession.d сценарий 816-817 запуск Login Manager 813-814 конфигурирование маршрутов поиска файлов рабочего стола 817-818
менеджер регистрации SISSIS
менеджер сеансов 815-821 обзор Login Manager 814-815 останов Login Manager 814 сборка доступных приложений 818
crontab 331-333
JumpStart 687-689
клиенты 728-730
службы имен 728
NFS 553
NIS 604-620
NIS+ 624-629
NVRAM 75
домашний каталог 169, 173
инсталляционные серверы 694- 696
кластеры 111-113
косвенные таблицы 584-587 маршруты поиска файлов
рабочего стола 817-818 область своппинга 484-485 переменные консоли 83-84 последовательный порт 85 принтеры
классы 364-365
очереди 366-369 по умолчанию 372 проверка статуса 365-366
сервер службы времени 727
серверы 690
JumpStart 688 конфигурирование 694-696 подчиненные серверы 623-624 системная локаль 727 терминал 727 файловые системы 558-562 часовой пояс 727
Копирование
copy-out режим 393
файлы 393
Косвенные таблицы 584-587
Л
Локализация проблем менеджер томов 247 сети 464-465
Локальные переменные 422
Локальные серверы 644-645, 654
М
Маршрутизаторы 452 мастера, Add User 655-656 Менеджер приложений 827-829 Менеджер процессов СОЕ 320-323
Менеджер рабочих областей 820
Менеджер регистрации 813-815
запуск 813
обзор 814-815
останов 814
Менеджер сеансов 815-816
Менеджер томов 240-250
CD-ROM 254
GUI менеджера сменных носителей 246-247 каталоги 240
команды 245
локализация проблем 247
ссылки 240
Менеджер файлов 246
Метаустройства 533-535
Метки 185, 190-191
Методы
JumpStart 124-125
Web Start 125
интерактивный 124
пользовательский JumpStart 125
через сеть 126
Минимально свободное пространство 203-204
Минимальные требования серверы 498
Многопроцессорные системы 64
Модификация
ACL 277-278
группы 168-169
переменные конфигурации 75
пользователи 160
проверка 164, 167
учетная запись 158-159
приоритеты 329-331
Мониторинг
доступа с привилегиями
суперпользователя 292-293
использования ресурсов 284
кэша 570-572
пользователей 282-285
Монтирование
/etc/mnttab 237-238
дистанционные файловые
системы 558-562
файловые системы 209-
211, 234-237
отображение 211-212
с большими файлами 212-213 с разрешенным
протоколированием UFS 213
Назначение главных/
дополнительных номеров устройств 528-530
Наименования
DNS 603
NIS 604
конфигурирование главных
серверов 611-619
установка клиентов 622-623
NIS+ 624
структура пространства имен 625
таблицы 625-627
имена логических устройств 530- 531
имена физических устройств 518-519
имена экземпляров 525-526
планирование доменов 610-611 подчиненные серверы 623-624 службы имен 603-604
Настройка под требования пользователя
инсталляция 687-690
файлы инициализации 169-170 рабочие области 820-821, 823
824
Начальные сценарии 707-708
Носитель
перемещаемый
GUI 246-247
менеджер томов 240-241
монтирования CD-ROM 254 проблемы 247-249
Область "горячего" резервирования 533-534
Область своппинга 480
Оболочки
встроенные команды 424 команды повторения действий 429
for цикл 429
until цикл 430
while цикл 430
настройка под требования пользователя 170-172
ограниченные версии оболочек 419
сценарий 417
выбор 418
кавычки 420-421
переменные Bourne 420 просмотр значений 422, 432
разделители 421
условные выражения 425
if 426
test команда 426-427
true/false программы 425
двойной амперсанд (&&) 425
оператор case 428
функции 430-431
Оболочки ограниченного доступа
271
Образец устройства 122
Ограничения
FTP 289
доступа с привилегиями суперпользователя 291-292
оболочки 271
Ограниченная оболочка Korn 419
Однопроцессорные системы 63 Окна
Add Group 165
Add Local Printer 360
Add User 161
Groups 165
Modify Printer 373
Modify User 164
Process Manager 321
добавление программного обеспечения 142-143
64-Bit Selection 808
Additional Products 807
Confirm Information 804
Date and Time 803
Default Router 802
DHCP 800
Disk Modification 809
Disk Selection 808
Gathering Disk Space Require
ments 809
Geographic Region 803
Host Name 800
Initializing 806
Insert CD 805
Installing 811
IP Address 801
IPv6 801
Lay Out File Systems 809
Name Service 802
Netmask 801
Network Connectivity 800
Proxy Server Configuration 804
Ready to Install 810
Root Password 804
Select Software Localizations 806
Select Solaris Software Group 808
Select System Locale 807
Select Type of Install 806
Show Ancestry 323
Specify Media 805
TimeZone 803
Web Start под названием Wel
come 805
Оптимизация файловой системы
231
Опции
mount команда 558-560, 567-569
roleadd 668
rolemod 669, 671
Особенности управления
электропитанием, отключение
510-511
Останов
системы для восстановления 52
останов служб 44
Отклонение запросов на печать
369-370
Отключение возможности
управления электропитанием
510-511
Отражение изменений в окне Lay
Out File Systems 810
Очереди
принтеры 366-367
Очистка файлов протоколов 671
П
Пакетная обработка 331
конфигурирование crontab 331—
332
планироание at 334
Пакеты
программного обеспечения 138
Admintool 139
добавление 139, 141
инсталляция 139
каталоги спула 141
листинг 140, 144, 146
проверка 146
реестр 144-145
удаление 140-141
Память, swapfs 479, 484
Параллельное соединение 354
Параметры
special 242
symname 242
Пароли
root 726
исходные файлы 613
Передняя панель 821-822
Переименование рабочей области
821, 823
Переключатели 619-622 Переменные
NVRAM 73-75
OpenBoot 73 глобальные 422 командный процессор Bourne 420-424 кавычки 420-421, 422 просмотр значений 422, 432 разделители 421 конфигурация консоли 83-84 конфигурация портов 84 локальные 422 модификация 75
Печать аппаратное обеспечение 353
Ethernet-соединение 354 конфигурирование 353 параллельное соединение 354 последовательное соединение 354 клиенты 357-359 отправка 367 планировщик печати 371-372 программное обеспечение 350 серверы 357-358 службы 350 демоны 352 каталоги 351 спулеры 351-352 удаление 362
Планирование at команда 334-335 IP-адресации 457 дампов 397-398 доменов 610-611 планировщика печати 371-372 процессов 327 сетей 452
По умолчанию выделение области своппинга 484
принтеры 372 Подготовка
пользовательская инсталляция JumpStart 689
Подготовка к инсталляции системы 498-499
Поддержка
конечного пользователя 112
платформ 109
системы разработчика 112
ядра системы 112
Поддержка системы конечного пользователя 112
Поддержка системы разработчика 112
Полномочия
ACL 274-278
ASET 294
setgid 279-280
setuid 279-280
доступа к каталогу 273
доступа к файлу 273
Полные имена устройств (PROM) 69-70
Полный дистрибутив системы 112
Пользователи
GID 268-269
UID 268-269
аудит 280-285
пустые пароли 281
службы имен 603-604
среда 170
учетные записи
добавление 160-161
модификация 164
удаление 163
управление из командной
строки 165-168
хранение 268
файлы инициализации 170-171 конфигурирование 169 настройка под требования пользователей 170-171
Пользовательский метод Jumpstart 125
Поля
auth_attr 674
exec_attr 678
prof_attr 677
user_attr 672-673
записи пользователя 161-163
косвенной таблицы 585 процессы 313-314 прямой таблицы 580-581 роли 647-650, 662
поля файла inittab 39 Порты
Serial Ports инструмент 658-659 переменные конфигурации 84
Последовательное соединение 354 Представительский уровень 445 Прикладной уровень 445 Приложения
StorEdge Volume Manager 535- 537
принтеры 354-358 службы имен 603-604
Применение
AdminSuite 653 RBAC 667-669 SMC 644-645 WebNFS 563-564
Принтеры
Ethernet-соединения 354 классы 364-365 модификация 372-374 очереди 366-369 параллельное соединение 354 по умолчанию 372 последовательное соединение 354
программное обеспечение 350 статус 365 типы 361 управление 362-364 утилиты 352
Принятие запросов на печать 369- 370
Принятые по умолчанию файловые системы Solaris 197- 198
Приоритеты 328 приостановка - восстановление 509
Проверка ACL 277 заданий в очереди 335-336
пользовательских сред 171-172 пустых паролей 281 согласованности кэша 573
Программное обеспечение заплаты 147 инсталляция 148-149 удаление 150 интерактивная программа инсталляции 500-509 пакеты 111, 138
Admintool 140, 142-144 добавление 139, 140-141 инсталляция 139 каталоги спула 141 листинг 140, 144, 146 проверка 146 реестр 144-145 удаление 140-141 принтеры 350, 354-355
Программное обеспечение печати BSD 355-356
Программное обеспечение печати SVR4 356
Просмотр pgrep команда 315-316 prstat команда 312, 317, 319-320 значений 421, 432 имен физическоих устройств 121 процессов 313, 322
Протоколирование
служб сервера NFS 562 Протоколы
FTP 552-553
HTTP 552
LDAP 631-632
TCP 551-552
UDP 551-552 сети 443
Ethernet 448-449 FDDI 449-450 ISO/OSI 443-444 TCP/IP 445-448 инкапсуляция 448 пакеты 448
Профили 675
Процесс обучения 777
Процессы
pgrep команда 315
prstat команда 317, 319-320 инсталляции Solaris 126-128 менеджер процессов среды СОЕ 320-323
пакетная обработка 331 Конфигурирование crontab 331-332
планирование 327
планирование at 334 приоритеты 328-331 просмотр 312-315 своппер 38 сигналы 323-325 системный журнал 336-338 Прямые таблицы 580-584 Псевдонимы 72-73
Р
Рабочие области, настройка 823- 824
Разбивка диска на разделы 191
Разделение процессов 331 конфигурирование crontab 331- 333
планирование at 334 Разделители, Bourne 421 Разделы 118
восстановление 195-196 ключевые слова 719-720 модифицирование 193-195 планирование 187-188 разбивка 190-191
Размеры блоков 251 каталогов 214-215 логических блоков 202-203 области своппинга 481 разделов 118-119 фрагментов 202, 203
Расслоение 188
Расширенная база данных атрибутов пользователей (user_attr) 672-673
Регистрация
/etc/default/login файл 291
logins команда 281 проверка 282-285
Реестр программных продуктов 144-145
Режимы
pass 394
pax 394
sticky-бит 274
копирования/восстановления 393
Резервирование
носители информации 709-710
Резервное копирование носители информации 387-388 утилиты 388
cpio команда 391-394
ddкоманда 390-391
рахкоманда 394-397
tar команда 388-390 ufsdump команда 397-403 ufsrestore команда 403-406
Ресурсы, мониторинг 481-482
Родословная процесса 322-323
Роли выбранной поля, добавление 647-650
С
Свободные блоки 200
Сеансовый уровень 444
Серверы 496-497, 689
Login Manager 813
запуск 813
обзор 814-815 останов 814
NFS 550
NIS 605
конфигурирование 611619, 623-624
хосты 606
SMC 644, 645
загрузочный 690, 693-694 инсталляционный 694-696 клиенты 728-729
конфигурационный 696-697 копии 605
минимальные требования 498 печати 357-358
подчиненные 623-624
Сертификат сетевого администратора 842-843
Сертификат системного администратора 842
Сертификация 842
сертифицированный сетевой администратор фирмы Sun 842-843
сертифицированный системный администратор фирмы Sun 12, 19, 842
экзамены 843
Сетевой уровень 444
Сети
IP адресация (IPv4) 455
класс А сетей 456
класс В сетей 456
класс С сетей 456
класс Е сетей 456
класс D сетей 456
планирование 457
TCP/IP команды 459-463
finger 461
ftp 460
ping 461-463
rep 460
rexec 461
rlogin 459 rsh 461 rup 461 rwho 461 spray 463 telnet 459
аппаратные средства 450
NIC 450
маршрутизатор 452
хабы 451-452
хосты 450-451
безопасность
/.rhosts файл 289
/etc/default/login 287, 291
/etc/hosts.equiv файл 288 FTP с ограничением доступа 289
NIS+ 627
TCP Wrappers 287
брандмауэры 285 доверяемый хост 288 модемы 287-288
службы сетевой защиты 285286
ключевые слова 725-726 конфигурирование 453
/etc/defaultdomain 453 /etc/defaultrouter 455 /etc/hostname.interface 453 /etc/inet/hosts 453-454 /etc/nodename 453 модели 443
ISO/OSI 443-444
TCP/IP 445-448 планирование 452 поддержка 464-465 протоколы 443
Ethernet 448-449
FDDI 449-450
ISO/OSI 443
TCP/IP 445-448 инкапсуляция 448 пакет 448 служба имен 458-459 службы имен 603-604 сопровождение 464-465 топологии 443
LAN 443
WAN 443
Computers/Networks инструмент 656
Сигналы 323-325 Системы восстанавление 403 загрузка 30
PROM/фаза программной загрузки 30 включение питания 31 инициализация ядра 32 фаза INIT 39 резервное копирование 388 информация системной идентификации 498 службы имен 603
Служба печати LP демоны 356
каталоги 351
спулеры 351-352
Службы
DNS 629-631
NIS 604
конфигурирование главных серверов 611-619
подчиненные серверы 623-624 установка клиентов NIS 622623
NIS+ 624
структура пространства имен 625
таблицы 625-627
печати
Ethernet-соединение 354
демоны 356 каталоги 351 конфигурирование аппаратных средств 353 конфигурирование
программного обеспечения 354-355
параллельное соединение 354 последовательное соединение 354
спулер 351-352
планирования доменов 610-611
сетей 285-286, 457-458
Службы имен 603-604
JumpStart 724-725
ключевые слова 724-725
переключатели 619-622
Советы
обучение 778-779
экзаменационная сессия 782 Совместное использование
файловые системы 553-554 Согласованность кэша 573 Соглашения
по имени логического устройства 122-123
по имени образца устройства 122 по имени физического устройства 121
Соединения
принтеры 352
Ethernet 354
параллельное 354
последовательное 354
Создание
TMPFS 477
вторичные файлы своппинга 485 главные файлы group 614-615 главные файлы hosts 615-616 главные файлы passwd 613-614 кзша 566-570
роли 667-668
Состояния запуска системы 36-38
Состояния, процессы 312-313
Списки дефектов 184
Сравнение
большие/малые файловые файлы 234
Среды
пользователей 171
Ссылки, менеджер томов 240-241
Статус
поиск службы имен 621-622
Суперпользователь 291
SUDO 293-294
мониторинг 292
ограничение доступа 291-292
Сценариев управления запуском
40-43
Сценарии
гс 40-43
выполнение 417, 433
оболочки
настройка под требования
пользователя 170-172
переменные Bourne 420
кавычки 420-421
просмотр значений 422, 432
разделители 421
управления запуском 40-43
Сценарий
запуска 286-287
Таблицы AutoFS 576 главные 576-580
косвенные 584-587 прямые 580-584
Тестирование предварительное 779-780
Типы метаустройства 533-534 системы 497 файловые системы 185 виртуальные 186 дисковые 185 сетевые 186
Типы данных 827
Топологии 443
LAN 443
WAN 443
Транспортный уровень 444 Требования
Web Start 799 инсталляция 109-110 минимальные 111 неподдерживаемые архитектуры 110 разделы 120-121 серверы 498
Удаление
групп 169
кзша 572-573
принтера 362-363
программного обеспечения
заплаты 150
пакета 142-143
учетной записи пользователя
163-164, 168
учетных записей ролей 671
файла своппинга 489
Управление
/etc 604
AdminSuite 643
Computers/Networks инструмент
656
Log Viewer инструмент 660 Mounts/Shares инструмент 657- 658
Serial Ports инструмент 658-
659
пользователи 655-656
применение 653
NIS 604
конфигурирование главных
серверов 611-619
подчиненные серверы 623-624 установка клиентов 622-623
NIS+ 624
структура пространства имен 625
таблицы 625-627
RBAC 666-669
SMC 643, 644-653
Solstice DiskSuite 533-535
StorEdge Volume Manager 535
537
виртуальный том 532
планирование доменов 610-611
принтеры
доступ 362-363
очереди 366-369
проверка статуса 365-366
создание классов 364-365
удаление 362-363
службы имен 603-604
учетными записями 165-169
Управление электропитанием устройств 509
Уровни
ISO/OSI 443-444
TCP/IP 445
аппаратные средства 450-452
аппаратный 445
прикладной 447
сетевой интерфейс 443
Условные выражения 425
Bourne оболочка 420
case оператор 428
if 426
test команда 426
true/false программы 425
двойной амперсанд (&&) 425
Устройства
Solstice DiskSuite 533-535
StorEdge Volume Manager 535
537
автоконфигурация устройств 523-525, 528
главные/дополнительные номера 528
драйверы 121, 518
имена логических устройств 530
имена физических устройств 518
имена экземпляров 525
информационные команды 519— 523
каталоги 531
логические имена 122-123, 123
магнитная лента 387-388
размещение 123
управление виртуальными томами 532
файлы блочных устройств 123— 124, 531-532
файлы низкоуровневых устройств 531-532
файлы символьных устройств 123
физические имена 121-122
Утилиты
AdminSuite 643
Computers/Networks 656
Log Viewer 660
Mounts/Shares 657-658
Serial Ports 658-659 пользователи 655-656 применение 653
ASET 294
CDE Process Manager 320-323
dtappgather 818
labelit 229
TCP Wrappers 287
восстановление
ufsrestore 403-406
принтеры 352
резервное копирование
cpio 391-394
dd 390-391
pax 394-397
tar 388-390
ufsdump 397-403
Учетные записи
пользователи
внесение 167-168
внесение изменений 164, 167168
добавление 158-163, 166-167
удаление 163-164, 168
Фазы
fsck команды 206
INIT 39
аппаратной загрузки 31
инсталляции 108
конфигурирование 108 постинсталляционные задачи 108
собственно инсталляция 108
программной загрузки 31
Файл правил 698-706
начальные/конечные сценарии
707-708
проверка 706
Файловая система файловых дескрипторов 478
Файловые системы
/etc/mnttab файл 237-238
AutoFS 574-575, 587
CacheFS 566
мониторинг кэша 570-572
проверка согласованности 573 создание кэша 566-570 удаление кэша 572-573
fdfs 478
labelit команда 229
Mounts/Shares инструмент 657
proofs 475
swapfs 479
TMPFS 476-477
UFS 197
блок хранения 200
загрузочный блок 199
индексные дескрипторы 200
свободные блоки 200
создание 200-202
суперблок 199
volcopy команда 229-230
большие файловые системы 234 демонтирование 238, 239-240
дистанционное монтирование 558-562
конструирование 226-228 монтирование 234-237 настройка 230-231 операции 205
восстановление 206-207 монтирование 209-211 монтирование с большими файлами 212-213 отображение смонтированных файловых систем 211-212 протоколирования UFS 213 синхронизация 205-206 оптимизация 231 получение информации 250-251 пользовательские параметры 202
Gap 204 минимально свободное пространство 203-204 размеры логических блоков 202-203 размеры фрагментов 203 тип оптимизаций 205 псевдо 474 типы 185 виртуальные 186 Дисковые системы 185 сетевые 186 употребление дискового пространства квоты 215 просмотр 213-214 Файлы /etc 604 /etc/bootparams 692 /etc/default/login 287, 291 /etc/defaultdomain 453 /etc/defaultrouter 455 /etc/dfs/dfstab 692 /etc/ethers 691-692 /etc/group 270-271 /etc/hostname.interface 453 /etc/hosts 692 /etc/hosts.equiv 288 /etc/inet/hosts 453-454 /etc/inittab 39-40
/etc/mnttab 212, 237-238 /etc/nodename 453 /etc/passwd 268-269 /etc/path_to_inst 525-526 /etc/shadow 269
/etc/system 36
/etc/vfstab 210-211
/reconfigure 523-524
/tftpboot 692
ACL
копирование 277 модификация 277-278 удаление 278
ASET 294
crontab 331-334
sysidcfg 723-724 безопасность
ACL 274-278
GID/UID 268-269
setgid полномочия 279-280 setuid полномочия 279-280 sticky-бит 274
umask no умолчанию 274 управление доступом 271-273 установка маршрута 278-279
вторичные файлы своппинга 485 главные group 614-615 главные hosts 615-616
главные passwd 613-614 исходные 616
классов
backup_media 709-710 boot_device 710-711 client_arch 711
client_root 711
client_swap 712 cluster 712-713 dontuse 713 filesys 713-715 geo 716
install_type 715-716
isa_bits 716-717
layout_constraint 717-718 locale 718-719
num_clients 719 package 719 partitioning 719-720
root_device 720
system_type 720 usedisk 720-725 создание 708-709 тестирование 721-723 оболочки
выбор 418
выполнение 417, 433
кавычки 420-421
переменные Bourne 420
просмотр значений 422
разделители 421
правила 698-706
начальный/конечный сценарии 707-708
проверка 706-707
Физическая защита 265
Физическая память, swapfs 479-
483
Физический уровень 444
Форматирование
диска 190-191
пакетов программного обеспечения 111
утилита 190-193
Фрагменты 202, 203
X
Хабы 451
Хосты 450-451
доверяемые 288
определение 606
Хранение
информация служб имен 606- 610
учетные записи пользователей 268
Ч
Часовой пояс, конфигурирование 727
Части
диска 187-188
Free Hog 193
восстановление раздел]Ь 195-
196
информация по конфигурации 189-190
логические тома 196 модифицирования разделов 193-195
создание 190-193
дисковые системы хранения 117- 119
Экзамены
очки(баллы) 780
предварительное тестирование 779-780
Процесс обучения 777
советы по обучению 778-779
Ядра
OpenBoot 89-96 загрузка 89-90 инициализация 32
УДК 004.45
ББК 32.973.26-018.1
К 98 Бшл Келюнс
К 98 Solaris 8: Сертиф1кащя системного адмппстратора. Перекл. з англ. /Бшл Келкшс. - К.: ТОВ «ТВД «ДС», 2003. - 928 с.
ISBN 966-7992-20-9
Компашею Sun Microsystems були розроблеш програми сертифшацп, як! дозво- ляють ощнювати реальш знания фах!вщв у галуз! системного адмппстрування Solaris 8 з отриманням м!жнародного сертиф!ката.
У це видання увшшли два курси: перший (310-011) з яких дозволяе отримати знания й навички ефективного рпиення основоположних задач адмш1стрування, а в другому (310-012), поглибленому, освплюються бшьш складш питания адмшют- рування ОС Solaris, а саме, обслуговування нескладних мереж та пщтримка функ- цюнального програмного забезпечення.
Особлив1сть цього видання у можливост! використовувати його як основу для навчання фах!вщв у галуз! системного адмппстрування Solaris 9.
ББК 32.973.26-018.1
Наукове видання
Был Келюнс
Solaris 8: Сертифжащя системного адмппстратора.
Завщуючий редакщею С. М. Козлов
Науковий редактор С.Л. Скловська
Верстка Е. В. Кривич
Головний дизайнер О.А.Шадрин
Здано на складання 23.09.2002. Пщписано до друку 22.11.2002. Формат 70x100/16. flanipофсетиий. ГарттураТаймс. Друк офсетний. Умовн.друк.арк. 28,80. Обл.-вид.арк. 28,80
Наклад 2000 прим. Замовлення № 2-300.
ТОВ «ТВД» ДС», 04053, Киш-53, вул. Артема 25, а/я 100, тел./факс (044) 212-1254.e-mail: books@diasoft.kiev.ua, http://www.diasoft.kiev.ua.
Свщоцтво про внесения суб'екта видавничо! справи до Державного реестру видавц!в, випупвниюв i розповсюджувач1в видавничо! продукцп: cepia — ДК, № 558 вщ 09.08.2001р.
Вщдруковано з готових д!апозитив1в на ВАТ "Бшоцерювськакнижкова фабрика”, 09117, м. Bina Церква, вул. Л. Курбаса, 4.
SolarisS
Сертификация системного администратора
Р DUSon