2015年3月21日土曜日

[Linux][Fedora]HDD故障のため、環境移行

経緯

ここ数日、なんかHDDがおかしいらしい。起動時にfsckでジャーナルの復旧が走り、挙句にemergencyモードに落ちる。
ただ、^C+Dで通常ブートに戻れるって書いてあって、実際戻ったら普通に使えてたんで、気持ち悪いなーとは思いながらもそのまま使ってたんですが・・・。
とはいえ怖いので、SMARTをチェックするもオールグリーン。はて、なんかの不具合か?と思っても毎日出る。
ゼッタイ消えるとまずいファイルだけバックアップしてずっと使っていたところ、19日の夜、突然のフリーズ。 あぁ、いよいよもって死期が近づいているらしいと悟り、急遽環境移行策を検討することに。

まだブログにまとめられてませんでしたが、つい先日、MBRからUEFIに無事移行することができてあぁよかったよかった、と思っていた矢先ですよ・・・。Windowsは再インストールしたけれどUEFIに移行できて、Fedoraの方は再インストールすらせずにUEFIに移行できたからこれで新しいHDDを買うのは当分先でいいわーとか思ってたのに・・・Orz

で、悲しくもFedoraのHDDを交換することになったわけですが、そっくりそのままの構成でミラー的なコピーではなく、もういっそのこと入れなおしてしまおうとは思っていました。今の環境は/bootの容量が200MBしかなく、容量不足でkernelの更新やFedUpでよく怒られてましたからねぇ・・・。

で、今ならせっかくだしSSDも興味がある。ただ、ユーザデータが多いので(600GB超)、SSDにすべて放り込むのは現実的ではない。ってかどうせならSSD+nasneも捨てがたい・・・。
とまぁ、今までもやいのやいのと考えてはいたんですが、壊れたからには急ぎということでもう決めてしまわなくてはならない。
nasneは追々欲しいなと思っていたけど、今ここで予定外に2万円をSSDに上乗せは厳しい・・・。
ってことで、構成としてはSSD+HDDで行くことに。

で、HDDはさておいて、SSDはどんくらいの容量を買うかというのが問題に。
当初、
「SSDは高いし、とりあえず起動が早くなりゃ十分だから/boot/が収まる程度でいいかなー。32GBか、最悪16GBくらいかなー?」
なんて思ってたんですが・・・。
モンキチさんから
「随分価格も下がりましたし(約1万円で256GB)ここはもうちっと頑張りましょうよ。」
ってツッコミが。
はて、そんなに値下がりしてたっけ?って思ってカカクコム見たら確かにそれくらいの価格・・・。 いつの間にこんなに値下がりしてたんだ、ってか自分が動向を追いかけてなさすぎただけか!?
ってことで、なるほどそのくらいの価格ならHDDとセットで買っても2万円程度で収まるってことでSSD 256GB、HDD 1TBで行くことに決定!

いざ買い出し!

無事構成も決まったということで、いざ買い出し。神戸のソフマップへれっつらごー。
点灯で見てみると、なるほどカカクコムで見た程度の価格。特にメーカーにこだわりとかがあるわけでもないので真ん中くらいの価格のものをチョイス。困ったらあまりに安いのはよけていく主義。
購入したのは
SSD: crucial M550 (256GB 11858円)
HDD: WesternDigital WD Green (1TB 6782円)※ 3/21 23:53 価格が逆だったのを修正
これとSATA3のケーブルを2本買って、しめて2万円なり。ぴったり予算通りです。

SATAのケーブルについては、使い回しじゃなくて買い増し。M/B自体はSATA3に対応してたんですが、HDDが対応してなかったんでケーブルも古いのを使いまわしてたんですが、せっかく買い換えるならってことで。
まぁ、SATA2用のケーブルでも理論上SATA3の速度は出せるとか言う話だけれど、高いもんでもないしどうせならってことで。速度差があったよ!っていう記事もあったりするからここはプラセボでもよしってことで。あとから交換はめんどいし。

HDDの移行(物理)

データ移行を開始するにあたり、まずは旧HDDを取り外して新HDDへ交換する作業をば。
これがめちゃくちゃ難航した・・・。
使ってるケースはAntecのちっこいやつなんですが、これ、中がいわば2階建て構造というか、完全に分離しておりまして、まぁ言葉で説明しにくいのでこちらから引用。
NSK3480 製品情報 コンピュータ関連製品の代理店事業 l 株式会社リンクスインターナショナル
特殊なハードディスク設置箇所①
通常のケースとは異なり、ケースの上部ユニットにハードディスクの設置箇所があります。下からハードディスクのネジ穴に合わせ、ハードディスクを固定します。ネジ止め部分にはシリコングロメットを備え、ハードディスクの振動を吸収しノイズを低減します。 ※ケースの上部ユニットにハードディスクを設置した場合は、5.25インチベイが1基使用できなくなります。
まぁ、これ、このケースで組んだことがある人でないとイメージつかないと思うんですが、ほんっとここがキツイ。
構造的にかなり余裕がないのはさておき、ここにHDDか光学ドライブを計2台、底側にHDDを1台搭載する以上の搭載はまずできないと思われるんですね。

それに対し、当方は上部にHDDとDVDドライブの計2台、下部にHDDとSSDの計2台、合計4台搭載しようとしている・・・。
SATA用の電源の口は実はちゃんと4つはあるんだけれど、その位置が絶望的・・・。
SATA用の電源コネクタは、大体の場合、電源ケーブルの房に2個(真ん中辺りに1個と末端に1個)ついていますが、NSK3480も多分にもれずその構成です。
が!!!
こいつ、電源が上部に有り、部屋が物理的に分離されているためにケーブルも容易には下の部屋に持ってこれないんですよね・・・。末端側のコネクタはギリギリケーブル通しの穴を通るんですが、中間位置のコネクタは通らない。
つまるところ、ケーブルの長さとHDD/SSDの設置場所の関係で、かなり無茶をしないと電源コネクタが届かない・・・。

で、かなり無茶して電源コネクタを接続してドライブを固定しましたよ、えぇ・・・。マジきつかった。特にDVDドライブはもうこれ外したくないよ・・・。

なお、データ移行中はこんな状況でした。

外に飛び出しているHDDは故障したHDDです。SSDはこのあと、FDDのベイにガムテープで固定しました(笑)

まずはFedora再インストール

つい最近、会社でCentOS7のインストールをやったのでまぁ似たようなものってことで。うちに帰ってPCケース開けてきったなかったんで掃除機でホコリ吸ってFedoraの入ってるサムスンのHDDを抜き出して買ってきたSSDとHDD繋いでLiveUSBをPCにぶっ挿していざインストール!
ユーザデータは後でコピーするし、必要なソフトはあとから気付いた時に入れてやればいいってことでここではパーティション設定だけ注意。
CentOS7では標準ファイルシステムがXFSになってましたが、Fedoraの方は今もext4。そこはちょっと意外だったなー。こっちも変わってるかと思ってた。

で、どんな構成にするのがいいかなー、とりあえずおまかせにしてみるかーって任せてみたら
SSD: /dev/sda
HDD: /dev/sdb

/boot/efi /dev/sda1 200MB EFIパーティション
/boot /dev/sda2 500MB ext4
/ /dev/sda3 64GB ext4
swap /dev/sda4 70GB swap
/home /dev/sdb1 931.5GB ext4
ってな感じになってました。いやまてswap摂り過ぎやろ・・・。ってことでこれをベースにswapを消して/に全振りでセットアップしました。
今のシステムは8GBのメモリを積んでいて、メモリの使用量は多い時で4GBちょっと超えるかなーってくらいだったので、swapはなしで。
仮想OSとか動かし始めたらメモリ増強してもいいんだけど(あと2スロット余ってる)、まぁそれでもメモリを買い足すだろうからswapはなくてもいいと思うんだよなぁ。

で、さくっとインストール。インストール中に洗いものしてたんで、いつくらいに終わったかはよく分からず。まぁLiveUSBのイメージからのインストールなんでパッケージ数は知れてるはず。30分はかかっていないかと。

データコピー

セットアップはさらっと終わったので、まずちゃんと起動するかを確認。いやーしかし、ほんとに起動はくっそはえぇな! さすがSSD。驚きの速さ。これまでとは比較になりませんね・・・。 Linuxもこんな高速起動できたんだな・・・。今までが遅すぎたんで隔世の感がありますね。
$ systemd-analyze
Startup finished in 2.064s (kernel) + 6.562s (initrd) + 2.113s (userspace) = 10.739s
なお、fsckがジャーナルを復旧してた時は起動に2分弱掛かってました。まー復旧しててもその程度だからまだマシとも言えましょうが・・・。

とまぁ、無事に起動することも確認できたので再びUSBメモリからブートして旧データの移行。
念の為リードオンリーでマウントして、ユーザデータのディレクトリに移動したらtarでまるっとコピー。
$ tar cO . | tar xvf - -C ../dest/
cpとかでもいいですが、なんとなくtarで。まあ容量そこそこあるし、時間も掛かるだろうってことでこの間に夕飯の買い出しとか行ってました(笑)
600Gb程度ありましたし、さすがに時間かかりましたねー。エラーは何も出なかったのが救い。ジャーナリングの復旧に走られるのは間違いなく/home含む/パーティションだから、ちょっと心配してたんだけど、不良箇所はそこじゃなかったのかね?

復旧完了!

データ移行が終わってSSDも設置完了して、ようやくさくっと起動。
一旦rootでログインし、コピーしたユーザデータの所有者をchownで変更しつつ、適当にパッケージ更新&インストール。
とりあえずよく使ってたなと思い浮かぶものをぽろぽろと入れていったけど、意外と追加のパッケージは入れてない。
まぁ今後、開発系のパッケージを入れることはあるだろうけどそんときでいいやー。

いやーしかし、HDDが故障した時にはどうしたものかと思いましたが、なんとか無事に復旧しました。
まだいくつかの後処理(旧FedoraのUEFIブート情報がNVRAMに残ったままだったりとか)がありますが、まぁそこはのんびりやっていきましょう。

SSD、起動速度はちょっぱやだけどそれ以外での恩恵はまだほとんど感じられてないんだよなぁ。
さて、いかがなもんでしょな?

さて、次は寿命的にはWindowsのHDDだがはてさて・・・?