Наши партнеры

Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Next Previous Contents

3. Compatibility with other operating systems.


3.1 Can Linux share my disk with DOS? OS/2? 386BSD? Win95?

Yes. Linux uses the standard MS-DOS partitioning scheme, so it can share your disk with other operating systems. Note, however, that many of these other operating systems are rather picky. DOS's FDISK.EXE and FORMAT.EXE, for example, can overwrite data in a Linux partition, because they sometimes incorrectly use partition data from the partition's boot sector rather than the partition table.

In order to prevent programs like these from doing this, it is a good idea to zero out--under Linux--the start of a partition you created, before you use MS-DOS--or whatever--to format it. Type:

$ dd if=/dev/zero of=/dev/hdXY bs=512 count=1
where hdXY is the relevant partition; e.g., hda1 for the first partition of the first (IDE) disk.

Linux can read and write the files on your DOS and OS/2 FAT partitions and floppies using either the DOS file system type built into the kernel or mtools. There is kernel support for the VFAT file system used by Windows 9x and Windows NT.

For information about FAT32 partition support, see http://bmrc.berkeley.edu/people/chaffee/fat32.html.

`` What software does Linux support? '' for details and status of the emulators for DOS, MS Windows, and System V programs.

See, `` Can Linux access Amiga file systems? '' and, `` Can Linux access Mac file systems? '' `` Can Linux access BSD, SysV, etc., UFS? '' `` Can Linux access SMB file systems? ''

There are said to be NTFS drivers under development, which should support compression as a standard feature.

There is also supposedly a Win95 driver that allows read-only access to Linux file systems, although I don't know the URL. Call Microsoft technical support.


3.2 How do I access files on my DOS partition or floppy?

Use the DOS file system; i.e., type, for example:

$ mkdir /dos
$ mount -t msdos -o conv=text,umask=022,uid=100,gid=100 /dev/hda3 /dos
If it's a floppy, don't forget to umount it before ejecting it!

You can use the conv=text/binary/auto, umask=nnn, uid=nnn, and gid=nnn options to control the automatic line-ending conversion, permissions and ownerships of the files in the DOS file system as they appear under Linux. If you mount your DOS file system by putting it in your /etc/fstab, you can record the options (comma-separated) there, instead of defaults.

Alternatively, you can use mtools, available in both binary and source form on the FTP sites--`` Where can I get Linux material by FTP? ''.

A kernel patch (known as the fd-patches) is available which allows floppies with nonstandard numbers of tracks and/or sectors to be used; this patch is included in the 1.1 alpha testing kernel series.


3.3 Does Linux support compressed ext2 file systems?

As of recently, it does. Information about them is located at http://www.netspace.net.au/~reiter/e2compr/.

There is also a Web site for the e2compr patches. The code is still experimental and consists of patches for the 2.0 and 2.1 kernels. For more information about the project, including the latest patches and the address of the mailing list, look up the URL at http://debs.fuller.edu/e2compr/ This is according to Roderich Schupp, who adds somewhat cryptically, "There is a program called Zlibc ..."

Zlibc is actually a program that allows existing applications to read compressed (GNU gzip'ed) files as if they were not compressed. Look on sunsite.unc.edu in /pub/Linux/libs. The author is Alain.Knuff@imag.fr.

There is also a compressing block device driver that can provide on the fly disk compression in the kernel. It is called, ``DouBle'' and is written by Jean-Marc Verbavatz. The source-only distribution is located on sunsite.unc.edu in the directory /pub/Linux/patches/diskdrives. This driver compresses inodes and directory information as well as files, so any corruption of the file system is likely to be serious.

There is also a package called tcx (Transparently Compressed Executables) which allows you to keep infrequently compressed executables compressed and only uncompress them temporarily when in use. It is located on sunsite.unc.edu in the directory /pub/Linux/utils/compress/.


3.4 Can I use my Stacked/DBLSPC/etc. DOS drive?

Until recently, not very easily. You can access DOS 6.X volumes from the DOS emulator (`` What software does Linux support? ''), but it's harder than accessing a normal DOS volume via the DOS kernel option, a module, or mtools.

There is a recently added package, dmsdos, which reads and writes compressed file systems like DoubleSpace/DriveSpace in MS-DOS 6.x and Win95, as well as Stacker versions 3 and 4. It is available in the archives on ftp://sunsite.unc.edu/pub/Linux/system/Filesystem/dosfs.

There is a module available for the Linux kernel which can do read-only access of the compressed volume. Look in sunsite.unc.edu/pub/Linux/system/filesystems/dosfs for this package.


3.5 Can I access OS/2 HPFS partitions from Linux?

Yes, but Linux access to HPFS partitions is read-only. HPFS file system access is available as an option when compiling the kernel or as a module. See the Documentation/filesystems/hpfs.txt file in the kernel source distribution. `` How do I upgrade/recompile my kernel? ''). Then you can mount HPFS partition, using, for example:

$ mkdir /hpfs
$ mount -t hpfs /dev/hda5 /hpfs

3.6 Can Linux access Amiga file systems?

The Linux kernel has support for the Amiga Fast File System (AFFS) version 1.3 and later, both as a compile-time option and as a module. The file Documentation/filesystems/affs.txt in the Linux kernel source distribution has more information.

See `` How do I upgrade/recompile my kernel? ''.

Linux supports AFFS hard-drive partitions only, though: floppy access is not supported due to incompatibilities between Amiga floppy controllers, and PC and workstation controllers. The AFFS driver can also mount disk partitions used by the Un*x Amiga Emulator, by Bernd Schmidt.


3.7 Can Linux access BSD, SysV, etc. UFS?

Recent kernels can mount (read only) the UFS file system used by System V; Coherent; Xenix; BSD and derivatives like SunOS, FreeBSD, NetBSD, and NeXTstep. UFS support is available as a kernel compile-time option and a module.

See `` How do I upgrade/recompile my kernel? ''.


3.8 Can Linux access SMB file systems?

Linux supports read/write access of Windows for Workgroups and Windows NT SMB volumes. See the file Documentation/filesystems/smbfs.txt of the Linux kernel source distribution, and `` How do I upgrade/recompile my kernel? '' in this FAQ.

There is also a suite of programs called Samba which provide support for WfW networked file systems (provided they're for TCP/IP). Information is available in the README file at sunsite.unc.edu/pub/Linux/system/network/samba.

There is a SMB web site at samba.canberra.edu.au/pub/samba.


3.9 Can Linux access Mac file systems?

There is a set of user-level programs that read and write the Macintosh Hierarchical File System (HFS). It is available at sunsite.unc.edu/pub/Linux/utils/disk-management.


3.10 Can I run Microsoft Windows programs under Linux?

WINE, a MS Windows emulator for Linux, is still not ready for general distribution. If you want to contribute to its development, look for the status reports in the comp.emulators.ms-windows.wine newsgroup.

A commercial, working product known as WABI is said to provide full MS Windows emulation under Linux. It was written by Sunsoft, Inc. The Linux version is available from Caldera.

There is also a FAQ, compiled by P. David Gardner, at sunsite.unc.edu/pub/Linux/docs/faqs/Wine-FAQ/.

In the meantime, if you need to run MS Windows programs, the best bet--seriously--is to reboot. LILO, the Linux bootloader, can boot one of several operating systems from a menu. See the LILO documentation for details.

Also, LOADLIN (a DOS program to load a Linux, or other OS, kernel is a handy way to make Linux co-exist with DOS. LOADLIN is particularly handy when you want to install Linux on a 3rd or 4th drive on a system (or when you're adding a SCSI drive to a system with an existing IDE).

In these cases, it is common for LILO's boot load to be unable to find or load the kernel on the "other" drive. So you just create a C:\LINUX directory (or whatever), put LOADLIN in it with a copy of your kernel, and use that.

LOADLIN is a VCPI compliant program. Win '95 will want to, "shutdown into DOS mode," to run it (as it would with certain other DOS protected-mode programs).

Earlier versions of LOADLIN sometimes required a package called REALBIOS.COM, which required a boot procedure on an (almost) blank floppy to map the REALBIOS interrupt vectors (prior to the loading of any software drivers). (Current versions don't seem to ship with it, and don't seem to need it).

(Much thanks to Jim Dennis for this information.)


3.11 How can I boot Linux from OS/2's Boot Manager?

  1. Create a partition using OS/2's FDISK.EXE (Not Linux's fdisk).
  2. Format the partition under OS/2, either with FAT or HPFS. This is so that OS/2 knows about the partition being formatted. (This step is not necessary with OS/2 ``warp'' 3.0.)
  3. Add the partition to the Boot Manager.
  4. Boot Linux, and create a file system on the partition using mkfs -t ext2 or mke2fs. At this point you may, if you like, use Linux's fdisk to change the code of the new partition to type 83 (Linux Native)--this may help some automated installation scripts find the right partition to use.
  5. Install Linux on the partition.
  6. Install LILO on the Linux partition--NOT on the master boot record of the hard drive. This installs LILO as a second-stage boot loader on the Linux partition itself, to start up the kernel specified in the LILO config file. To do this, you should put
    boot = /dev/hda2
    (where /dev/hda2 is the partition you want to boot from) in your /etc/lilo/config or /etc/lilo.config file.
  7. Make sure that it is the Boot Manager partition that is marked active, so that you can use Boot Manager to choose what to boot.

There is a set of HOWTO's on the subject of multi-boot systems on the LDP Home Page, http://sunssite.unc.edu/LDP/.


3.12 How can I share a swap partition between Linux and MS Windows?

See the Mini-HOWTO on the subject by H. Peter Anvin, hpa@yggdrasil.com. It is available at sunsite.unc.edu/pub/Linux/docs/HOWTO/mini/Swap-Space.


Next Previous Contents