Для чего нужен каждый каталог в Linux или структура директорий ОС Линукс

Cтруктура директорий операционной системы Linux

  1. /bin
  2. /boot
  3. /dev
  4. /etc
  5. /home
  6. /lost+found
  7. /lib
  8. /media
  9. /mnt
  10. /opt
  11. /proc
  12. /root
  13. /sbin
  14. /srv
  15. /sys
  16. /tmp
  17. /usr
  18. /var
  19. Раздел swap

Подробное описание структуры файловой системе Linux

/

Корневой раздел.

/bin

В этом каталоге хранятся основные команды операционной системы, такие как команды оболочки и команды файловой системы (ls, cp и т.д.).

/boot

Здесь хранятся образы ядер Linux и менеджер загрузки: grub, lilo и т.д.

/dev

Директория содержит файлы устройств, подключенные к операционной системе.

В Linux вообще всё рассматривается, как файл, даже различные устройства, такие как принтеры, жёсткие диски, сканеры и т.д. Для получения доступа к определённому устройству, необходимо чтобы существовал специальный файл. Аналогично устроено большинство UNIX-подобных операционных систем.

/etc

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

/home

В этом месте должна размещаться вся личная информация пользователей системы.

Почему должна? Потому что владелец компьютера может хранить свою личную информацию в любом понравившемся ему месте. В целях безопасности самой операционной системы и пользовательских данных хранить последние строго рекомендуется в директории /home. Для получения более высокой надежности операционной системы и сохранности пользовательской информации директорию /home рекомендуется выделить в отдельный раздел жесткого диска.

/home/userid

Это Домашняя папка пользователя 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

/proc — это директория, к которой примонтирована виртуальная файловая система procfs. Различная информация, которую ядро может сообщить пользователям, находится в “файлах” каталога /proc. Например, в файле /proc/modules находится список загруженных модулей ядра. А в файле /proc/cpuinfo — информация о процессоре компьютера. Подробнее можно прочитать здесь”.

/root

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

/sbin

Основные системные программы для администрирования и настройки системы (iptables, ifconfig и т.д.).

/srv

Параметры, которые специфичные для окружения системы. Чаще всего данная директория пуста.

/sys

/sys — это директория, к которой примонтирована виртуальная файловая система sysfs, которая добавляет в пространство пользователя информацию ядра Linux о присутствующих в системе устройствах и драйверах. В версии ядра ниже 2.6 не использовалась.

/sys/block

/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/local

По стандарту /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.

Раздел swap

Раздел виртуальной памяти для увеличения скорости обмена с оперативной памятью. Более подробнее можно узнать в этой статье.

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Комментарии (43)

Автар по умолчанию
  • Автар по умолчанию

    Анатолий

    офигенная статья. в букмаркс

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Mut@NT

    >Анатолий
    >офигенная статья. в букмаркс
    Рад, что пригодилось

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    xyz

    спасибо. очень пригодилось начинающему.

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    fr0g

    спасибо

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Gluttton

    Спасибо!
    Для меня начинающего прогодилось.
    >офигенная статья. в букмаркс
    Согласен.

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    bootlegger

    отличная статья, спасибо

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    viRUS

    то что нужно, как раз искал подобную статью.

    благодарю, отличная работа

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Mut@NT

    Хорошо, что пригодилось не только мне))

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Randomize

    Нашел мааленький недочет:
    в пояснениях надо поправить второй /usr/share на /usr/share/icons
    ЗЫ
    комент можно не публиковать

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Mut@NT

    Почему не публиковать? Страна должна знать своих героев :)
    Спасибо, поправил.

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    алексей

    большой респект, в линуксе пока ноль, но это я думаю очень поможет чуть разобраться

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    dexus

    спасибо!!

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Tosha

    Вы не написали про /usr/local и т.п.

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Mut@NT

    Tosha: Вы не написали про /usr/local и т.п.

    Добавил информацию по /usr/local

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    wgol

    А какие каталоги жизненно необходимы при загрузки системы?
    Какие из них можно перенести скажем на сервер и монтировать через NFS?

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Kent2010

    Обалденно в ногу!!! Спасибо!

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    VolCh

    opt, home и usr, как правило, можно безболезненно монтировать на удалённых фс, главное чтоб монтировались при старте.

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    georgi1991

    ух!!!! спасибо большое, просветил меня в это дело!!! наконец то узнал что к чему !

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    kkech

    Блин, случайно сегодня зашел на Ваш сайт и нашел решения проблем, решение которых искал уже несколько месяцев. Супер!!! Пока что это лучший ресурс про Linux из открытых мной. Так держать!

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Mut@NT

    kkech: Блин, случайно сегодня зашел на Ваш сайт и нашел решения проблем, решение которых искал уже несколько месяцев. Супер!!! Пока что это лучший ресурс про Linux из открытых мной. Так держать!

    Заходите почаще ;)

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    arigato

    А самого нужного то и нет. Папка /etc подробно не расписана. Тема раскрыта лишь частично – с трудом на троечку.

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Mut@NT

    arigato:

    bq.. arigato: А самого нужного то и нет. Папка /etc подробно не расписана. Тема раскрыта лишь частично – с трудом на троечку.

    Если подробно расписывать, то я думаю читать такой талмуд не каждый будет. Краткость – сестра таланта!! Эта публикация писалась для базового разъяснения, так как новичку разобраться и понять новую ОС непросто. Предлагайте конструктивные предложения, добавим, поправим.;)

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    misha

    Статья очень полезная! Сразу море вопросов отпало. (PS: с картой плавать проще)

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Migel

    Более-мение освоился с пингвином, но все же вот так почитаешь, параллельно открывая описаные директории и большая часть вопросов проясняется)))
    Спасибо, так держать!!!
    ЗЫ а по поводу толмудов – это уже к мануалу >600стр

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    DM

    “Поэтому потерянных inod в журналируемых файловых системах находиться меньше.”
    tsya.ru

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    айее... бразов

    Вуаля ))! Бомба !!!!!!!!!!!!!!!!!!!!!!!!!!!
    Класс высший!

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Irshat

    Кратко и ясно. Спасибо.

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    sam21

    Четко, понятно (тот случай, когда краткость-сестра таланта). Спасибо!

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Семён

    разорвало в клочья!

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Landgraf

    Вот таких статей нужно больше. А то, понимаешь, интерес есть, но после “окошек” очень трудно переучиваться.
    Автору огромное спасибо!

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Артем

    Спасибо автору!!!! приятно читать такую статью!!!
    все описано простым и доступным языком. мне как новичку оказалась очень полезной информация изложенная автором статьи. позволяет частично понять философию файловой организации Unix систем. еще раз СПАСИБО!!! Желаю нашему рунету, как можно больше таких авторов!!!

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Letchik

    Разрозненное представление об этой ОС стало более упорядоченным после прочтения. Спасибо за простой, не замудренный текст.

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Klofidor

    Благодарю за статью, разбиратся стало значительно лнгче! Осталось понять какие разделы стоит отделять и на какой объём памяти….

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Олег

    Статья хороша помогла,все на таких людях держится,в универе ни чего толком не объясняют

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Уася

    ЗБС

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    bulbul

    Спасибо за отельные пояснения, хотелось бы увидеть инфу по /run/

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Googl

    Отличная статья!пока лучше не видел на данную тему,автору уважуха!

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    burunduk

    Спасибо!
    Добавьте рядом кнопочку “В Закладки” ))

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Schaman

    Очень интересно на досуге поковырять структуру каиалогов и посмотреть где какая команда работает, а за одно – где и что распологаеатся.

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Forestwalker

    Вот добавить бы еще рекомендуемые размеры /соотношения размеров некоторых каталогов , которые советуются к монтированию отдельными разделами.

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    user

    Забыли /var/run

    В нем в виде файлов хронятся идентификаторы выполняемых процессов.
    Например
    $ cat /var/run/firefox
    1223

    1223 – PID процесса firefox

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    ads

    Респектос!!!LINUX рулит и реально проще и круче чем винда!!!!
    Все друзья гордятся за меня и я им linux ставлю и хакаю его!

    ↶ Отменить ответ Ответить

  • Автар по умолчанию

    Олег

    Супер! Все помогло!

    ↶ Отменить ответ Ответить