天天看點

Linux下如何挂載FAT32格式USB裝置

挂u盤之前,運作指令cat /proc/partitions,看看現在系統中有哪些分區。插上u盤以後,再次運作上述指令,看看多出來什麼分區.通常是sda1.

1、插入U盤

2、輸入 fdisk -l /dev/sda 檢視輸出結果,比如我的是這樣的:

[root@leason-laptop proc]# fdisk -l /dev/sda

Disk /dev/sda: 2004 MB, 2004877312 bytes

247 heads, 62 sectors/track, 255 cylinders

Units = cylinders of 15314 * 512 = 7840768 bytes

Device Boot Start End Blocks Id System

/dev/sda1 * 1 256 1957856 c W95 FAT32 (LBA)

Partition 1 has different physical/logical beginnings (non-Linux?):

phys=(0, 1, 1) logical=(0, 1, 3)

Partition 1 has different physical/logical endings:

phys=(505, 246, 0) logical=(255, 172, 42)

Partition 1 does not end on cylinder boundary.

[root@leason-laptop proc]# mount -t vfat /dev/sda1 /mnt/usb/

3、看了上面的輸出就知道U盤所在的裝置了,比如我的就是/dev/sda1,接着便是挂載了,假設我将U盤挂載到/mnt/usb目錄(沒有的話,建立)中,就是

如果是fat16就使用下面的指令

mount -t msdos /dev/sda1 /mnt/usb

如果是fat32

mount -t vfat /dev/sda1 /mnt/usb

如果是ext2格式,就用指令:

mount -t ext2 /dev/sda1 /mnt/usb

4、打開/mnt/usb 就可以看到你的U盤裡的東西了!

cd /mnt/usb

具體指令:

1.加挂FAT32檔案系統

最簡單的用法

mount /dev/hda6 /mnt/d

/dev/hda6是筆者Windows的D盤,/mnt/d是目錄加挂點。Linux會識别到/dev/hda6分區的檔案系統類型是什麼,然後加挂的。當然也可以指定分區的檔案系統類型,指令如下:

mount -t vfat /dev/hda6 /mnt/d

在實際中操作中,直接加挂一個windows的分區,中文的檔案名和目錄名會出現亂碼,為了避免這種情況可以指定字元集,指令如下:

mount /dev/hda6 /mnt/d -o codepage=936,iocharset=cp936

mount -t vfat /dev/hda6 /mnt/d -o codepage=936,iocharset=cp936

注意:cp936是指簡體中文,cp950是指繁體中文。

2.加挂NTFS檔案系統

在目前多數的Linux版本上,需要重編譯Linux核心才能,加挂NTFS檔案系統(編譯方法請參閱其它文章)。核心支援NTFS後,可以用以下指令加挂:

mount -t ntfs /dev/hda2 /mnt/c

同樣對于中文的檔案名和目錄名會出現亂碼的問題可以指定字元集,不過和加挂vfat分區不同,實際中用以下指令是可行的:

mount -t ntfs -o iocharset=cp936 /dev/hda2 /mnt/c -r

mount -t ntfs -o iocharset=cp936,rw /dev/hda2 /mnt/c

3.加挂U盤上的檔案系統

現在使用U盤的人越來越多了,其實在Linux下使用U盤也非常簡單,Linux對USB裝置有很好的支援,在你插入U盤後,U盤被識别為一個SCSI盤,通常您用以下指令就能加挂U盤上的檔案系統

mount /dev/sda1 /usb

同樣對于中文的檔案名和目錄名會出現亂碼的問題可以指定字元集,指令類似于上面對FAT32介紹的:

mount /dev/sda1 /usb -o pagecode=936,iocharset=cp936

4.加挂Linux系統通過samba共享出來的目錄

利用samba共享出來的目錄其實很難說其原來是哪種檔案系統,不過這一點不重要,隻要它對使用者是透明的就好啦。加挂時,我們指定類型為smbfs,在加挂samba共享的分區時,也會出現中文的檔案名和目錄名亂碼情況,可以用以下指令加挂:

mount -t smbfs -o

username=terry,password=terry,codepage=936,iocharset=cp936

//terry-linux/terry /mp3/

//192.168.100.228/terry /mp3/

注意:你可以不直接寫password=terry這個參數,系統界時會要你輸入密碼,這樣就可以防止有人直接看到你的密碼。視具體情況而定,-o後面的參數可以對應增減。

5.加挂Window系統共享出來的目錄

在區域網路中,常常需要去通路其它Windows系統共享出來的目錄,在Linux下,安裝了samba後就可以使用samba中帶的指令來通路Windows機器的共享資源。

用smbclient來列出Windows機器的共享資源

smbclient -L 192.168.100.111

根據上面所列出Windows的共享資源後,可以選擇需要加挂到本地Linux中去的Windows的共享資源,然後使用smbmount或mount來加挂,請參照下面幾條指令:

smbmount //192.168.100.111/public /public/

mount //192.168.100.111/d /mnt/cdrom -o username=terry (這樣要在指令行輸入密碼的)

mount //192.168.100.111/d /mnt/cdrom -o username=terry$1234 (這樣則不必在指令行輸入密碼)

注:除了上面介紹的指令行方法之外,這時最好的方法就是使用其它的用戶端,如LinNeighborhood、networkneighbours、ksmbshare等,請參考其它文章。

以上介紹的都是指令行的方式,每次使用時都要輸入一次,如果你常常要加挂一些檔案系統,想在啟動時自動加挂應該怎樣做呢?下面介紹兩種方法:

方法1.

把加挂的指令放在/etc/rc.d/rc.local中。

方法2.

修改分區配置檔案/etc/fstab,在啟動時加挂檔案系統,下面是我的/etc/fstab檔案:

LABEL=/ / ext3 defaults

1 1

none /dev/pts devpts gid=5,mode=620

0 0

LABEL=/home /home ext3 defaults

1 2

none /proc proc defaults

none /dev/shm tmpfs defaults

/dev/hda4 swap swap defaults

/dev/cdrom /mnt/cdrom iso9660

noauto,owner,kudzu,ro 0 0

/dev/hda2 /ntfs ntfs defaults,iocharset=cp936 0 0

/dev/hda6 /win vfat defaults,codepage=936,iocharset= cp936 0 0

//192.168.100.228/terry /mp3 smbfs username=terry,password=terry,codepage=cp936,iocharset=cp936 0 0

請注意最後三行:

倒數第四行,加挂我的C槽,NTFS格式的

倒數第三行,加挂我的D盤,FAT32格式的

倒數第二行,加挂的是我的區域網路中另一台安裝samba的Linux檔案伺服器上的一個目錄。

以上所有指令,必須以root身份才能執行

用完U盤之後,記得要解除安裝掉才能拔U盤,操作如下:

# umount -l /mnt/usb

繼續閱讀