Centos 磁盘管理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Centos 磁盘管理相关的知识,希望对你有一定的参考价值。
/etc/fstab
启动Linux、mount、 fsck 命令等命令执行都都会用到fstab信息,它提供的是系统上挂载设备的静态信息,比如 mount -a 就会挂载 /etc/fstab 里面指定的文件系统。当执行mount -a时只会挂载那些存在于/etc/fstab中的项目却未挂载的,已经挂载的不受影响。
/etc/mtab 是相对动态的。记载当前系统已经装载的文件系统,包括一些操作系统虚拟文件,这跟/etc/fstab有些不同。/etc/mtab文件在mount挂载、umount卸载时都会被更新,时刻跟踪当前系统中的分区挂载情况。当使用mount -n 时不会更新此文件,所以在某些指令会隐藏相对挂载情况。此文件在Centos7后变成了/proc/self/mounts的软链接。
/proc/mounts
这个文件是/proc/self/mounts的软链接,/proc下面的文件都是保存在内存中的,是内核自动生成的。所以/proc/mounts比/etc/mtab文件能更加真实的反映当前mount的情况。
Centos 6
Centos 7
使用mount -n 挂载后
可以通过比较/etc/fstab和/proc/mounts中的不同之处,得到被umount的设备
变相进行跨分区的硬链接
如果使用mount -B进行目录挂载目录的时候,/etc/fstab下的格式必须这么写
/源目录 /挂载目录 none bind
在/etc/fstab中提定defaults时,将包含以下挂载选项
Centos6-(2.6.30内核以后)defaults:rw, suid, dev, exec, auto, nouser, async, relatime.
Centos7-defaults:rw, suid, dev, exec, auto, nouser, async, relatime
利用目录挂载目录特点,可以同一个磁盘分区分别进行不同的磁盘挂载选项。
可以对文件创建文件系统,也就是本地loop设备
实例
#dd if=/dev/zero of=partfile bs=1M count=1024
可以创建成功,
同样的有Superblock信息哦
但是并不能进行分区操作哦
#mount -o loop /mnt/partfile /app/partloop/
可以进行磁盘文件操作的
复制到其他机器也是可以进行挂载使用的
Centos 6默认系统只有8个loop设备,手动使用mknod(#mknod loop8 c 1 5)创建的第8个以上的loop设备将会丢失,因此,如果想用更多的设备,请按以下方式添加
修改/boot/grub/grub.conf,找到 kernel这一行,在行末端加入max_loop=数量
loop设备如果需要开机挂载,需要在/etc/fstab按以下格式设置,
Centos6 必须要加上loop选项
/mnt/partfile /app/partloop ext4 defaults,loop 0 0
Centos7
与普通挂载没什么区别,注意文件系统格式不要搞错了。
/mnt/partfile /mnt/filesystem ext4 defaults 0 0
/etc/fstab格式
第一列:磁盘设备文件或者该设备的Label或者UUID。强烈建议使用UUID形式,设备名和Label都有可能发生变化。光盘没有UUID
第二列:设备的挂载点,就是你要挂载到哪个目录下
第三列:磁盘文件系统的格式。如果是目录挂载目录,则表示为none bind
第四列:文件系统的参数
第五列:能否被dump备份命令作用:dump是一个用来作为备份的命令。通常这个参数的值为0或者1
第六列:是否检验扇区:开机的过程中,系统默认会以fsck检验我们系统是否为完整(clean状态)。
创建额外的swap交换文件
系统安装好时候如果创建的swap分区小了,是无法进行扩容大。但是可以通过新增加一个swap文件进行扩容。
准备一个磁盘分区或前面讲到的loop设备,(但是,用文件创建的loop设备swap文件,性能肯定不如独立的分区性能好)
将文件系统格式化:编号为82的Linux swap。
使用#mkswap专用命令进行格式化
将此UUID写入/etc/fstab下面,注意格式(如下图)
先看看增加swap前的数值
使用指令# swapon -a生效
使用swapon -s 或#cat /proc/swaps查看详细的信息,包括优先级(Priority),优先级数字越大的优先使用。
设置swap的优先级需要修改/etc/fstab,想哪个优先使用将设置数值大一些
将新设定生效,注意,一定严格步骤,以下2种方式都可以
#swapoff UUID=ad2786dd-6056-4ea6-ba6a-c2915bab280f
#swapoff /dev/sdb1
再重新挂载/etc/fstab中的swap即可
总结:
可以指定swap分区0到32767的优先级,值越大优先级越高。如果用户没有指定,那么核心会自动给swap指定一个优先级,这个优先级从-1开始,每加入一个新的没有用户指定优先级的swap,会给这个优先级减一
先添加的swap的缺省优先级比较高,除非用户自己指定一个优先级,而用户指定的优先级(是正数)永远高于核心缺省指定的优先级(是负数)
优化性能:分布存放,高性能磁盘存放
关于光盘的设备号,编写脚本的时候可以统一使用/dev/cdrom来访问
关于eject命令,可以使用来弹出光驱或磁盘。
实际应用场景,如果在管理非常多的主机的时候,发现其中有一台上面有一个磁盘坏的时候,可以将其上面的光驱弹出,以便立即发现变化的主机,从而准确定位。
eject 弹出光驱托盘
ejetc -t 收起光驱托盘
关于制作光盘ISO,最简单的方式就是
cp /dev/cdrom file.iso
dd if=/dev/cdrom of=file.iso
以上是关于Centos 磁盘管理的主要内容,如果未能解决你的问题,请参考以下文章
Linux CentOS 8(磁盘设备与硬盘设备的概述与管理)