Red Hat [Electronic resources] : The Complete Reference Enterprise Linux Fedora Edition؛ The Complete Reference نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

Red Hat [Electronic resources] : The Complete Reference Enterprise Linux Fedora Edition؛ The Complete Reference - نسخه متنی

Richard L. Petersen

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
لیست موضوعات
توضیحات
افزودن یادداشت جدید








The mtools Utilities: msdos


Your Linux system provides a set of utilities, known as mtools, that enable you to access a floppy and hard disks formatted for MS-DOS easily (see Table 10-6).


Copying Files to a DOS Floppy


The

mcopy command enables you to copy files to and from an MS-DOS floppy disk in your floppy drive or a Windows partition on your hard drive. No special operations, such as mounting, are required. With mtools, you needn't mount an MS-DOS partition to access it. For an MS-DOS floppy disk, place the disk in your floppy drive, and you can then use mtool commands to access those files. For example, to copy a file from an MS-DOS floppy disk to your Linux system, use the

mcopy command. You specify the MS-DOS disk with

a: for the A drive. Unlike normal DOS pathnames, pathnames used with mtool commands use forward slashes instead of backslashes. The directory docs on the A drive would be referenced by the pathname a:/docs, not a:\docs. Unlike MS-DOS, which defaults the second argument to the current directory, you always need to supply the second argument for

mcopy . The next example copies the file mydata to the MS-DOS disk, and then copies the preface file from the disk to the current Linux directory.

$ mcopy mydata a:
$ mcopy a:/preface .





Note

Currently, mtools cannot access Windows XP, NT, and 2000 NTFS partitions.



mtools Commands


You can use the

mdir command to list files on your MS-DOS disk, and you can use the

mcd command to change directories on it. The next example lists the files on the MS-DOS disk in your floppy drive, and then changes to the docs directory on that drive:

$ mdir a:
$ mcd a:/docs

Most of the standard MS-DOS commands are available as mtool operations. You can create MS-DOS directories with

mmd and erase MS-DOS files with

mdel . A list of mtool commands is provided in Table 10-6. For example, to display a file on drive B on an MS-DOS disk in the second floppy drive, use

mtype and the name of the file preceded by b:/.

$ mtype b:/readme



















































Table 10-6: The mtools Access Commands


Commands


Execution


mcopy filename filename


Copies a file to and from an MS-DOS disk or your Linux system. The following copies a file from an MS-DOS floppy disk to your Linux system:

mcopy a:/filename directory-or-filename The following copies a file from Linux for an MS-DOS floppy disk in your floppy drive:

mcopy filename a:/filename


mcd directory-name


Changes directory on your MS-DOS file system.


mdir


Lists the files on an MS-DOS disk in your floppy drive.


mattrib


Changes the attribute of an MS-DOS file.


mdel filename


Deletes an MS-DOS file.


mformat


Adds an MS-DOS file system to a floppy disk.


mlabel


Makes a volume label.


mmd directory-name


Makes an MS-DOS directory.


mrd directory-name


Removes an MS-DOS directory.


mread filename filename


Low-level read (copy) of an MS-DOS file to Unix.


mren filename filename


Renames an MS-DOS file.


mtype filename


Displays contents of an MS-DOS file.


mwrite filename filename


Low-level write (copy) a Unix file to MS-DOS.



Configuring mtools: /etc/ mtools.conf


Access to MS-DOS or Windows 95, 98, or ME partitions by

mtools is configured by the /etc/mtools.conf file. This file lists several different default MS-DOS or Windows partitions and disk drives. Each drive or partition is identified with a particular device name. Entries for your floppy drives are already entered, using the device names /dev/fd0 and /dev/fd1 for the first and second floppy drives. An entry in the /etc/mtools.conf file takes the form of the drive label followed by the term

file and the equal sign, and then the device name of the drive or partition you want identified with this label. The device name is encased in quotes. For example, assuming the first hard disk partition is an MS-DOS partition and has the device name of /dev/hda1, the following entry would identify this as the C drive on an MS-DOS system:

drive c: file="/dev/hda1"

You must have the correct device name for your partition. These device names are listed in the /etc/fstab file and can also be viewed with the Linuxconf local drive access panel on your root user desktop. If you have a SCSI hard disk, the hard disk partition has the form of sd, followed by a character for the hard drive and a number for the partition in it. For example, sda1 refers to the first partition on the SCSI hard drive. IDE hard drives have the form of hd, also followed by a character and a partition number—hda1 refers to the first partition on an IDE hard drive.

On most distributions, a default /etc/mtools.conf file is installed for you (see the following /etc/mtools.conf example). This file has commented entries for the C drive: one for a SCSI hard disk partition and one for an IDE partition. Both are commented out with a preceding

# . If you have an IDE hard drive (as most users do), you need to remove the preceding

# symbol from the entry for the IDE hard disks partition and leave the preceding

# symbol in front of the entry for the SCSI partition. Also, if your MS-DOS partition on your IDE hard drive is not the first partition, you must change the device name. For example, if the MS-DOS partition is the second partition, the device name will be /dev/hda2. If you have several MS-DOS partitions, you can add entries for each one, assigning a different label to each. The following example assigns the d: label to the fourth hard disk partition on an IDE drive:

drive d: file="/dev/hda4"

/etc/mtools.conf







# Linux floppy drives
drive a: file="/dev/fd0" exclusive mformat_only
drive b: file="/dev/fd1" exclusive mformat_only
# First SCSI hard disk partition
#drive c: file="/dev/sda1"
# First IDE hard disk partition
drive c: file="/dev/hda1"
drive d: file="/dev/hda5"
#dosemu floppy image
drive m: file="/var/lib/dosemu/diskimage"
#dosemu hdimage
drive n: file="/var/lib/dosemu/diskimage" offset=8832
#Atari ramdisk image
drive o: file="/tmp/atari_rd" offset=136
mtools_lower_case=1












Copying Files to a DOS Partition


Once the DOS hard disk partitions are referenced, you can then use their drive letters to copy files to and from them to your Linux partitions. The following command copies the file mydocl to the c: partition in the directory webstuff and renames it mydoc. Notice the use of forward slashes instead of backward slashes.

$ mcopy mypagel c:/webstuff/mypag

Because of the differences in the way DOS and Linux handle newlines in text files, you should use the

-t option whenever copying a DOS text file to a Linux partition. The following command copies the mydoc.txt file from the c:/project directory to the /newdocs directory:

$ mcopy -t c:/project/mydoc.txt /newdocs


/ 328