Я намагаюся скопіювати файл на 6 Гб на флешку, але він не скопіюється.
Я намагаюся скопіювати файл на 6 Гб на флешку, але він не скопіюється.
Відповіді:
Це пов’язано з обмеженням FAT32. Файли розміром більше 4 Гб не можна зберігати на об'ємі FAT32. Форматування флешки як exFAT або NTFS вирішить цю проблему.
УВАГА: Резервне копіювання даних. Форматування видалить усі дані на вашому пристрої.
ext3
також є опцією
Якщо ви не хочете переформатувати USB-накопичувач або потрібен FAT32, ви можете просто розділити великий файл на частини. Більшість менеджерів архівів постачаються з роздільною опцією і для командного рядка split
, наприклад, для вашого випадку:
split -b4294967295 /path/to/input.file /path/to/pen/drive/output.file.
Дивіться man split
повну документацію. Це створить такі файли:
4,0G output.file.aa
1,6G output.file.ab
Розмір файлів output.file.aa
збігається саме з максимальним розміром файлу вашого USB-накопичувача у форматі FAT32, який становить 4 гібібайта ( GiB , це не те, що гігабайт ГБ) мінус 1 байт .
Дякую Жиллу за це важливе доповнення.
Перш ніж знову отримати доступ до файлу, потрібно спочатку об'єднати його частини. У системах Linux це можна зробити за допомогою:
cat output.file.* > input.file
Якщо ви боїтесь, що це може сортувати файли, неправильно прочитані в Bash, чи гарантовано, що розширення підстановки буде в порядку?
Відповідна команда для систем Windows:
copy /b output.file.aa+output.file.ab input.file
Поряд з багатьма іншими корисними утилітами GNU split
можна встановити і в Windows, див. Утиліти GNU для Win32 .
split
навіть за відмінність між GiB та GB. Але я пошлю атабойця за це ...
split
існує саме для цієї мети і не потрібна в кінці прийому. FAT32 - це лінгва франка USB-накопичувачів.
-b 4095M
було б набагато простіше і досягти того ж, що і bc
команда. У Bash один також може використовувати арифметику оболонки: $(((4<<30)-1))
.
Розглядаються різні сценарії та файлові системи, шукаючи альтернативи з урахуванням
Якщо ви маєте намір використовувати привід тільки з Ubuntu (та іншими дистрибутивами Linux), непогано використовувати файлову систему linux , наприклад ext4 . Таким чином ви можете отримати більш високу швидкість читання / запису (залежно від того, який процес є вузьким місцем), і ви отримаєте більшу гнучкість щодо власності та дозволів.
gparted
для створення файлової системи ext4 .У Windows є проблеми з файловими системами Linux, і я думаю, що MacOS має проблеми як з файловими системами Linux, так і з NTFS . Тож якщо ви хочете "повної сумісності" для читання та письма, залишаються лише FAT32 , UDF та exFAT .
FAT32 має обмеження розміру файлу 4GiB (гібібайт, база 2).
Можна підтримувати в Ubuntu за dosfsck
допомогою пакета dosfstools
,
sudo apt-get install dosfstools
sudo dosfsck -a /dev/sdxn # least destructive option
sudo dosfsck -r /dev/sdxn # more powerful option
де x - літера диска, а n - номер розділу, наприклад, /dev/sdb1
для першого розділу в накопичувачі b.
UDF, ймовірно, не має інструментів для відновлення файлової системи,
Як створити та використовувати UDF: Використання UDF як наступника FAT для USB-накопичувачів
Отже, щоб використовувати його, якщо припустити, що ваш USB-накопичувач /dev/sdx
:
Встановіть пакет udftools
sudo apt-get install udftools
Створіть таблицю розділів та один розділ за допомогою gparted
абоgnome-disks
Протріть перший мібібайт цільового розділу рисковано dd
(двічі перевірте командний рядок!)
sudo dd if=/dev/zero of=/dev/sdx1 bs=1M count=1
Біжи mkudffs
,
sudo mkudffs -b 512 --media-type=hd --lvid=my-label /dev/sdx1
Протріть перший мибибайт розділу, щоб стерти попередню інформацію про файлову систему (або інші дані, що залишилися), щоб запобігти виявленню USB-накопичувача як FAT після того, як він був відформатований з UDF.
-b 512
, Щоб змусити розмір блоку файлової системи , рівний фізичного розмір блоку USB флешки, в відповідно з вимогами специфікацій UDF. Адаптуйте його, якщо вам пощастить мати USB-накопичувач із більш відповідним розміром блоку.
Після цього ваш USB-накопичувач стане зрозумілим для читання та запису з GNU / Linux та іншими вільними операційними системами, звичайно, а також з поточними версіями Windows (лише для читання із застарілою версією XP) та з MacOS.
exFAT - це ще один варіант. Він новий у порівнянні з FAT32 та UDF і стверджує, що працює добре
Я почав тестувати exFAT в Ubuntu. Я маю намір відредагувати цю відповідь, коли у мене буде більше досвіду її використання. Почнемо з наступних посилань ,
ExFAT - це власна файлова система Microsoft, оптимізована для
вбудовані системи, оскільки він легкий і краще підходить для рішень, що мають низьку пам’ять і низькі вимоги до енергоресурсів, і можуть бути реалізовані в програмному забезпеченні.
Як отримати диск, відформатований при роботі exfat (в Ubuntu)
і цей командний рядок для встановлення [читання / записування] підтримки для exFAT в Ubuntu
sudo apt-get install exfat-utils exfat-fuse
Можна створити в Windows і MacOS та в Linux за допомогою наступного командного рядка
sudo mkfs.exfat -n YOUR-LABEL /dev/sdxi
де, наприклад x
, літера диска і i
номер розділу, наприклад /dev/sdb1
.
Може підтримуватися в Windows.
Мої перші результати тесту :
md5sum
і швидкість була обмежена системою USB).Отже, якщо ви хочете отримати повний доступ для читання / запису з Ubuntu та Windows, я б запропонував використовувати NTFS , який має журнал і дуже налагоджений та відшліфований як [власна] файлова система для Windows. (Також можливо використовувати exFAT .)
gparted
для створення файлової системи NTFS.У MacOS можна використовувати FAT32 , UDF та exFAT .
Ви можете також використовувати ext4 з обхідним способом, Ubuntu Server із SSH-сервером у віртуальній машині . (Я думаю, що такий же спосіб спрацював би і з Windows.) Це може бути доцільним, коли ви маєте намір отримати доступ до багатьох файлів через накопичувач та його файлову систему, але, мабуть, не за допомогою невеликого USB2 pendrive.
Дивіться це посилання,
Використання ext4 в OS X Yosemite - довгий, але безпечний шлях
Виникла проблема, яка не хотіла переформатувати USB-накопичувач, я просто скористався архіватором. Більш-менш всі сучасні графічні інтерфейси (такі як File Roller, 7Zip тощо) або CLI дозволяють розділити архівний файл. Встановіть межу розділення нижче межі FAT (що дещо 4 Гб), для швидкості ви можете вибрати низьку швидкість стиснення, навіть "зберігати", тобто зовсім не стискати вуаля!
Якщо у вас є доступ до машини Windows, ви можете конвертувати вам файлову систему USB-накопичувач без форматування. Ви повинні використовувати командний рядок Windows таким чином: натисніть Win + R
, введіть cmd
-> OK
, у відкритому вікні введіть команду, convert X: /FS:ntfs
де X:
знаходиться лист для встановленого USB-флешки. Менш ніж за хвилину він готовий. Насолоджуйтесь.
Переформатування або використання спліт - це чудові варіанти, або ви можете спробувати використовувати zip для стиснення файлу, просто знайте, що деякі файли вже стиснуті, так що стискання їх зробить їх більшими. (Також ви можете втратити право власності на файл, часові позначки тощо)