当我将数据写入 USB 设备(如记忆棒或外部硬盘驱动器)时,Ubuntu 显示数据以非常高的速率传输,传输速度非常快。但是,当 Ubuntu 说它完成时,USB 写入 LED 闪烁了很长时间。当我在闪烁期间拔出 USB 时,实际上并未完成数据传输,并且并非所有数据都已写入。
有没有办法解决这个问题?
发生这种情况是因为 Ubuntu 从要写入 USB 的磁盘中获取所有数据并将其保存在 RAM 缓冲区中(取决于 RAM 的容量)。然后Ubuntu显示数据已写入USB但实际上数据正在从缓冲区传输到USB。因此,如果您在传输过程中移除 USB(尽管 Ubuntu 已向您显示传输已完成),您会发现所有数据尚未传输。您可以使用
sudo iotop
检查磁盘和其他 I/O 之间的实时传输,当您发现传输确实完成时,您可以安全地移除 USB。
在拉出驱动器之前正确卸载驱动器。从终端,使用sync使其立即写入,sudo umount /path/to/stick以正确卸载它。在 GUI 文件管理器中,有很多方法可以执行此操作 - 驱动器图标旁边可能有一个符号,或者右键单击它并弹出或卸载。
您无法可靠地在任何常见操作系统中拔出一根棍子,因为写入会被缓存以使您的命令优先 - 如果您进行了多次编辑并且它让您等待每次写入,您不会喜欢它。它与 Windows 的“安全删除..”相同
| 归档时间: |
|
| 查看次数: |
7368 次 |
| 最近记录: |