FreeBSD の /sbin/init および /bin/sh で使用されるライブラリの確認

FreeBSD の /sbin/init および /bin/sh で使用されるライブラリの確認

/sbin/initFreeBSDでどのライブラリが使用されているかを確認するには/bin/sh?動的に接続されていますか、それとも静的ですか?

答え1

使用fileldd:

$ file /bin/sh
/bin/sh: ELF 64-bit LSB pie executable, x86-64, version 1 (FreeBSD), dynamically linked, interpreter /libexec/ld-elf.so.1, for FreeBSD 13.1, FreeBSD-style, stripped
$ ldd /bin/sh
/bin/sh:
        libedit.so.8 => /lib/libedit.so.8 (0x80108d000)
        libc.so.7 => /lib/libc.so.7 (0x8010c8000)
        libncursesw.so.9 => /lib/libncursesw.so.9 (0x8014d2000)
$ file /sbin/init
/sbin/init: ELF 64-bit LSB executable, x86-64, version 1 (FreeBSD), statically linked, for FreeBSD 13.1, FreeBSD-style, stripped
$ ldd /sbin/init
ldd: /sbin/init: not a dynamic ELF executable

/bin/sh動的に接続され/sbin/init(驚くべきことではなく)静的に接続されます。

関連情報