win11中系统的WSL安装Centos以及必要组件

win11中系统的WSL安装Centos

一、配置windows

1、系统对应

如果系统版本在Windows 10 2004以下,请使用Centos7.X

2、打开虚拟化

打开控制面板 -> 程序 -> 启动或关闭windows功能 -> 确保以下选项打开:

3、重启windows

二、下载Centos镜像

1、根据自己win系统的版本,下载WSL-Centos,下载地址:

bash 复制代码
https://github.com/wsldl-pg/CentWSL/releases

2、处理文件

将下载得到的压缩包放到你想安装CentOS的位置,解压得到文件:

双击CentOS8.exe,出现DOS窗口:

当出现以下结果,按Enter,关闭DOS窗口

三、启动CentOS

1、打开DOS窗口,执行命令:

bash 复制代码
# 查看已安装镜像和运行状态
wsl -l -v

2、启动并进入Centos8

bash 复制代码
wsl -d CentOS8


3、由于 CentOS 8 和 CentOS 7 已经停止维护,所以有很多命令和数据源不能使用

错误一:

bash 复制代码
[root@localhost 64217]# yum update
CentOS-8 - AppStream                                                                    0.0  B/s |   0  B     00:00
Failed to download metadata for repo 'AppStream'
Error: Failed to download metadata for repo 'AppStream'

错误二:

bash 复制代码
Error: Failed to download metadata for repo 'appstream': Cannot prepare internal mirrorlist

原因:

查看阿里云官网上的说明:https://developer.aliyun.com/mirror/centos?spm=a2c6h.13651102.0.0.66c71b11q4E0g4

可以看到centos8官方源已下线,需切换centos-vault源
解决方案:

① 备份文件

bash 复制代码
cp -rv /etc/yum.repos.d /etc/yum.repos.d_bak

② 执行切换命令,两个命令二选一:

bash 复制代码
命令1:
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
0
命令2:
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo

③ 进入目录:

bash 复制代码
cd /etc/yum.repos.d/

④ 修改 centos 文件内容

bash 复制代码
sed -i 's/mirrorlist/#mirrorlist/g' /etc/yum.repos.d/CentOS-*
sed -i 's|#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-*

⑤ 生成缓存更新(第一次更新,速度稍微有点慢,耐心等待两分钟左右)

bash 复制代码
yum makecache

⑥ 完毕状态:

⑦ 最后,运行 yum update

bash 复制代码
yum update -y

四、这些做完如果还是有报错

1、彻底更换软件源

编辑网络配置文件

bash 复制代码
echo "nameserver 8.8.8.8" > /etc/resolv.conf
echo "nameserver 114.114.114.114" >> /etc/resolv.conf

2、替换软件源

bash 复制代码
# 备份所有原有repo文件
mkdir /etc/yum.repos.d/bak && mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak/

# 下载阿里云的CentOS 8 Vault源(使用curl,若curl也没有则手动创建文件)
cat > /etc/yum.repos.d/CentOS-Base.repo << EOF
[baseos]
name=CentOS-8 - BaseOS - mirrors.aliyun.com
baseurl=https://mirrors.aliyun.com/centos-vault/8.5.2111/BaseOS/\$basearch/os/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official

[appstream]
name=CentOS-8 - AppStream - mirrors.aliyun.com
baseurl=https://mirrors.aliyun.com/centos-vault/8.5.2111/AppStream/\$basearch/os/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-Official
EOF

3、清理缓存并重建

bash 复制代码
yum clean all
yum makecache

4、验证源是否正常

bash 复制代码
yum repolist

结果:

5、尝试安装passwd 包

bash 复制代码
# 安装
yum install passwd -y
# 检查 passwd 命令是否可用
which passwd  # 应该显示 /usr/bin/passwd
passwd --help  # 显示命令帮助信息,确认正常工作

五、配置SSH连接

正常情况下系统中应该缺失很多软件,包括ssh等

1、安装ssh

某些命令报错请自行百度安装/font>

bash 复制代码
yum install openssh-server -y

2、启动

bash 复制代码
/usr/sbin/sshd -d

报错:

这是因为 SSH 服务缺少必要的主机密钥文件导致的,使用命令生成:

bash 复制代码
# 生成主机密钥(会自动创建 /etc/ssh/ 目录下的密钥文件)
ssh-keygen -A
# 生成后检查 /etc/ssh/ 目录下是否存在相关密钥文件:
ls -l /etc/ssh/ssh_host_*_key



# 正常情况下会显示类似以下文件:
-rw------- 1 root root 1675 Aug 25 16:30 /etc/ssh/ssh_host_rsa_key
-rw-r--r-- 1 root root  398 Aug 25 16:30 /etc/ssh/ssh_host_rsa_key.pub
-rw------- 1 root root  511 Aug 25 16:30 /etc/ssh/ssh_host_ecdsa_key
-rw-r--r-- 1 root root  174 Aug 25 16:30 /etc/ssh/ssh_host_ecdsa_key.pub
-rw------- 1 root root  387 Aug 25 16:30 /etc/ssh/ssh_host_ed25519_key
-rw-r--r-- 1 root root   92 Aug 25 16:30 /etc/ssh/ssh_host_ed25519_key.pub

再次启动

bash 复制代码
# 直接启动 sshd
/usr/sbin/sshd
# 检查是否启动成功
ps -ef | grep sshd | grep -v grep
# 验证端口监听
ss -tulpn | grep sshd

设置开机自启

bash 复制代码
vi /etc/rc.d/rc.local

在文件末尾添加启动 SSH 的命令:

bash 复制代码
# 启动 SSH 服务
/usr/sbin/sshd

确保 rc.local 具有可执行权限:

bash 复制代码
chmod +x /etc/rc.d/rc.local

相关推荐
少妇的美梦3 小时前
logstash教程
运维
chen9453 小时前
k8s集群部署vector日志采集器
运维
chen9454 小时前
aws ec2部署harbor,使用s3存储
运维
轻松Ai享生活8 小时前
5 节课深入学习Linux Cgroups
linux
christine-rr8 小时前
linux常用命令(4)——压缩命令
linux·服务器·redis
三坛海会大神5559 小时前
LVS与Keepalived详解(二)LVS负载均衡实现实操
linux·负载均衡·lvs
東雪蓮☆9 小时前
深入理解 LVS-DR 模式与 Keepalived 高可用集群
linux·运维·服务器·lvs
qq_264220899 小时前
LVS负载均衡群集和LVS+Keepalived群集
运维·负载均衡·lvs
乌萨奇也要立志学C++9 小时前
【Linux】进程概念(二):进程查看与 fork 初探
linux·运维·服务器
雨落Liy9 小时前
Nginx 从入门到进阶:反向代理、负载均衡与高性能实战指南
运维·nginx·负载均衡