How to mount SGI XFS on Linux Box -
GiH - 12-17-2020
Hi Guys,
hope you can help. I'm trying to mount old SGI XFS partition on a linux box.
The modern linux xfsprogs dropped the support for V1 inodes/dirs. So i have installed a Debian Lenny on a old PC and tried to mount the partition there w/o success.
Code:
# fdisk -l /dev/sdb
Disk /dev/sdb (SGI disk label): 255 heads, 63 sectors, 587 cylinders
Units = cylinders of 16065 * 512 bytes
----- partitions -----
Pt# Device Info Start End Sectors Id System
1: /dev/sdb1 boot 1 423 6796148 a SGI xfs
2: /dev/sdb2 swap 424 525 1638400 3 SGI raw
9: /dev/sdb3 0 0 4428 0 SGI volhdr
11: /dev/sdb4 0 525 8438976 6 SGI volume
----- Bootinfo -----
Bootfile: /unix
----- Directory Entries -----
0: sgilabel sector 2 size 1024
1: ide sector 5 size 190976
2: sash sector 378 size 190976
Code:
# mount -t xfs /dev/sdb1 /mnt
mount: Function not implemented
Code:
# dmesg | tail
XFS: file system using version 1 directory format
XFS: SB validate failed
Code:
# xfs_repair -nv /dev/sdb1
Phase 1 - find and verify superblock...
- block cache size set to 762152 entries
Phase 2 - using internal log
- scan filesystem freespace and inode maps...
- found root inode chunk
Phase 3 - for each AG...
- scan (but don't clear) agi unlinked lists...
- process known inodes and perform inode discovery...
- agno = 0
- agno = 1
- agno = 2
- agno = 3
- agno = 4
- agno = 5
- agno = 6
- agno = 7
bad key in bmbt root (is 221, would reset to 220) in inode 14777256 data fork
bad nblocks 284 for inode 14777256, would reset to 282
bad nextents 198 for inode 14777256, would reset to 197
- process newly discovered inodes...
Phase 4 - check for duplicate blocks...
- setting up duplicate extent list...
- check for inodes claiming duplicate blocks...
- agno = 0
Memory access failure
What can i do to mount this drive?
RE: How to mount SGI XFS on Linux Box -
jan-jaap - 12-17-2020
I'm pretty sure Linux only ever had support for what IRIX calls the v2 on-disk format. This became the default around IRIX 6.5.14, but it was possible with earlier 6.5.x to create a v2 XFS disk using command line switches. So if your disk was created in IRIX 6.2 or an earlier 6.5 version, chances are Linux won't read it.
Linux XFS changed the on-disk format a couple more times, I believe they're up to v5 now. I don't know what was removed over the years from the Linux XFS code.
RE: How to mount SGI XFS on Linux Box -
weblacky - 12-18-2020
It's worse than that and this has been covered by me on the forum. Irix 6.5.4 < XFS V1, 6.5.5 > XFS v2. Original Linux support, early 2000's, had it all, when SGI retired Irix they REMOVED ALL LINUX SUPPORT for XFS before v3. So current gen linux CANNOT READ Irix XFS filesystems....PERIOD. Yeah, caps because I'm pissed! I had a data recovery job to do, that I still need to do, because Linux doesn't read this stuff anymore.
You have two options....use an SGI or run a very old (like Knoppix?) Live CD from like 2003-2005? That should have it...I think. Anything recent...nope. I have zero idea why it was removed but yeah. Currently only XFS v3 and higher. Tested in late 2019...sorry to be the messenger on this one. We're all pissed because occasionally people need data recovery and it USED TO BE SUPPORTED, now no longer, sucks. Current Linux can still read SGI volume labels and whatnot. SGI Irix doesn't do diskimage loopback mounting either...so double whammy!
RE: How to mount SGI XFS on Linux Box -
Raion - 12-18-2020
To make things worse, there's the Linux/GPL XFS implementation, and IRIX/XFS implementations. That's it. No BSD native implementations.
RE: How to mount SGI XFS on Linux Box -
GiH - 12-18-2020
Quote:So if your disk was created in IRIX 6.2 or an earlier 6.5 version, chances are Linux won't read it.
Exactly. I have 6.2
Quote:run a very old (like Knoppix?) Live CD from like 2003-2005
This a KNOPPIX 3.x. It was a challenge to find it. I found a fork of it
https://archiveos.org/knoppix-mib/ It won't boot on my PC.
It's like a chinese snake eating itself.
I think the best way to put another hard drive in Indygo 2 and install IRIX 6.5 on it then plug the old one as a second drive and mount it.
I will let you know how it goes.