bash-static的用途是什么?


15

与常规bash相比,bash静态的目的是什么?它可以用作救援壳还是有什么用?

Answers:


24

您可能指的是静态链接版本的.deb软件包,这意味着它是一个独立程序,不依赖于磁盘上的其他任何文件(尤其是库)。bash-staticbash

我在两个不同的场合使用过它:

  • 安装在服务器上,这样bash即使在灾难性情况下(ld.so无论libc是否运行)(缺少,损坏,配置错误等),我也始终可以正常工作
  • 与我自己的Shell脚本一起交付给客户,因此我确定他们具有的正确版本bash,因为我正在使用bash v4.3引入的一些高级功能。

4
典型的情况是/挂载正常,但是/usr由于任何原因都无法挂载。因此,BSD系统通常避免在/bin和中动态链接可执行文件/sbin
库萨兰达

2
@Kusalananda不确定这是否是典型的情况。/usr在最初的引导阶段不可用。根据FHS,您不希望/bin(尤其是/bin/*sh)中的任何东西依赖/usr/lib
xhienne

5
嗯,所以就是Linux有/lib目录(在BSD系统上不存在)而不是/usr/lib...的原因
Kusalananda

5
@Kusalananda对,除了,不是。FHS指出:“该/lib目录包含启动系统并在根文件系统中运行命令所需的那些共享库映像,即通过/bin和中的二进制文件/sbin。(脚注)仅对于/usr(例如X中的)二进制文件才需要的共享库窗口二进制文件)不能位于/lib。”
xhienne
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.