Я часто использую этот способ, чтобы мой исполняемый файл появился в терминале. Это хорошо или плохо? И почему?
2 ответа
/bin
используется для исполняемых файлов, используемых ядром. /usr/bin/
Я думаю, что для вашего менеджера пакетов distibutions. Вы можете свободно добавлять ссылки на свои исполняемые файлы в /usr/local/bin
где обычно компилируемое программное обеспечение устанавливается самостоятельно с помощью make install
Идеальный способ - добавить ~/bin
к вашему пути, создать эту папку в вашем домашнем каталоге и просто использовать эту папку.
Конечно, все это главным образом связано с аккуратностью, элегантностью, правильностью и т.д. Я не могу придумать разумного технического недостатка в прямой связи с /bin
если вы делаете это правильно, без ошибок.
Нет ничего плохого в том, чтобы оставить символическую ссылку на исполняемый файл в /bin
. На самом деле, это может быть очень чистый способ управления вашими исполняемыми файлами по сравнению с помещением пути каждого отдельного исполняемого файла в ваш $PATH
.
Таким образом, вместо того, чтобы, например, /usr/local/bin:/usr/bin:/bin
в вашем $PATH
, у вас будет /home/user/foo/bin:/home/user/bar/bin:/yet/another/bin:/usr/local/bin
и т. д., что было бы трудно поддерживать. Кроме того, вам придется настроить свой собственный путь для всех оболочек, тогда как простое размещение символической ссылки в /bin
делает ее доступной для любой оболочки сразу.
Но это твой выбор. Часто программы должны иметь переменную FOO_HOME
, указывающую на их каталог, например, TOMCAT_HOME
, который содержит собственный каталог bin
.
Возможно, вам следует рассмотреть возможность использования /usr/bin
вместо /bin
, поскольку последний обычно зарезервирован для основных системных двоичных файлов, доступных всем пользователям, а /usr/bin
для несущественных двоичных файлов.
Еще лучше было бы использовать /usr/local/bin
, так как /usr/local
- это место по умолчанию для всего, что вы установили сами, как пользователь, - и всего, что не является частью системной установки по умолчанию. Если /usr/local/bin
отсутствует в вашем $PATH
, вы, конечно, должны добавить его.
Чтобы узнать больше об организации каталогов, ознакомьтесь со стандартом иерархии файловых систем.