Linux環境でバックアップ用HDDを6TBから24TBへ交換した作業まとめ(SATAホットスワップ)

自宅サーバ

はじめに

Linuxマシンで運用しているバックアップ用HDDを、
6TB → 24TB へ容量アップした際の作業手順をまとめます。

今回は以下の条件で作業を行いました。

  • バックアップ用途のHDD交換
  • SATAホットスワップベイを使用(OSは稼働中)
  • 新品HDDのため、パーティション作成・フォーマットから実施

同様の構成でディスク交換を検討している方の参考になれば幸いです。


作業前提・環境

  • 交換前HDD:6TB(ext4)
  • 交換後HDD:24TB(SEAGATE ST24000DM001)
  • 接続方式:SATA ホットスワップ
  • ファイルシステム:ext4
  • パーティション形式:GPT(2TB超のため必須)

交換手順の全体像

手順概要

  1. SATAホットスワップで既存HDDを取り外し
  2. ホットスワップベイのHDDを物理交換
  3. SATAホットスワップで新HDDを接続
  4. dmesg/dev/sdX を確認
  5. parted でディスクラベル(GPT)を作成
  6. parted でパーティション作成
  7. ext4でフォーマット
  8. 試験的に mount
  9. /etc/fstab を更新(UUID指定)

物理交換時の注意点

  • ホットスワップベイのネジ位置とネジ穴をよく確認
    • 斜めに締めるとネジ山をなめやすい
  • SATAホットスワップ対応でも、念のためI/Oが落ち着いた状態で交換

HDD接続の確認(dmesg)

HDDを挿入後、dmesg でデバイス名を確認します。

$ sudo dmesg | less

Shift + G で末尾に移動し、直近のログを確認。

[288185.768363] sd 5:0:0:0: [sdc] 46875541504 512-byte logical blocks: (24.0 TB/21.8 TiB)

今回の環境では /dev/sdc として認識されました。


新品HDDの状態確認

$ sudo parted -l

新品のため、以下のようにラベル未設定の状態です。

Error: /dev/sdc: unrecognised disk label
Partition Table: unknown

GPTラベルの作成(2TB超対応)

2TBを超えるディスクでは GPT が必須です。

$ sudo parted /dev/sdc
(parted) mklabel gpt
(parted) p

パーティション作成

ディスク全体を1パーティションとして使用します。

(parted) mkpart primary ext4 0% 100%
(parted) p
(parted) quit

確認すると以下の構成になります。

Number  Start   End     Size    File system  Name
 1      1049kB  24.0TB  24.0TB  ext4         primary

デバイス確認

$ ls /dev/sdc*
/dev/sdc  /dev/sdc1

ext4でフォーマット

$ sudo mkfs.ext4 /dev/sdc1

24TBという大容量ですが、1分もかからず完了します。

この理由については後述します。


試験的にマウント

$ sudo mount -t ext4 /dev/sdc1 /media/hotswapbay4/
$ sudo mount

以下のようにマウントされていればOKです。

/dev/sdc1 on /media/hotswapbay4 type ext4 (rw,relatime)

/etc/fstab の更新

旧設定(6TB HDD)

# /dev/sdd1 hotswapbay4 TOSHIBA 6TB (backup for hotswapbay1 only data_archive )
UUID=2eadb4a1-c345-4f59-ac45-80b522eb2931 /media/hotswapbay4 ext4 noauto 0 0

UUIDの確認

$ sudo blkid /dev/sdc1
UUID="584b7494-6536-47a0-b37b-09b3033c6374"

新設定(24TB HDD)

# /dev/sdX1 hotswapbay4 SEAGATE 24TB (backup for hotswapbay1)
UUID=584b7494-6536-47a0-b37b-09b3033c6374 /media/hotswapbay4 ext4 noauto 0 0

旧設定はコメントアウトし、vim 等で保存します。

$ sudo vim /etc/fstab

番外編①:フォーマット後にアクセス音が続く理由

フォーマット自体はすぐに終わりますが、
マウント後しばらくHDDアクセス音が続く ことがあります。

これは ext4の遅延初期化(lazy init) によるものです。

実際のカーネルプロセス

$ ps aux | grep ext4lazy
root  4765  0.0  0.0      0     0 ? S 22:24 0:00 [ext4lazyinit]
  • 24TB HDDでは 約半日程度 実行されていました
  • 完了後はアイドル時のアクセス音は解消

参考:
https://bbs.archlinux.org/viewtopic.php?id=174729


番外編②:バックアップ実行時間の目安

  • バックアップ方式:rsync
  • 実行環境:Jenkins Job
  • 転送量:約 5.9TB
  • 接続:バックアップ元・先ともに SATA

結果:

  • 約11時間 で完了

大容量ディスクでも、SATA接続としては妥当な時間感覚です。


まとめ

  • SATAホットスワップを使えば、OS稼働中でも安全にHDD交換可能
  • 2TB超のHDDでは GPT必須
  • ext4のフォーマットが速いのは 遅延初期化のおかげ
  • /etc/fstabUUID指定 が安全

大容量バックアップディスクへの交換は手順自体はシンプルですが、
確認ポイントを押さえておくことでトラブルを防止できます。


参考リンク

コメント

タイトルとURLをコピーしました