1.磁盘的基本分区Gdisk
前面我们已经了解到fdisk分区,但fdisk不支持给高于2TB的磁盘进行分区。如果有单块盘高于2TB,建议使用Gdisk进行分区。
1.使用gdisk进行磁盘分区
1.安装gdisk分区工具
[root@xuliangwei ~]# yum install gdisk -y
2.创建一个新分区,500MB大小
[root@baozexu ~]# gdisk /dev/sdb
Command (? for help): n #创建新分区
Partition number (1-128, default 1):
First sector (34-2097118, default = 2048) or {+-}size{KMGTP}:
Last sector (2048-2097118, default = 2097118) or {+-}size{KMGTP}: +500M #分配500M大小
Command (? for help): p #打印查看
Number Start (sector) End (sector) Size Code Name
1 2048 1026047 500.0 MiB 8300 Linux filesystem
Command (? for help): w #保存分区
Do you want to proceed? (Y/N): y #确认
OK; writing new GUID partition table (GPT) to /dev/sdb.
The operation has completed successfully.
3.创建完成后,可以尝试检查磁盘是否为gpt格式
[root@xuliangwei-node1 /]# fdisk /dev/sdb -l|grep type
Disk label type: gpt
4.安装parted, 刷新内核立即生效,无需重启
[root@baozexu ~]# yum -y install parted
[root@baozexu ~]# partprobe /dev/sdb
5.使用mkfs进行格式化磁盘。
[root@xuliangwei ~]# mkfs.xfs /dev/sdb
6.使用mount命令将某个目录挂载该分区,进行使用。
[root@baozexu ~]# mkdir /data_gdisk
[root@baozexu ~]# mount /dev/sdb /data_gdisk
6.磁盘挂载方式Mount
前面我们已经提到过,如果需要使用磁盘的空间,需要准备一个空的目录作为挂载点,与该设备进行关联。mount主要是为文件系统指定一个访问入口。
PS: 类似我的商场没有门,那么就无法进入购买商品,此时通过mount命令可以创建一个入口。给超市安装一个门。
1.通过mount进行挂载,但重启将会失效。我们称为临时生效。
选项:
-t指定文件系统挂载分区
-a 挂载/etc/fstab中的配置文件
-o 指定挂载参数
挂载/dev/sdb1至db1目录
[root@baozexu ~]# mkdir /db1
[root@baozexu ~]# mount -t xfs /dev/sdb1 /db1/
2.挂载的磁盘,如果不想使用可以使用umount进行卸载。
选项:
-l 强制卸载
1.卸载目录方式
[root@baozexu ~]# umount /db1
2.卸载设备方式
[root@baozexu ~]# umount /dev/sdb1
3.umount不能卸载的情况
[root@baozexui db1]#umount /db1
umount: /db1: device is
busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1)
PS: 如上情况解决办法有两种,
1.切换至其他目录
2.使用'-l'选项强制卸载
[root@student db1]# umount -l /db1
3.如果需要实现永久挂载则需要将挂载信息写入/etc/fstab配置文件中实现。
1.使用blkid命令获取各设备的UUID
[root@xuliangwei ~]# blkid |grep "sdb1"
/dev/sdb1:UUID="e271b5b2-b1ba-4b18-bde5-66e394fb02d9" TYPE="xfs"
2.使用UUID挂载磁盘sdb1分区至于db1, 测试挂载
[root@baozexu ~]# mount UUID="e271b5b2-b1ba-4b18-bde5-66e394fb02d9" /db1
3.写入/etc/fstab中,实现开机自动挂载
[root@baozexu ~]# tail -1 /etc/fstab
UUID=e271b5b2-b1ba- 4b18-bde5-66e394fb02d9 /db1 xfs defaults 0 0
4.加载fstab配置文件, 同时检测语法是否有错误
[root@baozexu ~]# mount –a
5./etc/fstab配置文件编写格式
/dev/mapper/centos-root / xfs defaults 0 0
第一列要挂载的设备
第二列挂载点(入口)
第三列文件系统类型
第四列:挂载参数。
参数 含义
1.async/sync 是否为同步方式运行。默认async
2.user/nouser 是否允许普通用户使用mount命令挂载。默认nouser
3.exec/noexe 是否允许可执行文件执行。默认exec
4.suid/nosuid 是否允许存在suid属性的文件。默认suid
5.auto/noauto 执行mount -a 命令时,此文件系统是否被主动挂载。默认auto
6.rw/ro 是否以只读或者读写模式进行挂载。默认rw
7.default 具有rw,suid,dev,exec,auto,nouser,async等默认参数的设定
第五列:是否进行备份。通常这个参数的值为0或者1
选项 含义
0 代表不做备份
1 代表要每天进行备份操作
2 代表不定日期的进行备份操作
第六列:是否检验扇区:开机的过程中,系统默认会以fsck检验我们系统是否为完整
选项 含义
0 不要检验磁盘是否有坏道
1 检验
2 校验 (当1级别检验完成之后进行2级别检验)
7.虚拟磁盘介绍SWAP
Swap分区在系统的物理内存不够时,将硬盘空间中的一部分空间释放出来,以供当前运行的程序使用。
PS: 当物理内存不够时会随机kill占用内存的进程,从而产生oom,临时使用swap可以解决。
1.创建分区,并格式化为swap分区。
[root@baozexu ~]# fdisk /dev/sdb #分1个G大小
[root@baozexu ~]# mkswap /dev/sdb1 #格式化为swap
2.查看当前swap分区大小,然后进行扩展和缩小
[root@xuliangwei ~]# free -m
total used free shared buff/cache available
Mem: 1980 1475 80 10 424 242
Swap: 2047 4 2043
3.扩展swap分区大小
[root@baozexu ~]# swapon /dev/sdb2
[root@baozexu ~]# free -m
total used free shared buff/cache available
Mem: 1980 1475 80 10 424 242
Swap: 3047 4 2043
[root@xuliangwei ~]# swapon -a #代表激活所有的swap
4.缩小swap分区大小
[root@baozexu ~]# swapoff /dev/sdb1
[root@baozexu ~]# free -m
total used free shared buff/cache available
Mem: 1980 1475 80 10 424 242
Swap: 2047 4 2043
[root@baozexui ~]# swapoff -a #代表关闭所有的swap
5.检查当前swap分区有哪些设备
[root@xuliangwei ~]# swapon -s
文件名 类型 大小 已用 权限
/dev/dm-1 partition 2097148 4616 -2
/dev/sdb1 partition 1048572 0 -2
6.如果磁盘没有过多的分区可用,也可以通过文件增加SWAP空间,本质上还是磁盘
[root@xuliangwei ~]# dd if=/dev/zero of=/opt/swap_file bs=1M count=500
[root@xuliangwei ~]# chmod 0600 /opt/swap_file
[root@xuliangwei ~]# mkswap -f /opt/swap_file
[root@xuliangwei ~]# swapon /opt/swap_file
[root@xuliangwei ~]# free -m
7.什么是磁盘阵列
1.提高磁盘的整体读写能力,和冗余能力,通常我们将其称为磁盘阵 列。
2.RAID
提高性能 保证安全
3.RAID模式