mount是Linux下的一个命令,它可以将分区挂载或挂接到Linux的一个文件夹下,因而将分区和该目录联系上去,当我们只要访问这个文件夹时,就相当于访问该分区了。
一、手动挂载
命令格式:mount[-tvfstype][-ooptions]devicedir
1、-tvfstype指定文件系统的类型,一般毋须指定,mount会手动选择正确的类型。
光碟或光碟镜像:iso9660
DOSfat16文件系统:msdos
Windows9xfat32文件系统:vfat
WindowsNTntfs文件系统:ntfs
MountWindows文件网路共享:smbfsUNIX(LINUX)文件网路共享:nfs
2、-ooptions主要拿来描述设备或档案的挂接形式。
loop:拿来把一个文件当作硬碟分区挂接上系统
ro:采用只读形式挂接设备
rw:采用读写方法挂接设备
iocharset:指定访问文件系统所用字符集
3、device要挂接(mount)的设备。
4、dir设备在系统上的挂接点(mountpoint)。
挂接光碟镜像文件
---从光碟制做光碟镜像文件。将光碟装入硬盘,执行下边的命令。
#cp/dev/cdrom/home/xiuxiu/mydisk.iso或#ddif=/dev/cdromof=/home/xiuxiu/mydisk.iso
注:执行前面的任何一条命令都可将当前硬盘里的光碟制做成光碟镜像文件/home/xiuxiu/mydisk.iso
---将文件和目录制做成光碟镜像文件,执行下边的命令,genisoimage和mkisofs是同一个命令,-r或-rational-rock表示使用RockRidgeExtensions,并开放所有的文件读取权限,针对UNIX系统的ISO-9660文件系统,-J或-joliet表示使用Joliet格式的目录或则文件名称,谷歌公司自定义的光碟文件系统,也是ISO-9660的一种扩充,-V或-volid表示指定光碟的卷册集ID
#mkisofs-r-J-Vmydisk-o/home/xiuxiu/mydisk.iso/home/xiuxiu/mydir
注:这条命令将/home/xiuxiu/mydir目录下所有的目录和文件制做成光碟镜像文件/home/xiuxiu/mydisk.iso,光碟卷标为:mydisk
---光碟镜像文件的挂接(mount)
#mkdir/mnt/vcdrom
注:构建一个目录用来作挂接点(mountpoint)
#mount-oloop-tiso9660/home/xiuxiu/mydisk.iso/mnt/vcdrom
注:使用/mnt/vcdrom就可以访问光碟镜像文件mydisk.iso里的所有文件了。
挂接联通硬碟
对linux系统而言,USB插口的联通硬碟是当成SCSI设备对待的。插入联通硬碟之前,应先用fdisk–l或more/proc/partitions查看系统的硬碟和硬碟分区情况。接好联通硬碟后,再用fdisk–l或more。应当可以发觉多了一个SCSI硬碟,假设是/dev/sdc和它的两个c盘分区/dev/sdc1、/dev/sdc2,/dev/sdc5是/dev/sdc2分区的逻辑分区,我们可以使用下边的命令挂接/dev/sdc1和/dev/sdc5。
#mkdir-p/mnt/usbhd1#mkdir-p/mnt/usbhd2
注:构建目录用来作挂接点(mountpoint)
#mount-tntfs/dev/sdc1/mnt/usbhd1#mount-tvfat/dev/sdc5/mnt/usbhd2
注:对ntfs格式的c盘分区应使用-tntfs参数,对fat32格式的c盘分区应使用-tvfat参数。若汉字文件名显示为乱码或不显示linux 扫描scsi设备,可以使用下边的命令格式。
#mount-tntfs-oiocharset=cp936/dev/sdc1/mnt/usbhd1#mount-tvfat-oiocharset=cp936/dev/sdc5/mnt/usbhd2
linux系统下使用fdisk分区命令和mkfs文件系统创建命令可以将联通硬碟的分区制做成linux系统所特有的ext2、ext3、ext4格式。这样,在linux下使用下边的命令直接挂接即可。
#mount/dev/sdc1/mnt/usbhd1
挂接U盘
和USB插口的联通硬碟一样对linux系统而言U盘也是当成SCSI设备对待的。使用方式和联通硬碟完全一样。插入U盘之前,应先用fdisk–l或more/proc/partitions查看系统的硬碟和硬碟分区情况。
#mount-tvfat-oiocharset=cp936/dev/sdd1/mnt/usb
挂接Windows文件共享
Windows网路共享的核心是SMB/CIFS,SMB使用点对点的通信形式,一个顾客端向一个服务器提出恳求,服务器相应地回答。在linux下要挂接(mount)windows的c盘共享,就必须安装和使用samba软件包。现今流行的linux发行版绝大多数早已包含了samba软件包,假如安装linux系统时未安装samba请首先安装samba。当windows系统共享设置好之后,就可以在linux顾客端挂接(mount)了,具体操作如下:
#mkdir–p/mnt/samba
注:构建一个目录用来作挂接点(mountpoint)
#mount-tsmbfs-ousername=administrator,password=pas123//10.140.133.25/c$/mnt/samba
注:administrator和pas123是ip地址为10.140.133.25windows计算机的一个用户名和密码,c$是这台计算机的一个c盘共享。
这么就可以在linux系统上通过/mnt/samba来访问windows系统c盘上的文件了。
挂接UNIX系统NFS文件共享
类似于windows的网路共享,UNIX(Linux)系统也有自己的网路共享,那就是NFS(网路文件系统),下边我们就以SUNSolaris2.8和REDHATasserver3为例简单介绍一下在linux下怎样mountnfs网路共享。
在linux顾客端挂接(mount)NFSc盘共享之前,必须先配置好NFS服务端。
linux顾客端挂接(mount)其他linux系统或UNIX系统的NFS共享#mkdir–p/mnt/nfs
注:构建一个目录用来作挂接点(mountpoint)
#mount-tnfs-orw10.140.133.10:/export/home/xiuxiu/mnt/nfs
注:这儿假定10.140.133.10是NFS服务端的主机IP地址linux虚拟主机,其实这儿也可以使用主机名,但必须在本机/etc/hosts文件里降低服务端ip定义。/export/home/sunky为服务端共享的目录。
这么就可以在linux顾客端通过/mnt/nfs来访问其它linux系统或UNIX系统以NFS形式共享下来的文件了。
补充1:
SMB(ServerMessageBlock,又称CommonInternetFileSystem(CIFS))是由谷歌开发的一种软件程序级的网路传输合同,主要拿来促使一个网路上的机器共享计算机文件、打印机、串行端口和通信等资源。它也提供认证的行程间通信机能。它主要用在装有MicrosoftWindows的机器上,在这样的机器上被称为MicrosoftWindowsNetwork。经过Unix服务器厂商重新开发后,它可以用于联接Unix服务器和Windows顾客机,执行复印和文件共享等任务。
CIFS的消息格式不同与NFS的固定宽度格式,大多数消息体都包含可变长的数据,这带来一定的合同复杂性。CIFS消息通常在netbios或Tcp合同层上,分别使用不同的端口139或445,目前倾向于使用445端口。CIFS的消息包括一个消息头(32字节)和消息体(1个或多个,可变长)。
Samba才能为选取的Unix目录(包括所有子目录)构建网路共享。该功能促使Windows用户可以像访问普通Windows下的文件夹那样来通过网路访问那些Unix目录。
补充2:
1、Solaris系统NFS服务端配置方式如下:
(1)更改/etc/dfs/dfstab,降低共享目录
share-Fnfs-orw/export/home/xiuxiu
(2)启动nfs服务
#/etc/init.d/nfs.serverstart
(3)NFS服务启动之后,也可以使用下边的命令降低新的共享
#share/export/home/xiuxiu1#share/export/home/xiuxiu2
注:/export/home/xiuxiu1和/export/home/xiuxiu2是打算共享的目录
2、linux系统NFS服务端配置方式如下:
(1)更改/etc/exports,降低共享目录
/export/home/xiuxiu10.140.133.25(rw)/export/home/xiuxiu1*(rw)/export/home/xiuxiu2linux-client(rw)
注:/export/home/目录下的xiuxiu、xiuxiu1、xiuxiu2是打算共享的目录,10.140.133.25、*、
linux-client是被准许挂接此共享linux顾客机的IP地址或主机名。假如要使用主机名linux-client必须在服务端主机/etc/hosts文件里降低linux-client主机ip定义。格式如下:10.140.133.25linux-client
(2)启动与停止NFS服务
/etc/rc.d/init.d/portmapstart(在REDHAT中PORTMAP是默认启动的)/etc/rc.d/init.d/nfsstart启动NFS服务/etc/rc.d/init.d/nfsstop停止NFS服务
注:若更改/etc/export文件降低新的共享node.js安装linux,应先停止NFS服务,再启动NFS服务方能使新降低的共享起作用。
使用命令exportfs-rv也可以达到同样的疗效。
补充3:
linux加载硬盘:
(1)使用硬盘前,要先mount一下:
#mount/dev/cdrom/mnt/cdrom
之后您就可以步入/mnt/cdrom目录下读取光碟内容了。
(2)当您想退出光碟时,须使用umout命令,否则硬盘都会仍然处于死锁状态:
#umount/mnt/cdrom
二、开机手动挂载(永久挂载)
在/etc/fstab添加挂载信息,可以使用命令先获取UUID
通过blkid查看UUID
#blkid
##可使用设备名,或UUID
#vim/etc/fstab
三、自动挂载
实现原理:
先配置规则文件,配置子目录和挂载点。
之后配置窃听目录,定义窃听的父目录,指定规则文件的地址。
重启服务后,只要访问该目录,都会手动挂载上。
1.安装手动挂载的包
#yuminstallautofs-y
启动服务并设置开机自启动
systemctlstartautofs.service
systemctlenableautofs.service
配置规则文件
参考的模板:/etc/auto.misc
窃听的文件格式没有限制可以拷贝模板作为更改
cp/etc/auto.misc/etc/auto.aa(命名随便)下边以手动挂载nfs为参考编辑规则文件
vim/etc/auto.nfs规则文件窃听那个子目录
public-fstype=nfs:/shares/public
子目录文件系统类型共享目录地址
配置窃听目录
编辑窃听文件vim/etc/auto.master联通到最下行添加/mnt/etc/auto.aa要窃听的目录的父目录linux 扫描scsi设备,和规则文件地址父目录规则文件地址持续窃听的是/mnt--->按照规则文件:/etc/auto.aa
2.启动服务,关掉防火墙和SELINUX
#systemctl restart autofs
#vim/etc/auto.master
#vim/etc/auto.httpd
实例:给网页实现手动挂载