su13@pochta.ru

| Первый | Второй | Третий | Четвёртый | Пятый | Шестой | Седьмой |


Планирование автоматических заданий

Автоматическое выполнение программ

Настройка процесса начальной загрузки

Планирование автоматических заданий

Автоматическое выполнение программ

Система Unix V Release 4.0 Version 1.0 позволяет поддерживать автоматическое функционирование программ в указанное время. Это можно сделать с помощью '' программы сrоn.

Программа сnоn и команда crontab позволяют вам прогонять программы в нерабочие часы. Это удобно при работе с затратными по времени программами или с управляющими процедурами, или процедурами подчистки, которые требуют наличия машины, находящейся в спокойном состоянии.

Любое задание, которое требует повторных выполнений в указанное время, является потенциальным заданием файла сгоп, помещенного в каталог /var/spool/cron/crontabs. Вы можете использовать команду crontab, чтобы организовать нужные вам элементы.

Команда crontab используется следующим образом:

crontab file

crontab -r

crontab -1

Команда crontab копирует указанный file (или стандартный ввод, если файл не указан) в каталог, который содержит все crontab пользователя.

Параметр -r удаляет crontab пользователя из каталога crontab. Параметр -I выполнит просмотр файла crontab, чтобы вызвать пользователя.

Каждая строка файла crontab определяет одну процедуру. Формат строкового элемента выглядит следующим образом:

minute hour day month day-of-week command

Каждое поле определяется следующим образом:

Minute (0-59),

hour (0-23).

day (1-31),

month (1-12).

day-of-week (0-6, 0=Sunday)

command (команда, которая должна выполняться в указанное время).

Правила, относящиеся к первым пяти полям:

1. Два числа, отделенные друг от друга дефисом, указывают диапазон чисел.

2. Список чисел, отделенных друг от друга запятыми, указывает, что использоваться будут только перечисленные числа.

3. Звездочка указывает все разрешенные значения.

Например,

0 0 1.14 * 2

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

Если в командном поле (шестое поле) размещен знак %, система Unix переведет его как символ новой строки. Только первая строка командного поля (символьная строка до знака %) выполняется командным файлом. Все другие строки бывают доступными для команды в виде стандартного ввода.

Например, пусть файл, вызванный anyfile, содержит нижеприведенный элемент сrоn:

001** mailx SlOGNAME % Subject: Call Mom! % now

Когда выполняется командная строка crontab anyfile, пользователь, чье имя регистрации $LOGNAME, будет получать напоминание с Call Mom! первого числа каждого месяца.

Автоматическая подчистка системы

Систему Unix необходимо регулярно подчищать. Вы можете избежать этого занятия благодаря команде crontab и файлу crontab.

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

Ваш компьютер уже имеет несколько определенных процедур подчистки. Эти процедуры выполняются с помощью имени регистрации root под управлением crontab каждое воскресное утро в 5:17. Файл /etc/cleanup определяет какие именно процедуры подчистки выполняются.

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

Файл/var/adm/wtmp

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

Файл /var/adm/sulog

Этот файл содержит архив пользователей, которые используют команду su для подключения имен регистрации. В качестве меры защиты этот файл не должен считываться другими пользователями.

Файл /var/cron/log

Этот файл содержит архив всех действий, предпринятых сrоn.

Зарегистрировавшись как root и выполнив crontab -1, вы сможете увидеть элемент crontab, который выполняет /etc/cleanup, а также другие рутины подчистки для базовой сети (UUCP). Вы можете редактировать /etc/cleanup и модифицировать root crontab, тем самым по своему желанию выполнив подчистку заданий другим способом.

Настройка процесса начальной загрузки

Программа системы Unix boot загружает и выполняет автономные программы системы Unix.

Так как boot используется для первоначальной загрузки и выполнения ядра системы Unix, она может загружать и выполнять любые другие программы, которые связаны с автономным выполнением.

Система вызывает программу boot при каждом запуске компьютера. Она сначала пытается поместить программу boot в устройство для гибкого диска; если устройство для гибкого диска пусто, система вызывает процедуру загрузки жесткого диска.

При первом вызове, boot выведет на экран следующее сообщение о состоянии:

Bootung the Unix System...

Следующий этап зависит от того, хотите ли вы загрузить программу по умолчанию или другую автономную программу.

Загрузка программы по умолчанию

Чтобы дать boot команду на использование программы по умолчанию (ядро системы) и значений, указанных в файле загрузки по умолчанию - etc/default/boot, нажмите ENTER.

Если вы только что загрузили программу boot с дистрибутивного диска, нажмите ENTER, boot сделает паузу и даст подсказку на использование информации о настройке.

Загрузка другой автономной программы

Для того, чтобы загрузить программу, отличную от программы по умолчанию, необходимо нажать любую клавишу (за исключением ENTER) по подсказке "Загрузка системы Unix", чтобы прервать boot. Программа boot делает паузу и дает подсказку с помощью следующего сообщения для ввода имени программы, которую вы хотите загрузить:

Enter the name of a kernel:

Система ожидает, когда вы наберете имя нужной программы и нажмете ENTER.

Чтобы загрузить на дистрибутивный диск программу, отличную от boot, вы должны указать местонахождение программы, предоставив имя файла (если нужная вам программа находится в устройстве загрузки по умолчанию), или предоставить имя устройства и имя файла (если программы, которую вы хотите загрузить нет в устройстве по умолчанию).

Имя файла необходимо включить в полное имя файла, содержащего автономную программу. Указание местонахождения программы, которую необходимо загрузить, должно стоять первым в командной строке и должно присутствовать, если другие параметры boot указываются или на командной строке или в /etc/default/boot.

Чтобы указать программу, отличную от boot, на дистрибутивном диске, используйте один из нижеследующих форматов:

filename

ИЛИ

xx(m,o)filename

где:

Аргумент filename должен начинаться с прямого слеша, если программа не находится в каталоге root. Если filename является единственным аргументом, набранным по подсказке загрузки, boot ищет filename в устройстве загрузки по умолчанию и пытается оттуда его загрузить. Обратите внимание, что все числа являются десятичными.

Диапазон памяти

Строка MEMRANGE в файле /etc/default/boot

представляет диапазон памяти, который будет использован операционной системой Unix в вашем компьютере.

Можно иметь больший объем физической памяти в вашей системе, нежели указано в MEMRANGE, но операционная система будет использовать только указанный объем.

В том случае, если объем физической памяти меньше указанного MEMRANGE, операционная система будет использовать только существующий объем физической памяти.

Первый диапазон чисел, указанный в MEMRANGE, является базовой памятью (0-640 К). Когда система загружается, код загрузки определяет истинный конец базовой памяти, и она будет использовать меньшее из двух значений.

Автоматическая загрузка

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

Самозагрузка при включении питания (фактически любой сброс) управляется настраиваемым параметром AUTOBOOT в /etc/default/boot. Аварийная самоперезагрузка управляется настраиваемым параметром PANICBOOT, также из /etc/default/boot, и может выполняться без вмешательства оператора.

Самозагрузка при включении питания

Для того, чтобы установить автоматическое функционирование boot, используя информацию о создании конфигурации по умолчанию в файле /etc/default/boot, установите AUTOBOOT на YES в файле /etc/default/boot в системе файлов root по умолчанию.

Все это заставит boot вывести на экран сообщение о загрузке по умолчанию и загрузить программу. В случае возникновения ошибки или нажатия какой-то клавиши во время процесса самозагрузки, boot возвращается к подсказке загрузки и пытается загрузить программу еще раз. Программа boot на диске инсталляции системы Unix выполняет эту процедуру самозагрузки.

Если AUTOBOOT устанавливается на NO в файле /etc/default/boot, boot выводит на экран сообщение "Загрузка ядра системы Unix" и дает вам возможность указать свои данные настройки загрузки, прежде чем она начнет загрузку программы.

В том случае, если вы не набираете каких-либо данных после подсказки, boot предполагает, что вам нужна конфигурация по умолчанию. В этом случае boot ведет себя так, будто AUTOBOOT установлен в файле /etc/default/boot на YES.

Программа boot считывает конфигурацию в файл /etc/default/boot, затем выводит на экран сообщение о загрузке по умолчанию (указанное с помощью параметра BOOTMSG) и начинает загрузку программы.

Аварийная самоперерезагрузка

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

Можно создать конфигурацию своей системы так, что она сможет выполнять перезагрузку автоматически после аварии, если добавите строку PANICBOOT=YES в файл /etc/default/boot. По умолчанию аварийная самоперезагрузка отсутствует.

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

Методом по умолчанию для системы, основанной не на коде SCSI, является метод использования сектора свопинга, а методом по умолчанию для системы, основанной на коде SCSI, является метод использования сектора, предназначенного для дампа.

Когда вы выбираете автоматическую перезагрузку системы после аварии, вам необходимо решить как работать с дампом памяти. Если вы хотите выполнять автоматическую перезагрузку после аварии без вмешательства оператора и не хотите сохранять дамп памяти, используйте метод сектора свопинга.

Если вы хотите выполнить автоматическую перезагрузку после аварии, а также сохранить дамп памяти, выбирайте метод сектора, предназначенного для дампа памяти.

Если ваша система невелика в смысле запоминающих устройств на дисках и памяти, вы можете предпочесть использование метода сектора свопинга (имея в виду, что сектор свопинга требуется на всех системах, а сектор дампа является произвольным), или вы можете захотеть вовсе не сохранять дамп памяти.

Если ваша система достаточно большая, вы, возможно, захотите использовать метод сектора, предназначенного для дампа.

Используйте данную схему:

Вам нужна

автоматическая

перезагрузка

после аварии? Нет Никаких дальнейших установок не требуется.

Да Вам нужна автоматическая перезагрузка без вмешательства кого-либо? Нет Используйте метод сектора свопинга и установите TIME на отрицательное значение. Вы решаете сохранять или нет дамп памяти в ходе перезагрузки системы.

Да Вы хотите сохранить дамп памяти? Нет Используйте метод резервирования сектора свопинга

Да Используйте метод резервирования сектора дампа.

Система определяет, находится ли дамп памяти в секторе свопинга во время загрузки. Во время перезагрузки система дает возможность сохранить дамп памяти, если такой существует, задав вопрос: "Хотите ли вы сохранить дамп?".

Если вы отвечаете утвердительно, дамп памяти в секторе свопинга сохраняется. Сохранение сектора свопинга включает интерактивный процесс, в котором вы получаете подсказку на использование носителей данных (гибкие диски или кассета магнитной ленты) и на объем памяти, помещаемый в дамп.

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

Данный метод требует вмешательства администратора; в то же время, если вы не хотите сохранять дамп памяти, вы можете создать конфигурацию системы, которая будет перезагружаться автоматически, если дадите переменной TIME (указываемую в секундах) в файле /etc/default/dump положительное значение.

В данном случае система спросит: "Хотите ли вы сохранить дамп?", а затем будет ждать число секунд, указываемое в TIME (значение по умолчанию 60 секунд). Если за это время никакого ответа не последует, система не сохраняет дамп памяти и перезагрузка продолжается автоматически.

Если значение TIME - отрицательное, система будет ждать неопределенное количество времени ответа на вопрос "Хотите ли вы сохранить дамп?".

Если значение TIME нулевое, вопрос не задается, и система продолжает перезагрузку, не ожидая ответа.

По умолчанию система записывает дамп памяти в сектор свопинга. Если вы хотите, чтобы аварийная самоперезагрузка выполнялась полностью автоматически (без какого-либо вмешательства), и вы хотите сохранить дамп памяти, используйте метод с резервированием сектора дампа.

Метод резервирования сектора дампа

Если вы выполняете новую инсталляцию или инсталляцию, разрушающего типа (т.е. при которой создаются новые системы файлов на диске), вы можете создать конфигурацию зарезервированного сектора дампа, в котором можно сохранять дамп памяти.

Если в таких условиях возникает аварийная ситуация, дамп памяти записывается в тот сектор, который указан в системном файле /etc/cjnf/cf.d/sassign и система продолжает аварийную самоперезагрузку.

Резервируемый сектор дампа устанавливается автоматически как часть процедуры установки операционной системы.

Меры защиты

Система предлагает два типа защиты с использованием пароля: сетевой пароль (через контроллер клавиатуры) и пароль технических средств (через ROM/BIOS).

Сетевой пароль не требуется загрузке системы после сброса; клавиатуру нельзя использовать, пока не будет введен сетевой пароль. Если вы хотите провести загрузку системы автоматически, без вмешательства оператора, вы не можете использовать пароль технических средств, и вам следует быть очень осторожными с использованием сетевого пароля.

Планирование автоматических заданий

Средство планирования автоматических заданий (Shedule Automatic Tasks) дает возможность планировать задания, выполняющиеся автоматически в более позднее время или в регулярно установленное время. Вы можете добавлять, изменять, удалять или выводить на экран свои собственные запланированные задания.

Примечание

Если вы выбираете средство планирования автоматических заданий и не имеете доступ к сrоn, вы получите предупреждение. Пользователь, зарегистрировавшийся как "root", редактирует файл /etc/cron.d/cron.allow и добавляет ваше имя

регистрации, прежде чем вы сможете обратиться к средству сrоn.

Кроме того, если вы выбираете средство планирования автоматических заданий, а демон (следящий процесс) не функционирует, вы получите предупреждение. Вы можете запланировать свое задание, но оно не будет выполняться пока не будет запущен планировщик заданий.

Обращайтесь к меню этих заданий с помощью параметра schedule_task из главного меню System Administration.

Добавление автоматически планируемого задания

Примером задания может служить

mail dlt < roailfile

которое отсылает почту в dlt пользователя.

Необходимо выполнить следующие меню, чтобы добавить автоматически планируемое задание:

1. Выберите Add из меню Schedule Automatic Task.

Система выводит на экран следующую информацию:

3 Schedule a Task

Month(s) of thr Year:

Day(s) of the Month:

Day(s) of the Week:

Hour(s) of the Day:

Minute(s) past the Hour:

Task:

2. Нажмите CHOICES.

Система выводит на экран числовой список месяцев.

3. Используйте клавиши со стрелками, чтобы переместить курсор, и нажмите MARK, отметив каждый из планируемых месяцев. Звездочка (*) будет отображаться рядом с каждым выбранным месяцем.

4. Нажмите Enter.

5. Используйте клавиши со стрелками, чтобы переместиться к следующему полю.

6. Повторите вышеуказанные этапы 2-5 в следующих четырех полях.

7. Для поля Task: введите команду для планируемого задания, а затем нажмите SAVE.

Система выводит экран, подтверждающий информацию о задании.

8. Нажмите CONT, чтобы подтвердить запланированное задание или нажмите CANCEL, чтобы выйти из задания.

Изменение автоматически планируемого задания

Нельзя изменить задание в то время, когда оно уже выполняется. Чтобы изменить задание, выберите Delete в меню Schedule Automatic Task Menu, удалите задание, а затем выберите Add, чтобы добавить пересмотренное задание. Выполняйте следующие функции, чтобы изменить автоматически планируемое задание:

1. Выберите CHANGE из меню.

Система выводит экран со списком запланированных заданий:

3 Change a Scheduled Tasks

>Task 1: /bin/su/ root -с "/sbin/cleanup > /dev/null"

Task 2: /etc/cron.d/logchecker

2. Используйте клавиши со стрелками, чтобы переместить курсор к заданию, которое вы хотите изменить и нажмите Enter.

3. Заполните форму и нажмите SAVE.

4. Нажмите CONT, чтобы изменить еще одно задание, или нажмите CANCEL и вернитесь в меню

Примечание

Если вы выбрали CHANGE, а запланированных в текущий момент заданий нет, вы получите предупреждение.

Удаление автоматически планируемого задания

В тот момент, когда вам уже больше не нужно автоматически планируемое задание, его следует удалить.

Примечание

Если вы выберете Delete; а запланированных в текущий момент заданий нет, вы получите предупреждение.

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

1. Выберите DELETE из меню.

Система выводит экран со списком запланированных заданий:

3 Delete a Scheduled Tasks

>Task 1: /bin/su/ root -c "/sbin/cleanup > /dev/null"

Task 2: /etc/cron.d/logchecker

2. Используйте клавиши со стрелками, чтобы переместить курсор к заданию, которое вы хотите удалить и нажмите MARK, чтобы их пометить.

Звездочка будет отображаться рядом с каждым из выбранных заданий.

3. После того как вы выберете все задания, нажмите Enter.

Система выводит экран, подтверждающий задания, которые должны быть удалены.

4. Нажмите CONT, чтобы подтвердить удаление, или нажмите CANCEL, чтобы отказаться от задания.

Вывод на экран автоматически планируемых заданий

Необходимо выполнить следующие меню, чтобы вывести на экран автоматически планируемые задания:

1. Выберите display из меню Schedule Automatic Task.

Система отобразит список запланированных заданий на экране:

3 Display a Scheduled Tasks

>Task 1: /bin/su/ root -с "/sbin/cleanup > /dev/null"

Task 2: /etc/cron.d/logchecker

2. Нажмите CANCEL и возвратитесь в меню.


Оглавление

Предыдущая страница

Следующая страница

GNU OCXE GNU LINUX
Сайт управляется системой uCoz