很簡單的問題。我正在開發一個項目,使用 btrfs 子卷在同一台電腦上安裝多個作業系統(全是 linux),以便使用者可以啟動到他們熟悉的環境。既然它們都使用Linux內核,那麼單一內核是否可以編譯並用於機器上的所有作業系統?是否有任何特定於作業系統的內容? 如果有,它只是作業系統所需的核心模組還是比這更深入?
我目前的假設是,內核完全獨立於作業系統,並且只要兩個作業系統的所有模組都包含在一個共享內核中,它們就可以共享內核,從而共享對內核所做的更新和更改。
答案1
答案2
OpenVZ 非常棒,為容器提供了安全、穩定且易於使用的解決方案。然而,Linux 中也內建了 Linux 容器,並且在最近的核心版本中已經取得了許多進展。
Linux 容器有許多可用的使用者空間實用程序,包括 lxc、vzctl(來自 OpenVZ)、libvirt 和 docker。
Linux 容器可讓您在單獨的命名空間中執行進程(如果使用使用者命名空間,也可以執行使用者)。這給人一種在同一核心上運行的單獨系統的感覺,並允許您使用 cgroup 添加對資源的限制。與 Xen、Qemu/KVM 或 VMWare 等硬體虛擬機器相比,Linux 容器極為輕量。