linux su密码是什么意思

发布时间 - 2023-03-20 00:00:00    点击率:
su的密码就是root根用户的密码;安装Linux或者Unix操作系统的时候,会有提示让用户输入root的密码,这也是执行“sudo su”命令以后出现让用户输入的密码。su全称“switch user”,可让用户暂时变更登入的身份,除root外变更时须输入所要变更的用户帐号与密码。

本教程操作环境:linux7.3系统、Dell G3电脑。

su密码是什么意思

su的密码就是root根用户的密码呢,安装Linux或者Unix操作系统的时候,会有提示让您输入root的密码的,这就是执行sudo su命令以后出现让您输入密码的密码,注意这个密码是不会显示星号或者其他符号的,一直是空白的,输入完成以后直接回车就好。

su命令介绍

su(英文全拼:switch user)。在Linux中 su 命令可让用户暂时变更登入的身份,除 root 外变更时须输入所要变更的用户帐号与密码。

使用权限:所有使用者。

功能:变更用户身份,若不指定用户帐号,则预设变更为root。

语法

su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]

参数说明:

  • -f 或 --fast 不必读启动档(如 csh.cshrc 等),仅用于 csh 或 tcsh

  • -m -p 或 --preserve-environment 执行 su 时不改变环境变数

  • -c command 或 --command=command 变更为帐号为 USER 的使用者并执行指令(command)后再变回原来使用者

  • -s shell 或 --shell=shell 指定要执行的 shell (bash csh tcsh 等),预设值为 /etc/passwd 内的该使用者(USER) shell

  • --help 显示说明文件

  • --version 显示版本资讯

  • - -l 或 --login 这个参数加了之后,就好像是重新 login 为该使用者一样,大部份环境变数(HOME SHELL USER等等)都是以该使用者(USER)为主,并且工作目录也会改变,如果没有指定 USER ,内定是 root

  • USER 欲变更的使用者帐号

  • ARG 传入新的 shell 参数

常用范例:

例一:变更帐号为 root 并在执行 ls 指令后退出变回原使用者

命令:su -c ls root

  变更帐号为 root 并在执行 ls 指令后退出变回原使用者。

[root@localhost ~]# su -c ls root
公共  视频  文档  音乐	anaconda-ks.cfg
模板  图片  下载  桌面	initial-setup-ks.cfg

例二:切换用户

命令: su root

  testuser切换成root,相当于用户改成root但是操作的是testuser环境
  小权限切换大权限要求输入密码;大权限切换小权限不需要输入密码。
  切换用户,只能获得用户的执行权限,不能获得环境变量。

[testuser@localhost ~]$ whoami //显示当前用户
testuser
[testuser@localhost ~]$ pwd //显示当前目录
/home/testuser
[testuser@localhost ~]$ su root //切换到root用户
密码:
[root@localhost testuser]# whoami
root
[root@localhost testuser]# pwd
/home/testuser

例三:切换用户,改变环境变量

命令:su - root

  testuser切换成root,相当于用户改成root,操作的是root环境。即变更帐号为 root 并改变工作目录至 root 的家目录。
  切换到用户并获得该用户的环境变量及执行权限。

[testuser@localhost ~]$ whoami
testuser
[testuser@localhost ~]$ pwd
/home/testuser
[testuser@localhost ~]$ su - root
密码:
[root@localhost ~]# whoami
root
[root@localhost ~]# pwd
/root

su 和 su - 的区别

注意,使用 su 命令时,有 - 和没有 - 是完全不同的,- 选项表示在切换用户身份的同时,连当前使用的环境变量也切换成指定用户的。我们知道,环境变量是用来定义操作系统环境的,因此如果系统环境没有随用户身份切换,很多命令无法正确执行。

举个例子,普通用户 lamp 通过 su 命令切换成 root 用户,但没有使用 - 选项,这样情况下,虽然看似是 root 用户,但系统中的 $PATH 环境变量依然是 lamp 的(而不是 root 的),因此当前工作环境中,并不包含 /sbin、/usr/sbin等超级用户命令的保存路径,这就导致很多管理员命令根本无法使用。不仅如此,当 root 用户接受邮件时,会发现收到的是 lamp 用户的邮件,因为环境变量 $MAIL 也没有切换。

初学者可以这样理解它们之间的区别,即有 - 选项,切换用户身份更彻底;反之,只切换了一部分,这会导致某些命令运行出现问题或错误(例如无法使用 service 命令)。

通过下面这个例子,可直观的看到 su 和 su - 的区别:

[lamp@localhost ~]$ whoami
lamp
#查询用户身份,我是lamp
[lamp@localhost ~]$ su root
密码:
<-输入root密码
#切换到root,但是没有切换环境变量。注意:普通用户切换到root需要密码
[root@localhost ~]# env | grep lamp
#查看环境变量,提取包含lamp的行
USER=lamp
#用户名还是lamp,而不是root
PATH=/usr/lib/qt-3.3/bin:/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/lamp/bin
#命令査找的路径不包含超级用户路径
MAIL=/var/spool/mail/lamp
PWD=/home/lamp
LOGNAME=lamp
#邮箱、主目录、目前用户名还是lamp

可以看到,在不使用 su - 的情况下,虽然用户身份成功切换,但环境变量依旧用的是原用户的,切换并不完整。

相关推荐:《Linux视频教程》


# linux  # 帐号  # 的是  # 切换到  # 会有  # 输入密码  # 变回  # 就好  # 并在  # 让您  # 操作系统 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 企业网站制作这些问题要关注  佐糖AI抠图怎样调整抠图精度_佐糖AI精度调整与放大细化操作【攻略】  如何在HTML表单中获取用户输入并结合JavaScript动态控制复利计算循环  Laravel如何实现本地化和多语言支持?(i18n教程)  历史网站制作软件,华为如何找回被删除的网站?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  如何快速配置高效服务器建站软件?  如何在Windows环境下新建FTP站点并设置权限?  Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧  谷歌浏览器下载文件时中断怎么办 Google Chrome下载管理修复  Win11关机界面怎么改_Win11自定义关机画面设置【工具】  北京专业网站制作设计师招聘,北京白云观官方网站?  Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程  Python结构化数据采集_字段抽取解析【教程】  Laravel模型事件有哪些_Laravel Model Event生命周期详解  如何在局域网内绑定自建网站域名?  Laravel如何创建自定义中间件?(Middleware代码示例)  iOS UIView常见属性方法小结  Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门  详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  Laravel如何使用API Resources格式化JSON响应_Laravel数据资源封装与格式化输出  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  android nfc常用标签读取总结  Windows Hello人脸识别突然无法使用  轻松掌握MySQL函数中的last_insert_id()  如何在IIS中新建站点并配置端口与物理路径?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  独立制作一个网站多少钱,建立网站需要花多少钱?  Laravel怎么判断请求类型_Laravel Request isMethod用法  Win11怎么开启自动HDR画质_Windows11显示设置HDR选项  node.js报错:Cannot find module &#39;ejs&#39;的解决办法  Android中Textview和图片同行显示(文字超出用省略号,图片自动靠右边)  动图在线制作网站有哪些,滑动动图图集怎么做?  Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载  Laravel如何处理异常和错误?(Handler示例)  如何在万网自助建站平台快速创建网站?  如何快速打造个性化非模板自助建站?  如何批量查询域名的建站时间记录?  如何在新浪SAE免费搭建个人博客?  Laravel的Blade指令怎么自定义_创建你自己的Laravel Blade Directives  简历没回改:利用AI润色让你的文字更专业  Laravel任务队列怎么用_Laravel Queues异步处理任务提升应用性能  Laravel的契約(Contracts)是什么_深入理解Laravel Contracts与依赖倒置  中山网站制作网页,中山新生登记系统登记流程?  网站制作价目表怎么做,珍爱网婚介费用多少?  如何在景安云服务器上绑定域名并配置虚拟主机?  php485函数参数是什么意思_php485各参数详细说明【介绍】  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  Laravel怎么生成URL_Laravel路由命名与URL生成函数详解