Linux 磁盘相关知识点总结

Linux Swap分区

注:磁盘都是提前准备好的,还望个人准备好后在进行操作

Linux 的 Swap交换分区,就相当于Windows系统上的虚拟内存,默认状态下,Swap分区是不会启用的,只有当物理内存不足的时候,Swap才会启动,分担物理内存的压力

Swap分区的扩充

通过分区方式来扩充Swap分区

[root@localhost ~]# fdisk  /dev/sdd 

命令(输入 m 获取帮助):n               //新建一个分区
Partition type:
   p   primary (0 primary, 0 extended, 4 free)      //主分区
   e   extended                                  //扩展分区(扩展分区还可以分为多个逻辑分区)
Select (default p): p
分区号 (1-4,默认 1):
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+500M          //设置大小为500M
分区 1 已设置为 Linux 类型,大小设为 500 MiB

命令(输入 m 获取帮助):t              //设置类型
已选择分区 1
Hex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”

命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。

[root@localhost ~]# partprobe /dev/sdd                            //刷新
[root@localhost ~]# mkswap /dev/sdd1                           //格式化操作
正在设置交换空间版本 1,大小 = 511996 KiB
无标签,UUID=d050c231-ba1f-470f-bdc0-113a5000bab3
[root@localhost ~]# swapon /dev/sdd1                                 //启用这个交换分区
[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1819         182        1435           9         200        1485
Swap:          2547           0        2547

Linux系统下常用的一些虚拟设备

/dev/null:空设备,人称黑洞,我们可以将没有用的输出都放到这个文件里面去
例:echo "fdsfdsf" >> /dev/null 

/dev/zero:零设备,可以提供无限字符大小的文件,常用来生成一个特定大小的文件

通过文件的方式来扩充Swap分区

[root@localhost ~]# dd if=/dev/zero of=/opt/swap bs=1M count=500 

dd命令参数详解:

if=指定设备的名称   /dev/zero 最常用

of=指定存放文件的路径

bs=指定大小

count=指定要统计多少次

[root@localhost ~]# chmod 600 /opt/swap 
[root@localhost ~]# mkswap /opt/swap 
正在设置交换空间版本 1,大小 = 511996 KiB
无标签,UUID=6907c427-5188-4bb0-b76a-61964d8061c5
[root@localhost ~]# swapon /opt/swap 
[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           1819         183         917           9         718        1477
Swap:          3047           0        3047

自动挂载设置

[root@localhost ~]# vi /etc/fstab                 //编辑这个文件,添加如下信息即可

/dev/swap       swap            swap            defaults        0 0 

[root@localhost ~]# mount -a 
 

附:关闭交换分区的方法

swapoff  -a  (临时关闭)

vi /etc/fstab      编辑这个文件(注释掉包含swap的行即可  然后使用mount -a 重新挂载一下即可)

#UUID=6e3ea2b7-d1c7-4fa6-992e-da182543a3a7 swap                    swap    defaults        0 0

RAID(独立冗余磁盘阵列)

RAID概述

RAID简称 “磁盘阵列” ,主要通过把多块磁盘划分成指定级别的RAID阵列,提升数据的冗余性以及安全性。

RAID的实现方式

硬件磁盘阵列(Hardware RAID)

需要RAID卡,所有的磁盘都是接在RAID卡上的,均有RAID来统一管理和控制

软件磁盘阵列(software RAID)

通过操作系统来实现,常用mdadm来实现,mdadm是Linux系统下用于管理和控制RAID的命令

mdadm命令参数详解

-C    创建一个新的磁盘阵列       -v   显示版本信息  

-l    指定RAID的级别            -n    指定磁盘数量

-x   指定空闲盘(备用盘)的数量   -D  打印设备的详细信息

-S 停止MD系列磁盘         -As  激活MD系列的磁盘 

-c  指定chunk的大小单位为kb    -G 改变阵列的大小  比如扩充磁盘以及减少磁盘

-f  将指定阵列设置为故障状态

 

RAID的分类

RAID0

RAID0:条带卷,是组成RAID的最简单一种形式,最低磁盘要求是2块,优点是读写速度快,不存在任何冗余,任何一块磁盘损坏即损坏所有数据,磁盘利用率为100%

工作原理:

当我们把两块磁盘合并为磁盘阵列柜,并设置级别为RAID0的时候,两个盘当中的数据都是不相同的,比如,我们想要存储24个字母,A存到第一个磁盘,那么B就存到第二磁盘,以此类推,两个当做一个整体来存储所有的数据,进行来回写入,所以数据是不存在任何冗余的

创建方法:(提前分好一个磁盘的分区)

[root@localhost ~]# yum install -y mdadm              //安装mdadm软件

[root@localhost ~]# mdadm -C  /dev/md0 -l 0 -n 2 /dev/sdb{1,2}
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.
[root@localhost ~]# mdadm -Ds
ARRAY /dev/md0 metadata=1.2 name=localhost.localdomain:0 UUID=26c6ccb3:8832da04:b3de2cb4:b42e7e31
[root@localhost ~]# mdadm -D /dev/md0 

/dev/md0:
           Version : 1.2
     Creation Time : Sun Dec 27 21:44:15 2020
        Raid Level : raid0
        Array Size : 2093056 (2044.00 MiB 2143.29 MB)        // 两个盘的总共容量
      Raid Devices : 2
     Total Devices : 2
       Persistence : Superblock is persistent

       Update Time : Sun Dec 27 21:44:15 2020
             State : clean 
    Active Devices : 2
   Working Devices : 2
    Failed Devices : 0
     Spare Devices : 0

        Chunk Size : 512K               //RAID中最小存储单位

Consistency Policy : none

              Name : localhost.localdomain:0  (local to host localhost.localdomain)
              UUID : 26c6ccb3:8832da04:b3de2cb4:b42e7e31
            Events : 0

    Number   Major   Minor   RaidDevice State
       0       8       17        0      active sync   /dev/sdb1
       1       8       18        1      active sync   /dev/sdb2

格式化操作

[root@localhost ~]# mkfs.xfs /dev/md0 
meta-data=/dev/md0               isize=512    agcount=8, agsize=65408 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=523264, imaxpct=25
         =                       sunit=128    swidth=256 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=8 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
 

挂载操作

[root@localhost ~]# mkdir /mnt/raid0
[root@localhost ~]# mount /dev/md0 /mnt/raid0/
[root@localhost ~]# df -h 
文件系统        容量  已用  可用 已用% 挂载点
devtmpfs        900M     0  900M    0% /dev
tmpfs           910M     0  910M    0% /dev/shm
tmpfs           910M  9.6M  901M    2% /run
tmpfs           910M     0  910M    0% /sys/fs/cgroup
/dev/sda3        17G  1.8G   16G   11% /
/dev/sda1      1014M  142M  873M   14% /boot
tmpfs           182M     0  182M    0% /run/user/0
/dev/md0        2.0G   33M  2.0G    2% /mnt/raid0

RAID1

RAID1:镜像卷,最低磁盘要求是两块,两个盘中的数据一致,存在冗余,磁盘利用率为50%,读写速度一般

工作原理:

存储数据到指定盘上的时候,其余盘也会进行同步数据操作,达到一个备份冗余的效果,当一块磁盘损坏,客户端想要读取数据,就会从备用磁盘当中的读取,这样就实现了数据的冗余性

创建方法如下:

注:提前分好三个分区,主要用于测试用

[root@localhost ~]# mdadm -C /dev/md1 -l 1 -n 2 -x 1 /dev/sdc{5,6,7}
................

mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.

[root@localhost ~]# mdadm -D /dev/md1 
/dev/md1:
           Version : 1.2
     Creation Time : Mon Dec 28 14:31:25 2020
        Raid Level : raid1
        Array Size : 509952 (498.00 MiB 522.19 MB)
     Used Dev Size : 509952 (498.00 MiB 522.19 MB)
      Raid Devices : 2
     Total Devices : 3
       Persistence : Superblock is persistent

       Update Time : Mon Dec 28 14:31:28 2020
             State : clean 
    Active Devices : 2
   Working Devices : 3
    Failed Devices : 0
     Spare Devices : 1

Consistency Policy : resync                 //实现同步状态

              Name : localhost.localdomain:1  (local to host localhost.localdomain)
              UUID : 05fbfd45:81746a97:bb7e9a4b:e5a9d7f6
            Events : 17

    Number   Major   Minor   RaidDevice State
       0       8       37        0      active sync   /dev/sdc5
       1       8       38        1      active sync   /dev/sdc6

       2       8       39        -      spare   /dev/sdc7
[root@localhost ~]# mkfs.xfs /dev/md1 
meta-data=/dev/md1               isize=512    agcount=4, agsize=31872 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=127488, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=855, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@localhost ~]# mount /dev/md1 /mnt/raid1/
[root@localhost ~]# df -h 
文件系统        容量  已用  可用 已用% 挂载点
devtmpfs        900M     0  900M    0% /dev
tmpfs           910M     0  910M    0% /dev/shm
tmpfs           910M  9.6M  901M    2% /run
tmpfs           910M     0  910M    0% /sys/fs/cgroup
/dev/sda3        17G  1.8G   16G   11% /
/dev/sda1      1014M  142M  873M   14% /boot
tmpfs           182M     0  182M    0% /run/user/0
/dev/md0        2.0G   33M  2.0G    2% /mnt/raid0
/dev/md1        495M   26M  470M    6% /mnt/raid1

RAID5

RAID5:带奇偶校验的条带卷,最低磁盘要求为3块,读写速度快,存在冗余,允许损坏一块,损坏两块磁盘,数据将丢失

创建方法如下:

[root@localhost ~]# mdadm -C /dev/md5 -l 5 -n 3 -x 1 /dev/sdd{5,6,7,8}
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md5 started.

[root@localhost ~]# mdadm -D /dev/md5
/dev/md5:
           Version : 1.2
     Creation Time : Mon Dec 28 14:44:53 2020
        Raid Level : raid5
        Array Size : 2093056 (2044.00 MiB 2143.29 MB)
     Used Dev Size : 1046528 (1022.00 MiB 1071.64 MB)
      Raid Devices : 3
     Total Devices : 4
       Persistence : Superblock is persistent

       Update Time : Mon Dec 28 14:45:00 2020
             State : clean 
    Active Devices : 3
   Working Devices : 4
    Failed Devices : 0
     Spare Devices : 1

            Layout : left-symmetric
        Chunk Size : 512K

Consistency Policy : resync

              Name : localhost.localdomain:5  (local to host localhost.localdomain)
              UUID : af85f509:b3856f5e:6596bab5:3b97ef0c
            Events : 18

    Number   Major   Minor   RaidDevice State
       0       8       53        0      active sync   /dev/sdd5
       1       8       54        1      active sync   /dev/sdd6
       4       8       55        2      active sync   /dev/sdd7

       3       8       56        -      spare   /dev/sdd8
[root@localhost ~]# mdadm -S /dev/md5                             //停止MD5
mdadm: stopped /dev/md5
[root@localhost ~]# mdadm -As                                    //激活MD5
mdadm: /dev/md/5 has been started with 3 drives and 1 spare.

案例:扩充MD5的磁盘数量为4个

[root@localhost ~]# mdadm -G /dev/md5 -n 4 -c 32                           //加入-G 参数即可           -c 是指定chun的大小

RAID10

RAID10:是镜像+条带卷的组合(RAID1+RAID0),最低磁盘数为4个,空间利用率为50%,读写速度快,冗余

工作原理:

当我们把4块磁盘做成RAID10级别的阵列,首先进行的是RAID1镜像卷的操作(这个时候就把四个磁盘合并为了两个磁盘),然后在将这两个磁盘按照RAID0的要求做成条带卷,依次分别来存储数据,

比如:有A B C D四块磁盘,AB  CD 分别两两做成RAID1镜像卷,然后在AB  CD 做成RAID0条带卷,但我们存储数字1 -10的时候,1会存储在AB上,然后这个1会自动镜像到A或者B上,存储2的时候,2也会自动镜像存储到C 或者D 上,以此类推,实现一个备份加存储速度快的效果

创建方法如下:

[root@localhost ~]# mdadm -C /dev/md10 -l 10 -n 4 /dev/sde{5,6,7,8}
mdadm: largest drive (/dev/sde5) exceeds size (1043456K) by more than 1%
Continue creating array? 
Continue creating array? (y/n) y
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md10 started.

[root@localhost ~]# mdadm -D /dev/md10 
/dev/md10:
           Version : 1.2
     Creation Time : Mon Dec 28 15:19:25 2020
        Raid Level : raid10
        Array Size : 2086912 (2038.00 MiB 2137.00 MB)
     Used Dev Size : 1043456 (1019.00 MiB 1068.50 MB)
      Raid Devices : 4
     Total Devices : 4
       Persistence : Superblock is persistent

       Update Time : Mon Dec 28 15:19:36 2020
             State : clean 
    Active Devices : 4
   Working Devices : 4
    Failed Devices : 0
     Spare Devices : 0

            Layout : near=2
        Chunk Size : 512K

Consistency Policy : resync

              Name : localhost.localdomain:10  (local to host localhost.localdomain)
              UUID : 697fb56f:cb6c0e7f:e94da5b8:172fe4b3
            Events : 17

    Number   Major   Minor   RaidDevice State
       0       8       69        0      active sync set-A   /dev/sde5
       1       8       70        1      active sync set-B   /dev/sde6
       2       8       71        2      active sync set-A   /dev/sde7
       3       8       72        3      active sync set-B   /dev/sde8
[root@localhost ~]# mkfs.xfs /dev/md10  
meta-data=/dev/md10              isize=512    agcount=8, agsize=65152 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=521216, imaxpct=25
         =                       sunit=128    swidth=256 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=8 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

[root@localhost ~]# mkdir /mnt/raid10
[root@localhost ~]# mount /dev/md10 /mnt/raid10
[root@localhost ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
devtmpfs        900M     0  900M    0% /dev
tmpfs           910M     0  910M    0% /dev/shm
tmpfs           910M  9.6M  901M    2% /run
tmpfs           910M     0  910M    0% /sys/fs/cgroup
/dev/sda3        17G  1.9G   16G   11% /
/dev/sda1      1014M  142M  873M   14% /boot
tmpfs           182M     0  182M    0% /run/user/0
/dev/md10       2.0G   33M  2.0G    2% /mnt/raid10

补充

当我们想要在Linux系统访问U盘当中的内容时,需要下载对应的软件让系统能够识别ntfs文件系统或者fat文件系统,因为,Linux系统默认情况下是不识别的。

[root@localhost ~]# yum install -y epel-release                     //默认的yum源当中没有ntfs-3g这个软件包,所以需要下载epel源

[root@localhost ~]# yum install -y ntfs-3g                      //然后在下载ntfs-3g这个软件包即可  

然后我们挂载的时候 只需要指定一个-t 参数 为 ntfs即可实现效果

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ball-4444

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值