由于硬盘停止工作,我已在 32GB 的 U 盘上安装了 Ubuntu 16.04。它在 U 盘上运行正常,但在 U 盘上执行写入操作(有时也可能执行读取操作)时有时会挂起几秒钟。这经常导致应用程序在大约 5 到 15 秒内无响应(在此期间它们通常会变成灰色)。
启用写回缓存可能会有所帮助。有谁知道如何启用缓存,这样我就不会偶尔遭遇极高的写入(也许还有读取)时间?
我意识到这个问题是 如何更改 USB 驱动器的缓存模式?那里有一个答案说:
您可以尝试使用不同的选项重新安装分区,例如
sudo mount -o remount,rw,relatime,data=writeback /dev/sda1 /
另一种选择是通过 Grub 传递参数。
执行上述命令会出现以下错误消息(在dmesg
):
EXT4-fs (sdb1): Cannot change data mode on remount
我不知道如何通过 Grub 传递这个参数。
更新:
这是我的/etc/fstab
:
# <file system> <mount point> <type> <options> <dump> <pass>
# / was on /dev/sdc1 during installation
UUID=75f3da54-9738-4180-8f48-fcef12d8c1ca / ext4 errors=remount-ro 0 1
/dev/disk/by-label/DELLUTILITY /mnt/DELLUTILITY auto nosuid,nodev,nofail,noauto 0 0
/dev/disk/by-label/Recovery /mnt/Recovery auto nosuid,nodev,nofail,noauto 0 0
/dev/disk/by-label/win7 /mnt/win7 auto nosuid,nodev,nofail,noauto 0 0
/dev/disk/by-label/SPARE /mnt/SPARE auto nosuid,nodev,nofail,noauto 0 0
/dev/disk/by-label/GoFlex /mnt/GoFlex auto nosuid,nodev,nofail,noauto,x-gvfs-show,umask=002,uid=1000,gid=1000 0 0
/dev/sda
我的硬盘坏了/dev/sdb
是我的 U 盘。
答案1
如果您使用的是 USB 2.0(我希望您不是),速度将远低于典型的 HDD。无论如何,既然您已经询问了设置,其中/etc/udisks2/IDENTIFIER.conf
IDENTIFIER 是磁盘 MODEL 和 SERIAL 的连接(和连字符)值。
1. 找到配置文件
您可以使用以下命令获取磁盘的型号和序列号
udisksctl status
它会报告类似这样的内容
MODEL REVISION SERIAL DEVICE
--------------------------------------------------------------------------
WDC WD1600BEVT-22ZCT0 11.01A11 WD-WXE808S69993 sda
HL-DT-ST DVDRAM GSA-T20N EV02 M2L87NG3612 sr0
为了形成文件名,我首先将模型中的空格替换为-
。现在是WDC-WD1600BEVT-22ZCT0
。然后将序列号与连接起来-
。结果是WDC-WD1600BEVT-22ZCT0-WD-WXE808S69993
。所以,在我的例子中,设置文件位于/etc/udisks2/WDC-WD1600BEVT-22ZCT0-WD-WXE808S69993.conf
2.编辑配置文件
在该文件中应该有ini
像条目和部分这样的文件。在[ATA]
部分下,使用此键值创建一个条目WriteCacheEnabled=true
。
# See udisks(8) for the format of this file.
[ATA]
WriteCacheEnabled=true
保存文件。设置应在重启后生效。