Hlavní navigace

Apt-offline: instalace balíčků bez připojení k internetu

Petr Krčmář

I když je už dnes připojení k internetu dostupné na každém rohu, stále ještě existují místa, kam nedoputovalo. Pořád se nám ale hodí mít tam možnost přinést nějaký nový software a nainstalovat ho, ale bez internetu je to trochu obtížný úkol. Naštěstí je tu utilita apt-offline, která vše vyřeší za vás.

Jeden známý mi před časem říkal, že má u rodičů počítač s Ubuntu a má velký problém tam cokoliv nainstalovat. Každý balík má hromadu závislostí a on to tam vždycky vozí natřikrát, než se mu podaří všechno stáhnout a opravdu nainstalovat. Bez internetu je to velmi nepříjemné a jakákoliv aktualizace je naprosto nemožná.

V Debianu (a jeho derivátech) je totiž politika taková, že se software do balíčků dělí po co nejmenších funkčních částech. Balíčků tedy vzniká mnoho a jsou na sobě různě závislé. V případě online použití klasického apt (nebo lépe aptitude) to funguje dobře, protože se sestaví strom závislostí a podle něj se vše potřebné stáhne. U offline počítače ale nastává velký problém, protože závislosti generují další závislosti a stáhnout pak ručně všechny potřebné soubory je někdy nadlidský úkol.

Přesně pro tyto případy existuje utilita apt-offline, která vám dovolí provádět podobné akce, jako byste byli připojeni k internetu. Software je určen pro Debian a je tím pádem i v Ubuntu a dalších derivátech obou systémů. Práce utility probíhá ve třech krocích:

  1. Na offline počítači určíte, co chcete udělat. Utilita si vše potřebné zapíše do souboru.
  2. Soubor přenesete k online počítači, na kterém nemusí být ani Ubuntu/Debian. Tam si utilita podle přineseného souboru natahá potřebná data.
  3. Stažená data přenesete opět na offline počítač, kde proběhne akce, kterou jste naplánovali.

Důležité a praktické je, že druhý krok není třeba provádět na počítači s původním systémem. Apt-offline je napsán v Pythonu, takže je možné jej provozovat všude, kde máte toto prostředí nainstalováno. Běžně je tak možné ke stahování použít počítač s MS Windows nebo Mac OS X.

Praktické použití

S pomocí apt-offline můžete provádět instalaci nových balíčků, ale i aktualizaci celého systému. Ukážeme si obojí, nejprve tedy aktualizaci celého systému. Budeme k tomu potřebovat samotnou utilitu apt-offline a dostatečně velký flash disk.

Aktualizace systému

Všechny akce je třeba provádět pod uživatelem root. Použijte tedy sudo nebo se přehlaste. Na offline počítači spustíme vytvoření signatury, tedy souboru s informacemi o našem systému:

# apt-offline set signatura.sig

Generating database of files that are needed for an update.
Generating database of files that are needed for an upgrade.

Výsledkem je soubor signatura.sig, který obsahuje vše potřebné. Jeho velikost je obvykle pár desítek kilobajtů. Soubor přeneseme na online počítač a na něm pak zavoláme:

# apt-offline get signatura.sig

Pokud chceme stahovat ve více vláknech z různých repositářů, můžeme použít parametr --threads 3. Každopádně nám vznikne soubor apt-offline.zip, ve kterém jsou všechny změny, které bude třeba udělat na druhé straně. Jeho velikost je závislá na tom, co všechno aktualizujeme, může mít desítky i stovky megabajtů. Soubor přeneseme zpět na offline počítač a na něm zadáme:

# apt-offline install apt-offline.zip

Tím se všechny stažené soubory přidají do apt databáze, stejně jako informace o nich. Pokud teď zavoláte apt-get upgrade, apt zjistí, že všechny balíčky jsou už stažené a jen je nainstaluje.

Instalace nového balíčku

Podobně je možné doinstalovat do offline počítače nějaký nový balíček včetně jeho závislostí. Řekněme, že jsme se rozhodli pro vektorový editor Inkscape. Na offline počítači tedy spustíme:

# apt-offline set signatura-pro-inkscape.sig --install-packages inkscape

Poté opět necháme na online počítači vše stáhnout a zabalit do jednoho souboru:

# apt-offline get signatura-pro-inkscape.sig --bundle inkscape-offline.zip

Soubor opět přeneseme zpět k offline počítači a na něm spustíme:

# apt-offline install inkscape-offline.zip

Soubor se rozbalí a balíčky se opět přesunou do databáze. Teď už stačí jen normálně Inkscape nainstalovat:

# apt-get install inkscape

Od programu se dozvíme, že je z internetu potřeba stáhnout 0 B archivů a můžeme vesele instalovat.

Grafické rozhraní

Počínaje verzí 1.0 z listopadu 2010 má apt-offline i svou grafickou variantu. Ta se nachází v samostatném balíčku apt-offline-gui a ke svému zobrazení používá knihovnu Qt4. Jedná se o velmi jednoduchou aplikaci, která zapadne do každého prostředí.

Umožňuje provádět všechny akce, které jsme si ukázali výše. Můžete v něm vytvořit signaturu, včetně požadavku na instalaci aplikace.

Poté na jiném počítači ve stejné aplikaci stáhnete vše potřebné.

Nakonec vše krásně jedním kliknutím nainstalujete.

Našli jste v článku chybu?

19. 6. 2012 9:04

radeczek (neregistrovaný)

IMHO, se python instalovat nemusí. Jestli tvrdíte, že nemusíte mít PC ve správě, pak je tady i třeba portable verze pythonu: http://www.portablepython.com/ nebo http://www.voidspace.org.uk/python/movpy/ Samozřejmě mi teď můžete říct, že nemusí být v systému povoleny flashky, ale to by bylo zcestné, když si odtud chceme "nějak" odnést stažená data.

19. 6. 2012 10:12

Xjmeno363 (neregistrovaný)

je to někde v menu. Označit balíčky pro pozdější stažení. (snad File > Generate package download script) Vytvoří se skript, který je stáhne a pak se na jiném PC offline nainstalují.
Před časem to tu někdo řešil pro nějakou stanici malé vodní elektrárny bez možnosti online připojení.


120na80.cz: Pánové, pečujte o svoje přirození a prostatu

Pánové, pečujte o svoje přirození a prostatu

Lupa.cz: Insolvenční řízení kvůli cookies? Vítejte v ČR

Insolvenční řízení kvůli cookies? Vítejte v ČR

DigiZone.cz: ČRo rozšiřuje DAB do Berouna

ČRo rozšiřuje DAB do Berouna

120na80.cz: 5 nejčastějších mýtů o kondomech

5 nejčastějších mýtů o kondomech

Vitalia.cz: Vychytané vály a válečky na vánoční cukroví

Vychytané vály a válečky na vánoční cukroví

DigiZone.cz: Recenze Westworld: zavraždit a...

Recenze Westworld: zavraždit a...

DigiZone.cz: Flix TV: dva set-top boxy za korunu

Flix TV: dva set-top boxy za korunu

Podnikatel.cz: Snížení DPH na 15 % se netýká všech

Snížení DPH na 15 % se netýká všech

Vitalia.cz: Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

Láska na vozíku: Přitažliví jsme pro tzv. pečovatelky

120na80.cz: Horní cesty dýchací. Zkuste fytofarmaka

Horní cesty dýchací. Zkuste fytofarmaka

Podnikatel.cz: K EET. Štamgast už peníze na stole nenechá

K EET. Štamgast už peníze na stole nenechá

Měšec.cz: Kdy vám stát dá na stěhování 50 000 Kč?

Kdy vám stát dá na stěhování 50 000 Kč?

Lupa.cz: Propustili je z Avastu, už po nich sahá ESET

Propustili je z Avastu, už po nich sahá ESET

Vitalia.cz: Taky věříte na pravidlo 5 sekund?

Taky věříte na pravidlo 5 sekund?

Měšec.cz: U levneELEKTRO.cz už reklamaci nevyřídíte

U levneELEKTRO.cz už reklamaci nevyřídíte

Vitalia.cz: Když přijdete o oko, přijdete na rok o řidičák

Když přijdete o oko, přijdete na rok o řidičák

Podnikatel.cz: Podnikatelům dorazí varování od BSA

Podnikatelům dorazí varování od BSA

Podnikatel.cz: Chaos u EET pokračuje. Jsou tu další návrhy

Chaos u EET pokračuje. Jsou tu další návrhy

Vitalia.cz: Jsou čajové sáčky toxické?

Jsou čajové sáčky toxické?

Měšec.cz: mBank cenzuruje, zrušila mFórum

mBank cenzuruje, zrušila mFórum