- Cтруктура файловой системы Linux
- / — корень
- /bin — (binaries) бинарные файлы пользователя
- /sbin — (system binaries) системные исполняемые файлы
- /etc — (etcetera) конфигурационные файлы
- /dev — (devices) файлы устройств
- /proc — (proccess) информация о процессах
- /var (variable) — Переменные файлы
- /var/log — Файлы логов
- /var/lib — базы данных
- /var/mail — почта
- /var/spool — очереди
- /var/lock — файлы блокировок
- /var/run — PID процессов
- /tmp (temp) — Временные файлы
- /usr — (user applications) Программы пользователя
- /usr/bin/ — Исполняемые файлы
- /usr/sbin/
- /usr/lib/ — Библиотеки
- /usr/local — Файлы пользователя
- /home — Домашняя папка
- /boot — Файлы загрузчика
- /lib (library) — Системные библиотеки
- /opt (Optional applications) — Дополнительные программы
- /mnt (mount) — Монтирование
- /media — Съемные носители
- /srv (server) — Сервер
- /run — процессы
- /sys (system) — Информация о системе
- Выводы
- Для чего нужен каждый каталог в Linux или структура директорий ОС Линукс
- Cтруктура директорий операционной системы Linux
- / Наверх
- /bin Наверх
- /boot Наверх
- /dev Наверх
- /etc Наверх
- /home Наверх
- /home/username Наверх
- /lost+found Наверх
- /lib Наверх
- /media Наверх
- /mnt Наверх
- /opt Наверх
- /proc Наверх
- /root Наверх
- /sbin Наверх
- /srv Наверх
- /sys Наверх
- /sys/block Наверх
- /sys/bus Наверх
- /sys/class Наверх
- /tmp Наверх
- /usr Наверх
- /usr/bin Наверх
- /usr/games Наверх
- /usr/include Наверх
- /usr/lib Наверх
- /usr/local Наверх
- /usr/sbin Наверх
- /usr/share Наверх
- /usr/share/icons Наверх
- /usr/share/doc Наверх
- /usr/src Наверх
- /var Наверх
- /var/cache Наверх
- /var/games Наверх
- /var/lib Наверх
- /var/lock Наверх
- /var/log Наверх
- /var/spool Наверх
- /var/www Наверх
- Раздел Наверх
Cтруктура файловой системы Linux
Понимание файловой системы Linux, структуры каталогов, размещения конфигурационных, исполняемых и временных файлов поможет вам лучше разбираться в своей системе и стать успешным системным администратором. Файловая система Linux будет непривычна именно для новичка, только что перешедшего с Windows, ведь здесь все совсем по-другому.
В отличие от Windows, программа не находится в одной папке, а, как правило, распределена по корневой файловой системе. Это распределение поддается определенным правилам. Вы когда-нибудь задавались вопросом, почему некоторые программы находятся в папке /bin, или /sbin, /usr/sbin, /usr/local/bin, в чем разница между этими каталогами?
Например, программа less, находится в каталоге /usr/bin, но почему не в /sbin или /usr/sbin. А такие программы, как ifconfig или fdisk находятся в каталоге /sbin и нигде иначе. В этой статье будет полностью рассмотрена структура файловой системы Linux, после ее прочтения вы сможете понять смысл использования большинства папок в корневом каталоге Linux.
/ — корень
Это главный каталог в системе Linux. По сути, это и есть файловая система Linux. Здесь нет дисков или чего-то подобного, как в Windows. Вместо этого, адреса всех файлов начинаются с корня, а дополнительные разделы, флешки или оптические диски подключаются в папки корневого каталога.
Только пользователь root имеет право читать и изменять файлы в этом каталоге. Обратите внимание, что у пользователя root домашний каталог /root, но не сам /.
/bin — (binaries) бинарные файлы пользователя
Этот каталог содержит исполняемые файлы. Здесь расположены программы, которые можно использовать в однопользовательском режиме или режиме восстановления. Одним словом, те утилиты, которые могут использоваться пока еще не подключен каталог /usr/. Это такие общие команды, как cat, ls, tail, ps и т д.
/sbin — (system binaries) системные исполняемые файлы
Так же как и /bin, содержит двоичные исполняемые файлы, которые доступны на ранних этапах загрузки, когда не примонтирован каталог /usr. Но здесь находятся программы, которые можно выполнять только с правами суперпользователя. Это разные утилиты для обслуживания системы. Например, iptables, reboot, fdisk, ifconfig,swapon и т д.
/etc — (etcetera) конфигурационные файлы
В этой папке содержатся конфигурационные файлы всех программ, установленных в системе. Кроме конфигурационных файлов, в системе инициализации Init Scripts, здесь находятся скрипты запуска и завершения системных демонов, монтирования файловых систем и автозагрузки программ. Структура каталогов linux в этой папке может быть немного запутанной, но предназначение всех их — настройка и конфигурация.
/dev — (devices) файлы устройств
В Linux все, в том числе внешние устройства являются файлами. Таким образом, все подключенные флешки, клавиатуры, микрофоны, камеры — это просто файлы в каталоге /dev/. Этот каталог содержит не совсем обычную файловую систему. Структура файловой системы Linux и содержащиеся в папке /dev файлы инициализируются при загрузке системы, сервисом udev. Выполняется сканирование всех подключенных устройств и создание для них специальных файлов. Это такие устройства, как: /dev/sda, /dev/sr0, /dev/tty1, /dev/usbmon0 и т д.
/proc — (proccess) информация о процессах
Это тоже необычная файловая система, а подсистема, динамически создаваемая ядром. Здесь содержится вся информация о запущенных процессах в реальном времени. По сути, это псевдофайловая система, содержащая подробную информацию о каждом процессе, его Pid, имя исполняемого файла, параметры запуска, доступ к оперативной памяти и так далее. Также здесь можно найти информацию об использовании системных ресурсов, например, /proc/cpuinfo, /proc/meminfo или /proc/uptime. Кроме файлов в этом каталоге есть большая структура папок linux, из которых можно узнать достаточно много информации о системе.
/var (variable) — Переменные файлы
Название каталога /var говорит само за себя, он должен содержать файлы, которые часто изменяются. Размер этих файлов постоянно увеличивается. Здесь содержатся файлы системных журналов, различные кеши, базы данных и так далее. Дальше рассмотрим назначение каталогов Linux в папке /var/.
/var/log — Файлы логов
Здесь содержатся большинство файлов логов всех программ, установленных в операционной системе. У многих программ есть свои подкаталоги в этой папке, например, /var/log/apache — логи веб-сервера, /var/log/squid — файлы журналов кеширующего сервера squid. Если в системе что-либо сломалось, скорее всего, ответы вы найдете здесь.
/var/lib — базы данных
Еще один тип изменяемых файлов — это файлы баз данных, пакеты, сохраненные пакетным менеджером и т д.
/var/mail — почта
В эту папку почтовый сервер складывает все полученные или отправленные электронные письма, здесь же могут находиться его логи и файлы конфигурации.
/var/spool — очереди
Изначально, эта папка отвечала за очереди печати на принтере и работу набора программ cups.
/var/lock — файлы блокировок
Здесь находятся файлы блокировок. Эти файлы означают, что определенный ресурс, файл или устройство занят и не может быть использован другим процессом. Apt-get, например, блокирует свою базу данных, чтобы другие программы не могли ее использовать, пока программа с ней работает.
/var/run — PID процессов
Содержит файлы с PID процессов, которые могут быть использованы, для взаимодействия между программами. В отличие от каталога /run данные сохраняются после перезагрузки.
/tmp (temp) — Временные файлы
В этом каталоге содержатся временные файлы, созданные системой, любыми программами или пользователями. Все пользователи имеют право записи в эту директорию.
Файлы удаляются при каждой перезагрузке. Аналогом Windows является папка Windows\Temp, здесь тоже хранятся все временные файлы.
/usr — (user applications) Программы пользователя
Это самый большой каталог с большим количеством функций. Тут наиболее большая структура каталогов Linux. Здесь находятся исполняемые файлы, исходники программ, различные ресурсы приложений, картинки, музыку и документацию.
/usr/bin/ — Исполняемые файлы
Содержит исполняемые файлы различных программ, которые не нужны на первых этапах загрузки системы, например, музыкальные плееры, графические редакторы, браузеры и так далее.
/usr/sbin/
Содержит двоичные файлы программ для системного администрирования, которые нужно выполнять с правами суперпользователя. Например, таких как Gparted, sshd, useradd, userdel и т д.
/usr/lib/ — Библиотеки
Содержит библиотеки для программ из /usr/bin или /usr/sbin.
/usr/local — Файлы пользователя
Содержит файлы программ, библиотек, и настроек созданные пользователем. Например, здесь могут храниться программы собранные и установленные из исходников и скрипты, написанные вручную.
/home — Домашняя папка
В этой папке хранятся домашние каталоги всех пользователей. В них они могут хранить свои личные файлы, настройки программ и т д. Например, /home/sergiy и т д. Если сравнивать с Windows, то это ваша папка пользователя на диске C, но в отличии от WIndows, home как правило размещается на отдельном разделе, поэтому при переустановке системы все ваши данные и настройки программ сохранятся.
/boot — Файлы загрузчика
Содержит все файлы, связанные с загрузчиком системы. Это ядро vmlinuz, образ initrd, а также файлы загрузчика, находящие в каталоге /boot/grub.
/lib (library) — Системные библиотеки
Содержит файлы системных библиотек, которые используются исполняемыми файлами в каталогах /bin и /sbin.
Библиотеки имеют имена файлов с расширением *.so и начинаются с префикса lib*. Например, libncurses.so.5.7. Папка /lib64 в 64 битных системах содержит 64 битные версии библиотек из /lib. Эту папку можно сравнить с WIndows\system32, там тоже сгружены все библиотеки системы, только там они лежат смешанные с исполняемыми файлами, а здесь все отдельно.
/opt (Optional applications) — Дополнительные программы
В эту папку устанавливаются проприетарные программы, игры или драйвера. Это программы созданные в виде отдельных исполняемых файлов самими производителями. Такие программы устанавливаются в под-каталоги /opt/, они очень похожи на программы Windows, все исполняемые файлы, библиотеки и файлы конфигурации находятся в одной папке.
/mnt (mount) — Монтирование
В этот каталог системные администраторы могут монтировать внешние или дополнительные файловые системы.
/media — Съемные носители
В этот каталог система монтирует все подключаемые внешние накопители — USB флешки, оптические диски и другие носители информации.
/srv (server) — Сервер
В этом каталоге содержатся файлы серверов и сервисов. Например, могут содержаться файлы веб-сервера apache.
/run — процессы
Еще один каталог, содержащий PID файлы процессов, похожий на /var/run, но в отличие от него, он размещен в TMPFS, а поэтому после перезагрузки все файлы теряются.
/sys (system) — Информация о системе
Назначение каталогов Linux из этой папки — получение информации о системе непосредственно от ядра. Это еще одна файловая система организуемая ядром и позволяющая просматривать и изменить многие параметры работы системы, например, работу swap, контролировать вентиляторы и многое другое.
Выводы
Теперь структура файловой системы Linux не кажется вам темным лесом. Конечно еще есть с чем разбираться, одна только подсистема /proc, /sys или /dev чего стоит. Но база уже заложена. Если я что-то упустил — напишите в комментариях.
Источник
Для чего нужен каждый каталог в Linux или структура директорий ОС Линукс
Операционная система Linux имеет четкую структуру расположения директорий и файлов. Поэтому многие люди, начинающие изучать линукс, сталкиваются с трудностью понимания нужности каждой отдельной директории.
В этой статье приведен список основных директорий файловой системы Линукс и их краткое описание.
Cтруктура директорий операционной системы Linux
/ Наверх
/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 Наверх
/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»
офигенная статья. в букмаркс
>Анатолий
>офигенная статья. в букмаркс
Рад, что пригодилось
спасибо. очень пригодилось начинающему.
Спасибо!
Для меня начинающего прогодилось.
>офигенная статья. в букмаркс
Согласен.
отличная статья, спасибо
то что нужно, как раз искал подобную статью.
благодарю, отличная работа
Хорошо, что пригодилось не только мне))
Нашел мааленький недочет:
в пояснениях надо поправить второй /usr/share на /usr/share/icons
ЗЫ
комент можно не публиковать
Почему не публиковать? Страна должна знать своих героев 🙂
Спасибо, поправил.
большой респект, в линуксе пока ноль, но это я думаю очень поможет чуть разобраться
Вы не написали про /usr/local и т.п.
Tosha: Вы не написали про /usr/local и т.п.
Добавил информацию по /usr/local
А какие каталоги жизненно необходимы при загрузки системы?
Какие из них можно перенести скажем на сервер и монтировать через NFS ?
Обалденно в ногу. Спасибо!
opt, home и usr, как правило, можно безболезненно монтировать на удалённых фс, главное чтоб монтировались при старте.
ух. спасибо большое, просветил меня в это дело. наконец то узнал что к чему !
Блин, случайно сегодня зашел на Ваш сайт и нашел решения проблем, решение которых искал уже несколько месяцев. Супер. Пока что это лучший ресурс про Linux из открытых мной. Так держать!
kkech: Блин, случайно сегодня зашел на Ваш сайт и нашел решения проблем, решение которых искал уже несколько месяцев. Супер. Пока что это лучший ресурс про Linux из открытых мной. Так держать!
А самого нужного то и нет. Папка /etc подробно не расписана. Тема раскрыта лишь частично – с трудом на троечку.
bq.. arigato: А самого нужного то и нет. Папка /etc подробно не расписана. Тема раскрыта лишь частично – с трудом на троечку.
Если подробно расписывать, то я думаю читать такой талмуд не каждый будет. Краткость – сестра таланта!! Эта публикация писалась для базового разъяснения, так как новичку разобраться и понять новую ОС непросто. Предлагайте конструктивные предложения, добавим, поправим.;)
Статья очень полезная! Сразу море вопросов отпало. (PS: с картой плавать проще)
Более-мение освоился с пингвином, но все же вот так почитаешь, параллельно открывая описаные директории и большая часть вопросов проясняется)))
Спасибо, так держать.
ЗЫ а по поводу толмудов – это уже к мануалу >600стр
“Поэтому потерянных inod в журналируемых файловых системах находиться меньше.”
tsya.ru
Вуаля ))! Бомба .
Класс высший!
Кратко и ясно. Спасибо.
Четко, понятно (тот случай, когда краткость-сестра таланта). Спасибо!
разорвало в клочья!
Вот таких статей нужно больше. А то, понимаешь, интерес есть, но после “окошек” очень трудно переучиваться.
Автору огромное спасибо!
Спасибо автору. приятно читать такую статью.
все описано простым и доступным языком. мне как новичку оказалась очень полезной информация изложенная автором статьи. позволяет частично понять философию файловой организации Unix систем. еще раз СПАСИБО . Желаю нашему рунету, как можно больше таких авторов.
Разрозненное представление об этой ОС стало более упорядоченным после прочтения. Спасибо за простой, не замудренный текст.
Благодарю за статью, разбиратся стало значительно лнгче! Осталось понять какие разделы стоит отделять и на какой объём памяти….
Статья хороша помогла,все на таких людях держится,в универе ни чего толком не объясняют
Спасибо за отельные пояснения, хотелось бы увидеть инфу по /run/
Отличная статья!пока лучше не видел на данную тему,автору уважуха!
Спасибо!
Добавьте рядом кнопочку “В Закладки” ))
Очень интересно на досуге поковырять структуру каиалогов и посмотреть где какая команда работает, а за одно – где и что распологаеатся.
Вот добавить бы еще рекомендуемые размеры /соотношения размеров некоторых каталогов , которые советуются к монтированию отдельными разделами.
В нем в виде файлов хронятся идентификаторы выполняемых процессов.
Например
$ cat /var/run/firefox
1223
1223 – PID процесса firefox
Респектос. LINUX рулит и реально проще и круче чем винда.
Все друзья гордятся за меня и я им linux ставлю и хакаю его!
Источник