XFS on ARM-based Linux on USR8700 NAS appliance w/ mdadm/RAID5
Harry Mangalam
harry.mangalam at uci.edu
Mon Feb 23 14:43:33 CST 2009
Here's an unusual (long) tale of woe.
We had a USRobotics 8700 NAS appliance with 4 SATA disks in RAID5:
<http://www.usr.com/support/product-template.asp?prod=8700>
which was a fine (if crude) ARM-based Linux NAS until it stroked out
at some point, leaving us with a degraded RAID5 and comatose NAS
device.
We'd like to get the files back of course and I've moved the disks to
a Linux PC, hooked them up to a cheap Silicon Image 4x SATA
controller and brought up the whole frankenmess with mdadm. It
reported a clean but degraded array.
(much mdadm stuff deleted)
Shortening this up considerably, I was able to get the RAID5
reconstituted with a new disk, but was not so fortunate with the
filesystem.
The docs and files on the USR web site imply that the native
filesystem was originally XFS, but when I try to mount it as such, I
can't:
mount -vvv -t xfs /dev/md1 /mnt
mount: fstab path: "/etc/fstab"
mount: lock path: "/etc/mtab~"
mount: temp path: "/etc/mtab.tmp"
mount: no LABEL=, no UUID=, going to mount /dev/md1 by path
mount: spec: "/dev/md1"
mount: node: "/mnt"
mount: types: "xfs"
mount: opts: "(null)"
mount: mount(2) syscall: source: "/dev/md1", target: "/mnt",
filesystemtype: "xfs", mountflags: -1058209792, data: (null)
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
and when I check dmesg:
[ 245.008000] SGI XFS with ACLs, security attributes, realtime, large
block numbers, no debug enabled
[ 245.020000] SGI XFS Quota Management subsystem
[ 245.020000] XFS: SB read failed
[ 327.696000] md: md0 stopped.
[ 327.696000] md: unbind<sdc1>
[ 327.696000] md: export_rdev(sdc1)
[ 327.696000] md: unbind<sde1>
[ 327.696000] md: export_rdev(sde1)
[ 327.696000] md: unbind<sdd1>
[ 327.696000] md: export_rdev(sdd1)
[ 439.660000] XFS: bad magic number
[ 439.660000] XFS: SB validate failed
repeated attempts repeat the last 2 lines above. This implies that
the superblock is bad and xfs_repair also reports that:
xfs_repair /dev/md1
- creating 2 worker thread(s)
Phase 1 - find and verify superblock...
bad primary superblock - bad magic number !!!
attempting to find secondary superblock...
...... <lots of ...> ...
..found candidate secondary superblock...
unable to verify superblock, continuing...
<lots of ...> ...
...found candidate secondary superblock...
unable to verify superblock, continuing...
<lots of ...> ...
So my question is what should I do now? Neil Brown (mdadm author)
suggested that Dave Chinner had investigated this in some other cases
and had found that the Vendors of a number of such ARM-based NAS
appliances had mucked up the implementation of XFS such that this
situation is just a no-win.
I did find a few reports of people who had similar ARM-based XFS
filesystems with similar problems but could not find any successful
resolution. The vendor has not responded to emails about this.
Any suggestions (other than restore from (nonexistant) backups)?
Harry
--
Harry Mangalam - Research Computing, NACS, E2148, Engineering Gateway,
UC Irvine 92697 949 824-0084(o), 949 285-4487(c)
---
Good judgment comes from experience;
Experience comes from bad judgment. [F. Brooks.]
More information about the xfs
mailing list