从本地到USB驱动器的cp影响桌面性能

背景

在复制大量数兆字节的声音文件时,Kubuntu桌面变成间歇性无响应状态(鼠标指针可以移动,但Firefox,Konsole和KDE本身暂时忽略键盘按下,鼠标点击和networkingI / O)。

$ uname -a Linux jaguar 2.6.32-22-generic #36-Ubuntu SMP Thu Jun 3 19:31:57 UTC 2010 x86_64 GNU/Linux $ cp -Rnv /home/user/music/flac/* . 

PID是11544,后来我试了一下:

 $ renice -n 19 -p 11544 $ ionice -c 3 -p 11544 

奇怪的是,当远程访问本地networking上的笔记本电脑(通过TightVNC),远程屏幕不断更新(如果我使用笔记本电脑)。 同样,从USB驱动器播放音乐文件(即使是未被完全复制的文件)也不会受到间歇性无响应问题的影响。

按Control-Z可以立即暂停复制过程结果的正常行为(一旦Kontro最终接受了击键)。

我试图完成的是以下几点:

  1. 将CD刻录到桌面(Linux)计算机。
  2. 将USB驱动器插入笔记本电脑
  3. 在笔记本电脑上运行WinSCP
  4. 将使用WinSCP的音乐文件从台式电脑复制到笔记本电脑上的USB驱动器。

然而,无论我使用什么软件(WinSCP,Tunnelier或Cygwin上的rsync),拷贝将以2MB / s的速度开始,然后在几秒钟后扼杀到60KB / s。 实际上,安全副本将会失速。

Googlin'

search发现了一些遇到类似问题的人。 其中大部分问题通过切换到Tunnelier而消失。 这不适合我。 其他人转向FreeBSD来解决这个问题。 目前这不是一个选项。 还有一些从SSH协议2切换到SSH协议1.这也不适用于我。

日志文件

在Windows上使用chkdsk /f将USB驱动器检出正常。 /var/log中的任何日志文件中都没有相关的错误消息。

性能

使用top监视系统在“暂停”发生时不会显示任何可疑内容。 (在没有响应的时候top继续刷新。) hald-addon-storage显示它每2秒轮询一次/dev/sr0 。 不pipe什么意思。

硬件

具有8 GB RAM的四核。 /tmp驱动器为空,并显示72%的使用率。 RAM有2 GB的空闲空间,即使在暂停期间,也不会有一个CPU超过1%的使用率。

有没有人对可能发生的事情有任何想法,或者有什么途径去探索,试图理解系统正在发生的事情?

我也有点困惑。 首先你显示的命令提示问题是从你的主目录拷贝东西到USB驱动器,然后你开始谈论你的Windows笔记本电脑和SCP。 那你到底在干什么?

WRT。 当向较慢的设备写入较重的东西时,Linux桌面交互性较差,最近的2.6.36内核包含一个修补程序 ,该修补程序应该解决这个特定的问题。

正如你似乎使用Ubuntu 10.04,你可以从内核PPA尝试新的内核 ,看看是否能解决你的问题。

在你提供的cp / renice / ionice例子之后,我完全迷失了方向。 :)在这些例子中USB驱动器是否连接到了你的桌面(所以不需要桌面和笔记本电脑之间的networkingstream量),或者你以后尝试使用桌面+(笔记本电脑+ USB)组合吗? 当你说“把CD刻录到Linux桌面”时,你把这些文件存储在本地硬盘还是USB盘上?

在许多Linux发行版中,默认情况下,USB驱动器将使用sync安装选项进行挂载。 这意味着更安全的写入,但另一方面,一些驱动器可能意味着非常缓慢的写入性能和所有其他有趣的副作用。 使用mount -o remount,async /your/usbdrive/mountpoint安装驱动器mount -o remount,async /your/usbdrive/mountpoint可能会加速写入操作。

如果你做了你的WinSCP节,Linux桌面是否会失速,而不是USB驱动器试图复制到笔记本电脑中的本地驱动器?