linux su sudo命令详解

#su [OPTION] USERNAME 切换用户

[OPTION]

- 变更当前的工作环境PWD

空 默认切换为root用户

默认情况下使用su只是将PAHT和用户切换为USERNAME的,并不变更PWD。使用-则和用USERNAME登陆在实质上是一样的。

#sudo [OPTION] COMMAND

某用户在不切换用户的情况下以另一个用户的权限通过某个主机执行某个命令。

[OPTION]

-l 列出当前用户可以使用的所有sudo类命令。

-k 清除认证,下次使用需输入密码。默认第一次输入密码后,5分钟之内不再提示输入密码。

/etc/sudoers

sudo的配置文件,权限为440。

除去额外配置条目,每一行定义个sudo条目,结构如下:

WHO WHICHHOST=[FLAG:](RUNAS) COMMAND

别名:

类似于组,别名只能使用大写字母。先定义后使用。

使用!表示取反。

1.用户别名 User_Alias

User_Alias NAME=USERNAME|%GROUP|OTHERUSERLIST

USERNAME 当前系统上的用户。

%GROUP 用户组,用%引导。

OTHERUSERLSIT 其他的别名列表。

2.主机别名 Host_Alias

Host_Alias HOST=HOST|IPADD|IP/NETMASK|+GROUP|OTHERHOSTLIST

HOST 主机名

IPADD IP地址

IP/NETMASK IP地址/子网掩码

+GROUP 主机组,用+引导。

OTHERHOSTLIST 其他的别名列表

3.以哪个用户运行 Runas_Alias

Runas_Alias RUNAS=USERNAME|#UID|%GROUP|+NETGROUP|OHTERRUNASLIST

USERNAME 用户名

#UID UID,用#引导。

%GROUP 组名,用%引导。

OTHERRUNASLIST 其他的别名列表

4.命令 Cmnd_Alias

Cmnd_Alias CMND=COMMAND|COMMDIR|OTHERCMNDLIST

COMMAND 命令,使用绝对路径。

COMMDIR 目录,包含此目录内的所有命令

OTHERCMNDLIST 其他的别名列表

FLAG(标签):

NOPASSWD 用户无需输入密码

PASSWD 需要密码

相关的操作日志可以在/var/log/secure中查看。此日志文件的权限为600,只允许root查看。

例如:

1.hadoop用户使用root执行useradd

#vimsudo

hadoop ALL=(root) /usr/sbin/useradd,/usr/sbin/usermod

hadoop$ sudo /usr/sbin/useradd tom

[sudo] passowrd for hadoop:

hadoop$

2.清除hadoop用户的认证,并在配置文件中变更为useradd不需要密码,usermod需要密码。

#sudo -k

#vimsudo

hadoop ALL=NOPASSWD:(root) /usr/sbin/useradd,PASSWD: /usr/sbin/usermod

3.创建别名组,并禁止修改root密码:

#visudo

User_Alias USERADMIN=hadoop,%hadoop,%useradmin

Cmnd_Alias USERADMINCMD=/usr/sbin/useradd,/usr/sbin/usermod,/usr/sbin/userdel,/usr/bin/passwd[A-Za-z]*,!/usr/bin/passwd root

这里的[A-Za-z]*类似于文件名通配,不是正则表达式。

USERADMIN ALL=NOPASSWD:USERADMINCMD

#visudo [OPTION] 编辑sudo配置文件的专用命令,可以检查配置文件错误。

[OPTION]

-f FILE 指定其他的sudoers文件

#man sudoers 查看有关/etc/sudoers的具体定义内容。

时间: 2024-08-05 15:24:55

linux su sudo命令详解的相关文章

(转)Linux下PS命令详解

(转)Linux下PS命令详解 整理自:http://blog.chinaunix.net/space.php?uid=20564848&do=blog&id=74654 要对系统中进程进行监测控制,查看状态,内存,CPU的使用情况,使用命令:/bin/ps (1) ps :是显示瞬间进程的状态,并不动态连续: (2) top:如果想对进程运行时间监控,应该用 top 命令: (3) kill 用于杀死进程或者给进程发送信号: (4) 查看文章最后的man手册,可以查看ps的每项输出的含义

Linux下chkconfig命令详解

Linux下chkconfig命令详解 chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. 使用语法:chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset] chkconfig在没有参数运行时,显示用法.如果加上服务名,那么就检查这个服务是否在当前运行级启动.如果是,返

转载的 Linux下chkconfig命令详解

Linux下chkconfig命令详解 chkconfig命令主要用来更新(启动或停止)和查询系统服务的运行级信息.谨记chkconfig不是立即自动禁止或激活一个服务,它只是简单的改变了符号连接. 使用语法: chkconfig [--add][--del][--list][系统服务] 或 chkconfig [--level <等级代号>][系统服务][on/off/reset] chkconfig 在没有参数运行时,显示用法.如果加上服务名,那么就检查这个服务是否在当前运行级启动.如果是

linux系统find命令详解

find命令 –用途:用于查找文件或目录 –格式:find  [查找范围]  [查找条件] 常用查找条件 –-name:按文件名称查找 –-size:按文件大小查找 –-user:按文件属主查找 –-type:按文件类型查找 –-print:以\n为换行符打印出文件(路径) 高级查找条件 –-perm:按权限查找 –-ctime(-cmin):按文件创建时间(天为单位)查找 –-atime(-amin):按访问时间查找 –-mtime(-mmin):修改时间查找 –-newer:查找比指定文件更

linux下scp命令详解

scp是 secure copy的缩写, scp是linux系统下基于ssh登陆进行安全的远程文件拷贝命令.linux的scp命令可以在linux服务器之间复制文件和目录. scp命令的用处: scp在网络上不同的主机之间复制文件,它使用ssh安全协议传输数据,具有和ssh一样的验证机制,从而安全的远程拷贝文件. scp命令基本格式: scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l limit] [-o s

linux中ls命令详解

s 命令可以说是linux下最常用的命令之一. -a 列出目录下的所有文件,包括以 . 开头的隐含文件.-b 把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出.-c 输出文件的 i 节点的修改时间,并以此排序.-d 将目录象文件一样显示,而不是显示其下的文件.-e 输出时间的全部信息,而不是输出简略信息.-f -U 对输出的文件不排序.-g 无用.-i 输出文件的 i 节点的索引信息.-k 以 k 字节的形式表示文件的大小.-l 列出文件的详细信息.-m 横向输出文件名

Linux下ps命令详解 Linux下ps命令的详细使用方法

Linux下ps命令详解 1. 运行(正在运行或在运行队列中等待) 2. 中断(休眠中, 受阻, 在等待某个条件的形成或接受到信号) 3. 不可中断(收到信号不唤醒和不可运行, 进程必须等待直到有中断发生)4. 僵死(进程已终止, 但进程描述符存在, 直到父进程调用wait4()系统调用后释放)5. 停止(进程收到SIGSTOP, SIGSTP, SIGTIN, SIGTOU信号后停止运行运行)ps工具标识进程的5种状态码:D 不可中断 uninterruptible sleep (usuall

linux下alias命令详解

linux下alias命令详解 用途说明 设置命令的别名.在linux系统中如果命令太长又不符合用户的习惯,那么我们可以为它指定一个别名.虽然可以为命令建立"链接" 解决长文件名的问题,但对于带命令行参数的命令,链接就无能为力了.而指定别名则可以解决此类所有问题[1].常用别名来简化 ssh登录[见示例三],使长命令变短,使常用的长命令行变短,强制执行命令时询问等. 功能说明 :设置指令的别名. 语 法:alias[别名]=[指令名称] 参 数 : 若不加任何参数,则列出目前所有的别名

linux 的vim命令详解

高级一些的编辑器,都会包含宏功能,vim当然不能缺少了,在vim中使用宏是非常方便的: :qx     开始记录宏,并将结果存入寄存器x q     退出记录模式 @x     播放记录在x寄存器中的宏命令 稍微解释一下,当在normal模式下输入:qx后,你对文本的所有编辑动作将会被记录下来,再次输入q即退出了记录模 式,然后输入@x对刚才记录下来的命令进行重复,此命令后可跟数字,表示要重复多少次,比如@x20,可以重复20次.这个在文本的批处理中是非常有用的. 同时编辑多个文件 在vim众多