我最近用 Centos 5.8 用全新磁盘重建了一台机器。这台机器很旧,已经运行了很长一段时间的 5.8,没有任何问题,所以最近唯一改变的是新的更大的磁盘。然而,由于机器是用新磁盘重建的,因此所有文件操作都非常慢。
我对操作系统管理知识的了解非常有限,如果有人能指出我应该在哪里寻找根本原因,我将不胜感激。我可以使用哪些命令或实用程序?
这台机器上运行着一个基于 java 的备份程序,它不断地从磁盘读取数据,但在重建之前,该机器上也运行着相同的程序,并且在该程序始终运行的情况下,机器已经运行良好近 2 年了。但现在机器不太好用,连备份程序都在爬行。
这是 iostat 命令的输出:
avg-cpu: %user %nice %system %iowait %steal %idle
0.67 0.41 1.70 52.66 0.00 44.56
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 24.87 197.21 53.98 238224706 65205070
sda1 0.00 0.00 0.00 2266 14
sda2 24.87 197.21 53.98 238222160 65205056
sdb 91.76 138.66 903.42 167496875 1091305280
sdb1 91.76 138.66 903.42 167496635 1091305280
dm-0 157.98 335.87 957.40 405716746 1156511560
dm-1 0.00 0.00 0.00 1376 216
这是 iotop 命令的片段:
8723 be/4 root 0.00 B/s 0.00 B/s 0.00 % 98.49 % [pdflush]
588 be/3 root 0.00 B/s 0.00 B/s 0.00 % 75.71 % [kjournald]
8 be/3 root 0.00 B/s 0.00 B/s 0.00 % 5.19 % [events/0]
13161 be/4 root 0.00 B/s 0.00 B/s 0.00 % 1.25 % java -Dfile.encoding=UTF-8 -Dapp=CrashPla~ang:./skin com.backup42.desktop.CPDesktop
10668 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.63 % artsd -F 10 -S 4096 -s 60 -m artsmessage -l 3 -f
16681 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.09 % sshd: root [priv]
3792 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.09 % python -E /usr/bin/sealert -s
13060 be/7 root 0.00 B/s 0.00 B/s 0.00 % 0.09 % java -Dfile.encoding=UTF-8 -Dapp=CrashPla~hplan/lang com.backup42.service.CPService
13141 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % java -Dfile.encoding=UTF-8 -Dapp=CrashPla~ang:./skin com.backup42.desktop.CPDesktop
10672 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % artsmessage -i Sound server informational~l continue, using the null output device.
13049 be/7 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % java -Dfile.encoding=UTF-8 -Dapp=CrashPla~hplan/lang com.backup42.service.CPService
13162 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % java -Dfile.encoding=UTF-8 -Dapp=CrashPla~ang:./skin com.backup42.desktop.CPDeskto
虽然我不知道在这里寻找什么..
更新#1
这是终止 crashplan 后 iotop 的输出。这个“rsync”进程是什么?我没有在机器上运行任何 rsync。看起来“updatedb”和“rsynch”用完了所有 IO。
Total DISK READ: 124.78 K/s | Total DISK WRITE: 0.00 B/s
TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND
20772 be/7 root 14.68 K/s 7.34 K/s 0.00 % 99.99 % updatedb -f sysfs
17446 be/4 root 110.10 K/s 0.00 B/s 0.00 % 92.75 % [rsync]
155 be/3 root 0.00 B/s 0.00 B/s 0.00 % 0.09 % [kacpid]
20214 be/4 root 0.00 B/s 0.00 B/s 92.75 % 0.09 % bash /usr/bin/run-parts /etc/cron.daily
264 be/3 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % [cqueue/0]
20767 be/7 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % sh /etc/cron.daily/mlocate.cron
20213 be/4 root 0.00 B/s 0.00 B/s 0.00 % 0.00 % crond
iostat 的输出:
avg-cpu: %user %nice %system %iowait %steal %idle
1.15 0.41 2.91 53.18 0.00 42.36
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 25.00 197.88 86.24 254108937 110753694
sda1 0.00 0.00 0.00 2431 14
sda2 25.00 197.87 86.24 254104429 110753680
sdb 92.12 141.39 2951.64 181571178 3790455360
sdb1 92.12 141.39 2951.64 181570594 3790455360
dm-0 418.25 339.26 3037.88 435672794 3901209424
dm-1 0.00 0.00 0.00 1376 216