Linux 中的 su 和 sudo 命令这两个有什么不一样

张开发
2026/4/4 7:21:19 15 分钟阅读
Linux 中的 su 和 sudo 命令这两个有什么不一样
Linux是一个多用户的操作系统。在Linux中理论上来说我们可以创建无数个用户但是这些用户是被划分到不同的群组里面的有一个用户名叫root是一个很特殊的用户它是超级用户拥有最高权限。但是在大多数版本的 Unix/Linux 中都不推荐直接使用 root 账号登录系统。自己创建的用户是有限权限的用户这样大大提高了Linux系统的安全性有效防止误操作或是病毒攻击但是我们执行的某些命令需要更高权限时可以使用sudo命令。1、切换用户命令【su】su 命令全称为“swith user”用于切换当前用户身份到指定用户或者以指定用户的身份执行命令或程序。普通用户切换到 root 用户可以使用 su – 或su root但是必须输入 root 密码才能完成切换。root 用户切换到普通用户可以使用 su username不需要输入任何密码即可完成切换。并且切换用户需要 root 用户权限。语法格式:1su[选项] [用户名]常用参数-c 或 --command执行完指定的指令后即恢复原来的身份-f 或 --fast适用于 csh 与 tsch使 shell 不用去读取启动文件-l 或 --login改变身份时也同时变更工作目录以及 HOME,SHELL,USER,logname。此外也会变更PATH变量-m, -p 或 --preserve-environment变更身份时不要变更环境变量等等详情请参见https://www.linuxcool.com/su使用举例su 命令后面可以加“-”会将当前的工作目录自动转换到切换后的用户主目录。命令含义su切换到 root 用户su root切换到 root 用户su -切换到 root 用户同时切换目录到 /rootsu - root切换到 root 用户同时切换目录到 /rootsu 普通用户切换到普通用户su - 普通用户切换到普通用户同时切换普通用户所在的目录举例说明123sudosu-- 切换为root用户exit命令或 CTRL D 快捷键都可以使普通用户切换为 root 用户supeng -- 切换为普通用户su- -- 切换为root用户切换到管理员 root123su或者sudosu切换用户1su用户名注意对于 ubuntu 平台只能通过 su 或者 sudo su 进入 root 账号。2、以 root 身份执行命令【sudo】sudo 命令可以临时获取 root 权限系统管理员允许普通用户执行 root 命令才能执行的操作。扩展命令sudo -l 显示出自己执行 sudo 的使用者的权限sudo !! 以 root 权限执行上一条的命令注意sudo 和 su 命令输入回车完之后还需要输入用户密码的如果你输入过一次他将会有几分钟的记忆。3、总结有很多命令需要管理员权限才能使用可以输入命令前加sudo也可以直接切换到管理员账号su再执行。

更多文章