Похоже, вы говорите о стиле разделения отдельных файлов по назначению(/usr/bin
для исполняемых файлов, /usr/lib
для библиотек ), а не по пакетам приложений (Компилятор C++ в одном каталоге, программы редактирования изображений в другой ). В то время как в Unix-системах большая часть причин для этого историческая, существуют также современные -дневные силы, которые заставляют Unix-подобные -системы склоняться к этим :менеджерам пакетов, которые управляют большинством программ в системе.
В Windows исторически и в значительной степени по сей день приложения отвечали за предоставление собственного установщика и, особенно, деинсталлятора, и даже сейчас часто не регистрируются в каком-либо центральном списке приложений. В такой ситуации, как правило, для приложения лучше иметь «собственный» каталог для как можно большего числа своих файлов. Это помогает избежать конфликтов с другими приложениями, хотя это не всегда работает (, особенно в случае DLL).
Unix-системы, с другой стороны, с 90-х годов, как правило, имеют один принятый менеджер пакетов и группу, предоставляющую большое количество часто используемого программного обеспечения через этот менеджер пакетов. (Официальные менеджеры пакетов для различных Unices включают yum
и apt
для систем Linux, pkgsrc
для NetBSD и ports
для FreeBSD. Часто коммерческие системы Unix также заканчиваются неофициальным, но широко распространенным менеджером пакетов, таким как brew
для MacOS.)
Преимущество этих менеджеров пакетов состоит в том, что они могут отслеживать и действительно отслеживают каждый файл в системе в различных подкаталогах, которыми они «владеют». Поскольку одна группа назначает здесь имя и расположение каждого файла, все они могут использовать небольшой набор общих для них каталогов. Это дает различные преимущества, особенно в области обмена файлами между приложениями и уменьшения количества путей, необходимых для поиска библиотек и исполняемых файлов.
Тем не менее, существует давняя традиция установки «отдельного каталога для каждого приложения» и в Unix, обычно в каталоге /opt
.
Самый простой способ — создать символическую ссылку.
mv /var/tmp /var/tmp.old
ln -s /tmp /var/tmp
должно помочь