
Ubuntu 14.04(Trusty)의 바닐라 설치를 갖고 원래 이전 커널과 함께 제공된 컨테이너화된 이전 Ubuntu 버전에서 실행할 수 있습니까?
예를 들어 12.04의 경우 및 linux-image
와 같은 후속 Ubuntu 릴리스용 패키지가 있으므로 대답은 '예'라고 가정합니다 . 하지만 10.04의 경우에는 그렇지 않으므로 확실하지 않습니다. 하지만 실행해도 괜찮은 항목을 추론하는 데 사용할 수 있는 문서가 있습니까?linux-image-generic-lts-saucy
linux-image-generic-lts-quantal
제가 묻는 이유는 커널 인터페이스가 가끔씩 업데이트되기 때문입니다. 그러나 최신 버전의 배포판을 실행하는 동시에 이전 배포판을 기반으로 빌드 환경을 유지하는 것이 도움이 되는 경우도 있습니다.
답변1
최신 커널에서 이전 Linux 프로그램을 실행할 수 있습니다. Linux는 어떤 이유로든 오래된 바이너리를 실행하는 사람들의 이익을 위해(적어도 문서화된 모든 인터페이스에 대해) 이전 버전과의 호환성을 유지합니다(왜냐하면 소스를 잃어버렸기 때문에 다시 컴파일하는 것을 귀찮게 하고 싶지 않기 때문입니다. 소스가 없는 상용 소프트웨어 등).
이전 개발 도구를 사용하는 빌드 환경을 원하거나 커널 인터페이스에 깊이 관여하지 않는 모든 것에 대한 테스트 환경을 원하는 경우 이전 커널을 실행할 필요가 없으며 이전 사용자 영역 환경만 실행하면 됩니다. 이를 위해서는 복잡한 것이 필요하지 않습니다.chroot할 것입니다. LXC, Docker 등과 같은 고급 기능은 이전(또는 최신) 배포판에 자체 네트워크 구성이 있기를 원하는 경우 유용할 수 있습니다. 이를 원하지 않으면 데비안이 정확히 사용하는 것을 사용하여 알려진 환경에서 소프트웨어를 빌드할 수 있습니다(예: 테스트 설치가 있는 컴퓨터에서 데비안 안정용 소프트웨어 빌드):슈루트. 보다64비트 Debian/Ubuntu에서 32비트 프로그램을 어떻게 실행하나요?chroot에서 데비안이나 파생 제품의 대체 설치를 설정하는 방법에 대한 안내입니다.
이전 배포판의 커널을 실행하려면 KVM 또는 VirtualBox와 같은 실제 가상 머신이 필요합니다. LXC 등을 사용한 Linux-on-Linux 가상화는 전체적으로 동일한 커널을 실행합니다.
답변2
➜ 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!