CentOS 8 或其任何其他版本在 Windows 10 应用商店中没有正式的WSL--Linux的 Windows 子系统,但是,你仍然可以安装和使用它。

微软一直对 Linux 表示喜爱,这在 WSL 中可以看到。随着最新的 Windows 10 5 月更新,WSL 2,以前 WSL 1 的升级版将提供给普通用户。这样做的好处是,现在我们将有成熟的 Linux 内核来操作各种 Linux 应用程序,如Ubuntu、Debian Kali、SUSE 等……最近,Ubuntu 20.04 LTS,这个Linux的最新版本可以下载并安装在Windows 10 的 WSL 上,但抱歉地说,我们那里没有流行的 CentOS 服务器 Linux。也许,这是因为 CetnOS 在标准桌面Linux 用户中不太受欢迎。然而,如果你是一个开发人员或只是一个 Linux 爱好者,并想在 Windows 10 WSL 上使用 CentOS8 ,这里有这方面的教程。

要求

  • Windows 10 上的 WSL
  • 互联网连接以下载所需的文件。

    步骤 1:在系统上启用 WSL

    如果您的系统上已经启用了适用于 Linux 的 Windows 子系统,则可以转到下一步。但是,那些仍然需要打开,只需以管理员身份启动 Powershell 并将以下命令复制粘贴到其中即可。该过程完成后,重新启动系统。
    1. PS D:\Tools\linux\centos\CentOS8>Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

    第二步: 下载 CentOS 8 WSL 文件

    好吧,要获得 CentOS WSL Linux 应用程序,我们不需要访问 Windows 10 商店,因为它不存在,而是它可以在Github 上作为一些日本开发人员开发的开源项目,名为 yuk7(配置文件名称)。因此,转到他的Github项目页面,在 CentOS WSL 版本下,您将获得最新的 8.1 版本。但请记住使用此版本,您应该使用最新的 Windows 10 May 更新 2004 或更高版本。否則,您可以運行 CentOS 7 WSL 應用程式
    image.png

    步骤3:解压 CentOS8.zip

    下载的文件将采用压缩格式,因此只需右键单击并将其解压缩到不会意外删除文件的位置即可。
    Windows 10 安装 CentOS  子系统 - 图2
    提取压缩的 CentOS8 WSL
    D:\Tools\linux\centos\CentOS8
    image.png

    第3步:在WSL上安装CentOS 8

    打开解压缩的文件夹并运行CentOS8.exe 文件。如果Windows对此表示怀疑,只需选择”仍然运行”选项即可。
    D:\Tools\linux\centos\CentOS8
    image.png
    image.png
    CentOS 8 文件夹

几分钟后,它将在Windows 10 的 WSL 功能下注册这个新的 Linux 应用程序。
image.png
CentOS 8 Windows 10 WSL 安装完成

步骤 4:运行 Linux 应用

现在,再次运行提取的文件夹中存在的相同的 CentOS8 可执行文件,但这次您将看到带有 root 用户的命令行。或者只是在Windows 10搜索框中键入CentOS。

为了测试一切是否正常工作,我们运行了一个系统更新命令。您也可以执行相同的操作。

  1. [root@KM009326 carl.wu]# dnf update

image.png
image.png
默认情况下,root 用户没有任何密码,如果需要,可以设置一个密码。

此外,那些想要在 WSL 2 下运行它的人,他们可以看到这个教程:如何在WSL 2上运行Linux应用程序
image.png
运行 Centos 更新命令

从 WSL 卸载 CentOS 8 (可选)

如果将来,如果你想删除这个Linux应用程序,那么不要直接删除CentOS 8解压缩文件夹,否则会在重新安装时产生问题,从而正确取消注册它,然后删除文件。
Windows 10 安装 CentOS  子系统 - 图10
在此处打开 PowerShell 窗口

  • 打开其文件夹,按住shift键,然后在该文件夹中单击鼠标右键。
  • 在此处选择”打开 Powershell 窗口”。
  • 运行命令:
    1. PS D:\Tools\linux\centos\CentOS8> ./CentOS8.exe clean
    上述命令的输出:
    1. PS C:\Users\Raj\Desktop\CentOS8> ./CentOS8.exe clean This will remove this distro (CentOS8) from the filesystem. Are you sure you would like to proceed? (This cannot be undone) Type "y" to continue:Y Accepting is required to proceed.
    Windows 10 安装 CentOS  子系统 - 图11
    所以,这是一个关于在Windows 10 WSL上运行 CentOS 8 服务器的简单教程。

注意:如果您将来收到此错误-

  1. RPM: error: db5 error(-30969) from dbenv->open: BDB0091 DB_VERSION_MISMATCH: Database environment version mismatch
  2. RPM: error: cannot open Packages index using db5 - (-30969)
  3. RPM: error: cannot open Packages database in /var/lib/rpm
  4. The downloaded packages were saved in cache until the next successful transaction.
  5. You can remove cached packages by executing 'dnf clean packages'.
  6. Error: Could not run transaction.

然后简单地运行 -

  1. sudo rm /var/lib/rpm/.rpm.lock

原文链接

https://www.how2shout.com/how-to/how-to-install-centos-8-on-wsl-windows-10.html

https://www.how2shout.com/how-to/install-centos-on-windows-10-subsystem-for-linux.html

在 WSL2 上启用 systemd

  1. [root@dev workspace]# sudo dnf install python2 -y
  2. [root@dev workspace]# sudo ln -s /usr/bin/python2 /usr/bin/python
  3. [r oot@dev workspace]# sudo mv /usr/bin/systemctl /usr/bin/systemctl.old
  4. [root@dev workspace]# cp /mnt/D/Tools/linux/centos/systemctl.py /usr/bin/systemctl
  5. [root@dev workspace]# sudo chmod +x /usr/bin/systemctl
  6. [root@dev workspace]# sudo dnf install nginx -y
  7. [root@dev workspace]# sudo systemctl start nginx
  8. [root@dev workspace]# curl localhost
  9. [root@dev workspace]# sudo systemctl stop nginx

image.png

原文链接

https://superuser.com/questions/1556609/how-to-enable-systemd-on-wsl2-ubuntu-20-and-centos-8