Я полностью новичок в Ubuntu / Linux, использую Ubuntu Server в данный момент. Просто пытаюсь понять что-то основное.
Как вы можете сказать, где вы устанавливаете программу. Например, я только что установил поисковую систему Sphinx, поместив архив, загруженный с их сайта, на свой:
/home/sphinx
каталог. Я создал каталог sphinx для размещения этого архива. Затем я выполнил следующие команды:
tar xvzf sphinx-0.9.8.1.tar.gz
cd sphinx-0.9.8.1/
./configure --with-mysql-includes=/usr/include/mysql --with-mysql-libs=/usr/lib/mysql
а потом эти:
make
sudo make install
Теперь у меня есть много файлов в каталоге, где я запускал эти команды. Это моя установка Spynx или она была установлена где-то еще?
В Windows, если вы запустите установщик (файл .exe) в любом месте, программа все равно будет установлена в каталог C: \ Program Files. Относится ли что-то подобное к linux, где все программы установлены в одном месте, или вы можете устанавливать программы в любом месте системы.
Вопросов
Я бы предпочел хранить все мои установленные программы в одном месте, так что это подходящее место с точки зрения наилучшей практики. Другими словами, что такое Linux-эквивалент C: \ Program Files?
И как всегда установить в этом месте, это просто вопрос размещения tarball и запуска команд установки из этого места?
Как насчет того, чтобы использовать sudo apt-get для установки пакета. Как я могу указать на это местоположение, чтобы apt-get всегда устанавливал его там?
источник
make uninstall
НЕ является стандартной функцией и не встречается во многих программных источниках. Кроме того,/usr/local
часто отсутствует в пути в Ubuntu и может вызвать проблемы при попытке запуска программ или при попытке компиляции (из-за включений в/usr/local
).Обычно программы устанавливаются в нескольких каталогах в одном верхнем каталоге, называемом префиксом . Какой главный каталог использовать, зависит от того, кто устанавливает, для какой цели и кто будет управлять программным обеспечением.
Префикс
/usr
- это программное обеспечение, упакованное вашим дистрибутивом. Вам не следует устанавливать какое-либо другое программное обеспечение там, потому что это будет путать дистрибутив при установке и обновлении программного обеспечения, упакованного дистрибутивом. Поэтому, пожалуйста , не устанавливайте там свое собственное скомпилированное программное обеспечение. Это не очень хорошая идея, если вы действительно не знаете, что делаете. И если вы не являетесь разработчиком Debian или Ubunut, вы обычно этого не делаете. Я бы так не поступил.Для коммерческого программного обеспечения используется префикс
/opt
. Для них зарезервировано меньше всего вмешиваться в дистрибутивы и локального системного администратора.Для программного обеспечения, устанавливаемого системным администратором для всех пользователей, используется префикс
/usr/local
. Там это далеко от как коммерческой, так и дистрибутивной установки и не будет мешать им. Таким образом, вы используете это как системный администратор (если у вас есть права root, вы являетесь системным администратором).Если вы обычный пользователь, устанавливающий программное обеспечение для себя, вы можете использовать свой домашний каталог в качестве префикса, используя
--prefix
опциюconfigure
с каталогом префикса "~/
" или$HOME/
. Я использовал это много, когда я был студентом. :-)Обычно программное обеспечение делает правильные вещи, когда вы выполняете
configure
с опцией--prefix
с правильным значением, а затемmake; make install
.Под любым из этих префиксов вы обычно находите эти каталоги в стандартной установке.
bin
- исполняемые программы, двоичные файлы.sbin
- двоичные файлы системы, которые обычно не должны выполняться обычными пользователями.man
- справочные страницы для программ, библиотек и конфигурационных файлов и т. д.etc
- файлы конфигурации со значениями по умолчанию для программного обеспечения.lib
- программные библиотеки и файлы данных, которые зависят от архитектуры (например, процессора) вашего компьютера.share
- файлы данных, которые не отличаются на разных архитектурах, и могут быть разделены между разными компьютерами.var
- каталоги с данными, которые изменяются во время выполнения программы. Как журналы и т. Д.Большинство этих каталогов можно использовать с файловыми системами, защищенными от записи, для повышения безопасности. Единственный, в который пользователи должны писать - это
var/
каталог. Когда программное обеспечение обновляется, эти каталоги, очевидно (?) Должны иметь права на запись. Это можно сделать с помощью перемонтирования с правами записи во время установки, а затем перемонтирования с чтением только после установки. Но это продвинутый уровень, и я приведу его только в качестве примера расширенного управления пакетами.Есть также некоторые каталоги непосредственно под
/
(корневой каталог) , который не существует под любым другим префиксом, как/dev
,/tmp
,/proc
и/srv
(для каталогов данных сервера, но они , как правило , находятся под/var/lib
или/var/www
и каталоги , как , что, так что вам необходимо изменение конфигурации для используйте этот каталог. Я рекомендую вам делать это, когда вы работаете на сервере. Используйте только/var/
для тестирования стандартной установки)./usr
как Debian / Ubuntu/usr/local
. Узнайте свой дистрибутив.--prefix
полезны для использования программconfigure
. Лучший способ узнать это, вероятно, прочитатьREADME.txt
файл или что-то в этом роде, которое вы, вероятно, предоставили в архиве tar. Архив tar может быть извлечен в любом месте, например, в вашем домашнем каталоге. После завершения установки вы можете удалить извлеченный архив tar, если вам не хватает места. Но не делайте этого раньше, если вы не проверили правильность установки.apt-get
илиaptitude
всегда устанавливаемые в нужном месте для распространения. Вы не можете изменить это место.источник
Когда вы устанавливаете программы из репозитория, используя обычную установку, они устанавливаются в правильное место, создают файлы конфигурации в нужном месте (функционально аналогично реестру Windows) и автоматически создают пункты меню.
Когда вы загружаете файл (не является предпочтительным, но часто необходимым, когда приложение отсутствует в репозитории), первое, что вы сделали, - запустили tar, что эквивалентно разархивированию в Windows. Это создает файлы, которые вы, скорее всего, видите.
Затем, когда вы запускаете make install, это, как правило, помещает результаты в нужное место, возможно, создает меню, но не удаляет файлы без изменений. Скорее всего, вы можете сделать это, но вы можете временно сохранить их на всякий случай.
Вот интересная статья о структуре каталогов Debian .
источник