2

В системах Linux, где лучше всего установить собственное программное обеспечение, которое будет хорошо проигрывать как внутри, так и снаружи докеров?

Например, если кто-то хочет установить программу под названием:

name="com.hovio.birds.happybirds"

Будет ли лучше установить его в:

/hovio/birds/happybirds

или же

/opt/hovio/birds/happybirds

Я предполагаю, что вне Docker, /opt лучше в системах Linux без корневого доступа, как это объясняется здесь.

Есть идеи?

1 ответ1

2

В целом, в Linux/Unix не просто отбрасывать случайные каталоги на корневом уровне файловой системы. Хороший обзор того, что обычно считается частью уровня корневой файловой системы (/), можно найти здесь и, как правило, выглядит следующим образом с небольшими изменениями:

/bin       Essential command binaries
/boot      Static files of the boot loader
/dev       Device files
/etc       Host-specific system configuration
/lib       Essential shared libraries and kernel modules
/media     Mount point for removeable media
/mnt       Mount point for mounting a filesystem temporarily
/opt       Add-on application software packages
/sbin      Essential system binaries
/srv       Data for services provided by this system
/tmp       Temporary files
/usr       Secondary hierarchy
/var       Variable data

Хотя структура, в которой явно не сказано, что на этом уровне нельзя разместить собственный каталог, подразумеваемая структура в основном утверждает: «Эй, не размещайте здесь ничего, кроме того, что вписывается в установленную структуру родительского каталога».

Итак, зная это, увидев эту идею структуры в вашем вопросе:

/hovio/birds/happybirds

Что ж, это заставляет моего системного администратора чувствовать тошноту. Причина, по которой вы этого не делаете, заключается в том, что уровень корневой файловой системы (/) должен быть только для родительских иерархий каталогов. Это становится слишком запутанным и слишком запутанным, если вы делаете это для каждого устанавливаемого вами программного обеспечения. Делая это, вы сломаете что-то, даже если со временем «пообещаете быть осторожными».

Теперь размещение вещей в каталоге /opt является уважаемым и понятным. Так что это хорошо

/opt/hovio/birds/happybirds

И это не обязательно связано с доступом к корневой системе. Это просто принятое соглашение о размещении системного программного обеспечения, которое не подходит нигде в /opt . Как четко объяснено здесь:

Этот каталог зарезервирован для всех пакетов программного обеспечения и надстроек, которые не являются частью установки по умолчанию. Например, пакеты StarOffice, Kylix, Netscape Communicator и WordPerfect обычно находятся здесь. Для соответствия требованиям FSSTND все сторонние приложения должны быть установлены в этом каталоге.

Это также облегчает задачу, если по какой-либо причине кому-то, кто не является вами, потребуется позже оценить систему. Вместо того чтобы ломать голову над тем, какую роль играет каталог /hovio , они узнают, увидят ли они в /opt что-то полезное / важное.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .