切断されたlibc.so.6

切断されたlibc.so.6

以下を実行してlibc.so.6を切断しました。

$ sudo unlink /usr/lib/libc.so.6

この問題を解決するために、USBスティックからUbuntuを起動して再接続しようとしました。問題は、libcのバージョンがわからず、どのlibc-*.soファイルもアーカイブできないことです。

この状況を解決するには、正しいファイルをどのように見つけることができますか?

答え1

Archは、ほとんどのLinuxディストリビューションで通常デフォルトであるGNU libcを使用しているようです。この記事を書いた時点で、現在のバージョンは2.35-3のようです。

Archパッケージの内容を一覧表示すると、次のようになります。

$ unzstd < glibc-2.35-3-x86_64.pkg.tar.zst |tar tvf -  |grep libc.so
-rw-r--r-- root/root       255 2022-03-20 22:45 usr/lib/libc.so
-rwxr-xr-x root/root   2463384 2022-03-20 22:45 usr/lib/libc.so.6

残念ながら、それはリンクではなくArchの実際のライブラリであるようです。したがって、UbuntuがアクセスできるどこかにUbuntuがインストールされていることを/usr/lib/libc.so.6確認する必要があります(ダウンロード」リンク)。zstdsudo apt-get install zstdglibc-2.35-3-x86_64.pkg.tar.zst

$ unzstd < glibc-2.35-3-x86_64.pkg.tar.zst |tar xvf -  usr/lib/libc.so.6
$ sudo mv usr/lib/libc.so.6 <the mount location of your Arch root in Ubuntu>/usr/lib/

関連情報