Product SiteDocumentation Site

B.2. Организация Иерархии Файловой системы

B.2.1. Корневой каталог

Система Debian организована по Стандарту иерархии файловой системы (FHS от англ. Filesystem Hierarchy Standard). Этот стандарт определяет назначение каждого каталога. Например, каталоги верхнего уровня описываются следующим образом:
  • /bin/: основные программы;
  • /boot/: ядро Linux и другие файлы, необходимые для его своевременного процесса загрузки;
  • /dev/: файлы устройств;
  • /etc/: конфигурационные файлы;
  • /home/: личные файлы пользователей;
  • /lib/: основные библиотеки;
  • /media/*: точки монтирования съемных устройств (CD-ROM, USB ключей и так далее);
  • /mnt/: временные точки монтирования;
  • /opt/: дополнительные приложения, поставляемые третьими сторонами;
  • /root/: личные файлы администратора (root);
  • /run/: непостоянные данные среды выполнения, которые не сохраняются после перезагрузки (еще не включены в FHS)
  • /sbin/: системные программы;
  • /srv/: данные, используемые серверами, размещенными в этой системе;
  • /tmp/: временные файлы; часто этот каталог очищается при загрузке;
  • /usr/: приложения; этот каталог далее подразделяется на bin, sbin, lib (согласно той же логике,что и в корневом каталоге). Кроме того, /usr/share/ содержит архитектурно независимые данные. /usr/local/ предназначен для использования администратором при установке приложения вручную без перезаписи файлов, обрабатываемых системой управления пакетами (dpkg).
  • /var/: переменные данные, обрабатываемые демонами. Включает в себя файлы логов, очередей, буфера, кэша и так далее.
  • /proc/ и /sys/ являются специфическими для ядра Linux (и не входят в FHS). Они используются ядром для экспорта данных в пространство пользователя (смотри Раздел B.3.4, «Пространство пользователя» и Раздел B.5, «Пространство пользователя» для разъяснения этой идеи).

B.2.2. Домашний Каталог Пользователя

Содержимое домашнего каталога пользователя не стандартизировано, однако имеет несколько заслуживающих внимания соглашений. Одно из них: домашний каталог пользователя часто называют тильдой (“~”). Это полезно знать, потому что интерпретатор команд автоматически заменяет тильду в текущей директории (обычно на /home/имя пользователя/).
Традиционно, конфигурационные файлы приложения хранятся непосредственно в домашнем каталоге пользователя,но их имена обычно начинаются с точки (например, почтовый клиент mutt хранит свои настройки в ~/.muttrc). Обратите внимание, что имена, начинающиеся с точки, скрыты по умолчанию; и ls показывает их только, когда используется с опцией -a, а графическому файловому менеджеру нужно включить в настройках "показывать скрытые файлы".
Некоторые программы используют несколько конфигурационных файлов, расположенных в одной директории (например, ~/.ssh/). Некоторые приложения (такие как веб-браузер Iceweasel) также используют их каталоги для хранения кэша загруженных данных. Таким образом, эти каталоги могут занимать много дискового пространства..
Эти конфигурационные файлы хранятся непосредственно в домашнем каталоге пользователя, часто называемые dotfiles, быстро разрастаются, что приводит к беспорядку. К счастью, коллективные усилия под эгидой FreeDesktop.org привели к созданию “XDG базовой спецификации каталогов”, соглашения, направленного на наведение порядка среди этих файлов и каталогов. Эта спецификация устанавливает, что конфигурационные файлы должны храниться в каталоге ~/.config, файлы кэша в ~/.cache, а данные приложений в ~/.local (или в его подкаталогах). Это соглашение постепенно набирает силу, и некоторые приложения (особенно графические) начали следовать ему.
Рабочий стол графического окружения обычно отображает содержимое каталога ~/Desktop/ (или каталога, названного соответственно переводу в системах, сконфигурированных на языках отличных от английского).
Наконец, система электронной почты иногда сохраняет входящие сообщения в каталоге ~/Mail/.