ベンチマークテスト用だったりなんだかんだで乱数やゼロフィルのファイルを作る必要があったりします。そいうときはddコマンドを使うのが一般的です。
$ dd if=/dev/urandom of=dd_rand bs=1024 count=100
100+0 records in
100+0 records out
102400 bytes (102 kB) copied, 0.0496517 s, 2.1 MB/s
$ head dd_rand
(意味不明な文字列)
ちなみにゼロフィルのファイルを作成するには以下のようにif=/dev/zeroを使用することで作成できます。
$ dd if=/dev/zero of=dd_zero bs=1024 count=100
100+0 records in
100+0 records out
102400 bytes (102 kB) copied, 0.00140678 s, 72.8 MB/s
$ head dd_zero
(何も表示されない)
ゼロフィルの場合何も表示されない。しかし、ディスク容量を確認するとちゃんとできていることがわかります。
$ ls -l
合計 200
-rw-rw-r-- 1 user group 102400 10月 28 22:15 2013 dd_rand
-rw-rw-r-- 1 user group 102400 10月 28 22:16 2013 dd_zero
ちなみに、0書き込みに対して、ランダム書き込みは十分安全なランダムを取得しているため、かなりスピードが遅くなります。 上の例でも0書き込みの場合は72.8MB/secなのに対して、乱数は2.1MB/secしか出てません。このあたりは注意が必要になります。