Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3916162
  • 博文数量: 421
  • 博客积分: 685
  • 博客等级: 上将
  • 技术积分: 3670
  • 用 户 组: 普通用户
  • 注册时间: 2010-02-18 14:20
文章分类

全部博文(421)

文章存档

2012年(5)

2011年(52)

2010年(83)

2009年(67)

2008年(65)

2007年(149)

分类:

2007-04-03 20:05:56





/sbin/sh and /usr/bin/sh shells 都是 Bourne shells.  

/sbin/sh    is statically linked
/usr/bin/sh is dynamically linked.
/bin/sh     /bin目录是到/usr/bin的链接

先看看属性:
# ls -l /sbin/sh  
-r-xr-xr-x 2 bin root 251712 Jul 16 1997 /sbin/sh
# ls -l /usr/bin/sh  
-r-xr-xr-x 3 bin root 88620 Jul 16 1997 /usr/bin/sh  

# file /sbin/sh  
/sbin/sh: ELF 32-bit MSB executable SPARC Version 1, statically linked, stripped
# file /usr/bin/sh  
/usr/bin/sh: ELF 32-bit MSB executable SPARC Version 1, dynamically linked, stripped

# ldd /sbin/sh  
ldd: /sbin/sh: file is not a dynamic executable or shared object
# ldd /usr/bin/sh  
libc.so.1 => /usr/lib/libc.so.1  
libdl.so.1 => /usr/lib/libdl.so.1  

动态链接的bin执行的时候使用共享的libraries.他们的文件更小,
而且当libraries更新的时候,他们自动使用更新的libaries

静态链接bin包含了所有的代码,不需要使用共享的libraries. 他们的文件大小比动态链接的bin文件要大.
如果系统 "broken"并且libraries被删除了,损坏了,或者/usr目录没被mounted,/sbin/sh仍然可以执行。   
所以推荐大家使用/sbin/sh 作为缺省的root shell

点此查看 SUN系统管理员学习指南(全球唯一中文版免费在线阅读) for solaris 9&10


阅读(5438) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~