Какое значение имеет расположение файлов установленной программы в Linux?

#linux #ubuntu #system-administration

#linux #ubuntu #система-администрирование

Вопрос:

После установки программы в Linux иногда я обнаруживаю, что ее проще поместить в другое место. В целом, какое значение имеет расположение файлов установленной программы в Linux?

Часто в Интернете советуют добавлять (неправильные или неудобные) пути к переменным среды. Я бы предпочел переместить файлы в места, где они автоматически обнаруживаются командами и программами.

Одним из недавних примеров являются пакеты сайтов Python. Мой Python, похоже, не проверял переменную PYTHONPATH, перемещение библиотек туда в каталог Python2.7/ работало хорошо. Теперь я столкнулся с той же проблемой с OpenCV.

Мне также интересно, почему при установке Linux не запрашивается (например, Windows) нужный каталог установки и почему так часто все заканчивается там, где они не работают?

Комментарии:

1. Местоположение важно для того, чтобы программа могла найти свои файлы. Программа, ищущая нужный ей файл в месте, где этого файла нет, приводит к тому, что программа не может получить к нему доступ. Поэтому файл лучше там, где его ожидает программа. Следовательно, важно. «так часто вещи оказываются в местах, где они не работают?» — не мой опыт. измените свой дистрибутив на что-то более разумное. «интересно, почему при установке Linux не запрашивается (например, Windows) нужный каталог установки» — не должен ли вопрос быть «почему Windows запрашивает …» вместо этого?

Ответ №1:

Как правило, программы устанавливаются в /usr/bin (для двоичных файлов) и /usr/lib или по определенному пути к этому конкретному дистрибутиву Linux, так что любая устанавливаемая вами программа, использующая определенную библиотеку / программу, будет искать ее по этому пути. Если вы устанавливаете программу по другому пути, скажем, /home/user/program , она будет установлена локально, и другие программы по умолчанию не смогут получить к ней доступ.

Вы можете установить любую программу, где захотите. Тем не менее, полезно использовать репозиторий и устанавливать их по общему пути.

Ответ №2:

Я не знаю, как вы устанавливаете программы, но я использую apt-get и dpkg в Ubuntu. Вы также можете установить некоторые модули python таким образом.

Обычно предполагается, что вы используете систему пакетов, предоставляемую вашим дистрибутивом (IMHO). Если вы не используете пакеты, тогда вы сами по себе.

О PYTHONPATH. Вы добавили его в свой файл .bashrc и убедились, что он установлен в используемом вами терминале?

Также, пожалуйста, смотрите: http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard