fio на виртуальном диске, созданном с помощью dd, чтобы подчеркнуть диск

Я пытаюсь создать сценарий, который мои коллеги будут использовать в этой области, который будет привязывать внутренние диски к серверу Linux. Я планирую добавить некоторую логику для поиска доступных /dev/sd и тому подобное. Но я хотел поставить тест на запись. Я знаю, что fio уничтожит данные, существующие на /dev/ device, и я не хочу этого. Я думал, что мог бы вместо этого создать файл с помощью dd и запустить fio для этого файла. По сути, он должен по-прежнему нагружать диск и загружать его, но сохранять все данные.

Я полагаю, что я создал бы файл на 90% от размера оставшегося пространства в разделе, так что я надеюсь, что я смогу вызвать большее срабатывание рычага, пока диск находится под нагрузкой.

При таком плане не следует уничтожать данные на диске правильно?

Основные команды, которые я планирую выполнить:

создать файл 10 ГБ

dd if=/dev/zero of=myFileSystem.img bs=512 count=19531250

начать фио

device=myFileSystem.img runtime=30 fio default.fio

1 ответ

# df -T Filesystem Type 1K-blocks Used Available Use% Mounted on /dev/sda2 ext3 30969600 23578008 5818428 81% / devtmpfs devtmpfs 3937216 180 3937036 1% /dev tmpfs tmpfs 3937216 0 3937216 0% /dev/shm /dev/sdc1 ext3 864658784 44030960 776705716 6% /mnt

# size=641168811k fioFilename=/mnt/diskStressTempFile.1427125883.52 runtime=28800 fio defaultFile.fio

# cat defaultFile.fio

[global]
ioengine=libaio
direct=1
iodepth=64
rw=randread
time_based=1
runtime=${runtime}
filename=${fioFilename}
size=${size}

[default]
name=default
blocksize_range=1k-4M

Это действительно медленно, чтобы создать файл, хотя. Это в значительной степени делает dd if=/dev/zero of=/mnt/diskStressTempFile.1427125883.52

fallocate это лучший способ создать большой файл, если вы заранее не заботитесь о его содержимом. К сожалению, кажется, что не доступно в ОС, с которой я работаю.

Другие вопросы по тегам