## 5. Дискеты, жесткие диски, и т.п.

Имеются два способа для управления устройствами под Linux: по способу DOS и по способу UNIX.

## 5.1. Управление устройствами по способу DOS

Большинство дистрибутивов Linux включает пакет `mtools` - это набор команд, которые являются совершенно эквивалентом их дубликату DOS, но начинаются с "`m`": то есть, `mformat`, `mdir`, `mdel`, `mmd`, и так далее. Они могут даже сохранять длинные имена файла, но не права доступа к файлу. Если Вы настроили mtools, отредактировав файл называемый `/etc/mtools.conf` (пример прилагется), то Вы можете также обращаться к разделам DOS/Win, CD-ROM и zip-устройствам.

Форматировать новый диск, тем не менее, команда `mformat` не будет. Вы должны будете заранее выполнить команду от root:

> `

>            # fdformat /dev/fd0H1440

> `

Обратите внимание: Вы не можете обращаться к файлам на дискете командой, скажем, `less a:file.txt` ! Это недостаток монтирования дисков по способу DOS.

## 5.2. Управление устройствами по способу UNIX

Способ работы с устройствами в UNIX отличается от DOS/Win. Нет отдельных дисковых томов типа A: или C:; диск, будь это дискета или любой другой, становится частью локальной файловой системы через операцию, называемую "монтирование". Когда вы закончили работу с диском, то перед тем, как извлечь диск, Вы должны "размонтировать" его.

Физически форматирование диска - одно дело, создание файловой системы на ней - другое. Команда DOS `FORMAT A:`, выполняет обе эти задачи сразу, но под Linux это осуществляется отдельными командами. Процесс форматирования дискеты см. выше; создание файловой системы:

> `

>            # mkfs -t ext2 -c /dev/fd0H1440

> `

Вы можете использовать minix, vfat, dos или другие форматы вместо ext2. Как только диск готов, смонтируйте его командой

> `

>            # mount -t ext2 /dev/fd0 /mnt

> `

указав правильный тип файловой системы, если Вы используете не ext2. Теперь Вы можете адресовать файлы на дискете. Все действия, которые Вы производили над A: или B:, теперь выполняются над каталогом `/mnt`. Примеры:

> `

>            DOS                                     Linux

>            ---------------------------------------------------------------------

>            C:\GUIDO>DIR A:                         $ ls /mnt

>            C:\GUIDO>COPY A:*.*                     $ cp /mnt/* .

>            C:\GUIDO>COPY *.ZIP A:                  $ cp *.zip /mnt

>            C:\GUIDO>EDIT A:FILE.TXT                $ jstar /mnt/file.txt

>            C:\GUIDO>A:                             $ cd /mnt

>            A:>_                                    /mnt/$ _

> `

Когда вы закончили, перед извлечением диска Вы надо размонтировать его командой

> `

>            # umount /mnt

> `

Очевидно, Вы должны применять `fdformat` и `mkfs` только к неотформатированным дискам, не используемым предварительно. Если Вы хотите использовать дисковод B:, обратитесь к `fd1H1440` и `fd1` вместо `fd0H1440` и `fd0`, как было указано в примерах выше.

Само собой разумеется, что то, что применимо к дискетам, также применимо к другим устройствам; например, Вы можете захотеть устанавить другой жесткий диск или дисковод CD-ROM. Вот как монтируется CD-ROM:

> `

>            # mount -t iso9660 /dev/cdrom /mnt

> `

Это был "официальный" способ монтирования ваших дисков, но имеется приемчик. Так как неприятно регистрироваться под root каждый раз, когда надо смонтировать дискету или CD-ROM, каждому пользователю можно позволить монтировать их таким способом:

- зарегистрировавшись как root, сделайте следующее:

  > `

  >            # mkdir /mnt/a: ; mkdir /mnt/a ; mkdir /mnt/cdrom

  >            # chmod 777 /mnt/a* /mnt/cd*

  >            # # make sure that the CD-ROM device is right

  >            # chmod 666 /dev/hdb ; chmod 666 /dev/fd*

  > `

- добавьте в `/etc/fstab` следующие строки:

  > `

  >            /dev/cdrom      /mnt/cdrom  iso9660 ro,user,noauto          0       0

  >            /dev/fd0        /mnt/a:     msdos   user,noauto             0       0

  >            /dev/fd0        /mnt/a      ext2    user,noauto             0       0

  > `

Сейчас, чтобы смонтировать дискету DOS, дискету ext2 и CD-ROM:

> `

>            $ mount /mnt/a:

>            $ mount /mnt/a

>            $ mount /mnt/cdrom

> `

/mnt/a, /mnt/a: и /mnt/cdrom теперь доступны для каждого пользователя. Помните, что разрешение всем монтировать диски - это дыра в безопасности системы, если Вас это заботит.

Две полезных команды - `df`, которая дает информацию о установленных файловых системах, и `du dirname`, которая сообщает размер дискового пространства, используемого каталогом.

## 5.3. Резервирование информации

Имеется несколько пакетов, которые могут помочь Вам в этом вопросе, но как минимум можно сделать многотомную копию - (от root):

> `

>            # tar -M -cvf /dev/fd0H1440 dir_to_backup/

> `

Удостоверьтесь, что отформатированная дискета находится в дисководе, и остальные дискеты готовы. Чтобы восстановить вашу информацию, вставьте первую дискету в дисковод, и введите:

> `

>            # tar -M -xpvf /dev/fd0H1440

> `