GNU/Linux >> Znalost Linux >  >> Linux

Je možné provozovat LTS 10.04 nebo 12.04 nebo starší kontejnerovaný pod LXC nebo Docker na Trusty?

Starší linuxové programy můžete spouštět na novějších jádrech. Linux zachovává zpětnou kompatibilitu (alespoň pro všechna zdokumentovaná rozhraní) ve prospěch lidí, kteří z toho či onoho důvodu používají staré binární soubory (protože se nechtějí obtěžovat rekompilací, protože ztratili zdroj, protože tohle je komerční software, ke kterému nemají zdroj atd.).

Pokud chcete mít prostředí pro sestavení se staršími vývojovými nástroji nebo dokonce testovací prostředí pro cokoli, co se hluboce neponoří do rozhraní jádra, pak nemusíte provozovat starší jádro, stačí starší uživatelské prostředí. K tomu nepotřebujete nic složitého:postačí chroot. Něco pokročilejšího jako LXC, Docker, … může být užitečné, pokud chcete, aby starší (nebo novější) distribuce měla vlastní konfiguraci sítě. Pokud to nechcete, můžete použít to, co Debian přesně používá k vytvoření softwaru ve známém prostředí (např. sestavení softwaru pro stabilní Debian na počítači s testovací instalací):schroot. Viz Jak spustím 32bitové programy na 64bitovém Debianu/Ubuntu? průvodce nastavením alternativní instalace Debianu nebo derivátu v chrootu.

Pokud chcete spustit jádro starší distribuce, budete k tomu potřebovat skutečný virtuální stroj, jako je KVM nebo VirtualBox. Virtualizace Linux-on-Linux s LXC nebo podobnými běží na stejném kernelu.


➜ codetv_static# docker run ubuntu:10.04 /bin/echo 'Howdy!' Unable to find image 'ubuntu:10.04' locally 10.04: Pulling from library/ubuntu a3ed95caeb02: Pull complete 86b54f4b6a4e: Pull complete Digest: sha256:f6695b2d24dd2e1da0a79fa72459e33505da79939c13ce50e90675c32988ab64 Status: Downloaded newer image for ubuntu:10.04 Howdy!


Linux
  1. Barevný výstup programu běžícího pod BASH

  2. argumenty příkazového řádku pro spuštění dockeru

  3. Spusťte docker na živém disku ubuntu

  1. Je možné emulovat starší verze Bash?

  2. Je možné spustit „unshare -n [program]“ jako neprivilegovaný uživatel?

  3. Je možné spustit Microsoft Excel pod Ubuntu?

  1. Může docker běžet uvnitř linuxového kontejneru?

  2. Jak poslat signál ke spuštění programu v kontejneru dockeru?

  3. Jak přidat uživatele do kontejneru Docker?