现在的位置: 首页 > 综合 > 正文

挂载U盘的方法

2018年04月22日 ⁄ 综合 ⁄ 共 2629字 ⁄ 字号 评论关闭

一 :

U盘等USB设备在Linux下识别成scsi设备,现确定你的机器上是否有SCSI硬盘,如果有那么U盘将顺延SCSI硬盘的盘符。
例如:本机有两块SCSI硬盘那么该硬盘的地址为/dev/sda及/dev/sdb,那么u盘将是/dev/sdc,一般普通的PC机是没有SCSI硬盘所以u盘一般识别为/dev/sda。那么/dev/sda1表示u盘的第一个分区,如果有第二个分区则是/dev/sda2,类推。
(另:linux及unix中设备是用文件表示,所以上述硬盘地址都是一个文件,对硬盘操作也就是对该文件操作)
那么挂接u盘的时候需要使用命令mount
对mount命令不清楚可使用man命令查看帮助:
man mount

挂接命令:
mount /dev/sda1 /mountpoint
其中/mountpoint为挂接点,是随意的一个空目录即可,建立目录的命令为:
mkdir /dirname

对于USB的硬盘应该差不多,可能需要加一个参数指定文件系统的格式(不确定,可以两种命令都试一下),具体可参考mount的-t参数(linux下)
可能的命令:
mount -t vfat /dev/sda1 /mountpoint

一、插入u盘到计算机,如果目前只插入了一个u盘而且你的硬盘不是scsi的硬盘接口的话,那它的硬件名称为:sda1。
二、在mnt目录下先建立一个u的目录
三、然后命令提示符#后输入:mount -t vfat /dev/sda1 /mnt/u
四、卸载时用umount /mnt/u

本人首先用 fdisk -l /dev/sda 后,检测到U盘为sda1
但当我用 mount -t vfat /dev/sda1/mnt/usb时却不成功,(usb目录已在mnt上建了)。
出现了:Usage: mount -V :print version
mount -h :print thishelp
........................
SO far the informational part. Next the mounting something somewhere
..........
Details found in /etc/fstab may be omitted
Note that one does not really mount a device,one mounts a filesystem of the given type found on the device.

插入U盘之后,按照下面的步骤:

1.fdisk -l /dev/sd*
   fdisk -l 列出指定设备的分区表信息。由于usb盘是被模拟为scsi设备访问,所以会被自动命名为sd*。
   通常这一步就能找到U盘,如果U盘有指示灯也会亮,表示被找到。

2.如果执行上一个命令没有反应,或者某些信息显示模块没有加入
   可以lsmod查看一下是否有usb-storage scsi_mod sd_mod模块。
   没有就modprobe [module],添加所缺模块。
   然后再试就ok

3.最后就是把U盘mount上去,这里需要先在mnt目录下面建一个usb目录
   mount /dev/sda /mnt/usb
   某些系统需要指定文件系统的类型,可以用
   mount -t vfat /dev/sda /mnt/usb

 

 

二:

虽然VMwaretools可以方便地用虚拟机从xp向rh传文件,但是研究一下挂u盘也没什么不好。

继续昨天前天的工作,我继续跟手上的两个金士顿磕了下去。

 

要挂载U盘,首先要学会查看设备在/dev目录中的名称。用的是磁盘分区fdisk中的-l查看外围设备分区状况的命令。

根据网上别人的经验,一般用fdisk -l /dev/sd* (*从a到d不等)或者fdisk -l /dev/hd*。

究竟sd* hd*的含义是什么呢?据这篇文章

/dev/hd[a-t]:IDE设备
/dev/sd[a-z]:SCSI设备

另外
/dev/fd[0-7]:标准软驱
/dev/md[0-31]:软raid设备
/dev/loop[0-7]:本地回环设备
/dev/ram[0-15]:内存

/dev/null:无限数据接收设备 ,相当于回收站
/dev/zero:无限零资源
/dev/tty[0-63]:虚拟终端
/dev/ttyS[0-3]:串口
/dev/lp[0-3]:并口
/dev/console:控制台
/dev/fb[0-31]:framebuffer

/dev/cdrom => /dev/hdc
/dev/modem => /dev/ttyS[0-9]
/dev/pilot => /dev/ttyS[0-9]

 

而我硕果仅存的成果是sdb,也就是说,这个usb设备被linux系统当成scsi设备了。究竟usb和scsi的区别在哪里呢?肯定有区别,参考HP的说法。总觉得usb是基于scsi研发的,参考usb1.0到2.0的速度与两代scsi速度发现惊人的相似,只是猜测,一家之测。

而且,我试通道那个u盘是个山寨货,金士顿的u盘无论是hd*还是sd*在我机器上都没试出来。

据这位老师这篇文章的说法,u盘是可以通过添加模块加上的,然而,我的机器上金士顿是彻底罢工了。

老师的说法如下:

1.fdisk -l /dev/sd*
    fdisk -l 列出指定设备的分区表信息。由于usb盘是被模拟为scsi设备访问,所以会被自动命名为sd*。
    通常这一步就能找到U盘,如果U盘有指示灯也会亮,表示被找到。

2.如果执行上一个命令没有反应,或者某些信息显示模块没有加入
    可以lsmod查看一下是否有usb-storage scsi_mod sd_mod模块。
    没有就modprobe [module],添加所缺模块。
    然后再试就ok

3.最后就是把U盘mount上去,这里需要先在mnt目录下面建一个usb目录
    mount /dev/sda /mnt/usb
    某些系统需要指定文件系统的类型,可以用
    mount -t vfat /dev/sda /mnt/usb

 

其次这里有几个关于linux下系统是否检测到u盘的方法,

分别访问这些目录文件,都好用:

/proc/scsi/usb-storage-0/

/proc/partitions

/proc/bus/usb/devices

 

接着就是挂载,用的多了,不用赘言。mount -t vfat /dev/sdb1 /mnt/usb1

估计快到字数限制了。下篇讲解决装上VMware tools无法载入图形界面的解决方法

 

抱歉!评论已关闭.