zoukankan      html  css  js  c++  java
  • Linux 磁盘扩容

    一、概述

    1. win10磁盘扩容

    win10磁盘扩容主要有以下步骤:

    假设将D磁盘的部分空间扩容给C盘:

    (1)D盘右键,压缩卷(如果要将D盘全部扩容给C盘,则直接删除卷),设置好参数后进行压缩,压缩/删除以后,会多出一个未分配的分区;

    (2)在C盘右键,点击扩展卷,然后设置参数,点击下一步直到完成就可以了。

    2.linux磁盘扩容

    LVM(逻辑卷管理, Logical Volume Manage)将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用,当硬盘的空间不够使用的时候,可以继续将其它的硬盘的分区加入其中,这样可以实现磁盘空间的动态管理,相对于普通的磁盘分区有很大的灵活性。

    LVM最大的特点就是可以对磁盘进行动态管理。因为逻辑卷的大小是可以动态调整的,而且不会丢失现有的数据。我们如果新增加了硬盘,其也不会改变现有上层的逻辑卷。作为一个动态磁盘管理机制,逻辑卷技术大大提高了磁盘管理的灵活性!

    PE:物理拓展

    PV: 物理卷(物理的磁盘分区);

    VG: 卷组,由一个或多个PV组成,可以在卷组上创建一个或多个LV;

    LV:逻辑卷,逻辑卷建立在VG之上,在LV之上可以建立文件系统(比如/home或者/usr等);

    工作原理:

    (1)物理磁盘被格式化为PV,空间被划分为一个个的PE

    (2)不同的PV加入到同一个VG中,不同PV的PE全部进入到了VG的PE池内

    (3)LV基于PE创建,大小为PE的整数倍,组成LV的PE可能来自不同的物理磁盘

    (4)LV现在就直接可以格式化后挂载使用了

    (5)LV的扩充缩减实际上就是增加或减少组成该LV的PE数量,其过程不会丢失原始数据

    扩展逻辑卷的步骤:

    (1) 在硬盘上创建一个新分区;

    (2) 将刚创建好的新分区添加为物理卷;

    (3) 将该物理卷添加为卷组;

    (4) 将空间从卷组分配到逻辑卷;

    (5) 调整文件系统的大小;

    磁盘与文件系统之间的关系:

    映射关系:扇区→物理块→逻辑块→文件系统

    dfisk: 物理块,查看和管理磁盘分区信息。

    lsblk:逻辑块 ,查看磁盘和分区信息,block device, 也就是逻辑磁盘大小。

    df: 文件系统,查看分区和挂载对应信息,查看的是file system, 也就是文件系统层的磁盘大小。

    二、步骤

     1. 选择扩容方式

    首先,你应该查看你要扩容的磁盘是否是采用LVM进行逻辑卷管理的,如果是那就简单了,可直接采用LVM的方式进行磁盘扩容,如果不是那你则需要采用非LVM的方式进行磁盘扩容。

     如上图,查看磁盘使用时发现/dev/sda2使用率已经很高了,我们需要对其扩容,而且根目录上挂载的是/dev/sda2这个分区。

    查看磁盘分区情况可知,/dev/sda2分区的id为83,因此不可以采用LVM的方式进行逻辑卷管理(扩容),如果为8e,则说明可以采用LVM的方式进行扩容。

    2. 非LVM磁盘扩容

     2.1 先在VMware中增加centos的大小

     2.2 列出设备块信息

     从如下信息可知,sda已经增加了容量(原来为20G,现在变为了50G了),但是这个容量变没有增加到了/dev/sda2中。

    如上,sda2挂载在根目录下,但sda2不是最后一个分区,下面还有一个sda3分区,下面新增的空间只有跟sda2是连续的,后面选择start和end的时候,才能连接上,这是成功的必备条件。(当然,如果有其他的解决办法的话,请告诉本博主一声)

    如果不是最后一个分区挂载在根目录下,这个就比较麻烦,需要进一步研究。建议新建虚拟机的时候,选择用LVM来管理分区,这样就好好解决以上的问题了。

    既然如此,那我就先把/dev/sda3删了,至于有没有后遗症等以后再说。

     删除完以后,使用lsblk查看,如果还存在,那么使用reboot命令重先一下就OK了,如下:

     2.3 扩容:删除原分区,在创建一个和原分区一样的分区

    使用reboot命令重启。

     2.4 刷新文件系统容量

    查看sda2的文件格式:

     

     如图,sda2的格式为ext4。

    如果格式是xfs的,则使用xfs_growfs命令进行刷新文件系统容量, eg: xfs_growfs /dev/sda2;

    如果是ext的,则使用resize2fs命令进行刷新文件系统容量,eg: resize2fs /dev/sda2;

     扩容成功了。

    3. LVM方式磁盘扩容

     此方式很简单,等用到了在接着写,如果你用到了,可以参考以下几篇博客,随便一篇都可以成功。

    参考:

    linux扩容空间,再扩容文件系统

     Linux系统中LVM的创建

    Linux删除分区

    Linux LVM硬盘管理及LVM扩容

    How to Extend Linux LVM Logical Volume

    centos虚拟机扩展磁盘空间(经历无数坑,血一样总结,史上最全)

    LVM实验

    VMware下linux非LVM管理的根目录扩容经历

    VMware下linux非LVM管理的根目录扩容经历

    使用VMware进行LVM逻辑卷的安装、配置与使用

    4 个 lvcreate 常用命令举例

  • 相关阅读:
    C语言程序设计_zju——计算时间差
    C语言程序设计_zju——第1周编程练习_逆序的三位数
    常用CMD指令
    C#MVC Razor的Ajax.BeginForm里面的OnSuccess未执行(未成功跳转)
    发布带注释的dll
    读书笔记之《得未曾有》
    读书笔记之《高效人士的七个习惯》
    读书笔记之《好好说话》
    个人随笔之《关于选择》
    个人随笔之《关于心安》
  • 原文地址:https://www.cnblogs.com/shiyun32/p/13416615.html
Copyright © 2011-2022 走看看