NTFSからNTFSへのコピーでREAD量とWRITE量が非対称
eSATA接続 NTFS (ntfs-3g) の /dev/sdc1
から,USB 2.0接続NTFSの /dev/sdd1
へのコピー中に iotop(1) -o -d 5
(I/Oしてるプロセスのみ表示,リフレッシュ・レート5秒)をやるとこうなった:
Total DISK READ: 720.35 K/s | Total DISK WRITE: 4.81 M/s TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND 1017 be/4 root 0.00 B/s 4.80 M/s 0.00 % 82.97 % mount.ntfs /dev/sdd1 /media/usb0 -o ~,users,noatime,dmask=0000,fmask=0111 8701 be/4 root 728.87 K/s 0.00 B/s 0.00 % 0.24 % rsync -a backups/ /media/usb0/tmp/ 20254 be/4 root 720.35 K/s 0.00 B/s 0.00 % 0.02 % mount.ntfs /dev/sdc1 /media/esata -o~noatime,dmask=0000,fmask=0111,nosync
READとWRITEに差が出すぎじゃね? メタデータそんなに重いのかな? 今回の backups/
ディレクトリは細かいファイルが多いが,前回 数百MB単位の動画ファイルを mv(1)
したときも似た感じだった.
htop -d 50
(リフレッシュ・レート5秒)を見ると,目立つのはこんな感じ:
PID USER PRI NI VIRT IO RES SHR S CPU% MEM% TIME+ Command 1017 root 20 0 11580 5004 3596 652 D 14.0 0.1 27h41:20 /sbin/mount.ntfs /dev/sdd1 /media/usb0 -o rw,noexec,nosuid,nodev,
State == "D" (Disk I/O待ち)と "R" (Running) が半々なんで,まぁ書き込みがボトルネックと言ってよいだろう.USB 2.0だし.