前言:
要在Linux中运行管理任务,必须要具有root(也称为超级用户)访问权限。在大多数Linux发行版中,拥有一个单独的root账户是很常见的,但是Ubuntu默认禁用root账户。这可以防止用户出错,并防止系统受到入侵者的攻击。要运行需要root访问权限的命令,使用sudo。
一.切换成root用户
ubuntu怎么切换到root用户,我们都知道使用su root命令,去切换到root权限,此时会提示输入密码,可是怎么也输不对,提示“Authentication failure”,
此时有两种情况一个是真的是密码错了,另一种就是刚安装好的Linux系统,没有给root设置密码。
- 按ctrl+alt+T打开终端窗口。输入命令:su root,回车提示输入密码,怎么输入都不对
- 给root用户设置密码:
命令:sudo passwd root
输入密码,并确认密码。
- 重新输入命令:su root
然后输入密码:
发现可以切换到root权限了。
- 使用su xyx命令,切换到普通用户。
二.如何设置Ubuntu为默认root登录
方法一:
- 按ctrl+alt+T打开终端窗口。由于Ubuntu默认锁定root账户,所以不能像在其他Linux发行版中那样使用su成为root账户。而是在命令前面加上sudo。
- 在命令前输入sudo。“Sudo”表示“代替用户做”。当你将sudo添加到命令的开头时,这条命令将在root权限下运行。
例如:sudo /etc/init.d/networking stop停止网络服务,sudo adduser向系统添加新用户。这两个任务都需要root访问权限。
在sudo运行这条命令前,会提示你输入密码。Linux会将你的密码保存15分钟,这样就不用一直输入密码了。
- 在运行命令打开使用“图形用户界面(GUI)”的程序之前,输入gksudo。出于安全考虑,Ubuntu不推荐使用“sudo”打开使用GUI的程序。而是在启动程序的命令前面输入gksudo。
例如:输入gksudo gedit /etc/fstab来打开GEdit中的“fstab”文件,GEdit是一个带有GUI的编辑程序。
如果你使用的是KDE Window Manager,用kdesudo,不要用gksudo。
- 模拟root环境。如果你是一个高级用户,需要访问实际的root shell(一种接口)来运行特定的脚本,使用sudo –i模拟root shell。这个命令将为你提供带有root环境变量的超级用户访问权限。
输入命令sudo passwd root。将会为root创建密码,本质上是“启用”这个账户。密码别忘了。
输入sudo -i。出现提示时输入root密码。
提示符将从$变为#,表示你具有root访问权限。
- 让其他用户拥有sudo权限。如果你正在为目前没有root权限的用户创建账户,则需要将他们的用户名添加到sudo组。为此,输入usermod -aG sudo username(但要用正确的用户名替换“username”)。
方法二:
- 按ctrl+alt+T打开终端窗口
- 在终端窗口输入命令,查看Ubuntu系统文件的权限
ll /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
如果显示为-rw-r--r,表示文件只有只读权限
- 输入下面命令,修改配置文件权限为所有权限(增删改查)
chmod 770 /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
- 在终端窗口输入以下命令,用于修改Ubuntu系统配置文件
vim /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
- 在打开的编辑框输入i进入编辑模式,将以下命令复制到终端保存(按esc退出编辑模式,再按shit+:输入wq保存并退出)
[Seat:*] autologin-guest=false autologin-user=root autologin-user-timeout=0
- 然后修改/root/.profile,注释掉mesg n || true,并且新添加一行:tty -s && mesg n
vi /root/.prpfile
在打开的编辑框输入i进入编辑模式,将以下命令复制到终端保存(按esc退出编辑模式,再按shit+:输入wq保存并退出)
#~/.profile:executed by Bourne-compatible login shells. if[ "$BASH" ]; then if[-f ~/.bashrc]; then . ~/.bashrc fi fi #mesg n || true 原来的 tty -s && mesg n || true #修改为
重启即可看到效果
三.给当前用户添加root权限
- ls -ld /etc/sudoers* 查看当前文件权限
- su root 切换root权限
- chmod 770 /etc/sudoers[一般情况下 /etc/sudoers 的文件权限是 440,即只读权限,需要修改为可写]
- vi /etc//sudoers
若提示无vi命令,则需要执行以下命令安装(联网)vim包
sudo apt install vim 使用这个命令是下载gcc的命令----这个命令系统会自动去匹配与系统最适应的vim版本 - 打开文件后输入i进入编辑模式,文件内容如下:
# Please consider adding local content in /etc/sudoers.d/ instead of # directly modifying this file. # # See the man page for details on how to write a sudoers file. # Defaults env_reset Defaults mail_badpass Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin" # Host alias specification # User alias specification # Cmnd alias specification # User privilege specification root ALL=(ALL:ALL) ALL username ALL=(ALL:ALL) ALL #username表示你需要设置root权限的用户名 # Members of the admin group may gain root privileges %admin ALL=(ALL) ALL # Allow members of group sudo to execute any command %sudo ALL=(ALL:ALL) ALL # See sudoers(5) for more information on "#include" directives: #includedir /etc/sudoers.d
- 在root ALL=(ALL:ALL) ALL底下加入自己的用户名
- 按esc退出编辑模式,再按shit+:输入wq保存并退出
- chmod 440 /etc/sudoers 文件改回只读
注:本篇为博主阅读多篇文章多次尝试后总结,若转载,请标明来处,尊重劳动成果
原文地址:https://www.cnblogs.com/wuhanjackh/p/12167172.html