fre*_*sat 4 usb freeze hard-drive
当我尝试将大文件(1GB 或更多)传输到 USB 驱动器(2.0、3.0、HDD 或“笔式驱动器”)时,一切正常,文件传输正确(尝试了原始文件和传输文件的 md5 总和他们确实匹配)...
然而,无论是在命令行 (mv *bigfile* /media/*username*/*name_of_the_drive*/) 还是使用 GUI(目前在 Ubuntu 15.10 的 MATE 桌面上运行,但它也发生在其他版本上),在传输结束时对话框上的进度条冻结(使用控制台时它只是冻结) . 因此,当我“认为”传输完成时,我必须手动关闭对话框/终端。
此外,当我尝试使用Make Startup Disk 实用程序编写可启动 USB 驱动器时,该应用程序面临同样的问题并冻结,仍然保持“写入会话”打开,即使我关闭它也不允许我卸载 USB。在尝试其他版本的 Ubuntu 15.10(我已经尝试过几个)时,它实际上显示了一个对话框错误,内容如下:
“文件已正确传输到 USB 驱动器,但程序无法与内核通信写入完成。”
我很抱歉没有报告确切的警告,但我确实记得这就是我阅读的意思。
目前在安装了 GTX960M 和专有 Nvidia 驱动程序的 x64 笔记本电脑上运行 15.10 MATE、内核 4.4.1。
PS:我更新到 4.4.1 内核,看看是否可以解决问题,因为它仍然会在 4.2.0_27 上做同样的事情。但显然没有。
预先感谢您的帮助,
F。
我实际上在这里找到了答案,因为实际上问题是由于安装了 16GB RAM。写入缓冲区实际上太大了。我已经通过以 root 身份登录解决了:
su root
Run Code Online (Sandbox Code Playgroud)
然后将脏字节设置为一个设定的数字(我猜默认设置 0 实际上并没有给写缓存应该有多少上限),通过键入:
echo $((16*2048*2048)) > /proc/sys/vm/dirty_background_bytes
echo $((48*2048*2048)) > /proc/sys/vm/dirty_bytes
Run Code Online (Sandbox Code Playgroud)
我选择了这个尺寸作为一个很好的折衷方案,现在问题已经解决了。
| 归档时间: |
|
| 查看次数: |
8855 次 |
| 最近记录: |