Linux su、su - 、sudo的区别及sudo配置

本文详细介绍了Linux系统中su、su - 和sudo的区别。su命令用于切换用户,不带参数时默认转为root,但不初始化环境;su - 则会重新加载目标用户的环境配置。sudo则允许指定用户以管理员权限执行特定命令,无需输入root密码。文章还涵盖了sudo的配置,包括如何编辑和修改sudoers文件以授权用户,以及如何配置sudo日志。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、su、su - 、sudo的区别

(1)su username
    切换用户,如果不指定切换用户,则默认切换root用户,切换后不会初始化目标用户配置文件,即不会改变原用户的工作目录和用户的环境

[tomcat@localhost opt] $ su tengine
Passwd:
[tengine@localhost opt] $

(2)su - username
    切换用户,如果不指定切换用户,则默认切换root用户,切换后会重新初始化目标用户配置文件,即会同时变更工作目录,以及HOME,SHELL,USER,LOGNAME。此外,也会变更PATH变量,改变了用户的环境

[tomcat@localhost opt] $ su - tengine
Passwd:
Last login: Mon May 24 11:34:18 CST 2021 on pts/0
[tengine@localhost ~] $

(3)sudo
    通过sudo可以授权给哪个用户可以以管理员的身份能够执行什么样的管理命令,并且不用知道root的密码(sudo时使用的是当前用户的密码,也可以设置成免密)

#sudo su -
#相当于使用root超级用户重新登录一次shell,只不过密码是使用的当前用户的密码。而且重要是,该命令会 重新加载/etc/profile文件以及/etc/bashrc文件等系统配置文件,并且还会重新加载root用户的$SHELL环境变量所对应的配置文件 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值