DVD 驱动器自动打开

DVD 驱动器自动打开

我最近将我的 Dell Inspiron 5558 升级到了 Ubuntu 18.04。自从升级以来,DVD 驱动器一直在随机时间自动打开。我该如何解决这个问题?

答案1

Ubuntu 18.04 是否有setcd可用的软件包?如果有,请安装它,然后运行:

sudo setcd -s /dev/sr0

它应该输出类似这样的内容:

/dev/sr0:
  Auto close tray:     cleared
  Auto open tray:      cleared
  Use O_NONBLOCK flag: set
  Lock tray:           set
  Check CD type:       cleared

如果“自动打开托盘”显示的是“设置”,则运行sudo setcd -o0 /dev/sr0应该可以解决您的问题,直到下次重启。

根本原因可能是桌面环境中可用于安装可移动磁盘的工具。它会不时轮询 DVD 驱动器。如果设置了“自动打开托盘”,则轮询完成后托盘将打开,并且该工具将停止访问驱动器。

如果禁用“自动打开”功能对您有帮助,您可能还想禁用“自动关闭”功能,因为它可能会在您即将将光盘放入托盘时尝试关闭驱动器。我在使用 KDE 的 Debian 7 左右的系统中遇到过这个问题。

Ubuntu 18.04 有systemd,所以使这些设置持久的最佳方法可能是创建一个服务文件以setcd在启动时运行必要的命令。

/etc/systemd/system因此,创建一个具有描述性名称和后缀的文件.service。例如,我们将其命名为/etc/systemd/system/dvd-stop-open.service。文件的内容应为:

[Unit]
Description=Disable DVD auto-open
Documentation=man:setcd(1)

[Service]
Type=oneshot
ExecStart=/usr/bin/setcd -o0 /dev/sr0
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

创建服务文件后,启用该服务:

sudo systemctl enable dvd-stop-open.service

通过启动服务并验证Active:服务状态中的字段是否显示以下内容进行测试active (exited)

sudo systemctl start dvd-stop-open.service
systemctl status dvd-stop-open.service

或者,您可以通过在 /proc/sys/dev/cdrom/autoeject 中插入“0”来避免更改 systemd

选一个:

使用 rc.local:

echo 0 > /proc/sys/dev/cdrom/autoeject

使用 /etc/crontab:

@reboot root    echo 0 > /proc/sys/dev/cdrom/autoeject

或者作为一次性的、非持久的跨启动命令行使用 sudo:

echo 0 | sudo tee /proc/sys/dev/cdrom/autoeject

这将立即生效。无需重新启动 sysctl 或服务文件...

相关内容