Основные каталоги файловой системы Unix




Изучение файловой системы

(продолжение)

Войдите в систему в режиме командной строки.

 

Основные каталоги файловой системы Unix

Цель: получить представление об общем устройстве дерева файловой системы Unix основных каталогах и их предназначении.

 

% ls -l /

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

/etc/

В каталоге /etc содержатся системные конфигурационные файлы. Все эти файлы - текстовые. Пример

/etc/

Имя компьютера: % more nodename % cd rc2.d % ls

В каталоге /etc/rc2.d содержатся файлы, исполняемые при загрузке операционной системы. По умолчанию загружается только ядро и его системные процессы. Все остальные сервисы, включая поддержку сети, обслуживание сеансов работы пользователей и проч., запускаются из файлов этого каталога.

 

/usr/

В каталоге /usr содержатся команды, утилиты, библиотеки, документы справочника man и т.п. То есть в этом каталоге находится вся "исполняемая" часть Unix, за исключеним ядра. Основные подкаталоги каталога /usr:

/usr/bin

(он же /bin) - команды Unix для обычного пользователя.

/usr/sbin

- команды Unix для выполнения задач администрирования.

/usr/ccs/bin

- команды, необходимые для компиляции и сборки программного обеспечения (make,ar,ld и др.) - кроме, собственно, компилятора Си, который с системой не поставляется.

/usr/lib

- библиотеки: статические и разделяемые.

/usr/include

- заголовочные файлы функций языка С.

/usr/share/man

(он же /usr/man) - документы справочника man.

/usr/openwin

- поддерево системы X-Windows (в исполнении SUN - Open Windows): команды и утилиты, библиотеки, справочник и т.п.

/usr/dt

- поддерево десктопа CDE для X-Windows.

Грубо говоря, X-Windows определяет как вообще работают программы с оконным интерфейсом, каков их протокол взаимодействия с X-сервером. Утилиты X-Windows устанавливают параметры X-сервера: используемые шрифты, геометрию окон, разрешения на подсоединение программ с других компьютеров и т.д.

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

Для X-Windows разработано несколько десктопов. CDE считается стандартным

/usr/local

- поддерево установки дополнительных программ.

В /usr/local устанавливается ПО общесистемного назначения: компиляторы, дополнительные утилиты, библиотеки. Большие пакеты прикладного характера ставятся обычно в /opt.

Каталог /usr/local по своей структуре копирует основные подкаталоги /usr: bin, lib, man, include.

/usr/

% ls bin % ls sbin % ls ccs/bin Просмотрите список команд в этих каталогах, прочтите справку по команде с заинтересовавшим вас именем. % ls lib

Обратите внимание на расширения файлов: .a - статические библиотеки (архивы объектных файлов), .so - динамические библиотеки. Файл libc - стандартная библиотека языка Си.

% file libc.so % file libc.a % ar -t libc.a

(последняя команда распечатывает содержание статической библиотеки)

% ls include % ls -l man % ls -l share/man

Каждый подкаталог каталога man содержит документы соответствующего раздела. Документы являются текстовыми файлами с символами форматирования. Команда man перед показом пропускает документ через форматирующую программу, а после этого - через пейджер more.

% ls share/man/man1 (последний символ - единица) % more share/man/man1/cp.1 (последний символ - единица) % man cp (сравните результаты двух последних команд) % ls openwin % ls openwin/bin % ls dt % ls dt/bin % ls local % ls local/bin

Обратите внимание, какие программы имеются в /usr/local/bin. попробуйте получить справку по этим программам (например, perl).

 

/dev/ и /devices/

В этих каталогах находятся специальные файлы типов b и c, представляющие собой устройства компьютера. Обычно в Unix спецфайлы лежат в каталоге /dev, однако может в /dev находятся только ссылки на спецфайлы, которые на самом деле размещены в каталоге /devices.

Спецфайлы в каталоге /devices организованы по принципу размещения устройств на системной шине компьютера.

 

/devices/

% ls

(устройства делятся на настоящие устройства, расположенные на шине PCI, и псевдо-устройства (например, оперативная память mm или псевдотерминалы pts, к которым подключается программа telnet)

Имена устройств из каталога /devices/ не используются в обычной практике по причине своей неудобозапоминаемости и, что главное, - из-за зависимости от аппаратной конфигурации компьютера. Вместо этого, как и во всех Unix-системах употребляются файлы из каталога /dev, которые, однако, в этой системе являются символическими связями, указывающими на соответствующий файлы в /devices. При этом достигается независимость от аппаратной части: например, /dev/dsk/c0t0d0s0 - это всегда первый раздел первого жесткого диска.

Конфигурирование каталогов /dev и /devices (если необходимо) происходит при загрузке операционной системы.

/dev/

% ls % ls -l term/a % ls -l term/b (это последовательные порты - они же терминалы) % ls -l pts (это псевдотерминалы, используемые программой telnet - они являются псевдоустройствами) % ls dsk % ls -l dsk (разделы дисков с блочным доступом; обратите внимание куда указывают связи) % ls rdsk % ls -l rdsk (разделы дисков с символьным доступом; обратите внимание куда указывают связи) % ls -l diskette (флоппи-диск) % ls -l mem (оперативная память - пседоустройство) % ls -l null (весь вывод, направленный в файл /dev/null, уничтожается, а ввод из него имеет нулевую длину; обратите внимание, что это псевдоустройство того же класса, что и /dev/mem)

/var/

В подкаталогах каталога /var хранятся временные или служебные файлы различных программ. Основные подкаталоги каталога /var:

/var/log

- журналы регистрации событий в системе.

/var/adm

- журналы регистрации событий административного контекста.

/var/mail

- новая (непрочитанная) поста пользователей.

/var/spool

- различные очереди (на печать, на отправку почты, на выполнение заданий по расписанию).

/var/tmp

- различные временные файлы.

/var/

% ls % ls -l log % tail log/syslog % ls -l mail % ls -ld tmp Обратите внимание: запись в этот каталог разрешена всем. Аналогичную функцию выполняет каталог /tmp, но природа его файловой системы другая, что, в общем-то, для пользователя не имеет значения. % ls -ld /tmp

/home/

В каталоге /home размещены домашние каталоги пользователей.

 

/opt/

В каталоге /opt располагаются большие пакеты прикладного ПО (аналог каталога Program Files).

 

/sbin/

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

/kernel/

В это каталоге расположено ядро операционной системы (файл genunix), драйверы устройств и другие служебные файлы.

% ls -l /home % ls -l /opt % ls -l /sbin % ls -l /kernel

Полезные утилиты

2.1. Текстовый редактор vi

Редактор vi является стандартным экранным текстовым редактором Unix. Несмотря на некоторую недружественность и кажущуюся архаичность своего интерефейса, этот редактор имеет несколько неоспоримых преимуществ:

1. vi работает с большим числом типов терминалов; если тип терминала неизвестен vi может перейти из экранного режима в однострочный с сохранением своей функциональности. Учитывая, что в MS Windows telnet эмулирует терминал не совсем корректно, vi может оказаться единственным работающим на этом терминале редактором.

2. В работе с vi используются только символы с кодами ASCII. Клавиши, генерирующие расширенные коды (стрелки, функциональные клавиши, < Del > и т.п.), требующие тонкой настройки терминала и не всегда поддерживаемые, не применяются. (Однако, стрелки - в дополнение к обычным командам перемещения курсора - могут работать, если терминал их поддерживает.)

3. vi производит редактирование аккуратно: не сворачивает длинные строки, не заменяет табуляции пробелами и т.п.

Эти преимущества, в особенности - последнее из них, имеют решающее значение при редактировании системных файлов. Например, сворачивание длинной строки в /etc/vfstab приведет к тому, что систему будет невозможно загрузить. Поэтому

Редактирование системных файлов производится только редактором vi!

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

Ниже приведены основные команды vi. Для информации по всем командам редактора обратитесь к справочнику man.

j - курсор на строку вниз;

k - курсор на строку вверх;

l (буква "эль") - курсор на символ вправо;

h - курсор на символ влево;

x - удалить символ под курсором;

dd - удалить строку, на которой стоит курсор;

i - перейти в режим вставки текста перед; символом, на котором стоит курсор;

a - (на конце строки) перейти в режим вставки текста в конец строки;

o - вставить новую строку после текущей и перейти в режим вставки с начала этой новой строки;

В режимах вставки работает < Backspace > для удаления предыдущего введенного символа.

< Esc > - вовзрат из режима вставки (любого) в командный режим.

/ word - поиск слова word в тексте от текущей позиции курсора вперед; курсор позиционируется в начало найденного фрагмента;

ZZ (< Shift >-z-z) - выход с сохранением файла;

:q! - выход без сохранения файла.

Для многих команд ввод числа перед командой означает "повторить команду указанное число раз": например, 5h смещает курсор на 5 символов вправо, а 10dd удаляет 10 строк подряд.

Распространенная ошибка: подача команд в режиме вставки или, что хуже, попытка ввода текста в командном режиме. (Представьте, что будет, если вы пытаетесь ввести текст "10x" или "1000dd", не переключившись в режим вставки!)

Загрузите файл b.txt в редактор vi:

% vi b.txt

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

 

Uch a

% >b

% ls -l



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2017-12-12 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: