Структура директорий Linux: различия между версиями
Kekaloav (обсуждение | вклад) |
Kekaloav (обсуждение | вклад) |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 2: | Строка 2: | ||
/ | Приведено общее описание структуры директорий Linux/Unix | ||
Отдельные дистрибутивы изменяют ее частично или полностью | |||
/dev — Директория содержит файлы устройств, подключенные к операционной системе. | МОС в основном соответствует приведенному описанию | ||
<code>/</code> — Корневой раздел. | |||
<code>/bin</code> — В этом каталоге хранятся основные команды операционной системы, такие как команды оболочки и команды файловой системы (ls, cp и т.д.). | |||
<code>/boot</code> — Здесь хранятся образы ядер Linux и менеджер загрузки: grub, lilo и т.д. | |||
<code>/dev</code> — Директория содержит файлы устройств, подключенные к операционной системе. | |||
В Linux вообще всё рассматривается, как файл, даже различные устройства, такие как принтеры, жёсткие диски, сканеры и т.д. Для получения доступа к определённому устройству, необходимо чтобы существовал специальный файл. Аналогично устроено большинство UNIX-подобных операционных систем. | В Linux вообще всё рассматривается, как файл, даже различные устройства, такие как принтеры, жёсткие диски, сканеры и т.д. Для получения доступа к определённому устройству, необходимо чтобы существовал специальный файл. Аналогично устроено большинство UNIX-подобных операционных систем. | ||
/etc — В этой директории находится основная часть конфигурационных файлов самой операционной системы (настройки сети, список пользователей, групп и т.д.) и различных программ (Apache, Samba и т. д.). | <code>/etc</code> — В этой директории находится основная часть конфигурационных файлов самой операционной системы (настройки сети, список пользователей, групп и т.д.) и различных программ (Apache, Samba и т. д.). | ||
<code>/home</code> — В этом месте должна размещаться вся личная информация пользователей системы. | |||
Почему должна? Потому что владелец компьютера может хранить свою личную информацию в любом понравившемся ему месте. В целях безопасности самой операционной системы и пользовательских данных хранить последние строго рекомендуется в директории /home. Для получения более высокой надежности операционной системы и сохранности пользовательской информации директорию /home рекомендуется выделить в отдельный раздел жесткого диска. | Почему должна? Потому что владелец компьютера может хранить свою личную информацию в любом понравившемся ему месте. В целях безопасности самой операционной системы и пользовательских данных хранить последние строго рекомендуется в директории /home. Для получения более высокой надежности операционной системы и сохранности пользовательской информации директорию /home рекомендуется выделить в отдельный раздел жесткого диска. | ||
/home/username — Это Домашняя папка пользователя usermame. В ней хранится пользовательская часть конфигурационных файлов (настройки пользовательских программ) и вся личная информация пользователя. | <code>/home/username</code> — Это Домашняя папка пользователя usermame. В ней хранится пользовательская часть конфигурационных файлов (настройки пользовательских программ) и вся личная информация пользователя. | ||
Linux является многопользовательской системой и поэтому каждый пользователь имеет уникальный каталог для персональных файлов. Этот каталог называется Домашней папкой пользователя. Домашняя папка суперпользователя root располагается в корне файловой системы. | Linux является многопользовательской системой и поэтому каждый пользователь имеет уникальный каталог для персональных файлов. Этот каталог называется Домашней папкой пользователя. Домашняя папка суперпользователя root располагается в корне файловой системы. | ||
Такое разделение пользовательских директорий от файлов операционной системы упрощает резервирование данных и повышает надежность самой операционной системы. | Такое разделение пользовательских директорий от файлов операционной системы упрощает резервирование данных и повышает надежность самой операционной системы. | ||
/lost+found — В lost+found скидываются файлы, на которых не было ссылок ни в одной директории, хотя их inod не были помечены как свободные. Допустим при удалении файла из директории произошёл сбой (выключилось питание), то в системе останется потерянный inod, который вроде как и указывает на корректный файл, но этот файл не содержится ни в одной директории. В ext2 и других нежурналируемых файловых системах задача восстановления таких файлов ложится на fsck. Он находит inod, на которые нет ссылок, и создаёт на них ссылки в lost+found. После этого пользователь сможет просмотреть файлы и при необходимости переместить им куда надо, вернув нужные имена. | <code>/lost+found</code> — В lost+found скидываются файлы, на которых не было ссылок ни в одной директории, хотя их inod не были помечены как свободные. Допустим при удалении файла из директории произошёл сбой (выключилось питание), то в системе останется потерянный inod, который вроде как и указывает на корректный файл, но этот файл не содержится ни в одной директории. В ext2 и других нежурналируемых файловых системах задача восстановления таких файлов ложится на fsck. Он находит inod, на которые нет ссылок, и создаёт на них ссылки в lost+found. После этого пользователь сможет просмотреть файлы и при необходимости переместить им куда надо, вернув нужные имена. | ||
В ext3 и в других журналируемых файловых системах fsck просматривает журнал и видя, что операция завершилась не полностью, откатывает ее. Поэтому потерянных inod в журналируемых файловых системах находиться меньше. | В ext3 и в других журналируемых файловых системах fsck просматривает журнал и видя, что операция завершилась не полностью, откатывает ее. Поэтому потерянных inod в журналируемых файловых системах находиться меньше. | ||
/lib — Эта директория предназначена для хранения системных библиотек, необходимые для работы программ из директорий /bin и /sbin и операционной системы вцелом. | <code>/lib</code> — Эта директория предназначена для хранения системных библиотек, необходимые для работы программ из директорий /bin и /sbin и операционной системы вцелом. | ||
<code>/media</code> — Директория, используемая для автоматического монтирования различных устройств USB-накопителей, CD-ROM и т.д. При вставке в привод CD-ROM диска он автоматически подключается во вложенный каталог этой директории. | |||
<code>/mnt</code> — Обычно эта директория используется для ручного подключения устройств. В эту директорию командой mount «руками» монтируются различные USB-накопители, CD-ROM и т.д. | |||
<code>/opt</code> — Директория, в которой обычно размещаются установленные программы, имеющие большой дисковый размер или вспомогательные пакеты (например /opt/openoffice.org). | |||
<code>/proc</code> — это директория, к которой примонтирована виртуальная файловая система procfs. Различная информация, которую ядро может сообщить пользователям, находится в "файлах" каталога /proc. Например, в файле /proc/modules находится список загруженных модулей ядра. А в файле /proc/cpuinfo — информация о процессоре компьютера. | |||
<code>/root</code> — Это домашний каталог или Домашняя папка суперпользователя. Эта директория фактически ничем не отличается от директории обычного пользователя. Данная директория по умолчанию всегда расположена в корневом каталоге файловой системы. Это было сделано для предотвращения проблем с доступом к директории /home. В случае когда к каталогу /home по какой-то причине невозможно получить доступ, в системе всегда есть возможность залогиниться под учетной записью суперпользователя, для решения возникших проблем с доступом. | |||
<code>/sbin</code> — Основные системные программы для администрирования и настройки системы (iptables, ifconfig и т.д.). | |||
<code>/srv</code> — Параметры, которые специфичные для окружения системы. Чаще всего данная директория пуста. | |||
<code>/sys</code> — это директория, к которой примонтирована виртуальная файловая система sysfs, которая добавляет в пространство пользователя информацию ядра Linux о присутствующих в системе устройствах и драйверах. В версии ядра ниже 2.6 не использовалась. | |||
<code>/sys/block</code> — содержит директории всех блочных устройств, присутствующих в данный момент в системе. | |||
<code>/sys/bus</code> — В этой директории находится список шин, определенных в ядре Linux (eisa, pci и т.д.). | |||
<code>/sys/class</code> — Каталог содержит список группированных устройств по классам (printer, scsi-devices и т.д.). | |||
<code>/tmp</code> — Временное хранилище данных. Аналог папки в ОС Windows — C:/Windows/Temp. Все пользователи имеют права чтения и записи в этом каталоге. | |||
<code>/usr</code> — В этом каталоге хранятся все установленные пакеты программ, документация, исходный код ядра и система X Window. Все пользователи кроме суперпользователя root имеют доступ только для чтения. Может быть смонтирована по сети и может быть общей для нескольких машин. | |||
<code>/usr/bin</code> — Директория дополнительных программ для всех учетных записей. | |||
<code>/usr/games</code> — Каталог для размещения доступных компьютерных игр в системе. | |||
<code>/usr/include</code> — Заголовочные файлы С++. | |||
<code>/usr/lib</code> — Системные библиотеки для программ, расположенных в директории /usr. | |||
<code>/usr/loca</code>l — По стандарту /usr должен быть общим для нескольких компьютеров и смонтирован по сети, а /usr/local должен содержать установленные пакеты программы только на локальной машине (к примеру, /usr - бюджет семьи, а /usr/local - личный кошелек каждого). Но чаще всего директория /usr/local используется для установки программ, которые не предназначены для конкретного дистрибутива (к примеру для пакетного дистрибутива Ubuntu в /usr находятся "родные" установленные пакеты, а /usr/local находятся собранные пакеты из исходников). | |||
<code>/usr/sbin</code> — Дополнительные системные программы. | |||
<code>/usr/share</code> — Общие данные установленных программ. | |||
<code>/usr/share/icons</code> — В каталоге находятся все иконки системы. | |||
<code>/usr/share/doc</code> — Директория, в которой обычно находится справочная документация по установленным программам. | |||
<code>/usr/src</code> — Исходные кода (например, здесь располагаются исходные кода ядра). | |||
<code>/var</code> — Это каталог для часто меняющихся данных. Здесь находятся журналы операционной системы, системные log-файлы, cache-файлы и т. д. | |||
<code>/var/cache</code> — В этом месте хранятся все кэши различных программ. | |||
<code>/var/games</code> — В этом месте расположены файлы с игровыми достижениями. | |||
<code>/var/lib</code> — Постоянные данные, изменяемые программами в процессе работы (например, базы данных, метаданные пакетного менеджера и др.). | |||
/ | <code>/var/lock</code> — Здесь лежат lock-файлы, указывающие на занятость некоторого ресурса. | ||
/ | <code>/var/log</code> — В этом месте хранятся все log-файлы. | ||
/ | <code>/var/spool</code> — Задачи, ожидающие обработки (например, очереди печати, непрочитанные или не отправленные письма, задачи cron и т. д.). | ||
/ | <code>/var/www</code> — В этом месте размещаются Web-страницы для сервера Apache. | ||
[[Категория:МОС]] |
Текущая версия на 12:32, 27 апреля 2023
Приведено общее описание структуры директорий Linux/Unix
Отдельные дистрибутивы изменяют ее частично или полностью
МОС в основном соответствует приведенному описанию
/
— Корневой раздел.
/bin
— В этом каталоге хранятся основные команды операционной системы, такие как команды оболочки и команды файловой системы (ls, cp и т.д.).
/boot
— Здесь хранятся образы ядер Linux и менеджер загрузки: grub, lilo и т.д.
/dev
— Директория содержит файлы устройств, подключенные к операционной системе.
В Linux вообще всё рассматривается, как файл, даже различные устройства, такие как принтеры, жёсткие диски, сканеры и т.д. Для получения доступа к определённому устройству, необходимо чтобы существовал специальный файл. Аналогично устроено большинство UNIX-подобных операционных систем.
/etc
— В этой директории находится основная часть конфигурационных файлов самой операционной системы (настройки сети, список пользователей, групп и т.д.) и различных программ (Apache, Samba и т. д.).
/home
— В этом месте должна размещаться вся личная информация пользователей системы.
Почему должна? Потому что владелец компьютера может хранить свою личную информацию в любом понравившемся ему месте. В целях безопасности самой операционной системы и пользовательских данных хранить последние строго рекомендуется в директории /home. Для получения более высокой надежности операционной системы и сохранности пользовательской информации директорию /home рекомендуется выделить в отдельный раздел жесткого диска.
/home/username
— Это Домашняя папка пользователя usermame. В ней хранится пользовательская часть конфигурационных файлов (настройки пользовательских программ) и вся личная информация пользователя.
Linux является многопользовательской системой и поэтому каждый пользователь имеет уникальный каталог для персональных файлов. Этот каталог называется Домашней папкой пользователя. Домашняя папка суперпользователя root располагается в корне файловой системы.
Такое разделение пользовательских директорий от файлов операционной системы упрощает резервирование данных и повышает надежность самой операционной системы.
/lost+found
— В lost+found скидываются файлы, на которых не было ссылок ни в одной директории, хотя их inod не были помечены как свободные. Допустим при удалении файла из директории произошёл сбой (выключилось питание), то в системе останется потерянный inod, который вроде как и указывает на корректный файл, но этот файл не содержится ни в одной директории. В ext2 и других нежурналируемых файловых системах задача восстановления таких файлов ложится на fsck. Он находит inod, на которые нет ссылок, и создаёт на них ссылки в lost+found. После этого пользователь сможет просмотреть файлы и при необходимости переместить им куда надо, вернув нужные имена.
В ext3 и в других журналируемых файловых системах fsck просматривает журнал и видя, что операция завершилась не полностью, откатывает ее. Поэтому потерянных inod в журналируемых файловых системах находиться меньше.
/lib
— Эта директория предназначена для хранения системных библиотек, необходимые для работы программ из директорий /bin и /sbin и операционной системы вцелом.
/media
— Директория, используемая для автоматического монтирования различных устройств USB-накопителей, CD-ROM и т.д. При вставке в привод CD-ROM диска он автоматически подключается во вложенный каталог этой директории.
/mnt
— Обычно эта директория используется для ручного подключения устройств. В эту директорию командой mount «руками» монтируются различные USB-накопители, CD-ROM и т.д.
/opt
— Директория, в которой обычно размещаются установленные программы, имеющие большой дисковый размер или вспомогательные пакеты (например /opt/openoffice.org).
/proc
— это директория, к которой примонтирована виртуальная файловая система procfs. Различная информация, которую ядро может сообщить пользователям, находится в "файлах" каталога /proc. Например, в файле /proc/modules находится список загруженных модулей ядра. А в файле /proc/cpuinfo — информация о процессоре компьютера.
/root
— Это домашний каталог или Домашняя папка суперпользователя. Эта директория фактически ничем не отличается от директории обычного пользователя. Данная директория по умолчанию всегда расположена в корневом каталоге файловой системы. Это было сделано для предотвращения проблем с доступом к директории /home. В случае когда к каталогу /home по какой-то причине невозможно получить доступ, в системе всегда есть возможность залогиниться под учетной записью суперпользователя, для решения возникших проблем с доступом.
/sbin
— Основные системные программы для администрирования и настройки системы (iptables, ifconfig и т.д.).
/srv
— Параметры, которые специфичные для окружения системы. Чаще всего данная директория пуста.
/sys
— это директория, к которой примонтирована виртуальная файловая система sysfs, которая добавляет в пространство пользователя информацию ядра Linux о присутствующих в системе устройствах и драйверах. В версии ядра ниже 2.6 не использовалась.
/sys/block
— содержит директории всех блочных устройств, присутствующих в данный момент в системе.
/sys/bus
— В этой директории находится список шин, определенных в ядре Linux (eisa, pci и т.д.).
/sys/class
— Каталог содержит список группированных устройств по классам (printer, scsi-devices и т.д.).
/tmp
— Временное хранилище данных. Аналог папки в ОС Windows — C:/Windows/Temp. Все пользователи имеют права чтения и записи в этом каталоге.
/usr
— В этом каталоге хранятся все установленные пакеты программ, документация, исходный код ядра и система X Window. Все пользователи кроме суперпользователя root имеют доступ только для чтения. Может быть смонтирована по сети и может быть общей для нескольких машин.
/usr/bin
— Директория дополнительных программ для всех учетных записей.
/usr/games
— Каталог для размещения доступных компьютерных игр в системе.
/usr/include
— Заголовочные файлы С++.
/usr/lib
— Системные библиотеки для программ, расположенных в директории /usr.
/usr/loca
l — По стандарту /usr должен быть общим для нескольких компьютеров и смонтирован по сети, а /usr/local должен содержать установленные пакеты программы только на локальной машине (к примеру, /usr - бюджет семьи, а /usr/local - личный кошелек каждого). Но чаще всего директория /usr/local используется для установки программ, которые не предназначены для конкретного дистрибутива (к примеру для пакетного дистрибутива Ubuntu в /usr находятся "родные" установленные пакеты, а /usr/local находятся собранные пакеты из исходников).
/usr/sbin
— Дополнительные системные программы.
/usr/share
— Общие данные установленных программ.
/usr/share/icons
— В каталоге находятся все иконки системы.
/usr/share/doc
— Директория, в которой обычно находится справочная документация по установленным программам.
/usr/src
— Исходные кода (например, здесь располагаются исходные кода ядра).
/var
— Это каталог для часто меняющихся данных. Здесь находятся журналы операционной системы, системные log-файлы, cache-файлы и т. д.
/var/cache
— В этом месте хранятся все кэши различных программ.
/var/games
— В этом месте расположены файлы с игровыми достижениями.
/var/lib
— Постоянные данные, изменяемые программами в процессе работы (например, базы данных, метаданные пакетного менеджера и др.).
/var/lock
— Здесь лежат lock-файлы, указывающие на занятость некоторого ресурса.
/var/log
— В этом месте хранятся все log-файлы.
/var/spool
— Задачи, ожидающие обработки (например, очереди печати, непрочитанные или не отправленные письма, задачи cron и т. д.).
/var/www
— В этом месте размещаются Web-страницы для сервера Apache.