2012-06-08 7 views
3

Я пишу файл с помощью python. Сценарий внезапно перестает работать и бросает «IOError: [Errno 27] File too large» Есть ли ограничение на размер файла, который вы можете создать с помощью программы? Кто-нибудь еще столкнулся с этой проблемой? Размер файла был близок к 4.3Gb (немного бит), когда он остановился.Файл слишком большой python

+8

Не дошло до 4294967295 байты (т. е. 2^32-1)? –

+1

Я только что проверил размер файла, это 4.3 ГБ (4 294 967 295 байт) – viper

ответ

5

Этот Python bug report указывает, что ОС является источником этого сообщения об ошибке, а не Python.

Поскольку вы пишете раздел FAT, а максимальный размер файла составляет 4 ГБ для FAT 32 (LinuxFilesystemsExplained), это, скорее всего, является причиной вашей проблемы. Запуск вашей программы в системе или разделе с другой файловой системой скажет вам наверняка.

+0

@MarcoMariani Я видел это, вы видели 2-е и 3-е сообщение? – Levon

+0

Ограничений по размеру файла в моей учетной записи нет, я проверяю с помощью команды ulimit, как указано [здесь] (http://www.cyberciti.biz/faq/file-size-limit-exceeded-error-under-linux-and- решение/). размер файла говорит неограниченно – viper

+0

одно возможное объяснение находится в разделе комментариев (2-й комментарий от имени пользователя «Chris») этого [link] (http://www.cyberciti.biz/faq/file-size-limit-exceeded-error- under-linux-and-solution /), он говорит, что fat fs поддерживает только размер файла до 4 ГБ. раздел, который я пишу, является жирным. – viper

2

Когда файлы становятся слишком большими, адресация становится проблемой. Обычно вы получаете 32 бита, что соответствует максимальному размеру около 4 ГБ.

0

Я также получил эту ошибку, когда у меня было слишком много файлов в одном каталоге. У меня было 64435 файлов в каталоге, каждый из которых содержит 10 цифр + '.json' в своих именах, а любые последующие попытки записать новые файлы в каталог забросили ошибки (например) OSError: [Errno 27] File too large: 'ngrams/0/0/0/0000029503.json'

Смежные вопросы