为什么不能将USB驱动器安装在ArchLinux上?


10

我刚开始运行ArchLinux,事情进展得很顺利,直到遇到这个问题为止-我觉得自己似乎遗漏了一些明显的东西,但是我不确定那是什么。

当我尝试安装USB记忆棒时,在/ dev中找不到该设备。

这是当我插入棍子时的dmesg:

USB 1-8: new high speed USB device using ehci_hcd and address 6

根据相关的ArchLinux页面,我收集到应该在那里看到设备节点的信息。我没看到。

这是我的lsusb输出:

Bus 001 Device 006: ID 13fe:1f00 Kingston Technology Company Inc. DataTraveler 2.0 4GB Flash Drive / Patriot Xporter 32GB (PEF32GUSB) Flash Drive

当我在/ dev中查看时,会看到sda,sda1..sda4,但是我敢肯定那只是我的硬盘驱动器及其分区。

有人对我缺少的东西有任何猜测吗?


可以用另一个USB记忆棒测试吗?设备是否出现在/ sys / block下?
user1686 2011年

Answers:



2

在/ dev中,您确实的确看到硬盘驱动器为/ sda和/ sdb等。如果转到/ dev / disk / by-id /,您将看到按唯一设备名称列出的其他列表。

挂载它时,请使用该名称,就像使用/ sda一样。

使用唯一的设备名称代替/ sda之类的名称的优点是,每次引导时都以相同的方式安装设备,而不考虑引导顺序或重新引导时留下的拇指驱动器,这会更改USB驱动器的顺序等。

这是我的Cowen mp3播放器的安装命令(一行):

mount /dev/disk/by-id/usb-COWON_J3_0221001E55027D511123241626337D51-0:0 /media/cowon-j3-main

要将micro Sd挂载到同一设备中,我返回到/ dev / disk / by-id来找到它的名称,然后这样挂载(一行):

mount /dev/disk/by-id/usb-COWON_J3_EXT_0221001E55027D511123241626337D51-0:1-part1 /media/cowen_j3_card/

当然,您必须先创建安装目录。我通常将具有固定介质的驱动器放在/ mnt /中,将具有可移动介质的驱动器放在/ media /中。其他人则不同。

从命令行直接使用它后,可以将其放在文件系统表中(以root身份编辑/ etc / fstab),以使其安装变得更容易。

这是fstab的摘录,显示了我如何安装4种不同的mp3播放器(每台设备1条线,如果其中装有microsd卡,则每台设备2条线):

#-------- Sansa 4GB e260在Rockbox模式下 
/ dev / disk / by-id / usb-Rockbox_Internal_Storage_90000000000000000A4B4520213ED0490-0:0-part1 / media / sansa-main auto noauto,用户0 0

/ dev / disk / by-id / usb-Rockbox_SD_Card_Slot_90000000000000000A4B4520213ED0490-0:1-part1 / media / sansa-main auto noauto,用户0 0

#-------- Sansa模式下的Sansa 8GB e280 
/ dev / disk / by-id / usb-SanDisk_Sansa_e280_D008E2146237B49F0000000000000000-0:1-part1 / media / sansa-main auto noauto,用户0 0

#--------科恩J3
/ dev / disk / by-id / usb-COWON_J3_0221001E55027D511123241626337D51-0:0 / media / cowen_j3_main / auto noauto,users,rw 0 0

/ dev / disk / by-id / usb-COWON_J3_EXT_0221001E55027D511123241626337D51-0:1-part1 / media / cowen_j3_card / auto noauto,users,rw 0 0

#--------科恩S9
/ dev / disk / by-id / usb-COWON_S9_1600001E55166FBC1025241539136FBC-0:0 / media / cowen_s9 / auto noauto,users,rw 0 0

一旦将其放入fstab中,而不是像我们上面那样用完整的命令挂载它,我可以用以下更短的方法挂载它:

mount /media/cowen_s9_main

它做同样的事情。

回顾一下:首先,确定将用于安装的安装点(目录)。第二,在/ dev / disk / by-id中找到唯一的设备名称,第三,使用您的唯一名称和您决定的安装点组装并运行mount命令。

然后,我通常会“ ls”挂载点,以确保设备在那里并且可读。

ls /media/cowen_s9_main

我比您可能需要的还要冗长,但是其他人也会阅读。同样,由于这里的编辑器,fstab摘录中的注释从其开头删除了octothorpe(#),它们必须存在才能起作用。


3
但这并不能真正回答设备节点不存在时的处理方法。
user1686'sep

在过去几年中,如何检测到USB大容量存储设备已经有了发展。如果您转到/ dev / disk / by-id /设备名称,则无论启动顺序或插入时间如何,它每次都起作用。USB大容量存储设备的唯一设备名称的另一个优点是,当您添加硬盘驱动器时,说sdd,而您的usb棒是sdd,现在您必须在fstab中编辑2行(用于sdd和sde),而不仅仅是为新硬盘添加一行。
skm 2011年

/ dev / disk / by-id /唯一名称与/ dev / sda相同的设备节点。如果您同时有两个相同的拇指驱动器,则唯一名称还可以解决歧义
skm 2011年

1
如果根本没有检测到设备,该怎么办?
user1686 2011年

Op说他无法通过在一个地方 / dev 查找来找到它。他没有说他根本找不到。我只是指出了另一个值得一看的地方,一个具有一定优势的地方。如果他读了此书,也许他可以看看是否根本找不到USB设备。如果是这样,我将在此基础上给出答案。希望这会有所帮助。嗯 您是否有找不到USB设备的问题?
skm 2011年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.