まえがき
久しぶりに起動したら,emergency modeに入った
先輩曰く,OSを入れ直した方がいいレベルらしい
結果,壊せる壊れかけのLinuxが爆誕した
せっかくなので,勉強ついでに一人で色々あがいた
役に立ったら♥️お願いします。
目次
1.御託
2.試したこと
3.まとめ
1.御託
VirtualBox7.0くらい
ホストOS:Windows11
ゲストOS:Debian (64-bit)
経緯
・久しぶりに起動したら壊れた
・以前githubにsshでリモートリポジトリを作成したが,起動・修復時に使用していたwi-fiではなぜかアップロードできない
・原因不明(強いて言えば衝撃とかかも)
起動時(伏字(*)アリ)
/dev/sda1: recovering journal
/dev/sda1: clean, ******/******* files, *******/******** blocks
[FAILED] Failed to mount /media/cdrom0.
[DEPEND] Dependency failed for Local File Systems.
[ OK ] Mounted Arbitrary Executable File Formats File Systems.
(中略)
[ OK ] Reached target Network is Online.
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.
Give root password for maintenance
(or press Control-D to continue):(入力待ち状態)
2.試したこと
A~Cは気が向いたら読んでね
A.(おまけ)無意味まとめ
B.(おまけ)ファイル転送(Linux=>Windows)
C.(おまけ)ファイル転送(Linux=>Google Drive)
D.【本編】/etc/fstabの編集
A.(おまけ)無意味まとめ
・Ctrl-D
You ... Control-D to continue):
に戻る
・journalctl -xb
数千行のログが出たのでそっと閉じた
・systemctl reboot
再起動する
とりあえず試すべき
筆者は再起動だけでは解決しませんでした
・systemctl default
・exit
You ... Control-D to continue):
に戻る
B.(おまけ)ファイルシステムの修復
・fsck
コマンドを使用する
「ファイルシステム」の整備を行う的なコマンドらしい.ファイルシステムはOS機能の一つで,データストレージ管理関連のモノっぽい.
これを実行するためには,対象のファイルシステム「アンマウント」が必要.結論を言うと,通常起動したら使用不可(多分).なので,「シングルユーザモード」での起動を行う.
雑学用蛇足
・lsblk -f
:ファイルシステムのリスト表示
・/dev/sd○の○は,マウントされた順にa,b,c,...と割り当てられるらしい
※fsckの参考例1
※fsckの参考例2
↓不良セクタのチェックは長すぎたのでシャットダウンした
・「シングルユーザモード」で起動
参考元のコマンドの対象のファイルシステムは,rootが使用中らしくアンマウントに失敗した(Windowsだと「他のプロセスが使用中」によるアクセス拒否に近いかも).
しかし,シングルユーザモードで起動すると,アンマウントができるらしい.起動方法はマジで色々あったので気になった人は検索してね.
※参考元
これで弾かれたファイルシステムに対してfsckが出来るようになりました
【後日談】
たぶん元々ファイルシステム壊れてなかった
C.(おまけ)ファイル転送(Linux=>Windows)
・scp
コマンドを使用する(したかった)
下のサイトが分かりやすかった.
・Tera Term/WinSCPによるファイル転送
特にこれといった参考サイトはない.
ssh接続でやるっぽいが,接続に失敗したので分からない.
・GdriveをによるGoogle Driveへのアップロード
全然ダウンロードできなかった.
コマンドで接続を確認したところ,ネットワークに繋がってるか怪しかった
↓参考にしたかった
D.【本編】/etc/fstabの編集
Dependency failed for Local File Systems.
が出た場合,参考になると思う
Q./etc/fstab
とは?
A.起動時に読み込むファイルシステムに関する設定ファイルかも?
任意の方法(筆者はvim)で中身を見たところ,cdrom0
が書かれてた行を二つほど発見.
(伏字(*)アリ)
/dev/sr0 /media/cdrom0 udf,iso****,noauto 0 0
# /dev/sr0 /media/cdrom0 udf,iso**** 0 0
下の行がコメントアウトになっているため,解除⇒再起動(systemctl reboot
)
すると,無事正常に起動した.
恐らく,noauto
というオプションは「起動時に自動で読み込まない」ということなのだろう.
そのせいで該当のファイルシステムが読み込まれず,起動に失敗したと思われる.
3.まとめ
Dependency failed for Local File Systems.
が出ている場合,/etc/fstab
の中を見て考えてみるといいかもしれない.
もしお役に立てれば,いいねしてもらえるとモチベになって助かります
【おまけ】
Q.emergency modeだけどいつものファイルどこ?
A./root
ディレクトリにいるので,cd ../home/ユーザ名
でいつものディレクトリに移動できる