0
点赞
收藏
分享

微信扫一扫

linux sudo -i解释

飞进科技 05-16 06:00 阅读 17


sudo -i命令在Linux中用于以交互式shell的方式切换到root用户,与sudo命令的其它用法相比,sudo -i会启动一个新的shell会话,并模拟root用户的环境。

作用:

sudo -i会打开一个新的shell会话,类似于用户直接以root用户身份登录系统。执行此命令后,系统会启动一个shell并以root用户的权限运行。

在新的shell会话中,$PATH和其他环境变量会被设置为root用户的值,因此执行的命令会使用root用户的环境。

示例:

命令:

sudo -i

执行该命令后,系统会要求你输入当前用户的密码,成功验证后,你会得到一个root权限的shell提示符,例如:

[patrol@patrolagent Patrol3]$ sudo -i
[sudo] password for patrol: 
[root@patrolagent ~]#

此时,你可以像在root用户下那样执行任何命令。

前提(需要在/etc/sudoers文件中配置patrol用户权限)

[root@patrolagent ~]# cat /etc/sudoers |grep -i patrol
patrol	ALL=(ALL)	ALL
[root@patrolagent ~]#

否则会报如下错误:

[patrol@patrolagent Patrol3]$ sudo -i
[sudo] password for patrol: 
patrol is not in the sudoers file.  This incident will be reported.
[patrol@patrolagent Patrol3]$

或者:

使用su - root切换至root环境。

sudo与su的区别:

1.sudo:通常用于执行单个命令。例如:sudo ls,这将以root权限执行ls命令。

2.sudo -i:启动一个新的shell会话,并模拟root用户的环境,适用于需要多次执行以root身份运行的命令。

3.su:切换到另一个用户(默认是root用户)并启动新的shell会话。su需要输入目标用户的密码,而sudo则至需要输入当前用户的密码。


举报

相关推荐

0 条评论