登录普通用户失败,报错信息 :
wangzq@shhnewdev:~$ su renhc
密码:
su: 认证失败
解决办法 :
1、root用户登录失败解决办法
使用su命令登录到root用户时,老是报"su:认证失败"错误。报这个错误的原因是root用户默认是被锁定了的,只要使用passwd命令重新设置下root密码即可。问题如下:
me@ubuntu:~$ su
密码:<--- 输入安装时root用户的密码
su:认证失败
允许 su 到 root
非常简单,只需要重新设置下密码即可。下面是设置的方法
me@ubuntu:~$ sudo passwd
密码:<--- 输入安装时那个用户的密码
输入新的 UNIX 密码:<--- 新的Root用户密码
重新输入新的 UNIX 密码:<--- 重复新的Root用户密码
passwd:已成功更新密码
me@ubuntu:~$ su
密码:<--输入重置的新密码
root@ubuntu:/home/me# #已经进入root用户
允许root登录
如果要允许root登录(不推荐,注:这一步依赖上一步"允许su到root"),则这样操作:
1 me@ubuntu:~$ gksu /usr/sbin/gdmsetup
或者:
2 使用桌面菜单:系统>系统管理>登录窗口,点“安全”选项页,选择“允许本地管理员登录”。
不输入密码直接登录
在论坛上也看见有人抱怨,家中的Ubuntu不能像Window$那样──不用输入密码就能登录。其实同样能做到:
就在上一步的“安全”选项页中,勾选:“启用自动登录”,“用户”选择(如:“me”);
注意:公共用的计算机千万不能这么设置!
2、普通用户登录失败
原因: 自己创建新用户时没有设置密码,默认是没有密码的。在Linux中没有密码的用户是无法登录的,所以创建了用户以后如果需要用该用户登录,还需要在命令行用passwd命令给该用户设置密码以后才能登录。
解决办法:sudo passwd python1
扩展
Linux 系统中用户切换(su user与 su - user 的区别)
1、su命令
(su为switch user,即切换用户的简写)
格式:su -l USERNAME(-l为login,即登陆的简写,其中l可以省略)
如果不指定USERNAME(用户名),默认即为root,所以切换到root的身份的命令即为:su -root或是直接 su -
使用su切换用户时需知晓对应用户的登陆密码
2:su - 与su的区别
su - USERNAME切换用户后,同时切换到新用户的工作环境中
su USERNAME切换用户后,不改变原用户的工作目录,及其他环境变量目录
3,sudo命令
sudo是一种权限管理机制,依赖于/etc/sudoers,其定义了授权给哪个用户可以以管理员的身份能够执行什么样的管理命令;
格式:sudo -u USERNAME COMMAND
当普通用户通过sudo以root用户执行命令时,sudo后面的 -uUSERNAME可省略,即sudo COMMAND 即意为sudo以root用户执行
4,sudo与su的区别
使用su切换用户时需知晓对应用户的登陆密码,即若切换成root用户身份,需知道root用户的登陆密码。作为root用户管理员,如何授权其他普通用户,在不需要知晓root密码的情况下,执行root权限的命令操作?此时即可使用sudo。
5,sudoers文件
sudo的配置文件为:/etc/sudoers。
sudoers文件中允许指定用户在不需要知道root用户的登陆密码的情况下,可以以root用户身份运行各种命令。此文件必须使用visudo命令编辑配置。(visudo命令可以提供basic sanitychecks和check for parse errors,即提供快速的正确性有效性检查,以及语法检查功能)
查看sudores文件,其中有一行如下图,定义了允许root用户从任何主机登陆,使用sudo可以切换成任何用户的身份,执行所有命令。
查看sudoers文件,其中有两行如下图,定义了组可以使用sudo命令的配置。
参考链接 :
su认证失败 :https://blog.csdn.net/xiaoxiali/article/details/17096591