2018年7月16日月曜日

pacmanでアップデート後にEmergency modeで起動するようになった時の対処法

2018年7月22日 更新
lvm2のバージョンアップで問題は完全に解決した。その内容を以下の記事にまとめてあるので、そちらを参考にしてほしい。

2018年7月22日
pacmanでアップデート後にArchl LinuxがEmergency modeで起動するようになった時の対処法(その2) | 普段使いのArch Linux

以下の記事は、古い内容。

pacmanでアップデート後にEmergency modeで起動するようになった
先日pacmanでパッケージのアップデートをした後、PCの電源を入れ直すとArch LinuxがEmergency modeで起動するようになってしまった。
You are in emergency mode. After logging in, type "journalctl -xb" to view 
system logs, "systemctl reboot" to reboot, "systemctl default" or "exit" 
to boot into default mode.

一旦、ルートパスワードを入力してEmergency modeに入った後、exitコマンドでEmergency modeを抜け出すと普通にGDMが起動してGNOMEのデスクトップ環境に入ることはできた。

問題なくデスクトップ環境が起動することを考えると大きな問題でもないはずだが、どうにか修理してEmergency modeが起動しないようにできないか調べてみた。

調べてみたところ、新しいバージョンのlvm2が悪さをしているらしく、lvm2をダウングレードするとで解決することが分かった。その詳細を記事にまとめておこうと思う。


起動時のログを調べてみる
まず、起動時のログを調べてみる。journalctl -xbコマンドからシステムがEmergency modeに入る直前のログを確認してみる。
7月 16 12:19:05 Alpha systemd[1]: Started Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling.
-- Subject: Unit lvm2-monitor.service has finished start-up
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit lvm2-monitor.service has finished starting up.
-- 
-- The start-up result is RESULT.
 7月 16 12:19:05 Alpha systemd[1]: Reached target Local File Systems (Pre).
-- Subject: Unit local-fs-pre.target has finished start-up
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit local-fs-pre.target has finished starting up.
-- 
-- The start-up result is RESULT.
 7月 16 12:19:05 Alpha systemd[1]: Starting File System Check on /dev/disk/by-uuid/a496a10c-926e-4b5f-9463-c1b09f52aa0b...
-- Subject: Unit systemd-fsck@dev-disk-by\x2duuid-a496a10c\x2d926e\x2d4b5f\x2d9463\x2dc1b09f52aa0b.service has begun start-up
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit systemd-fsck@dev-disk-by\x2duuid-a496a10c\x2d926e\x2d4b5f\x2d9463\x2dc1b09f52aa0b.service has begun starting up.
 7月 16 12:19:05 Alpha systemd[1]: systemd-fsck@dev-disk-by\x2duuid-dc5b8eb5\x2d1d65\x2d43d9\x2d9134\x2d20301def4edf.service: Bound to unit dev-disk-by\x2duuid-dc5b8eb5\x2d1d65\x2d43d9\x2d9134\x2d20301def4edf.device, but unit isn't active.
 7月 16 12:19:05 Alpha systemd[1]: Dependency failed for File System Check on /dev/disk/by-uuid/dc5b8eb5-1d65-43d9-9134-20301def4edf.
-- Subject: Unit systemd-fsck@dev-disk-by\x2duuid-dc5b8eb5\x2d1d65\x2d43d9\x2d9134\x2d20301def4edf.service has failed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit systemd-fsck@dev-disk-by\x2duuid-dc5b8eb5\x2d1d65\x2d43d9\x2d9134\x2d20301def4edf.service has failed.
-- 
-- The result is RESULT.
 7月 16 12:19:05 Alpha systemd[1]: Dependency failed for /home/zero/Disk/8TB-2.
-- Subject: Unit home-zero-Disk-8TB\x2d2.mount has failed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit home-zero-Disk-8TB\x2d2.mount has failed.
-- 
-- The result is RESULT.
 7月 16 12:19:05 Alpha systemd[1]: Dependency failed for Local File Systems.
-- Subject: Unit local-fs.target has failed
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit local-fs.target has failed.
-- 
-- The result is RESULT.
 7月 16 12:19:05 Alpha systemd[1]: local-fs.target: Job local-fs.target/start failed with result 'dependency'.
 7月 16 12:19:05 Alpha systemd[1]: local-fs.target: Triggering OnFailure= dependencies.
 7月 16 12:19:05 Alpha systemd[1]: home-zero-Disk-8TB\x2d2.mount: Job home-zero-Disk-8TB\x2d2.mount/start failed with result 'dependency'.
 7月 16 12:19:05 Alpha systemd[1]: systemd-fsck@dev-disk-by\x2duuid-dc5b8eb5\x2d1d65\x2d43d9\x2d9134\x2d20301def4edf.service: Job systemd-fsck@dev-disk-by\x2duuid-dc5b8eb5\x2d1d65\x2d43d9\x2d9134\x2d20301def4edf.service/start failed with result 'dependency'.
 7月 16 12:19:05 Alpha systemd[1]: Reached target Sockets.
-- Subject: Unit sockets.target has finished start-up
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit sockets.target has finished starting up.
-- 
-- The start-up result is RESULT.
 7月 16 12:19:05 Alpha systemd[1]: Reached target Paths.
-- Subject: Unit paths.target has finished start-up
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit paths.target has finished starting up.
-- 
-- The start-up result is RESULT.
 7月 16 12:19:05 Alpha systemd[1]: Reached target Network.
-- Subject: Unit network.target has finished start-up
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit network.target has finished starting up.
-- 
-- The start-up result is RESULT.
 7月 16 12:19:05 Alpha systemd[1]: Starting Create Volatile Files and Directories...
-- Subject: Unit systemd-tmpfiles-setup.service has begun start-up
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit systemd-tmpfiles-setup.service has begun starting up.
 7月 16 12:19:05 Alpha systemd[1]: Started Emergency Shell.
-- Subject: Unit emergency.service has finished start-up
-- Defined-By: systemd
-- Support: https://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit emergency.service has finished starting up.
-- 
-- The start-up result is RESULT.
 7月 16 12:19:05 Alpha systemd[1]: Reached target Emergency Mode.

Started Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling.の以降、fsckやらmountのsystemdのサービスが失敗している。

これらのファイルシステム系のサービスが失敗している原因は、「failed with result 'dependency'」と書いてある。

ウェブ上の情報を調べてみる
これらの情報を元にウェブ上を調べてみたところ、lvm2のバージョン2.02.179へのアップデートによりこれらの不具合が発生していると分かった。古いバージョンのlvm2 (2.02.177)にダウングレードすればシステムがEmergency modeになってしまう不具合は治るとのこと。

早速、lvm2のダウングレードを実行してみる。まず、lvm2の古いバージョンのパッケージを検索する。
$ ls /var/cache/pacman/pkg/lvm2*

/var/cache/pacman/pkg/lvm2-2.02.169-1-x86_64.pkg.tar.xz  /var/cache/pacman/pkg/lvm2-2.02.175-1-x86_64.pkg.tar.xz
/var/cache/pacman/pkg/lvm2-2.02.170-1-x86_64.pkg.tar.xz  /var/cache/pacman/pkg/lvm2-2.02.176-1-x86_64.pkg.tar.xz
/var/cache/pacman/pkg/lvm2-2.02.171-1-x86_64.pkg.tar.xz  /var/cache/pacman/pkg/lvm2-2.02.177-1-x86_64.pkg.tar.xz
/var/cache/pacman/pkg/lvm2-2.02.172-2-x86_64.pkg.tar.xz  /var/cache/pacman/pkg/lvm2-2.02.177-4-x86_64.pkg.tar.xz
/var/cache/pacman/pkg/lvm2-2.02.173-1-x86_64.pkg.tar.xz  /var/cache/pacman/pkg/lvm2-2.02.177-5-x86_64.pkg.tar.xz
/var/cache/pacman/pkg/lvm2-2.02.174-1-x86_64.pkg.tar.xz  /var/cache/pacman/pkg/lvm2-2.02.179-1-x86_64.pkg.tar.xz
/var/cache/pacman/pkg/lvm2-2.02.174-2-x86_64.pkg.tar.xz

現在の不具合が起こっているlvm2-2.02.179-1より1つ古いバージョンの、/var/cache/pacman/pkg/lvm2-2.02.177-5-x86_64.pkg.tar.xzがキャッシュに残っている。

pacmanで-Uオプションを使って、lvm2-2.02.177-5にダウングレードする。
# pacman -U /var/cache/pacman/pkg/lvm2-2.02.177-5-x86_64.pkg.tar.xz 

loading packages...
warning: downgrading package lvm2 (2.02.179-1 => 2.02.177-5)
resolving dependencies...
looking for conflicting packages...

Packages (1) lvm2-2.02.177-5

Total Installed Size:  6.50 MiB
Net Upgrade Size:      0.02 MiB
...

最後に、lvm2パッケージが勝手にアップデートされないように、pacman .confファイルに設定を書き込む。

以下のように、/etc/pacman.confの設定ファイルのIgnorePkgの行に「lvm2」を追加する。もし行の先頭が#でコメントアウトされていたら、#を削除してコメントアウトを解除する。
# vim /etc/pacman.conf 

...
# Pacman won't upgrade packages listed in IgnorePkg and members of IgnoreGroup
IgnorePkg   = lvm2
#IgnoreGroup =
...

これでPCを再起動してみると、Emergency modeに入らずArch Linuxを起動できるようになった。


参考:
[1]FS#59266 : [lvm2] Dependency failed for File System Check with 2.02.179-1
[2]Dependency failed for File System Check / Kernel & Hardware / Arch Linux Forums
[3]File system dependency not found on boot, yet the system seems to work fine : archlinux

スポンサーリンク

スポンサーリンク


関連コンテンツ


この記事をシェアする

0 件のコメント:

コメントを投稿