起動しないLinuxのシステムに入って対処する場合の方法

nogajun
nogajun

Debian Sidを使っていますが、アップデートして再起動すると起動しなくなりました。 起動時のメッセージを見ていると、initramfsで/(ルート)がマウントできなくて落ちている感じです。

最近、こういう事態になることは珍しいけれど、そのトラブルシューティングは書いていないような気がするので記事にしておきます。

この記事が役に立ったらコーヒーをおごろう

下のリンクはBuy me a coffeeという投げ銭システムのリンクです。役に立ったと思ったら、ぜひ投げ銭をお願いします。

chrootで元のシステムに入る方法

まずはLive USBを起動します。そして、ターミナルから適当なディレクトリに/(ルート)パーティションをマウントします。

マウントしたらディレクトリに移動して、デバイスファイルと仮想ファイルをマウントしてchrootでシステムに入ります。これがマウントするところが多いのでコマンドをまとめました。これを参考に

$ sudo -s
# cd (ルートパーティションをマウントしたディレクトリ)/
# mount -v --bind /dev dev/
# mount -v --bind /dev/pts dev/pts/
# mount -vt proc proc proc/
# mount -vt sysfs sysfs sys/
# mount -vt tmpfs tmpfs run/

すべてマウントできれば、chrootコマンドでシステムに入って復旧作業をします。

# chroot . /bin/bash

システムの復旧作業が終わったらexitでchroot環境から抜けます。

# exit

そして、今度はマウントした順番と逆にデバイスファイルなどをアンマウントして、/(ルート)パーティションを最後にアンマウントします。

# mount -vt tmpfs tmpfs run/
# mount -vt sysfs sysfs sys/
# mount -vt proc proc proc/
# mount -v --bind /dev/pts dev/pts/
# mount -v --bind /dev dev/
# cd ~/ (ルートパーティションをマウントしたディレクトリ以外ならどこでも)
# umount (ルートパーティションをマウントしたディレクトリ)/

これでシステムを再起動できます。うまくいけば元通りになるはず。

この記事が役に立ったらコーヒーをおごろう

下のリンクはBuy me a coffeeという投げ銭システムのリンクです。役に立ったと思ったら、ぜひ投げ銭をお願いします。