問題描述
U盤掛載目錄為/MNT,在執行如下mount命令的時候系統提示報錯,顯示找到不該設備
# mount -t vfat /dev/sda1 /mnt
mount: mounting /dev/sda1 on /mnt/ failed: No such device
可是在查看ls /dev/sda1是,顯示設備是存在的,之后重啟過服務器,也更換過U盤,情況仍然一樣。
# ls /dev/sda1 -l
brw-r--r-- 1 root root 8, 1 Sep 8 15:44 /dev/sda1
解決方案
Linux系統對於USB的設備的支持關鍵在於驅動,沒有驅動設備時mount執行是肯定不成的。
解決步驟:
1./sbin/lsmod看是否有usb-storage。如果沒有的話:cd /lib/modules/2.4.20-8/kernel/drivers/usb
for v in *.o storage/*.o do /sbin/insmod $v done
2.再執行/sbin/lsmod,這時該有usbcore、usb-ohci(或usb-uhci,根據主板芯片組而不同)、usb-storage、scsi_mod等內容顯示。其中usb-storage的狀態應該為 (unused)
3.重新拔插U盤,多次執行/sbin/lsmod命令,期間可以觀察到usb-storage的狀態應為Initializing,持續時間大約半分鍾,這就是系統在識別新設備。在系統識別到之后再執行mount命令就能正常mount了。Linux不像Windows一樣,接上新硬件后可以自動識別,在Linux下無法自動識別新硬件的,需要手動去識別。
fdisk -l
mount -t msdos /dev/?? /mnt