The Ext3 File System


The ext3, or third extended, file system is the default file system used on Red Hat Linux 8.0. ext3 has been the default file system on all Red Hat Linux versions since version 7.2. ext3 replaces the venerable ext2 file system. Data is easily converted between the two file systems, and ext3 adds several new features, most notably journaling, which permits better maintenance of data integrity.

Features of ext3

The ext3 file system is essentially an enhanced version of the ext2 file system. These improvements provide the following advantages.

Availability

After an unexpected power failure or system crash (also called an unclean system shutdown), each mounted ext2 file system on the machine must be checked for consistency by the e2fsck program. This is a time-consuming process that can delay system boot time significantly, especially with large volumes containing a large number of files. During this time, any data on the volumes is unreachable.

The journaling provided by the ext3 file system means that this sort of file system check is no longer necessary after an unclean system shutdown. The only time a consistency check occurs using ext3 is in certain rare hardware-failure cases, such as hard-drive failures. The time to recover an ext3 file system after an unclean system shutdown does not depend on the size of the file system or the number of files; rather, it depends on the size of the journal used to maintain consistency. The default journal size takes about a second to recover, depending on the speed of the hardware.

Data Integrity

The ext3 file system provides stronger data integrity in the event that an unclean system shutdown occurs. The ext3 file system allows you to choose the type and level of protection that your data receives. By default, Red Hat Linux 8.0 configures ext3 volumes to keep a high level of data consistency with regard to the state of the file system.

Speed

Despite writing some data more than once, ext3 has a higher throughput in most cases than ext2 because ext3’s journaling optimizes hard-drive head motion. You can choose from three journaling modes to optimize speed, but doing so means tradeoffs with regard to data integrity.

Easy Transition

It is easy to change from ext2 to ext3 and gain the benefits of a robust journaling file system without reformatting. See the “Converting to an Ext3 File System” section of this chapter for more on how to perform this task. If you perform a fresh installation of Red Hat Linux 8.0, the default file system assigned to the system’s Linux partitions is ext3. If you upgrade from a version of Red Hat Linux that uses ext2 partitions, the installation program allows you to convert these partitions to ext3 partitions without losing data. See the section “Converting to an Ext3 File System.”

The following sections walk you through the steps for creating and tuning ext3 partitions. If you have ext2 partitions and are running Red Hat Linux 8.0, you can skip the partitioning and formatting sections below and go directly to the next section.

Creating an Ext3 File System

After installation, it is sometimes necessary to create a new ext3 file system. For example, if you add a new disk drive to a Red Hat Linux system, you may want to partition the drive and use the ext3 file system. The steps for creating an ext3 file system are as follows:

  1. Create the partition using parted or fdisk.

  2. Format the partition with the ext3 file system using mkfs.

  3. Label the partition using e2label.

  4. Create the mount point.

  5. Add the partition to /etc/fstab.

    Cross-Reference

    Refer to Appendix A for information on performing these steps.

Converting to an Ext3 File System

The tune2fs program can add a journal to an existing ext2 file system without altering the data already on the partition. If the file system is already mounted while it is being transitioned, the journal will be visible as the file .journal in the root directory of the file system. If the file system is not mounted, the journal will be hidden and will not appear in the file system at all.

To convert an ext2 file system to ext3, log in as root and type:

/sbin/tune2fs -j /dev/hdbX 

In the above command, replace /dev/hdb with the device name and X with the partition number. After doing this, be certain to change the partition type from ext2 to ext3 in /etc/fstab. If you are transitioning your root file system, you will have to use an initrd image (or RAM disk) to boot. To create this, run the mkinitrd program. For information on using the mkinitrd command, type man mkinitrd. Also make sure your GRUB or LILO configuration loads the initrd image. If you fail to make this change, the system will still boot, but the file system will be mounted as ext2 instead of ext3.

Reverting to an Ext2 File System

Because ext3 is relatively new, some disk utilities do not yet support it. For example, you may need to shrink a partition with resize2fs, which does not yet support ext3. In this situation, it may be necessary to temporarily revert a file system to ext2. To revert a partition, you must first unmount the partition by logging in as root and typing:

umount /dev/hdbX 

In the above command, replace /dev/hdb with the device name and X with the partition number. For the remainder of this section, the sample commands will use hdb1 for these values. Next, change the file system type to ext2 by typing the following command as root:

/sbin/tune2fs -O ^has_journal /dev/hdb1

Check the partition for errors by typing the following command as root:

/sbin/e2fsck -y /dev/hdb1

Then mount the partition again as an ext2 file system by typing:

mount -t ext2 /dev/hdb1 /mount/point 

In the above command, replace /mount/point with the mount point of the partition. Next, remove the .journal file at the root level of the partition by changing to the directory where it is mounted and typing:

rm -f .journal

You now have an ext2 partition. If you permanently change the partition to ext2, remember to update the /etc/fstab file.




Official Red Hat Linux Administrator's Guide
Official Red Hat Linux Administrators Guide
ISBN: 0764516957
EAN: 2147483647
Year: 2002
Pages: 278
Authors: Red Hat Inc

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net