在取消归档大文件时,Linux会慢慢爬行


3

我开始取消归档这个几千兆字节的RAR文件。电脑现在变得很慢,几乎冻结了。有时我可以移动鼠标一点,但就是这样。unarchiving过程似乎已经停止,所以现在我所能做的就是重启系统。我认为我不能在Linux中取消归档这个文件。

我在Windows中从未遇到过这个问题。怎么解决这个问题?

Answers:


5

由于爱荷华州,可能正在放缓。ionice命令应该允许您继续工作:

ionice -c3命令


4

尝试使用nice实用程序以较低优先级运行命令。解压缩大文件可能对CPU要求很高,因此它通常是用于衡量CPU基准测试和评论性能的工具之一。

例:

$ nice -15 ./myprogram

您指定的数字是默认优质级别的调整。-20是最高优先级,19是最低优先级。为root用户保留负数。


你的意思是-20是最低的,而不是最高的。:)为你修好了。
Sasha Chedygov 2010年

不要忘记ionice命令。
Janne Pikkarainen 2010年

@musicfreak我的意思是我所说的... -20是你可以给予一个过程的最高优先级,而不是最低优先级。因此,为什么只有root才能分配负优先级,因为它们具有最高优先级。
约翰T 2010年

哦,我明白了。那么你应该改写那句话,因为它没有多大意义。(尽管如此,还原,我的错误。)
Sasha Chedygov 2010年

nice是仅在运行程序时有效还是在已经运行的程序上运行?
Phenom 2010年

2

我也有同样的现象,但我想我找到了答案。我以前unrar在1个磁盘上使用,读写。由于这很多,所有其他进程都没有时间在磁盘上工作。现在我unrar将解压缩的项放在另一个磁盘上,而不是另一个分区,没有另一个物理磁盘。它有几个优点:

  1. 它的速度要快得多,因此计算机速度较慢的时间会减少。
  2. 计算机不像之前那样停止运行,因为它现在读取1个磁盘并写入另一个磁盘。换句话说,磁盘划分了总工作量。

这是一个简单的解决方案,但它的工作原理。


1

我找到了解决方案。我已经在Linux中安装了一个Windows虚拟机。我与虚拟机共享了存档所在的文件夹。然后在Windows中,我使用7-zip取消归档文件,一切顺利。花了很长时间,但我没有看到系统性能有任何明显的差异。7-zip不适用于Linux。Windows有时候仍然有用!



1

取消归档大档案应该不是问题,你只是看到别的东西的症状。

  • 您的Linux分区是否接近其容量?像95%满或更多?如果是这种情况,那么许多文件系统(包括ext3,ext4和reiserfs)将会慢得多。

  • Linux中的磁盘I / O速度是否正常?程序是否会在合理的时间内启动,使用文件管理器浏览目录是否会感觉很快或很慢?您是否尝试过一些基准程序,例如bonnie ++ionice

  • unarchiver是否分配了所有可用内存?尝试取消归档该程序包时请参阅顶部

有时,在长时间运行的磁盘活动突发期间,默认的cfq磁盘I / O调度程序可能会导致奇怪的问题。您可以尝试使用截止日期预期的调度程序。例如,截止日期对于数据库工作负载而言往往非常好,因此在这种情况下它也可能起作用。

echo deadline >/sys/block/sda/queue/scheduler

要么

echo anticipatory >/sys/block/sda/queue/scheduler

sda替换为您的硬盘名称。

这将是一个临时更改,通常我不建议在桌面使用中更改cfq,但如果您遇到其他I / O问题而不是这个未归档的东西,那么它可能值得一试。除非这一切只是因为unrar吃了所有的RAM ... :-)


1

我有一个类似的问题,一个大的.zip文件(1.4 Gb),其中包含近200,000个小文件。我的Ubuntu 13.10 64位将花费超过10个小时。没有冻结,系统并没有真正减速,只是解压缩速度非常慢。

我尝试使用Virtualbox和W7 64上面提到的虚拟机解决方案。出现了惊喜:

1)首先,我将文件夹共享到虚拟机并尝试在7-zip的相同位置(W7中的虚拟F:单元)解压缩。没有运气,同样蹩脚的速度将需要永远。7-zip报告初始输出为200 Kb / s,但它一直在减速直到我停止它(小于100 kb / s和7小时的ETA,但它可能会减慢更多并且更长时间)。

2)然后我将.zip文件移动到虚拟机的“硬盘驱动器”内部(vm认为是硬盘驱动器)。所以该文件不在Ubuntu的共享文件夹中。惊喜,惊喜,效果很好,输出功率约为2000 Kb / s,因此花了不到15分钟。

3)传闻上,具有完全相同硬件的32位Windows 7系统(不是虚拟机)大约需要一个小时,稳定输出大约500 kb / s,根据7-zip。我不知道32到64位的更改如何影响文件的解压缩,只是认为提及比较是件好事。

Ubuntu 13.10 64位,带有ext4,W7和NTFS都是vm 64bit和32位普通系统。令我感到困惑的是,W7虚拟机实际上正在使用底层的ext4文件系统,因为它是一个虚拟机,并且仍然可以实现这些速度。

我希望有些大师读到这个并想出来,这非常令人讨厌和有趣。


0

这可能是因为你没有内存。您可以重新分区您的硬盘驱动器以包含一个大的交换分区,但这就是它,AFAIK。


我在Windows中成功取消归档,无需升级RAM或使用交换分区。
Phenom 2010年

它不太可能是RAM,而是一个缓慢的CPU。
Sasha Chedygov 2010年

嗯。如果它不是RAM问题,也许很容易简单地转到gnome-system-monitor并给unarchiving过程一个较低的优先级(更高的数字)。然后,它不会减慢整个系统的速度。
xsznix 2010年

我的CPU并不慢。它有四个核心。
Phenom 2010年

0

所以我在Ubuntu 16.04上遇到了类似的问题。这个答案似乎有效,但后来又没有了。也许它会帮助那些了解这些领域的人。显示以下说明,但它直接取自引用的答案。

vm.dirty_background_ratio = 5
vm.dirty_ratio = 10

进入/etc/sysctl.conf。然后

sudo sysctl -p
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.