Linux系统中su和sudo命令的用法
这篇文章主要介绍“Linux系统中su和sudo命令的用法”,在日常操作中,相信很多人在Linux系统中su和sudo命令的用法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux系统中su和sudo命令的用法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
su
NAME(名称)
su - 运行替换用户和组标识的shell
SYNOPSIS(总览)
su [OPTION]... [-] [USER [ARG]...]
DESCRIPTION(描述)
修改有效用户标识和组标识为USER的.
-, -l, --login
使得shell为可登录的shell
-c, --commmand=COMMAND
传递单个COMMAND给-c的shell.
-f, --fast
传递-f给shell(针对csh或tcsh)
-m, --preserve-environment
不重置环境变量
-p 与-m同
-s, --shell=SHELL
如果/etc/shells允许,运行SHELL.
--help 显示帮助并退出
--version
输出版本信息并退出
单一的-意味着-l.如果没有给定USER,则假定为root.
例:
代码如下:
[root@Blackghost ~] su zhangying #切换用户,原用户环境变量
[root@Blackghost ~] su - zhangying #切换用户,新用户环境变量
[zhangying@Blackghost ~] su -c ls root #切换用户执行命令,执行后返回原用户
sudo
用户也可以通过su切换到root用户运行命令。然而与su的启动一个root shell允许用户运行之后的所有的命令不同,sudo可以针对单个命令授予临时权限。sudo仅在需要时授予用户权限,减少了用户因为错误执行命令损坏系统的可能性。sudo也可以用来以其他用户身份执行命令。此外,sudo可以记录用户执行的命令,以及失败的特权获取。
选项:
-a type 使用指定的 BSD 认证类型
-b 在后台运行命令
-C fd 关闭所有 >= fd 的文件描述符
-E 在执行命令时保留用户环境
-e 编辑文件而非执行命令
-g group 以指定的用户组执行命令
-H 将 HOME 变量设为目标用户的主目录。
-h 显示帮助消息并退出
-i [command] 以目标用户身份运行一个登录 shell
-K 完全移除时间戳文件
-k 无效的时间戳文件
-l[l] command 列出用户能执行的命令
-n 非交互模式,将不提示用户
-P 保留组向量,而非设置为目标的组向量
-p prompt 使用指定的密码提示
-S 从标准输入读取密码
-s [command] 以目标用户身份运行 shell
-U user 在列表时,列出指定用户的权限
-u user 以指定用户身份运行命令(或编辑文件)
-V 显示版本信息并退出
-v 更新用户的时间戳而不执行命令
-- 停止处理命令行参数
例:
代码如下:
[root@Blackghost ~] sudo -u tank ls #以tank用户,来执行ls命令
[zhangying@Blackghost ~] sudo touch test #以root账户来建一个文件test,为空默认是root用户
到此,关于“Linux系统中su和sudo命令的用法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341