Документация по ОС FreeBSD Вторник, 17.06.2025, 06:17
Приветствую Вас Гость | RSS
Меню сайта

Категории каталога
Мои статьи [0]
Установка и настройка [281]
X Window [25]
Man pages [30]
Ports & Packages [26]
cvs [18]
Multimedia [20]
Нововсти в мире Unix [0]
RFC [4]
RFC (Request for Comments, Запрос на комментарии) - серия документов, публикуемая сообществом исследователей и разработчиков, руководствующихся практическими интересами, в которой описывается набор протоколов и обобщается опыт функционирования Интернет.
Безопасность [52]
Работа с железом [58]
Книги по FreeBSD [17]
Сеть [505]
Программирование [40]
FireWall [58]
Темы экзамена BSDA [14]
Официальные темы экзамена BSDA, включая подробноые описания и советы по обучению.

Главная » Статьи » Установка и настройка

Основы ОС UNIX. Учебный курс. Часть 11
Copyleft (no c) - Fuck copyright! 1996-2003 В. Кравчук, OpenXS Initiative, идея, составление, перевод, примеры

Управление заданиями

Управление заданиями - это механизм для отслеживания процессов, которые порождаются из текущего сеанса работы с терминалом. Можно запустить любое число заданий. Они могут работать, завершиться или находиться в других состояниях. Для управления заданиями можно использовать несколько команд, чтобы проследить результаты их работы или потребовать от системы уведомления об окончании задания.

Запуск задания в фоновом режиме

Фоновый режим позволяет продолжить использование сеанса работы с терминалом, пока выполняется команда. Для запуска команды в фоновом режиме, достаточно к команде добавить символ амперсанд (&). Командный интерпретатор вернет номер задания и идентификатор процесса:

$ make &
[2] 254
$

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

[1] + Suspended (tty input) programm 0

В данном случае в ожидании ввода приостановилось выполнение программы programm. Пользователю необходимо перевести из фонового режима в привилегированный и выполнить ввод.

Просмотр состояния заданий

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

$ jobs
[1] Stopped (user) du
[2]- Stopped (user) du -a /home/intdbi
[3]+ Stopped (user) du -r /home/intdbi
$

Команда jobs принимает два флага. Флаг -l включает идентификатор процесса с номером задания.

$ jobs -l
[1] 1351 Stopped (user) du
[2]- 1381 Stopped (user) du -a /home/intdbi
[3]+ 1383 Stopped (user) du -r /home/intdbi
$

Флаг заменяет номер задания на идентификатор процесса.

$ jobs -p
1351
1381
1383
$

Идентификатор процесса может использоваться при обращении к команде ps.

Номера заданий

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

Перевод задания в привилегированный режим

Команда fg переводит задания в привилегированный режим. При наличии приостановленного задания, его можно сделать привилегированным (перевести на передний план) с помощью команды fg #номер_задания (или fg номер_задания в bash). После этого задание либо выведет на экран сообщение о том, что ему нужно от терминала, либо будет принимать ожидаемый ввод. Переведя задание в привилегированный режим, можно приостановить его выполнение, нажав комбинацию калвиш Ctrl-Z, и заняться им позже.

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

Перевод задания в фоновый режим

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

Команда ожидания завершения процесса

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

Основные утилиты

Помимо рассмотренных выше команд, ОС UNIX предлагает десятки полезных утилит и средств. Основные утилиты для обработки текстов представлены в табл. 27, а клиенты основных сетевых служб - в табл. 28. Полезные команды для создания резервных копий представлены в табл. 29.

Обработка текстов

Таблица 27. Основные утилиты обработки текстов

Утилита Назначение
awk Язык обработки шаблонов. Позволяет выполнять произвольную программу при выявлении в тексте определенной строки, соответствующей шаблону. По синтаксису аналогичен C. Содержит множество встроенных функций. Используется для обработки и преобразования текстовых данных, состоящих из столбцов и строк, а также для построения отчетов и анализа журналов.
diff Команда, сравнивающая два файла и выдающая найденные различия в разных форматах.
ed Стандартный строчный текстовый редактор. Воспринимает команды из стандартного входного потока, изменяет файлы и часто используется в сценариях.
ex Расширенная версия редактора ed. Поддерживает множество установок, которые можно запоминать для каждого пользователя в файле .exrc в его начальном каталоге.
head Выдает указанное количество начальных строк из файла.
more Позволяет просматривать файл постранично в обоих направлениях, искать в нем по шаблону.
pr Форматирует файл или входной поток для печати, разбивая его на страницы и снабжая, при необходимости, заголовками.
sed Потоковая версия редактора ed. Позволяет эффективно выполнять поиск и замену в стандартном входном потоке или указанных файлах.
tail Выдает указанное количество конечных строк из файла.
tr Преобразовывает символы во входном потоке, заменяя одни цепочки на другие. Поддерживает весь набор символов.

Работа в сети

Таблица 28. Основные сетевые команды

Утилита Назначение
ftp Клиент для обмена файлами с удаленной машиной по сети. Позволяет просматривать каталоги, создавать каталоги на удаленной машине, загружать и выгружать файлы с помощью стандартного набора команд. Допускает автоматизацию операций по обмену файлами.
netstat Выдает разнообразную статистику о работе сети, содержимое таблиц маршрутизации и т.д.
ping Посылает специальный пакет ICMP, требующий ответа от удаленного сервера. Позволяет проверить доступность удаленного хоста и скорость работы сети. Обычно доступна только пользователю root.
rlogin Программа удаленной регистрации. Позволяет работать с удаленной машиной так же, как с локальной. Поддерживает доверительные отношения.
rsh Удаленный командный интерпретатор. Позволяет выполнить любую команду интерпретатора на удаленной машине и получить ее выходной поток на локальной. Поддерживает доверительные отношения.
ssh Защищенный командный интерпретатор, функционально аналогичный программам telnet, rsh и rlogin, но передающий пароли и данные в зашифрованном виде.
telnet Программа удаленного подключения к указанной сетевой службе. Обычно используется для удаленной регистрации. Не поддерживает доверительные отношения.
traceroute Программа трассировки пакетов. Показывает маршрут, по которому будут направляться пакеты на указанный удаленных хост и скорость передачи на каждом из переходов. Обычно доступна только пользователю root.

Резервное копирование и восстановление

Таблица 29. Основные средства резервного копирования и восстановления

Утилита Назначение
compress Сжимает (упаковывает) указанный файл, обычно удаляя исходный вариант. Сжатые файлы обычно имеют суффикс .Z и разжимаются командой uncompress.
cpio Команда создания архивов. Помещает все указанные файлы, включая содержимое подкаталогов, в архив, выдаваемый в стандартный выходной поток. Получает архив из входного потока и раскрывает в текущем каталоге. Поддерживает различные платформы и форматы, в том числе, формат архивов tar.
dd Команда копирования блоков данных с одного файла или устройства в другой. Позволяет выполнять преобразования при копировании.
gzip Утилита GNU для сжатия указанного файла. Упаковывает файлы лучше, чем compress. Работает на всех платформах. Сжатые файлы обычно имеют суффикс .gz и разжимаются командой ungzip (gzip -d).
tar Утилита архивирования. Помещает все указанные файлы, включая содержимое подкаталогов, в архив, записываемый в указанный файл. Создает необходимые каталоги и файлы при разархивировании. Первоначально предназначалась для архивирования на ленту.

Программа практических занятий

Занятие 1. 2 часа.

  1. Регистрация в системе. Изменение пароля (passwd). Просмотр информации о работающих пользователях (who).
  2. Работа со справочным руководством (man).
  3. Просмотр содержимого файлов (cat, more).
  4. Создание файлов различных типов (cat, mkdir, mknod, ln). Копирование, перемещение и удаление файлов и каталогов (cp, mv, rm, rmdir).
  5. Просмотр информации о файлах, изменение прав доступа и владельца файлов (ls, chmod, chown, chgrp, umask).
  6. Просмотр информации о процессах и установка поправки приоритета (ps, nice).
  7. Посылка сигналов процессам (kill).

Занятие 2. 2 часа.

  1. Поиск файлов по различным критериям (find).
  2. Использование утилиты grep для поиска в текстах по образцу
  3. Практическая работа с редактором vi.
  4. Управление заданиями (jobs, bg, fg).

Занятие 3. 2 часа.

  1. Создание простых конвейеров. Запуск процесса в приоритетном и фоновом режиме. Динамическое формирование командной строки.
  2. Использование цикла for в командном интерпретаторе.
  3. Проверка условий в командном интерпретаторе.
  4. Создание цикла по счетчику в командном интерпретаторе.
  5. Создание и использование функций в командном интерпретаторе.
  6. Создание простого сценария командного интерпретатора.
  7. Файлы начального запуска командного интерпретатора. Настройка среды.
  8. Использование утилит tar, dd, gzip для резервного копирования.
  9. Практическое использование утилит telnet и ftp.

Литература

  1. Керниган Б.В., Пайк Р. "UNIX - универсальная среда программирования" -М.: Финансы и статистика, 1992. - 304 с.
  2. Дегтярев Е.К. "Введение в UNIX" - М.; МП "Память", 1991. - 96 с.
  3. Топхем Д., Чыонг Х.В. "Юникс и Ксеникс" -М.: Мир, 1988. - 392 с.
  4. Кэвин Р., Фостер-Джонсон Э. "UNIX: справочник" -СПб: Питер Ком, 1999. - 384 с.
  5. Немет Э., Снайдер Г., Сибиасс С., Хейн Т.Р. "UNIX: руководство системного администратора" -К.: BHV, 1997 - 832 с.
  6. Робачевский А.М. "Операционная система UNIX" -СПб.: БХВ - Санкт-Петербург, 1999. - 528 с., ил.
  7. Дайсон П. "Операционная система UNIX. Настольный справочник" -М.: ЛОРИ, 1997. - 400 с.
  8. Беляков М.И., Рабовер Ю.И., Фридман А.Л. "Мобильная операционная система: Справочник" - М.: Радио и связь, 1991. - 208 с.
  9. Анонимный автор. "Максимальная безопасность в Linux" -К: Издательство "ДиаСофт", 2000, - 400 с.
  10. Шенк Т. "Red Hat Linux для системных администраторов. Энциклопедия пользователя" -К: Издательство "ДиаСофт", 2001, - 672 с.
  11. Эбен М., Таймэн Б. "FreeBSD. Энциклопедия пользователя" -К: ООО "ТИД "ДС", 2002, - 736 с.
Примечание
К переводу последних трех книг на русский я имел непосредственное отношение как переводчик и научный редактор.

Источники информации в Internet

История UNIX

http://perso.wanadoo.fr/levenez/unix/
Генеалогическое дерево версий UNIX вплоть до настоящего времени.
http://www.faqs.org/faqs/unix-faq/faq/part6/
 
http://www.crackmonkey.org/unix.html
 
http://catb.org/~esr
Персональная страница Эрика Реймонда. Обратите внимание на его новую книгу "The Art of UNIX Programming"!

Справочные руководства по командам:

http://opennet.ru
Ну, кто же их не знает... Основной источник информации о UNIX на русском языке.
http://citforum.ru
Центр информационных технологий моего родного МГУ. Источник огромного объема информации по ИТ на русском. Есть и переводы страниц справочного руководства BSD.
http://ln.com.ua/~openxs/projects/man
Проект "Страницы справочного руководства ОС UNIX на русском". Мой.
http://www.gnu.org/manual/manual.html
Справочные руководства по утилитам проекта GNU

Другие источники информации

http://catb.org/~esr
Персональная страница Эрика Реймонда. Это один из идеологов разработки свободно распространяемого программного обеспечения. Его работы надо читать как Евангелие...
http://linuxnews.ru
Новости Linux на русском. Полезная документация. Форум
http://www.freebsd.org
Основной сайт ОС FreeBSD
http://docs.sun.com
Документация по ОС Solaris
http://www.gnu.org
Сайт проекта GNU
Категория: Установка и настройка | Добавил: oleg (10.12.2007)
Просмотров: 917 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа

Beastie

Друзья сайта

Статистика

Онлайн всего: 5
Гостей: 5
Пользователей: 0
links

Copyright MyCorp © 2025