_ [debian][amd64] libc6 2.13-3 変

eglibc 2.13-3 を入れたら、何もできなくなった。

Preparing to replace libc6 2.13-2 (using .../libc6_2.13-3_amd64.deb) ...
Unpacking replacement libc6 ...
dpkg (subprocess): unable to execute rm command for cleanup (rm): No
such file or directory
dpkg: error while cleaning up:
 subprocess rm cleanup returned error exit status 2
Could not exec dpkg!

そもそも dpkg がきちんと終了してないし。シェル上からは何もかも command not found になってしまって何もできない。 別マシンでいろいろ探してみると、

  • #626447: libc-bin breaks lib64
  • #626449: bug when upgrading to libc6_2.13-3
  • #626450: lost /lib64 -> /lib symlink on amd64

と報告されているように、eglibc 2.13-3 を入れると /lib64 → /lib の symlink が消えてしまうようだ。

% echo /lib*
/lib /lib32
%

存在してない。 そこで、#626447 にある通り、symlink を張り直した。

# /lib/ld-linux-x86-64.so.2 --library-path /lib /bin/ln -sf /lib /lib64
#

張ったら復活した。 それにしても、/lib/libc.so.6 がそのまま実行できることは知ってたけど、/lib/ld-linux-x86-64.so.2 は知らなかった。