我开始取消归档这个几千兆字节的RAR文件。电脑现在变得很慢,几乎冻结了。有时我可以移动鼠标一点,但就是这样。unarchiving过程似乎已经停止,所以现在我所能做的就是重启系统。我认为我不能在Linux中取消归档这个文件。
我在Windows中从未遇到过这个问题。怎么解决这个问题?
我开始取消归档这个几千兆字节的RAR文件。电脑现在变得很慢,几乎冻结了。有时我可以移动鼠标一点,但就是这样。unarchiving过程似乎已经停止,所以现在我所能做的就是重启系统。我认为我不能在Linux中取消归档这个文件。
我在Windows中从未遇到过这个问题。怎么解决这个问题?
Answers:
尝试使用nice实用程序以较低优先级运行命令。解压缩大文件可能对CPU要求很高,因此它通常是用于衡量CPU基准测试和评论性能的工具之一。
例:
$ nice -15 ./myprogram
您指定的数字是默认优质级别的调整。-20是最高优先级,19是最低优先级。为root用户保留负数。
我找到了解决方案。我已经在Linux中安装了一个Windows虚拟机。我与虚拟机共享了存档所在的文件夹。然后在Windows中,我使用7-zip取消归档文件,一切顺利。花了很长时间,但我没有看到系统性能有任何明显的差异。7-zip不适用于Linux。Windows有时候仍然有用!
取消归档大档案应该不是问题,你只是看到别的东西的症状。
您的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 ... :-)
我有一个类似的问题,一个大的.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文件系统,因为它是一个虚拟机,并且仍然可以实现这些速度。
我希望有些大师读到这个并想出来,这非常令人讨厌和有趣。
这可能是因为你没有内存。您可以重新分区您的硬盘驱动器以包含一个大的交换分区,但这就是它,AFAIK。
所以我在Ubuntu 16.04上遇到了类似的问题。这个答案似乎有效,但后来又没有了。也许它会帮助那些了解这些领域的人。显示以下说明,但它直接取自引用的答案。
vm.dirty_background_ratio = 5
vm.dirty_ratio = 10
进入/etc/sysctl.conf。然后
sudo sysctl -p