Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
Následující verze | Předchozí verze | ||
apt [2012/07/21 22:24] – vytvořeno ubuntu | apt [2019/02/25 17:21] (aktuální) – upraveno mimo DokuWiki 127.0.0.1 | ||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
+ | |||
+ | | | | ||
+ | |||
+ | |||
+ | {{.: | ||
+ | Správa balíků pomocí apt-get jde ruku v ruce s zdrojem softwaru uloženým v %%/ | ||
+ | |||
+ | ===== Úvod ===== | ||
+ | //" Na počátku byl %%.tar.gz%%. Uživatel | ||
+ | |||
+ | //Nové dilema přišlo na vývojáře GNU/Linux. Potřebovali rychlý, praktický a efektivní nástroj na instalaci balíků, který by spravoval závislosti knihoven automaticky a převzal starost o jejich aktualizace. To se opět povedlo vývojářům z Debian a na svět přišlo APT (the Advance Packaging Tool = Pokročilý balíkovací systém). Systém byl portován Conectivou pro použití s rpm balíky a je adoptován dalšími distribucemi."// | ||
+ | |||
+ | |||
+ | -- převzato z Debian APT HOWTO | ||
+ | |||
+ | |||
+ | ===== Příkazy ===== | ||
+ | |||
+ | ==== apt-get ==== | ||
+ | {{.: | ||
+ | Všechny níže uvedené příkazy vyžadují zadávání v [[Terminál| terminálu]] [[Root sudo| s právy administrátora]] (tj. s příkazem '' | ||
+ | |||
+ | **Kompletní aktualizaci Ubuntu z příkazové řádky** provedou níže uvedené příkazy %%apt-get update%% a %%apt-get upgrade%%. | ||
+ | |||
+ | === apt-get install < | ||
+ | nainstaluje balík | ||
+ | === apt-get install < | ||
+ | nainstaluje danou verzi balíku | ||
+ | === apt-get remove < | ||
+ | odstraní nainstalovaný balík (konfigurační soubory zůstanou) | ||
+ | === apt-get purge < | ||
+ | odstraní nainstalovaný balík i se systémovými konfiguračními soubory (vaše osobní zůstanou) | ||
+ | Malý trik: když chcete odstranit balík %%foo%% a nainstalovat balík %%bar%% v jednom kroku: %%apt-get purge foo bar+%% | ||
+ | === apt-get autoremove < | ||
+ | odstraní nainstalovaný balík i s jeho závislými balíky, které už nejsou jinde potřeba | ||
+ | |||
+ | === apt-get update === | ||
+ | Dojde k novému načtení balíků ze [[http:// | ||
+ | === apt-get upgrade === | ||
+ | aktualizuje všechny nainstalované balíky na nejnovější verzi. Před použitím je nutno nejprve zaktualizovat zdroje pomocí %%apt-get update%%. Neinstaluje balíky nové a žádné automaticky nemaže. Z toho také plyne, že pokud upgrade nějakého balíku na novější verzi by vyžadoval instalaci nebo odstranění nějakého jiného, k jeho upgradu nedojde - k tomu slouží příkaz '' | ||
+ | === apt-get dist-upgrade === | ||
+ | upgraduje balíky i za cenu toho, že bude potřeba některé balíky odstranit nebo nainstalovat. Neznamená automaticky přechod na novou verzi systému. K té dojde jen tehdy, pokud si upravíte zdroje, např. změníte odkazy z '' | ||
+ | |||
+ | === apt-get autoremove === | ||
+ | odstraní všechny nepotřebné balíky, které byly staženy jen jako závislosti jiných balíků. Občas použijte pro uvolnění místa na disku. | ||
+ | === apt-get autoclean === | ||
+ | ve ''/ | ||
+ | * :!: V [[Synaptic|Synapticu]] lze nastavit, aby se stažené balíky neukládaly, | ||
+ | * :!: Velikost adresáře ''/ | ||
+ | |||
+ | === apt-get clean === | ||
+ | smaže balíky již nainstalovaného softwaru. Software zůstane nainstalován, | ||
+ | |||
+ | === apt-get -f install === | ||
+ | Stejné jako **Akce → Odstranit balíky které jsou v konfliktu** a klik na **Použít** v Synapticu. Dojde k odstranění balíků se špatnými závislostmi. | ||
+ | |||
+ | ==== apt-cache ==== | ||
+ | === apt-cache search < | ||
+ | vyhledá balík obsahující ve svém názvu „vzor“. | ||
+ | === apt-cache show < | ||
+ | ukáže informace o balíku „název_balíku“. | ||
+ | === apt-cache showpkg < | ||
+ | Ukáže podrobnější informace o balíku. | ||
+ | |||
+ | ==== dpkg ==== | ||
+ | === dpkg -l < | ||
+ | seznam instalovaných balíků odpovídající vzoru. Užitečné pokud neznáte správný název balíku. | ||
+ | === dpkg -L < | ||
+ | ukáže soubory, které má instalované balík „název_balíku“ v systému | ||
+ | === dpkg -S < | ||
+ | vyhledá balík, ze kterého pochází soubor „název_souboru“. Tento postup je inverzní oproti %%dpkg -L název_balíku%%, | ||
+ | === dpkg -c < | ||
+ | jaké soubory obsahuje balík „foo.deb“. Zobrazí se to, co přibude ve Vašem systému po nainstalovaní balíku „foo.deb“, | ||
+ | === dpkg-reconfigure < | ||
+ | přenastaví balík „název_balíku“. Pozor, při provedení tohoto příkazu u některých balíku můžete být dotazováni na upřesňující informace. Například: | ||
+ | === dpkg --set-selections === | ||
+ | * '' | ||
+ | * Poznámka: %%apt-get dist-upgrade%% ignoruje toto nastavení, ale budete varováni. | ||
+ | * '' | ||
+ | |||
+ | ===== Příklad použití APT ===== | ||
+ | |||
+ | {{.: | ||
+ | |||
+ | < | ||
+ | sudo apt-cache search racing game | ||
+ | </ | ||
+ | |||
+ | Tento příkaz mi dá mnoho odpovědí. Bohužel velká část her je v angličtině a tak nemůžete vyhledávat frázi //závodní hra//, ale musíte si pojem přeložit: //racing game//. Ze seznamu mě zaujala hra s názvem //torcs//, tak se podívám na nějaké bližší informace o ní: | ||
+ | |||
+ | < | ||
+ | apt-cache show torcs | ||
+ | </ | ||
+ | Hmm ... to vypadá zajímavě. Ale nemám již tuto hru instalovanou na počítači? | ||
+ | |||
+ | < | ||
+ | sudo apt-cache policy torcs | ||
+ | </ | ||
+ | Pěkné, chci to nainstalovat: | ||
+ | |||
+ | < | ||
+ | sudo apt-get install torcs | ||
+ | </ | ||
+ | Jaký příkaz zadat do konzole ke spuštění hry? Mno dobře, v tomto případě je to docela zřejmé //torcs//. Ale ne vždy je to tak jasné. Jedna možnost jak to zjistit, je podívat se jaké soubory z balíku jsou nainstalovány v %%/ | ||
+ | |||
+ | < | ||
+ | dpkg -L torcs | grep /usr/games/ | ||
+ | </ | ||
+ | První část příkazu zobrazí instalované soubory balíkem //torcs//. Druhá část vyfiltruje jen názvy souborů obsahující /// | ||
+ | |||
+ | Hmm, hra je super. Možná by to chtělo nějaké další tratě? | ||
+ | |||
+ | < | ||
+ | apt-cache search torcs | ||
+ | </ | ||
+ | Zobrazí se nám další dva balíky, které můžeme nainstalovat. | ||
+ | |||
+ | Ale ne, dochází mi volné místo na disku, musím promazat nepotřebné balíky: | ||
+ | |||
+ | < | ||
+ | apt-get clean | ||
+ | </ | ||
+ | A jé, máma se ptá jestli bych mohl odstranit všechny hry z tohoto počítače. Vyhovím, ale nechám si schované konfigurační soubory na jindy: | ||
+ | |||
+ | < | ||
+ | apt-get remove torcs | ||
+ | </ | ||
+ | Asi už to hrát nikdy nebudu, smažu i konfigurační soubory: | ||
+ | |||
+ | < | ||
+ | apt-get purge torcs | ||
+ | </ | ||
+ | Pokud potřebujete nainstalovat starší verzi balíku, přidejte ji za název balíku, např.: | ||
+ | < | ||
+ | apt-get install firefox=3.0.7+nobinonly-0ubuntu0.8.10.1 | ||
+ | </ | ||
+ | Aktualizovat systém pomocí příkazové řádky (nepotřebujeme Správce aktualizací) | ||
+ | < | ||
+ | sudo apt-get update && sudo apt-get upgrade | ||
+ | </ | ||
+ | < | ||
+ | sudo apt-get dist-upgrade | ||
+ | </ | ||
+ | ===== Dodatečné balíky ===== | ||
+ | |||
+ | {{.: | ||
+ | %%deborphan%% a %%debfoster%% jsou užitečné programy pro hledání osiřelých a nepotřebných balíků k odstranění. | ||
+ | |||
+ | ===== Zrychlení práce v Terminálu ===== | ||
+ | |||
+ | Pro zrychlení práce si lze vytvořit aliasy. **Alias** přestavuje zkratku pro příkaz, nebudeme muset vypisovat %%apt-get install%%, ale stačí jen napsat %%agi%%. Pro tvorbu aliasů si v textovém editoru otevřeme '' | ||
+ | |||
+ | < | ||
+ | | ||
+ | </ | ||
+ | Nalezneme řádku ''# | ||
+ | |||
+ | < | ||
+ | alias acs=' | ||
+ | alias agu=' | ||
+ | alias agg=' | ||
+ | alias agd=' | ||
+ | alias agi=' | ||
+ | alias agr=' | ||
+ | </ | ||
+ | {{.: | ||
+ | Pakliže s prací v Terminálu teprve začínáte, | ||
+ | |||
+ | ===== Nastavení apt-get s využitím http-proxy ===== | ||
+ | |||
+ | {{.: | ||
+ | K využití apt-get s htttp-proxy využijte jednu z následujících tří variant nastavení. Každá se hodí pro trochu jiné využití, | ||
+ | |||
+ | ==== dočasné ==== | ||
+ | |||
+ | Toto je varianta vhodná pro dočasné řešení. Ručně můžete nastavit http-proxy pokaždé když se Vám to hodí pro trvalé řešení jsou efektivnější jiné metody. | ||
+ | |||
+ | Vložte následující řádek do terminálu a výraz // | ||
+ | |||
+ | < | ||
+ | export http_proxy=http:// | ||
+ | </ | ||
+ | ==== apt.conf ==== | ||
+ | |||
+ | Tato varianta využívá nastavení v souboru ''/ | ||
+ | |||
+ | Otevřeme si v textovém editoru '' | ||
+ | |||
+ | < | ||
+ | gksudo gedit / | ||
+ | </ | ||
+ | A přidáme tuto řádku. Výrazy // | ||
+ | |||
+ | < | ||
+ | Acquire:: | ||
+ | </ | ||
+ | Soubor uložíme a zavřeme. | ||
+ | |||
+ | ==== bashrc ==== | ||
+ | |||
+ | Tento postup přidá do nastavení [[http:// | ||
+ | |||
+ | Nejprv si otevřeme v textovém editoru '' | ||
+ | |||
+ | < | ||
+ | gedit ~/.bashrc | ||
+ | </ | ||
+ | Přidáme následující řádky na konec souboru. Výrazy // | ||
+ | |||
+ | |||
+ | < | ||
+ | http_proxy=http:// | ||
+ | export http_proxy | ||
+ | </ | ||
+ | Uložíme soubor a zavřeme. | ||
+ | |||
+ | ===== Řešení problémů ===== | ||
+ | |||
+ | ==== E: Problem with MergeList ==== | ||
+ | Chyba vypadá nějak takto | ||
+ | < | ||
+ | E: Problem with MergeList / | ||
+ | </ | ||
+ | * zkontrolujte, | ||
+ | * zavřete všechny programy, které instaluji balíky nebo programy | ||
+ | * otevřete [[Terminál]] a zadejte tyto dva příkazy | ||
+ | < | ||
+ | sudo rm / | ||
+ | sudo apt-get update | ||
+ | </ | ||
+ | První příkaz vymaže všechny soubory v daném adresáři. | ||
+ | Druhý je obnoví. |