转载自http://www.cnblogs.com/haichuan3000/articles/2123633.html
Mandriva 说也奇怪,用root登录的用户比一般用户还难用,当初用FC6时,我就完全使用root用户。Mandriva 中不能直接登录KDE,好容易搞进去后一个P图标没有,整个界面血红血红的,看着就吓人。没办法,成长就是被逼出来的。老子不信邪,找到了su和sudo,这里总结一下。
首先是 su 命令。
功能:直接将身份变成其他用户。(需要其他用户的密码)
用法:
$ su [选项]... [-] [用户 [参数]...]
参数:
-, -l, --login |
-l 后接用户名,单独的- 代表root,且使用 root 的环境变量。 |
-c, --commmand=COMMAND |
仅进行一次命令,-c 后可直接加命令。 |
-m, --preserve-environment |
使用目前的环境设定,而不重新读取新使用者的设定。 |
-p |
同 -m |
--help |
显示此帮助信息并退出 |
--version |
输出版本信息并退出 |
用 exit 命令或快捷键[Ctrl+D]可返回原登录用户。
例1:由 svyee 转变为 root 用户
[svyee@localhost ~]$ su |
高手推荐用su时,最好用 su - 。我是菜鸟,只知其然,暂不知其所以然。
例2:由 svyee 转变为 test 用户
[svyee@localhost ~]$ su -l test |
------------------------------------------------------------------------------------------------------------------------------
下面是 sudo 命令
可以说sudo命令补偿了它的一个致命缺陷,那就是任何一个想转为root用户的人都得掌握root用户的密码,我这样的菜鸟也知道这很不安全,俺的root密码跟银行卡密码一样呢,能让别人知道吗?!哈哈,开玩笑。菜鸟归菜鸟,俺不是笨鸟。
功能:对于root授权的用户,可使用该命令临时切换到root用户环境下。
授权文件为 /etc/sudoers 文件,只要里面有你的大名,你就享有sudo特权。
新装的系统,root只给他自己特权,下面先加上给svyee加上特权。
菜鸟方法优先:
#用上面的 su 命令换至 root 环境。
[svyee@localhost ~]$ su - |
在打开的sudoers文件中,找到下面的字样,添上最后一行。
# User privilege specification
root ALL=(ALL) ALL
svyee ALL=(ALL) ALL <= 添上这一行。
点鼠标,保存退出。OK! svyee有特权了。
高手方法:
Ctrl + Alt + F1 在文本模式下以root身份登录,然后:
[root@linux ~]# visudo |
或:
[root@linux ~]# vi /etc/sudoers |
推荐用前者。
同样添加上一行。保存退出。
vi的具体操作,等俺学了再来总结。
下面,回到 sudo
参数:
-b |
在后台执行指令。 |
-h |
显示帮助。 |
-k |
结束密码的有效期限,也就是下次再执行sudo时便需要输入密码。 |
-l |
列出目前用户可执行与无法执行的指令。 |
-s<shell> |
执行指定的shell。 |
-u<user> |
以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份。 |
-v |
延长密码有效期限5分钟。 |
-V |
显示版本信息。 |
例3:入侵禁区
[svyee@localhost ~]$ sudo mkdir /good |
方便的是第一次使用sudo输入密码后,下一次就不用再输密码啦。
你看那Adobe Reader 搞什么鬼,只有root身份才能打开。有sudo就轻松啦:
例4:运行特权软件
[svyee@localhost ~]$ sudo acroread |
(上例更简便的方法见:昵称时代, alias 让 Linux 命令更简练)
例5:变为 root 环境
[svyee@localhost ~]$ sudo -s |
就到这吧。觉得肤浅?欢迎留下您的高见,俺菜鸟啊。
[转载] su和sudo的更多相关文章
-
su和sudo的区别与使用【华为云技术分享】
版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明. 本文链接:https://blog.csdn.net/devcloud/article/detai ...
-
【linux】su、sudo、sudo su、sudo -i的用法和区别
来源:http://bbs.csdn.net/topics/390938651 sudo : 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码.不过 ...
-
Linux 下以其他用户身份运行程序—— su、sudo、runuser
本文综合分析了Linux系统下,如何使用runuser命令.su命令和sudo命令以其他用户身份来运行程序,以及这三个命令的运行效率比较. 一.su 命令临时切换用户身份 SU:( Switch ...
-
07 Linux su和sudo命令的区别
一. 使用 su 命令临时切换用户身份 1.su 的适用条件和威力 su命令就是切换用户的工具,怎么理解呢?比如我们以普通用户beinan登录的,但要添加用户任务,执行useradd ,beinan用 ...
-
su和su -和sudo
1.su和sudo没有切换工作目录和环境变量,只是赋予用户权限, 而su -是真正切换到root登录,工作目录切换到/root,环境变量也同时改变. [root@oc3408554812 home]# ...
-
CentOS用户权限管理--su与sudo
Linux权限管理--su与sudo 1.su用来切换登录的用户,比如当前用户为chen,可以用su zhu,并输入用户zhu的登录密码,就可以切换到用户zhu.如果一个普通用户想切换到root用户, ...
-
设置su和sudo为不需要密码
设置su和sudo为不需要密码 一 设置sudo为不需要密码 有时候我们只需要执行一条root权限的命令也要su到root,是不是有些不方便?这时可以用sudo代替.默认新建的用户不在sudo组, ...
-
Linux命令--su与sudo
su(switch user)命令的作用:切换用户,一般是普通用户与root用户之间的切换.例:>su #输入su命令Password: #提示输入密码 ...
-
su与sudo命令的区别
由于su 对切换到超级权限用户root后,权限的无限制性,所以su并不能担任多个管理员所管理的系统. 如果用su 来切换到超级用户来管理系统,也不能明确哪些工作是由哪个管理员进行的操作. 特别是对于服 ...
随机推荐
-
tomcat 默认目录修改
引用:http://andrewyu.blog.51cto.com/1604432/544659 Tomcat7跟以前的版本一样,默认的发布程序是/usr/local/tomcat/webapps/R ...
-
ArcGIS线转面的方法
ArcGIS作为GIS软件中的龙头老大,其功能是非常强大的,但是如果作为一个初学者,其部分常用的重要功能不容易掌握,今天就讲一讲在矢量化时非常重要的功能:线转面. ArcGIS在进行大范围的矢量化时一 ...
-
c++ vector 简单实现。
第二次修改: 1)熟悉基本的模板编程,头文件和定义必须放到一起. 2)熟悉内存管理模板类 allocator<T>. 1.使用标准库的内存管理类 allocator<T> 代替 ...
-
Atitit.Gui控件and面板----web server区----- web服务器监控面板and控制台条目
Atitit.Gui控件and面板----web server区----- web服务器监控面板and控制台条目 1. Resin4.0.22 1 2. 查看http连接数::Summary>& ...
-
JSP技术模型(五)JSP隐含变量
在JSP页面的转换阶段,容器在_jspService()方法中申明并初始化一些变量,可以在JSP页面小脚本中或表达式中直接使用这些变量. 一.JSP页面中可使用的隐含变量 1.applicationj ...
-
linux的学习系列 8---进程管理
当我们运行程序时,Linux会为程序创建一个特殊的环境,该环境包含程序运行需要的所有资源,以保证程序能够独立运行,不受其他程序的干扰.这个特殊的环境就称为进程. 每个 Linux 命令都与系统中的程序 ...
-
js中的全局函数
以前没搞懂JS的全局函数,全局函数和window对象的函数不一样.全局函数不属于任何一个内置对象. JS包含以下7个全局函数,用于一些常用的功能:escape(),eval(),isNan(),isF ...
-
php(数组方法
什么是数组? 数组就是一组数据的集合 其表现形式就是内存中的一段连续的内存地址 数组名称其实就是连续内存地址的首地址 关于js中的数组特点 数组定义时无需指定数据类型 数组定义时可以无需指定数组长度 ...
-
springboot JPA
JPA(Java Persistence API)是Sun官方提出的Java持久化规范.它为Java开发人员提供了一种对象/关联映射工具来管理Java应用中的关系数据.他的出现主要是为了简化现有的持久 ...
-
Android Studio中R报错(cnanot resolve symbol R)
我的解决办法: Tools -> Android -> Sync Project with Gradle Files Build -> Clean Project 然后就好了 PS: ...