admin管理员组文章数量:1542785
几点说明
- 本文中的linxiaoqing只是一个普通用户的实例
- 博主使用的ubuntu是中文的,所以系统提示会显示中文而不是英文
1.$和#在linux系统终端(命令行)中通常代表的什么
#打头——root用户身份
$打头——普通用户身份,不是root用户身份例如下图绿色行:是普通用户linxiaoqing身份,底部白色那行就是root用户身份
2.如何使$变为#,即如何从普通用户linxiaoqing切换到root用户下
即如何从普通用户linxiaoqing切换到root用户下
- 键入su root(如上图首行),或者也可以直接输入su
- 然后按回车键
- 系统提示输入密码(如上图第二行)
- 输入root的密码【如果不成功,原因有两点如下】
- 输入密码后进入切换到root用户身份,$变为了#
3.切换失败原因一:可能你还没有为root设置密码
刚安装Ubuntu后,root用户默认是未激活的
此时不允许登录和使用su命令或者su root命令转到root用户
如果此时我们尝试使用su或者su root命令切换root权限
将会出现“认证失败”或者“Authentication failure”的提示(这两个提示只是中文或者英文的区别)
所以为了使用root用户身份,我们需要先激活root用户,也就是给root初始化一个密码步骤如下
步骤和示例图如下,按照步骤对照示例图跟好理解哦
- 图示第一行:在linxiaoqing用户身份下,输入sudo passwd root命令
- 提示:sudo passwd root这个命令的意思是为root用户设置密码
- 图示第二行:系统提示“输入新的UNIX密码”,此时输入你的密码并按回车确认
- 注意:你输入密码的时候显示屏上不会显示出来,只要你输入结束后,按回车键确认就行
- 图示第三行:系统提示“重新输入新的UNIX密码”,然后你就把刚才输入的密码在输入一次,然后按回车键
- 上一步操作的目的是:让你确定你第一次输入进去的密码确实是你想设置的那个密码
- 图示第四行:接下来系统提示“passwd:已成功更新密码”
- 现在我们已经成功激活root了
tips:
输入sudo passwd root这个命令后,可能会弹出一个提示:需要输入当前普通用户的密码
输入当前普通用户的密码后确认身份就可以修改root的密码了
4.切换失败的原因二:你忘记密码了
步骤和第三点一样
5.区分su 、su root 、su linxiaoqing、su -的区别
- pwd是查看当前所在目录路径
su - USERNAME:su就是switch user,即切换用户的简写
su - USERNAME的格式:su -l USERNAME(-l为login,即登陆的简写)其中的 -l 可以将 l 省略掉,所以此命令常写为su - USERNAME
如果不指定USERNAME(用户名),默认即为root
所以切换到root的身份的命令即为:su - root或是直接 su -
下图:要求普通用户lingxiaoqing在不注销登陆的情况下,使用root权限
使用root权限操作完之后,通过命令exit或logout,或者是快捷键ctrl+D即可返回原用户身份。
上图中我们发现提示语有绿色和白色的区别,自行感受什么叫做“不注销linxiaoqing”的情况下使用root
su和su - 的区别
su - USERNAME 切换用户,同时切换到新用户的工作环境中
su USERNAME 只是切换用户,不改变原用户的工作目录及其他环境变量目
下面用几个实验来验证
1.打开终端窗口,默认在普通用户身份下
然后输入pwd查看当前目录路径,显示为用户目录
2.在普通用户身份下,键入su和密码,更改为root身份
然后键入pwd查看当前目录路径,发现还是在用户目录
使用exit,作用是退出root身份回到普通用户身份
再次使用pwd查看当前目录,仍然在用户目录下
3.在普通用户身份下,键入su root和密码,更改为root身份
然后键入pwd查看当前目录路径,发现还是在用户目录
使用exit,作用是退出root身份回到普通用户身份
再次使用pwd查看当前目录,仍然在用户目录下
4.对比上面2和3点的实验,发现su和su root的作用都是把普通用户改为root用户,但是没有更改我们的当前工作目录
5.在普通用户身份下,键入su - 然后输入密码,切换到root
pwd查看目录,发现当前目录该变了,变成/root,说明su - 命令同时更改了用户身份和当前工作目录
键入su linxiaoqing,发现这个操作的结果是切换到linxiaoqing用户
键入pwd,发现当前工作目录还是/root,说明上一步su linxiaoqing 命令的操作只是更改用户,没有更改目录
键入exit,再键入pwd,查看发现还是root目录,说明这一步的exit只是退出了linxiaoqing这个用户身份,没有更改目录
再次键入exit,观察结果发现注销了root用户,回到普通用户身份,再用pwd查看目录,发现回到了普通用户的工作目录
6.su、su root、su lingxiaoqing、su -小结
1.从是够能够更改当前工作目录可以区分命令“su 用户名”和命令“su - ”,前者只更改用户名,后者两个都更改
2.“su 用户名”的命令中,用户名为空时默认用户名是root
7.sudo是什么
使用su切换用户时需知晓对应用户的登陆密码,即若切换成root用户身份,需知道root用户的登陆密码。
作为root用户管理员,如何授权其他普通用户,在不需要知晓root密码的情况下,执行root权限的命令操作?
此时即可使用sudo。
1.sudo表示 “superuser do”。
2.它允许已验证的用户以其他用户的身份来运行命令。
3.上一点说的其他用户可以是普通用户或者超级用户。
4.大部分时候我们用它来以提升的权限来运行命令。
下面用一个实验验证上述说明
1.在普通用户身份下,输入sudo -s
2.如果输错密码错误,结果是提示请重试,三次输错将会操作失败
3.输入密码成功后,结果是从普通用户身份切换到root身份
4.pwd查看当前目录,仍旧是普通用户的目录
sudo apt 常用指令如下:
- sudo apt-get update, #更新源
- sudo apt-get upgrade ,#更新已安装的包
- sudo apt-get dist-upgrade, #升级系统
- sudo apt-get dselect-upgrade, #使用 dselect 升级
- sudo apt-get build-dep package, #安装相关的编译环境
- apt-get source package ,#下载该包的源代码
- sudo apt-get clean && sudo apt-get autoclean #清理下载文件的存档
- sudo apt-get check #检查是否有损坏的依赖
- sudo apt-get install package=version,#安装指定版本的package
- sudo apt-get install package - - reinstall,#重新安装package
- sudo apt-get -f install,#强制安装
- sudo apt-get remove package --purge,#删除包,包括删除配置文件等
- sudo apt-get remove package ,#删除包
- sudo apt-get autoremove ,#自动删除不需要的包,清理包文件
- sudo apt-cache show python,#显示关于package的记录
- sudo apt-cache search python ,#正则匹配搜索package的信息
- sudo apt-cache depends python,#显示pakage的原始依赖信息
- sudo apt-get rdepends python,#显示依赖package的包
- sudo apt-cache showpkg python,#显示单个package的信息
- sudo apt-cache showsrc python,#显示package的源程序记录
- sudo apt-cache sump python,#简介得形式显示package的所有文件
- sudo apt-cache unmet python,#显示所有不满足的依赖
- sudo apt-cache pkgnames python,#列出系统中所有的包含package的包
版权声明:本文标题:linux系统下切换root权限和普通用户权限 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/xitong/1727081907a1096939.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论