& xfsTemplate,top=>1,side=>1 &>
You must take the following issues into account when you create and administer XFS filesystems with XFS for Linux Release 1.0.
Currently XFS is limited to filesystems smaller that 2 terabytes. This is due to limitations in the Linux block device I/O layers.
The XFS team is working with Linux developers to improve the Linux I/O layers. The improvements will include the support necessary to exceed 2 Tbyte filesystems.
Due to known problems with later versions of gcc, gcc version 2.91.66 (aka egcs-1.1.2) is recommended when compiling XFS and the associated kernel. This is the default compiler on Red Hat Linux 6.2 systems, and is provided as "kgcc" for Red Hat Linux 7.0 and higher (see the next item for more information). Other distributions may be using a later version. The easiest way to check what version is in use is by running gcc -v.
gcc versions 2.95.2/3/4 may work when compiling the kernel but have not been extensively tested.
The version of glibc primarily used for development and testing has been 2.1.3. Earlier versions should be considered "status unknown".
Red Hat Linux 7.0 ships with 2 compilers, "gcc" and "kgcc." kgcc is essentially an older gcc (egcs-2.91.66) which should be used to compile the kernel. To use this compiler, comment out the following line in the top level kernel makefile:
CC = $(CROSS_COMPILE)gcc -V egcs-2.91.66And uncomment the following line:
CC = $(CROSS_COMPILE)kgcc
A preliminary set of system calls to support extended attributes has been added. This interface will most likely change as a consensus on appropriate interfaces is formed in the Linux community.
The extended attribute system call is attrctl(2). Library calls implement the various extented attribute operations: attr_get(3), attr_getf(3), attr_list(3), attr_listf(3), attr_multi(3), attr_multif(3), attr_remove(3), attr_removef(3), attr_set(3), attr_setf(3). Extended attributes can be manipulated using the command attr(1). See the associated man pages for details.
The access control list system calls are acl_get(2) and acl_set(2). Library calls implement many of the main Posix 1003.1e proposed functions, such as: acl_copy_ext(3), acl_delete_def_file(3), acl_dup(3), acl_free(3), acl_from_text(3), acl_get_fd(3), acl_get_file(3), acl_set_fd(3), acl_set_file(3), acl_size(3), acl_valid(3). Access control lists can be manipulated using the command chacl(1). See the associated man pages for details.
User quotas and group quotas are now functional.
The Linux version of dump and restore can be used to migrate data from a non-XFS volume to an XFS volume. Linux dump, however, cannot be used to dump an XFS volume as it uses ext2 library functions.
xfsdump and xfsrestore can be used to migrate an IRIX XFS volume to a Linux XFS volume and vice versa.
xfsdump and xfsrestore should be used for backup and restore of XFS volumes. xfsdump and xfsrestore currently support file extents but not extended attributes. DMAPI is supported in XFS Linux, but a DMAPI-managed filesystem cannot be moved between IRIX and Linux, by any means including dump/restore. xfsdump does not currently support dumping of quota information.
XFS supports two directory formats, referred to as version 1 and version 2. For Linux XFS, the version 2 directory format is strongly recommended. Due to the way glibc getdents interfaces with the kernel implementation, XFS version 1 directories can exhibit problems, usually missing directory entries. By default mkfs will create version 2 directory format filesystems.
For the current release of XFS, the filesystem block size is limited to the size of a memory page. On a x86 architecture that size is 4 Kbytes.
Note that files systems created on an IRIX/MIPS platform must have been created with a 4 Kbyte block size in order to be mounted on a ia32 Linux system. File systems not created with a 4k block will fail to mount with an error indicating the mis-match.
The unwritten extent feature is not yet operational and should be turned off when mkfs is executed, using the following argument to the mkfs command:
-d unwritten=0
Currently this is the default setting for mkfs.xfs on Linux.
Realtime volumes are not implemented in XFS and should not be used.
It is possible to remount an XFS filesystem to change its permissions from read/write to read-only. This support is needed for XFS to function as a root filesystem.
Note: This operation will most likely result in a hung file system if performed on a busy partition.
XFS 1.0 supports MD RAID0, RAID1 and RAID5. RAID1 and RAID5 may perform slightly worse with XFS than with ext2. This will be addressed in a future release.
LVM snapshots of XFS filesystems are not currently supported.
In general we do not foresee the need to run fsr on system partitions such as /, /boot and /usr as these will in general not suffer from fragmentation. There are also issues with defragmenting the files lilo uses to boot your system. Should these files be moved by fsr then you must rerun lilo before you reboot or you may have an unbootable system.