首页 > 系统相关 >Linux磁盘管理

Linux磁盘管理

时间:2024-07-27 17:00:35浏览次数:16  
标签:lv1 管理 分区 Linux dev 磁盘 挂载 vg1

Linux磁盘管理

Linux在使用过程中产生的数据量不断增大,逐渐导致初始配置的磁盘空间不足,这时候就需要进行扩容,以满足业务需求。一般情况下会选择新添加磁盘,本文介绍了如何将新磁盘分区、格式化、挂载或制作LVM逻辑卷,进行磁盘空间扩容。

1. 基本分区

磁盘的分区格式一共有两种:

一种是GPT分区,GPT最多支持128个主分区,没有扩展分区和逻辑盘,支持任意容量的磁盘分区。

一种是MBR分区,做多四个主分区,可以做三个主分区加一个扩展分区,扩展分区可以做成许多逻辑分区,但分区总数量不能超过14,2T容量以下的硬盘分区一般常用MBR格式分区。

添加新磁盘后,通过lsblk(list block)命令列出所有可用的块设备,查看新磁盘是否添加成功。

图中的sdb盘是一块新添加的20G磁盘,需要通过分区、格式化、挂载来对磁盘进行处理才可以使用。

1.1 MBR分区

fdisk /dev/sdb  #使用fdisk对磁盘开始分区

命令参数如图所示,常用的有:

d   删除一个分区
g   创建一个新的GPT分区表
n   添加一个新的分区
o   创建一个新的MBR分区表
p   打印分区表
q   退出不保存
w   保存并退出

输入n,选择添加一个新的分区

选择p创建主分区,选择e创建扩展分区,回车选择默认值即可

分区号和起始扇区都回车选择默认值即可,Last扇区一步需要手动输入想要划分的分区大小+size{K,M,G}

最后一步输入w退出并保存,第一个分区设置完成

再次lsblk查看,sdb磁盘下已经分出sdb1分区,大小为10G,下一对该分区制作文件系统并挂载

  • 一般Linux的本地文件系统使用最多是xfs和ext4两种文件系统格式,根据需要选择

mkfs.xfs /dev/sdb1
mkfs.ext4 /dev/sdb1

输入mkfs.xfs /dev/sdb1,将sdb1分区制作成xfs格式的文件系统

最后一步,创建目录,将sdb1分区挂载在该目录下即可

mkdir /mnt/guazai 
mount /dev/sdb1 /mnt/guazai

此时sdb1分区已经挂载,可以开始写入,但目前只是临时挂载,更换终端或重启后需要再次手动挂载,所以最好做成开机自动挂载,在/etc/fstab文件内加上以下内容,即可开机自动挂载

/dev/sdb1 /mn/guazai    xfs         defaults    0     0
   分区      挂载点   文件系统类型 文件系统属性 不备份 不检查
#添加完成后使用mount -a命令检查,添加错误会导致系统启动出错,谨慎操作!

1.2 GPT分区

GPT分区使用gdisk命令,其他与fdisk命令操作方法基本一致,按提示进行操作即可

分区添加成功后,制作文件系统、挂载、自动挂载操作同前文

2. LVM逻辑卷分区

基本分区大小无法调整,写入数据占满时便无法继续使用,整体数据迁移又非常麻烦,而LVM逻辑卷分区的特点就是可以随意扩容,规避磁盘占满时的数据丢失风险。

  • 物理卷(Physical Volume,PV):也就是将物理磁盘分区转化为LVM可识别的值。

  • 卷组(Volume Group,VG):PV的集合

  • 逻辑卷(Logic Volume,LV):VG中画出来的一块逻辑磁盘

首先引入PV、VG、LV的概念,物理磁盘或者磁盘分区转换为物理卷,一个或多个物理卷聚集形成一个或多个卷组,而逻辑卷就是从某个卷组里面抽象出来的一块磁盘空间。

2.1 创建逻辑卷

step1

pvcreate /dev/sdc   #将新磁盘sdc制作成物理卷
创建完成后使用pvs、pvscan、pvdisplay任意一个即可查看

step2

vgcreate vg1 /dev/sdc   #创建卷组vg1并将物理卷/dev/sdc加到卷组
创建完成后使用vgs、vgscan、vgdisplay任意一个即可查看

由于/dev/sdc是一块20GB的新磁盘,所以vg1剩余空间为20GB

step3

lvcreate -L +10G -n lv1 /dev/vg1    #从vg1卷组拿10GB空间做成逻辑卷lv1
lvcreate -l +100%FREE -n lv1 /dev/vg1   #将vg1卷组全部剩余空间做成逻辑卷lv1
创建完成后使用lvs、lvscan、lvdisplay任意一个即可查看

step4

mkfs.xfs /dev/vg1/lv1           #制作文件系统
mkdir /mnt/lv1                  #创建挂载点目录
mount /dev/vg1/lv1 /mnt/lv1     #挂载
echo "/dev/vg1/lv1 /mnt/lv1 xfs defaults 0 0" >>/etc/fstab      #开机自动挂载

2.2 逻辑卷扩容

当卷组内空间充足时,直接从卷组内拿空间给逻辑卷扩容或创建新逻辑卷

当卷组内空间不足时,添加磁盘制作成物理卷给卷组扩容,再从卷组拿空间给逻辑卷扩容

vgextend vg1 /dev/sdd(xincipan)     #卷组扩容
lvextend -L +10G /dev/vg1/lv1       #逻辑卷扩容

逻辑卷扩容后需要给相应的文件系统扩容才可生效

xfs_growfs  #xfs文件系统扩容
resize2fs   #ext4文件系统扩容

3. swap交换分区

Linux内核为了提高读写效率与速度,会将文件在内存中进行缓存,这部分内存就是Cache Memory(缓存内存)。即使你的程序运行结束后,Cache Memory也不会自动释放。这就会导致你在Linux系统中程序频繁读写文件后,你会发现可用物理内存变少。当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。

3.1 基本分区、LVM制作交换分区

使用free -m或swapon -s查看当前swap分区信息

步骤:

制作一个新的基本分区或逻辑卷
mkswap /dev/sdb1    或    mkswap /dev/vg1/lv1
#初始化为swap分区
echo "/dev/sdb1 swap swap defaults 0 0"
或
echo "/dev/vg1/lv1 swap swap defaults 0 0"
#制作开机挂载
swapon -a 
#激活swap分区(读取/etc/fstab)

swap分区制作成功

3.2 大文件制作交换分区

首先使用dd命令创建一个足够大而空的文件

dd if=/dev/zero of=/mnt/file bs=1000M count=20  #在/mnt下创建一个名为file大小为20G的文件
 input file  output file    block大小   数量      
   输入文件     输出文件
mkswap /mnt/file    #格式化该文件
echo "/mnt/file swap swap defaults 0 0" >>/etc/fstab    #制作开机挂载
swapon -a   #激活
swapon -s   #查询

4. 注意事项

  • 当磁盘已经添加了一个MBR(GPT)分区后,又想转换为GPT(MBR)分区时

    首先fdisk(gdisk)该分区,使用d参数删除分区,w参数保存退出
    parted -s /dev/sdb mklabel gpt           #将/dev/sdb(MBR格式)转换成(GPT格式)
    parted -s /dev/sdb mklabel msdos         #将/dev/sdb(GPT格式)转换成(MBR格式)
    转换完成后重新进行分区操作
  • 第一个分区设置完成后未重启设置第二个分区时会报如图的错误

partprobe /dev/sdb或kpartx /dev/sdb  更新磁盘分区表,手动让内核更新分区表。不需要重启
  • 分区或逻辑卷挂载时最好是空目录,因为挂载后会将目录下的东西覆盖,卸载后才能访问

  • mount命令挂载时可以-o指定下列参数
    -o         指定文件系统属性
    rw         读写 
    ro         只读 
    noexec     不允许执行二进制文件
    exec       允许执行二进制文件 
    auto       mount -a 开机自动挂载 
    remount    在线重新挂载 

  • lvremove        #逻辑卷移除
    vgremove        #卷组移除
    pvremove        #物理卷移除

  • umount /dev/sdb     #卸载
    umount -l /dev/sdb  #强制卸载

  • 从MBR转到GPT,或从GPT转换到MBR会导致数据全部丢失!因为转换格式要格式化硬盘!

标签:lv1,管理,分区,Linux,dev,磁盘,挂载,vg1
From: https://blog.csdn.net/Carolless/article/details/140737462

相关文章

  • java毕设之学生管理系统(部分源码)
    如有需要完整代码的请+vaaa5988689-------------------------------------------------------------------------------publicclassStudentSysterm{publicstaticvoidmain(String[]args){ArrayList<Student>list=newArrayList<>();/......
  • Pyhton毕业设计基于django的旅游管理系统景点酒店订票和特产购物
    文末获取资源,收藏关注不迷路文章目录一、项目介绍亮点:景点和酒店订票,特色购物商城,在线地图功能二、主要使用技术三、研究内容四、核心代码五、文章目录一、项目介绍随着经济的快速发展和人民生活水平的提高,旅游业在全球范围内迅速发展,成为推动经济增长的重要力量。......
  • Linux应用层开发(6):SPI通信
            本章通过讲解在应用层中使用SPI总线与外部设备的通讯,讲解Linux系统总线类型设备驱动架构的应用,它与上一章的I2C总线操作方法非常相似,可以对比学习。在Linux内核文档的Documentation/SPI目录下有关于SPI驱动非常详细的说明。1. SPI通讯协议简介     ......
  • Linux应用层开发(5):I2C通讯
    1.I2C通讯协议简介 I2C通讯协议(Inter-IntegratedCircuit)是由Phiilps公司开发的,由于它引脚少,硬件实现简单,可扩展性强,不需要USART、CAN等通讯协议的外部收发设备,被广泛地使用在多个集成电路(IC)间的通讯。 1.1. I2C物理层I2C通讯设备之间的常用连接方式如下图。......
  • 【轨物方案】新型储能管理系统(EMS)解决方案
    储能EMS作为储能系统的大脑,其重要性不言而喻,但是随着储能行业的不断扩大以及对应产品的不断升级,其对应的售后运维变得越来越复杂,储能系统急需配备完善的EMS系统来监控和优化自身的运营状态,同时满足售后运维,实现全套的智能化售后运维体系。针对工商业储能智能化运维的需求,轨......
  • ssm+vue4s店汽车销售管理系统【开题+程序+论文】-计算机毕业设计
    本系统(程序+源码)带文档lw万字以上文末可获取一份本项目的java源码和数据库参考。系统程序文件列表开题报告内容研究背景随着汽车行业的蓬勃发展,4S店(集整车销售、零配件、售后服务、信息反馈四位一体的汽车销售服务企业)作为汽车销售与服务的重要渠道,其管理效率与服务质量......
  • 基于python的出租车管理网站的设计与实现【源码+文档+PPT】
    ......
  • 如何在Linux上的python中以后台模式打开程序?
    我需要在Linux上以后台模式使用python打开另一个程序。我尝试过subprocess.call("yourcommand")但它不是后台模式。并且os.startfile("file")在Linux上不起作用。请帮助我。可以使用Python的subprocess模块在Linux上以后台模......
  • 计算机毕业设计SpringBoot+vue的洗衣店客户管理信息系统
    随着人们生活水平的提高,人们的衣物越来越多,而时间精力却越来越少,于是洗衣店的需求正在急剧增加,洗衣店有着很大的发展潜力,但根据对洗衣店的现状和需求调查研究表明,目前国内的洗衣店的发展仍然落后于市场的需求。减轻家务劳动的压力,寻求专业便捷的洗衣服务已经成为大多数人的选择......
  • “论软件测试中缺陷管理及其应用”写作框架,软考高级论文,系统架构设计师论文
    原创范文软件缺陷指的是计算机软件或程序中存在的某种破坏正常运行能力的问题、错误,或者隐藏的功能缺陷。缺陷的存在会导致软件产品在某种程度上不能满足用户的需要。在目前的软件开发过程中,缺陷是不可避免的。软件测试是发现缺陷的主要手段,其核心目标就是尽可能多地找出......