当我将 USB 调制解调器连接到我的机器时,它抱怨/dev/sr1
说不存在。因此,经过一番谷歌搜索后,我使用以下命令创建了此设备。
ls -l /dev/sr*
brw-rw----+ 1 root cdrom 11, 0 Aug 16 08:05 /dev/sr0
sudo mknod /dev/sr1 b 11 0
sudo chown -v :cdrom /dev/sr1
sudo chmod -v g+w /dev/sr1
ls -l /dev/sr*
brw-rw----+ 1 root cdrom 11, 0 Aug 16 08:05 /dev/sr0
brw-rw-r--+ 1 root cdrom 11, 0 Aug 16 08:10 /dev/sr1
然后我的调制解调器就正常工作了。但是,重启后,我发现该设备消失了,我必须再次创建该设备。
请告诉我,
- 为什么会发生设备消失这样的奇怪事情?
- 我该如何摆脱这种情况?
我正在使用 Ubuntu 15.04。
(当我准备点击“发布”按钮时,我注意到创建日期时间/dev/sr0
与今天早上的开机时间相吻合。
这些设备是在启动时创建的吗?
答案似乎是肯定的,
ls -l /dev/
total 0
lrwxrwxrwx 1 root root 7 Aug 16 08:14 atttyUSB1 -> ttyUSB1
crw------- 1 root root 10, 235 Aug 16 08:05 autofs
drwxr-xr-x 2 root root 640 Aug 16 08:14 block
drwxr-xr-x 2 root root 120 Aug 16 08:14 bsg
crw------- 1 root root 10, 234 Aug 16 08:05 btrfs-control
drwxr-xr-x 3 root root 60 Aug 16 2015 bus
lrwxrwxrwx 1 root root 3 Aug 16 08:14 cdrom -> sr0
lrwxrwxrwx 1 root root 3 Aug 16 08:14 cdrw -> sr0
drwxr-xr-x 2 root root 4300 Aug 16 08:14 char
crw------- 1 root root 5, 1 Aug 16 08:06 console
lrwxrwxrwx 1 root root 11 Aug 16 2015 core -> /proc/kc
<snipped>
所以,如果我问,我应该更新哪个列表以便 /dev/sr1
在启动时创建?我们能朝着正确的方向前进吗?)
答案1
这些设备是在启动时创建的吗?
是的。
因此,如果我问,我应该更新哪个列表才能在启动时创建 /dev/sr1?
DESCRIPTION
MAKEDEV is a script that will create the devices in /dev used to
interface with drivers in the kernel.
Note that programs giving the error ``ENOENT: No such file or
directory'' normally means that the device file is missing, whereas
``ENODEV: No such device'' normally means the kernel does not have the
driver configured or loaded.
关于您的sr1
:
CDROM DEVICES
sr or scd or scd-all
Creates scd{0..16} SCSI CD players and sr{0..16} symlinks for
these devices. cdrom is a symlink which can be created by the
user to the active CD device. It is not created by MAKEDEV.