RAID和LVM配置指南:创建、扩容和管理RAID设备和逻辑卷的方法

文章目录

  • 1. 简介
    • 1.1 什么是RAID和LVM
    • 1.2 RAID和LVM的作用和优势
  • 2. RAID配置命令:mdadm
    • 2.1 安装mdadm
    • 2.2 创建RAID设备
      • 2.2.1 RAID 0
      • 2.2.2 RAID 1
      • 2.2.3 RAID 5
      • 2.2.4 RAID 10
    • 2.3 添加磁盘到RAID设备
    • 2.4 删除磁盘从RAID设备
    • 2.5 查看和管理RAID设备
    • 2.6 故障处理与恢复
  • 3. LVM配置命令:pvcreate、vgcreate、lvcreate
    • 3.1 安装LVM工具
    • 3.2 创建物理卷(Physical Volume)
    • 3.3 创建卷组(Volume Group)
    • 3.4 创建逻辑卷(Logical Volume)
    • 3.5 扩容和缩减逻辑卷
    • 3.6 删除逻辑卷、卷组和物理卷
    • 3.7 查看和管理LVM
  • 4. 实际应用示例
    • 4.1 使用mdadm和LVM创建RAID和扩展逻辑卷的案例演示
  • 5. 总结
    • 5.1 RAID和LVM的应用场景和总结
    • 5.2 使用RAID和LVM的注意事项
  • python精品专栏推荐
    • python基础知识(0基础入门)
    • python爬虫知识

1. 简介

1.1 什么是RAID和LVM

RAID(Redundant Array of Inexpensive Disks)即磁盘阵列技术,是一种将多个硬盘组合起来以提升性能、数据冗余和数据保护能力的技术。LVM(Logical Volume Manager)即逻辑卷管理器,是一种将硬盘上的物理存储空间抽象成逻辑存储空间并进行统一管理的技术。

1.2 RAID和LVM的作用和优势

RAID的作用在于提高数据冗余性和读写性能,使用RAID技术可以将多个硬盘组合成一个更具备冗余和读写性能的逻辑硬盘。LVM的作用在于将物理存储空间进行抽象和管理,用户可以通过LVM来创建、扩容和收缩逻辑卷,从而更加灵活地使用硬盘存储。

2. RAID配置命令:mdadm

2.1 安装mdadm

在Ubuntu系统中,通过以下命令安装mdadm:

sudo apt-get install mdadm

2.2 创建RAID设备

2.2.1 RAID 0

# 创建名为md0的RAID 0设备,由/dev/sdb和/dev/sdc组成
sudo mdadm --create /dev/md0 --level=0 --raid-devices=2 /dev/sdb /dev/sdc# 查看RAID设备状态
sudo mdadm --detail /dev/md0# 格式化并挂载RAID设备到/mnt/raid0目录
sudo mkfs.ext4 /dev/md0
sudo mkdir /mnt/raid0
sudo mount /dev/md0 /mnt/raid0

2.2.2 RAID 1

# 创建名为md1的RAID 1设备,由/dev/sdd和/dev/sde组成
sudo mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/sdd /dev/sde# 查看RAID设备状态
sudo mdadm --detail /dev/md1# 格式化并挂载RAID设备到/mnt/raid1目录
sudo mkfs.ext4 /dev/md1
sudo mkdir /mnt/raid1
sudo mount /dev/md1 /mnt/raid1

2.2.3 RAID 5

# 创建名为md2的RAID 5设备,由/dev/sdf、/dev/sdg和/dev/sdh组成
sudo mdadm --create /dev/md2 --level=5 --raid-devices=3 /dev/sdf /dev/sdg /dev/sdh# 查看RAID设备状态
sudo mdadm --detail /dev/md2# 格式化并挂载RAID设备到/mnt/raid5目录
sudo mkfs.ext4 /dev/md2
sudo mkdir /mnt/raid5
sudo mount /dev/md2 /mnt/raid5

2.2.4 RAID 10

# 创建名为md3的RAID 10设备,由/dev/sdi、/dev/sdj、/dev/sdk和/dev/sdl组成
sudo mdadm --create /dev/md3 --level=10 --raid-devices=4 /dev/sdi /dev/sdj /dev/sdk /dev/sdl# 查看RAID设备状态
sudo mdadm --detail /dev/md3# 格式化并挂载RAID设备到/mnt/raid10目录
sudo mkfs.ext4 /dev/md3
sudo mkdir /mnt/raid10
sudo mount /dev/md3 /mnt/raid10

2.3 添加磁盘到RAID设备

# 向md0设备添加/dev/sdd磁盘
sudo mdadm --add /dev/md0 /dev/sdd# 查看RAID设备状态
sudo mdadm --detail /dev/md0

2.4 删除磁盘从RAID设备

# 将/dev/sdb从md0设备中删除
sudo mdadm --fail /dev/md0 /dev/sdb
sudo mdadm --remove /dev/md0 /dev/sdb# 查看RAID设备状态
sudo mdadm --detail /dev/md0

2.5 查看和管理RAID设备

# 查看所有RAID设备状态
sudo mdadm --detail --scan# 卸载RAID设备
sudo umount /dev/md0# 停止RAID设备
sudo mdadm --stop /dev/md0

2.6 故障处理与恢复

RAID设备出现故障时,可以通过以下命令进行处理和恢复:

# 查看RAID设备状态
sudo mdadm --detail /dev/md0# 替换故障磁盘
sudo mdadm --manage /dev/md0 --remove /dev/sdb
sudo mdadm --manage /dev/md0 --add /dev/sdb1

3. LVM配置命令:pvcreate、vgcreate、lvcreate

3.1 安装LVM工具

在Ubuntu系统中,通过以下命令安装LVM工具:

sudo apt-get install lvm2

3.2 创建物理卷(Physical Volume)

# 创建/dev/sdb上的物理卷
sudo pvcreate /dev/sdb

3.3 创建卷组(Volume Group)

# 将物理卷/dev/sdb添加到名为vg0的卷组中
sudo vgcreate vg0 /dev/sdb

3.4 创建逻辑卷(Logical Volume)

# 在vg0卷组中创建名为lv0的逻辑卷,大小为10G
sudo lvcreate -L 10G -n lv0 vg0# 格式化并挂载逻辑卷到/mnt/lv0目录
sudo mkfs.ext4 /dev/vg0/lv0
sudo mkdir /mnt/lv0
sudo mount /dev/vg0/lv0 /mnt/lv0

3.5 扩容和缩减逻辑卷

# 将lv0逻辑卷扩容到20G
sudo lvextend -L 20G /dev/vg0/lv0# 更新文件系统大小
sudo resize2fs /dev/vg0/lv0# 将lv0逻辑卷缩减到15G
sudo umount /mnt/lv0
sudo e2fsck -f /dev/vg0/lv0
sudo resize2fs /dev/vg0/lv0 15G
sudo lvreduce -L 15G /dev/vg0/lv0
sudo mount /dev/vg0/lv0 /mnt/lv0

3.6 删除逻辑卷、卷组和物理卷

# 删除逻辑卷lv0
sudo umount /mnt/lv0
sudo lvremove /dev/vg0/lv0# 删除卷组vg0
sudo vgremove vg0# 删除物理卷/dev/sdb
sudo pvremove /dev/sdb

3.7 查看和管理LVM

# 查看卷组vg0信息
sudo vgdisplay vg0# 查看逻辑卷lv0信息
sudo lvdisplay /dev/vg0/lv0

4. 实际应用示例

4.1 使用mdadm和LVM创建RAID和扩展逻辑卷的案例演示

在Ubuntu系统中,通过以下命令创建名为raid_lv的RAID 5设备和逻辑卷lv0:

# 创建名为md0的RAID 5设备,由/dev/sdb、/dev/sdc和/dev/sdd组成
sudo mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sdb /dev/sdc /dev/sdd# 创建物理卷/dev/md0
sudo pvcreate /dev/md0# 将物理卷添加到vg0卷组中
sudo vgcreate vg0 /dev/md0# 在vg0卷组中创建逻辑卷lv0,大小为10G
sudo lvcreate -L 10G -n lv0 vg0# 格式化并挂载逻辑卷到/mnt/lv0目录
sudo mkfs.ext4 /dev/vg0/lv0
sudo mkdir /mnt/lv0
sudo mount /dev/vg0/lv0 /mnt/lv0

之后,在需要扩容时,可以通过以下命令将lv0逻辑卷扩容到20G:

sudo lvextend -L 20G /dev/vg0/lv0
sudo resize2fs /dev/vg0/lv0

5. 总结

5.1 RAID和LVM的应用场景和总结

RAID可以在多个硬盘上提高数据冗余性和读写性能,是服务器常用的技术之一;LVM可以将硬盘上的物理存储空间进行抽象和管理,并支持方便的扩容和缩减,也是服务器上的常用技术之一。

5.2 使用RAID和LVM的注意事项

使用RAID和LVM时需要注意硬件的兼容性,以及RAID和LVM带来的数据冗余性、性能和存储扩展的影响。在实际应用中,建议提前做好备份并进行测试,以确保RAID和LVM的正确性和稳定性。


python精品专栏推荐


python基础知识(0基础入门)

【python基础知识】0.print()函数
【python基础知识】1.数据类型、数据应用、数据转换
【python基础知识】2.if条件判断与条件嵌套
【python基础知识】3.input()函数
【python基础知识】4.列表和字典
【python基础知识】5.for循环和while循环
【python基础知识】6.布尔值和四种语句(break、continue、pass、else)
【python基础知识】7.实操-用Python实现“文字PK”小游戏(一)
【python基础知识】7.实操-用Python实现“文字PK”小游戏(二)
【python基础知识】8.编程思维:如何解决问题-思维篇
【python基础知识】9.函数的定义和调用
【python基础知识】10.用函数编写程序 - 实操篇
【python基础知识】10.用Python实现石头剪刀布小游戏-函数实操篇
【python基础知识】11.如何debug -常见报错原因及排查思路 - 思维篇
【python基础知识】12.类与对象(一)
【python基础知识】12.类与对象(二)
【python基础知识】13.类与对象(三)
【python基础知识】13.类与对象(四)
【python基础知识】14.图书管理系统的搭建(类与对象实操)
【python基础知识】15.编码基础知识
【python基础知识】16.文件读写基础及操作
【python基础知识】16.“古诗默写题”的python实现(文件读写和编码-实操篇)
【python基础知识】17.模块的概念以及如何引入
【python基础知识】18.实操-使用python自动群发邮件
【python基础知识】19.产品思维以及流程图的使用 - 思维篇
【python基础知识】20.“午饭吃什么”的python实现(产品思维-实操篇)
【python基础知识】21.高效偷懒的正确打开方式-毕业篇
【python文件处理】CSV文件的读取、处理、写入
【python文件处理】Excel自动处理(使用 openpyxl)
【python文件处理】-excel格式处理


python爬虫知识

【python爬虫】1.爬虫基础知识
【python爬虫】2.网页基础知识
【python爬虫】3.爬虫初体验(BeautifulSoup解析)
【python爬虫】4.爬虫实操(菜品爬取)
【python爬虫】5.爬虫实操(歌词爬取)
【python爬虫】6.爬虫实操(带参数请求数据)
【python爬虫】7.爬到的数据存到哪里?
【python爬虫】8.温故而知新
【python爬虫】9.带着小饼干登录(cookies)
【python爬虫】10.指挥浏览器自动工作(selenium)
【python爬虫】11.让爬虫按时向你汇报
【python爬虫】12.建立你的爬虫大军
【python爬虫】13.吃什么不会胖(爬虫实操练习)
【python爬虫】14.Scrapy框架讲解
【python爬虫】15.Scrapy框架实战(热门职位爬取)
【python爬虫】16.爬虫知识点总结复习

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/115866.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

C语言文件操作(1)

C语言文件操作(1) 文章目录 C语言文件操作(1)一、理解文件1.概述2.分类①.正常角度②.文本文件和二进制文件 二、文件的打开和关闭1.流和标准流2.文件类型指针3.文件的打开和关闭以及使用类型 三、文件缓冲区 一、理解文件 1.概述…

【iOS】JSONModel的基本使用

文章目录 前言一、导入JSONModel二、JSONModel的基本使用1.基本用法2.模型集合3.模型导出为NSDictionary或JSON4.设置所有属性可选(所有属性值可以为空)5.下划线(蛇式)转驼峰命名法 前言 JSONModel 是一个用于 Objective-C 的开源库,它用于简…

Android View拖拽startDragAndDrop,Kotlin

Android View拖拽startDragAndDrop,Kotlin import android.os.Bundle import android.util.Log import android.view.DragEvent import android.view.View import android.view.View.OnDragListener import android.view.View.OnLongClickListener import android.w…

后台管理系统SQL注入漏洞

对于edu来说,是新人挖洞较好的平台,本次记录一次走运的捡漏0x01 前景 在进行fofa盲打站点的时候,来到了一个后台管理处看到集市二字,应该是edu站点 确认目标身份(使用的quake进行然后去ipc备案查询) 网…

寻找二叉树一个节点的后继节点

后继节点:中序遍历的后一个节点 普通二叉树:中序遍历得到一个list,时间复杂度O(n) 本题的二叉树:有父节点的指针,后继节点与原节点的距离为1,因此可以直接通过父节点找到下一个节点 优化:节点…

Mac 开机提示Google LLC 注册 无法登录进入系统

Google LLC 会在电脑启动时提示如下弹窗,并要求登录谷歌账户进行验证 此时很明显没有用来进行验证的账号,所以需要关掉这个验证程序 从日志里面可以看到LLC启动了一个Tiny.app的程序 只需要想办法把这个程序删掉即可 关机 按住 Command R 开机 进入R…

华为OD 机智的外卖员(100分)【java】A卷+B卷

华为OD统一考试A卷+B卷 新题库说明 你收到的链接上面会标注A卷还是B卷。目前大部分收到的都是B卷。 B卷对应20022部分考题以及新出的题目,A卷对应的是新出的题目。 我将持续更新最新题目 获取更多免费题目可前往夸克网盘下载,请点击以下链接进入: 我用夸克网盘分享了「华为O…

Openssl数据安全传输平台004:Socket C-API封装为C++类 / 服务端及客户端代码框架和实现

文章目录 0. 代码仓库1. 客户端C API2. 客户端C API的封装分析2.1 sckClient_init()和sckClient_destroy()2.2 sckClient_connect2.3 sckClient_closeconn()2.4 sckClient_send()2.5 sckClient_rev()2.6 sck_FreeMem 3. 客户端C API4. 服务端C API5. 服务端C6. 客户端和服务端代…

【算法优选】 前缀和专题——贰

文章目录 😎前言🌴[寻找数组的中心下标](https://leetcode.cn/problems/find-pivot-index/description/)🚩题目描述🚩算法思路:🚩代码实现 🎋[除自身以外数组的乘积](https://leetcode.cn/probl…

【MySQL架构篇】MySQL字符集、大小写规范及默认数据库

文章目录 1. 字符集与字符集比较规则2. 大小写规范3. 默认数据库4. 与文件系统相关 1. 字符集与字符集比较规则 MySQL有4个级别的字符集和比较规则,分别是 服务器级别数据库级别表级别列级别 当创建对应表或列未指定字符集时,默认会取其上一级别的字符…

stream流相关操作

stream真的没有什么好说的,filter、map这俩常用的程序可以说每天都要写好几遍,那么问题来了,为什么还要拿出来讲讲呢?当然不可能是因为想要划水,主要是工作中它的其他相关方法也有不少涉及。以下是按照不同需求涉及到的…

docker 安装 Centos7

1. 从docker 安装 Centos7 查看有哪些 centos7 系统:docker search centos72. 安装 centos7 docker pull docker.io/ansible/centos7-ansible3.使用镜像创建容器 docker run -itd -p 8022:22 --namevm01 -v /bodata:/bodata -h vm01 --privilegedtrue 688353a31…

#力扣:面试题 02.03. 删除中间节点@FDDLC

面试题 02.03. 删除中间节点 - 力扣(LeetCode) 一、Java /*** Definition for singly-linked list.* public class ListNode {* int val;* ListNode next;* ListNode(int x) { val x; }* }*/ class Solution {public void deleteNode(List…

华为OD 字符串统计(全量和占用字符集)(100分)【java】B卷

华为OD统一考试A卷+B卷 新题库说明 你收到的链接上面会标注A卷还是B卷。目前大部分收到的都是B卷。 B卷对应20022部分考题以及新出的题目,A卷对应的是新出的题目。 我将持续更新最新题目 获取更多免费题目可前往夸克网盘下载,请点击以下链接进入: 我用夸克网盘分享了「华为O…

如何能通过表面挖掘到深层次的底层思维?

如何能通过表面挖掘到深层次的底层思维? 挖掘深层次的底层思维是一项复杂且细致的工作,通常涉及到个人反思、观察、沟通和分析等多个方面。下面是一些可能会对你有帮助的策略和方法: 1. 提问的艺术 五次为什么:这是一种简单而有…

flutter doctor检测环境,出现CocoaPods installed but not working

1. 安装flutter, 地址: 安装和环境配置 - Flutter 中文文档 - Flutter 中文开发者网站 - Flutter 2. 安装成功后,通过flutter doctor检测环境。以mac为例,出现了CocoaPods installed but not working 错误提示时,以下为解决方案: 2.1 rvm i…

java实现邮件发送

一 申请授权码 具体申请方式请自行百度&#xff0c;很简单的 二 163网易邮箱发送 2.1 导入pom <dependency><groupId>com.sun.mail</groupId><artifactId>javax.mail</artifactId><version>1.6.2</version></dependency> 2…

matlab逐像元计算栅格数据10年间的变化趋势代码

% 指定目标文件夹的路径 folder_path E:\; % 替换为目标文件夹路径% 使用 dir 函数列出目标文件夹下的指定位置的文件 file_pattern *.tif; % 例如&#xff0c;获取所有扩展名为".tif"的文件 files dir(fullfile(folder_path, file_pattern)); % 装载文件 dataLis…

QtCreator 查看类帮助文档,快捷键操作:按两次F1 全屏帮助,Esc取消全屏

如何查看类帮助文档 选择类&#xff0c;按F1查看类帮助文档。 示例&#xff1a; #include <QLabel> // 将光标放在QLabel上&#xff0c;按F1右侧弹出的类帮助手册可视宽度很小&#xff0c;如果按两次 F1 键&#xff0c;帮助文档将会以全屏模式显示&#xff0c;以便更清…

Linux高性能编程学习-TCP/IP协议族

一、TCP/IP协议族结构与主要协议 分层&#xff1a;数据链路层、网络层、传输层、应用层 1. 数据链路层 功能&#xff1a;实现网卡驱动程序&#xff0c;处理数据在不同物理介质的传输 协议&#xff1a; ARP&#xff1a;将目标机器的IP地址转成MAC地址RARP&#xff1a;将MAC地…