一、磁盘阵列

1、什么是磁盘阵列?

1️⃣:磁盘整列就是将多块独立的磁盘组合到一起,形成容量大的磁盘组。

2️⃣:将相同的数据存放到不多个的磁盘的不同位置

2、RAID0

1️⃣:RAID0是磁盘整列中最早的RAID模式,最简单、成本最低的RAID模式;可以并发读写,在同一时间磁盘的读写性能提升翻倍,具体看硬盘的使用量(使用三块硬盘并行操作,读写数据的能力就会提升三倍)—— 读写性能最高(所有的RAID级别最高的)

2️⃣:优点:成本低、组成简单(只需两块磁盘即可)、磁盘的使用率达100%

3️⃣:缺点:没有数据冗余、没有修复能力(其中一块磁盘损坏,整体数据将不可用,一般是对安全可靠不是看重的才会去使用RAID0)

3、RAID1

1️⃣:RAID1称为磁盘镜像,使用两块磁盘,其中一块存储数据,另一块当做数据的镜像,会复制一样的数据(两块硬盘写的是同样的内容),这样会使磁盘的容量缩减至一半

2️⃣:工作原理:两块磁盘并行写入数据(两块磁盘写入相同的数据)(其中的一块磁盘上的数据镜像到另一块磁盘上)

3️⃣:优点:冗余能力好(冗余能力比RAID0好)、可靠性高、修复性高、提高了硬盘的容量

4️⃣:缺点:磁盘的使用率低(占所有的50%)、写入数据慢、读取数据取决于快的那块硬盘、不能并行读取、读的话只能在一块硬盘上读;写就是并行写,两块硬盘同时进行,所以写会相对较慢

4、RAID5

1️⃣:RAID5(分布式奇偶校验),在所有的磁盘上随机存放奇偶校验信息(奇偶校验信息是保护数据的完整性)

2️⃣:工作原理:将数据和奇偶校验信息写入到各个磁盘上,奇偶校验信息是随机的写入到各个磁盘上;如果其中的一块磁盘损坏,更换新的磁盘后会根据奇偶校验信息重造数据;如果损坏的磁盘上面写得是奇偶校验信息,更换新的磁盘后,会重新入奇偶校验信息。

3️⃣读/写性能:读性能:接近于RAID0;写性能:比单块磁盘要差

4️⃣:优点:冗余能力好(允许一块磁盘损坏)、可靠性高、修复性好

5️⃣:缺点:多块磁盘造成成本较高;如果损坏两块,所有的数据将不可用。

5、RAID10

1️⃣:镜像条带整列;组成方式:RAID1+RAID1=RAID0——>RAID10;具备RAID0和RAID1的特征

2️⃣:优点:冗余能力高(允许损坏两块磁盘)、修复性强、可靠性高

3️⃣:磁盘的是利用率50%

4️⃣:读和写的性能:读和写的性能都是一样的:介于RAID5和RAID0之间

二、磁盘命名方式

1、Linux中磁盘的命名方式与磁盘的接口有关,规则如下:

  • 传统IDE接口硬盘:/dev/hda、/dev/hdb、/dev/hdc........
  • SCISI接口硬盘:/dev/sda、/dev/sdb、/dev/sdc..........
  • 虚拟化硬盘:/dev/vda、/dev/vdb、/dev/vdc.........
  • 系统的第一块SCSI接口的硬盘名称为/dev/sda
  • 系统的第二块SCSI接口的硬盘名称为/dev/sdb

2、系统中分区由数字编号表示,1-4留给主分区使用和扩展分区,逻辑分区从5开始

  • /dev/sda        //第一块磁盘
  • /dev/sda1      //第一 块磁盘的第一个分区
  • /dev/sdb1      //第二块磁盘的第一个分区

三、MBR与GPT

1️⃣:在使用新磁盘之前,你必须对其进行分区。

2️⃣:MBR (Master Boot Record)和GPT (GUID PartitionTable)是在磁盘.上存储分区信息的两种不同方式。

3️⃣:这些分区信息包含了分区从哪里开始的信息,这样操作系统才知道哪个扇区是属于哪个分区的,以及哪个分区是可以启动的。

4️⃣:在磁盘上创建分区时,你必须在MBR和GPT之间做出选择

5️⃣:MBR是Master Boot Record的简称,也就是主引导记录,是位于磁盘最前边的一段引导(Loader)代码,主要用来引导操作系统的加载与启动

  • 特点:

    • 1. MBR支持最大2TB磁盘,它无法处理大于2TB容量的磁盘
    • 2.只支持最多4个主分区。若想要更多分区,需要创建扩展分区,并在其中创建逻辑分区

6️⃣:GPT磁盘是指使用GUID分区表的磁盘,GUID磁盘分区表(GUID Partition Table,缩写: GPT)其含义为“全局唯一标识磁盘分区表”, 是一个实体硬盘的分区表的结构布局的标准

  • 特点:

    • 1. GPT对磁盘大小没有限制
    • 2.最多可以创建128个分区

7️⃣:注意:MBR与GPT之间互相转换会导致数据丢失

四、磁盘容量检查

1、使用df命令查看磁盘容量,不加参数以k为单位

  • df -i        //查看inode使用情况
  • df -h       //以G或者T或者M人性化方式显示
  • df-T        //查看文件类型

2、使用df -h查看磁盘使用情况

[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 887M 0 887M 0% /dev
tmpfs 904M 0 904M 0% /dev/shm
tmpfs 904M 8.7M 895M 1% /run
tmpfs 904M 0 904M 0% /sys/fs/cgroup
/dev/mapper/rhel-root 50G 1.8G 49G 4% /
/dev/sr0 7.4G 7.4G 0 100% /mnt
/dev/nvme0n1p1 1014M 173M 842M 17% /boot
/dev/mapper/rhel-home 67G 511M 67G 1% /home
tmpfs 181M 0 181M 0% /run/user/0

3、使用lsblk查看分区情况

[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sr0 11:0 1 7.3G 0 rom /mnt
nvme0n1 259:0 0 120G 0 disk
├─nvme0n1p1 259:1 0 1G 0 part /boot
└─nvme0n1p2 259:2 0 119G 0 part
├─rhel-root 253:0 0 50G 0 lvm /
├─rhel-swap 253:1 0 2G 0 lvm [SWAP]
└─rhel-home 253:2 0 67G 0 lvm /home

4、使用du命令查看目录或者文件的容量,不加参数以k为单位

  • du -sh 文件名       //人性化输出显示大小

    • -s: 列出总和
    • -h:人性化显示容量信息

Linux_磁盘管理理论概述的更多相关文章

  1. Linux_日志管理理论概述

    一.日志系统 1.kernel -->物理终端(/dev/console) --> /var/log/dmesg(系统启动时信息(包括错误信息)记录到该文件) 或者:# dmesg 或 # ...

  2. Linux_权限管理理论概述

    一.权限定义 1.文件权限作用的对象 owner :属主 - u group :属组 - g other :其他人 - o 2.文件的三种权限 //针对文件的权限 r 可读 可以使用cat命令查看文件 ...

  3. Linux_源码安装包管理理论概述

    一.源码包基本概述 1️⃣:源码包的编译用到了linux系统里的编译器,通常源码包都是用C语言开发的,这也是因为C语言为linux上最标准的程序语言 2️⃣:Linux上的C语言编译器叫做gcc,利用 ...

  4. Linux_磁盘管理

    一.linux磁盘管理 命令:fdisk -l brwx-rw--- 其中b(占位符)代表block,块设备文件 sda,sdb... --> 硬盘 其中sda1,sda2..sdb1,sdb2 ...

  5. linux_磁盘体系

    未曾习艺先学礼,未曾学武先习德 当今磁盘都是温室磁盘,原理是一样的,高速转动的的盘,磁头做径向运动 当今磁盘的发展趋势: 体积更小.速度更快.容量更大.使用更安全 速度更快: 主轴转速: 10000/ ...

  6. linux_磁盘分区

    分区并没有数据内容只是改变分区表,保存在0磁头,0磁道1扇区除MBR引导后64bytes中,只能有4个组分区,4个以上要一个扩展分区 引导MBR,保存在446字节中 磁盘想要存放数据,首先要分区,可以 ...

  7. Linux_磁盘分布_以及分区

    运用 Xshell  工具链接到你的服务器 1.     Fdisk -l    这是查看磁盘挂载列表情况 2.      Fdisk /dev/vdc   这是分区这个磁盘   m    是查看信息 ...

  8. linux_磁盘挂载

    mount -o loop 磁盘的位置 想要挂载的位置 磁盘卸载 umont 挂载的磁盘的详细位置 注意:磁盘卸载时你当前所在的路径不要在磁盘挂载的路径,应该其他与磁盘挂载路径不相干的路径下即可

  9. Linux_磁盘分区、挂载、查看

    一.挂载 1.查看设备的挂载情况 lsblk或lsblk -f 2.挂载 需求 :给我们的Linux系统增加一个新的硬盘,并且挂载到/home/newdisk 说明:我们以增加一块硬盘为例来熟悉一下磁 ...

随机推荐

  1. SparkStreaming使用mapWithState时,设置timeout()无法生效问题解决方案

    前言 当我在测试SparkStreaming的状态操作mapWithState算子时,当我们设置timeout(3s)的时候,3s过后数据还是不会过期,不对此key进行操作,等到30s左右才会清除过期 ...

  2. 【Java】流、IO(初步)

    (这部分比较抽象且写的不是很好,可能还要再编辑) [概述] 流:流是一系列数据,包括输入流和输出流.你可以想象成黑客帝国的"代码雨",只要我们输入指令,这些数据就像水一样流进流出了 ...

  3. 搜狗高级架构师帮你系统掌握TypeScript开发

    JavaScript 是一门动态弱类型语言,对变量的类型非常宽容,而且不会在这些变量和它们的调用者之间建立结构化的契约. Angular 已经使用 TypeScript 重构了代码,另一大前端框架 V ...

  4. leetcode 刷题(数组篇)152题 乘积最大子数组 (动态规划)

    题目描述 给你一个整数数组 nums ,请你找出数组中乘积最大的连续子数组(该子数组中至少包含一个数字),并返回该子数组所对应的乘积. 示例 1: 输入: [2,3,-2,4] 输出: 6 解释: 子 ...

  5. Spring Boot 快速迁移至 Quarkus

    Quarkus 是一个目前非常火的 Java 应用开发框架,定位是轻量级的微服务框架.,Quarkus 提供了优秀的容器化整合能力,相较于传统开发框架(Spring Boot)有着更快的启动速度.更小 ...

  6. 《TCP/IP网络编程》学习笔记整理

    简介 本笔记目前已包含 <TCP/IP网络编程>中的前 5 章,后续章节会在近期内补充完整. 我在整理笔记时所考虑的是:在笔记记完后,当我需要查找某个知识点时,不需要到书中去找,只需查看笔 ...

  7. 这一次,彻底搞懂 Go Cond

    hi,大家好,我是 haohongfan. 本篇文章会从源码角度去深入剖析下 sync.Cond.Go 日常开发中 sync.Cond 可能是我们用的较少的控制并发的手段,因为大部分场景下都被 Cha ...

  8. 基于golang分布式爬虫系统的架构体系v1.0

    基于golang分布式爬虫系统的架构体系v1.0 一.什么是分布式系统 分布式系统是一个硬件或软件组件分布在不同的网络计算机上,彼此之间仅仅通过消息传递进行通信和协调的系统.简单来说就是一群独立计算机 ...

  9. Java基础(面试复习整理)

    基础知识和语法 Java语言初识 计算机语言发展 机器语言.汇编.C.C++.Java Java的诞生与发展 1995 JavaSE JavaME Android JavaEE 2006(大数据) H ...

  10. 【ElasticSearch】ES 读数据,写数据与搜索数据的过程

    ES读数据的过程: 1.ES客户端选择一个node发送请求,该请求作为协调节点(coordinating node): 2.corrdinating node 对 doc id 对哈希,找出该文档对应 ...