12.6 Дискеты во FreeBSD


Первоначальный текст предоставилJulio Merino. ПереписалMartin Karlsson.

Хранение данных на дискетах иногда бывает полезным, например, когда нет других съёмных носителей или когда необходимо перенести небольшой объём данных на другой компьютер.

В этом разделе будет описано, как использовать дискеты во FreeBSD. В основном речь пойдёт о форматировании и использовании дискет DOS размером 3.5 дюйма, однако общие принципы применимы и для других форматов гибких дисков.
12.6.1 Форматирование дискет
12.6.1.1 Устройство

Доступ к гибким дискам, как, впрочем, и к остальным устройствам, осуществляется через соответствующие файлы в каталога /dev. Чтобы обратиться к дискете при использовании релизов 4.X и ранее, необходимо работать с /dev/fdN, где N обозначает номер привода, обычно 0, или /dev/fdNX, где X обозначает букву.

В 5.0 и более новых релизах просто используйте /dev/fdN.
12.6.1.1.1 Размер диска в 4.X и более ранних релизах

Имеются также устройства /dev/fdN.size, где size обозначает размер дискеты в килобайтах. Эти файлы устройств используются во время низкоуровневого форматирования для задания размера устройства. В последующих примерах будет использоваться размер в 1440kB.

Иногда записи в каталоге /dev необходимо создавать повторно. Для этого выполните следующее:
# cd /dev && ./MAKEDEV "fd*"
12.6.1.1.2 Размер диска в 5.0 и последующих релизах

В 5.0 devfs(5) управляет файлами устройств в каталоге /dev в автоматическом режиме, так что использование MAKEDEV необязательно.

Требуемый размер диска передаётся утилите fdformat(1) при помощи параметра -f. Поддерживаемые размеры перечислены в fdcontrol(8), но, по нашему мнению, лучше всего работает 1440kB.
12.6.1.2 Форматирование

Перед тем, как дискетой можно будет воспользоваться, её необходимо отформатировать на низком уровне. Обычно это выполняется производителем, однако форматирование является хорошим способом проверить целостность носителя. Большинство гибких дисков предназначены для использования с размером 1440kB, однако возможно задать меньший или больший размер.

Для низкоуровневого форматирования дискет вам нужно использовать fdformat(1). В качестве параметра этой утилите передаётся имя устройства.

Обратите внимание на появление сообщений об ошибках, так как они могут помочь определить, хорошая это дискета или плохая.
12.6.1.2.1 Форматирование в 4.X и более ранних релизах

Для форматирования дискет используйте устройства /dev/fdN.size. Вставьте новую 3.5-дюймовую дискету в дисковод и введите команду:
# /usr/sbin/fdformat /dev/fd0.1440
12.6.1.2.2 Форматирование в 5.0 и более новых релизах

Для форматирования гибких дисков используйте устройства /dev/fdN. Вставьте новую 3.5-дюймовую дискету в дисковод и введите команду:
# /usr/sbin/fdformat -f 1440 /dev/fd0
12.6.2 Метка диска

После низкоуровневого форматирования диска вам нужно поместить на него метку диска. Эта метка будет потом разрушена, но она будет нужна системе для определения размера диска и его характеристик.

Новая метка диска будет касаться диска в целом, и будет содержать полную информацию о параметрах дискеты. Значения геометрии для метки диска перечислены в файле /etc/disktab.

Теперь вы можете запустить disklabel(8) примерно так:
# /sbin/disklabel -B -r -w /dev/fd0 fd1440

Note: Начиная с FreeBSD 5.1-RELEASE, на смену старой программе disklabel(8) пришла утилита bsdlabel(8). У bsdlabel(8) отсутствуют некоторые устаревшие опции и параметры; в примере выше параметр -r не может использоваться с bsdlabel(8). Для получения дополнительной информации обратитесь к справочной странице п о bsdlabel(8).
12.6.3 Файловая система

Теперь ваша дискета готова к высокоуровневому форматированию. При этом на неё будет помещаться новая файловая система, которая позволит FreeBSD читать и записывать информацию на диск. После создания новой файловой системы метка диска уничтожается, так что если вы захотите переформатировать диск, вам придётся создавать метку диска повторно.

Файловой системой для дискеты может служить UFS или FAT. Вообще говоря, FAT для дискет походит лучше.

Для размещения на дискете новой файловой системы, выполните:
# /sbin/newfs_msdos /dev/fd0

Теперь диск готов к работе.
12.6.4 Использование дискет

Для работы с гибким диском смонтируйте его при помощи утилит mount_msdos(8) (для 4.X и более ранних релизов) или mount_msdosfs(8) (в 5.0 и последующих релизах). Можно также использовать пакет emulators/mtools из коллекции портов.

Обновлено: 12.03.2015