Файл слишком велик linux

Обновлено: 05.07.2024

Я пытаюсь скопировать файл 6 ГБ на флэш-накопитель USB, но он не будет копироваться.

Это связано с ограничением FAT32. Файлы размером более 4 ГБ не могут быть сохранены на томе FAT32. Форматирование флешки как exFAT или NTFS решит эту проблему.

ВНИМАНИЕ: Резервное копирование ваших данных. Форматирование удалит все данные на вашем устройстве.

Если вы не хотите переформатировать USB-накопитель или вам нужен FAT32, вы можете просто разбить большой файл на части. Большинство менеджеров архивов поставляются с опцией split, а для командной строки split Например, для вашего случая:

Увидеть man split для полной документации. Это создаст следующие файлы:

Размер файла output.file.aa точно соответствует максимальному размеру файла вашего USB-накопителя в формате FAT32, который составляет 4 гибибайта (ГиБ, это не то же самое, что гигабайт ГБ) минус 1 байт.
Спасибо Gilles за это важное дополнение.

Прежде чем вы снова сможете получить доступ к файлу, вам нужно сначала объединить его части. В системах Linux вы можете сделать это с:

Если вы боитесь, что это может привести к неправильной сортировке файлов в Bash, гарантированно ли будут использоваться расширения с подстановочными знаками?
Соответствующая команда в системах Windows:

Наряду со многими другими полезными утилитами GNU split может быть установлен и в Windows, см. утилиты GNU для Win32.

Проблема: FAT32 имеет ограничение в 4 ГБ для размера файла

Различные сценарии и файловые системы рассматриваются в поисках альтернатив с учетом

  • проблема с размером файла
  • какие операционные системы должны читать / записывать USB-накопитель

Только Linux

Если вы намереваетесь использовать диск только с Ubuntu (и другими дистрибутивами Linux), рекомендуется использовать файловую систему Linux, например, ext4. Таким образом, вы можете получить более высокую скорость чтения / записи (в зависимости от того, какой процесс является узким местом), и вы получите более высокую гибкость в отношении владения и разрешений.

  • Вы можете использовать программу с графическим интерфейсом gparted создать файловую систему ext4.

Полная совместимость с Linux, Windows и MacOS

У Windows проблемы с файловыми системами Linux, и я думаю, что у MacOS есть проблемы как с файловыми системами Linux, так и с NTFS. Поэтому, если вы хотите "полную совместимость" для чтения и записи, остаются только FAT32, UDF и exFAT.

FAT32 имеет ограничение в 4 ГБ (гибибайт, база 2) для размера файла.

  • Может быть создан во всех трех операционных системах.
  • Поддерживать (восстанавливать) в Windows, если у вас есть доступ к Windows.

Может поддерживаться в Ubuntu с dosfsck , который идет с пакетом dosfstools ,

где x - буква диска, а n - номер раздела, например /dev/sdb1 для первого раздела в диске б.

UDF, вероятно, не хватает инструментов для восстановления файловой системы,

  • FOSS
  • Может быть, можно найти инструменты восстановления в Windows по этой ссылке: fsck tools for UDF, и есть некоторый инструмент, доступный в виде исходного кода
  • Может быть создан в Ubuntu
  • Совместим со ссылками в стиле Linux.
  • Совместим с разрешениями в стиле Linux. Вы можете создавать и изменять разрешения для отдельных файлов (что невозможно в FAT и NTFS).
  • Раздел 10 UDF не будет запрошен для форматирования в Windows 10 (в то время как файловая система linux ext4 затронута и может быть уничтожена по ошибке).

Итак, чтобы использовать его, предполагая, что ваша флешка /dev/sdx :

Установить пакет udftools

Создать таблицу разделов и один раздел с gparted или же gnome-disks

Протрите первый мибибайт целевого раздела рискованным dd (перепроверьте командную строку!)

Протрите первый мибибайт раздела, чтобы стереть информацию о предыдущей файловой системе (или другие оставшиеся данные), чтобы предотвратить обнаружение USB-флешки как FAT после того, как она была отформатирована с помощью UDF.

-b 512 принудительно устанавливает размер блока файловой системы, равный размеру физического блока USB-накопителя, как того требует спецификация UDF. Адаптируйте его, если вам повезет с USB-накопителем с более подходящим размером блока.

После этого ваш USB-накопитель будет пригоден для чтения и записи с GNU/Linux и другими бесплатными операционными системами, но также с текущими версиями Windows (только для чтения с устаревшей версией XP) и с MacOS.

exFAT это еще один вариант. Это новый по сравнению с FAT32 и UDF и заявлено, чтобы работать хорошо

  • изначально с Windows
  • с MacOS
  • с Linux

Подробнее о exFAT

Я начал тестировать exFAT в Ubuntu. Я намереваюсь отредактировать этот ответ, когда у меня будет больше опыта его использования. Давайте начнем со следующих ссылок,

ExFAT - это проприетарная файловая система Microsoft, оптимизированная для

встроенные системы, потому что она легкая и лучше подходит для решений с низким объемом памяти и низким энергопотреблением, а также может быть реализована во встроенном программном обеспечении.

и эта командная строка для установки поддержки [чтение / запись] для exFAT в Ubuntu

Может быть создан в Windows и MacOS и в Linux с помощью следующей командной строки

где x это буква диска и i например, номер раздела /dev/sdb1 ,

Может поддерживаться в Windows.

Мои первые результаты теста:

  • Создание файловой системы exFAT хорошо работало в Ubuntu (16.04 LTS (64-bit), установленная система с ядром серии Xenial (4.4.0-93-generic), на сегодняшний день).
  • Запись и чтение файла размером более 4 ГиБ были успешными. Ubuntu и exFAT работали правильно и быстро (я проверил с md5sum и скорость была ограничена системой USB).
  • Ubuntu и Windows могли читать то, что было создано в другой операционной системе. (У меня нет MacOS для тестирования, и мне приходится полагаться на отчеты других людей.)

Windows

Поэтому, если вам нужен полный доступ для чтения / записи из Ubuntu и Windows, я бы предложил вам использовать NTFS, которая имеет журналирование и очень отлажена и отлажена как [проприетарная] файловая система для Windows. (Также возможно использовать exFAT.)

  • В Ubuntu вы можете использовать программу с графическим интерфейсом gparted создать файловую систему NTFS.
  • В Windows легко создавать файловые системы NTFS и exFAT (они являются родными).

MacOS

В MacOS можно использовать FAT32, UDF и exFAT.

Вы также можете использовать ext4 с обходным решением, Ubuntu Server с SSH-сервером на виртуальной машине. (Я думаю, что тот же обходной путь подойдет и для Windows.) Это может быть полезно, если вы собираетесь получить доступ ко многим файлам через диск и его файловую систему, но, вероятно, не с небольшим USB2-приводом.

Что делать, если файл слишком велик для конечной файловой системы

Файл слишком велик для конечной файловой системы — ошибка

Если вам не важна файловая система накопителя

В случае, если файловая система флешки или диска для вас не принципиальна, вы можете просто отформатировать его в NTFS (данные будут потеряны, способ без потери данных описан далее).

Форматирование в NTFS для больших файлов

  1. В проводнике Windows нажмите правой кнопкой мыши по накопителю, выберите пункт «Форматировать».
  2. Укажите файловую систему NTFS.
  3. Нажмите «Начать» и дождитесь завершения форматирования.

После того, как диск будет иметь файловую систему NTFS, ваш файл на него «поместится».

В том случае, когда нужно конвертировать накопитель из FAT32 в NTFS без потери данных, можно использовать сторонние программы (бесплатная Aomei Partition Assistant Standard умеет это и на русском языке) или использовать командную строку:

convert D: /fs:ntfs (где D — буква конвертируемого диска)

И уже после конвертирования скопировать необходимые файлы.

Если флешка или диск используется для ТВ или другого устройства, которое не «видит» NTFS

В ситуации, когда вы получаете ошибку «Файл слишком велик для конечной файловой системы» при копировании фильма или другого файла на флешку, используемую на устройстве (ТВ, iPhone и т.п.), которое не работает с NTFS, есть два способа решить проблему:

  1. Если это возможно (для фильмов обычно возможно), отыскать другой вариант этого же файла, который будет «весить» меньше 4 Гб.
  2. Попробовать отформатировать накопитель в ExFAT, с большой вероятностью он будет работать на вашем устройстве, а ограничения на размер файла не будет (точнее будет, но не то, с которым вы сможете столкнуться).

Когда требуется создать загрузочную флешку UEFI, а образ содержит файлы больше 4 Гб

Как правило, при создании загрузочных флешек для систем UEFI используется файловая система FAT32 и нередко случается, что не удается записать файлы образа на флешку, если он содержит install.wim или install.esd (если речь о Windows) более 4 Гб.

Решить это можно следующими методами:

  1. Rufus умеет записывать флешки UEFI в NTFS (подробнее: загрузочная флешка в Rufus 3), но потребуется отключить Secure Boot. умеет разбивать файлы больше 4 Гб на файловой системе FAT32 и «собирать» их уже при установке. Функция заявлена в версии 1.6 beta Сохранилось ли она в более новых версиях — не скажу, но с официального сайта можно загрузить именно указанную версию.

Если нужно сохранить файловую систему FAT32, но записать файл на накопитель

В случае, когда нельзя выполнить никаких действий по преобразованию файловой системы (накопитель нужно оставить в FAT32), файл требуется записать и это не видео, которое можно было бы найти в меньшем размере, вы можете разбить этот файл с помощью любого архиватора, например, WinRAR, 7-Zip, создав многотомный архив (т.е. файл будет разбит на несколько архивов, которые после распаковки снова станут одним файлом).

Более того, в 7-Zip можно и просто разбить файл на части, без архивации, а в дальнейшем, когда это будет необходимо, соединить их в один исходный файл.

Разбить большой файл в 7-Zip

Надеюсь, предложенные способы подойдут в вашем случае. Если же нет — опишите ситуацию в комментарии, я постараюсь помочь.

Читайте также: