web-dev-qa-db-ja.com

データ復旧のためのRAID1アレイからのディスクのマウント

Debian 7.5安定版(Wheezy)サーバーで問題が発生しています。現在、レスキューモードで実行されています。

RAID1アレイで実行されている2x 2000 GBHDD

私の当面の優先事項は、特定のディレクトリにアクセスしてバックアップできるようにすることです(/home/servers/)。

問題は、ディスクをマウントするのに苦労していることです。 RAIDアレイを使用して、これをクリーンな方法で実行したいのですが、後ですべてを再インストールしてUbuntuに変更するため、データにアクセスできる限り、何でも問題ありません。

root@rescue:~# fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1  3907029167  1953514583+  ee  GPT
Partition 1 does not start on physical sector boundary.

WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes
255 heads, 63 sectors/track, 243201 cylinders, total 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1  3907029167  1953514583+  ee  GPT
Partition 1 does not start on physical sector boundary.

Disk /dev/md2: 1978.4 GB, 1978380779520 bytes
2 heads, 4 sectors/track, 483003120 cylinders, total 3864024960 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

Disk /dev/md2 doesn't contain a valid partition table

Disk /dev/md1: 21.5 GB, 21474770944 bytes
2 heads, 4 sectors/track, 5242864 cylinders, total 41942912 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

Disk /dev/md1 doesn't contain a valid partition table

最初に私は簡単な方法を試しました:

root@rescue:~# mount /dev/sda1 sda1
mount: unknown filesystem type 'linux_raid_member'

それから私はこのガイドに従おうとしました@ http://blog.sleeplessbeastie.eu/2012/05/08/how-to-mount-software-raid1-member-using-mdadm/

root@rescue:~# mdadm -A -R /dev/md9 /dev/sda1
mdadm: /dev/sda1 is busy - skipping

サーバーを再起動しましたが、/ dev/sda1はまだビジーです。今、私は立ち往生していて、これは本番サーバーです!私を助けてください、私はここから進む方法がわかりません。


更新:

root@rescue:~# cat /proc/mdstat
Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [multipath] [faulty]
md1 : active raid1 sda1[0] sdb1[1]
      20971456 blocks [2/2] [UU]

md2 : active raid1 sda2[0] sdb2[1]
      1932012480 blocks [2/2] [UU]

unused devices: <none>

root@rescue:~# cat /etc/fstab
# /etc/fstab: Information sur les systèmes de fichiers.
#
# <sys.fichiers><pt de montage><type> <options>  <dump> <pass>
proc    /proc   proc    defaults        0       0
4
bockzior

次のことを試してみるとどうなりますか。

mkdir /mnt/md1
mount /dev/md1 /mnt/md1

mkdir /mnt/md2
mount /dev/md2 /mnt/md2

これにより、マウントポイントとして使用する空のフォルダーが作成され、それらを正常にマウントできる場合は、raidファイルシステムのマウントが試行されます(マウントしようとして問題が発生した場合は、エラーが報告され、ドライブはそのままになります)。

これらのコマンドが機能する場合、ファイルは/mnt/md1/servers/または/mnt/md2/servers/のいずれかになります(ほとんどの場合、2番目のコマンド)。


今後の参考のために:

/proc/mdstatは、すべてのアクティブおよび非アクティブRAIDアレイのリストをダンプします。 md1/dev/sda1に基づいて構築された21.5GiBアレイ(/dev/sdb1)と、md2/dev/sda2に基づいて構築された2番目の1.9TiBアレイ(/dev/sdb2)があることを示しています。これは、OS /アプリケーションが小さなパーティション(md1)にあり、すべてのユーザーデータ(/home/*)が別の大きなパーティション(md2)に格納されている、かなり一般的なパーティションスキームです。これにより、大量のユーザーデータを移動することなく、OSパーティションだけをワイプして再インストールすることが簡単になります。

/etc/fstabは、システム内のすべてのデフォルトのマウントポイントを一覧表示します。レスキューシステムで実行しているため、これはここではあまり役に立ちませんが、非レスキューシステムでは、/dev/md1から/へのマッピング、および/dev/md2から/home/へのマッピングのようなものが表示されます(前の段落のパーティション化に関する仮定の場合)本当です)。

システムが起動すると、RAIDアレイが自動検出され、すべてのドライブが見つかると起動します(これが、ドライブがすでに実行されている理由であり、アセンブルしようとしたときにmdadmがビジーエラーで失敗した理由です。 /dev/md9配列を手動で-md1配列はすでにそれを使用していました)。ただし、これはレスキューシステムであるため、/etc/fstabには、/dev/md1/dev/md2をどこかにマウントするようにシステムに指示するマウント情報がありませんでした。これは、上記のコマンドのブロックが手動で実行しようとするものです。

2
Darth Android