Obecná otázka:
Mohl by někdo vysvětlit, co je příkaz apt-get update
ano a kdy bych to měl opravdu použít?
Poznámky
Uveďte prosím podrobnou odpověď . Není to jen kopie manuálové stránky, pokud vaše verze není opravdu podrobná (jednu definici z manuálové stránky uvádím níže).
aktualizace apt-get :Používá se k opětovné synchronizaci souborů indexu balíků z jejich zdrojů. Indexy dostupných balíčků se stahují z umístění uvedených v /etc/apt/sources.list(5). Aktualizace by měla být vždy provedena před upgradem nebo dist-upgradem.
Dílčí otázky:
- Kde je uložen index balíčku? Na databázi? V souboru?
- Co se stane, když provedem
apt-get install
bez aktualizace mezipaměti? Existuje šance, že by vzdálený balíček již neexistoval a že by byl odkaz přerušen? - Existuje nějaká dohodnutá politika ohledně deb úložišť? Měl by repozitář například obsahovat pouze poslední verzi balíčku, nebo by naopak měl obsahovat všechny dostupné verze pro konkrétní distribuční verzi?
Kontext
Ptám se, protože studuji framework Docker. Jednou z jeho funkcí je Dockerfile , který vám umožňuje vytvořit určitý druh obrazu operačního systému provedením nějaké instrukce z tohoto souboru.
Jednou z vlastností tohoto obrazu je, že by měl být vždy stejný, bez ohledu na kontext (doba sestavení atd.).
Obávám se, že když spustím apt-get update
příkaz v jiný čas, výsledek by byl jiný, a tak by se mé obrázky lišily.
Přijatá odpověď:
apt-get update
stáhne seznam dostupných balíčků.
Seznam balíčků se může v průběhu času měnit. Nové balíčky jsou přidány a staré balíčky jsou odstraněny. Pokud tedy máte opravdu starou mezipaměť a pokusíte se provést apt-get install
, může se pokusit stáhnout balíček, který již neexistuje.
Jak dlouho bude starý balíček uchováván v úložišti, záleží na správci repo (vaší distribuci). Pokud tedy používáte něco jako docker, kde může být mezipaměť velmi zastaralá, měli byste vždy spustit apt-get update
před instalací jakýchkoli balíčků.
Důvodem pro odebírání a přidávání balíčků jsou většinou opravy chyb a aktualizace zabezpečení. Ačkoli pokud používáte repozitáře třetích stran, jako je PPA, jde všechno.
Související:Kdy se zobrazí chybová zpráva „pracovní místa:nenalezena“?Když používáte něco jako docker pro kontejnerizaci v podnikovém prostředí, měli byste kontejner sestavit jednou a poté jej přesunout přes různá prostředí vydání (vývoj, příprava, výroba) a ne pokaždé znovu sestavovat kontejner. Tím zajistíte, že nezískáte jiný kontejner, který nebyl testován.
Chcete-li odpovědět na otázku, kde se nacházejí soubory mezipaměti, /var/lib/apt/lists
.