Сколько корневых папок содержит файловая система Linux

Обновлено: 30.06.2024

Для соответствия FSSTND следующие каталоги или символические ссылки на каталоги необходимы в /.

/bin Исполняемые файлы основных команд /boot Статические файлы загрузчика /dev Файлы устройств /etc Конфигурация системы для конкретного хоста /lib Основные общие библиотеки и модули ядра /media Точка монтирования для съемных носителей /mnt Точка монтирования для файловой системы временно /opt Пакеты дополнительного программного обеспечения /sbin Основные двоичные файлы системы /srv Данные для служб, предоставляемых этой системой /tmp Временные файлы /usr Вторичная иерархия /var Переменные данные

Следующие каталоги или символические ссылки на каталоги должны находиться в /, если установлена ​​соответствующая подсистема:

/ -- корневой каталог /home Домашние каталоги пользователей (необязательно) /lib Основные общие библиотеки альтернативного формата (необязательно) /root Домашний каталог для пользователя root (необязательно)

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

Процессор Intel Celeron 766

Материнская плата MSI MS-6309 V.2.0

512 МБ PQI PC133 SDRAM

DVD-ROM 16x Lite-On LTD-165H

40x24x10 Sony CRX175A1 CD-RW

NVIDIA RIVA 32 МБ TNT2 M64

Сетевой адаптер D-Link DFE-530TX 10/100

Сетевой адаптер Realtek RTL8029(AS) 10

Линмодем Lucent Mars2

Аудиоустройство PCI C-Media CMI8738

Корпус Aopen KF-45A Miditower

Клавиатура Acer Accufeel

Мышь Genius Netscroll+

Монитор Compaq MV500 Presario

Windows XP на /dev/hda1

FreeBSD 4.2 на /dev/hda2

Redhat 8.0 на /dev/hda5

Debian 3.0r0 на /dev/hda6

Mandrake 9.1 на /dev/hda7

Поменять раздел на /dev/hda8

Как мы все знаем, файловая система Linux начинается с корневого каталога /. Все остальные каталоги являются «потомками» этого каталога. Раздел, на котором находится корневая файловая система, монтируется первым во время загрузки, и система не загрузится, если не найдет его. В нашей эталонной системе корневой каталог содержит следующие подкаталоги:

bin/dev/home/lost+found/proc/sbin/usr/cdrom/opt/vmlinuz boot/etc/lib/mnt/root/tmp/var/dvd/floppy/initrd/ /tftpboot

В прошлом это также был домашний каталог пользователя root, но теперь ему был предоставлен собственный каталог по причинам, которые будут объяснены далее в этом документе.

Пингвины на пляже

Эта статья предназначена для обсуждения концепций файловой системы Linux на очень высоком уровне. Он не предназначен для низкоуровневого описания того, как работает конкретный тип файловой системы, такой как EXT4, и не предназначен для обучения командам файловой системы.

Дополнительные ресурсы по Linux

Каждый компьютер общего назначения должен хранить данные различных типов на жестком диске (HDD) или его эквиваленте, например на USB-накопителе. На это есть несколько причин. Во-первых, оперативная память теряет свое содержимое при выключении компьютера. Существуют энергонезависимые типы ОЗУ, которые могут поддерживать данные, хранящиеся там, после отключения питания (например, флэш-ОЗУ, используемое в USB-накопителях и твердотельных накопителях), но флэш-ОЗУ намного дороже, чем стандартная энергозависимая ОЗУ, такая как DDR3 и другие подобные типы.

Вторая причина, по которой данные необходимо хранить на жестких дисках, заключается в том, что даже стандартная оперативная память по-прежнему дороже дискового пространства. Стоимость ОЗУ и диска быстро снижается, но ОЗУ по-прежнему лидирует по стоимости байта. Быстрый расчет стоимости байта, основанный на стоимости 16 ГБ оперативной памяти по сравнению с жестким диском емкостью 2 ТБ, показывает, что единица оперативной памяти примерно в 71 раз дороже, чем жесткий диск. Типичная стоимость оперативной памяти сегодня составляет около 0,0000000043743750 долларов США за байт.

В качестве краткой исторической справки, чтобы представить нынешние затраты на ОЗУ в перспективе, на самых ранних этапах развития вычислений один тип памяти основывался на точках на экране ЭЛТ. Это было очень дорого — около 1 доллара США за бит!

Определения

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

Я попытаюсь определить различные значения слова "файловая система" на основе того, как я наблюдал его использование в различных обстоятельствах. Обратите внимание, что, пытаясь соответствовать стандартным «официальным» значениям, я намерен определить термин на основе его различных вариантов использования. Эти значения будут рассмотрены более подробно в следующих разделах этой статьи.

  1. Вся структура каталогов Linux, начиная с верхнего (/) корневого каталога.
  2. Особый тип формата хранения данных, например EXT3, EXT4, BTRFS, XFS и т. д.Linux поддерживает почти 100 типов файловых систем, включая как очень старые, так и новейшие. Каждый из этих типов файловых систем использует свои собственные структуры метаданных для определения того, как данные хранятся и доступны.
  3. Раздел или логический том, отформатированный с использованием файловой системы определенного типа, который можно смонтировать в указанной точке монтирования в файловой системе Linux.

Основные функции файловой системы

Дисковое хранилище — это необходимость, которая приносит с собой некоторые интересные и неизбежные детали. Очевидно, что файловая система предназначена для предоставления места для энергонезависимого хранения данных; это его конечная функция. Однако из этого требования вытекает множество других важных функций.

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

После того как пространство имен определено, необходима структура метаданных, чтобы обеспечить логическую основу для этого пространства имен. Сюда входят структуры данных, необходимые для поддержки иерархической структуры каталогов; структуры для определения того, какие блоки пространства на диске используются, а какие доступны; структуры, позволяющие сохранять имена файлов и каталогов; информация о файлах, такая как их размер и время их создания, изменения или последнего доступа; и местоположение или местоположения данных, принадлежащих файлу на диске. Другие метаданные используются для хранения высокоуровневой информации о подразделениях диска, таких как логические тома и разделы. Эти метаданные более высокого уровня и структуры, которые они представляют, содержат информацию, описывающую файловую систему, хранящуюся на диске или разделе, но они отделены от метаданных файловой системы и не зависят от них.

Для файловых систем также требуется интерфейс прикладного программирования (API), обеспечивающий доступ к вызовам системных функций, управляющих объектами файловой системы, такими как файлы и каталоги. API обеспечивают такие задачи, как создание, перемещение и удаление файлов. Он также предоставляет алгоритмы, которые определяют такие вещи, как расположение файла в файловой системе. Такие алгоритмы могут учитывать такие цели, как скорость или минимизация фрагментации диска.

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

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



Рисунок 1. Программная реализация файловой системы Linux, состоящая из двух частей.

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

Структура каталогов

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

В Linux и многих других операционных системах каталоги могут быть структурированы в виде древовидной иерархии. Структура каталогов Linux четко определена и задокументирована в стандарте иерархии файловой системы Linux (FHS). Ссылка на эти каталоги при доступе к ним осуществляется с использованием последовательно расположенных более глубоких имен каталогов, соединенных косой чертой (/), таких как /var/log и /var/spool/mail. Они называются путями.

В следующей таблице представлен очень краткий список стандартных, хорошо известных и определенных каталогов Linux верхнего уровня и их назначения.

Таблица 1. Верхний уровень иерархии файловой системы Linux.

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

Каталоги /media и /mnt являются частью корневой файловой системы, но они никогда не должны содержать никаких данных. Скорее, это просто временные точки подключения.

Остальные каталоги, которые не имеют фонового цвета в Таблице 1, не обязательно должны присутствовать во время последовательности загрузки, но будут смонтированы позже, во время последовательности запуска, которая подготавливает хост к выполнению полезной работы.

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

Единая структура каталогов Linux

В некоторых операционных системах ПК, отличных от Linux, при наличии нескольких физических жестких дисков или нескольких разделов каждому диску или разделу назначается буква диска. Необходимо знать, на каком жестком диске находится файл или программа, например C: или D:. Затем вы вводите букву диска в виде команды, D:, например, чтобы перейти на диск D:, а затем вы используете команду cd, чтобы перейти в правильный каталог, чтобы найти нужный файл. У каждого жесткого диска есть свое отдельное полное дерево каталогов.

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

Это может работать только потому, что файловая система, такая как /home, /tmp, /var, /opt или /usr, может быть создана на отдельных физических жестких дисках, в другом разделе или в другом логическом томе из / ( root) файловая система, а затем монтируется в точку монтирования (каталог) как часть дерева корневой файловой системы. Даже съемные диски, такие как флэш-накопитель USB или внешний жесткий диск USB или ESATA, будут подключены к корневой файловой системе и станут неотъемлемой частью этого дерева каталогов.

Одна из веских причин для этого очевидна при обновлении одной версии дистрибутива Linux до другой или переходе с одного дистрибутива на другой. В целом, помимо любых утилит обновления, таких как dnf-upgrade в Fedora, целесообразно время от времени переформатировать жесткий диск (диски), содержащие операционную систему, во время обновления, чтобы полностью удалить весь мусор, который накопился с течением времени. Если /home является частью корневой файловой системы, она также будет переформатирована, и тогда ее придется восстанавливать из резервной копии. Имея /home в качестве отдельной файловой системы, она будет известна программе установки как отдельная файловая система, и ее форматирование можно пропустить. Это также может относиться к /var, где хранятся база данных, почтовые ящики, веб-сайт и другие переменные пользовательские и системные данные.

Есть и другие причины для сохранения определенных частей дерева каталогов Linux в виде отдельных файловых систем. Например, давным-давно, когда я еще не знал о потенциальных проблемах, связанных с тем, что все необходимые каталоги Linux являются частью / (корневой) файловой системы, мне удалось заполнить свой домашний каталог большим количеством очень большие файлы. Поскольку ни каталог /home, ни каталог /tmp не были отдельными файловыми системами, а были просто подкаталогами корневой файловой системы, вся корневая файловая система заполнялась. У операционной системы не оставалось места для создания временных файлов или расширения существующих файлов данных. Сначала прикладные программы начали жаловаться, что нет места для сохранения файлов, а потом очень странно начала себя вести и сама ОС. Загрузка в однопользовательском режиме и удаление проблемных файлов в моем домашнем каталоге позволили мне снова начать работу. Затем я переустановил Linux, используя довольно стандартную настройку нескольких файловых систем, и смог предотвратить повторение полного сбоя системы.

Однажды у меня была ситуация, когда хост Linux продолжал работать, но не позволял пользователю войти в систему с помощью рабочего стола с графическим интерфейсом. Я смог войти в систему с помощью интерфейса командной строки (CLI) локально, используя одну из виртуальных консолей, и удаленно, используя SSH. Проблема заключалась в том, что файловая система /tmp была заполнена, и некоторые временные файлы, необходимые для рабочего стола с графическим интерфейсом, не могли быть созданы во время входа в систему. Поскольку вход в CLI не требовал создания файлов в /tmp, нехватка места не помешала мне войти в систему с помощью CLI.В этом случае каталог /tmp был отдельной файловой системой, и в группе томов, частью которой был логический том /tmp, было достаточно места. Я просто расширил логический том /tmp до размера, который соответствовал моему свежему пониманию объема временного файлового пространства, необходимого на этом хосте, и проблема была решена. Обратите внимание, что это решение не требовало перезагрузки, и как только файловая система /tmp была увеличена, пользователь смог войти на рабочий стол.

Еще одна ситуация произошла, когда я работал администратором лаборатории в одной крупной технологической компании. Один из наших разработчиков установил приложение в неправильном месте (/var). Приложение аварийно завершало работу из-за того, что файловая система /var была заполнена, а файлы журналов, хранящиеся в /var/log в этой файловой системе, не могли быть дополнены новыми сообщениями из-за нехватки места. Однако система продолжала работать, потому что критические файловые системы / (root) и /tmp не заполнялись. Эта проблема была решена путем удаления вызывающего ошибку приложения и его переустановки в файловой системе /opt.

Типы файловых систем

Linux поддерживает чтение около 100 типов разделов; он может создавать и записывать только некоторые из них. Но возможно — и очень часто — монтировать файловые системы разных типов в одной и той же корневой файловой системе. В этом контексте мы говорим о файловых системах с точки зрения структур и метаданных, необходимых для хранения и управления пользовательскими данными на разделе жесткого диска или логическом томе. Полный список типов разделов файловой системы, распознаваемых командой Linux fdisk, приведен здесь, чтобы вы могли почувствовать высокую степень совместимости Linux с очень многими типами систем.

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

Другие дистрибутивы поддерживают создание различных типов файловых систем. Например, CentOS 6 поддерживает создание только тех файловых систем, которые выделены жирным шрифтом в приведенном выше списке.

Монтаж

Термин «смонтировать» файловую систему в Linux относится к ранним временам вычислительной техники, когда ленту или съемный диск необходимо было физически смонтировать на соответствующем дисковом устройстве. После физического размещения на диске файловая система на диске будет логически монтироваться операционной системой, чтобы сделать содержимое доступным для ОС, прикладных программ и пользователей.

Точка монтирования — это просто каталог, как и любой другой, созданный как часть корневой файловой системы. Так, например, домашняя файловая система смонтирована в каталоге /home. Файловые системы можно монтировать в точках монтирования других файловых систем, отличных от root, но это менее распространено.

Корневая файловая система Linux монтируется в корневой каталог (/) в самом начале последовательности загрузки. Другие файловые системы монтируются позже, с помощью программ запуска Linux, либо с помощью rc в SystemV, либо с помощью systemd в более новых версиях Linux. Монтирование файловых систем в процессе запуска управляется конфигурационным файлом /etc/fstab. Простой способ запомнить это: fstab означает «таблица файловой системы» и представляет собой список файловых систем, которые должны быть смонтированы, их назначенные точки монтирования и любые параметры, которые могут потребоваться для определенных файловых систем.

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

Заключение

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

Если у вас есть вопросы, задайте их в комментариях ниже, и я постараюсь на них ответить.

В следующем месяце

Еще одна важная концепция заключается в том, что для Linux все представляет собой файл. У этой концепции есть несколько интересных и важных практических применений для пользователей и системных администраторов. Причина, по которой я упоминаю об этом, заключается в том, что вы, возможно, захотите прочитать мою статью «Все есть файл» перед статьей, которую я планирую опубликовать в следующем месяце в каталоге /dev.

Когда вы открываете файловый менеджер, вы обычно находитесь в своем домашнем каталоге. Но если вы подниметесь на два уровня выше, вы увидите такой набор каталогов:

Этот пост как раз про все эти каталоги.Вы можете посмотреть видео, в котором объясняются эти корневые папки Linux, или продолжить чтение ниже.

Корневые папки Linux

Я не буду использовать здесь терминал, а покажу вам наглядную презентацию. Но вам, конечно же, предлагается открыть терминал и изучить все эти каталоги. Приступим.

/ — корень

В вашей системе все начинается с этого каталога. Все ваши папки, жесткие диски, USB-драйверы, все находится в этой корневой папке. Вы не можете перейти выше этого каталога.

Кроме того, корневой каталог обозначается косой чертой.

Концепция корневого каталога может быть трудна для понимания пользователями Windows, которые привыкли видеть что-то вроде диска C, диска D и диска E. В Linux каждый диск представлен в виде папки, которая монтируется в этом корневом каталоге. каталог.

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

/bin — двоичные файлы

Папка /bin содержит программы, необходимые для загрузки и работы системы. Поэтому, если вы уничтожите эту папку, ваша система не загрузится и не запустится.

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

/boot — загрузочные файлы

Это легко догадаться по названию. Эта папка необходима для загрузки вашей системы. Он содержит ядро ​​Linux, начальный образ RAM-диска для дисков, необходимых во время загрузки, и загрузчик.

Я также хотел бы отметить, что в этой загрузочной папке вы можете найти папку grub, содержащую файлы конфигурации grub.

Если вы читали мой пост Arch Linux, вы должны помнить, что я использовал эту команду для создания файла конфигурации GRUB.

Папка загрузки также содержит ядро ​​Linux.

/dev — узлы устройств

Здесь мне нужно представить еще одну важную концепцию Linux — все является файлом. Папка /dev содержит файлы для всех устройств, которые может распознать ваш Linux.

Если у вас есть опыт работы с Linux, вы, возможно, помните, что при монтировании жесткого диска вы используете такое имя, как /dev/sda1 . sda — это имя первого жесткого диска, распознаваемого вашим ядром Linux, и он находится в папке dev. Когда диск смонтирован, вы видите его как папку в этой точке монтирования.

Вы также можете найти здесь USB-устройства, ЦП и т. д.

/etc — файлы конфигурации

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

Если вы когда-либо выполняли общесистемную настройку, вы, вероятно, редактировали некоторые файлы здесь.

Например, есть файл /etc/fstab, содержащий таблицу устройств хранения и точек их подключения.

/home — папка пользователя

Домашний каталог содержит домашнюю папку для каждого обычного пользователя вашей системы Linux. Например, у меня есть две папки в папке /home. ALU — моя домашняя папка. Вторая папка принадлежит другому пользователю, которого я назвал User2. Таким образом, домашняя папка каждого пользователя называется по имени пользователя.

У вас столько папок, сколько пользователей в вашей системе.

В папках этих пользователей пользователи хранят свои личные данные, например документы, видео, изображения, музыку и т. д. Когда вы открываете файловый менеджер или терминал, по умолчанию вы находитесь в домашней папке пользователя. Он также часто помечается как ~/ .

/lib — библиотеки

Каталог /bin, содержащий программы, вам уже известен. Эта папка /lin содержит библиотеки, необходимые для этих программ из папки /bin.

Библиотека – это набор функций, совместно используемых программами. Таким образом, эта папка /lib также необходима для правильной работы вашей системы.

/lost+found – Восстановленные файлы

У вас будет этот каталог, если вы используете файловую систему ext4. Большинство современных дистрибутивов Linux используют ext4, поэтому, скорее всего, у вас есть эта папка. Это специальная папка файловой системы, которая используется для восстановления данных в случае повреждения файлов. Если не произошло ничего плохого, эта папка в вашей системе должна быть пустой.

Эта папка /lost+found создается на каждом отдельном разделе. Таким образом, если ваша папка /home находится в отдельном разделе, эта папка /lost+found также должна быть в вашем домашнем каталоге.

/media — автоматическая точка монтирования

Эта папка используется для автоматического монтирования съемных носителей, таких как USB-накопители, компакт-диски и т. д. Например, если ваша система настроена на автоматическое монтирование, когда вы вставите USB-накопитель, он будет смонтирован в эту папку.< /p>

/mnt — точка монтирования вручную

Папка /mnt аналогична папке /media, она также используется для монтирования устройств, но обычно используется для ручного монтирования. Вы, конечно, можете вручную монтировать свои устройства в /media , но для поддержания порядка в вашей системе лучше разделить эти две точки монтирования.

/opt — Дополнительное программное обеспечение

Эта папка не является необходимой для работы вашей системы. Обычно он используется для установки коммерческих программ в вашей системе. Например, моя установка Dropbox находится в этой папке.

/proc — файлы ядра

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

/root — корневой каталог

Это домашний каталог вашего пользователя root. Не смешивайте его с корневым каталогом /. Каталог / является родительским каталогом для всей системы, тогда как этот каталог /root совпадает с вашим домашним каталогом пользователя, но предназначен для учетной записи root.

Если вы войдете в систему как пользователь root, вы будете находиться в этом каталоге по умолчанию. Это папка для личных данных и настроек вашей корневой учетной записи.

/run — Ранний темп

/run — это недавно появившаяся папка, которая на самом деле является временной файловой системой. Он используется для хранения временных файлов в самом начале загрузки системы до того, как станут доступны другие временные папки.

/sbin — системные двоичные файлы

Подобно /bin, эта папка содержит двоичные файлы для важных системных задач, но они предназначены для запуска суперпользователем, другими словами, администратором системы.

/srv — служебные данные

Этот каталог содержит служебные файлы, установленные в вашей системе. Например, если вы установили веб-сервер в своей системе Linux, он будет расположен в этой папке.

/tmp — временные файлы

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

/usr – Бинарные файлы пользователя

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

Я хотел бы еще немного остановиться на подкаталогах этой папки /usr.

/usr/bin содержит программы, установленные вашим дистрибутивом Linux. Обычно здесь тысячи программ.

Библиотеки для этих исполняемых файлов /usr/bin находятся в папке /usr/lib.

В каталоге /usr/local по умолчанию нет программ, но если вы скомпилируете и установите общесистемную программу, она будет размещена здесь.

Самая полезная папка — /usr/share. Он содержит все общие данные, используемые программами из /usr/bin .

Все файлы конфигурации по умолчанию, темы, значки, обои, звуковые файлы хранятся здесь, еще одна папка, о которой я хотел бы упомянуть, это папка /usr/share/doc, где вы можете найти файлы документации для программ, установленных на ваша система.

/var — файлы переменных

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

Заключение

Теперь у вас есть некоторое представление обо всех этих папках в вашей системе Linux.

Пожалуйста, не стесняйтесь добавлять что-либо в комментариях ниже, если я что-то пропустил.

Пожалуйста, поддержите этот проект:

Average Linux UserFollow Я являюсь основателем проекта Average Linux User, это хобби, над которым я работаю по ночам. Днем я ученый, который использует компьютеры для анализа генетических данных.

Как правило, корневая файловая система должна быть небольшой, так как она содержит очень важные файлы, а небольшая, редко изменяемая файловая система имеет больше шансов не быть поврежденной. Поврежденная корневая файловая система, как правило, означает, что система становится невозможной для загрузки, за исключением особых случаев (например, с дискеты), так что не стоит рисковать.

Корневой каталог обычно не содержит никаких файлов, за исключением, возможно, старых систем, где там хранился стандартный загрузочный образ системы, обычно называемый /vmlinuz. (В большинстве дистрибутивов эти файлы перемещены в каталог /boot. В противном случае все файлы хранятся в подкаталогах корневой файловой системы:

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

Как и /bin , но команды не предназначены для обычных пользователей, хотя они могут использовать их, если это необходимо и разрешено. /sbin обычно не находится в пути по умолчанию обычных пользователей, но будет в пути по умолчанию root.

Файлы конфигурации, специфичные для машины.

Домашний каталог пользователя root. Обычно это недоступно другим пользователям системы

Общие библиотеки, необходимые программам в корневой файловой системе.

Загружаемые модули ядра, особенно те, которые необходимы для загрузки системы при восстановлении после аварий (например, драйверы сети и файловой системы).

Файлы устройств. Это специальные файлы, которые помогают пользователю взаимодействовать с различными устройствами в системе.

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

Файлы, используемые загрузчиком начальной загрузки, например LILO или GRUB. Образы ядра часто хранятся здесь, а не в корневом каталоге. Если имеется много образов ядра, каталог может легко стать довольно большим, и может быть лучше хранить его в отдельной файловой системе. Другая причина заключается в том, чтобы убедиться, что образы ядра находятся в пределах первых 1024 цилиндров IDE-диска. Это ограничение в 1024 цилиндра в большинстве случаев больше не соответствует действительности. В современных BIOS и более поздних версиях LILO (LInux LOader) ограничение в 1024 цилиндра можно преодолеть с помощью адресации логических блоков (LBA). Подробнее см. на странице руководства lilo.

Точка монтирования для временного монтирования системным администратором. Программы не должны автоматически монтироваться в /mnt. /mnt может быть разделен на подкаталоги (например, /mnt/dosa может быть флоппи-дисководом с файловой системой MS-DOS, а /mnt/exta может быть таким же с файловой системой ext2).

/proc , /usr , /var , /home

Точки монтирования для других файловых систем. Хотя /proc не находится ни на одном диске, в действительности он все же упоминается здесь. См. раздел о /proc далее в этой главе.

Читайте также: