WSL中Ubuntu出现过的问题!!!

1. 问题:在运行代码过程中突然掉线,然后自动连线后使用su登录root失败,并且sudo失效

powershell 复制代码
ubuntu@LAPTOP-3II6MIRG:/mnt/c/Windows/system32$ su                                                                      
Password:   Ubuntu                                                                                                     
su: cannot set groups: Operation not permitted
powershell 复制代码
ubuntu@LAPTOP-3II6MIRG:/mnt/c/Windows/system32$ sudo ls                                                                 
sudo: /usr/bin/sudo must be owned by uid 0 and have the setuid bit set 

毫无疑问,上传输出现了一个难题,我无法通过su命令输入root密码后获取root权限,并且sudo命令也失效了,所以导致不管怎么样都无法处理。我一度准备删库跑路。哈哈哈

解决办法如下:

powershell 复制代码
# 先关闭wsl
wsl --shutdown

# 查看自己的分发名
wsl --list

# 直接利用wsl命令以root权限进入该分发
wsl --distribution <DistributionName> --user root

# 修复sudo命令的权限: 首先,尝试恢复sudo命令的正确权限。在WSL中,您可以使用以下命令来修复sudo命令的权限问题:
pkexec chown root:root /usr/bin/sudo
pkexec chmod 4755 /usr/bin/sudo

# 重新安装sudo命令: 如果上述方法仍无法解决问题,您可能需要考虑重新安装sudo命令。您可以通过以下步骤尝试重新安装它:
pkexec apt-get remove --purge sudo
pkexec apt-get install sudo

# 最后尝试sudo -i进入root
sudo -i

#中间还可以使用sudo命令重新设置root密码

注意:到此时使用su进入输入密码后仍然进不去root中

2. 第一次在wsl上安装Ubuntu之后下载ssh

powershell 复制代码
#1. 确保安装了OpenSSH服务器。您可以使用以下命令安装它:
sudo apt update
sudo apt install openssh-server

#2. 一旦安装完成,SSH服务应该已经自动启动。您可以使用以下命令检查SSH服务的运行状态:
sudo systemctl status ssh

#3. 如果服务未在运行,请使用以下命令启动它:
sudo systemctl start ssh

#4. 确保防火墙允许SSH流量。如果您正在使用ufw防火墙,可以运行以下命令允许SSH流量:
sudo ufw allow ssh

#5. 使用以下命令检查系统的IP地址
ip a

原本应该是一切正常的,但是真正连接的时候连接设置那里所有的数据全部输入后,依旧让输入密码,此时及时输入的是自己设置的密码仍然报错,认证失败!,原因如下:

下载后的ssh需要开启使用密码认证以及允许root登录

shell 复制代码
4、启动sshd服务
systemctl start sshd
(使用apt purge openssh-server 可以完全卸载)

5、修改允许root远程登陆
vi /etc/ssh/sshd_config 修改配置文件允许root远程登陆
PermitRootlogin yes

安装vim vi工具不好用

shell 复制代码
apt -y install vim

vim /etc/ssh/sshd_config


相关推荐
@小博的博客3 小时前
【Linux探索学习】第二篇Linux的基本指令(2)——开启Linux学习第二篇
linux·运维·学习
openHiTLS密码开源社区5 小时前
【密码学实战】openHiTLS passwd命令行:专业密码哈希生成工具
linux·密码学·哈希算法·ldap·密码策略·随机盐值
WTCLLB5 小时前
netgear r6220 路由器,刷openwrt后,系统备份还原
linux·网络·智能路由器·openwrt
迎風吹頭髮6 小时前
UNIX下C语言编程与实践38-UNIX 信号操作:signal 函数与信号捕获函数的编写
linux·c语言·unix
做运维的阿瑞6 小时前
Linux系统性能监控与故障定位实战:CPU/内存/I/O/网络
linux·运维·网络
驱动探索者7 小时前
车库到双子星:惠普的百年科技传奇
linux
啊?啊?9 小时前
1 玩转Linux命令行:基础文件操作实战教程
linux·服务器·基础指令
Code Warrior9 小时前
【Linux】线程概念与控制(2)
linux
Java 码农9 小时前
CentOS 7 上安装 PostgreSQL
linux·postgresql·centos
筑梦之路9 小时前
CentOS 7 升级perl版本到5.40.3 —— 筑梦之路
linux·运维·centos