前言:

  要在Linux中运行管理任务,必须要具有root(也称为超级用户)访问权限。在大多数Linux发行版中,拥有一个单独的root账户是很常见的,但是Ubuntu默认禁用root账户。这可以防止用户出错,并防止系统受到入侵者的攻击。要运行需要root访问权限的命令,使用sudo。

一.切换成root用户

ubuntu怎么切换到root用户,我们都知道使用su root命令,去切换到root权限,此时会提示输入密码,可是怎么也输不对,提示“Authentication failure”,

此时有两种情况一个是真的是密码错了,另一种就是刚安装好的Linux系统,没有给root设置密码。

  1. 按ctrl+alt+T打开终端窗口。输入命令:su root,回车提示输入密码,怎么输入都不对
  2. 给root用户设置密码:

    命令:sudo passwd root

    输入密码,并确认密码。

  3. 重新输入命令:su root

    然后输入密码:

    发现可以切换到root权限了。

  4. 使用su xyx命令,切换到普通用户。

二.如何设置Ubuntu为默认root登录

方法一:

  1. 按ctrl+alt+T打开终端窗口。由于Ubuntu默认锁定root账户,所以不能像在其他Linux发行版中那样使用su成为root账户。而是在命令前面加上sudo。
  2. 在命令前输入sudo。“Sudo”表示“代替用户做”。当你将sudo添加到命令的开头时,这条命令将在root权限下运行。

    例如:sudo /etc/init.d/networking stop停止网络服务,sudo adduser向系统添加新用户。这两个任务都需要root访问权限。

    在sudo运行这条命令前,会提示你输入密码。Linux会将你的密码保存15分钟,这样就不用一直输入密码了。

  3. 在运行命令打开使用“图形用户界面(GUI)”的程序之前,输入gksudo。出于安全考虑,Ubuntu不推荐使用“sudo”打开使用GUI的程序。而是在启动程序的命令前面输入gksudo。

    例如:输入gksudo gedit /etc/fstab来打开GEdit中的“fstab”文件,GEdit是一个带有GUI的编辑程序。

    如果你使用的是KDE Window Manager,用kdesudo,不要用gksudo。

  4. 模拟root环境。如果你是一个高级用户,需要访问实际的root shell(一种接口)来运行特定的脚本,使用sudo –i模拟root shell。这个命令将为你提供带有root环境变量的超级用户访问权限。

    输入命令sudo passwd root。将会为root创建密码,本质上是“启用”这个账户。密码别忘了。

    输入sudo -i。出现提示时输入root密码。

    提示符将从$变为#,表示你具有root访问权限。

  5. 让其他用户拥有sudo权限。如果你正在为目前没有root权限的用户创建账户,则需要将他们的用户名添加到sudo组。为此,输入usermod -aG sudo username(但要用正确的用户名替换“username”)。

方法二:

  1. 按ctrl+alt+T打开终端窗口
  2. 在终端窗口输入命令,查看Ubuntu系统文件的权限
    ll /usr/share/lightdm/lightdm.conf.d/-ubuntu.conf

    如果显示为-rw-r--r,表示文件只有只读权限

  3. 输入下面命令,修改配置文件权限为所有权限(增删改查)
    chmod  /usr/share/lightdm/lightdm.conf.d/-ubuntu.conf
  4. 在终端窗口输入以下命令,用于修改Ubuntu系统配置文件
    vim /usr/share/lightdm/lightdm.conf.d/-ubuntu.conf
  5. 在打开的编辑框输入i进入编辑模式,将以下命令复制到终端保存(按esc退出编辑模式,再按shit+:输入wq保存并退出)
    [Seat:*]
    autologin-guest=false
    autologin-user=root
    autologin-user-timeout=
  6. 然后修改/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权限

  1. ls -ld /etc/sudoers* 查看当前文件权限
  2. su root 切换root权限
  3. chmod 770 /etc/sudoers[一般情况下 /etc/sudoers 的文件权限是 440,即只读权限,需要修改为可写]
  4. vi /etc//sudoers

    若提示无vi命令,则需要执行以下命令安装(联网)vim包
    sudo apt install vim 使用这个命令是下载gcc的命令----这个命令系统会自动去匹配与系统最适应的vim版本

  5. 打开文件后输入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() for more information on "#include" directives: #includedir /etc/sudoers.d
  6. 在root    ALL=(ALL:ALL) ALL底下加入自己的用户名
  7. 按esc退出编辑模式,再按shit+:输入wq保存并退出
  8. chmod 440 /etc/sudoers 文件改回只读

  注:本篇为博主阅读多篇文章多次尝试后总结,若转载,请标明来处,尊重劳动成果

最新文章

  1. 原创:CSS3技术-雪碧图自适应缩放与精灵动画方案
  2. HDU 1878 欧拉回路
  3. dump buffer cache
  4. java 集合(list、set、map)的特点
  5. hdu 2481 Toy
  6. ifstream中文路径问题分析
  7. POJ 1745 Divisibility (线性dp)
  8. RH253读书笔记(5)-Lab 5 Network File Sharing Services
  9. Objective-c 多线程操作 自定义NSOperation 模拟下载
  10. 简单的C语言编译器--概述
  11. hive记录-cdh配置hive和sentry
  12. css隐藏滚动条依旧可以滚动
  13. maven配置本地仓库通用
  14. php 文件远程下载
  15. bootstrap中的模态框(modal,弹出层)
  16. [python] 初学python,级联菜单输出
  17. 【BZOJ】2111: [ZJOI2010]Perm 排列计数 计数DP+排列组合+lucas
  18. spark1.4配置安装
  19. win 下 nginx 与 php的配置
  20. 【转】了解CNN

热门文章

  1. web安全中的session攻击
  2. 【面试篇】寒冬求职之你必须要懂的Web安全
  3. RabbitMQ:三、进阶
  4. Jenkins入门-环境搭建(1)-转
  5. Java BigDecimal和double BigDecimal类
  6. plsql截取字符串字段中的某个字符段
  7. Ubuntu apt update卡在Connecting to security.ubuntu.com解决方法
  8. python简易版微信或QQ轰炸
  9. python三大神器之fabric
  10. 使用TransferLearning实现环视图像的角点检测——yolo_v3_tiny