介绍node
在Linux系统中,磁盘分区是不可以直接访问的,须要将其挂载到系统中的某一个目录中(挂载点),而后经过访问挂载点来实现分区的访问. Unix类的操做系统如此,Windows也是同样;但Unix类的操做系统是经过mount进行的,挂载文件系统时要有挂载点,在安装Linux的过程当中,有时会提示咱们分区,而后创建文件系统,接着是选择挂载点。咱们在Linux系统的使用过程当中,也会挂载其它的硬盘分区,也要选中挂载点,挂载点一般是一个空置的目录,最好是咱们自建的空置目录;linux
一些临时设备也使用一些临时的挂载点,一般位于/media , 如/media/floppy,/media/cdrom , /media/caeram. 一般将/dev/cdrom 挂载至/media/cdrom(或mnt/cdrom) ,将/dev/fd0 挂载/mnt/floppy (或/media/floppy)windows
为提高性能,内核对全部设备操做作缓冲,这种机制要求对文件系统先使用umont 进行卸载,不然会形成数据的丢失甚至文件系统的损坏, 由于暂存在内存的数据来不及写回磁盘。服务器
挂载点:为访问磁盘上的分区,将文件系统的根目录映射至/文件系统中的一个已经存在的目录下。这个过程叫挂载。已经存在的目录就称为挂载点。能够用mount 查看系统当前的挂载状况。挂载将遮住挂载点原来的文件网络
挂载权限:默认只有根用户才能挂载和卸载设备,临时设备使用不一样的机制,控制台用户会变成一些设备的全部者。异步
2. sysopsisasync
mount [option] <device> <mount_point>ide
mount [option][-o mount_option] <device> <mount_point>oop
[mount_point]必须是一个已经存在的目录,这个目录能够不为空,但挂载后这个目录下原有内容不可访问,umount之后会恢复正常。性能
[device] 能够是一个分区,一个usb设备,光驱,软盘,网络共享等。
完整选项说明
-t vfstype |
挂载指定的文件系统类型:adfs, affs, autofs, coda, coherent, cramfs, devpts, efs, ext, ext2, ext3, hfs, hpfs, iso9660, jfs, minix, msdos, ncpfs, nfs, nfs4, ntfs, proc, qnx4, ramfs, reiserfs, romfs, smbfs, sysv, tmpfs, udf, ufs, umsdos, vfat, xenix, xfs, xiafs
通常文件类型,能够不须要指定就能够有相同自动检测(adfs, bfs, cramfs, ext, ext2, ext3, hfs, hpfs, iso9660, jfs, minix, ntfs, qnx4, reiserfs, romfs, udf, ufs, vxfs, xfs, xiafs 等文件系统),若是探测失败,就将访问/etc/filesystems ,以指定文件系统探测。说明:若是清楚文件系统,最好指定具体类型。探测错误将带来灾难性的。 多个文件系统能够用“,”分割开来 mount -a -t nomsdos,ext 将挂载fstab文件指定全部的文件系统,除了类型为 msdos 和 ext 的那一些。 常见文件类型
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-o options |
挂载时使用mount -o指定,若已经挂载的文件系统可使用mount -o remount,mount_options 直接修改挂载参数. 指定挂载系统选项:多个选项能够用","分割.某些选项只有在出如今文件 /etc/fstab 中时才有意义。下列选项能够用于任何要挂载的文件系统
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-a |
搜索/etc/fstab文件中知足条件的文件系统,进行挂载操做。 格式: mount -a -t type -o options 不须要指定设备/目录 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-f |
测试mount系统,只检查设备和目录,并不真正挂载文件系统 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-n |
不把挂载的记录,记录在/etc/mtab 文件中 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-r |
将文件系统安装为只读,同(-o ro) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-w |
将文件系统安装为可读写,同(-o rw) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-L label |
挂载具备指定卷标 label 的分区, 可使用Label挂载文件系统 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-w |
将文件系统安装为可读写,同(-o rw) |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-v |
显示详细的挂载进度 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-l |
列出全部已经挂载的文件系统列表 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
--bind |
将文件层次的一部分从新挂载到其余地方.只挂接单一的文件系统,若是目录有其它文件系统,将不能挂载。若是须要都挂载,能够用:--rbind 参数。 mount --bind olddir newdir 2个目录能够访问系统内容 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
--move |
将一个目录移到另外地方,mount --move olddir newdir |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-h |
显示帮助 |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-V |
显示版本 |
3. mount 文件系统的方法
挂载时知足3个条件:分区文件系统类型,对应设备文件,挂载点
可使用mount 手动实现
配置/etc/fstab (由mount 调用)实现自动挂载
使用autofs 服务按需挂载(须要使用时才自动挂载)
自动挂载
rc.local 脚本中添加mount命令挂载文件系统
gnome 图形环境会运行一个automounter程序自动监控光驱和自动挂载它,其只对光驱起做用。
4. eg
mount 不带参数,显示全部已经挂载的文件系统 /proc/mounts
mount | column -t 以清晰的格式显示全部挂载的文件系统
mount -a 挂载/etc/fstab中未挂载的设备(挂载/etc/fstab 中全部的文件系统 )
mount /dev/cdrom 挂载/etc/fstab中对应的文件系统
mount -o remount,rw / 从新以读写模式挂载/
mount -o remount,rw,auto / 从新挂载/目录,
mount -t tmpfs tmpfs /mnt -o size=1024m 挂载一个临时内存分区
mount -t cifs //192.168.1.3/game /media -o username=Joen%password
mount -t iso9660 -o loop <光盘镜像> <挂载点> 挂载ISO光盘镜像
mount -o loop file.iso /mnt/cdrom 挂载一个文件或ISO镜像文件
mount /dev/cdrom /mnt/cdrom
mount /dev/hda2 /mnt/hda2 挂载一个叫作hda2的盘 - 肯定目录 '/ mnt/hda2' 已经存在
umount /dev/hda2 卸载一个叫作hda2的盘 - 先从挂载点 '/ mnt/hda2' 退出
fuser -km /mnt/hda2 当设备繁忙时强制卸载
umount -n /mnt/hda2 运行卸载操做而不写入 /etc/mtab 文件- 当文件为只读或当磁盘写满时很是有用
mount /dev/fd0 /mnt/floppy 挂载一个软盘
mount /dev/hdc /mnt/cdrecorder 挂载一个cdrw或dvdrom
mount -t vfat /dev/hda5 /mnt/hda5 挂载一个Windows FAT32文件系统
mount /dev/sda1 /mnt/usbdisk 挂载一个usb 捷盘或闪存设备
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 挂载一个windows网络共享(samba)
showmount -e 192.168.0.30 查看链接
mount -t nfs 192.168.0.30:/tmp /mnt/nfs
mount --bind /olddir /newdir 将olddir和newdir挂载到同一个inode,挂载后的目录(newdir)继承了被挂载目录的全部属性(除了名称)