Day 20-磁盘管理之基本分区Gdisk、挂载方式Mount与虚拟磁盘SWAP

一、基本分区Gdisk

因为基本分区fdisk不支持给高于2TB的磁盘进行分区,所以当单块磁盘高于2TB时,我们使用Gdisk进行分区。

1、使用gdisk进行磁盘分区(磁盘容量为4TB)

1)、安装gdisk分区工具

[root@oldboy ~]# yum install gdisk -y

2)、创建一个新分区,大小500MB。

Command (? for help): n
Partition number (1-128, default 1): 
First sector (34-8589934558, default = 2048) or {+-}size{KMGTP}: 
Last sector (2048-8589934558, default=8589934558) or {+-}size{KMGTP}:+500M     
······

3)、创建其他分区

Command (? for help): n
Partition number (2-128, default 2): 
First sector (34-8589934558, default = 1026048) or {+-}size{KMGTP}: 
Last sector (1026048-8589934558, default=8589934558) or {+-}size{KMGTP}: +1536G
·······

4)、打印查看并保存

(1)、打印查看
Command (? for help): p
Disk /dev/sdc: 8589934592 sectors, 4.0 TiB
······
Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048         1026047   500.0 MiB   8300  Linux filesystem
   2         1026048      3222251519   1.5 TiB     8300  Linux filesystem
   3      3222251520      8589934558   2.5 TiB     8300  Linux filesystem
(2)、保存
Command (? for help): w
······
Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/sdc.
The operation has completed successfully.

5)、创建完成后,可以尝试检查磁盘是否为gpt格式

[root@oldboy ~]# fdisk /dev/sdb -l|grep type
Disk label type: dos

6)、安装parted, 刷新内核立即生效,无需重启

[root@oldboy ~]# yum -y install parted
[root@oldboy ~]# partprobe /dev/sdb

7)、使用mkfs对磁盘分区进行格式化

[root@oldboy ~]# mkfs.xfs -f /dev/sdc1
[root@oldboy ~]# mkfs.xfs -f /dev/sdc2
[root@oldboy ~]# mkfs.xfs -f /dev/sdc3

8)、创建挂载点

[root@oldboy /]# mkdir /sdc_1
[root@oldboy /]# mkdir /sdc_2
[root@oldboy /]# mkdir /sdc_3

9)、挂载分区

[root@oldboy /]# mount /dev/sdc1 /sdc_1
[root@oldboy /]# mount /dev/sdc2 /sdc_2
[root@oldboy /]# mount /dev/sdc3 /sdc_3

10)、检查挂载详情

[root@oldboy /]# df -h
/dev/sdc1       497M   26M  472M   6% /sdc_1
/dev/sdc2       1.5T   33M  1.5T   1% /sdc_2
/dev/sdc3       2.5T   33M  2.5T   1% /sdc_3

[root@oldboy /]# lsblk
sdc      8:32   0    4T  0 disk 
├─sdc1   8:33   0  500M  0 part /sdc_1
├─sdc2   8:34   0  1.5T  0 part /sdc_2
└─sdc3   8:35   0  2.5T  0 part /sdc_3

二、磁盘挂载方式Mount

mount主要是为文件系统指定一个访问入口。

Day 20-磁盘管理之基本分区Gdisk、挂载方式Mount与虚拟磁盘SWAP_第1张图片

1、Mount磁盘挂载

1)、通过mount进行挂载,但重启将会失效。我们称为临时生效。

选项:
-t :指定文件系统挂载分区
-a:挂载/etc/fstab中的配置文件
-o:指定挂载参数 rw、ro

(1)、挂载/dev/sdb1至sdb_1目录
[root@oldboy ~]# mkdir /sdb_1
[root@oldboy ~]# mount -t xfs /dev/sdb1  /sdb_1/

(2)、/dev/sdd2挂载至/sdb_2目录,但只允许读,不允许写
[root@oldboy ~]# mount -o ro -t xfs /dev/sdb2 /sdb_2/
[root@oldboy ~]# cd /sdb_2
[root@oldboy sdb_2]# touch 123456
touch: cannot touch ‘123456’: Read-only file system

(3)、通过设备的UUID进行挂载(UUID==身份证)
[root@oldboy ~]# blkid
[root@oldboy ~]# mount UUID="70a9d9ae-0d99-42fe-a0e2-18f3bab6ebb5" /sdb_2

2)、永久挂载
(1)、使用blkid命令获取各设备的UUID

[root@oldboy ~]# blkid |grep "sdc1"
/dev/sdc1: UUID="0c6a2de6-8580-477f-88fa-3b1c86d09139"  TYPE="xfs"
······

(2)、使用UUID挂载磁盘sdc1分区至于sdc_1, 测试挂载

[root@oldboy ~]# mount UUID="0c6a2de6-8580-477f-88fa-3b1c86d09139" /sdc_1
[root@oldboy ~]# lsblk
sdc      8:32   0    4T  0 disk 
├─sdc1   8:33   0  500M  0 part /sdc_1
······

(3)、写入/etc/fstab中,实现开机自动挂载

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

[root@oldboy ~]# vim /etc/fstab 
/dev/sdc3     /sdc_2  xfs      defaults 0 0
UUID=db967d35-983e-44fc-8d2b-d5872ec51b49 /sdc_3  xfs   defaults  0 0

(4)、加载fstab配置文件, 同时检测语法是否有错误

[root@oldboy ~]# mount -a

(5)、/etc/fstab配置文件编写格式

要挂载的设备 挂载点(入口) 文件系统类型 挂载参数 是否备份 是否检验扇区
/dev/sdb1 /db1 xfs defaults 0 0

a.第四列:挂载参数。

参数 含义
async/sync 是否为同步方式运行。默认async
user/nouser 是否允许普通用户使用mount命令挂载。默认nouser
exec/noexe 是否允许可执行文件执行。默认exec
suid/nosuid 是否允许存在suid属性的文件。默认suid
auto/noauto 执行mount -a 命令时,此文件系统是否被主动挂载。默认auto
rw/ro 是否以只读或者读写模式进行挂载。默认rw
defaults 具有rw,suid,dev,exec,auto,nouser,async等默认参数的设定

b.第五列:是否进行备份。通常这个参数的值为0或者1

选项 含义
0 代表不做备份
1 代表要每天进行备份操作
2 代表不定日期的进行备份 (一般不使用)

c.第六列:是否检验扇区:开机的过程中,系统默认会以fsck检验我们系统是否为完整

选项 含义
0 不要检验磁盘是否有坏道
1 检验
2 校验 (当1级别检验完成之后进行2级别检验)

3)、挂载的磁盘,可以使用umount进行卸载

选项: -l 强制卸载

(1)、卸载目录方式
[root@oldboy ~]#  umount /sdb_1

(2)、卸载设备方式
[root@oldboy ~]#  umount /dev/sdb1

(3)、如果在挂载点目录下,是无法进行卸载,但可强制卸载,当退出该目录时,目录回归原始属性.
[root@oldboy ~]# cd sdb_1
[root@oldboy sdb_1]# umount /dev/sdb1
umount: /sdb_1: target is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))

三 、swap交换分区 (磁盘充当内存)

Swap分区在系统的物理内存不够时,将硬盘空间中的一部分空间释放出来,以供当前运行的程序使用。当物理内存不够时会随机kill占用内存的进程,从而产生oom,临时使用swap可以解决。

1、当内存不够,也没有配置swap时会出现什么情况?

系统会出现oom机制, out of memroy
Aug 20 11:13:43 oldboy kernel: Out of memory: Kill
process 7910 (dd) score 785 or sacrifice child
Aug 20 11:13:43 oldboy kernel: Killed process 7910
(dd) total-vm:1746408kB, anon-rss:1638504kB, file�rss:0kB, shmem-rss:0kB

2、当内存不够,有配置swap又会出现什么情况?

1)、会使用swap充当内容使用,防止系统出现oom故障。
2)、如果使用了swap,系统会变得特别的卡。

3、创建wap

1)、创建分区,并格式化为swap分区

[root@oldboy ~]# fdisk /dev/sdb              分1个G大小
/dev/sdb1            2048     2099199     1048576   83  Linux

[root@oldboy ~]# mkswap /dev/sdb1 格式化为swap
mkswap: /dev/sdb1: warning: wiping old xfs signature.
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=9e04ba03-5466-49bf-a297-63e468a60480

2)、查看当前swap分区大小,然后进行扩展和缩小

[root@oldboy ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1980         139        1687           9         152        1668
Swap:          1023           0        1023

(1)、扩展swap分区大小

[root@oldboy ~]# swapon /dev/sdb1
[root@oldboy ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1980         140        1687           9         152        1667
Swap:          2047           0        2047
[root@oldboy ~]# swapon -a 代表激活所有的swap

(2)、缩小swap分区大小

[root@oldboy ~]# swapoff /dev/sdb1
[root@oldboy ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1980         139        1687           9         152        1668
Swap:          1023           0        1023
[root@oldboy ~]# swapoff -a 代表关闭所有的swap
[root@oldboy ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1980         139        1689           9         151        1669
Swap:             0           0           0

3)、检查当前swap分区有哪些设备

[root@oldboy ~]# swapon -s
Filename                Type        Size    Used    Priority
/dev/sda2                               partition   1048572 0   -2
/dev/sdb1                               partition   1048572 0   -3

四、磁盘阵列

1、什么是磁盘阵列?

提高磁盘的整体读写能力,和冗余能力,通常我们将其称为磁盘阵列。

2、RAID的作用

1)、提高性能
2)、保证安全

3、RAID的模式

1)、RAID 0
Day 20-磁盘管理之基本分区Gdisk、挂载方式Mount与虚拟磁盘SWAP_第2张图片

2)、RAID 1
Day 20-磁盘管理之基本分区Gdisk、挂载方式Mount与虚拟磁盘SWAP_第3张图片

2)、RAID 5
Day 20-磁盘管理之基本分区Gdisk、挂载方式Mount与虚拟磁盘SWAP_第4张图片

2)、RAID 10
Day 20-磁盘管理之基本分区Gdisk、挂载方式Mount与虚拟磁盘SWAP_第5张图片

你可能感兴趣的:(Day 20-磁盘管理之基本分区Gdisk、挂载方式Mount与虚拟磁盘SWAP)