linux su-sudo 命令详解实践

本文详细介绍了Linux中su和sudo命令的使用。su命令用于切换用户角色,加'-'参数可携带所有环境变量,而sudo则允许以非root用户身份执行具有root权限的特定命令,提供更安全的管理方式。sudo配置文件/etc/sudoers限制了权限,并通过visudo进行编辑。sudo的优点在于它避免了频繁使用root密码,仅在执行特定命令时赋予临时权限。
摘要由CSDN通过智能技术生成

linux su-sudo 命令详解实践

su 切换用户角色

  1. 从A用户切换到B

su - da #为什么加-? 加-代表携带所有环境变量,不加可能只携带部分环境变量
查看用户环境变量 env|grep root

[root@l /]# env|grep root
PYENV_ROOT=/root/.pyenv
OLDPWD=/root
USER=root
MAIL=/var/spool/mail/root
PATH=/root/.pyenv/shims:/root/.pyenv/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
HOME=/root
LOGNAME=root
  1. -c 以da用户身份执行命令,在返回当下用户
    [root@l /]# su -da -c pwd
    -c 使用root执行,普通用户必须知道root密码,不好管理有风险(更规范的方法使用sudo)

  2. su 弊端

切换到root用户
拥有所有权限

sudo

  1. 作用:不切换到root,在操作命令同时,拥有root权限,一旦操作完成,权限就消失,而且不需要root密码
    ll /etc/sudoers
    -r–r----- 1 root root 4328 Sep 30 2020 /etc/sudoers #文件权限很小,root也无法修改
  2. 执行visudo 在100行是sudo配置
rootALL=(ALL)ALL
用户主机可以切换所有角色执行所有命令

da All =(ALL) /usr/sbin/useradd,/usr/sbin/userdel #执行命令,越小越具体越好,允许执行这个命令拥有root权限

  1. sudo优点

不是root用户,还是自己
指定命令拥有root权限
不需要root 密码

  1. -l 查看sudo权限
  2. visudo 配置sudo 工具 -c 检测语法配置
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值