На виртуальной машине Linux я хотел бы проверить NAGIOS-мониторинг более глубоко, чем просто выключение виртуальной машины или отключение виртуальной сетевой карты; Я хотел бы проверить или «включить сигнализацию дискового пространства», занимая несколько% свободного пространства в течение короткого периода времени.
Я знаю, что я мог бы просто использовать
dd if=/dev/zero of=/tmp/hd-fillup.zeros bs=1G count=50
или что-то в этом роде ... но это требует времени и загружает систему и снова требует времени при удалении тестовых файлов с помощью команды rm.
Есть ли быстрый (почти мгновенный) способ заполнить раздел, который не загружает систему и занимает много времени? Я думаю о чем-то, что выделяет пространство, но не «заполняет» его.
linux
filesystems
hard-disk
disk-usage
Аксель Вернер
источник
источник
/dev/full
? (Предполагая, что это существует). Попробуйтеecho 'test' > /dev/full
на Debian.Ответы:
Самый быстрый способ создать файл в системе Linux - использовать
fallocate
:От мужчины:
источник
sudo
?fallocate
нужны привилегии root» Не в моей системе (Linux Mint 17.3, Ubuntu, то есть Debian). (файловая система ext4)Другие альтернативы включают в себя:
Возможность проверки таких вещей, как запуск в зарезервированный процент root, если таковой имеется, также может быть полезной.
источник
fallocate -l 50G big_file
truncate -s 50G big_file
dd of=bigfile bs=1 seek=50G count=0
Поскольку эти три способа могут быстро заполнить раздел.
Если вам нравится использовать dd , обычно вы можете попробовать его с seek . Просто установите
seek=file_size_what_you_need
и установитеcount=0
. Это скажет системе, что файл существует , и его размер соответствует заданному вами, но система на самом деле не создаст его. И используя этот способ, вы можете создать файл, который больше, чем размер раздела.Пример на ext4 разделе с менее чем 3G доступным. Используйте dd для создания файла 5T, который существует в виде метаданных - практически не требующего места в блоке.
Выход:
источник
count=0
метод довольно интересный, я добавил пример.dd
приведенный выше пример вполне может выделить разреженный файл. В этом случае размер файла составляет 50 ГБ, на самом деле он использует только блок (или даже не), поэтому диск не переполняется. YMMV.Вы также можете воспользоваться инструментом стресс-нг, который поддерживается во многих системах на базе Linux:
источник