Reading Linux Filesystems in Other OSs

Sometimes being able to read a Linux filesystem in another OS is invaluable. You may want to use ext2fs because it provides the best cross-platform support for features such as long filenames or file ownership and permissions. Sometimes being able to retrieve a file from your Linux system on short notice and without rebooting is handy. On rare occasions, you may want to repair a broken Linux configuration file that's preventing the system from booting.

Warning Many non-Linux ext2fs drivers and utilities provide imperfect write support.

Also, some Linux tools are sensitive to end-of-line conventions and will choke if they receive a file with DOS-style end-of-line characters. Therefore, you should use a non-Linux OS for Linux configuration file editing only in emergency situations. Even then, an emergency Linux boot system, as described in Chapter 17, is usually a better choice.

Because Linux's filesystems are available in source code form, they've been ported to a variety of OSs. Two of the recent Linux journaling filesystems, XFS and JFS, originate on other OSs; however, these and the other Linux journaling filesystems are not yet widely available outside of the Linux world. Some tools for accessing ext2fs include:

DOS LTOOLS is a set of utilities for reading and writing ext2fs from DOS. It is available from

http://www.it.fht-esslingen.de/~zimmerma/software/ltools.html. This package is a filesystem access utility, not a full driver; it doesn't provide arbitrary programs with access via a drive letter.

Windows 9x/Me You can use LTOOLS with Windows 9x/Me. Another access tool is Explore2fs

(http://uranus.it.swin.edu.au/~jn/linux/explore2fs.htm), which provides read/write access with a Windows GUI. For more seamless integration, you can use Fsdext2

(http://www.yipton.demon.co.Uk/content.html#FSDEXT2), which enables you to mount an ext2fs partition as a Windows drive, complete with drive letter. The latest stable version, 0.16, is read-only, though.

Windows NT/2000/XP You can use Explore2fs under Windows NT/2000/XP. A true filesystem driver is ext2fsnt (http://www.chat.ru/~ashedel/ext2fsnt/; but this site is slow and hard to reach from the U.S.), and another (ext2fsd) is available from http ://sou rceforge. n et/pro jects/ext2fsd.

OS/2 OS/2 features one of the most complete non-Linux ext2fs drivers, EXT2-OS2 (http://perso.wanadoo.fr/matthieu.willm/ext2-os2/). It provides read/write access and even includes ports of ancillary utilities such as e2fsck and mke2fs. Unfortunately, the latest 2.40 version hasn't been updated since 1997, so it doesn't work with most new ext2fs partitions.

BeOS A read-only ext2fs driver ships with recent versions of BeOS and was once available as an add-on for earlier versions; however, finding it has become difficult due to the decline of BeOS as a viable platform.

FreeBSD FreeBSD ships with a read/write ext2fs driver, but it's not compiled into the kernel by default. To compile it, you must reconfigure and recompile the kernel. Consult FreeBSD documentation for more on this task. The read/write FreeBSD ext2fs support isn't entirely trustworthy, so I recommend using it for read-only access or on a dedicated data transfer partition.

A handful of drivers for other Linux filesystems are available in other OSs. For instance, a BeOS driver for ReiserFS is available from

http://www.bebits.com/app/3214; JFS ships with AIX and some versions of OS/2, although cross-OS differences can complicate its use in this way ; and XFS is IRIX's native filesystem. If you use ext3fs, you may be able to use some ext2fs drivers and utilities, but some of these may disable read/write support.

Some of the older ext2fs drivers don't support the latest versions of ext2fs, as used in 2.4.x or even 2.2.x kernels. If you're planning a multiboot installation and you want to use a shared ext2fs partition, you can still do so, but you must create that partition with an old version of Linux's mke2fs or with another utility. For instance, you could use EXT2-OS2's mke2fs instead of Linux's mke2fs to create the shared filesystem. Both OSs should then be able to access the shared partition.

Team LIB

Team LIB

^ previous

0 0

Post a comment