V Ubuntu/Linuxu jsem úplně nový, momentálně používám Ubuntu Server. Jen se snažím přijít na něco základního.
Jak můžete zjistit, kam instalujete program. Například jsem právě nainstaloval vyhledávač Sphinx umístěním tarballu, který jsem si stáhl z jejich stránek, do svého:
/home/sphinx
adresář. Vytvořil jsem adresář sphinx, do kterého jsem umístil tarball. Poté jsem spustil tyto příkazy:
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
a pak tyto:
make
sudo make install
Nyní mám v adresáři, kde jsem spustil tyto příkazy, mnoho souborů. Je to moje instalace Spynx nebo se to nainstalovalo někde jinde?
Pokud v systému Windows spustíte instalační program (soubor EXE) kdekoli, program se stále nainstaluje do vašeho adresáře C:\Program Files. Platí něco podobného pro linux, kde jsou všechny programy instalovány na centrálním místě, nebo můžete programy instalovat kdekoli v systému?
Otázky
-
Upřednostňuji mít všechny nainstalované programy na jednom místě, takže
jaké je pro to správné místo z hlediska osvědčených postupů. Jinými slovy
co je linuxový ekvivalent C:\Program Files? -
A jak se vždy instaluje do tohoto umístění, je to jen otázka umístění tarballu a spuštění instalačních příkazů z tohoto umístění?
-
Co když k instalaci balíčku použiji sudo apt-get. Jak mohu ukázat na toto umístění, abych řekl apt-get, aby se tam vždy nainstaloval?
Nejlepší odpověď
Platí něco podobného pro linux, kde jsou všechny programy instalovány na centrálním místě
Přibližné ekvivalenty instalačních adresářů Windows v Linux
\Windows
=/bin
\Windows\System32
=/lib
a/sbin
\Program Files
=/usr/bin
a/usr/lib
Raději bych měl všechny nainstalované programy na jednom místě, takže jaké je pro to správné místo z hlediska osvědčených postupů. Jinými slovy, co je linuxový ekvivalent C:\Program Files?
To by byly adresáře pod /usr
, konkrétně /usr/bin
a /usr/lib
.
A jak se vždy instaluje do tohoto umístění, je to jen otázka umístění tarballu a spuštění instalačních příkazů z tohoto umístění?
-
Ne. Kde se nacházíte, když spouštíte instalační příkazy, téměř nikdy nezáleží.
-
Programy, které instalujete pomocí
apt-get
(neboaptitude
) skončí téměř vždy správně v/usr
. ALE programy, které kompilujete ze zdroje amake install
častěji skončí v/usr/local/bin
,/usr/local/lib
, atd. a můžete s tím mít problémy, protože uživatelsky instalovaná cesta v Debian/Ubuntu je/usr
a ne/usr/local
. -
Při kompilaci ze zdroje přidejte tento přepínač ke konfiguraci:
./configure --prefix=/usr
. Tímto způsobem, kdyžmake install
soubory skončí ve správném adresáři -
Podívejte se také do
checkinstall
program, který sleduje soubory, které balíček zkompiloval ze zdrojových instalací, vytváří soubor deb a umožňuje snadnou odinstalaci/přeinstalaci.
Co když použiji sudo apt-get k instalaci balíčku. Jak mohu ukázat na toto umístění, abych řekl apt-get, aby se tam vždy nainstaloval?
apt-get
/dpkg
postarat se o to automaticky. Můžete použít dpkg -L name-of-package
zobrazíte všechny soubory nainstalované balíčkem a místo, kde byly nainstalovány.