
私は静的にリンクされたbusyboxを持っており、busybox telnet foo
「foo」のアドレスをどのように指定しますか?
その動的ライブラリは本当に必要ですか/etc/nsswitch.conf
?それともbusyboxに参照用の単純な独自のメカニズムが含まれていますか/etc/hosts
?
答え1
私のopenWRTを見ると、libnss *ライブラリはインストールされていません。 libuClibcだけがこの目的に使用されるようです。 libc.so.0はシンボリックリンクです。
root@RuiWifi:/lib# grep -ri hosts *
libc.so.0:/etc/hosts
libuClibc-0.9.33.2.so:/etc/hosts
uClibcはglibcよりはるかに小さい標準Cライブラリの実装なので、組み込みシステムに非常に便利です。
最小限の環境を構築する場合は、glibcではなくUClibc用のbusyboxをコンパイルし、openWRTを調べて、そのような小さなインストールスペースでこれらのディストリビューションを構築する方法を確認することをお勧めします。
答え2
dnsd
Busyboxに何が組み込まれているかを確認してください。
root@alpine-linux [~]# ls -l $(which dnsd)
lrwxrwxrwx 1 root root 12 Mar 17 23:12 /usr/sbin/dnsd -> /bin/busybox
また、Alpine Linux(Busyboxも使用)でドメインのunbound
名前解決を提供するように設定できました。.local
local-data
よりunbound.conf
マニュアルページ。デフォルトでは、構成ファイルではコメントアウトされています。