NSA325 RAID1 lost

Options

Hello everyone,

I lost my RAID1 on 2 HDD, 4Tb.

  1. Both HDD are 4Tb, WD. I've got red indicator on 2nd (right side) few times, and only one on 1st (left side) during data coping.
  2. About one week ago I switched off NAS and start inspection of each HDD by Victoria program. I connected 2nd faulty and found a lot of BadSectors on it.
  3. I am afraid that 1st HDD has the same problem, I recided to inspect 1st HDD as well but in red-only mode. I found no issues.
  4. I put 1st HDD in NAS on its proper left side and put used clear HDD in right side
  5. When NAS have started I found nothing. No RAID volume. I put all HDD to initial state (see item 1) and start investigation
  6. telnet logs :

~ $ cat /proc/partitions
major minor #blocks name

7 0 143360 loop0
8 0 2930288567 sda
31 0 1024 mtdblock0
8 16 3907017527 sdb
31 1 512 mtdblock1
31 2 512 mtdblock2
31 3 512 mtdblock3
31 4 10240 mtdblock4
31 5 10240 mtdblock5
31 6 48896 mtdblock6
31 7 10240 mtdblock7
31 8 48896 mtdblock8
~ $ cat /proc/mdstat
Personalities : [linear] [raid0] [raid1]
unused devices: <none>
~ # mdadm --examine /dev/sda
mdadm: No md superblock detected on /dev/sda.
~ # mdadm --examine /dev/sd?
mdadm: No md superblock detected on /dev/sda.

So, what is the better way to restore my data?

I suspect that during inspection windows cut my 1st HDD (right) or did other changes.

I am going to restore partitions by testdisk app (risk to crash partitions) or install Linux and mout 1st HDD in it (slow, need to install Linux and copy 3tb of data somewhere). Do you have any idea how to fix it?

Accepted Solution

  • Johnpol
    Johnpol Posts: 8
    Friend Collector First Comment
    edited December 2023 Answer ✓
    Options

    So, I've started to search how to fix the issue, and performed few experiments on Debian and broken (badsectors) HDD. I coudn't get any progress in it, because md0 is not working there

    But I found thread here in Zyxel community how to start GNU Parted 3.0 for my GPT (not MBR) HDD. As far as I alredy knew consequnces (no), I did little fix of backup GPT table

    ~ # parted /dev/sda
    GNU Parted 3.0
    Using /dev/sda
    Welcome to GNU Parted! Type 'help' to view a list of commands.
    (parted) select /dev/sda
    select /dev/sda
    Using /dev/sda
    (parted) print
    print
    Error: The backup GPT table is not at the end of the disk, as it should be.
    This might mean that another operating system believes the disk is smaller.
    Fix, by moving the backup to the end (and removing the old backup)?
    Fix/Ignore/Cancel? Fix
    Fix
    Warning: Not all of the space available to /dev/sda appears to be used, you can
    fix the GPT to use all of the space (an extra 1953460034 blocks) or continue
    with the current setting?
    Fix/Ignore? Fix
    Fix
    Model: 1 WD4000FYYZ-01UL1 (scsi)
    Disk /dev/sda: 4001GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Number  Start   End     Size    File system  Name       Flags
    1 1049kB 512MB 511MB ext2 mitraswap
    2 512MB 4001GB 4000GB eexxtt44

    So after reboot, it started as "Degreded" and all I need is "Rebuilt"

    Special thanx for Mijzelf, he showed me right directions!

«1

All Replies

  • Johnpol
    Options

    at this moment I found that I've got HPA on one or both HDD and LBA is limited 3Tb meanwhile it's 4

  • Mijzelf
    Mijzelf Posts: 2,645  Guru Member
    First Anniversary 10 Comments Friend Collector First Answer
    Options

    ~ $ cat /proc/partitions
    major minor #blocks name

    7 0 143360 loop0
    8 0 2930288567 sda
    31 0 1024 mtdblock0
    8 16 3907017527 sdb

    If disk sda is really 4TB, it's shot. The kernel only detected 2.9TiB, which means the disk reported that. Disk sdb (and also sda) has lost it's partition table. Have a look with 'dmesg', to see if there are I/O errors.

    If there are no I/O errors on sdb, (or a least not in the beginning of the disk) you could try a tool like Testdisk, to see if it can repair your partition table. If there are (a lot of) I/O errors, it is a better idea to first create a bitwise copy on a new disk, using a tool like ddrescue, and try to repair the partition table/raid array/filesystems on the new disk. (Every write action to a disk having I/O problems can make the problems worse).

  • Johnpol
    Options

    Mijzelf, thank you for your qiuck response and really useful advice. I already thought about sector-to-sector copy because I don't want to loose data.

    Disk sdb (and also sda) has lost it's partition table. Have a look with 'dmesg', to see if there are I/O errors.

    I confirm that, testdisk found the issues, but couldn't restore partition because of critical errors. Anyway I am going to write something only when I will have bitwise copy. BTW sda works great as device but has a broblem with partitions. I have one idea, which based on article https://blog.atola.com/restoring-factory-hard-drive-capacity/ by Dmitry Postrigan (HDD expert), at least I have the same simptom - I lost 1Tb when I connect 4Tb HDD to PC with Gigabyte Mainboard.

    Thank you, let's keep in touch

  • Johnpol
    Johnpol Posts: 8
    Friend Collector First Comment
    edited December 2023
    Options

    Hello, Mijzelf and everybody

    So, I was right and it was HPA issue. I did all things by manual above and restored factory HDD capacity. I can't mount it when I boot from Linux emergency CD, but TestDisk shows green partitions

    Now here is a new log when I install left (L,0) HDD and removed faulty right (R,1)

    ~ $ cat /proc/partitions
    major minor #blocks name 7 0 143360 loop0
    8 0 3907018584 sda
    8 1 498688 sda1
    8 2 3906518016 sda2
    31 0 1024 mtdblock0
    31 1 512 mtdblock1
    31 2 512 mtdblock2
    31 3 512 mtdblock3
    31 4 10240 mtdblock4
    31 5 10240 mtdblock5
    31 6 48896 mtdblock6
    31 7 10240 mtdblock7
    31 8 48896 mtdblock8
    9 0 3906516856 md0
    ~ $ cat /proc/mdstat
    Personalities : [linear] [raid0] [raid1]
    md0 : active raid1 sda2[0]
    3906516856 blocks super 1.2 [2/1] [U_] ~ # mdadm --examine /dev/sda?
    mdadm: No md superblock detected on /dev/sda1.
    /dev/sda2:
    Magic : a92b4efc
    Version : 1.2
    Feature Map : 0x0
    Array UUID : 7afec152:2f275434:4ddd592f:ba3ffc9c
    Name : NSA325:0 (local to host NSA325)
    Creation Time : Sat Apr 9 16:25:25 2016
    Raid Level : raid1
    Raid Devices : 2 Avail Dev Size : 3906516992 (3725.55 GiB 4000.27 GB)
    Array Size : 3906516856 (3725.54 GiB 4000.27 GB)
    Used Dev Size : 3906516856 (3725.54 GiB 4000.27 GB)
    Data Offset : 2048 sectors
    Super Offset : 8 sectors
    State : clean
    Device UUID : 8bb39033:1543e6d4:d7eb48b8:fd740f36 Update Time : Mon Dec 4 19:12:24 2023
    Checksum : b6b8ce66 - correct
    Events : 22514 Device Role : Active device 0
    Array State : AA ('A' == active, '.' == missing)
    mdadm: cannot open /dev/sda3: No such device or address

    As for me it looks good but Volume status is down. Capacity=N/A, Command 'Scan' of the volume in Web-interface said 'Failed to scan volume.'

  • Mijzelf
    Mijzelf Posts: 2,645  Guru Member
    First Anniversary 10 Comments Friend Collector First Answer
    Options

    Is the array mounted?

    cat /proc/mounts
    

    If not, can you mount it manually?

    mkdir /tmp/mountpoint
    su
    mount /dev/md0 /tmp/mountpoint
    

  • Johnpol
    Johnpol Posts: 8
    Friend Collector First Comment
    edited December 2023
    Options

    Mijzelf, hello. No it isn't. I mount as you write and now here is tmp point and FS is ext4

    ~ # mount /dev/md0 /tmp/mountpoint
    ~ # cat /proc/mounts

    rootfs / rootfs rw 0 0
    /proc /proc proc rw,relatime 0 0
    /sys /sys sysfs rw,relatime 0 0
    none /proc/bus/usb usbfs rw,relatime 0 0
    devpts /dev/pts devpts rw,relatime,mode=600 0 0
    /dev/mtdblock8 /zyxel/mnt/nand yaffs2 ro,relatime 0 0
    /dev/sda1 /zyxel/mnt/sysdisk ext2 ro,relatime,errors=continue 0 0
    /dev/loop0 /ram_bin ext2 ro,relatime,errors=continue 0 0
    /dev/loop0 /usr ext2 ro,relatime,errors=continue 0 0
    /dev/loop0 /lib/security ext2 ro,relatime,errors=continue 0 0
    /dev/loop0 /lib/modules ext2 ro,relatime,errors=continue 0 0
    /dev/ram0 /tmp/tmpfs tmpfs rw,relatime,size=5120k 0 0
    /dev/ram0 /usr/local/etc tmpfs rw,relatime,size=5120k 0 0
    /dev/ram0 /usr/local/var tmpfs rw,relatime,size=5120k 0 0
    /dev/mtdblock4 /etc/zyxel yaffs2 rw,relatime 0 0
    /dev/mtdblock4 /usr/local/apache/web_framework/data/config yaffs2 rw,relatime 0 0
    /dev/md0 /tmp/mountpoint ext4 rw,relatime,barrier=1,data=ordered 0 0

  • Mijzelf
    Mijzelf Posts: 2,645  Guru Member
    First Anniversary 10 Comments Friend Collector First Answer
    Options

    Well, in that case I don't know why your volume is down. Normally that means that either the raid array could not be assembled, or the filesystem couldn't be mounted. But in your case both can be done. So maybe reboot and then look in kernel log (dmesg) if there is any error which shines a light on this case.

  • Johnpol
    Options

    Hello everybody. I'm still fighting with it… Looks like a problem which I'm going to reslve/

    GPT:Primary header thinks Alt. header is not at the end of the disk.
    GPT:5860577133 != 7814037167
    GPT:Alternate GPT header not at the end of the disk.
    GPT:5860577133 != 7814037167
    GPT: Use GNU Parted to correct GPT errors.
    sda1 sda2
    sd 0:0:0:0: [sda] Sector size 0 reported, assuming 512.
    ehci_marvell ehci_marvell.70059: irq 19, io base 0xf1050100
    sd 0:0:0:0: [sda] Attached SCSI disk
    ehci_marvell ehci_marvell.70059: USB 2.0 started, EHCI 1.00
    usb usb1: configuration #1 chosen from 1 choice

    Just for information

  • Johnpol
    Johnpol Posts: 8
    Friend Collector First Comment
    edited December 2023 Answer ✓
    Options

    So, I've started to search how to fix the issue, and performed few experiments on Debian and broken (badsectors) HDD. I coudn't get any progress in it, because md0 is not working there

    But I found thread here in Zyxel community how to start GNU Parted 3.0 for my GPT (not MBR) HDD. As far as I alredy knew consequnces (no), I did little fix of backup GPT table

    ~ # parted /dev/sda
    GNU Parted 3.0
    Using /dev/sda
    Welcome to GNU Parted! Type 'help' to view a list of commands.
    (parted) select /dev/sda
    select /dev/sda
    Using /dev/sda
    (parted) print
    print
    Error: The backup GPT table is not at the end of the disk, as it should be.
    This might mean that another operating system believes the disk is smaller.
    Fix, by moving the backup to the end (and removing the old backup)?
    Fix/Ignore/Cancel? Fix
    Fix
    Warning: Not all of the space available to /dev/sda appears to be used, you can
    fix the GPT to use all of the space (an extra 1953460034 blocks) or continue
    with the current setting?
    Fix/Ignore? Fix
    Fix
    Model: 1 WD4000FYYZ-01UL1 (scsi)
    Disk /dev/sda: 4001GB
    Sector size (logical/physical): 512B/512B
    Partition Table: gpt
    Number  Start   End     Size    File system  Name       Flags
    1 1049kB 512MB 511MB ext2 mitraswap
    2 512MB 4001GB 4000GB eexxtt44

    So after reboot, it started as "Degreded" and all I need is "Rebuilt"

    Special thanx for Mijzelf, he showed me right directions!

  • Mijzelf
    Mijzelf Posts: 2,645  Guru Member
    First Anniversary 10 Comments Friend Collector First Answer
    Options

    Where does that info come from? That address 7814037167 might point to the sector where the 2nd copy of the GPT should be located. (It's at around 4TB at a sectorsize of 512). But then that 5860577133 is an address which points to the end of a 3TB disk.

    So the GPT interpreter here seems to look at a 3TB disk having a 4TB GPT, or vise versa.

Consumer Product Help Center