当笔记本电脑闲置时,DVD 驱动器会不断地向上/向下旋转。我无法追踪是什么原因造成的。向上/向下旋转的过程非常嘈杂且令人不安。
lsof
找不到任何已打开设备文件的内容或任何使任何文件保持打开状态的内容。这是一些回归,但我没有看到任何可能导致它的更新。
驱动器通过 usdisk 挂载/卸载。
编辑:回答:
- 我需要查明这是回归
- dmesg没有错误
- 挂载磁盘时会发生这种情况
- 过去它与池化一起工作
- 最近唯一的改变是用名为“修复探测不存在的软盘上的长时间挂起”的补丁重建 udisk。
答案1
造成此行为的一个常见原因是 hald 和 udevd 等守护程序进行的设备轮询。您可以暂时禁用 hald 和 udev 的轮询,看看这些是否是您的情况的原因。
如果您正在运行暂停:
hal-disable-polling --device /dev/dvd
请注意,您的 DVD 驱动器可能不是符号链接的 /dev/dvd,它可能是 /dev/sr0、/dev/dvd0 等。如果您收到类似“找不到存储设备 /dev/dvd”的错误,您可以尝试以下方法之一其他设备名称。
现在暂时停止 udev 的轮询:
udisks --inhibit-polling /dev/dvd
(此命令将显示为挂起 - 它正在禁用轮询,直到您点击Ctrl-c
)
如果这会阻止您的设备频繁旋转,请参阅下面有关更改 udev 规则的注释。
如果禁用 hald 和 udisks 轮询没有影响,那么您可以使用以下命令重新启用设备的 halt 控制:
hal-disable-polling --enable-polling --device /dev/dvd
禁用 DVD 设备轮询可能会产生副作用,要求您手动安装光学介质。您的驱动器可能会继续向 udev 提供通知,告知它应在插入介质时采取某些操作。
让 udisk 忽略您的光学设备是一个简单的规则。我把我的放在 /etc/udev/rules.d/99-device-polling.rules 中:
SUBSYSTEM=="block", \
ENV{ID_VENDOR}=="MATSHITA*", \
ENV{ID_MODEL}=="*UJ-850*", \
ENV{UDISKS_DISABLE_POLLING}="1"
从 的输出中获取您的供应商和型号字符串udisks --show-info /dev/dvd
。通过运行使更改处于活动状态udevadm trigger
,然后重新检查udisks --show-info /dev/dvd
并记下“通过轮询检测:”行 - 它应该为 0。