торые затрагивают сис- темные демоны, и приводятся примеры процедурных и программных изменений, которые необходимо внести для того, чтобы вводить но- вые демоны в безопасную систему и правильно их выполнять. Благо- даря этому демоны запускаются с соответствующей идентификацией и привилегиями, не сталкиваются с проблемами при изменении работы системы из-за средств секретности, и правильно обрабатывают гра- ничные условия и сбойные ситуации. Принцип учитываемости для операционной системы гласит, что каждый процесс должен быть снабжен постоянным идентификатором - регистрационным идентификатором пользователя (LUID). Единствен- ное исключение из этого правила составляют процессы, которые са- ми проставляют идентификатор в процессах, а именно программы init(M), login(M) и cron(M). Все надежные утилиты либо простав- ляют свой LUID (например, auditd(ADM)), либо считают, что их LUID был проставлен до их выполнения (например, lpsched(ADM)). Системные вызовы setuid(S) и setgid(S) заканчиваются неудачно, если LUID не установлен. Вы как администратор должны обеспечить предоставление LUID каждому вводимому демону, если он стартует из системных файлов запуска (/tcb/files/rc?.d/*). Правильная процедура заключается в установке файлов /etc/passwd и /etc/group с надлежащими бюджета- ми псевдо-пользователя и группы, а также элемента базы данных защищенных паролей для данного бюджета. Если демон должен стар- товать из сценария запуска, добавьте в него строку (см. ниже), задающую выполнение программы из su(C), так чтобы идентификация процесса была установлена правильно. Это та же процедура, что и выполнение демонов в некотором бюджете с помощью традиционных сценариев запуска. Например, демон устройства построчной печати lpsched стартует с помощью следующей строки: /tcb/bin/su - lp -c /usr/lib/lpsched > /dev/null 2>&1 Программа su дополнена логикой установки LUID для процесса в случае, если он еще не установлен. Заметим, что стандартный вывод и стандартная ошибка в при- веденной команде были переназначены в фиктивное устройство. В операционной системе имеется возможность, которая затрудняет об- работку консольного вывода от демона, и вы должны соответственно планировать вывод демона. Для любого терминального устройства может быть выдан новый системный вызов stopio(S), который введен для того, чтобы подсистеме идентификации и аутентификации было легче предотвращать обман при входе в систему. Когда пользова- . - 5-63 - тель выходит из системы, процесс getty, возрождаемый на данной линии терминала, вызывает stopio с именем терминального уст- ройства в качестве аргумента. Все процессы, в которых это уст- ройство открыто, уничтожаются (сигнал SIGHUP), если они пытаются вновь писать в это устройство. Демоны, выполняющие запись на консоль, получают этот сигнал, если выход из системы произошел на консоли в период между запуском демона и его выводом. Так как большинство демонов игнорируют SIGHUP, вывод их сообщений просто теряется. Поэтому вам надо переназначить вывод демона в файл, если его нужно сохранить, или в фиктивное устройство, как в на- шем примере. Процессы в операционной системе выполняются, имея набор ав- торизаций ядра, которые управляют особыми правами процесса на определенные привилегированные системные действия. Если демон должен выполнить действие, требующее наличия одной из таких при- вилегий, данный бюджет должен быть установлен таким образом, чтобы процесс демона обладал такими привилегиями. Авторизации ядра описываются в пункте "Авторизации" раздела "Средства обес- печения безопасности системы" данной главы. Если демон выполняет другие программы SUID, он должен обладать авторизацией execsuid, а для выполнения программ и доступа к файлам вне текущего ката- лога запуска (подробнее см. promain(M)) - авторизацией nopromain. Если процесс создает файлы с битом SUID, он должен иметь автори- зацию chmodsugid. Если он использует chown, чтобы отдавать фай- лы, он должен иметь авторизацию chown. Процессы, которые не ус- тановлены с помощью TCB, не должны выполняться с какой-либо ав- торизацией контроля (audit). Остальные авторизации предназначены для особых случаев и не должны выдаваться демонам, не принадле- жащим TCB. И, наконец, последнее, что может повлиять на работу демо- нов, - это новая семантика, связанная со sticky-каталогами. Если режим каталога включает бит сохранения текста (sticky-бит), то только владелец файла может удалить его из этого каталога. Демо- ны, манипулирующие временными каталогами, могут работать непра- вильно, если файлы, которые они могли (как они считали) удалять, на самом деле не могут быть удалены. Из этой ситуации можно выйти двумя способами. Вначале уда- лите sticky-бит каталога. Это решит проблему с демоном, но поль- зователей следует предостеречь о возможных неприятностях с сек- ретностью, если такой каталог будет использоваться для хранения временных файлов. Другой способ состоит в том, чтобы модифициро- вать демон и соответствующую ему программу диалоговой документа- ции согласно новым условиям совместного использования файлов. В этой второй ситуации предполагается, что вам доступен исходный код и у вас есть знания и возможности, необходимые для модифика- ции прикладной программы. Следует внимательно рассмотреть программы всех демонов и убедиться, что они выполняются правильно и безопасно. Прежде чем предоставлять демон в общее пользование, его нужно тщательно протестировать в управляемой среде и проверить, правильно ли он работает. Тем меньше проблем с секретностью будет введено в сис- тему, и тем меньше сюрпризов ожидает пользователей, пытающихся воспользоваться демоном и получающих непредвиденные результаты. . - 5-64 - ВКЛЮЧЕНИЕ ЗАЩИТЫ С ПОМОЩЬЮ КОДОВОГО ПАРОЛЯ В случае необходимости вы можете задать специальные кодовые пароли (dial-in passwords) для выбранных линий tty, которые вво- дились бы пользователями определенных классов. Информацию о ре- гистрации в системе, в том числе время последнего соединения, можно сохранить для последующего использования. Конкретные коммутируемые линии, требующие задания паролей, определены в файле /etc/dialups. Его формат - одно имя устройс- тва tty для каждой линии; например: /dev/tty1A /dev/tty5C Актуальные кодовые пароли находятся в файле /etc/d_passwd. Формат такого пароля - тот же, что и используемый в файле /etc/passwd. Первое поле ("имя пользователя") в /etc/d_passwd - на самом деле не имя пользователя, а имя программы командного процессора (например, /bin/sh), использованной в /etc/passwd. Если командный процессор регистрации пользователя, пытающегося войти в систему (по линии tty из списка /etc/dialups) включен в /etc/d_passwd, то пользователь получает приглашение ввести кодо- вый пароль, хранящийся в /etc/d_passwd. При создании кодового пароля используется следующий синтак- сис: passwd -d dialname Измените пароль для командного процессора кодового вызова с именем dialname (включенного в /etc/d_passwd). Если dialname на- чинается с косой черты ("/"), то ему должно соответствовать пол- ное имя командного процессора. В противном случае будет изменен пароль для каждого командного процессора с базовым именем dialname. Только супер-пользователь может менять пароль команд- ного процессора кодового вызова. . - 5-65 - РАЗРЕШЕНИЕ ПОЛЬЗОВАТЕЛЯМ МОНТИРОВАТЬ ФАЙЛОВЫЕ СИСТЕМЫ Командой mount может пользоваться только супер-пользова- тель. Однако супер-пользователь в случае необходимости может за- дать параметры, определяющие для некоторых файловых систем воз- можность их монтирования пользователями по команде mnt(C), вклю- чая возможность использования пароля на доступ. Для каждой файловой системы должна существовать строка в файле /etc/default/filesys. Вот примерный набор таких строк: bdev=/dev/root cdev=/dev/rroot mountdir=/ \ desc="The Root Filesystem" rcmount=no mount=no bdev=/dev/u cdev=/dev/ru mountdir=/u rcmount=yes \ fsckflags=-y desc="The User Filesystem" bdev=/dev/x cdev=/dev/rx mountdir=/x mount=yes \ rcmount=yes fsckflags=-y desc="The Extra Filesystem" Проще говоря, эти строки определяют следующее: Файловая Момент Может монтировать система монтирования пользователь? ---------------------------------------------------- root при загрузке нет /u в мультипользователе нет /x любое время да Если вы хотите, чтобы любую некорневую файловую систему могли монтировать пользователи, просто добавьте "mount=yes" в строку для этой файловой системы. Кроме того, когда команда mnt активизируется без аргумента (имя файловой системы), программа проверит все некорневые файловые системы - можно ли их монтиро- вать, - и если можно, она это сделает. В случае опции "mount=prompt" программа для каждой файловой системы будет спра- шивать пользователя, хочет ли он ее монтировать, если монтирова- ние разрешено. Для файловых систем также обеспечена защита по паролю, с помощью опции -f команды passwd(C). Например, пароль для файло- вой системы /u создается таким образом: passwd -f /dev/u Подробнее о команде mnt, в том числе полный список опций, см. в описании mnt(C) в "Справочнике пользователя" (User's Reference). . - 5-66 - АВТОРИЗАЦИЯ ИСПОЛЬЗОВАНИЯ КОМАНД ПЛАНИРОВАНИЯ ЗАДАНИЙ В данном разделе описывается, как разрешить или запретить пользователям использовать команды планирования заданий. Выбор Jobs->Authorization в sysadmsh содержит функции авторизации. Кроме того, можно управлять командами at и batch, создавая файл- прототип, определяющий среду выполнения этих команд. Сами коман- ды описаны в разделе "Использование команд планирования заданий: at, cron и batch" в "Руководстве пользователя" (User's Guide). Изменение авторизации на планирование заданий, принятой по умолчанию Начальная конфигурация системы устанавливается таким обра- зом, что использование команд планирования заданий разрешено только для root, а доступ пользователей отвергается. Изменение параметров cron, принятых по умолчанию Чтобы изменить параметры cron, принимаемые системой по умолчанию, сделайте в sysadmsh  следующий выбор: Jobs->Authorize->Scheduled->Default На экране появятся три "радио-клавиши": None Выполнение не разрешено никаким пользователям Allow Всем пользователям разрешено выполнять cron Deny Всем пользователям запрещен доступ к команде cron Текущий режим выделен повышенной яркостью. С помощью клавиш перемещения курсора высветите нужный ре- жим, или введите его первую букву. Помните, что и отдельным пользователям можно разрешить/запретить доступ (это описано ни- же). Установленные значения для отдельных пользователей имеют приоритет по сравнению с системными значениями, принятыми по умолчанию. . - 5-67 - Изменение параметров at/batch, принятых по умолчанию Чтобы изменить параметры at/batch, принимаемые системой по умолчанию, сделайте в sysadmsh следующий выбор: Jobs->Authorize->Delayed->Default На экране появятся три "радио-клавиши": None Выполнение не разрешено никаким пользователям Allow Всем пользователям разрешено выполнять at/batch Deny Всем пользователям запрещен доступ к at/batch Текущий режим выделен повышенной яркостью. С помощью клавиш перемещения курсора высветите нужный ре- жим, или введите его первую букву. Помните, что и отдельным пользователям можно разрешить/запретить доступ (это описано ни- же). Установленные значения для отдельных пользователей имеют приоритет по сравнению с системными значениями, принятыми по умолчанию. Разрешение/запрещение использования cron отдельными пользо- вателями Чтобы изменить параметры cron, принимаемые системой по умолчанию, сделайте в sysadmsh следующий выбор: Jobs->Authorize->Scheduled->User Курсор перемещается в поле User:. Введите имя пользователя, или нажмите <F3> для получения списка возможных пользователей. Когда имя пользователя выбрано, на экране появятся следующие "радио-клавиши": Allow Данному пользователю разрешено выполнять cron Deny Данному пользователю запрещен доступ к cron С помощью клавиш перемещения курсора высветите нужный ре- жим, или введите его первую букву. Установленное значение перек- рывает системное значение, принятое по умолчанию. . - 5-68 - Просмотр пользовательских разрешений на cron Чтобы посмотреть список пользователей, которым разреше- но/запрещено пользоваться cron, нужно в sysadmsh выбрать Jobs->Authorize->Scheduled->View Если по умолчанию в системе принято allow, то на экран вы- водится список пользователей, которым доступ запрещен; если deny, то список пользователей, которым доступ разрешен. Разрешение/запрещение использования at/batch отдельными пользователями Чтобы изменить параметры at/batch, принимаемые системой по умолчанию, сделайте в sysadmsh следующий выбор: Jobs->Authorize->Delayed->User Курсор перемещается в поле User:. Введите имя пользователя, или нажмите <F3> для получения списка возможных пользователей. Когда имя пользователя выбрано, на экране появятся следующие "радио-клавиши": Allow Данному пользователю разрешено выполнять at/batch Deny Данному пользователю запрещен доступ к at/batch С помощью клавиш перемещения курсора высветите нужный ре- жим. Установленное значение перекрывает системное значение, при- нятое по умолчанию. Просмотр пользовательских разрешений на at/batch Чтобы посмотреть список пользователей, которым разреше- но/запрещено пользоваться at/batch, нужно в sysadmsh выбрать Jobs->Authorize->Delayed->View Как и в случае с cron, если по умолчанию в системе принято allow, то на экран выводится список пользователей, которым дос- туп запрещен; если deny, то список пользователей, которым доступ разрешен. . - 5-69 - Использование файлов среды для команд at/batch Можно также определить среду, в которой будут выполняться команды at и batch. Для редактирования файлов-прототипов at и batch используются, соответственно, следующие выборы sysadmsh: Jobs->Authorize->Environment->At Jobs->Authorize->Environment->Batch Эти опции редактируют файлы /usr/lib/cron/.proto (at)  или /usr/lib/cron/.proto.b (batch). Эти файлы помещаются в начале сценария командного процессора, формируемого для всех заданий at и batch. Этот сценарий должен соответствовать обычному синтакси- су /bin/sh и содержать некоторые переменные, специфические для файла-прототипа. Это следующие переменные: $d Текущий каталог пользователя в момент запуска $l Значение ulimit для пользователя в момент запуска $m Значение umask для пользователя в момент запуска $t Время (в секундах, считая от 1 января 1970 г.) начала выполнения сценария $< Эту переменную замещает весь сценарий, представляемый пользователем. Обычно она является последней в файле, после сформированного вами пролога. Если вы решили включить информацию в файл после этой переменной, сце- нарий командного процессора может кончить работу, не дойдя до нее. . - 5-70 - Примеры использования файлов среды Имеется много путей использования файлов-прототипов; вот два примера. 1. Выполнение заданий в некоторой очереди с меньшим приори- тетом, используя команду nice(C): nice -5 /bin/sh/ << 'END_OF_FILE' $< END_OF_FILE 2. Очередь для выполнения команд через альтернативный ко- мандный процессор: /bin/csh << 'END_OF_FILE_' $< END_OF_FILE ГЛАВА 6 ДУБЛИРОВАНИЕ ФАЙЛОВЫХ СИСТЕМ Введение 6-1 Стратегии дублирования с использованием sysadmsh 6-2 Использование авторизации backup для дублирования 6-2 Дублирование на гибких дисках и большие системы 6-2 Краткие сведения об используемых утилитах 6-3 Подготовка к запланированному дублированию 6-4 Составление расписания дублирования 6-4 Маркировка резервных копий 6-8 Ведение журнала 6-9 Выполнение запланированного дублирования 6-11 Использование отформатированного носителя 6-11 Запуск дублирования 6-11 Выполнение незапланированного дублирования 6-14 Проверка резервной копии 6-17 Получение листинга дублирования 6-19 Восстановление отдельных файлов и каталогов с резервной копии 6-21 Восстановление всей файловой системы с томов cpio 6-25 Восстановление всей файловой системы с томов xbackup 6-25 Описание уровней дублирования 6-32 Принципы уровней инкрементного дублирования 6-32 Как работает расписание, принятое по умолчанию 6-33 Как используются резервные копии для восстановления файловой системы 6-35 . - 6-1 - ВВЕДЕНИЕ Основная задача администратора системы - обеспечить посто- янную целостность информации, хранимой в системе. Существует несколько способов повреждения файлов и файловых систем и потери данных: * прерывания от питания (убедитесь в наличии предохранителя от бросков питания); * аппаратные сбои (например, жесткий диск); * ошибки пользователя (случайное удаление важных файлов). Нельзя переоценить важность наличия актуальных резервных копий. Если в вашей системе есть несколько активных пользовате- лей, копии надо делать ежедневно. Последствия простой потери данных трудно оценить до тех пор, пока не произойдет инцидент и мгновенно будут потеряны результаты недельной или месячной рабо- ты. Резервная копия файловых систем - это выполненная на гибких дисках или лентах копия файлов корневой файловой системы и дру- гих регулярно монтируемых файловых систем (например, файловой системы /u). (Описание файловых систем см. в главе "Использова- ние файловых систем" настоящего руководства.) Резервная копия позволяет администратору системы (или пользователю с авторизаци- ей backup) иметь экземпляр файловой системы на некоторый момент времени. В настоящей главе описывается, как использовать sysadmsh для дублирования (изготовления резервных копий) корневого ката- лога и других файловых систем, и как восстанавливать файлы с ре- зервных копий. (Еще одна утилита, используемая для простого дуб- лирования, tar(C), подробно описана в разделе "Изготовление резервных копий" главы "Обслуживание" в "Учебнике" (Tutorial). Эта утилита не подходит для выполнения планируемого дублирова- ния; ею удобно пользоваться для архивирования групп файлов.) Средства, обсуждаемые в данной главе, представляют собой меню с простыми опциями, в отличие от утилит tar(C), cpio(C), backup(ADM) и restore(ADM), где используются сложные командные строки. Ключ к эффективному дублированию состоит в том, чтобы сохранять только то, что изменилось за день, а для этого (при использовании backup и restore) обычно требуется дополнительная бухгалтерия. . - 6-2 - СТРАТЕГИИ ДУБЛИРОВАНИЯ С ИСПОЛЬЗОВАНИЕМ SYSADMSH Вы как администратор системы должны ознакомиться с содержа- нием этой главы и составить расписание в соответствии с изложен- ными правилами. После этого вам, чтобы выполнить ежедневное дуб- лирование, нужно будет только установить носитель и ответить на несколько приглашений. Главная цель выбора "Дублирование файловых систем" в sysadmsh состоит в том, чтобы предоставить надежное расписание дублирования файловых систем в тех системах, где много пользова- телей и большие файловые системы. Программа автоматически отыс- кивает модифицированные файлы и копирует их на резервный носи- тель. Если в вашей системе много пользователей и большое число ежедневно обновляемых файлов, используйте опцию "планируемого" дублирования, которая с помощью заранее составленного расписания будет делать регулярное дублирование. Если сделан выбор Backups, программа представит каждую задачу как опцию меню. Чтобы выпол- нить задачу, просто выберите соответствующую опцию из меню и предоставьте требуемую информацию. Для менее формального дублирования в sysadmsh имеется опция "незапланированного" дублирования. Она позволяет администратору системы однократно сделать полную резервную копию файловой сис- темы. (Заметьте, что этот тип дублирования охватывает всю файло- вую систему, а не только измененные файлы, и здесь может потре- боваться несколько томов носителей.) Если вы решили обойтись непланируемыми дублированиями, обеспечьте их выполнение по край- ней мере раз в месяц. Использование авторизации backup для дублирования Для создания или восстановления резервных копий вы должны назначить пользователю авторизацию backup. (Восстановление всей файловой системы может делать только root.) Обычный пользователь не может делать резервные копии, так как у него нет разрешений на доступ ко всем файлам. Если дублирование выполняет root, фай- лы могут быть случайно разрушены, так как root имеет неограни- ченные разрешения для каждого файла в системе. Авторизация backup разрешает эту дилемму, предоставляя ограниченные разреше- ния root. Дублирование на гибких дисках и большие системы Если в вашей системе имеется только дисковод для гибких дисков, то дублирование больших систем с несколькими пользовате- лями может оказаться очень долгим и потребовать множества носителей. Полная резервная копия 20-мегабайтной файловой систе- мы требует пятнадцати дискет 96tpi по 1.2 MB, тогда как на одну . - 6-3 - 450-футовую кассетную ленту можно записать вдвое больше данных. Более существенно, что использование дискет требует присутствия оператора для их замены, а кассетная лента только ставится вна- чале, и оператор может не оставаться при системе. Если в вашей системе много пользователей и только дисковод для гибких дисков, постарайтесь подключить лентопротяжное устройство, или же делай- те полную копию системы раз в неделю, предупредив пользователей, чтобы они сами регулярно делали резервные копии своих файлов. Краткие сведения об используемых утилитах В процессе дублирования sysadmsh обращается к нескольким утилитам. Вам не обязательно знакомиться с ними. Однако если вы решите использовать дополнительные опции, не описанные в данной главе, вам понадобится знать, как они применяются и где о них можно прочитать. sysadmsh обращается к следующим утилитам: * fsphoto(ADM): главная утилита, управляющая автоматизиро- ванными средствами дублирования; * fsave(ADM): программа, взаимодействующая с пользователем для выполнения дублирования; * schedule(ADM): база данных дублирования; * xbackup и xrestore(ADM): утилиты дублирования XENIX. Они используются, если в поле Method таблицы с расписанием стоит "xbackup". (Эти утилиты предназначены для тех, кто хочет продол- жать работать с теми же средствами дублирования, что и в XENIX. Предпочтительнее все же использовать cpio.) * cpio(C): программа дублирования, используемая по умолча- нию. Она не зависит от типа файловой системы. Выбор Backups в sysadmsh образует "дружественный" уровень, ограждающий пользователя от сложного синтаксиса этих программ. . - 6-4 - ПОДГОТОВКА К ЗАПЛАНИРОВАННОМУ ДУБЛИРОВАНИЮ Единственное обязательное требование для проведения плани- руемого дублирования состоит в том, чтобы подготовить расписание дублирования. Кроме того, рекомендуется, чтобы администратор системы выполнял необязательные процедуры маркирования, сохране- ния и протоколирования резервных копий. Подробное описание уров- ней дублирования приведено в конце данной главы, на случай необ- ходимости иметь более специализированное расписание. Составление расписания дублирования Первый шаг состоит в создании таблицы времени дублирования с помощью файла schedule. Этот файл расположен в каталоге /usr/lib/sysadmin. Он содержит все данные, необходимые системе для выполнения дублирования, в том числе * имя вашей вычислительной установки или машины * тип используемого носителя и дисковода * точный регламент дублирования файловых систем. В последующих разделах поясняется, какие изменения нужно внести в файл schedule, имеющийся в вашей дистрибуции. Редактирование файла schedule Файл schedule можно редактировать в любом текстовом редак- торе; убедитесь, что вы зарегистрировались как root. Вы также можете для редактирования файла schedule воспользоваться следую- щим выбором sysadmsh: Backups->Schedule (По умолчанию sysadmsh использует редактор vi(C), но вы мо- жете установить предпочитаемый вами редактор с помощью перемен- ной среды выполнения SA_EDITOR. О том, как устанавливаются пере- менные среды выполнения, см. environ(C) или sh(C).) В последую- щих подразделах описано, какие именно изменения нужно внести в этот файл. . - 6-5 - +--------------------------------------------------------------+ | # SYSTEM BACKUP SCHEDULE (Расписание дублирования системы)| | site mymachine (Вычислительная установка ...) | | | | # Media Entries (Строки для носителей) | | | | # 48 tpi 360K floppy 0 (Дисковод 0 для гибких дисков...)| | # media /dev/rfd048ds9 k 360 format /dev/rfd048ds9 | | # 48 tpi 360K floppy 1 | | # media /dev/rfd148ds9 k 360 format /dev/rfd148ds9 | | # 96 tpi 720K floppy 0 | | # media /dev/rfd096ds9 k 720 format /dev/rfd096ds9 | | # 96 tpi 720K floppy 1 | | # media /dev/rfd196ds9 k 720 format /dev/rfd196ds9 | | # 96 tpi 1.2 MB floppy 0 | | # media /dev/rfd096ds15 k 1200 format /dev/rfd096ds15 | | # 96 tpi 1.2 MB floppy 1 | | # media /dev/rfd196ds15 k 1200 format /dev/rfd196ds15 | | # 135 tpi 1.44 MB floppy 0 | | # media /dev/rfd0135ds18 k 1440 format /dev/rfd0135ds8 | | # 135 tpi 1.44 MB floppy 1 | | # media /dev/rfd1135ds18 k 1440 format /dev/rfd1135ds8 | | # Cartridge tape (Кассетная лента) | | # media /dev/rct0 d 20000 300 450 600 tape erase | | # Mini cartridge drive (10MB) (Накопитель для мини-кассеты)| | # media /dev/rctmini k 8800 format /dev/rctmini | | # Mini cartridge drive (40MB) | | # media /dev/rctmini k 37500 format -e /dev/rctmini | | # 9-track tape drive (Накопитель для 9-дор.ленты) | | # media /dev/rmt0 d 1600 2400 1200 600 | | | | # Backup Descriptor Table (Таблица дескриптора дублирования)| | | | # Backup Vol. Save for Vitality Label | | # level size how long (importance) marker | | 0 - "1 year" critical "a red sticker" | | 1 - "4 months" necessary "a yellow sticker"| | 8 - "3 weeks" useful "a blue sticker" | | 9 - "1 week" precautionary none | | | | # Schedule Table (Расписание) | | | | # 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 Method | # Filesystem M T W T F M T W T F M T W T F M T W T F | | /dev/rroot 0 x 9 x 9 8 x 9 x 9 1 x 9 x 9 8 x 9 x 9 cpio| | /dev/ru 9 0 9 9 9 9 8 9 9 9 9 1 9 9 9 9 8 9 9 9 cpio| +--------------------------------------------------------------+ Рисунок 6-1. Файл schedule . - 6-6 - Задание имени вычислительной установки или машины Нужно просто изменить строку mymachine в начале файла, за- дав имя, используемое в вашем файле /etc/systemid, или любое другое имя. Выбор устройства с носителем, соответствующих конфигурации Содержимое файла schedule, изображенное на Рисунке 6-1, принимается по умолчанию. По умолчанию же в качестве накопителя принимается дисковод 0 для гибких дисков 96tpi по 1.2 мегабайт (см. ниже). Знак # обозначает комментарий, соответствующий текст игнорируется программой. Заметьте, что накопитель, принятый по умолчанию, - единственный без знака комментария. Если вы хотите использовать другой накопитель, поставьте перед дисководом 96tpi символ комментария и уберите этот символ из строки с нужным вам накопителем. Остальные накопители должны остаться закомментиро- ванными. +--------------------------------------------------------------+ | # 96 tpi 720K floppy 1 | | # media /dev/rfd196ds9 k 720 format /dev/rfd196ds9 | | | | # 96 tpi 1.2 MB floppy 0 | | media /dev/rfd096ds15 k 1200 format /dev/rfd096ds15 | | | | # 96 tpi 1.2 MB floppy 1 | | # media /dev/rfd196ds15 k 1200 format /dev/rfd196ds15 | | | Редактирование таблицы дескриптора дублирования Сразу же после строк с накопителями идет таблица дескрипто- ра дублирования. В этой таблице (см. ниже) описан каждый уровень дублирования (Backup level - первая колонка): для него приводит- ся размер тома (Vol.size - вторая колонка), срок хранения (третья колонка), степень важности (четвертая колонка) и марки- ровка (пятая колонка - Label marker). Строки, принятые по умол- чанию, можно использовать, но строки с размерами томов надо от- редактировать согласно типу используемого носителя. Если вы пользуетесь гибкими дисками, оставьте в колонке "Vol.size" дефисы. В этом случае программа дублирования возьмет размер тома из строки носителя для данного устройства. Если вы используете ленты или ленточные кассеты, поставьте в колонке "Vol.size" вместо дефиса объем тома на ленте (в фу- тах). Если вы используете ленты одного и того же размера для всех уровней дублирования, то все дефисы нужно заменить размером используемой ленты. Последняя колонка содержит метки, о которых см. ниже в под- разделе "Маркировка резервных копий". . - 6-7 - +--------------------------------------------------------------+ | # Backup Vol. Save for Vitality Label | | # level size how long (importance) marker | | 0 - "1 year" critical "a red sticker" | | (1 год критично красная этикетка)| | 1 - "4 months" necessary "a yellow sticker"| | (4 м-ца необходимо желтая этикетка) | | 8 - "3 weeks" useful "a blue sticker" | | (3 нед. полезно синяя этикетка) | | 9 - "1 week" precautionary none | | (1 нед. желательно без маркера) | +--------------------------------------------------------------+ Рисунок 6-2. Таблица дескриптора дублирования Редактирование расписания дублирования По умолчанию расписание предполагает ежедневное дублирова- ние. Чтобы пользоваться расписанием, не обязательно точно предс- тавлять себе разделение на уровни дублирования. Уровень 0 - самый низкий. На этом уровне дублируется все содержимое файловой системы, а на каждом из уровней 1, 8 и 9 дублируются только фай- лы, которые изменились после последнего дублирования низшего уровня. (Полное описание приведено в разделе "Описание уровней дублирования" в конце главы.) Заметьте, что дублирование уровня 0 выполняется ежемесячно для корневой файловой системы и дважды в месяц - для файловой системы /u. Это вызвано тем, что файловая система /u (пользовательские бюджеты) изменяется гораздо чаще, чем корневая, содержащая системные файлы. Если у вас нет файловой системы /u, то ваши пользователь- ские бюджеты расположены в корневой файловой системе (в каталоге /usr). В этом случае вы получите приглашение на подтверждение при установке пакета BACKUP, а файл schedule будет содержать только одну строку с файловой системой. Если файловая система /u имеется, то schedule будет выглядеть следующим образом (Рисунок 6-3). +----------------------------------------------------------------+ | # 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 Method| | # Filesystem M T W T F M T W T F M T W T F M T W T F | | /dev/rroot 0 x 9 x 9 8 x 9 x 9 1 x 9 x 9 8 x 9 x 9 cpio | | /dev/ru 9 0 9 9 9 9 8 9 9 9 9 1 9 9 9 9 8 9 9 9 cpio | +----------------------------------------------------------------+ Рисунок 6-3. Расписание дублирования Следует заметить, что система обозначений с названиями дней недели (M-F, т.е. Понедельник-Пятница) может ввести в заблужде- ние: если дублирование отсрочено или было неудачным (например, из-за дефектного носителя), то дублирование этого же уровня бу- дет выполнено вновь в момент следующего запланированного дубли- рования. Тем самым расписание сдвигается, но установленная пос- ледовательность дублирований не изменяется. Поэтому более точной является цифровая шкала 1-0, расположенная над строкой M-F, хотя она менее удобна для тех, кто работает в единицах дней и недель. . - 6-8 - Кроме того, если вы добавите строки для других файловых систем, вам нужно следить, чтобы два дублирования уровня 0 боль- ших файловых систем не были запланированы на один день; такой процесс будет очень длительным и может существенно замедлить ра- боту вашей машины. Поле метода дублирования (последняя колонка расписания) По умолчанию тип формата дублирования - cpio. Если вы хоти- те использовать формат xbackup, применяемый в файловых системах XENIX, замените cpio на backup. Заметим, что утилита xbackup(ADM) работает только с файловыми системами XENIX, так как она использует специфическую для них информацию. Формат cpio отлично функционирует в файловых системах UNIX, XENIX и AFS, так как он не использует такую информацию. Тип xbackup предусмотрен для тех, кто привык к старому формату. Замечание Не забудьте, что AFS - это тип файловой системы, используе- мый в операционной системе по умолчанию. Маркировка резервных копий Очень важно пометить ленты с резервными копиями, используя в качестве меток осмысленную и точную информацию. Если ваши ре- зервные копии - это груда случайным образом помеченных лент, вам будет трудно потом найти нужные данные. Для меток носителей предлагается следующий формат: +--------------------------------------------------------------+ | Имя компьютера Уровень дублирования Дата изготовления | | Имя файловой системы | | Дата конца хранения | | Число блоков тома | | Имя исполнителя Номер тома | | Общее число томов | +--------------------------------------------------------------+ Дата на метке и дата, от которой вычисляется срок хранения, должны соответствовать рабочему дню, охваченному дублированием. Это делается во избежание недоразумений, в случае возникновения необходимости восстановления информации с этой ленты. . - 6-9 - Вы, наверное, заметили, что в файле schedule для облегчения работы предлагается система цветного кодирования: см.Рисунок 6-4. +--------------------------------------------------------------+ | # Backup Vol. Save for Vitality Label | | # level size how long (importance) marker | | 0 - "1 year" critical "a red sticker" | | (красная этикетка)| | 1 - "4 months" necessary "a yellow sticker"| | (желтая этикетка)| | 8 - "3 weeks" useful "a blue sticker" | | (синяя этикетка) | | 9 - "1 week" precautionary none | | (без маркера) | +--------------------------------------------------------------+ Рисунок 6-4. Нанесение меток на резервные копии Если для одной резервной копии использовано несколько лент, поставьте на каждом томе его номер и число томов (например, для двухтомной копии - "1 из 2" и "2 из 2"). И, наконец, прикрепите метку к коробке или пакету, внеся в нее имя компьютера, имя файловой системы и уровень проведенного дублирования. Ведение журнала Для каждого компьютера рекомендуется вести рукописный жур- нал. Помимо информации по техническому обслуживанию (например, когда произошел сбой и что было сделано), в него следует зано- сить следующую информацию: Дата Как и в метке на ленте, эта дата должна соот- ветствовать последнему дню, охваченному дуб- лированием Файловая система Имя устройства, для которого делается копия на текущей ленте Уровень дублирования Уровень дублирования для текущей ленты Число томов Количество томов на лентах Число блоков Количество блоков на ленте. Эта информация вы- водится при завершении дублирования. (Обрати- те внимание на эту цифру: если число блоков для дублирования уровня 9 для некоторой фай- ловой системы все время содержит более четы- рех цифр, то вам, по-видимому, придется для уменьшения нагрузки увеличить частоту дубли- рований этой файловой системы.) . - 6-10 - Время начала/конца (Необязательный параметр.) Время от начала дублирования файловой системы до завершения проверки последней ошибки. Эти времена выво- дятся на экран после завершения дублирования. Время конца часто будет оказываться неточным, так как вы в конце дублирования уже можете исчерпать все место, и машина перейдет в хо- лостой режим до вашего возврата. Если при дублировании возникают проблемы, регистрируйте все в журнале, в том числе все сообщения об ошибках с экрана. . - 6-11 - ВЫПОЛНЕНИЕ ЗАПЛАНИРОВАННОГО ДУБЛИРОВАНИЯ В данном разделе описывается, как выполнять дублирование по име