強制再起動 (5 番目のハード ドライブ) により、Ubuntu 17.10 のビルドが誤って破損してしまいました。私のシステムには、RAID5 アレイの一部である 4 つの他のハード ドライブがありました。Ubuntu 17.10 を再度インストールしたので、アレイとデータを回復するにはどうすればよいでしょうか。
両方試してみました
sudo mdadm --assemble --uuid=XXXXXXXXXX
そして
sudo mdadm --assemble /dev/md0 /dev/sdb /dev/sdc /dev/sdd /dev/sde
その後マウントすることはできますが、ファイルにアクセスしようとするとパスワードの入力を求められ、フォルダーは空です。アレイのメンバーはすべてアクティブでクリーンであると表示されます。
注: クラッシュ前にこの RAID 上に /home ディレクトリを作成し、そこに移動してマウントしました。以下の出力を参照してください。
cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid1] [raid10]
md0 : active raid5 sde[4] sdb[0] sdd[2] sdc[1] 8790405120 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]
bitmap: 0/22 pages [0KB], 65536KB chunk
unused devices: <none>
出力は以下のとおりです
sudo parted --list /dev/md0
Model: ATA TS128GSSD370S (scsi)
Disk /dev/sda: 128GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 538MB 537MB fat32 EFI System Partition boot, esp
2 538MB 128GB 127GB ext4
Error: end of file while reading /dev/sdb
Retry/Ignore/Cancel? retry
Error: end of file while reading /dev/sdb
Retry/Ignore/Cancel? ignore
Error: The primary GPT table is corrupt, but the backup appears OK, so that will
be used.
OK/Cancel? ok
Model: ATA ST3000VN000-1HJ1 (scsi)
Disk /dev/sdb: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
Error: /dev/sdc: unrecognised disk label
Model: ATA ST3000VN000-1HJ1 (scsi)
Disk /dev/sdc: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: unknown
Disk Flags:
Error: /dev/sdd: unrecognised disk label
Model: ATA ST3000VN000-1HJ1 (scsi)
Disk /dev/sdd: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: unknown
Disk Flags:
Error: end of file while reading /dev/sde
Retry/Ignore/Cancel? ignore
Error: The primary GPT table is corrupt, but the backup appears OK, so that will
be used.
OK/Cancel? ok
Model: ATA ST3000VN000-1HJ1 (scsi)
Disk /dev/sde: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
Model: WD Elements 25A1 (scsi)
Disk /dev/sdf: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 3001GB 3001GB ntfs Elements msftdata
Model: Linux Software RAID Array (md)
Disk /dev/md0: 9001GB
Sector size (logical/physical): 512B/4096B
Partition Table: loop
Disk Flags:
Number Start End Size File system Flags
1 0.00B 9001GB 9001GB ext4
/dev/md0 /mntをマウントした後
ls -la /dev/md*の出力は次の通りです
brw-rw---- 1 root disk 9, 0 Apr 13 16:31 /dev/md0
/dev/md:
total 0
drwxr-xr-x 2 root root 60 Apr 13 16:31 .
drwxr-xr-x 21 root root 4520 Apr 13 16:31 ..
lrwxrwxrwx 1 root root 6 Apr 13 16:31 0 -> ../md0
答え1
これは RAID の問題ではなく、権限の問題です。コマンドの出力を確認すると、行cat /proc/mdstat
に示されているように、raid5 が完全に組み立てられていることがわかります。[UUUU]
md0
Personalities : [raid6] [raid5] [raid4] [linear] [multipath] [raid0] [raid1] [raid10]
md0 : active raid5 sde[4] sdb[0] sdd[2] sdc[1] 8790405120 blocks super 1.2 level 5, 512k chunk, algorithm 2 [4/4] [UUUU]
bitmap: 0/22 pages [0KB], 65536KB chunk
unused devices: <none>
また、パーティション テーブル (ループ デバイスの場合は loop) とファイル システム (ext4) も正常です。ループ デバイスをマウントすると、mount /dev/md0 /mnt
次のような画面が表示されます。
$ mount /dev/md0 /mnt
$ ls -la /mnt
total 12
drwxr-xr-x 3 root root 4096 Jun 29 2016 .
drwxr-xr-x 10 root root 4096 Dec 7 10:42 ..
drwxr-xr-x 3 1001 2001 4096 Feb 6 2017 oldusername
ここで、古いユーザー ホームの所有者を現在のユーザーに変更する必要があります。
$ sudo chown $(stat -c '%u:%g' ~/) /mnt/oldusername
$ ls -la /mnt
total 12
drwxr-xr-x 3 root root 4096 Jun 29 2016 .
drwxr-xr-x 10 root root 4096 Dec 7 10:42 ..
drwxr-xr-x 3 currentuser currentgroup 4096 Feb 6 2017 oldusername