Не могут быть добавлены без файловой системы udf
После того, как мне не удалось скопировать файл размером более 4G на флэш-накопитель USB 8G, я отформатировал его как ext3. Пока это работает нормально для меня, это вызовет проблемы, если я захочу использовать его для копирования файлов кому-то, кто не использует Linux.
Я подумываю о том, чтобы отформатировать его как UDF , что, я надеюсь, позволило бы его прочитать (и, возможно, даже написать) в трех самых популярных операционных системах (Windows, MacOS и Linux) без необходимости устанавливать какие-либо дополнительные драйверы. Однако из того, что я уже нашел в Интернете, похоже, есть несколько небольших ошибок, связанных с тем, какие параметры используются для создания файловой системы, что может снизить совместимость (но большинство страниц, которые я нашел, посвящены оптическим носителям, а не USB-флеш-памяти). диски).
Я бы хотел знать:
Во-первых, я полностью обнулил диск перед созданием файловой системы UDF с:
Это делается для того, чтобы избежать каких-либо оставшихся суперблоков или других метаданных, которые могут запутать определение типа файловой системы операционной системы (необходимо по крайней мере обнуление первого сектора, чтобы стереть таблицу разделов; первые несколько секторов не используются UDF, а оставшиеся таблица разделов может действительно запутать вещи). Вы также можете использовать переключатель count=1 в команде dd, чтобы быстрее обнулить только первые 512 байт диска (где обычно находится MBR), хотя это не было проверено.
Чтобы создать файловую систему, я использовал команду:
mkudffs станет доступной в дистрибутивах Linux на основе Debian (таких как Ubuntu) после установки пакета udftools :
Размер блока по умолчанию для mkudffs - 2048, что неправильно для флэш-накопителя USB (который использует 512-байтовые сектора). Поскольку размер блока используется для поиска метаданных файловой системы, использование неправильного размера блока может привести к тому, что он не будет распознан как файловая система UDF (так как привязка не будет там, где ожидает драйвер файловой системы). Обратите внимание, что справочная страница mkudffs неверна; 512 является допустимым значением для размера блока (и код явно принимает его).
Я также использовал весь диск вместо раздела; это должно быть более совместимым.
Результат моего тестирования до сих пор:
Хотя я до сих пор не пытался создать в нем файл размером более 4G, я не вижу причин, по которым он не будет работать.
Учитывая, что он отлично работал на всех последних операционных системах (требуется только монтирование вручную в Linux, которое больше не понадобится, как только выйдут Ubuntu 9.10 и Fedora 12), и работал только для чтения в Windows XP (что было неожиданностью). для меня; я ожидал, что он вообще не распознает файловую систему), использование UDF вместо FAT32 или NTFS в больших USB-флешках кажется хорошей идеей.
Fix possible UDF deadlock and memory corruption (CVE-2006-4145)
UDF code is not really ready to handle extents larger that 1GB. This is
the easy way to forbid creating those.
Also truncation code did not count with the case when there are no
extents in the file and we are extending the file.
----------------
From "colin" <>
Subject UDF filesystem has some bugs on truncating
Date Fri, 16 Jun 2006 13:47:00 +0800
Digg This
Hi all,
I found that UDF has bugs on truncating.
When you do this:
dd if=/dev/zero of=aaa bs=1024k count=2 seek=3000
, Linux will hang and die.
The platform is Linux 2.6.16 on MIPS malta board.
Кстати, именно OpenSource позволил мне обойти ограничение для UDF, описанное выше. В винде такое невозможно впринципе. P. S. Сколько мисье купил за свою жизнь программ? Ваше счастье, что к нам не добрались ярые блюстители порядка как в США или других странах! Из всего следует, что гибридная FS также не позволяет писать фалы более 2Gb. Но она вносит оганичение на длину имени файла в 31 символ (и подозреваю, без поддержки UTF-8), что для меня недопустимо. Можно еще камешек в ваш огород? :) А теперь интереснее: Typically for writing UDF in Windows, third-party burner software such as DirectCD, DLA, InCD, Toast, or WriteUDF is required. As shipped by Microsoft, Windows (before Windows Vista) can only read UDF discs, while current (2006) releases of Mac OS X, Linux, and several other Unixes include UDF writing capability with no additional software required. летел на крыльях по этой линке, но даже слова Linux там не нашел. Образ создается коммандами (и никак иначе). А запись образа возможна двумя способами - из коммандной строки и k3b > почему сразу не сделать так: запустить это приложение, нажать на кнопку "DVD с данными", перетащить мышкой все, что нужно, нажать на запись, а в появившемся окошке выбрать закладку с флажком "только образ"? Все прекрасно работает Создался нормальный образ. Файлов-то на 5Gb и более оно запишет, и без "формировать структуры UDF". А вот если будет хоть один файл размером более 4Gb - не захочет. Я очень хотел бы ошибаться, но я попробовал после вашего ответа еще раз с различными вариациями настроек - к сожалению.
|