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

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

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

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

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

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

3 ответа

Решение

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

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

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

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

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

Кроме того, префикс папки с . сделает его "скрытым", то есть: /home/aren/.ssh, вы все еще можете перейти к нему, но вы должны использовать ls -a чтобы он появился в списке при поиске.

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

В 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, версия 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).

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

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

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

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

Другие вопросы по тегам