[已解决] sudo不提示输入密码直接失败是什么情况
Tofloor
poster avatar
ghostry
deepin
2020-12-09 03:19
Author

靠重装系统解决了,

重装的时候发现,用户名要求3字符以上,而我之前用的是2字符,怀疑是因为这个,新版本增加了字符数限制导致问题.

deepin管的有点宽了,本地用户还管几个字符.

-----------------------



如图,直接提示失败,然后失败三次.


开始我以为是回车键粘连了,但是 打开文档编辑器测试了下,没有奇怪的按键粘连问题.

Reply Favorite View the author
All Replies
Ziggy
deepin
2020-12-09 03:38
#1

这边没有复现

Reply View the author
忘记、过去
deepin
2020-12-09 05:11
#2
echo "your password" | sudo -S xxxxxxx

这样子试试看?

Reply View the author
deepinuser17
deepin
2020-12-09 07:41
#3

有两种可能:


1. 该用户没有sudo权限. 以该用户运行命令"id"查看. 如果有sudo权限, 结果会出现sudo. 例如:

$ id
uid=1001(user1) gid=1001(user1) groups=1001(user1),7(lp),27(sudo),100(users),109(netdev),117(lpadmin),120(scanner),123(sambashare)


2. 是否sudo是快捷组合?

运行命令alias查看


如果需要添加sudo权限, 可以创建一个文件/etc/sudoers.d/<用户名>:

<用户名> ALL=(ALL)   ALL


然后运行:

sudo chmod 0440 /etc/sudoers.d/<用户名>



Reply View the author
ghostry
deepin
2020-12-09 19:52
#4
忘记、过去
echo "your password" | sudo -S xxxxxxx

这样子试试看?

这个方法不行.

Reply View the author
ghostry
deepin
2020-12-09 19:54
#5
deepinuser17

有两种可能:


1. 该用户没有sudo权限. 以该用户运行命令"id"查看. 如果有sudo权限, 结果会出现sudo. 例如:

$ id
uid=1001(user1) gid=1001(user1) groups=1001(user1),7(lp),27(sudo),100(users),109(netdev),117(lpadmin),120(scanner),123(sambashare)


2. 是否sudo是快捷组合?

运行命令alias查看


如果需要添加sudo权限, 可以创建一个文件/etc/sudoers.d/<用户名>:

<用户名> ALL=(ALL)   ALL


然后运行:

sudo chmod 0440 /etc/sudoers.d/<用户名>



id是 1000,有sudo组


文件没权限看,不过应该不是因为没权限,


之前这个用户是正常sudo的, 上次更新了之后,出现的这种情况.


估计哪里损坏了.


实在不行只有重装了.

Reply View the author
deepinuser17
deepin
2020-12-10 06:57
#6

有没有设超级用户root的口令? 如果有, 可以查看日志, /var/log/auth.log, /var/log/syslog, /var/log/messages.


另外查看命令/usr/bin/sudo的权限:

$ ls -lh /usr/bin/sudo
-rwsr-xr-x 1 root root 154K Aug 28 01:53 /usr/bin/sudo


最后也可以试试重新安装sudo.

# su -c "apt remove sudo"
# su -c "apt install sudo"



Reply View the author
ghostry
deepin
2020-12-10 21:25
#7
deepinuser17

有没有设超级用户root的口令? 如果有, 可以查看日志, /var/log/auth.log, /var/log/syslog, /var/log/messages.


另外查看命令/usr/bin/sudo的权限:

$ ls -lh /usr/bin/sudo
-rwsr-xr-x 1 root root 154K Aug 28 01:53 /usr/bin/sudo


最后也可以试试重新安装sudo.

# su -c "apt remove sudo"
# su -c "apt install sudo"



没有,我记得有单用户模式,但是在grub里找了找没找到.


然后我启动到livecd,像用chroot重装下sudo,也没成功.可能方法不对.

Reply View the author
deepinuser17
deepin
2020-12-11 09:34
#8

用livecd启动以后, 运行:


chroot /mnt/sysimage /bin/bash
source /etc/profile
passwd


设root用户的口令.  重启以后, 可以用"su -"转换到root用户.

Reply View the author
ghostry
deepin
2020-12-11 19:23
#9
deepinuser17

用livecd启动以后, 运行:


chroot /mnt/sysimage /bin/bash
source /etc/profile
passwd


设root用户的口令.  重启以后, 可以用"su -"转换到root用户.

这样不行, 使用su会提示没有权限.


已经决定重装了.

Reply View the author
mrainer
deepin
2021-08-20 01:44
#10
deepinuser17

有没有设超级用户root的口令? 如果有, 可以查看日志, /var/log/auth.log, /var/log/syslog, /var/log/messages.


另外查看命令/usr/bin/sudo的权限:

$ ls -lh /usr/bin/sudo
-rwsr-xr-x 1 root root 154K Aug 28 01:53 /usr/bin/sudo


最后也可以试试重新安装sudo.

# su -c "apt remove sudo"
# su -c "apt install sudo"



十分感谢,遇到了同样的问题,在查看了/var/log/auth.log 后,发现是/etc/pam.d/sudo 下指定的配置文件名字不对,系统里的为common-auth ,而我的配置为system-auth,导致无法打开指定配置文件,修改指定的配置文件名为系统自带的后解决了。

Reply View the author