В системе Linux имеется набор утилит mtools, которые обеспечивают доступ к дискетам, отформатированным для использования в MS-DOS. Команда юсору позволяет копировать файлы на такую дискету и с нее. Никаких специальных операций вроде операции монтирования проводить не нужно. В частности, при использовании утилиты mtools не придется монтировать раздел MS-DOS для получения доступа к нему. Просто вставьте дискету MS-DOS в дисковод и пользуйтесь командами mtools. Скажем, для копирования файла с дискеты MS-DOS в систему Linux служит команда mсору. В отличие от обычных путевых имен DOS, в путевых именах, используемых с командами mtool, вместо обратной косой черты используется обычная косая. Каталог docs на диске А: обозначается путевым именем a:/docs, а не a:\docs. В следующем примере файл mydata копируется на дискету MS-DOS, а затем файл preface копируется с этой дискеты в текущий каталог Linux.
$ mсору mydata a:
$ mcopy a:preface.
С помощью команды mdir можно получить список файлов, имеющихся на дискете MS-DOS, а с помощью команды mcd ≈ переходить на этой дискете из каталога в каталог. В следующем примере выдается перечень файлов, а затем пользователь переходит в каталог docs.
$ mdir a:
$ mcd a:docs
Большинство стандартных команд MS-DOS могут выполняться как операции mtools . В частности, можно создавать каталоги MS-DOS (команда mmd) и удалять файлы (команда mdel). Перечень команд mtools приведен в табл.7.12. Например, для того чтобы вывести на экран содержимое файла, находящегося на дискете MS-DOS в 5,25-дюймовом дисководе, введите команду mtype с именем дисковода и файла:
$ mtype b:readme
Доступ к разделам MS-DOS конфигурируется файлом /etc/mtools.conf, в котором перечислены различные стандартные разделы MS-DOS и дисководы. Каждый дисковод или раздел обозначается определенным именем устройства. Записи, соответствующие дисководам гибких дисков, уже введены. Первый дисковод обозначен именем /dev/fd0, а второй ≈ /dev/fd1. Запись файла /etc/mtools.conf состоит из метки дисковода, слова file, знака равенства и имени устройства, заключенного в кавычки. Например, если первый раздел жесткого диска ≈ раздел MS-DOS, а имя соответствующего ему файла устройства ≈ /dev/hda1, то приведенная ниже запись обозначит его как дисковод с: в системе MS-DOS:
drive с: file="/dev/hda1"
Очень важно, чтобы имя устройства, присвоенное разделу, было правильным. Эти имена перечислены в файле /etc/fstab. Их можно также просмотреть с помощью утилиты fstool с рабочего стола пользователя root. Если у вас жесткий диск SCSI, то имена его разделов будут состоять из букв sd, буквенного обозначения дисковода и номера раздела. Так sda1 обозначает первый раздел на жестком диске SCSI. Имена разделов жесткого диска IDE состоят из букв hd, буквенного обозначения дисковода и номера раздела. Так, hda1 обозначает первый раздел жесткого диска IDE.
При первоначальной инсталляции системы OpenLinux файл /etc/mtools.conf конфигурирует дисковод C: как соответствующий разделу жесткого диска SCSI. Есть также запись для раздела жесткого диска IDE, но она закомментирована знаком #. Если у вас есть жесткий диск IDE (как у большинства пользователей), удалите знак # из соответствующей записи и поставьте такой знак перед записью, соответствующей разделу SCSI. Кроме того, если раздел MS-DOS ≈ не первый раздел на жестком диске IDE, то имя устройства придется изменить. Например, если раздел MS-DOS ≈ второй раздел, то именем устройства будет /dev/hda2. Если у вас несколько разделов MS-DOS, то можно ввести записи для каждого из них и присвоить каждому свою метку. В следующем примере метка d: присваивается четвертому разделу жесткого диска IDE:
drive d: file="/dev/hda4"
/etc/mtools/conf
drive a: file="/dev/fd0" exclusive
drive b: file="/dev/fdl" exclusive
# First SCSI hard disk partition
#drive c: ile="/dev/sda1"
# First IDE hard disk partition
drive c: file="/dev/hda1"
drive d: file="/dev/hda4"
#dosemu floppy image
drive m: file="/var/lib/dosemu/diskimage"
#dosemu hdimage
drive n: file="/var/lib/dosenni/disldmage" offset=3840
#Atari ramdisk image
drive o: file="/tmp/atari_rd" offset=136
mtools lower case=1
После того как DOS-разделы жесткого диска соответствующим образом обозначены, их буквенные обозначения можно использовать для копи-рования в них файлов из Linux-разделов и обратно. Следующая команда копирует файл mydoc.htm в каталог webstaff на диск C: и переименовывает его в mydoc.htm. Обратите внимание на то, что вместо символа "обратная косая черта" используется обычная косая.
$ mсору mydoc.htm с:/webstuff/mydoc.htm
Поскольку DOS и Linux по-разному обрабатывают символы новой строки в текстовых файлах, при копировании текстового DOS-файла в Linux-раздел следует использовать опцию -t. Следующая команда копирует файл mуdoc.txt из каталога c:/project в каталог /newdocs:
$ mcopy -t c:/project/mydoc.txt /newdocs