Ubuntu/instalace/offline
Ubuntu/instalace/offline – řešení problému, jak instalovat balíky anebo spravovat aktualizace bez připojení (anebo s omezeným připojením) off-line prostřednictvím jiného počítače (a následného přenosu stažených souborů na USB disku)
keryx
[editovat]- bohužel poslední aktualizace 2011-01-01, od té doby nic:
- https://launchpad.net/keryx
- http://keryxproject.org/ – This domain may be for sale.
- https://launchpad.net/ubuntu/xenial/+source/keryx – There is no current release of this source package in The Xenial Xerus.
Sushi, huh
[editovat]Psáno v Pythonu, dosud nestabilní verze, háže chyby:
Při spuštění:
./sushi_huh.sh
stejně jako:
python2 -B ./sushi_huh.py
se zobrazí chyba:
Traceback (most recent call last): File "/home/petr/sushi-huh/src/il_cuore/lib/sushi_huh_PyHP.py", line 99, in __init__ exec(python_script, globals(), locals()) File "<string>", line 43, in <module> File "/home/petr/sushi-huh/src/il_cuore/lib/sushi_huh_Wizard.py", line 82, in __init__ self.plugin = pluginator.get_plugin('repo', self.main_ini_file['plugin']['plugin_name'][0]) File "/home/petr/sushi-huh/src/il_cuore/lib/sushi_huh_Pluginator.py", line 72, in get_plugin plugin = __import__(info['plugin']['main_file'][0][: info['plugin']['main_file'][0].rfind('.')]).Plugin() File "/home/petr/sushi-huh/src/il_cuore/plugins/repo/ubuntu/ubuntu.py", line 35, in <module> from il_cuore.lib.sushi_huh_UbuntuCodename import UbuntuCodename File "/home/petr/sushi-huh/src/il_cuore/lib/sushi_huh_UbuntuCodename.py", line 31, in <module> import urllib.request ImportError: No module named request
Při pokusu doinstalovat
pip install request
dostanu hlášky:
Collecting request Using cached request-0.0.12.tar.gz Collecting get (from request) Using cached get-0.0.20.tar.gz Collecting post (from request) Using cached post-0.0.12.tar.gz Collecting setupfiles (from request) Using cached setupfiles-0.0.15.tar.gz Complete output from command python setup.py egg_info: Traceback (most recent call last): File "<string>", line 1, in <module> File "/tmp/pip-build-Jlf1zP/setupfiles/setup.py", line 4, in <module> from setupfiles import setup File "setupfiles.py", line 18, in <module> import setupfiles # nopep8 File "setupfiles.py", line 18, in <module> import setupfiles # nopep8 File "setupfiles.py", line 18, in <module> import setupfiles # nopep8 ... File "setupfiles.py", line 18, in <module> import setupfiles # nopep8 File "setupfiles.py", line 18, in <module> import setupfiles # nopep8 File "setupfiles.py", line 18, in <module> import setupfiles # nopep8 File "setupfiles.py", line 18, in <module> import setupfiles # nopep8 File "setupfiles.py", line 18, in <module> import setupfiles # nopep8 File "setupfiles.py", line 11, in <module> dirname = os.path.abspath(os.path.dirname(__file__)) File "/usr/lib/python2.7/posixpath.py", line 361, in abspath if isinstance(path, _unicode): RuntimeError: maximum recursion depth exceeded while calling a Python object ---------------------------------------- Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-Jlf1zP/setupfiles/
Při pokusu o spuštění z třetí verze pythonu:
python3 -B ./sushi_huh.py
se zobrazí chyba:
Traceback (most recent call last): File "/home/petr/sushi-huh/src/il_cuore/lib/sushi_huh_PyHP.py", line 99, in __init__ exec(python_script, globals(), locals()) File "<string>", line 33, in <module> ImportError: No module named 'sushi_huh_INIFile'
apt-get
[editovat]- Fabian Lee (2016-07-27): Ubuntu: Installing Packages without Public Internet Access
- askubuntu.com (2017-01-26): Install packages offline on 16.04.1
URL potřebných balíků lze vyloudit pomocí:
apt-get --print-uris --yes install název_balíku | grep ^\' | cut -d\' -f2
balíky si stáhnout, uložit na USB-disk a pak to překopírovat do keše cílového počítače.
Ale nezjistil jsem, jak podobným způsobem dělat aktualizace.
APTonCD
[editovat]Jestli tomu dobře rozumím, umí jen vypalovat CD nebo DVD zvolených balíků. Ale nevím, jestli také umí dělat aktualizace.
apt-offline
[editovat]Osvědčilo se
Instalace:
sudo apt-get install apt-offline
Příkaz set generuje tzv. signature file, což je seznam balíků, které se mají updatovat a/nebo upgradeovat včetně jejich URL:
sudo apt-offline set signature_file
Během generování hlásí:
Generating database of files that are needed for an update. Generating database of file that are needed for operation upgrade
Tento signature_file si přenesu do počítače, na kterém budu stahovat, a příkazem get si je stáhnu do zvoleného adresáře:
apt-offline get -d název_adresáře signature_file
Stažené balíky si přenesu do cílového počítače, kde je nainstaluji příkazem:
sudo apt-offline install název_adresáře
Kdo chce grafické rozhraní, může si nainstalovat:
sudo apt-get install apt-offline-gui
Avšak toto jednoduché okénko myslím žádné zjednodušení nenabízí, příkazová řádka je pohodlnější a nabízí více možností.
Po tom, co apt-offline nainstaluje stažené balíky do cache, spustíme jejich upgrade obvyklým příkazem:
sudo apt-get upgrade
Voila!
odkazy
[editovat]- It's FOSS Abhishek Prakash (2017-01-17): Upgrade Or Update Ubuntu Offline, Without Internet