Математика | ||||
Дунаев Сергей. '" UNIX SYSTEM V. Releas 4.2. Общее руководство,,— М.: "ДИАЛОГ-МИФИ", 1995. — 287с." -.,„,•, ISBN 5-86404-059-2 ч Рассматривается одна из наиболее популярных версий ОС Unix, на базе которой построены такие известные современные системы, как UnixWare и Solaris. Приводятся многочисленные 'примеры программирования на С, awk, Shell, C-Shell. Книга снабжена графическими иллюстрациями. Помимо детального описания конкретной реализации SVR4.2 дано сопоставление с предыдущими версиям UNIX SYSTEM V 3.2, которые имеют свое развитие' в системах SCO, HP-UX и AIX. Предназначена для широкого круга специалистов, работающих на различных платформах. втора | ||||
Эта книга создавалась в интернациональном коллективе международного института "ИНТЕРПРОГРАММА", София, Болгария. В сущности, никогда нельзя быть уверенным, что та версия UNIX, с которой вы работаете в данный момент, полностью соответ- •: ствует стандартам открытой архитектуры. Автор выражает •'глубокую признательность специалистам института: Христо Войкову (Борко) - приверженцу компьютеров Hewlett Packard,, ^' Огняну Траянову и Златко Станкову'- неутомимым пропагандистам IBM и операционной системы AIX, Георгию Шегунову -непревзойденному системному программисту на VAX и одновре-.менно тонкому ценитыю возможностей SCO и операционной системы SOLARIS. Особенная роль принадлежит- директору института Маре Несторовой в создании творческих условий и проведении серии экспериментальных работ, особенно в части исследований сетевых возможностей UNIX и взаимосвязи открытых систем. Без ее постоянного внимательного участия и тонких критических^ замечаний по ходу работы эта книга вообще никогда не была бы написана. С. Дунаев г. София, декабрь 1994 г. Оглавление Предисловие.....................................................................................4 Введение..........................................................................................6 Глава 1. Операционная система......................................................10 1.1. Ядро и процессы.................................................................................11 1.2. Диспетчер UNIX..................................................................................12 1.3. Процессы.............................................................................................12 1.3.1. Дескриптор и контекст процесса...............................................13 1.3.2. Иерархия процессов....................................................................13 1.3.3. Идентификаторы процесса.........................................................15 1.3.4. Группы процессов........................................................................15 1.3.5: Взаимодействие процессов........................................................16 1.3.6. "Процессы-демоны"....................................................г...............17 1.4. Межпроцессные коммуникации. ч......................................................18 1.4.1. Сигналы................................-......................................................19 1.4.2. Семафоры..:......................................,..........................................23 1.4.3. Программные каналы (Pipes).....................................................24 1.4.4. Очереди сообщений..................Т.................................................31 1.4.5. Разделяемая память.....................................................................32 1.5. Многопользовательская защита..........................................................33 1.5.1. Идентификаторы пользователя и группы..................................33 1.5.2. Привилегированный пользователь.............................................34 1.5.3. Эффективные и реальные идентификаторы..............................34 1.6. Свопинг и пейджинг.....:.......................,............................................» 35 Глава 2. Файловая система.............................................................39 2.1. Файлы....................................................................................v.............40 2.2. Каталоги.-..............................................................................................41 2.3. Специальные файлы............................................................................43 2.4. Создание файловой системы..............................................................45 2.5. Монтируемость и демонтируемость файловых систем.....................45 2.6. Внутренняя структура.........................................................................49 2.6.1. Распределение дискового пространства..................................— 49 2.6.2. Индексные дескрипторы............................................................50 Резюме к первым двум главам...................................................'..'.............56 Глава 3. Практическое знакомство с UNIX....,................................59 3.1. Логическое включение........................................................................59 3.2. Некоторые простые команды.............................................................61 3.3. Коррекция ошибочно введенных символов.......................................68 3.4. Клавиша Delete....................................................................................68 3.5. Логическое исключение......................................................................69 3.6. Стандартный вход и стандартный выход...........................................69 3.7. Переназначение выхода......................................................................71 3.8. Переназначение входа.........................................................................72 3.9. Переназначение входа и выхода.........................................................73 3.10. Конвейеры.........................................................................................73 3.11. Перехват результатов конвейера. Команда tee.................................76 3.12. Ввод нескольких команд водной строке.........................................77 3.13. Продолжение длинной команды на следующей строке..................78 3.14. Фоновый режим выполнения команд..............................................78 3.15. Командные файлы..........................................,..................................79 3.16. Символы-шаблоны и символы - замещения...................................81 Глава 4. Основные утилиты UNIX System \...................................82 4.1. Управление файлами...........................................................................82 4.1.1. cat - конкатенация файлов.....................,...................................82 4.1.2. chmod - изменение атрибутов защиты файла............................82 4.1.3. chown, chgrp - смена собственника или группы .файла............83 4.1.4. chroot - изменение root- директории для команды...................83 4.1.5. dd - копирование и преобразование файлов.............................84 4.1.6. df - сообщения о свободных и занятых блоках.........................85 4.1.7. dfspace - сообщение о свободном и занятом пространстве ( на диске.........................................................................................85 4.1.8. dircmp - сравнение каталогов и файлов.....................................85 4.1.9. du - вывод информации о размерах файлов в каталогах...........86 4.1.10. fdisk - создание и модификация таблицы разделов на диске.. 86 4.1.11. file - определить тип файла.......................................................86 4.1.12. format - форматирование флоппи-дисков................................87 4.1.13. mkfifo - создание FIFO-файла..................................................87 4.1.14. nl - нумерация строк в файле...................................................87 4.1.15. rename - изменение имени файла............................................88 4.1.16. touch - обновление времени доступа и модификации файлов89 4.1.17 tail - вывести-остаток файла.......................................................89 4.2. Обработка текстовых строк................................................................. 89 4.2.1. стр - побайтовое сравнение файлов.................•.........................89 4.2.2. comm - построчное сравнение файлов......................................90 4.2.3. cut - разбивка на поля................................................................90 4.2.4. fold - разбивка длинных строк...................................................91 4.2.5. grep - поиск по шаблону.............................................................91 4.2.6. paste - слияние строк...................'...............................................91 4.2.7. scd - пакетный редактор.............................................................92 4.2.8. tr - транслитерация и перекодировка.........................................94 4.2.9. uniq - операции над повторяющимися строками......................94 4.2.10. we - подсчет числа строк или символов..................................95 4.2.11. unix2dos - преобразование форматов файлов...........................95 4.3. Управление процессами......................................................................95 4.3.1. env - среда команды....................................................................95 4.3.2. exit - завершение работы командного интерпретатора.............96 4.3.3. export - добавление; переменных вереду команд......................96 4.3.4. kill - завершить процесс или послать ему сигнал......................96 4.3.5. nice - выполнить процесс с указанным приоритетом...............97 4.3.6. nohup - выполнение команды с защитой от прерываний.........97 4.3.7. renice - изменение приоритета выполняющихся процессов.....97 4.3.8. set - установка режимов..............................................................98 4.3.9. sleep - задержка выполнения,.....................................................98 4.3.10. trap - реакция на сигналы.........................................................99 4.3.11. wait - ожидание завершения процесса....................................;99 4.4. Информационные команды................................................................99 4.4.1. find - поиск файлов.....................................................................99 4.4.2. hd - вывод файла в заданном формате.....................................101 4.4.3. head - вывод начальных строк файлов.....................................101 4.3.4. hostname - печать и установка имени текущего хоста............101 4.3.5. finger - вывод информации о локальных и удаленных пользователях..............................................................................101 4.4.6. id - вывод идентификации пользователя и группы.................102 4.4.7. logname - вывод регистрационного имени пользователя........102 4.3.8. news - печать актуальных новостей..........................................102 4.3.9. ping - посылка эхо-запроса к сетевому хосту..........................103 4.3.10. pwd - вывод имени текущего каталога.........................,.........104 4.3.11. quota - показывает лимит дискового пространства для пользователей.......................................................................104 4.3.12. tty - вывод имени терминала..................................................104 4.3.13. uname - вывод имени системы...............................................104 4.3.14. whodo - список пользователей и работ..................................105 4.5. Поддержка систем программирования..............................................105 4.5.1. аг - библиотекарь......................................................................105 4.5.2. as - ассемблер......................................,.....................................106 4.5.3. ее - компилятор языка С..........................................................106 4.5.4. Id - компоновщик объектных файлов......................................107 Глава'5. Командный интерпретатор Shell......................................ivy 5.1. Версии Shell....................................................................................... 109 5.1.1. Соответствие шаблонов и символов замещения ....................ПО 5.1.2.'8Ье11-вьфажения, используемые в операторах условия...........111 5.1.3. Проверка объектов (файлы, каталоги и т. д.)..........................112 5.1.4. Формат условных операторов и операторов циклов...............ЦЗ 5.1.5. Позиционные параметры..........................................................114 5.1.6. Автоматический повтор командной строки.............................115 5.2. Программирование в стандартном Shell..........................................115 5.2.1. Shell-переменные......................................................................115 5.2.2. Присвоение значений переменным.........................................116 5.2.3. Вывод содержимого переменных.............................................116 5.2.4. Использование переменных Shell............................................117 ' 5.2.5. Специальные символы..............................................................118 5.2.6. Строка поиска...........................................................................121 5.2.7. Команда Set.,.............................................................................122 5.2.8. Аргументы Shell-программ.......................................................124 5.2.9. Простые условные операторы.^................................................126 5.2.10. Конвейеры и списки...............................................................126 5.2.11. Оператор for..........................................................................:.. 127. 5.2.12. UnepaTopif............................,..................................................129' 5.-2.13. Арифметические операции с переменными Shell..........тг.....130 5.2.14. Операторы while и until.........,.................................................131 5.2.15. Чтение данных с терминала....................................................132 5.2.16. Оператор case...................................'........................................132 5.2.17. Ваша программная среда........................................................133 5.3. Несколько слов о Korn Shell............................................................. 139 5.3.1. Работа с ksh...............................................................................140 5.3.2. Потоковый редактор sed...................................................:.......140 Глава 6. Программирование в С-Shell..................*.,„....................142 6.1. Файлы инициализации.....................................................................142 6.2. Псевдокоманды и макрокоманды....................................................143 6.3. Повторный вызов командных строк в C-Shell................................144 6.4. Редактирование командных строк....................................................145 6.5. Переменные C-Shell............................1.............................................146 6.5.1. Массивы....................................................................................146 . 6.5.2. Арифметические переменные...................................................146 6.5.3. Зарезервированные переменные C-Shell.;...............................147 6.6. Выполнение файла как С-Shell-процедуры.....................................149 6.7. Примеры C-Sheil-процедур.............,................................................149 Глава 7. Windowing Korn Shell и графический интерфейс с системой......................................................................152 , 7.1. Создание'Widgets...................................................................,...........15^ 7.1.1. Команды создания графических объектов...............................157 7.1.2. Получение и установка ресурсов.............................................158 7.1.3. Создание программ с WKSH..................................;.................1С9 Глава 8. UNIX в современном офисе.................'............................164 8.1. Обмен информацией с другими подключенными пользователями 166 8.2. Электронная почта............................................................................167 8.3. Календарь..........................................................................................173 8.4. Калькулятор.......................................................................................175 8.5. Текстовые редакторы UNIX.............................................................175 8.6. Текстообработка с nroffn с troff....................................................... 177 8.7. Генератор отчетов. Пример программы на awk...............................182 Глава 9. Разработка и компиляция программ.................................185 9.1. Компиляция и связь модулей...........................................................185 9.2. Инструментальные средства разработки программ на языке С ...'.. 187 9.3. Программа МАКЕ.............................................................................188 9.4. SCCS...................................................................................................190 9.4.1. Включение программ в систему SCCS..................;.................190 9.4.2. Команда get...............................................................................191 9.4.3. Запись новой версии файла.......................................,......,.......191 9.4.4. Команда help.............................................................................192 9.4.5. Команда рге............................................................................... 192 Глава 10. Защита информации......................................................193 10.1. Защита через пароли.......................................................................193 , 10.2. Защита файлов.......................................................,......................... 194 10.2.1. Атрибуты файлов.....................................................................194 10.2.2. Изменение режимов доступа к файлу...................................,195 10.2.3. Изменение группы и владельца..............................................196 10.2.4. Режимы доступа для каталогов...............................................197 10.3. Команды su и newgrp...................................................'....................197 10.4. Шифрование файлов....................................................................... 199 10.5. Типичные объекты атаки хекеров...................................................201 Глава 11. Коммуникации...............•..............................'..................Щ2 11.1. Базовые средства коммуникаций. Команды..................................2Й2 11.1.1. CU - обращение к удаленной UNIX-системе.......................202 11.1.2. MAILX - интерактивная система обработки сообщений......$)3 , 11.1.3. UUCP - копирование файлов из одной системы UNIX | в другую...................,..................................................................2!20 11.1.4 UUCICO - программа пересылки файлов в системе UNIX...222 '11.1.5. Команда uucheck......................................................................223 11.1.6. Команда uucleanup...................................................................223 11.1.7. Команда uushe4.....................................................................--223 11.1.8. Команда uustat...........................................................................223 11.1.9. Команда шпате......................................................................224 11.1.10. Команда uulog........................................-............-................224 11.1.11. Команда uutry..........................................................................224 11.1.12. Команда uuto................................................•.......•.................225 11.1.13. UUGETTY - установка типа терминала и его характеристик...............................................................225 11.1.14. UUX - выполнение команд на удаленных системах............226 11.1.15. UUXQT - выполнение удаленных заданий..........................226 11.2. Сетевые возможности UNIX SYSTEM V........................................227 11.2.1. TCP/IP и Internet протоколы..................................................227 11.2.2. Поддержка сетей Х.25..............................................................237 11.2.3. Гетерогенные сети с использованием маршрутизаторов.......239 Глава 12, Системное администрирование........................................241 12.1. Начальная загрузка ОС UNIX (System Startup)..............................241 12.1.1. Взаимодействие пользователей с ядром ОС...........................244 12.2. Административные каталоги и файлы.............................................246 • 12.3. Команда su.............................................................-......................-253 12.4. Останов операционной системы.....................................................254. 12.5. Утилиты администратора системы.................................................-255 12.5.1. Процесс сгоп............................................................................255 12.5.2. Sync - вывод содержимого системных буферов.....................256 12.5.3. Информация о состоянии файловой системы.......................256 12.5.4. Копирование, восстановление и проверка файловых систем............................•...............•..........,•..............256 12.6. Администрирование удаленных файловых систем.........................260 12.7. Администрирование системы UUCP..............................................263 12.8. Удаление и включение новых пользователей............................;....266 12.9. Обслуживание терминальных линий..............................................267 12.9.1. Поддержка кириллицы в UNIX.............................•...............-268 12.9.2. Программирование терминальных операций.........................269 12.9.3. Двадцать полезных советов администратору системы................275 Приложение. История создания UNIX и ее версии.........................2,77 Родословное дерево UNIX.......................................................................280 Литература..................................................••..........................* Цена: 50руб. |
||||