Как организованы файлы и приложения Linux?

5842
doup

Я новичок в Linux (Ubuntu), и мне хотелось бы знать, может ли кто-нибудь дать несколько советов о том, куда устанавливать вещи, какие папки не трогать, каков смысл каждой папки и так далее.

Мое первое беспокойство, все ли должно идти в мою домашнюю папку? Я установил Komodo Edit «вручную» (это IDE), и он попал в мою домашнюю папку, мне действительно не нравится идея иметь там приложение. (В Windows у меня был раздел с рабочими файлами / изображениями / загрузками ..., а затем - раздел ОС со всеми приложениями).

Итак, есть ли место, где я мог бы установить это программное обеспечение? Какой-нибудь совет для заказа моей домашней папки? Может быть, я должен создать папку приложений в моем домашнем каталоге?

Заранее спасибо. :)

pd: большую часть времени я использую apt для установки вещей, но я не всегда находил там нужное программное обеспечение ...

4
Я видел, что есть в основном три способа установки программного обеспечения. Сначала пакеты (лучший), затем автономные архивы (просто разархивируйте и запустите) и, наконец, «make install». Я создал папку Apps для tarballs и для приложений «make install», которые я использую «checkinstall», который создает пакет, чтобы впоследствии было легче удалить это приложение. В любом случае, спасибо за ответы. :) doup 14 лет назад 0
По умолчанию единственное место, куда пользователь может написать, - это его домашний каталог. Если для вашего дистрибутива доступен пакет, используйте его, если у вас нет веских причин не делать этого. Если вам нужно что-то установить вручную, большинство людей помещают это в / opt / packagename или / usr / local / packagename ivanivan 7 лет назад 0

3 ответа на вопрос

4
Aren B

/home/<yourlogin>Ваш эффективный «Мои документы» эквивалентен Windows. Там есть ваш рабочий стол, ваши фотографии и т. Д.

Обычно вы загружаете туда вещи и компилируете / запускаете rpms из того места, которое затем запрашивает доступ суперпользователя (повышение прав) и устанавливает их приложения в такие места, как:

/usr/bin /usr/lib так далее...

  • /binСодержит глобальные команды ОС, как PATHв Windows
  • /sbin Содержит глобальные команды ОС для суперпользователей (требуется повышение прав)
  • /usr/bin Содержит приложения
  • /usr/sbin Содержит приложения, требующие повышения
  • /devСодержит устройства (например: /dev/sda0Scsi Drive A, раздел 0, /dev/floppyваша дискета и т. Д ...
  • /etc где ваша конфигурация системы, обычно в .conf файлах

Это основной учебник, я думаю.

Кроме того, добавление к папке префикса .сделает ее «скрытой», т. Е. /home/aren/.sshВы можете перейти к ней, но вы должны использовать ls -aее, чтобы она отображалась в списке при просмотре.

The filesystem stuff is called POSIX. There are many documentations which describe that. Besides that. Usually you install software in 3 flavours. 1) .deb with APT/dpkg 2) source (./configure, make, make install) 3) unzip it. Komodo is most likely the third one. Usually when you would install a software, you have to use the following commands. ./configure --prefix=/usr && make && sudo make install. || HOWEVER. It is NOT recommended. You should just use the PPAs: https://launchpad.net/ubuntu/+ppas (click on one to get more info. In a nutshell, fresh/other software) Shiki 14 лет назад 2
(Подробнее: PPA - это, вкратце, личный архив пакетов. Это похоже на небольшой объем (~ 1 ГБ), куда вы можете загрузить исходный пакет, и серверы будут создавать .debs из него. Какой смысл? Вы можете создавать пакеты .deb). с легкостью распространяйте их и т. д. Кроме того, добавление такого PPA в Ubuntu - это не сложная задача. Просто нажмите на один из них и используйте синий текст «Подробнее об установке ...».) Shiki 14 лет назад 0
Смотрите: http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard Josh 14 лет назад 0
4
Josh

В Википедии есть отличная статья об этом . Цитата из самой полезной части этой статьи:

В FHS все файлы и каталоги отображаются в корневом каталоге «/», даже если они хранятся на разных физических устройствах. Однако обратите внимание, что некоторые из этих каталогов могут присутствовать или не присутствовать в системе Unix в зависимости от того, установлены ли определенные подсистемы, такие как система X Window.

Большинство этих каталогов существуют во всех операционных системах UNIX и обычно используются практически одинаково; однако описания, приведенные здесь, используются специально для FHS и не считаются авторитетными для платформ, отличных от Linux.

  • / Корень первичной иерархии и корневой каталог всей иерархии файловой системы.
  • /bin/ Основные двоичные файлы команд, которые должны быть доступны в однопользовательском режиме; для всех пользователей, например, cat, ls, cp.
  • /boot/ Файлы загрузчика, например, ядра, initrd; часто отдельный раздел [8]
  • /dev/ Основные устройства, например, / dev / null.
  • /etc/ Специфичные для хоста общесистемные конфигурационные файлы (название взято из et cetera [9]).
  • /etc/opt/ Конфигурационные файлы для / opt /.
  • /etc/X11/ Файлы конфигурации для X Window System, версия 11.
  • /etc/sgml/ Конфигурационные файлы для SGML.
  • /etc/xml/ Конфигурационные файлы для XML.
  • /home/ Домашние каталоги пользователей, содержащие сохраненные файлы, личные настройки и т. Д .; часто отдельный раздел.
  • /lib/ Библиотеки, необходимые для двоичных файлов в / bin / и / sbin /.
  • /media/ Точки монтирования для съемных носителей, таких как CD-ROM (появились в FHS-2.3).
  • /mnt/ Временно смонтированные файловые системы.
  • /opt/ Дополнительные пакеты прикладного программного обеспечения [10].
  • /proc/ Виртуальная файловая система, документирующая ядро ​​и состояние процесса в виде текстовых файлов, например, время работы, сеть. В Linux соответствует монтированию Procfs.
  • /root/ Домашний каталог для пользователя root.
  • /sbin/ Основные системные двоичные файлы, например, init, ip, mount.
  • /srv/ Специфичные для сайта данные, которые обслуживаются системой.
  • /tmp/ Временные файлы (см. Также / var / tmp). Часто не сохраняется между перезагрузками системы.
  • /usr/ Вторичная иерархия для пользовательских данных только для чтения; содержит большинство (многопользовательских) пользовательских утилит и приложений. [11]
  • /usr/bin/Второстепенные двоичные файлы команд (не требуются в однопользовательском режиме); для всех пользователей.
  • /usr/include/ Стандартные включаемые файлы.
  • /usr/lib/ Библиотеки для двоичных файлов в / usr / bin / и / usr / sbin /.
  • /usr/sbin/ Несущественные системные двоичные файлы, например, демоны для различных сетевых сервисов.
  • /usr/share/ Архитектурно-независимые (общие) данные.
  • /usr/src/ Исходный код, например, исходный код ядра с файлами заголовков.
  • /usr/X11R6/ Система X Window, версия 11, выпуск 6.
  • /usr/local/Третичная иерархия для локальных данных, специфичных для этого хоста. Обычно имеет дополнительные подкаталоги, например, bin /, lib /, share /. [12]
  • /var/ Переменные файлы - файлы, содержимое которых, как ожидается, будет постоянно изменяться во время нормальной работы системы, такие как журналы, файлы спулинга и временные файлы электронной почты. Иногда отдельный раздел.
  • /var/lib/Государственная информация. Постоянные данные, изменяемые программами во время работы, например, базы данных, метаданные системы упаковки и т. Д.
  • /var/lock/Блокировка файлов Файлы, отслеживающие используемые в настоящее время ресурсы.
  • /var/log/Лог-файлы. Различные журналы.
  • /var/mail/ Почтовые ящики пользователей.
  • /var/run/ Информация о работающей системе с момента последней загрузки, например, вошедшие в систему пользователи и работающие демоны.
  • /var/spool/ Буфер для задач, ожидающих обработки, например, очереди печати и непрочитанной почты.
  • /var/spool/mail/Устаревшее местоположение для почтовых ящиков пользователей. /var/tmp/Временные файлы должны быть сохранены между перезагрузками.
  • /var/www/ Файловые иерархии веб-сайтов (расположение по умолчанию для веб-сайтов, обслуживаемых Apache).
1
Benjamin Bannier

Под Linux каталоги в корневой папке /расположены в соответствии со Стандартом иерархии файловой системы . Обычно для установки и удаления программного обеспечения используется менеджер пакетов, предоставляемый дистрибутивом. Есть также несколько мест, где хранятся файлы конфигурации (особенно в /etc/), и иногда они должны быть отредактированы пользователем. В противном случае должно быть мало необходимости возиться за пределами вашего домашнего каталога.

Когда вы устанавливаете программное обеспечение вручную, вы обычно не хотите устанавливать в системные каталоги, такие как /usr/bin/, /bin/или /sbin/или /usr/sbin/. Вместо этого следует использовать установленное вручную программное обеспечение, /usr/local/чтобы избежать конфликтов с программным обеспечением, установленным с помощью диспетчера пакетов и которое фактически имеет такую ​​же структуру /(например, для использования при ручной установке /usr/localкак префикс)

Когда вы устанавливаете программное обеспечение за пределами обычной структуры, оболочка может не найти исполняемые файлы, и двоичные файлы могут не найти библиотеки, с которыми она связана. Двоичные файлы ищутся во всех каталогах, перечисленных в переменной оболочки, $PATHкоторые вы можете настроить. То же самое относится и к $LD_LIBRARY_PATHсписку каталогов для поиска библиотек при разрешении зависимостей ссылок (см. man ld).

(Примечание: выше содержится много «обычно» и «обычного». Это потому, что никто не заставляет вас следовать каким-то (разумным) стандартам - вы свободны стрелять себе в ногу.)

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