xfs
[Top] [All Lists]

Anaconda

To: linux-xfs@xxxxxxxxxxx
Subject: Anaconda
From: Ajay Ramaswamy <xfs@xxxxxxxxxxxxx>
Date: Wed, 5 Nov 2003 06:54:49 +0530
Cc: katzj@xxxxxxxxxx
Sender: linux-xfs-bounce@xxxxxxxxxxx
User-agent: KMail/1.5.4
Hello,
I have been watching the progress of anaconda in the fedora core development 
and finally over the last 3 days I have started patching XFS support into it.

I now need some help. As I see it the XFS support in fedora core can be broken 
down into the following components

1. Kernel - DaveJ has said NO :-<  ...
    solution is to make our own.

2. Userspace - SGI provides RPMS they work fine.

3. Comps file add 2 lines one for xfsprogs & the other for xfsdump. I just 
copied and pasted the lines for e2fsprogs and dump and changed the names. 
This time around anaconda does dependency resolvind during the install so no 
need to run /usr/share/comps/getfullcomps.py to make the packages section.

4. Enable XFS as a supported filesystem in anaconda. Trivial patch, this time 
around I added xfs_copy to the rescue image so that one can boot off the cd 
and copy partitions.


--- anaconda-9.0.96/scripts/upd-instroot.orig   2003-10-08 01:33:15.000000000 
+0530
+++ anaconda-9.0.96/scripts/upd-instroot        2003-10-23 20:23:25.000000000 
+0530
@@ -110,7 +110,8 @@
         bzip2-libs dosfstools pciutils reiserfs-utils parted sed
         busybox-anaconda rpm-python booty hdparm lvm beecrypt
         rhpl pyxf86config libxml2 libxml2-python glib2
-        elfutils-libelf bogl-bterm bogl krb5-libs convertdb1 jfsutils"
+        elfutils-libelf bogl-bterm bogl krb5-libs convertdb1 jfsutils
+        xfsprogs xfsdump dmapi libacl libattr attr acl"
 
 if [ $ARCH = i386 -o $ARCH = x86_64 ]; then
     PACKAGES="$PACKAGES kernel-pcmcia-cs kernel-utils"
@@ -156,7 +157,8 @@
            redhat-config-keyboard Xft fontconfig redhat-artwork
            ttfonts-ja ttfonts-zh_TW bitmap-fonts-cjk urw-fonts 
            comps-extras XFree86-libs-data convertdb1
-           vnc-server libjpeg tcp_wrappers redhat-config-date"
+           vnc-server libjpeg tcp_wrappers redhat-config-date
+           xfsprogs xfsdump dmapi libacl libattr attr acl"
 
 #
 # stuff ONLY included for rescue mode
@@ -239,6 +241,9 @@
 $LIBDIR/librt[-.]*
 $LIBDIR/libss*
 $LIBDIR/libtermcap*
+$LIBDIR/libhandle*
+$LIBDIR/libattr*
+$LIBDIR/libdm*
 $LIBDIR/libutil*
 $LIBDIR/libuuid*
 sbin/badblocks
@@ -250,6 +255,8 @@
 sbin/e2label
 sbin/fsck.ext2
 sbin/fsck.ext3
+sbin/fsck.jfs
+sbin/fsck.xfs
 sbin/fdisk
 sbin/hdparm
 sbin/hwclock
@@ -273,6 +280,7 @@
 sbin/mkfs.ext2
 sbin/mkfs.ext3
 sbin/mkfs.jfs
+sbin/mkfs.xfs
 sbin/mkfs.msdos
 sbin/mkfs.vfat
 sbin/mkreiserfs
@@ -290,6 +298,12 @@
 sbin/resize2fs
 sbin/sfdisk
 sbin/tune2fs
+sbin/xfsdump
+sbin/xfsrestore
+sbin/xfs_repair
+usr/sbin/xfs_db
+usr/sbin/xfs_check
+usr/sbin/xfs_copy
 sbin/vgcfgbackup
 sbin/vgcfgrestore
 sbin/vgchange
--- anaconda-9.0.96/scripts/mk-images.i386.orig 2003-10-15 00:28:28.000000000 
+0530
+++ anaconda-9.0.96/scripts/mk-images.i386      2003-10-23 20:15:27.000000000 
+0530
@@ -92,7 +92,7 @@
 IDEMODS="ide-cd"
 SCSIMODS="sd_mod sg sr_mod st"
 
-FSMODS="msdos vfat ext3 reiserfs jfs"
+FSMODS="msdos vfat ext3 reiserfs jfs xfs"
 SECSTAGE="agpgart md raid0 raid1 raid5 lvm-mod $FSMODS $IDEMODS $SCSIMODS 
$LATEUSBMODS st parport_pc parport"
 
 BTERMMODULES="vga16fb"
--- anaconda-9.0.96/fsset.py.orig       2003-10-21 04:38:12.000000000 +0530
+++ anaconda-9.0.96/fsset.py    2003-10-23 20:13:19.000000000 +0530
@@ -51,12 +51,14 @@
 availRaidLevels = ['RAID0', 'RAID1', 'RAID5']
 
 def fileSystemTypeGetDefault():
-    if fileSystemTypeGet('ext3').isSupported():
+    if fileSystemTypeGet('xfs').isSupported():
+        return fileSystemTypeGet('xfs')
+    elif fileSystemTypeGet('ext3').isSupported():
         return fileSystemTypeGet('ext3')
     elif fileSystemTypeGet('ext2').isSupported():
         return fileSystemTypeGet('ext2')
     else:
-        raise ValueError, "You have neither ext3 or ext2 support in your 
kernel!"
+        raise ValueError, "You have neither xfs, ext3 or ext2 support in your 
kernel!"
 
 
 def fileSystemTypeGet(key):
@@ -397,9 +399,7 @@
         self.name = "xfs"
         self.maxSizeMB = 1024 * 1024
         self.maxLabelChars = 12
-        # we don't even have the module, so it won't be mountable... but
-        # just in case
-        self.supported = 0
+        self.supported = 1
         
     def formatDevice(self, entry, progress, chroot='/'):
         devicePath = entry.device.setupDevice(chroot)


<Prev in Thread] Current Thread [Next in Thread>