su user 和 su - user的区别
来源:互联网 发布:rds阿里云 编辑:程序博客网 时间:2024/06/05 11:05
http://blog.chinaunix.net/u3/103877/showart_2057606.html
linux中,切换用户的命令使su。经常看到别人切换用户使用两种方式:
1.su user
2.su - user
感觉很好奇,两种方式肯定有他的不同。查了一些资料,然后自己又亲自操作一下,终于明白他们之间的不同。
1.su user
仅仅是切换用户user,切换之后,user的默认目录并不是/home/user路径,例如:
[root@redhat ~]# ls
anaconda-ks.cfg Desktop install.log install.log.syslog
[root@redhat ~]# pwd
/root --root用户当前路径
[root@redhat ~]# su oracle
[oracle@redhat root]$ pwd
/root --切换用户oracle之后,还是保持root用户的路径
[oracle@redhat root]$
anaconda-ks.cfg Desktop install.log install.log.syslog
[root@redhat ~]# pwd
/root --root用户当前路径
[root@redhat ~]# su oracle
[oracle@redhat root]$ pwd
/root --切换用户oracle之后,还是保持root用户的路径
[oracle@redhat root]$
2.su - user
su - user 实际上就是 su -l user.
此时切换用户之后,就好像重新以该user登录一样,大部分的环境变量都以该user为主,工作的路径也会相应的改变,而且改变PATH变量。
例如
[root@redhat ~]# pwd
/root --root用户当前路径
[root@redhat ~]# su - oracle
[oracle@redhat ~]$ pwd
/home/oracle --切换用户oracle之后,oracle自己的home路径
[oracle@redhat ~]$
/root --root用户当前路径
[root@redhat ~]# su - oracle
[oracle@redhat ~]$ pwd
/home/oracle --切换用户oracle之后,oracle自己的home路径
[oracle@redhat ~]$
再举一个例子,更明显:
[oracle@redhat root]$ su --用su切换到root用户
Password:
[root@redhat ~]# ifconfig --查看网络配置
bash: ifconfig: command not found --结果显示没有找到该命令
[root@redhat ~]# su - root --用su - 切换到root用户
[root@redhat ~]# ifconfig --查看网络配置,命令正常运行
eth0 Link encap:Ethernet HWaddr 00:0C:29:27:2B:7C
inet addr:192.168.1.150 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe27:2b7c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:616718 errors:0 dropped:0 overruns:0 frame:0
TX packets:246493 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:718056814 (684.7 MiB) TX bytes:81682357 (77.8 MiB)
Interrupt:185 Base address:0x1400
Password:
[root@redhat ~]# ifconfig --查看网络配置
bash: ifconfig: command not found --结果显示没有找到该命令
[root@redhat ~]# su - root --用su - 切换到root用户
[root@redhat ~]# ifconfig --查看网络配置,命令正常运行
eth0 Link encap:Ethernet HWaddr 00:0C:29:27:2B:7C
inet addr:192.168.1.150 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe27:2b7c/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:616718 errors:0 dropped:0 overruns:0 frame:0
TX packets:246493 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:718056814 (684.7 MiB) TX bytes:81682357 (77.8 MiB)
Interrupt:185 Base address:0x1400
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:47863 errors:0 dropped:0 overruns:0 frame:0
TX packets:47863 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:13642161 (13.0 MiB) TX bytes:13642161 (13.0 MiB)
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:47863 errors:0 dropped:0 overruns:0 frame:0
TX packets:47863 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:13642161 (13.0 MiB) TX bytes:13642161 (13.0 MiB)
- su user 和 su - user的区别
- su [user] 和 su - [user]的区别
- su 和su -的区别
- su和su -的区别
- su和su -的区别
- su和su - 的区别
- su 和 su - 的区别:
- su 和su -的区别
- su和su - 区别
- su和su - 区别
- su - root 和 su root 的区别
- su root 和su - root 的区别
- su 和 sudo su 的区别
- su root 和su - root 的区别
- su root 和su - root 的区别
- su oracle 和 su - oracle的区别
- su root 和su - root 的区别
- su和su -命令的区别
- pdg文件格式 到 pdf文件格式 的转换
- 测试脚本
- foxmail 耗尽资源
- Rational Rose2007中加入枚举支持
- CppUnit用例访问被测类私有&保护成员的解决方案
- su user 和 su - user的区别
- Android游戏开发之旅(十九) 分辨率大全
- 2.1The Castle
- 今天的事
- 自定义Excel公式让数据不再重复
- Android游戏开发之旅(二十) 双按事件捕获
- 分布式文件系统FastDFS架构剖析
- 哎 错措错
- 使用 mod_proxy方法设置Apache负载均衡