zoukankan      html  css  js  c++  java
  • [转载] su和sudo

    转载自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
    口令:<= 输入 root 的密码
    [root@localhost svyee]#
    # 没有使用 - 情况下,仍为原用户环境变量。

    [svyee@localhost ~]$ su -
    口令:<= 输入 root 的密码
    [root@localhost ~]# 
    # 加上参数 - 后,完全切换到了root用户的环境变量。


    高手推荐用su时,最好用 su - 。我是菜鸟,只知其然,暂不知其所以然。

    例2:由 svyee 转变为 test 用户

    [svyee@localhost ~]$ su -l test
    口令:<= 输入 test 的密码
    [test@localhost ~]$


    ------------------------------------------------------------------------------------------------------------------------------
    下面是 sudo 命令
            可以说sudo命令补偿了它的一个致命缺陷,那就是任何一个想转为root用户的人都得掌握root用户的密码,我这样的菜鸟也知道这很不安全,俺的root密码跟银行卡密码一样呢,能让别人知道吗?!哈哈,开玩笑。菜鸟归菜鸟,俺不是笨鸟。

    功能:对于root授权的用户,可使用该命令临时切换到root用户环境下。
              授权文件为 /etc/sudoers 文件,只要里面有你的大名,你就享有sudo特权。

    新装的系统,root只给他自己特权,下面先加上给svyee加上特权。

    菜鸟方法优先:
    #用上面的 su 命令换至 root 环境。

    [svyee@localhost ~]$ su -
    口令:<= 输入 root 的密码
    [root@localhost ~]# kwrite /etc/sudoers
    # 用KDE的KWrite来编辑文件,可以点鼠标,方便。


    在打开的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
    Password: <=输入svyee的密码即可。
    # OK,成功建立目录good。
    [svyee@localhost ~]$ sudo rmdir /good
    # 嘿嘿。删除成功,不用再输密码了。


    方便的是第一次使用sudo输入密码后,下一次就不用再输密码啦。
    你看那Adobe Reader 搞什么鬼,只有root身份才能打开。有sudo就轻松啦:

    例4:运行特权软件

    [svyee@localhost ~]$ sudo acroread
    # 一会 Adobe Reader 就乖乖打开了。

    (上例更简便的方法见:昵称时代, alias 让 Linux 命令更简练

    例5:变为 root 环境

    [svyee@localhost ~]$ sudo -s
    Password: <=输入svyee的密码即可。
    [root@localhost ~]#

    就到这吧。觉得肤浅?欢迎留下您的高见,俺菜鸟啊。

  • 相关阅读:
    pixi.js 简单交互事件(点击、缩放、平移)
    w3school
    并发(Concurrent)与并行(Parallel)的区别
    CTime获得当前电脑时间
    NX二次开发-UFUN获得体的表面积,体积,重心等UF_MODL_ask_mass_props_3d
    Jvm故障问题排查以及Jvm调优总结
    jmap命令详解----查看JVM内存使用详情
    jstack命令解析
    年轻带Young GC算法示意图
    【JVM】jstat命令详解---JVM的统计监测工具
  • 原文地址:https://www.cnblogs.com/scott19820130/p/5954388.html
Copyright © 2011-2022 走看看