Читаем Linux полностью

Как можно видеть, это, в основном, конфигурационные файлы программ, установленных в операционной системе.

Каталог /lib – важные разделяемые библиотеки и модули ядра

Каталог содержит разделяемые библиотеки, необходимые для загрузки системы и запуска команд в корневой файловой системе, т. е. только для файлов, находящихся в каталоге /bin и /sbin. По меньшей мере одна из групп файлов должна находиться в каталоге /lib:

• libc.so.* – динамически подключаемая (линкуемая) библиотека С;

• Id* – линкер/загрузчик (linker/loader) времени выполнения.

Следующие каталоги также должны находится в каталоге /lib:

• /modules – загружаемые модули ядра;

• /security – модули РАМ.

Каталог /lost+found

Каталог, который обязательно должен присутствовать на каждом разделе. (Если, к примеру, винчестер разбит на три раздела, которые монтируются в /, /home, /var, то в корневой файловой системе, в катал ore /home и в каталоге /var будет присутствовать /lost+found.) Назначение этого каталога достаточно очевидно – при аварийных ситуациях возможна потеря информации. Специальная утилита chkfsk восстанавливает (если, конечно, это возможно) утерянную информацию. Однако иногда невозможно достоверно определить принадлежность восстановленных данных какому-нибудь определенному файлу. В этом случае восстановленные данные помещаются в каталог /lost+found.

Каталог /misc – точка монтирования автоматически монтируемых устройств

Каталог предназначен для использования в качестве точки монтирования дискет и CD-ROM программой automount.

Каталог /mnt – точка монтирования для временно монтируемой файловой системы

Каталог предназначен для того, чтобы системный администратор мог временно монтировать файловую систему (например, дискету или CD-ROM). В различных дистрибутивах Linux в каталоге /mnt могут находиться каталоги, являющиеся точками монтирования дискет, разделов жесткого диска, CD-ROM и т. п. Например, в только что установленном Red Hat 7.1 в каталоге /mnt находятся каталоги /cdrom и /floppy, которые являются точками монтирования для CD-ROM и дискет. Если в каталоге /mnt находятся какие-то файлы и к каталогу /mnt монтируется некий раздел, то файлы, находящиеся в каталоге /mnt, становятся недоступны до тех пор, пока не размонтируют раздел, подмонтированный к /mnt.

Каталог /opt – дополнительные программные пакеты

Каталог зарезервирован для инсталляции дополнительного программного обеспечения. Пакет, который устанавливается в каталог /opt, должен хранить свои неизменяемые файлы в каталоге /орt/<имя_пакета>, где <имя_пакета> – имя устанавливаемого пакета. Структура поддерева каталогов в каталоге <имя_пакета>:

• /bin;

• /doc;

• /lib;

• /man

И т. д.

Исполняемые модули надо размещать в каталоге /bin, а если пакет включает в себя документацию, ее надо сохранить в каталоге /doc. При наличии страниц справочной системы, размещать их в /орt/<имя_пакета>/man и использовать подструктуру каталогов, как в /usr/share/man. Специфичные для конкретного пакета библиотеки размещаются в /орt/<имя_пакета>/lib и т. д. Файлы пакета, которые могут изменяться, должны быть установлены в каталоге /var/opt. Хост-специфичные конфигурационные файлы должны быть установлены в /etc/opt.

Каталог /proc – точка монтирования виртуальной файловой системы procfs

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

Структура каталогов в /proc:

• /1 – подкаталог процесса, имя каталога соответствует номеру PID-процесса;

• /2;

• /3;

• /4;

• /5;

• /6;

• /7;

• /384;

• /389;

• /403;

• /418;

• /490;

• /5196;

• /bus – каталог содержит специфичную информацию, касающуюся шин (PCI, ISA);

• /driver – здесь сгруппированы различные драйверы;

• /fs – каталог содержит параметры файловых систем;

• /ide – каталог содержит информацию о IDE-подсистеме;

• /irq – маски для управления аппаратными прерываниями;

• /net – сетевая информация;

• /sys – системная информация;

• /sysvipc – информация о SysVIPC-ресурсах (msg, sem, shm);

• /tty – информация о TTY-драйверах;

• apm – расширенная информация управлением питанием;

• cmdline – командная строка ядра операционной системы;

• cpuinfo – информация о микропроцессоре;

• devices – доступные устройства (блочные и символьные);

• dma – используемые каналы DMA;

• execdomains – используемые домены;

• fb – Frame Buffer-устройства;

• filesystems – поддерживаемые файловые системы;

• interrupts – используемые прерывания;

• iomem – карта памяти;

• ioports – используемые порты ввода/вывода;

• isapnp – информация о ISA-устройствах;

• kcore – образ ядра операционной системы;

• kmsg – сообщения ядра;

• ksyms – таблица символов ядра;

• loadavg – средняя загрузка за последние 1, 5 и 15 минут;

• locks – «защелки» ядра;

• mdstat– файл, сообщающий о конфигурации RAID-массива системы;

• meminfo – информация о памяти;

• misc – различная информация, не попавшая не в одну из категорий;

• modules – список загруженных модулей;

• mounts – смонтированные файловые системы;

• mtrr – управление использованием памяти;

• partitions – список разделов, известных системе;

• pci – устаревшая информация о PCI-шине (см. /proc/bus/pci/);

• its – часы реального времени;

• scsi – информация о SCSI-устройствах;

• self – символическая ссылка к каталогу процесса, пытающегося получить информацию из /proc;

• slabinfo – информация о Slab;

• stat – разнообразная статистика;

• swaps – использование разделов и файлов подкачки;

• uptime – время работы системы без перезагрузки;

• version – версия ядра;

• video – BTTV-информация о видеоресурсах.

/proc/№процесса_PID-процесса

Каталог имеет имя, соответствующее номеру PID-процесса. Каждый процесс в системе имеет соответствующий ему каталог в /proc. В этом каталоге обязательно находятся следующие файлы:

• cmdline – файл, содержащий аргументы командной строки процесса;

• cpu – текущий и последний использовавшийся микропроцессор (только для мультипроцессорных систем);

• /cwd – ссылка на текущий рабочий каталог;

• environ – содержит значения переменных окружения;

• ехе – ссылка на исполняемый файл этого процесса;

• /fd – каталог, содержащий все файловые дескрипторы данного процесса;

• maps – карты памяти исполняемых и библиотечных файлов;

• mem – память, занятая этим процессом;

• /root – ссылка на корневой каталог этого процесса;

• stat – статус процесса;

• statm – информация об использовании процессом памяти;

• status – статус процесса в форме, воспринимаемой человеком.

/proc/ide – IDE-устройства, установленные в системе

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

/proc/net – сетевая информация

В этом каталоге содержится информация, относящаяся к сети. Следующие файлы являются общими как для протокола IPv4, так и IPv6:

• агр – ARP-таблица ядра;

• dev – сетевые устройства со своей статистикой;

• dev_stat – статус сетевого устройства;

• ip_fwchains – связи цепочки Firewall;

• ip_fwnames – имена цепочек Firewall;

• /ip_masq – каталог содержит таблицы маскарадинга [2] ;

• ip_masquerade – главная таблица маскарадинга;

• netstat – сетевая статистика;

• raw – статистика сетевых устройств;

• route – таблица маршрутизации ядра;

• /грс – каталог содержит RPC-информацию;

• rt_cache – кэш маршрутизации;

• snmp – данные SNMP;

• sockstat – статистика сокетов;

• tcp – ТСР-сокеты;

• tr_rif – таблица маршрутизации Token ring RIF;

• udp – UDP-сокеты;

• unix – UNIX-сокеты;

• wireless – данные беспроводного интерфейса (Wavelan и т. п.);

• igmp – IP-адреса, которые хост принимает;

• psched – параметры глобального администратора пакетов;

• netlink – список PF_NETLINK-сокетов;

• ip_mr_vifs – список виртуальных интерфейсов;

• ip_mr_cache – список кэша маршрутизации.

Файлы, приведенные ниже, используются протоколом IPv6:

• udp6 – UDP-сокеты (IPv6);

• tcp6 – ТСР-сокеты (IPv6);

• raw6 – статистика устройств (IPv6);

• igmp6 – IP-адреса, принимаемые хостом (IPv6);

• if_inet6 – список IРv6-интерфейсных адресов;

• ipv6_route – таблица маршрутизации для IPv6;

• rt6_stats – общая статистика IРv6-таблиц маршрутизации;

• sockstat6 – статистика сокетов (IPv6);

• snmp6 – SNMP-данные (IPv6).

/proc/parport – параллельные порты

Каталог содержит информацию обо всех параллельных портах, установленных в системе.

/proc/scsi – SCSI-устройства, установленные в системе

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

/proc/sys – системная информация

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

/proc/sys/dev – информация, специфическая для устройств

На сегодняшний день поддерживаются только устройства CD-ROM.

/proc/sys/fs – данные файловой системы

Каталог содержит различную информацию о файловой системе.

/proc/sys/kerriel – основные параметры ядра операционной системы

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

/proc/sys/net – сетевая «начинка»

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

• /802 – протокол Е802;

• /appletalk – Appletalk-протокол;

• /ах25 – АХ25;

• /bridge – Bridging;

• /core – основные параметры;

• /decnet – DEC-net;

• /ethernet – Ethernet-протокол;

• /ipv4 – IP версии 4;

• /ipv6 – IP версии 6;

• /ipx – IPX;

• /netrom – NET/ROM;

• /rose – X.25 PLP layer;

• /token-ring – IBM token ring;

• /unix – UNIX domain sockets;

• x25 – протокол X.25.

/proc/sys/sunrpc – удаленные вызовы процедур

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

/proc/sys/vm – виртуальная подсистема памяти

Файлы в этом каталоге используются для настройки виртуальной подсистемы памяти ядра Linux.

/proc/tty – терминалы

Здесь содержится информация о доступных и используемых терминалах.

Каталог /root – домашний каталог для пользователя root (администратора)

Существенных причин для вынесения домашнего каталога /root в корневой уровень нет. Однако существует практика выделения отдельного раздела для каталога /home, который при аварийных ситуациях может не подмонтироваться. По-видимому, по этой причине каталог /root вынесли на корневой уровень.

Каталог /sbin – системные исполняемые файлы

Утилиты, используемые для системного администрирования, и другие, используемые только администратором (пользователем root), хранятся в каталогах /sbin, /usr/sbin и /usr/local/sbin. Каталог /sbin содержит исполняемые файлы, необходимые для загрузки, восстановления, починки системы в добавление к файлам, находящимся в каталоге /bin. Программы, используемые после монтирования файловых систем, в основном помещаются в каталог /usr/sbin. Административные программы, используемые только на локальной системе, помещаются в каталог /usr/local/sbin.

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

• badblocks – утилита для проверки жестких дисков;

• ctrlaltdel – программа для перезагрузки операционной системы;

• dumpe2fs – утилита для работы с файловой системой;

• e2fsck – утилита для проверки файловой системы;

• fastboot – утилита, перезагружающая систему без проверки дисков;

• fasthalt – утилита, останавливающая систему без проверки дисков;

• fdisk – утилита, позволяющая производить различные действия с таблицей разделов (создавать, редактировать, удалять раздел и т. д.);

• fsck – утилита, проверяющая и восстанавливающая файловую систему;

• fsck.* – утилита, проверяющая и восстанавливающая файловую специфичную систему (например, Ext2);

• getty – программа getty;

• halt – команда, останавливающая систему;

• ifconfig – утилита конфигурации сетевого интерфейса;

• init – Init-процесс;

• kbdrate – утилита для настройки клавиатуры;

• lilo – загрузчик операционной системы;

• mke2fs – утилита создания файловой системы;

• mkfs – команда, создающая файловую систему;

• mkfs.* – команда, создающая специфичную файловую систему;

• mkswap – команда, устанавливающая своп-область;

• reboot – команда, перегружающая систему;

• route – утилита для таблицы IP-маршрутизации;

• swapon – утилита, разрешающая свопирование;

• swapoff – утилита, запрещающая свопирование;

• tune2fs – утилита тонкой настройки файловой системы;

• update – демон, периодически сбрасывающий буферы файловой системы.

Перейти на страницу:

Все книги серии Наиболее полное руководство

Linux
Linux

Книга посвящена операционной системе Linux. Приводятся подробные сведения о ее особенностях и возможностях, идеологии файловой системы, инсталляции и основных командах, вопросах компиляции ядра, настройках и сервисах. Большое внимание уделяется организации на базе Linux различных серверов и служб: электронной почты, WWW, FTP, INN, Proxy, NTP, а также проблемам администрирования сети, обеспечения безопасной работы и другим вопросам. Описаны способы настройки под Linux рабочих станций, в т. ч. и бездисковых, установки и эксплуатации на них графических сред типа X Window, а также конфигурирование модемных соединений, принтеров и сканеров, отладка взаимодействия с Linux-машинами такой «экзотической» периферии, как карманные компьютеры, мобильные телефоны, TV-тюнеры и т. п. Рассматриваемые в книге конфигурационные файлы и структура каталогов соответствуют дистрибутиву Red Hat Linux 7.x, тем не менее, при минимальной адаптации все упоминаемые в книге пакеты устанавливаются в любом дистрибутиве Linux.Для начинающих администраторов или пользователей Linux.

Алексей Александрович Стахнов

ОС и Сети, интернет

Похожие книги