原文

一般,服务器会有多个硬盘,一块硬盘分区安装操作系统,另外多块硬盘分区做存储使用。现在测试添加多块硬盘分区,使用lvm进行实现动态磁盘分配。

1.新增硬盘查看

fdisk -l

可以看到新增的两块硬盘sdb和sdc

2.对硬盘进行分区

fdisk /dev/sdb
============
参数说明:
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition #删除分区
g create a new empty GPT partition table #创建新的空GPT分区表
G create an IRIX (SGI) partition table #创新新的IRIX分区表
l list known partition types #列出已知的分区类型
m print this menu #打印帮助
n add a new partition #增加新分区
o create a new empty DOS partition table #创建新的空DOS分区表
p print the partition table #打印分区表
q quit without saving changes #不保存退出
s create a new empty Sun disklabel
t change a partition's system id #更改分区系统id
u change display/entry units
v verify the partition table #检查分区表
w write table to disk and exit #保存退出
x extra functionality (experts only) #额外功能 输入 :n 表示新建分区 输入:n 表示创建一个新的分区(new的意思) 输入:p 表示创建一个基本分区(p是基本分区,e是扩展分区) 选择分区编号,~,默认使用1,直接按回车即可。 选择分区起始点,使用默认即可,直接按回车。 选择分区终点,使用默认即可,直接按回车。 分区完成。

按照同样的方式,对sdc硬盘进行分区

3.更改分区编号

我们需要将分区类型改成linux lvm卷才能创建lvm。

  输入:t

  输入t表示更改分区编号

  输入:L

  大写的L表示查看所有编号

fdiks /dev/sdb

这里选择8e

输入8e

.保存退出

输入w即可,同理对sdc进行分区

.lvm基本概念

基本的逻辑卷管理概念:

PV(Physical Volume)- 物理卷
物理卷在逻辑卷管理中处于最底层,它可以是实际物理硬盘上的分区,也可以是整个物理硬盘,也可以是raid设备。 VG(Volumne Group)- 卷组
卷组建立在物理卷之上,一个卷组中至少要包括一个物理卷,在卷组建立之后可动态添加物理卷到卷组中。一个逻辑卷管理系统工程中可以只有一个卷组,也可以拥有多个卷组。 LV(Logical Volume)- 逻辑卷
逻辑卷建立在卷组之上,卷组中的未分配空间可以用于建立新的逻辑卷,逻辑卷建立后可以动态地扩展和缩小空间。系统中的多个逻辑卷可以属于同一个卷组,也可以属于不同的多个卷组

PE(Physical Extent)- 物理块

LVM 默认使用4MB的PE区块,而LVM的LV最多仅能含有65534个PE (lvm1 的格式),因此默认的LVM的LV最大容量为4M*/(1024M/G)=256G。PE是整个LVM 最小的储存区块,也就是说,其实我们的资料都是由写入PE 来处理的。简单的说,这个PE 就有点像文件系统里面的block 大小。所以调整PE 会影响到LVM 的最大容量!不过,在 CentOS .x 以后,由于直接使用 lvm2 的各项格式功能,因此这个限制已经不存在了。
、创建pv

pvcreate /dev/sdb1   #以分区创建逻辑卷
pvcreate /dev/sdc1

、创建vg

输入:vgcreate vg_group /dev/xvdb1

此处的vg_group是vg组的名字,可以自定义

vgcreate vg_gropu /dev/sdb1 /dev/sdc1 #=。=单词打错,不要在乎这些细节 

.查看vg

vgdisplay vg_group -v


.创建lv

lvcreate -L 59G -n vg_1 vg_gropu    #vg可用空间为59.9G
========
-L后面是要分给lv的大小
-n新建一个名字为vg_1的lv
使用的vg是vg_gropu

创建完毕后查看状态

lvdisplay vg_gropu -v

可以看见lv 已经创建了

.格式化lv

查看系统的文件类型

df -Th
 

可以看到系统分区是xfs格式的。

我们可以将lv格式化为ext4格式的。

格式化lv

 mkfs.ext4 /dev/vg_gropu/vg_1

.编辑/etc/fstab文件,创建磁盘开机自动挂载

vim /etc/fstab

本次将vg_1挂载到/usr/local下

在文件最后加入一行

第一列:要挂载的磁盘

第二列:挂载点

第三列:文件类型

第四列:挂载选项,详细参考man mount. 下面列出一些常用的选项:
auto: 系统自动挂载,fstab默认就是这个选项
ro: read-only
rw: read-write
defaults: rw, suid, dev, exec, auto, nouser, and async. 第五列:为dump选项,设置是否让备份程序dump备份文件系统,0为忽略,1为备份。 第六列:为fsck选项,告诉fsck程序以什么顺序检查文件系统,0为忽略

注意:不要写错了!不然分区表损坏

.重新挂载

mount -a

查看挂载是否成功

df -h
 

可以看到挂载成功

linux学习-添加多个硬盘和lvm配置的更多相关文章

  1. linux服务器添加一块新硬盘不用重新启动机器的操作

    Linux系统添加一块新硬盘不用关闭系统即可加载硬盘信息的操作 因之前换过硬盘重装系统,硬盘上的数据没有拷贝出来,开发人员问我要备份,炸了.我只好联系机房让他把之前换掉的硬盘插回服务器.但是插好之后f ...

  2. 学习OpenStack之 (2):Cinder LVM 配置

    0.背景 OpenStack 中的实例是不能持久化的,cinder服务重启,实例消失.如果需要挂载 volume,需要在 volume 中实现持久化.Cinder提供持久的块存储,目前仅供给虚拟机挂载 ...

  3. linux学习笔记二:三种网络配置

    本文引用自:https://www.linuxidc.com/Linux/2017-05/144370.htm [linux公社] VMware为我们提供了三种网络工作模式,它们分别是:Bridged ...

  4. linux学习(二) -- ubuntu下lnmp环境的配置

    亲测的教程,,希望能对大家提供些许帮助,转载请注明出处 ubuntu+nginx+mysql+php7 一.安装Nginx 1.首先添加nginx_signing.key(必须,否则出错) $ wge ...

  5. linux 学习第十五天(vsftpd配置)

    一.vstapd配置 vsftpd 服务(a.匿名公开 b.系统本地账户验证c.虚拟专用用户验证) iptables -F  (清空防火墙) service iptables save  (保存防火墙 ...

  6. linux学习(一) -- ubuntu下lamp环境的配置

    以下为实测教程,希望能为大家提供帮助,转载请注明出处 ubuntu+apache+mysql+php7 第一.更换apt的源 1.复制原文件备份 sudo cp /etc/apt/source.lis ...

  7. Linux学习笔记之档案权限与目录配置

    一. 档案权限与目录配置用户的属性信息: /etc/passwd用户的密码信息: /etc/shadow组的信息:     /etc/group 每个用户都有唯一的UID供系统识别sudo -i 输入 ...

  8. Linux 学习笔记01丨Ubuntu系统安装、配置及软件教程集合

    1. Ubuntu系统安装 Windows10安装ubuntu18.04双系统教程 Ubuntu 20.04.1 镜像下载 软碟通 机械革命进入BIOS模式 要按F2,注意将Boot Option中将 ...

  9. Linux学习笔记-第16天 这些个配置参数好饶阿

    原理是懂了,但是配置参数好多阿,难道这些都要记么...呃

随机推荐

  1. 《Mysql 索引 - 概述》

    一:索引的目的 - 索引的出现其实就是为了提高数据查询的效率,就像书的目录一样. 二:InnoDB 索引模型 - InnoDB 采用 B+树 的数据结构进行存储. - 例如,我们建立一张表,分析他的数 ...

  2. 控制层解析post请求中json数据的时候,有些属性值为空

    原因: 1.默认json数据解析的时候,值会赋给键的首字母是小写的封装的bean中的属性,如果没有首字母小写的属性,也不会报错.即bean中有getXXX方法时,从json到model会增加xxx属性 ...

  3. POSIX异步I/O接口使用

    POSIX1003.1b 实时扩展协议规定的标准异步 I/O 接口,即 aio_read 函数. aio_write 函数.aio_fsync 函数.aio_cancel 函数.aio_error 函 ...

  4. sit、qas、dev、pet

    SIT: System Integrate Test 系统整合测试 QAS: Quality Assurance system 质量保证 DEV: Development 开发 PET: Perfor ...

  5. C#委托和事件的使用示例

    一.委托 使用委托时要先实例化,和类一样,使用new关键字产生委托的新实例,然后将一个或者多个与委托签名匹配的方法与委托实例关联.随后调用委托时,就会调用所有与委托实例关联的方法. 与委托关联可以是任 ...

  6. ASP.NET Core 3.0 入门

    原文:ASP.NET Core 3.0 入门 课程简介 与2.x相比发生的一些变化,项目结构.Blazor.SignalR.gRPC等 课程预计结构 ASP.NET Core 3.0项目架构简介 AS ...

  7. 取代Ajax.BeginForm的ajax使用方法

    原文:取代Ajax.BeginForm的ajax使用方法 一.前提概要 Asp.net core中已经取消了Ajax.BeginForm,也不会计划出ajax tag helper,所以得利用插件jq ...

  8. 存储过程、插入数据后直接过去主键id

    DECLARE @sql nvarchar() DECLARE @cou int SET @sql='INSERT INTO people values('''+'xiaohong'+''');sel ...

  9. 浅谈.NET中的类型和装箱、拆箱原理

    谈到装箱拆箱,大概的意思就是值类型和引用类型的相互转换呗---值类型到引用类型叫装箱,反之则叫拆箱.这当然没有问题,可是你只知道这么多,那么建议你花点时间看看楼主这篇文章 1. .NET中的类型 为了 ...

  10. C# 在运行中拖拽,改变控件大小位置类(转载)

    原文地址:https://blog.csdn.net/zgke/article/details/3718989 copy的code /// <summary> /// 移动改变控件大小 / ...