目录
mount挂载
挂载方法
选项
查看设备
卸载命令
文件挂载配置文件fstab
交换文件与分区
swap优先级
三个工具free,df,du
扩展
移动介质
使用光盘
挂载USB设备
mount挂载
挂载就是将文件系统与根目录文件系统某现存的目录建立起关联关系,进而使得此目录作为其他文件访问入口的行为。
有挂载自然会有卸载,卸载的命令是umount我们一样会说明。
注意:
挂载点下原有文件在挂载完成后会被临时隐藏
挂载点目录一般为空
挂载方法
mount device mount_point
device:指明要挂在的设备
设备文件,如:/etc/sda1
卷标:-L 'label'
UUID:-U 'UUID'
伪文件系统名称:proc,sysfs,devtmpfs,configfs
mount_point:挂载点
实现存在,建议使用空目录
进程正在使用中的设备无法被卸载
选项:
-t 指定文件系统类型
-r 只读挂载
--remount,ro|rw 也会新/etc/fstab中的选项,如果与指定的冲突,则remount后指定的优先。
-n 隐藏挂载信息不显示,但在/proc/mounts可以查到
-a 读取/etc/fstab,挂载其中没有挂载的设备
-L 'LABEL': 以卷标指定挂载设备
-U 'UUID': 以UUID指定要挂载的设备
-B --bind 目录挂目录
-o 选项
sync,async 同步,异步(defaults)
atime(defaults),noatime 是否在读访问时更新atime
diratime(defaults),nodiratime
auto(defaults)/noauto 写在/etc/fstab当中的分区,是否在mount -a时被挂载
exec(defatuls)/noexec 在该分区所挂载的目录中的脚本是否可以执行。
dev(defaults)/nodev:是否支持在此文件系统上使用设备文件
suid(defaults)/nosuid:不否支持suid和sgid权限
remount:重新挂载
ro:只读
rw:读写(defaults)
user/nouser(defaults):是否允许普通用户挂载此设备,默认管理员才能挂载
acl:启用此文件系统上的acl功能
loop: 使用loop设备
defaults:相当于rw, nosuid, dev, exec, auto, nouser, async
查看设备
通过查看/etc/mtab文件显示当前已挂载的所有设备
命令:cat /etc/mtab
[root@CT731 ~]#cat /etc/mtab | egrep "/dev/sd" /dev/sda2 / xfs rw,seclabel,relatime,attr2,inode64,noquota 0 0 /dev/sda3 /app xfs rw,seclabel,relatime,attr2,inode64,noquota 0 0 /dev/sda1 /boot xfs rw,seclabel,relatime,attr2,inode64,noquota 0 0
查看内核追踪到的已挂载的所有设备
命令:cat /proc/mounts
[root@CT731 ~]#cat /proc/mounts | grep "/dev/sd" /dev/sda2 / xfs rw,seclabel,relatime,attr2,inode64,noquota 0 0 /dev/sda3 /app xfs rw,seclabel,relatime,attr2,inode64,noquota 0 0 /dev/sda1 /boot xfs rw,seclabel,relatime,attr2,inode64,noquota 0 0
卸载命令
查看挂载情况
findmnt MOUNT_POINT|device
root@CT731 ~]#findmnt /dev/sda1
TARGET SOURCE FSTYPE OPTIONS
/boot /dev/sda1 xfs rw,relatime,seclabel,attr2,inode64,noquota
查看正在访问指定文件系统的进程
lsof MOUNT_POINT
fuser -v MOUNT_POINT
[root@CT731 ~]#lsof /root COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME bash 33993 root cwd DIR 8,2 4096 100663361 /root lsof 34392 root cwd DIR 8,2 4096 100663361 /root lsof 34393 root cwd DIR 8,2 4096 100663361 /root
[root@CT731 ~]#fuser -v /root USER PID ACCESS COMMAND /root: root 33993 ..c.. bas
终止所有在正访问指定的文件系统的进程
fuser -km MOUNT_POINT
卸载
umount DEVICE
umount MOUNT_POINT
文件挂载配置文件fstab
在我们系统开机挂载时会首先在/etc/fstab中找到我们需要挂载的文件,使用mount –a一样会直接寻找fstab里面的没有挂载的文件系统进行挂载,所以fstab这个文件对于文件系统的挂载很是重要。
格式:
设备文件 挂载点 文件系统类型 挂载选项 转储频率 自检次序
要挂载的设备或伪文件系统
设备文件
LABEL: LABEL=""
UUID: UUID=""
伪文件系统名称: proc, sysfs
交换文件与分区
在某些时候,我们的内存可能不够用,此时我们需要将磁盘空间分出来一部分,充当临时的内存使用,由于磁盘与内存条的传输速度不一样,所以会让我们的机器很卡顿,但是无论如何,也比直接让内存饱和死机了好。
我们可以创建一个分区或一个文件作为内存的临时交换空间,我们将对两种方法都进行说明。首先我们来看两个命令:
启用: swapon
swapon [OPTION]... [DEVICE]
-a:激活所有的交换分区;
-p PRIORITY:指定优先级
-s:显示优先级
/etc/fstab:pri=value
禁用: swapoff [OPTION]... [DEVICE]
-a:关闭配置文件"/etc/fstab"中所有的交换空间
分区方式:
1.首先,创建一个分区
2.使用命令mkswap格式化分区为swap,可以用blkid查看
mkswap /dev/sdaX
3.写入到/etc/fstab里面
4.使用free查看内存大小
5使用swapon激活swap分区,如:swapon /dev/sda1
6.free查看,完成
[root@CT731 ~]#free -h total used free shared buff/cache available Mem: 1.8G 205M 1.3G 28M 306M 1.4G Swap: 4.0G 0B 4.0G
[root@CT731 ~]# mkswap /dev/sdb1 mkswap: /dev/sdb1: warning: wiping old ext4 signature. Setting up swapspace version 1, size = 8388604 KiB no label, UUID=8d4beabf-1365-4058-a109-bca7327c7b03
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=38149b41-f60a-4c98-9180-0538412fb728 / xfs defaults 0 0 UUID=01e8fa9d-ecad-4159-aabf-058af0c341f9 /app xfs defaults 0 0 UUID=f75f5a9d-6056-484f-9499-f8abe34279e1 /boot xfs defaults 0 0 UUID=35e32e02-9cab-45fd-8fe1-d3aa807c2599 swap swap defaults 0 0 UUID=8d4beabf-1365-4058-a109-bca7327c7b03 swap swap defaults 0 0 /dev/sr0 /mnt/cdrom iso9660 defaults 0 0
[root@CT731 ~]# swapon /dev/sdb1 [root@CT731 ~]# free -h total used free shared buff/cache available Mem: 1.8G 211M 1.3G 28M 306M 1.3G Swap: 11G 0B 11G
文件方式:
如:dd if=/dev/zero of=swap bs=1M count=4096
将该文件格式化,mkswap /path/swap
写入到/etc/fstab
使用swapon激活
查看free
由于文件方式是基于磁盘中文件的,所以速度比着磁盘还要低。(不再演示)
swap优先级
可以指定swap分区0到32767的优先级,值越大优先级越高如果用户没有指定,那么核心会自动给swap指定一个优先级这个优先级从-1开始,每加入一个新的没有用户指定优先级的swap,会给这个优先级减一
先添加的swap的缺省优先级比较高,除非用户自己指定一个优先级,而用户指定的优先级(是正数)永远高于核心缺省指定的优先级(是负数)
优化性能:分布存放,高性能磁盘存放
三个工具free,df,du
free:
内存空间使用状态:
free [OPTION]
-m: 以MB为单位
-g: 以GB为单位
[root@CT731 ~]# free -m total used free shared buff/cache available Mem: 1823 212 1304 28 306 1379 Swap: 12287 0 12287 [root@CT731 ~]# free -h total used free shared buff/cache available Mem: 1.8G 212M 1.3G 28M 306M 1.3G Swap: 11G 0B 11G [root@CT731 ~]# free -g total used free shared buff/cache available Mem: 1 0 1 0 0 1 Swap: 11 0 11
df:
文件系统空间占用等信息的查看工具:
df [OPTION]... [FILE]...
-H 以1000为单位
-T 文件系统类型
-h: human-readable
-i: inodes instead of blocks
-P: 以Posix兼容的格式输出
[root@CT691 ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda2 50G 4.4G 43G 10% / tmpfs 932M 0 932M 0% /dev/shm /dev/sda3 50G 52M 47G 1% /app /dev/sda1 2.0G 42M 1.8G 3% /boot /dev/sr0 3.7G 3.7G 0 100% /mnt/cdrom [root@CT691 ~]# df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/sda2 3276800 135803 3140997 5% / tmpfs 238410 1 238409 1% /dev/shm /dev/sda3 3276800 11 3276789 1% /app /dev/sda1 131072 39 131033 1% /boot /dev/sr0 0 0 0 - /mnt/cdrom
du:
查看某目录总体空间占用状态:
du [OPTION]... DIR
-h: human-readable
-s: summary
[root@CT691 ~]#du -hs /etc/ 41M /etc/ [root@CT691 ~]#du -s /etc/ 41880 /etc/
扩展
移动介质
挂载意味着使外来的文件系统看起来如同是主目录树的一部分
访问前、介质必须被挂载
摘除时,介质必须被卸载
按照默认设置,非根用户只能挂载某些设备(光盘、 DVD、软盘、 USB等等)
挂载点通常在/media 或/mnt下
使用光盘
挂载光盘
mount /dev/srX /mnt/cdrom
注意:光盘必须存在,cdrom目录必须存在
mount -o loop /root/centos69_1.iso /mnt/centos69
/root/centos69_1.iso /mnt/centos69 iso9660 defaults,loop 0 0
弹出光盘
eject –r卸载并退出光盘
创建ISO文件
cp /dev/cdrom /root/centos7.iso 源是设备,可以直接复制
mkisofs -r -o /root/etc.iso /etc 源是目录或文件
刻录光盘
wodim –v –eject centos.iso(几乎不再用)
挂载USB设备
手动挂载
mount /dev/sdb1 /mnt
查看USB设备是否识别
lsusb