mount 命令 2

mount和自动挂载
Mount挂载详解

常见操作:  vfat文件系统类型

挂载U盘:

#mount -t vfat /dev/sdb4 /USB

-t:指定要访问的类型

挂载移动硬盘:

#mount -t ntfs-3g /dev/sdb1 /USB

 

挂载镜像文件:

#mount -t iso9660 rhel6u4.iso /cd-rom -o loop  # loop选项用来挂载镜像文件,如果只挂载光盘不用loop

iso:虚拟光盘文件,刻光盘时候用

挂载光盘:

#mount -t iso9660 /dev/cdrom /cd-rom

 

强烈建议:一个设备不要被挂载多次!!zi!

eject 弹出光盘  eject -t自动弹回去

挂载共享目录

========================================================

 

挂载选项 -t 文件系统类型 -o 选项1,选项2...

示例:           选项

mount -t ext4 -o acl /dev/sdb1 /mnt/disk1

文件系统类型:ext4,nfs,cifs

 

例1:exec/noexec

[root@localhost ~]# mount                  /dev/vg01/lv01 /mnt/lv01

[root@localhost ~]# mount -o noexec /dev/vg01/lv02 /mnt/lv02

[root@localhost ~]# cp -rf /bin/date /mnt/lv01

[root@localhost ~]# cp -rf /bin/date /mnt/lv02

[root@localhost ~]# /mnt/lv01/date

Fri Jan 10 10:40:21 CST 2014

[root@localhost ~]# /mnt/lv02/date

-bash: /mnt/lv02/date: Permission denied

[root@localhost ~]# mount

/dev/mapper/vg01-lv01 on /mnt/lv01 type ext4 (rw)

/dev/mapper/vg01-lv02 on /mnt/lv02 type ext4 (rw,noexec)

 

没有指定任何选项,则为默认选项 man mount

defaults          默认选项

              Use  default  options: rw, suid, dev, exec, auto,

              nouser, async, and relatime.

              

常见的挂载选项

rw     读写

ro 只读

suid 支持suid

nosuid       不支持suid

dev 支持设备文件

nodev 不支持设备文件

noexec 不允许执行二进制文件

exec 允许执行二进制文件

auto mount -a 开机自动挂载

noauto mount -a 开机不自动挂载

async 异步写入 #很重要,每一个默认都是异步

sync 同步同入

noatime 不更新访问时间atime

usrquota 支持用户级磁盘配额功能

grpquota 支持组级磁盘配额功能

acl 支持acl功能

remount 在线重新挂载

 

========================================================

扩展知识:Relatime 驱动器访问优化

 

POSIX 标​​准​要​求​操​作​系​统​维​护​记​录​每​个​文​件​最​后​一​次​被​访​问​的​文​件​系​统​元​数​据​。​这​个​时​间​戳​被​称​为atime,

维​​护​它​需​要​一​个​重​复​的​对​存​储​的​写​入​操​作​。​这​些​写​入​操​作​让​存​储​是​设​备​及​其​连​接​保​持​忙​碌​和​通​电​状态​​。​因​

为​很​少​应​用​程​序​会​使​用​ atim e 数​​据​,所​​以​这​个​存​储​设​备​活​动​是​在​浪​费​电​力​。​特​别​是​即​使​没​有​从​存​储中​​读​取

该​文​件​也​会​发​生​写​入​存​储​的​事​件​,但​​是​从​缓​冲​中​写​入​。​有​时​,Linux 内​​核​还​支​持​ mount 的​​ noatime选​​项​,并​​

不​在​使​用​此​选​项​挂​载​的​文​件​系​统​中​写​入​ atime。​​但​是​只​是​关​闭​这​个​特​性​是​有​问​题​的​,因​​为​有​些​应用​​程​序​会依​

赖​ atime 数​​据​,并​​在​此​数​据​不​可​用​时​失​败​。

 

红​​帽​企​业​版​ Linux 6 使​​用​的​内​核​之​后​此​另​一​个​可​替​换​选​项​ -relatime。​​Relatime 维​​护​ atime数​​据​,但不​​是

​每​次​访​问​该​文​件​时​都​更​改​。​启​用​这​个​选​项​,则​​只​在​上​次​更​新​ atime(mtime)后​​修​改​该​文​件​时​,或​​者最​​后​一​次

​访​问​该​文​件​是​在​相​当​长​一​段​时​间​前​(默​​认​为​一​天​)时​​才​会​将​ atime 数​​据​写​入​磁​盘​。

默​​认​情​况​下​,所​​有​现​在​挂​载​的​文​件​系​统​都​启​用​ relatime。​​要​在​整​个​系​统​中​限​制​这​个​特​性​,请​​使​用​ boot 参

数​​ default_relatime=0。​​如​果​默​认​在​某​个​系​统​中​启​用​ relatime,您​​可​以​通​过​使​用​选​项​ norelatime

挂​​载​某​个​系​统​来​限​制​它​在​某​个​具​体​文​件​系​统​中​的​使​用​。​最​后​,要​​使​系​统​更​新​文​件​的​ atime 数​​据​的​默​认​周​期

有​​所​不​同​,请​​使​用​ relatime_interval= 引​​导​参​数​,以​​秒​为​单​位​指​定​周​期​。​默​认​值​为​ 86400。

========================================================

 

例2:async,sync

[root@localhost ~]# mount /dev/vg01/lv01  /mnt/lv01

[root@localhost ~]# mount -o sync /dev/vg01/lv02 /mnt/lv02

[root@localhost ~]# mount

/dev/mapper/vg01-lv01 on /mnt/lv01 type ext4 (rw)

/dev/mapper/vg01-lv02 on /mnt/lv02 type ext4 (rw,sync)

[root@localhost ~]# time cp -rf /etc /mnt/lv01

[root@localhost ~]# time cp -rf /etc /mnt/lv02

 

例3:acl

[root@localhost ~]# vim /etc/fstab

/dev/mapper/vg01-lv01   /mnt/lv01 ext4 defaults,acl 0 0

[root@localhost ~]# mount -o remount /mnt/lv01

[root@localhost ~]# mount

/dev/mapper/vg01-lv01 on /mnt/lv01 type ext4 (rw,acl)

 

 

挂载时可以使用(针对基本分区)

设备名 /dev/sda3     

卷标    LABEL yang           

UUID   UUID="353a34b8-9233-465c-b7cf-92c8d308c05b"

UDEV 可以给设备建立一个别名

 

例4:使用卷标挂载

[root@localhost ~]# tune2fs -L yang /dev/sda3 //设置卷标LABEL

tune2fs 1.39 (29-May-2006)

[root@localhost ~]# vim /etc/fstab

LABEL=yang               /mnt/disk1           ext4    defaults        0 0

 

例5:使用UUID挂载

[root@localhost ~]# blkid /dev/sda5

/dev/sda5: UUID="353a34b8-9233-465c-b7cf-92c8d308c05b" SEC_TYPE="ext2" TYPE="ext3"

[root@localhost ~]# vim /etc/fstab

UUID="353a34b8-9233-465c-b7cf-92c8d308c05b"  /mnt/disk1   ext4  defaults   0 0

 

扩展: dd </dev/cdrom > /dev/sdb/ ;eject

挂载ISO文件

1. 将光盘制作成iso

[root@localhost ~]# dd if=/dev/cdrom of=/rhel6.iso直接把物理光盘做成ISO#将光盘设备里面的文件一点点刻成rhel6.iso这个东西,直到刻完为止;就得到一个iso文件

[root@localhost ~]# dd </dev/cdrom >/rhel6.iso

 

2. 将文件制作成iso,例如将/etc制作成etc.iso

[root@localhost ~]# genisoimage -o /tmp/etc.iso -r /etc genisoimage可以做镜像文件-o指定输出文件叫什么名字

[root@localhost ~]# file /tmp/etc.iso

/var/etc.iso: ISO 9660 CD-ROM filesystem data 'CDROM                          '

 

3. 使用iso,挂载

[root@localhost ~]# mount -t iso9660 -o loop /tmp/etc.iso /mnt/iso/

 

Autofs也叫Automount,也叫触发挂载

Mount是临时的,想永久的只有改fstab,但是fstab又太直接了;有些设备不希望临时挂载;又不希望永久挂载;希望对于共享目录,用时挂载,不用自动卸载,不可能把一个共享目录也自动挂载上,用不用都挂着,没必要;而Autofs是由需求产生的,挂载是由访问产生的,卸载是由超时产生的;换句话讲,如果我们不访问,它是不挂载的;如果我们长期不访问,过不了多长时间,例如5分钟还是10分钟;时间是可以设置的;如果我们不访问,它就自动卸载掉了;这就是Autofs的机制;

Autofs有两个配置文件,一个是主配置文件,一个是子配置文件;里面记录的是不同的内容;主配置文件记录的叫监控目录,也叫触发目录;所有的挂载都在你访问的时候触发产生的;主配置文件里面所描述的是监控目录在哪?Autofs里面记录了监控目录,好处是用户不管访问哪个目录,只要不访问监控目录;就和Autofs没有关系;在子配置文件里面记录了每一个触发目录如果一旦被访问,执行什么挂载操作,具体的操作在子配置文件里;这是Autofs的两个配置文件;

 

例题:

一台server做共享,另外一台做Autofs访问共享agent

[root@server ~]# mkdir /tmp/share  #创建共享目录

[root@server ~]# yum  -y install nfs*

[root@server ~]# vi /etc/exports #是用来共享的 ;这是nfs网络配置系统文件; 如果没有共享就是空的

/tmp/share       *(rw,sync)  #/tmp/share 是要共享的目录;*代表的是所有主机都可以访问,如果要一台主机访问,就写IP地址;sync指的是要同步共享

[root@server ~]# service nfs start #启动服务,一般第一次都起不来,因为它依赖rpcbind服务 改完都重启

如果起不来,就[root@server ~]# service rphbind start #这是远程过程调用;把它起来,在重启nfs

[root@server ~]# chkconfig nfs on  #将其设置为开机自动启动

[root@server ~]# cd /tmp/share/

[root@server share]# touch a{1..5}  #在共享目录下创建测试文件

[root@server share]# ls

a  a1  a2  a3  a4  a5

[root@agent ~]# yum -y install nfs* #agent不需要启nfs服务

[root@agent ~]# mkdir /abc  #创建挂载点

[root@agent ~]# mount -t nfs 192.168.145.128:/tmp/share /abc #先用mount测试一下能不能挂载

[root@agent mount]# yum install nfs-utils* -y  #如果手工挂载不上,解决方法:

[root@agent ~]# cd /abc/  #进到挂载点,看看有没有挂载好的东西

[root@agent abc]# ls

a  a1  a2  a3  a4  a5

[root@agent abc]# umount /abc/

 

接下来讲:automount按需挂载

[root@agent ~]# mkdir /cdrom

[root@agent ~]# cd /cdrom/

[root@agent cdrom]# touch cdrom.file{1..5}

[root@agent cdrom]# ls

cdrom.file1  cdrom.file2  cdrom.file3  cdrom.file4  cdrom.file5

[root@agent cdrom]# genisoimage -o /iso.file.iso -r . #做成一个镜像

I: -input-charset not specified, using utf-8 (detected in locale settings)

Using CDROM000.FIL;1 for  /cdrom.file4 (cdrom.file3)

Using CDROM001.FIL;1 for  /cdrom.file3 (cdrom.file1)

Using CDROM002.FIL;1 for  /cdrom.file1 (cdrom.file5)

Using CDROM003.FIL;1 for  /cdrom.file5 (cdrom.file2)

Total translation table size: 0

Total rockridge attributes bytes: 584

Total directory bytes: 894

Path table size(bytes): 10

Max brk space used 0

175 extents written (0 MB)

[root@agent cdrom]# ls

cdrom.file1  cdrom.file2  cdrom.file3  cdrom.file4  cdrom.file5

[root@agent cdrom]# ls /iso.file.iso

[root@agent cdrom]# yum -y install autofs*  #安装automount包

监控目录是需要自己创建的

[root@agent ~]# mkdir /mount

[root@agent ~]# vim /etc/auto.master #打开主配置文件

6 /mount   /etc/auto.misc #/etc/auto.misc里面对应的是子配置文件;子配置文件里面记录的是当访问触发目录执行什么挂载操作;给我们一个模板,可配置文件模板,后面就是写的auto.misc

[root@agent ~]# vim /etc/auto.misc   #打开子配置文件

6 #cd             -fstype=iso9660,ro,nosuid,nodev :/dev/cdrom

16 share           -ro         192.168.145.128:/tmp/share

17 cdrom           -fstype=iso9660.ro.loop   :/iso.file.iso

[root@agent ~]# service autofs restart

[root@agent ~]# cd /mount/  #进入到监控目录

[root@agent mount]# ls #虽说什么都没有

[root@agent mount]# cd share  #但是可以进去

[root@agent share]# ls

a  a1  a2  a3  a4  a5

[root@agent share]# cd ..   #当你退出来的时候

[root@agent mount]# ls    #就发现有这个目录

Share  #过几分钟不访问,超时就会消失

[root@agent mount]# grep '^TIMEOUT' /etc/sysconfig/autofs

TIMEOUT=300   #默认为5分钟;超时时间,300秒后不访问数据,自动卸载

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值