アップグレード後にRAIDをマウントできません。

アップグレード後にRAIDをマウントできません。

ボックスを14.04にアップグレードしたところ、起動時にRAIDデバイスを自動的にマウントできないというメッセージが表示され、スキップして起動後に処理することにしました。今すぐ起動すると、A mount -aは次のようになります。

$ sudo mount -a
[sudo] password for reg: 
mount: wrong fs type, bad option, bad superblock on /dev/md0,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

mount: wrong fs type, bad option, bad superblock on /dev/md1,
       missing codepage or helper program, or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

$

私のmdadm.confは次のようになります。

$ cat /etc/mdadm/mdadm.conf
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default (built-in), scan all partitions (/proc/partitions) and all
# containers for MD superblocks. alternatively, specify devices to scan, using
# wildcards if desired.
#DEVICE partitions containers

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR root

# next line added by reg 09/01/2009
ARRAY /dev/md0 devices=/dev/sdb6,/dev/sdc6
ARRAY /dev/md1 devices=/dev/sdb7,/dev/sdc7
#ARRAY /dev/md2 devices=/dev/sdb8,/dev/sdc8

# definitions of existing MD arrays

# This file was auto-generated on Tue, 08 May 2012 18:26:22 -0700
# by mkconf $Id$
$

私のすべてのドライブが正しく表示され、公正であることを確認するためにgpartedをすばやく実行しましたが、私のパーティション6と7がドライブsdbとsdcに正しく表示されていることを確認しました。また、mdadmが正しく実行されているようです。

$ ps ax | grep mdadm
 1945 ?        Ss     0:00 /sbin/mdadm --monitor --pid-file /run/mdadm/monitor.pid --daemonise --scan --syslog
 7869 pts/8    S+     0:00 grep --color=auto mdadm
$

ここで私に何の問題があるのか​​よく理解できません。

$ dmesg | tail
[ 1437.716819] EXT4-fs (md0): bad geometry: block count 61034935 exceeds size of device (61034912 blocks)
[ 1437.717197] EXT4-fs (md1): mounting ext3 file system using the ext4 subsystem
[ 1437.717422] EXT4-fs (md1): bad geometry: block count 59585077 exceeds size of device (59585056 blocks)
[ 3030.508560] init: nvidia-persistenced main process (21110) terminated with status 1
[ 3757.003367] current rate 16719823 is different from the runtime rate 48000
[ 3757.006356] current rate 10357448 is different from the runtime rate 48000
[ 3850.605129] EXT4-fs (md0): mounting ext3 file system using the ext4 subsystem
[ 3850.605299] EXT4-fs (md0): bad geometry: block count 61034935 exceeds size of device (61034912 blocks)
[ 3850.605585] EXT4-fs (md1): mounting ext3 file system using the ext4 subsystem
[ 3850.605782] EXT4-fs (md1): bad geometry: block count 59585077 exceeds size of device (59585056 blocks)
reg@regDesktopHome:~/semios$

システムログには何も言わない

$ sudo mdadm --detail --scan
mdadm: cannot open /dev/md/127_0: No such file or directory
ARRAY /dev/md1 metadata=0.90 UUID=0abe503f:401d8d09:cd707cc0:bc3f8165
ARRAY /dev/md0 metadata=0.90 UUID=91e560f1:4e51d8eb:cd707cc0:bc3f8165
reg@regDesktopHome:~/semios$

編集1

$ cat /proc/mdstat
Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md0 : active raid1 sdb6[1] sdc6[0]
      244139648 blocks [2/2] [UU]

md1 : active raid1 sdb7[1] sdc7[0]
      238340224 blocks [2/2] [UU]

md127 : active raid1 sdb3[1] sdc3[0]
      390628416 blocks [2/2] [UU]

unused devices: <none>
$ 

$ sudo mdadm --detail /dev/md0
/dev/md0:
        Version : 0.90
  Creation Time : Tue Sep  1 19:15:33 2009
     Raid Level : raid1
     Array Size : 244139648 (232.83 GiB 250.00 GB)
  Used Dev Size : 244139648 (232.83 GiB 250.00 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 0
    Persistence : Superblock is persistent

    Update Time : Sun May  4 21:32:24 2014
          State : clean 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : 91e560f1:4e51d8eb:cd707cc0:bc3f8165
         Events : 0.75007

    Number   Major   Minor   RaidDevice State
       0       8       38        0      active sync   /dev/sdc6
       1       8       22        1      active sync   /dev/sdb6
reg@regDesktopHome:~/semios$ sudo mdadm --detail /dev/md1
/dev/md1:
        Version : 0.90
  Creation Time : Tue Sep  8 21:19:15 2009
     Raid Level : raid1
     Array Size : 238340224 (227.30 GiB 244.06 GB)
  Used Dev Size : 238340224 (227.30 GiB 244.06 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 1
    Persistence : Superblock is persistent

    Update Time : Sun May  4 21:32:24 2014
          State : clean 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

           UUID : 0abe503f:401d8d09:cd707cc0:bc3f8165
         Events : 0.3973383

    Number   Major   Minor   RaidDevice State
       0       8       39        0      active sync   /dev/sdc7
       1       8       23        1      active sync   /dev/sdb7
$ 

$ sudo mdadm --examine /dev/sdb6
/dev/sdb6:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 91e560f1:4e51d8eb:cd707cc0:bc3f8165
  Creation Time : Tue Sep  1 19:15:33 2009
     Raid Level : raid1
  Used Dev Size : 244139648 (232.83 GiB 250.00 GB)
     Array Size : 244139648 (232.83 GiB 250.00 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 0

    Update Time : Sun May  4 21:32:24 2014
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0
       Checksum : bfa701ff - correct
         Events : 75007


      Number   Major   Minor   RaidDevice State
this     1       8       22        1      active sync   /dev/sdb6

   0     0       8       38        0      active sync   /dev/sdc6
   1     1       8       22        1      active sync   /dev/sdb6
reg@regDesktopHome:~/semios$ sudo mdadm --examine /dev/sdb7
/dev/sdb7:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 0abe503f:401d8d09:cd707cc0:bc3f8165
  Creation Time : Tue Sep  8 21:19:15 2009
     Raid Level : raid1
  Used Dev Size : 238340224 (227.30 GiB 244.06 GB)
     Array Size : 238340224 (227.30 GiB 244.06 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 1

    Update Time : Sun May  4 21:32:24 2014
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0
       Checksum : 2a7376fd - correct
         Events : 3973383


      Number   Major   Minor   RaidDevice State
this     1       8       23        1      active sync   /dev/sdb7

   0     0       8       39        0      active sync   /dev/sdc7
   1     1       8       23        1      active sync   /dev/sdb7
reg@regDesktopHome:~/semios$ sudo mdadm --examine /dev/sdc6
/dev/sdc6:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 91e560f1:4e51d8eb:cd707cc0:bc3f8165
  Creation Time : Tue Sep  1 19:15:33 2009
     Raid Level : raid1
  Used Dev Size : 244139648 (232.83 GiB 250.00 GB)
     Array Size : 244139648 (232.83 GiB 250.00 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 0

    Update Time : Sun May  4 21:32:24 2014
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0
       Checksum : bfa7020d - correct
         Events : 75007


      Number   Major   Minor   RaidDevice State
this     0       8       38        0      active sync   /dev/sdc6

   0     0       8       38        0      active sync   /dev/sdc6
   1     1       8       22        1      active sync   /dev/sdb6
reg@regDesktopHome:~/semios$ sudo mdadm --examine /dev/sdc7
/dev/sdc7:
          Magic : a92b4efc
        Version : 0.90.00
           UUID : 0abe503f:401d8d09:cd707cc0:bc3f8165
  Creation Time : Tue Sep  8 21:19:15 2009
     Raid Level : raid1
  Used Dev Size : 238340224 (227.30 GiB 244.06 GB)
     Array Size : 238340224 (227.30 GiB 244.06 GB)
   Raid Devices : 2
  Total Devices : 2
Preferred Minor : 1

    Update Time : Sun May  4 21:32:24 2014
          State : clean
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0
       Checksum : 2a73770b - correct
         Events : 3973383


      Number   Major   Minor   RaidDevice State
this     0       8       39        0      active sync   /dev/sdc7

   0     0       8       39        0      active sync   /dev/sdc7
   1     1       8       23        1      active sync   /dev/sdb7
$ 

$ sudo parted /dev/sdb unit mib print free
Model: ATA ST31000528AS (scsi)
Disk /dev/sdb: 953870MiB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start      End        Size       Type      File system     Flags
 1      0.03MiB    95370MiB   95370MiB   primary   ext4            boot
 3      95370MiB   476843MiB  381473MiB  primary   ext4
 2      476843MiB  953859MiB  477016MiB  extended
 6      476843MiB  715261MiB  238418MiB  logical   ext3
 7      715261MiB  948015MiB  232754MiB  logical   ext3
 5      948015MiB  953859MiB  5844MiB    logical   linux-swap(v1)
        953859MiB  953870MiB  10.3MiB              Free Space

reg@regDesktopHome:~/semios$ sudo parted /dev/sdc unit mib print free
Model: ATA ST31000528AS (scsi)
Disk /dev/sdc: 953870MiB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start      End        Size       Type      File system     Flags
 1      0.03MiB    95370MiB   95370MiB   primary   ext4            boot
 3      95370MiB   476843MiB  381473MiB  primary   ext4
 2      476843MiB  953859MiB  477016MiB  extended
 6      476843MiB  715261MiB  238418MiB  logical   ext3
 7      715261MiB  948015MiB  232754MiB  logical   ext3
 5      948015MiB  953859MiB  5844MiB    logical   linux-swap(v1)
        953859MiB  953870MiB  10.3MiB              Free Space

$

編集2

提案された方法を試しましたが、ファイルシステムはマウントされません。

# sudo losetup --find --show --read-only /dev/sdc7 /dev/loop0
# mount -o ro /dev/loop0 /mnt/loop0 mount: unknown filesystem type 'linux_raid_member'
#

編集3 file -s /dev/loop0私に以下を返します:

$ sudo file -s /dev/loop0
[sudo] password for reg: 
/dev/loop0: Linux rev 1.0 ext3 filesystem data, UUID=b2d66029-eeb9-4e4a-952c-0a3bd0696159 (large files)

答え1

誤ったジオメトリ:ブロック数61034935がデバイスサイズ(61034912ブロック)を超えています。

これらのエラーメッセージによれば、RAIDは数ブロック縮小されているようです。0.90メタデータがパーティションの末尾にあり、ext3メタデータが先頭にあるため、パーティションサイズ自体を変更できないことを考慮すると、これは珍しい問題です。どちらの方法でもメタデータが失われる可能性があります。

どのようにこれが起こるのか想像できません。このように意図的に問題を解決するには、resize2fsRAID自体の代わりにメンバーディスクで実行したり、最初にRAIDを追加したりしないなどの作業を実行する必要があります。それは後で考えた考えです。

それとraidメタデータはディスクの末尾にあるため、両方RAID1のディスクのいずれかを直接マウントできる必要があります。これをテストする簡単な方法は、読み取り専用ループデバイスを使用することです。ファイルシステムに欠陥がある/汚れたスーパーブロックがない場合は、次のことを行う必要があります。

# losetup --find --show --read-only /dev/sdc7
/dev/loop4
# mount -o ro /dev/loop4 /mnt/test

正常に動作し、ファイルが破損していない場合は、今このバックアップをお勧めします。

ファイルシステムfsckも必要な場合、最も安全な方法はddイメージを使用してパーティション全体をコピーすることです。fsck

# dd if=/dev/sdc7 of=/mnt/ext/sdc7.img bs=1M
# losetup --find --show /mnt/ext/sdc7.img
/dev/loop5
# fsck /dev/loop5
# mount /dev/loop5 /mnt/test

機能している場合は、次の手順を使用してRAIDを回復できます。

  1. 別のドライブを取り外します。

    # mdadm /dev/md0 --fail /dev/sdb7
    # mdadm /dev/md0 --remove /dev/sdb7
    
  2. 残りのドライブのファイルシステムを回復し、サイズを変更します。チャンクサイズは、提供されたエラーメッセージから取得されます。

    # fsck /dev/sdc7
    # resize2fs /dev/sdc7 61034912
    # sync
    
  3. 動作するかテスト

    # echo 3 > /proc/sys/vm/drop_caches
    # mount /dev/md0 /mnt/somewhere
    
  4. 他のドライブの読み取りと再同期

    # mdadm /dev/md0 --add /dev/sdb7
    

1.2ただし、現在のメタデータ()を使用して最初からRAIDを再作成し、ファイルシステムを再作成し、ファイルを再コピーすることを検討できます。

関連情報