なにこれ?
たくさん HDD や SSD が搭載されたパソコンで、特定の問題のあるデバイスを探し当てるのは面倒である。昨今のはホットプラグに対応しているので、だったら「いったん全部 HDD/SSD をぶっこ抜いて、一台ずつ追加していって異常のあるのはその都度取り除けばよくね?」という発想によるリプレース方法である。もちろんデバイスの UUID なんかを控えて、オフラインにしてから処理するのは理想だろうが、こんな記事を読むということは「準備ができていない」ということだろうから、次からこうならないように対策を講じることをおすすめする。もちろん、まったくおすすめできる内容ではないのだが、とりあえず書いておく。
環境
$ uname -a
Linux ubuntu 6.8.0-45-generic #45-Ubuntu SMP PREEMPT_DYNAMIC Fri Aug 30 12:02:04 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
$ lsblk
sda 8:0 0 1.8T 0 disk
sdb 8:16 0 1.8T 0 disk
sdc 8:32 0 931.5G 0 disk
└─sdc1 8:33 0 931.5G 0 part
sdd 8:48 0 2.7T 0 disk
└─sdd1 8:49 0 2.7T 0 part
sde 8:64 0 1.8T 0 disk
└─sde1 8:65 0 1.8T 0 part
sdf 8:80 0 1.8T 0 disk
sdg 8:96 0 1.8T 0 disk
手順
- なにか「HDD/SSDを交換する必要がある」だろうから、パソコンをシャットダウンする前に処理すべきことはやっておく。たとえば BTRFS で RAID を組んでいるのだったら、予めヤバいデバイスを取り除くなどしておく。会社組織とかに所属しているのであれば、メールとかでちゃんとホウレンソウしておく。
- 適切にシャットダウンする。
- パソコンのケースを開けて、関係ある全ての HDD か SSD なんかを外す。いじるデバイスに OS とかが入っているのだったら、適宜ライブUSB を準備する。もちろん、静電気対策や怪我を防止するための処置は行う。
- 今回利用するすべとのデバイスがホットプラグに対応しているかを確認し、そうでなければ中止する。念のために書くが、NVMe の SSD は多分このやり方は良くない。
- パソコンのスイッチを入れる。ひょっとすると起動しないかもしれない。
- OS が起動したなら、ログインし、HDD の見れるアプリかシェルを起動して、現在の HDD/SSD の状態を確認する。
- それで、ホットプラグに対応した HDD/SSD を1台ずつ接続し、上でかいたアプリでシェルでデバイスの健康状態を確認し、適合するならそのままつなげる。不適切なデバイスであれば「適切な方法でシャットダウンした後に、HDDを外す」という処理をする。
- デバイスの選択が完了したなら、ちゃんと後始末をして、システムを復帰させる。
おわりに
こんなことはしなくて良い可能性が高いので、責任が負えないと判断したらリスクを他所に転化すること。怒られるのが怖くてこのページを開いたなら、先に説教されたほうが賢い選択だと思われるますので「ホウレンソウ」を行うこと。たぶん、こういうことはクラウドとかベンダーに金を払ってやらせるほうが良いことなはずだ。それでは、諸君らの健闘を祈る。