Можно ли создать где-нибудь разреженный файл> 8 EiB? - PullRequest
0 голосов
/ 17 сентября 2018

Предыстория: как часть попытки обеспечить полное покрытие в моих модульных тестах, я испытываю стресс-тестирование некоторых проверок переполнения.

Итак, я попытался создать разреженный файл 16 EiB.

Однако в Linux / Btrfs это похоже на ошибку 8 EiB (2 ^ 63 байта), а не 16 EiB (2 ^ 64 байта), вероятно, потому что off_t подписано.

Существует ли комбинация ОС / файловой системы, которая на самом деле , а не теоретически, позволяет создавать такие файлы?

(- 1 опущено в каждом из чисел выше)


Это работает:

dd if=/dev/zero of=sparse_file bs=1 count=0 seek=9223372036854775807

Это не удалось:

dd if=/dev/zero of=sparse_file bs=1 count=0 seek=9223372036854775808
...