Понадобилось перенести большой файл с Windows компьютера на Ubuntu. Обычно стандартного форматирования FAT хватает, но в этот раз файлы были более 4 Гб, которые FAT не поддерживает. Флешка была отформатирована в файловую систему exFAT.
В Ubuntu exFAT не определилась сразу. Легкий поиск в сети указал путь.
Формат exFAT
Установка FUSE-реализации exFAT:
Просмотреть привязки устройств можно еще и так:
root@mir:# ls -l /dev/disk/by-uuid/
Тут я несколько поторопился. Флешка отказалась читаться и писаться в Windows. Причины выясняются ниже.
UDF флешка в Windows 7
Поэтому, я сделал следующее - отформатировал флешку в файловую систему UDF в системе Windows 7.
Длительное форматирование:
Z:\>format H: /fs:UDF
Быстрое форматирование:
Z:\>format H: /fs:UDF /q
В этом случае, файловая система UDF создалась. И флешка стала доступна в Windows на чтение и запись. В Ubuntu также.
Вот как её видит программа gdisk:
Disk /dev/sdb: 15646720 sectors, 7.5 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): Здесь много цифр
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 15646686
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)
Number Start (sector) End (sector) Size Code Name
1 2048 15646686 7.5 GiB 0700 Microsoft basic data
В Ubuntu, эта флешка при автомонтировании, не приобретает метки, однако в Windows 7, метка сохраняется.
Всё, размер флешки позволяет переносить образ однослойного DVD.
Остаётся вопрос, в чём же причина несовместимости.
mkudffs, по умолчанию, делает размер сектора равным 2048, а Windows 7 - 512 байт. Так что, надо указывать обязательно опцию -b 512.
В Ubuntu exFAT не определилась сразу. Легкий поиск в сети указал путь.
Формат exFAT
Установка FUSE-реализации exFAT:
root@mir:# add-apt-repository ppa:relan/exfat
root@mir:# apt-get update
root@mir:# apt-get install fuse fuse-exfat exfat-utils
root@mir:# apt-get update
root@mir:# apt-get install fuse fuse-exfat exfat-utils
После этого всё заработало и достаточно шустро.
Однако, это дало повод задуматься о более совместимой файловой системе для переноса файлов между платформами Windows & Ubuntu.
Такая файловая система нашлась - UDF. UDF - Universal Disk Format - универсальный дисковый формат. Подходит для всех носителей, начиная с CD-R и заканчивая BD-дисками и обычными жесткими дисками и флешками. Поддерживает диски более 2Тб. 64-битная адресация.
Формат UDF
То что надо.
Установка UDF в Ubuntu.
root@mir:# apt-get install udftools
Форматирование флешки.
Небольшое отступление. Появившиеся не так давно SSD диски, выявили такую свою особенность как необходимость выравнивания разделов для сохранения ресурса и ускорения операций. Флешки - суть те же SSD и также требуют выравнивания разделов. MBR не очень удачный выбор, т.к. приходится высчитывать смещения вручную и нет поддержки утилитами. Лучше использовать GPT, тем более через пару лет это будет основная система разделения жестких дисков. Плюс в том, что форматирирование в эту систему доступно из стандартной утилиты "Диски" входящей в комплект Ubuntu 12.10 Gnome Shell Remix, под коим это всё происходит. Также можно воспользоваться утилитой командной строки gdisk.
Перед форматированием желательно стереть первый блок флешки, чтобы устройство выглядело пустым и неразмеченным. Делается так:
root@mir:# dd if=/dev/zero of=/dev/sdz bs=512 count=1
root@mir:# blockdev --rereadpt /dev/sdz
Команда DD - очень опасна, т.к. получает прямой доступ к диску. Очень важно выбрать именно свою флешку, а не системный диск. Замените /dev/sdz на устройство сопоставленное своей флешке. Это опять же можно посмотреть в графической утилите "Диски".
Или можно сделать так: ls /dev/disk/by-label/
Т.е. устройство можно задать старым способом /dev/sdz либо новым способом, например: /dev/disk/by-label/STORE\x20N\x20GO.
Просмотреть привязки устройств можно еще и так:
root@mir:# ls -l /dev/disk/by-uuid/
Запускаем "Диски" (ранее известная как "Дисковая утилита"). Выбираем флешку и размечаем таблицу разделов GPT.
![]() |
Диски. Диалог разметки таблицы разделов в GPT |
Итак, таблица разделов GPT получена и появился первый: /dev/disk/by-id/usb-Verbatim_STORE_N_GO_07BB0074000000F-0:0-part1
Можно приступить к форматированию в универсальный дисковый формат UDF из командной строки, т.к. в графической утилите нет поддержки столь значимого формата.
root@mir:# mkudffs -b 512 --media-type=hd --utf8 /dev/disk/by-id/usb-Verbatim_STORE_N_GO_07BB0074000000F-0:0-part1
Обязательно, надо указывать опцию -b 512, иначе флешка не будет видна в Windows.
На этом можно остановиться, флешка готова к записи и чтению как в Ubuntu, так и Windows.
Тут я несколько поторопился. Флешка отказалась читаться и писаться в Windows. Причины выясняются ниже.
UDF флешка в Windows 7
Поэтому, я сделал следующее - отформатировал флешку в файловую систему UDF в системе Windows 7.
Длительное форматирование:
Z:\>format H: /fs:UDF
Быстрое форматирование:
Z:\>format H: /fs:UDF /q
В этом случае, файловая система UDF создалась. И флешка стала доступна в Windows на чтение и запись. В Ubuntu также.
Вот как её видит программа gdisk:
Disk /dev/sdb: 15646720 sectors, 7.5 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): Здесь много цифр
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 15646686
Partitions will be aligned on 2048-sector boundaries
Total free space is 2014 sectors (1007.0 KiB)
Number Start (sector) End (sector) Size Code Name
1 2048 15646686 7.5 GiB 0700 Microsoft basic data
В Ubuntu, эта флешка при автомонтировании, не приобретает метки, однако в Windows 7, метка сохраняется.
Всё, размер флешки позволяет переносить образ однослойного DVD.
Остаётся вопрос, в чём же причина несовместимости.
mkudffs, по умолчанию, делает размер сектора равным 2048, а Windows 7 - 512 байт. Так что, надо указывать обязательно опцию -b 512.
Замечена особенность, если флешку отформатированную в UDF в Linux, подключить в Windows 7 и попытаться изменить метку, со стандартной "LinuxUDF" на что-то своё, то флешка переходит в испорченное состояние с нулевым размером. Помогает переформатирование в Windows.
Что посмотреть на сайте, по теме форматирования:
1. Формат GPT, LVM http://gimmor.blogspot.com/2012/10/i-gpt-lvm-3tb-raid-microserver.html
2. О форматирование Blu-ray дисков: http://gimmor.blogspot.com/2012/10/blu-ray-ubuntu-linux.html
Что посмотреть на сайте, по теме форматирования:
1. Формат GPT, LVM http://gimmor.blogspot.com/2012/10/i-gpt-lvm-3tb-raid-microserver.html
2. О форматирование Blu-ray дисков: http://gimmor.blogspot.com/2012/10/blu-ray-ubuntu-linux.html
Комментариев нет:
Отправить комментарий