適用於 Linux 的 WSL 等效項
將 Fedora 雲映像導入我的 Windows 10 只是一個 wsl 命令。
當我使用 Linux 作為基本作業系統時,這相當於什麼?VirtualBox 更難。
對於 Linux 主機上的另一個選項,我會推薦 Docker。安裝 Docker後,您可以基於現有“圖像”快速啟動新的“容器”,類似於您在 Windows 上使用 WSL 所做的
wsl --import
事情wsl -d <DistroName>
。Docker 實際上遠遠超出了作業系統映像,因為您可以輕鬆下載和執行許多不同的應用程序/伺服器/程式語言。
例如:
docker pull opensuse/leap # pulls the latest image from the online Docker repository. # ^^^ Not strictly necessary since the next command will load it from the repo if it isn't found locally docker run -td --name opensuse opensuse/leap # Starts a container from the image running in daemon mode with a terminal docker exec -it opensuse bash # Executes bash inside the running container with an interactive terminal # Exit bash the image (CTRL+D) # Cleanup docker stop opensuse # Stops the container docker rm opensuse # Removes the container docker rmi opensuse/leap # Removes the image
您需要非常清楚的一件事是這些容器本身總是短暫的。當容器停止時,對容器或在其中創建的文件所做的任何更改都**將失去。**要持久化配置,您需要創建
Dockerfile
s. 要持久化文件,您可以在啟動容器時掛載一個外部卷(可以是主機上的目錄)。確定特定案例所需的 Docker 選項肯定有一些學習曲線,但是一旦您掌握了基礎知識(例如上面的那些命令),就很容易輕鬆嘗試不同的圖像。
獎勵 - 您可以將 Docker 安裝到 WSL2 實例中,並在那裡也有這些好處。你會發現很多Docker 鏡像,這些鏡像是在 WSL 下無法載入的,甚至。
現在我知道您不是在尋找適用於 Windows 的 Linux 子系統,而是在尋找一種在 linux 主機上執行多個 linux 客戶機的方法。有幾種方法可以做到這一點,包括:虛擬機、容器、chroot
你已經表明你不喜歡虛擬機,而且我對容器了解不多,但這裡是如何 chroot:
使用時,
chroot
您將根目錄更改為主機系統上的另一個目錄。所以你你chroot /var/chroot/ubuntu
,那麼/var/chroot/ubuntu/bin
將成為你的新人/bin
。這意味著當您執行時/bin/bash
,您正在執行 Ubuntu 版本的 bash。如果你執行/usr/bin/apt install <package>
你正在安裝 Ubuntu 的版本到那個 chroot。
chroot
您可以為大多數發行版設置一個。不同的發行版有不同的設置方式,因此您需要查閱您感興趣的發行版的文件。對於基於 Debian 的發行版,我使用debootstrap
如下方式安裝系統:debootstrap buster /var/chroot/buster http://ftp.debian.org/debian debootstrap wheezy /var/chroot/wheezy http://archive.debian.org/debian debootstrap hardy /var/chroot/hardy http://archive.ubuntu.com/ubuntu/ debootstrap kali-rolling /var/chroot/kali http://http.kali.org/kali
更完整的資訊在這裡:https ://wiki.debian.org/chroot