两个示例案例:
- 示例 1:安装外部未加密驱动器 (GPT、ext4) 并从我的计算机的 SSD (GPT、ext4) 复制 8GB 文件 -> 整个 GUI 将变得无响应。没有输入设备工作。
- 示例 2:使用 Virtualbox 启动 40GB VM -> 整个 GUI 将无响应。没有输入设备可用。
使用iotop
我可以看到这些磁盘读/写操作占用了 100% 的 CPU。
移动大量数据时如何避免计算机无响应?
答案1
由于未知原因,I/O 调度程序已从默认配置更改(韓國- 完全公平排队)最后期限。
因为我有tlp 工具安装以降低功耗,我的解决方案是将所有驱动器的调度程序设置回默认值/etc/default/tlp
:
...
# Select io scheduler for the disk devices: noop/deadline/cfq (Default: cfq)
# Separate values for multiple devices with spaces.
#DISK_IOSCHED="cfq cfq"
...
在这一部分中,取消注释最后一行:
DISK_IOSCHED="cfq cfq"
或者,您也可以使用以下命令执行相同操作:
sudo sed -i 's/#DISK_IOSCHED/DISK_IOSCHED/' /etc/default/tlp