Я изучаю возможность того, что мой сервер испытывает много проблем с iowait. Я много нашел в Интернете о запуске команды dd. Я не могу запустить эту конвенцию:
[root@vps ~]# dd if=/dev/zero of=/tmp/test bs=64k count=16k conv=fdatasync
dd: invalid conversion: `fdatasync'
Try `dd --help' for more information.
Я также пробовал без обращения, и я не получаю статистику, как большинство сообщений, которые я вижу от других людей. Может кто-нибудь объяснить, почему это так?
[root@vps ~]# dd if=/dev/zero of=/tmp/test bs=64k count=16k
16384+0 records in
16384+0 records out
Для построения графиков попробуйте dstat или iostat с SWAT или Cacti. (Предполагается, что вы не используете Solaris, OpenIndiana или варианты, и в этом случае вы бы использовали Dtrace.)
http://freshmeat.net/projects/dstat/?branch_id=54241&release_id=251831
http://blogs.oracle.com/paisit/entry/import_iostat_data_to_swat
http://forums.cacti.net/post-170326.html
Также посмотрите:
ioapps - http://code.google.com/p/ioapps/
strace_analyzer - http://clusterbuffer.wetpaint.com/page/Strace+Analyzer+-+Next+Generation
strace_analyzer учебник - http://www.linux-mag.com/id/7730/1/
Ваша версия dd явно не поддерживает преобразование fdatasync. Если вы не можете получить из него статистику, вы можете выполнить свои собственные вычисления, используя что-то вроде
time sh -c "dd if = / dev / zero of = / tmp / test bs = 64k count = 16k && sync"
это даст вам общее количество времени, необходимое для записи и синхронизации - вы можете просто разделить объем данных (1 ГБ в вашем примере) на количество времени, чтобы рассчитать среднюю скорость записи.