LINUX.ORG.RU

read+write с нескольких дисков одновременно

 , , , ,


0

2

Здравствуйте.

Хочу придумать скрипт чтоб с разных дисков одновременно (десяток nvme или десяток sata например) читать абстрактные данные (какие угодно, не важно) и потом записывать, чтобы смотреть с какой скоростью это происходит и как на такую нагрузку реагирует исследуемая система.

Еще раз, писать на десяток сразу, читать с десятка сразу. Не один за другим последовательно)

ДэДэшкой по одному перебирать не годится, сами понимаете. Может подскажет кто идею?


Ответ на: комментарий от ox55ff

попробую с &, это проще чем 10 окон и суета по старту

только как бы в файл все это одновременное направить, в том плане что tee и >> будут одновременно в один файл фигачить, а вот от какого диска в какую строку…

sin4ez
() автор топика
Ответ на: комментарий от sin4ez

dd status=progress if=/dev/nvme1n1 of=tempfile bs=100M count=10 & dd status=progress if=/dev/nvme1n1 of=tempfile bs=100M count=10

Отображает прогресс только в 1 экземпляре и выкидывает потом в терминал текст:

[3] 254300 838860800 bytes (839 MB, 800 MiB) copied, 2 s, 397 MB/s 10+0 records in 10+0 records out 1048576000 bytes (1,0 GB, 1000 MiB) copied, 3,62164 s, 290 MB/s

10+0 records in 10+0 records out 1048576000 bytes (1,0 GB, 1000 MiB) copied, 3,62201 s, 290 MB/s

sin4ez
() автор топика
Ответ на: комментарий от sin4ez

это проще чем 10 окон и суета по старту

Дак ведь можно в команде открывать терминал с запущеным там нужным процессом, будет разом открыто 10 окон, и там и смотрите в каждом окне свой прогресс...

xterm -geometry 80x5 -e /bin/bash --init-file <(echo "dd if=/dev/sda1 of=/dev/null bs=102400 status=progress" ) &

Цикл, как-нибудь, сами приделайте. И там может не только xterm, просто нужно смотреть какие опции задают размер окна и выполняемую команду в man'e. Можно писать команду через ″bash -c″ и добавлять в конец команду ″read″, или вобще указыать xterm выполнять ″dd ..″, но тогда окно закроется после завершения команды. Можно указать заголовок окна:

xterm -geometry 80x5 -T "dd /dev/sda1" -e /bin/bash -c "dd if=/dev/sda1 of=/dev/null bs=102400 status=progress; echo Done, Hit Enter to exit; read A" &

P.S. Что за железо такое, что там 10+ nvme накопителей?

mky ★★★★★
()