Gentooシステムの応急処置

なにかしらsystem系に問題が起きたときはemergeできなくなるケースが多い。例えばビルド系のbinutils,gcc,glibcの他、coreutils,libtool,sedあたりも致命的。
そんなときはビルド済みパッケージ。普段からbuildpkgしていれば過去のビルドを使えるが、そんなことしてなかったりするので配布されているものを使う。障害の原因のパッケージを究明する方法はここでは言及しない。
但し、電源を落としても問題が無く、他のレスキューシステム(デュアルブートやLiveCD)が使えるなら当然その方法を取った方がいい。

# 初めて使うときはディレクトリがないかも
$ sudo mkdir /usr/portage/packages
# app-portage/portage-utilsが有効な場合
$ sudo QMERGE=1 qmerge -K <pkgname>

入ってなかったり古かったりしてqmergeが使えないときは、

$ sudoedit /etc/make.conf
# このURLはportage-utilsのバイナリに内蔵されているものと同じ
PORTAGE_BINHOST=http://tinderbox.dev.gentoo.org/default-linux/x86/
$ sudo emerge -gK <atom>

更に致命的なのはパッケージの配布に使われてるbzip2が壊れたとき。tarはもう知らない。

# 別のシステムでトランスコード
$ bzip2 -cd bzip2.tbz2|gzip > bzip2.tgz
# 対象のシステムに転送したのち
$ sudo tar -xvzpf bzip2.tgz -C /
# ※危険(いい方法あれば教えて)