Как понять макет файловой системы Ubuntu?

В Windows есть, возможно, только несколько важных папок (по важности, что я имею в виду, важно в моей логической картине файловой системы Windows) на установочном диске (в моем случае C:\ ). А именно Program Files и Windows. Я просто держусь в стороне от Windows, а «удалять файлы программы» достаточно, чтобы обрабатывать папку program files Windows. Конечно, есть папка с именем Users, где пользователи (которые не являются админами) могут иметь доступ только к своим папкам.

Таким образом, на моем уровне файловой системы Windows есть ясная картина. В Ubuntu, когда я добираюсь до местоположения /, есть огромный список папок, большинство из которых я не имею в виду, что они содержат. Папка /bin кажется эквивалентной папке Windows в окнах. Папка /usr выглядит как эквивалент папки Users в Windows. Но даже папка /home выглядит так, как будто она может соответствовать счету.

Пожалуйста, поймите, что я понимаю, что Ubuntu (Linux) имеет другой символ, отличный от Windows, т. е. в Ubuntu не обязательно быть точным эквивалентом функций Windows. Все, что я ищу, - это более четкая картина файловой системы Ubuntu.

Этот вопрос является частью большого вопроса, который я разделяю, чтобы сделать его более ответственным. Оригинальный вопрос можно найти здесь:
http://sgsawant.wordpress.com/2012/05/17/whats-the-equivalent-of-add-or-remove-programs-in-ubuntu/

200 голосов | спросил Shashank Sawant 17 Maypm12 2012, 22:12:29

6 ответов


238

Вы можете прочитать об этом, например, в википедии. Выдержка:

  

Стандарт иерархии файловой системы (FHS) определяет основные каталоги и их содержимое в операционных системах Linux. По большей части это формализация и расширение традиционной иерархии файловой системы BSD.

     

FHS поддерживается некоммерческой организацией Linux Foundation, состоящей из крупных поставщиков программного и аппаратного обеспечения, таких как HP, Red Hat, IBM и Dell.   Текущая версия 3.0, выпущенная 3 июня 2015 года.

Визуальное представление с кратким описанием:

введите описание изображения здесь>> </p>

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

<p> Помните, что Unix и Linux, созданные как многопользовательские системы и Windows, были созданы для одного пользователя. Все остальное можно объяснить из этой идеи. Вы можете объяснить каждый каталог, думая о том, что он является многопользовательским и безопасным. </p>

<p> 3 примера: </p>

<ul>
<li> <p> Вы увидите, что файлы и каталоги, которые являются только администраторами, собраны в одном каталоге: s в <code>/sbin</code> и <code>/usr /sbin</code> и < code> /usr /local /sbin</code> обозначает систему. Обычный пользователь не может даже запускать программы, которые находятся там. Файлы, которые обычный пользователь может запустить, находятся в /bin, /usr /bin, /usr /local /bin на основе того, где он наиболее логично должен находиться. Но если они только администраторы, они должны перейти к версии <code>s</code> этого каталога.
Существует известная утилита под названием <code>fuser</code>. Вы можете убивать процессы с ним. Если обычный пользователь может использовать это, он сможет убить ваш сеанс. </p> </li>
<li> <p> То же самое касается <code>/home</code>: /home /user1 является свойством user1. /home /user2 является свойством user2. user2 не имеет бизнеса, делающего вещи в доме user1 (и наоборот: у пользователя 1 нет бизнеса, делающего вещи в доме user2). Если все файлы будут в /home без имени пользователя под ним, вам нужно будет предоставить разрешения для каждого файла и оспаривать, разрешено ли кому-либо писать /удалять эти файлы. Кошмар, если у вас десятки пользователей. </p> </li>
<li>
<p> <a href= Дополнение относительно библиотек.

/sbin, /usr/sbin и /usr/local/sbin - это исходные местоположения, начиная с multilib существовали системы и существовали, чтобы предотвратить нарушение вещей. s, fuser, /home, /lib/ - это 32- /64-битные многоуровневые изобретения.

Это не статическая концепция. Другие альтернативы Linux сделали настройки этой планировки. Например; в настоящее время вы увидите debian и Ubuntu , которые меняют много в планировании FHS с SSD лучше с файлами только для чтения. Существует движение к новой планировке, где файлы разделяются на «только для чтения» и «записываемый» каталог /группу, поэтому мы можем иметь корневой раздел, который может быть установлен только для чтения (раздел для ssd) и доступен для записи (sata hdd). Новый каталог, который используется для этого (не на изображении), это /usr/lib/.

ответил Rinzwind 17 Maypm12 2012, 22:18:43
95

Попробуйте эту команду ...

man 7 hier

Надеюсь, что это поможет

ответил Pritesh Wadhia 17 Maypm12 2012, 23:58:36
36

В следующем тексте показана структура каталогов.

[email protected]:/$ pwd
/
[email protected]:/$ tree -L 1
.
|-- bin
|-- boot
|-- cdrom
|-- dev
|-- etc
|-- home
|-- lib
|-- lost+found
|-- media
|-- mnt
|-- opt
|-- proc
|-- root
|-- run
|-- sbin
|-- selinux
|-- srv
|-- sys
|-- tmp
|-- usr
|-- var

Основные компоненты здесь:

  1. /boot: содержит загрузчик

  2. /home: Содержит домашние каталоги пользователей.

  3. /bin: все исполняемые двоичные файлы и команды, используемые всеми пользователями в системе, находятся здесь.

  4. /sbin: содержит системные исполняемые файлы, обычно используемые системными администраторами.

  5. /lib: содержит системные библиотеки, которые поддерживают двоичные файлы в /bin и /sbin.

  6. /etc: содержит файлы конфигурации для сети, время загрузки и т. д.

  7. /dev: здесь представлены файлы устройств, например, usb, терминальное устройство или любое другое устройство, подключенное к системе.

  8. /proc: содержит информацию о запущенном процессе.

  9. /tmp: это временный каталог, в котором многие процессы создают временные файлы. Это очищается каждый раз при загрузке машины.

Для более подробной информации ссылка Thegeekstuff прекрасно объясняет общую файловую систему linux .

ответил mtk 17 Maypm12 2012, 22:38:18
36

Поздний ответ . Я создал дорожную карту для начинающих. Если они ищут файл, но не знают, где искать, они могут использовать карту, чтобы примерно ориентироваться. Вы можете скачать hi-res PNG здесь . Вы можете найти связанный пост здесь . Я буду продолжать обновлять как файл, так и сообщение, когда позволяет время, включая полезные комментарии.

ответил d4nyll 20 42014vEurope/Moscow11bEurope/MoscowThu, 20 Nov 2014 21:18:24 +0300 2014, 21:18:24
19

\Users эквивалентен /home. Имя /usr является историческим артефактом.

Комбинированный эквивалент \Windows и \Program Files представляет собой комбинацию /bin, /boot , /etc, /lib, /sbin, /tmp, /usr и /var. Linux и Windows разложили установленное ПО по-разному. Windows различает операционную систему и сопутствующие программы. Linux не делает это различие таким же образом; большинство, если не все программное обеспечение поставляется через Ubuntu (дистрибьютор) и устанавливается в той же иерархии каталогов, и поскольку программное обеспечение отслеживается менеджером пакетов, нет необходимости хранить каждую программу в ее собственном каталоге. В Linux:

  • /etc предназначен для файлов конфигурации системы: файлы конфигурации, которые затрагивают всех пользователей, независимо от того, применяются ли они к операционной системе в целом или к конкретному приложению.
  • /usr предназначен для системного кода и данных (программ, библиотек, документации и т. д.).
  • /var относится к переменным или временным данным: временным файлам, журналам, базам данных диспетчера пакетов, серверам печати, файлам сохранения файлов и т. д. Для временных файлов также существует /tmp могут быть удалены при перезагрузке.
  • /bin, /lib и /sbin в корневом каталоге есть экземпляры в /usr. Файлы, находящиеся вне /usr, являются теми, которые необходимы в начале процесса загрузки. Это реликвия с того времени, когда диски были небольшими, а /usr мог быть на файловой системе, разделяемой между несколькими рабочими станциями по сети, это не очень полезно для большинства систем.
  • /boot содержит несколько файлов, которые необходимы только для загрузки операционной системы, а не для повседневной работы.

Существуют дополнительные каталоги, которые не соответствуют чему-либо, что имеет Windows:

  • /root является домашним каталогом пользователя root. Пользователь root - это учетная запись администратора, не привязанная к конкретному пользователю; это пользователь, с которым вы переключаетесь, когда запускаете sudo. Ubuntu не позволяет пользователю root войти по умолчанию.
  • /media и /mnt являются точками монтирования: они могут видеть файловые системы других операционных систем и удаленных дисков. Эквивалент Windows - это другие буквы дисков.
  • /proc и /sys показать системную информацию. В Windows вам необходимо пропустить меню или вызвать системные команды или установить сторонние программы, чтобы увидеть эту информацию.

Ubuntu, как и другие дистрибутивы Linux, обычно следует за Linux Стандартом иерархии файловой системы .

ответил Gilles 17 Maypm12 2012, 22:48:53
5

Ubuntu (как и все UNIX-подобные системы) организует файлы в иерархическом дереве, где отношения рассматриваются в командах детей и родителей. Каталоги могут содержать другие каталоги, а также обычные файлы, которые являются «листьями» дерева. Любой элемент дерева может быть ссылкой по имени пути; абсолютное имя пути начинается с символа /(идентифицирующего корневой каталог, который содержит все другие каталоги и файлы), тогда указывается каждая дочерняя директория, которая должна пройти по элементу, каждая из которых разделена знаком /.

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

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

Найдите примеры и дополнительную информацию здесь :

ответил stephenmyall 17 Maypm12 2012, 22:18:10

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132