云计算学习笔记——Linux硬盘、硬盘划分、交换空间、自动挂载篇

云计算学习日记Day12》------ 从零开始的云计算之旅

今天是系统学习云计算的第十二天,记录了关于我的云计算学习,后续将每日更新我的笔记。欢迎大家一起来学习,如果内容有遗漏和错误,还请大家多多指正和包涵,谢谢大家。

最近的学习进度有点快,每天整理笔记的时间不是特别充足,我在努力赶进度

分区规划及使用

硬盘分区管理

磁盘结构及概念

扇区默认的大小512字节

计算机容量单位:

一般用B、KB、MB、GB、TB、PB、EB、ZB、YB、BB来表示,他们之间的关系是:

1KB=1024B

1MB=1024KB

1GB=1024MB......

一块硬盘的"艺术之旅"

(一块硬盘的存储数据思路)

硬盘识别→分区规划→格式化→挂载使用(访问文件系统)

-第一部分:硬盘识别

命令:lsblk

硬盘sdb是我刚刚添加的

-第二部分:分区规划

  • 分区模式:

    • MBR(msdos)
    • GRT
  • GPT:关于这个分区模式放后面一点讲

  • MBR:

    • 分区类型:主分区、扩展分区(占用所有剩余空间)、逻辑分区
    • 最多只能有4个分区
    • 扩展分区可以没有,最多有一个
    • 1~4个主分区,或者3个主分区+1个扩展分区(包含n个逻辑分区)
    • 最大支持容量为2.2TB的磁盘
    • 扩展分区不能格式化,空间不能直接存放数据
    • 可以用于存储数据的分区:主分区和逻辑分区
  • 使用fdisk分区工具

    • 查看分区表:fdisk -l 设备路径

    • 修改硬盘的分区表:fdisk 设备路径

      • 常用的交互指令
        • m:列出指令帮助
        • p:查看现有的分区表
        • n:新建分区
        • d:删除分区
        • q:放弃更改并退出
        • w:保存更改并退出
    • 规划好分区后使用fdisk -l命令查看分区:

-第三部分:格式化

  • 格式化作用:赋予空间文件系统的过程

  • 文件系统:空间存储数据的规则

    • Linux:ext4、xfs、FAT
    • Windows:NTFS、FAT
  • 常用的格式化工具

    • mkfs工具集
      • mkfs.ext3 分区设备路径
      • mkfs.ext4 分区设备路径
      • mkfs.xfs 分区设备路径
      • mkfs.vfat 分区设备路径
  • 创建文件系统(按照不同的类型格式化分区)

    • /dev/sdb2→ext4类型
    • /dev/sdb3→xfs类型
    • 如果系统已经格式化了,比如sdb1格式化为ext4文件类型,如何再将它的文件类型格式化为xfsne?这就需要强制格式化文件系统:添加选项-f
  • 创建完文件系统后,查看文件系统类型

    • 命令:blkid 分区设备路径

    • 在结果里面:TYPE后面就是文件系统类型

      [root@bogon ~]# blkid /dev/sdb1
      /dev/sdb1: UUID="09487f56-afd5-4413-9808-75754ec6a44c" TYPE="xfs" PARTUUID="656c46ee-01"
      [root@bogon ~]# blkid /dev/sdb2
      /dev/sdb2: UUID="91f39006-bcf4-48b6-a518-bb63fe7c4fae" TYPE="ext4" PARTUUID="656c46ee-02"
      [root@bogon ~]# blkid /dev/sdb3
      /dev/sdb3: UUID="04c3db5f-0282-495c-8261-daf14ae071a3" TYPE="xfs" PARTUUID="656c46ee-03"

-第四部分:挂载使用(访问文件系统)

为了一劳永逸,我们可以实现开机自动挂载

  • 配置文件/etc/fstab的记录格式
    • 设备路径 挂载点 类型 参数 备份标记 检测顺序

      #首先创建/test1和/test2两个目录作为挂载点
      [root@bogon ~]# mkdir /test1
      [root@bogon ~]# mkdir /test2

      #使用手动挂载,将/dev/sdb1挂载到/test1下
      [root@bogon ~]# mount /dev/sdb1 /test1

      #想要实现开机自动挂载,需要对配置文件/etc/fstab进行修改,再最后一行添加新的内容,如下所示
      [root@bogon ~]# vim /etc/fstab
      [root@bogon ~]# tail -1 /etc/fstab
      /dev/sdb2 /test2 ext4 defaults 0 0

      #使用命令mount -a检测配置,检测对于配置文件/etc/fstab的编写是否有问题
      [root@bogon ~]# mount -a

      #没有问题,使用df -h价差使用挂载情况
      [root@bogon ~]# df -h | grep /test1
      /dev/sdb1 20G 175M 20G 1% /test1
      [root@bogon ~]# df -h | grep /test2
      /dev/sdb2 9.8G 24K 9.3G 1% /test2

小总结

1.硬盘识别:lsblk

2.分区规划:fdisk

3.格式化:mkfs.xfs mkfs.ext3 mkfs.ext4 blkid

4.挂载使用:mount -a 、 /etc/fstab 、 df -h 、 lsblk

扩展分区和逻辑分区

过程步骤和主分区的创建规划相似,这是我划分完后的结果

硬盘分区进阶

GPT分区模式

  • GPT,GUID Partition Table
    • 全局唯一标识分区表
    • 突破固定大小64字节的分区表限制
    • 最多可支持128个主分区,最大支持18EB磁盘:1EB=1024PB 1PB=1024TB

GPT分区模式分区使用

复制代码
[root@bogon ~]# fdisk /dev/sdb
命令(输入 m 获取帮助):p

Disk /dev/sdb:80 GiB,85899345920 字节,167772160 个扇区
磁盘型号:VMware Virtual S
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x656c46ee

设备       启动     起点      末尾     扇区 大小 Id 类型
/dev/sdb1           2048  41945087 41943040  20G 83 Linux
/dev/sdb2       41945088  62916607 20971520  10G 83 Linux
/dev/sdb3       62916608  83888127 20971520  10G 83 Linux
/dev/sdb4       83888128 167772159 83884032  40G  5 扩展

命令(输入 m 获取帮助):n
所有主分区都在使用中。
添加逻辑分区 5
第一个扇区 (83890176-167772159, 默认 83890176): 
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (83890176-167772159, 默认 167772159): +2G

创建了一个新分区 5,类型为"Linux",大小为 2 GiB。

命令(输入 m 获取帮助):n
所有主分区都在使用中。
添加逻辑分区 6
第一个扇区 (88086528-167772159, 默认 88086528): 
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (88086528-167772159, 默认 167772159): +2G

创建了一个新分区 6,类型为"Linux",大小为 2 GiB。

命令(输入 m 获取帮助):n
所有主分区都在使用中。
添加逻辑分区 7
第一个扇区 (92282880-167772159, 默认 92282880): 
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (92282880-167772159, 默认 167772159): +2G

创建了一个新分区 7,类型为"Linux",大小为 2 GiB。

命令(输入 m 获取帮助):n
所有主分区都在使用中。
添加逻辑分区 8
第一个扇区 (96479232-167772159, 默认 96479232): 
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (96479232-167772159, 默认 167772159): +2G

创建了一个新分区 8,类型为"Linux",大小为 2 GiB。

命令(输入 m 获取帮助):n
所有主分区都在使用中。
添加逻辑分区 9
第一个扇区 (100675584-167772159, 默认 100675584): 
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (100675584-167772159, 默认 167772159): +2G

创建了一个新分区 9,类型为"Linux",大小为 2 GiB。

命令(输入 m 获取帮助):n
所有主分区都在使用中。
添加逻辑分区 10
第一个扇区 (104871936-167772159, 默认 104871936): 
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (104871936-167772159, 默认 167772159): 

创建了一个新分区 10,类型为"Linux",大小为 30 GiB。

命令(输入 m 获取帮助):w
分区表已调整。
正在同步磁盘。

交换空间

分区扩展Swap空间

作用:缓解物理内存压力

创建Swap分区

利用硬盘空闲空间创建新的分区

这里我添加了一块新硬盘/dev/sdb,分区/dev/sdb1作为这次试验的对象

格式化交换分区

  • 命令:mkswap
    • 格式:mkswap 分区设备
  • 命令:swapon
    • 格式:swapon:查看交换空间组成的成员信息
    • 格式:swapon 设备地址:启用交换分区
  • 命令:free
    • 格式:free -h:查看交换空间大小

需要对选定的交换分区进行格式化操作

复制代码
#进行格式化
[root@bogon ~]# mkswap /dev/sdb1
正在设置交换空间版本 1,大小 = 15 GiB (16106123264  个字节)
无标签,UUID=f0694fd4-7515-4717-963c-31edcfcd0364

#检查文件类型,查看是否成功格式化
[root@bogon ~]# blkid /dev/sdb1
/dev/sdb1: UUID="f0694fd4-7515-4717-963c-31edcfcd0364" TYPE="swap" PARTUUID="ac3d10f5-01"

扩展交换空间

启用格式化好的交换分区

复制代码
#首先查看交换空间的组成成员信息
[root@bogon ~]# swapon
NAME      TYPE      SIZE USED PRIO
/dev/dm-1 partition   3G   0B   -2

#启用交换分区/dev/sdb1
[root@bogon ~]# swapon /dev/sdb1

#再次查看交换空间的组成成员信息
[root@bogon ~]# swapon
NAME      TYPE      SIZE USED PRIO
/dev/dm-1 partition   3G   0B   -2
/dev/sdb1 partition  15G   0B   -3

查看交换空间大小
[root@bogon ~]# free -h
               total        used        free      shared  buff/cache   available
Mem:           2.6Gi       1.2Gi       1.1Gi        22Mi       623Mi       1.5Gi
Swap:           17Gi          0B        17Gi

#停用交换分区/dev/sdb1
[root@bogon ~]# swapoff /dev/sdb1

#再次查看交换空间大小
[root@bogon ~]# free -h
               total        used        free      shared  buff/cache   available
Mem:           2.6Gi       1.2Gi       1.1Gi        22Mi       623Mi       1.5Gi
Swap:          3.0Gi          0B       3.0Gi

实现开机自动启用交换分区

这里其实和开机自动挂载相似,我们实现开机自动挂载的时候,需要再/etc/fstab里面进行编写,这里我们想要实现开机自动启用交换分区也是需要对/etc/fstab进行修改编写

复制代码
#对/etc/fstab进行编写
[root@bogon ~]# vim /etc/fstab

#最后一行是新添加的内容,挂载点none也可以换成swap
[root@bogon ~]# tail -5 /etc/fstab 
/dev/mapper/rl_bogon-home	 /home		      xfs	     defaults 	0 0
/dev/mapper/rl_bogon-swap	 none		        swap	   defaults	  0 0
/dev/cdrom			           /mydvd     	  iso9660	 defaults	  0 0
/dev/cdrom			           /var/ftp/dvd	  iso9660	 defaults	  0 0
/dev/sdb1			             none		        swap	   defaults	  0 0

#在重新挂载之前,先查看一下交换空间组成成员信息
[root@bogon ~]# swapon
NAME      TYPE      SIZE USED PRIO
/dev/dm-1 partition   3G   0B   -2

#使用swapon -a可以用来专门检测交换分区的书写,类似于mount -a
[root@bogon ~]# swapon -a

#没有报错代表我们书写正确,再次查看交换空间组成成员信息
[root@bogon ~]# swapon
NAME      TYPE      SIZE USED PRIO
/dev/dm-1 partition   3G   0B   -2
/dev/sdb1 partition  15G   0B   -3