簡介:
linux下如何掛接(mount)光盤鏡像文件、移動硬盤、U盤、Windows網絡共享和NFS網絡共享呢?
linux是一個優秀的開放源碼的操作系統,可以運行在大到巨型小到掌上型各類計算機系統上,隨著linux系統的日漸成熟和穩定以及它開放源代碼特有的優越性,linux在全世界得到了越來越廣泛的應用。現在許多企業的計算機系統都是由UNIX系統、Linux系統和Windows系統組成的混合系統,不同系統之間經常需要進行數據交換。下面我根據自己的實際工作經驗介紹一下如何在linux系統下掛接(mount)光盤鏡像文件、移動硬盤、U盤以及Windows網絡共享和UNIX NFS網絡共享。
掛接命令(mount)
首先,介紹一下掛接(mount)命令的使用方法,mount命令參數非常多,這裡主要講一下今天我們要用到的。
命令格式:
mount [-t vfstype] [-o options] device dir
其中:
1.-t vfstype 指定文件系統的類型,通常不必指定。mount 會自動選擇正確的類型。常用類型有:
光盤或光盤鏡像:iso9660。
DOS fat16文件系統:msdos。
Windows 9x fat32文件系統:vfat。
Windows NT ntfs文件系統:ntfs。
Mount Windows文件網絡共享:smbfs。
UNIX(LINUX) 文件網絡共享:nfs。
2.-o options 主要用來描述設備或檔案的掛接方式。常用的參數有:
loop:用來把一個文件當成硬盤分區掛接上系統。
ro:采用只讀方式掛接設備。
rw:采用讀寫方式掛接設備。
iocharset:指定訪問文件系統所用字符集。
3.device 要掛接(mount)的設備。
4.dir設備在系統上的掛接點(mount point)。
掛接光盤鏡像文件
由於近年來磁盤技術的巨大進步,新的電腦系統都配備了大容量的磁盤系統,在Windows下許多人都習慣把軟件和資料做成光盤鏡像文件通過虛擬光驅來使用。這樣做有許多好處:一、減輕了光驅的磨損;二、現在硬盤容量巨大存放幾十個光盤鏡像文件不成問題,隨用隨調十分方便;三、硬盤的讀取速度要遠遠高於光盤的讀取速度,CPU占用率大大降低。其實linux系統下制作和使用光盤鏡像比Windows系統更方便,不必借用任何第三方軟件包。
1、從光盤制作光盤鏡像文件。將光盤放入光驅,執行下面的命令。
#cp /dev/cdrom /home/sunky/mydisk.iso 或
#dd if=/dev/cdrom of=/home/sunky/mydisk.iso
注:執行上面的任何一條命令都可將當前光驅裡的光盤制作成光盤鏡像文件/home/sunky/mydisk.iso
2、將文件和目錄制作成光盤鏡像文件,執行下面的命令。
#mkisofs -r -J -V mydisk -o /home/sunky/mydisk.iso /home/sunky/ mydir
注:這條命令將/home/sunky/mydir目錄下所有的目錄和文件制作成光盤鏡像文件/home/sunky/mydisk.iso,光盤卷標為:mydisk
3、光盤鏡像文件的掛接(mount)
#mkdir /mnt/vcdrom
注:建立一個目錄用來作掛接點(mount point)
#mount -o loop -t iso9660 /home/sunky/mydisk.iso /mnt/vcdrom
注:使用/mnt/vcdrom就可以訪問盤鏡像文件mydisk.iso裡的所有文件了。
掛接移動硬盤
對linux系統而言,USB接口的移動硬盤是當作SCSI設備對待的。插入移動硬盤之前,應先用fdisk –l 或 more /proc/partitions查看系統的硬盤和硬盤分區情況。
[root@pldyrouter /]# fdisk -l
Disk /dev/sda: 73.4 GB, 73407820800 bytes
255 heads, 63 sectors/track, 8924 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 4 32098+ de Dell Utility
/dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
/dev/sda3 2555 7904 42973875 83 Linux
/dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
/dev/sda5 7905 8924 8193118+ 82 Linux swap
在這裡可以清楚地看到系統有一塊SCSI硬盤/dev/sda和它的四個磁盤分區/dev/sda1 -- /dev/sda4, /dev/sda5是分區/dev/sda4的邏輯分區。接好移動硬盤後,再用fdisk –l 或more /proc/partitions查看系統的硬盤和硬盤分區情況
[root@pldyrouter /]# fdisk -l
Disk /dev/sda: 73.4 GB, 73407820800 bytes
255 heads, 63 sectors/track, 8924 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 4 32098+ de Dell Utility
/dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
/dev/sda3 2555 7904 42973875 83 Linux
/dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
/dev/sda5 7905 8924 8193118+ 82 Linux swap
Disk /dev/sdc: 40.0 GB, 40007761920 bytes
255 heads, 63 sectors/track, 4864 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdc1 1 510 4096543+ 7 HPFS/NTFS
/dev/sdc2 511 4864 34973505 f Win95 Ext'd (LBA)
/dev/sdc5 511 4864 34973473+ b Win95 FAT32
大家應該可以發現多了一個SCSI硬盤/dev/sdc和它的兩個磁盤分區/dev/sdc1?、/dev/sdc2,其中/dev/sdc5是/dev/sdc2分區的邏輯分區。我們可以使用下面的命令掛接/dev/sdc1和/dev/sdc5。
#mkdir -p /mnt/usbhd1
#mkdir -p /mnt/usbhd2
注:建立目錄用來作掛接點(mount point)
#mount -t ntfs /dev/sdc1 /mnt/usbhd1
#mount -t vfat /dev/sdc5 /mnt/usbhd2
注:對ntfs格式的磁盤分區應使用-t ntfs 參數,對fat32格式的磁盤分區應使用-t vfat參數。若漢字文件名顯示為亂碼或不顯示,可以使用下面的命令格式。
#mount -t ntfs -o iocharset=cp936 /dev/sdc1 /mnt/usbhd1
#mount -t vfat -o iocharset=cp936 /dev/sdc5 /mnt/usbhd2
linux系統下使用fdisk分區命令和mkfs文件系統創建命令可以將移動硬盤的分區制作成linux系統所特有的ext2、ext3格式。這樣,在linux下使用就更方便了。使用下面的命令直接掛接即可。
#mount /dev/sdc1 /mnt/usbhd1
掛接U盤
和USB接口的移動硬盤一樣對linux系統而言U盤也是當作SCSI設備對待的。使用方法和移動硬盤完全一樣。插入U盤之前,應先用fdisk –l 或 more /proc/partitions查看系統的硬盤和硬盤分區情況。
[root@pldyrouter root]# fdisk -l
Disk /dev/sda: 73.4 GB, 73407820800 bytes
255 heads, 63 sectors/track, 8924 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 4 32098+ de Dell Utility
/dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
/dev/sda3 2555 7904 42973875 83 Linux
/dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
/dev/sda5 7905 8924 8193118+ 82 Linux swap
插入U盤後,再用fdisk –l 或 more /proc/partitions查看系統的硬盤和硬盤分區情況。
[root@pldyrouter root]# fdisk -l
Disk /dev/sda: 73.4 GB, 73407820800 bytes
255 heads, 63 sectors/track, 8924 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 1 4 32098+ de Dell Utility
/dev/sda2 * 5 2554 20482875 7 HPFS/NTFS
/dev/sda3 2555 7904 42973875 83 Linux
/dev/sda4 7905 8924 8193150 f Win95 Ext'd (LBA)
/dev/sda5 7905 8924 8193118+ 82 Linux swap
Disk /dev/sdd: 131 MB, 131072000 bytes
9 heads, 32 sectors/track, 888 cylinders
Units = cylinders of 288 * 512 = 147456 bytes
Device Boot Start End Blocks Id System
/dev/sdd1 * 1 889 127983+ b Win95 FAT32
Partition 1 has different physical/logical endings:
phys=(1000, 8, 32) logical=(888, 7, 31)
系統多了一個SCSI硬盤/dev/sdd和一個磁盤分區/dev/sdd1,/dev/sdd1就是我們要掛接的U盤。
#mkdir -p /mnt/usb
注:建立一個目錄用來作掛接點(mount point)
#mount -t vfat /dev/sdd1 /mnt/usb
注:現在可以通過/mnt/usb來訪問U盤了, 若漢字文件名顯示為亂碼或不顯示,可以使用下面的命令。
#mount -t vfat -o iocharset=cp936 /dev/sdd1 /mnt/usb
掛接Windows文件共享
Windows網絡共享的核心是SMB/CIFS,在linux下要掛接(mount)windows的磁盤共享,就必須安裝和使用samba軟件包。現在流行的linux發行版絕大多數已經包含了samba