Использование каталогов / opt и / usr / local в контексте ПК

В чем разница между каталогами /opt и /usr/local и какие программы должны быть в них установлены?

Я упоминал Иерархия файловых систем Linux , но объяснение не так ясно. В соответствии с приведенной выше ссылкой;

/opt: - Этот каталог зарезервирован для всех пакетов программного обеспечения и надстроек, которые не являются частью установки по умолчанию

/usr/local: - [ 114] иерархия предназначена для использования системным администратором при локальной установке программного обеспечения. Он должен быть защищен от перезаписи при обновлении системного программного обеспечения.

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

Спасибо

65
задан 13 April 2011 в 21:20

3 ответа

/opt предназначен для сторонних приложений, которые не зависят от каких-либо зависимостей, выходящих за рамки указанного пакета. /usr/local предназначен для пакетов, установленных на этом компьютере, за пределами диспетчера пакетов распространения.

Пример:

Sip-клиент с открытым исходным кодом, поставляемый как .deb, будет установлен в /usr. Если бы он был собран с каркасом Qt, apt включил бы его в качестве зависимости.

Тот же самый sip-клиент с открытым исходным кодом, созданный из исходного кода, будет находиться в /usr/local, поэтому apt не испортит его, если позже вы установите пакет .deb для того же приложения. Вы можете либо построить его зависимости из исходного кода, либо получить их из менеджера пакетов.

Стороннее приложение в /opt должно быть автономным. Например, проприетарный sip-клиент, использующий Qt, не будет полагаться на версию из apt, но будет связывать ее или статически связывать.

Для получения дополнительной информации взгляните на Стандарт иерархии файловой системы .

0
ответ дан 13 April 2011 в 21:20

Я бы установил сторонние бинарные пакеты в /opt.

Все, что вы создаете сами из источника, я бы положил в /usr/local.

netbeans в Ubuntu Repos. Вам нужна конкретная версия?

0
ответ дан 13 April 2011 в 21:20

Все дело в упаковке. Если что-то упаковано способом LHS (помещая исполняемые файлы в bin / библиотеки в lib / и т. Д.), Оно должно идти в / usr / local.

Если что-то имеет каталог верхнего уровня и не следует этой модели, оно входит в / opt. Как правило, вы должны явно добавить материал в / opt в вашу переменную PATH.

См. Также Этот вопрос о суперпользователе

.
0
ответ дан 13 April 2011 в 21:20

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

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