• sudo


    sudo : 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码。不过有时间限制,Ubuntu默认为一次时长15分钟

    su : 切换到某某用户模式,提示输入密码时该密码为切换后账户的密码,用法为“su 账户名称”。如果后面不加账户时系统默认为root账户,密码也为超级账户的密码。没有时间限制

    sudo -i: 为了频繁的执行某些只有管理员才能执行的权限,而不用每次输入密码,可以使用该命令。提示输入密码时该密码为当前账户的密码。没有时间限制。执行该命令后提示符变为“#”而不是“$”。想退回普通账户时可以执行“exit”或“logout” 。

    sudo -s 执行环境变数中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell(即默认shell),sudo  -s  只是从结果看 切换到了root ,但是sudo -s 是否等于sudo su -  其实执行的动作是不一样的。

    做个试验来验证,我修改了我普通用户的$SHELL(改成bash,而root的还是默认的csh)

    [pb@localhost ~]$ id
    uid=500(pb) gid=500(pb) groups=500(pb) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

    [pb@localhost ~]$ echo $SHELL

    /bin/bash
    [pb@localhost ~]$

    补充 : 另外需要给pb用户添加sudo权限

    在root用户权限下添加sudo文件的写权限,命令是:chmod u+w /etc/sudoers

    编辑sudoers文件 : vi /etc/sudoers

    找到这行 root ALL=(ALL) ALL,在他下面添加xxx ALL=(ALL) ALL (这里的xxx是你的用户名)

    ps:这里说下你可以sudoers添加下面四行中任意一条
    youuser            ALL=(ALL)                ALL
    %youuser           ALL=(ALL)                ALL
    youuser            ALL=(ALL)                NOPASSWD: ALL
    %youuser           ALL=(ALL)                NOPASSWD: ALL

    第一行:允许用户youuser执行sudo命令(需要输入密码).
    第二行:允许用户组youuser里面的用户执行sudo命令(需要输入密码).
    第三行:允许用户youuser执行sudo命令,并且在执行的时候不输入密码.
    第四行:允许用户组youuser里面的用户执行sudo命令,并且在执行的时候不输入密码.

     

    撤销sudoers文件写权限,命令 : chmod u-w /etc/sudoers

     pb用户就可以使用sudo了

  • 相关阅读:
    UITabbarItem只显示图标
    [转]translatesAutoresizingMaskIntoConstraints详解
    [转载]podfile语法
    获取数组NSArray元素的className
    HTTP的FormData和Payload的传输格式
    WCDB错误"No matching constructor for initialization of 'WCTColumnBinding'"
    UIStakView的添加与移除
    为什么说Python采用的是基于值的内存管理模式?
    PostgreSQL数据库
    标准库 time
  • 原文地址:https://www.cnblogs.com/pengmengnan/p/8118697.html
Copyright © 2020-2023  润新知