建议大家切换用户的时候 使用  su -  root  这样,否则可能发现某些命令执行不了
关于su 、su - 及 sudo的区别 请往下看

1.命令作用
su的作用是变更为其它使用者的身份,超级用户除外,需要键入该使用者的密码。

2.使用方式
su [-fmp] [-c command] [-s shell] [--help] [--version] [-] [USER [ARG]]
3.参数说明
-f , –fast:不必读启动文件(如 csh.cshrc 等),仅用于csh或tcsh两种Shell。
-l , –login:加了这个参数之后,就好像是重新登陆一样,大部分环境变量(例如HOME、SHELL和USER等)都是以该使用者(USER)为主,并且工作目录也会改变。如果没有指定USER,缺省情况是root。
-m, -p ,–preserve-environment:执行su时不改变环境变数。
-c command:变更账号为USER的使用者,并执行指令(command)后再变回原来使用者。
–help 显示说明文件
–version 显示版本资讯
USER:欲变更的使用者账号,
ARG:  传入新的Shell参数。
4.例子
su -c ls root 变更帐号为 root 并在执行 ls 指令后退出变回原使用者。
su [用户名]
a>在root用户下, 输入 su 普通用户. 则切换至普通用户, 从root切换到变通用户不需要密码
b>在普通用户下, 输入 su [用户名]
提示 password:
输入用户的PASSWORD, 则切换至该用户
扩展阅读一:Linux下 su命令与su - 命令有什么区别?
su 是切换到其他用户,但是不切换环境变量(比如说那些export命令查看一下,就知道两个命令的区别了)
su - 是完整的切换到一个用户环境
所以建议大家切换用户的时候,尽量使用 su -  linuxso 这样 否则可能发现某些命令执行不了
扩展阅读二:su和sudo的区别
由于su 对切换到超级权限用户root后,权限的无限制性,所以su并不能担任多个管理员所管理的系统。如果用su 来切换到超级用户来管理系统,也不能明确哪些工作是由哪个管理员进行的操作。特别是对于服务器的管理有多人参与管理时,最好是针对每个管理员的技术特长和 管理范围,并且有针对性的下放给权限,并且约定其使用哪些工具来完成与其相关的工作,这时我们就有必要用到 sudo。
通过sudo,我们能把某些超级权限有针对性的下放,并且不需要普通用户知道root密码,所以sudo 相对于权限无限制性的su来说,还是比较安全的,所以sudo 也能被称为受限制的su ;另外sudo 是需要授权许可的,所以也被称为授权许可的su;
sudo 执行命令的流程是当前用户切换到root(或其它指定切换到的用户),然后以root(或其它指定的切换到的用户)身份执行命令,执行完成后,直接退回到当前用户;而这些的前提是要通过sudo的配置文件/etc/sudoers来进行授权;

Linux su命令参数及用法详解--Linux切换用户命令的更多相关文章

  1. linux useradd(adduser)命令参数及用法详解(linux创建新用户命令)

    linux useradd(adduser)命令参数及用法详解(linux创建新用户命令) useradd可用来建立用户帐号.帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号 ...

  2. linux dmesg命令参数及用法详解(linux显示开机信息命令)

    linux dmesg命令参数及用法详解(linux显示开机信息命令) http://blog.csdn.net/zhongyhc/article/details/8909905 功能说明:显示开机信 ...

  3. (转)linux traceroute命令参数及用法详解--linux跟踪路由命令

    linux traceroute命令参数及用法详解--linux跟踪路由命令 原文:http://blog.csdn.net/liyuan_669/article/details/25362505 通 ...

  4. Linux fdisk命令参数及用法详解---Linux磁盘分区管理命令fdisk

    fdisk 命令 linux磁盘分区管理 用途:观察硬盘之实体使用情形与分割硬盘用. 使用方法: 一.在 console 上输入 fdisk -l /dev/sda ,观察硬盘之实体使用情形. 二.在 ...

  5. linux scp命令参数及用法详解--linux远程复制拷贝命令使用实例【转】

    转自:http://blog.csdn.net/jiangkai_nju/article/details/7338177 一般情况,本地网络跟远程网络进行数据交抱,或者数据迁移,常用的有三种方法,一是 ...

  6. Linux quota命令参数及用法详解---Linux磁盘配额限制设置和查看命令

    功能说明:显示磁盘已使用的空间与限制. 语 法:quota [-quvV][用户名称...] 或 quota [-gqvV][群组名称...] 补充说明:执行quota指令,可查询磁盘空间的限制,并得 ...

  7. linux crontab命令参数及用法详解--linux自动化定时任务cron

    声明:本文转自Linux 安全网,在此基础上加上自己的体会! crontab 命令 如果发现您的系统里没有这个命令,在ubuntu server 中用的是 sudo apt-get install c ...

  8. linux telnet命令参数及用法详解--telnet连接远程终端命令

    功能说明:远端登入. 语 法:telnet [-8acdEfFKLrx][-b<主机alias.html' target='_blank'>别名>][-e<脱离字符>][ ...

  9. linux modprobe命令参数及用法详解--linux加载模块命令

    转:http://www.linuxso.com/command/modprobe.html modprobe(module probe) 功能说明:自动处理可载入模块. 语 法:modprobe [ ...

随机推荐

  1. FutureTask源码分析

    1. 常量和变量 private volatile int state; // 任务状态 private static final int NEW = 0; private static final ...

  2. JAVA EE 中之AJAX 无刷新地区下拉列表三级联动

    JSP页面 <html> <head> <meta http-equiv="Content-Type" content="text/html ...

  3. [转]jquery后代和子元素的区别

    这是<锋利的jquery>书里的内容 <div>     <p>         <span></span>         <a&g ...

  4. C语言读书笔记

    1.c语言中一共有32个关键字,分别是: auto.int.double.long.char.short.float.unsigned.signed.sizeof.extern. static.got ...

  5. Linux使用pyVLfeat库做Dense sift提示段错误(segmentation fault)详细分析

    pyVLfeat是著名的图像处理库VLFeat在python上的接口包.在linux环境下使用该库提示“段错误”.百度后得知: 所谓的段错误就是指访问的内存超出了系统所给这个程序的内存空间 意思其实就 ...

  6. 利用cURL请外部接口

    昨天有一个需求,就是需要把获取到的百度地图信息存储到百度地图LBS云储存上 看了一下LBS云储存,说白了就是通过接口操作云数据库,所以写了一个通用的cURL函数 代码如下: /** * @param ...

  7. Winfrom 使用TabControl控件模拟程序向导步骤

    .NET : 隐藏TabControl的标签栏   在给应用程序添加一个向导的做法有很多,但其中比较简便易行的是使用TabControl.如下图所示 但有一个小小的美中不足,就是:作为向导而言,我们可 ...

  8. VB里的TEXT控件只能输入数字的代码

    " '先声明一个常量,并把你想禁用或允许输入的内容赋值给它 Private Sub Text1_KeyPress(KeyAscii As Integer) '只能输入数字 KeyAscii ...

  9. Eclipse 生成WebService客户端代码

    1. 打开Eclipse,新建一个普通的Javaproject,然后在新建的项目上右键点击项目,New---->other---->Web Services -------->Web ...

  10. OpenShift应用镜像构建(3) - Jenkins的流水线构建

    Jenkins方式构建的定位是使用专门的CICD平台. 既支持把JenKins作为一个Pod部署到openshift内部,也支持部署在Openshift集群外部,操作上的区别是 openshift自己 ...