Ubuntu 18.04 磁盘根目录在线扩容 & 修改分区 inode 数量

 

Ubuntu 作为服务器系统使用的时候,系统盘的空间可能并不是很充裕,apt apt 着,根目录就满了。诚然,增加磁盘 / 分区并挂载是一个方案,但并不能解决所有问题(例如 apt)。同时,一些跑在云平台上的服务器并没有很好的离线操作磁盘的手段,这时候在线扩容就显得极为必要了。

数据无价!对磁盘进行任何操作前,请务必做好备份!


1. 磁盘根目录在线扩容

操作环境:Proxmox VE 虚拟化 / Ubuntu 18.04.5 LTS / GPT 分区表 / ext4 分区

1.1 增大物理磁盘容量

这部分没什么好说的,虚拟机就在设置里改,云平台就在对应的平台修改。修改好之后 Ubuntu 应该就可以直接识别到新的容量了。

1.2 将容量合并进分区

首先运行

fdisk -l

命令查看磁盘容量是否被识别:

从上图可以看到,磁盘容量已被正确识别为 64GiB,但分区表记录的磁盘容量仍为扩容前的 40GiB(见红色提示,错误已被识别到),分区大小也是同样的 40G。

1.2 修复分区表

运行

parted -l

查看分区情况。
parted 会立即提示磁盘的空间并没有被全部使用,这里输入 Fix 后回车,修复一下 GPT 分区表。

从上图中已经可以看到,分区表记录的磁盘容量已经正常。

1.3 扩容分区

现在就可以将空闲的磁盘容量合并到分区里了,这里利用界面和操作都更加友好的

cfdisk

来进行操作。
按上下键选中要扩容的分区,再按左右键选择 Resize 操作,回车。cfdisk 应该会自动填写此分区与未分配空间的总容量,也可以自己输入扩容后的大小,回车即可。

下图中的 sda2 分区已经变为 64G,分区扩容完毕。但此时的所有操作仅在内存中完成,我们需要选择 Write 来将更改保存到分区表。写入后退出 cfdisk。

再次执行

fdisk -l

,可见分区容量已变为 64G。

1.4 扩容文件系统

此时扩容并未结束,因为文件系统记录的分区容量仍为 40G,我们需要让文件系统知道分区已被扩容。

这里需要用到 resize2fs,以我的磁盘 sda2 为例,执行以下命令:

resize2fs -p /dev/sda2
resize2fs /dev/sda2
 
 

等待操作完成即可。根据上图提示,我们已经完成了对文件系统的在线扩容。


2. 修改磁盘 inode

对于 ext4 文件系统,inode 会在格式化时被写死,若要修改必须重新格式化,丢失所有数据,请务必注意。xfs 等文件系统提供 inode 的动态扩展功能。

2.1 查看磁盘 inode 情况

运行

df -i

查看各个分区的 inode 使用情况。

从上图可以看到我的 sdc1 分区已经用尽了所有 4,194,304 个 inode,此时表现为无法写入任何数据,提示磁盘已满(即使仍有可用空间)。

2.2 重新格式化分区

在格式化分区的时候,可以利用 -N 参数指定 inode 数量。
以格式化 sdb1 为具有 16,777,216 个 inode 的 ext4 分区为例,执行以下命令:

mkfs.ext4 /dev/sdb1 -N 16777216

mkfs 会提示磁盘已存在格式化后的文件系统,确认后等待格式化完成即可。

2.3 检查 inode 数量

运行以下命令:

dump2fs -h /dev/sdb1 | grep node

结果如下图,可以看到 Inode count 一项已经变为我们指定的值。

 

Ubuntu 18.04 磁盘根目录在线扩容 & 修改分区 inode 数量的更多相关文章

  1. Ubuntu 18.04 进入单用户模式修改密码

    Ubuntu 18.04 使用单用户模式修改密码 操作步骤 启动Ubuntu 18.04 ,长按 Shift 键(有的可能按 Esc 键:绝大多数按 Shift 键)进入单用户视图,选中 Ubuntu ...

  2. Ubuntu 18.04 根目录为啥只有 4G 大小

    其实准确点儿的描述应该是:Ubuntu Server 18.04 ,设置 LVM,安装完成后根目录的容量为什么只有 4G?只有 Server 版有问题,Desktop 版没有问题,Ubuntu 16. ...

  3. Ubuntu 18.04 根目录只有 4G 大小

    其实准确点儿的描述应该是:Ubuntu Server 18.04 ,设置 LVM,安装完成后根目录的容量为什么只有 4G?只有 Server 版有问题,Desktop 版没有问题,Ubuntu 16. ...

  4. Ubuntu 18.04 LTS修改 国内源(以中科大源为例)

    国内有很多Ubuntu的镜像源,包括阿里的.网易的,还有很多教育网的源,比如:清华源.中科大源. 我们这里以中科大的源为例讲解如何修改Ubuntu 18.04里面默认的源. 可以进入这个链接进行下载: ...

  5. ubuntu 18.04 修改 固定ip

    Linux(ubuntu)下固定IP的方法   写在前面,问:为什么要固定ip.答:要知道固定IP的好处多多,随意搬动,固定共享地址,不怕断网等等 首先,我们要选取一个局域网内的IP,方法如下: 1. ...

  6. Ubuntu 18.04修改默认源

    安装Ubuntu 18.04后,使用国外源太慢了,修改为国内源会快很多. 修改阿里源为Ubuntu 18.04默认的源 备份/etc/apt/sources.list #备份 cp /etc/apt/ ...

  7. ubuntu 18.04 修改Apache默认目录

    ubuntu 18.04 修改Apache默认目录 安装是直接运行 sudu apt install apache2 安装之后要修改目录 vi /etc/apache2/sites-available ...

  8. Ubuntu 18.04下安装Steam顶级在线游戏平台

    Ubuntu 18.04下安装Steam顶级在线游戏平台 原创: 聆听世界的鱼 Linux公社 今天 Steam是由Valve公司开发的顶级在线游戏平台,是目前全球最大的综合性数字发行平台之一.它让你 ...

  9. Ubuntu 18.04修改默认源为国内源

    安装Ubuntu 18.04后,使用国外源太慢了,修改为国内源会快很多. 修改阿里源为Ubuntu 18.04默认的源 备份/etc/apt/sources.list 备份 cp /etc/apt/s ...

随机推荐

  1. 一个简单的性能计数器:CodeTimer

    public static class CodeTimer { public static void Initialize() { Process.GetCurrentProcess().Priori ...

  2. P1424

    #include <stdio.h> int main(){ int s = 250; int x, n, distance = 0; scanf("%d %d",&a ...

  3. linux基础篇--复习重点成长之路

    linux阶段性复习提纲 1.xshell与shell之间的区别 shell ​ shell是一个由C语言编写的程序,它的主要作用就是在用户和操作系统之间搭起一道桥梁(人机操作界面).直接在命令行执行 ...

  4. linux文本编辑工具

    文本编辑工具VIM vim 主要有三种工作模式,分别是命令模式.插入模式和编辑模式,输入 vim 文件名 我们可以进入命令模式,输入字符 i或者a或者o我们可以进入插入模式,进入插入模式之后我们可以进 ...

  5. laravel7 权限菜单设置简易升缩

    1:数据库填写数据,pid=0为顶级菜单,pid=对应的id为顶级菜单的子菜单 2:laravel7 创建模型并链接对应的表名 <?php namespace App\models; use I ...

  6. VUE3 之 列表动画 - 这个系列的教程通俗易懂,适合新手

    1. 概述 老话说的好:可以为别人解决痛点的产品就是好产品. 言归正传,今天我们来聊聊 VUE 的列表动画. 2. 列表动画 2.1  列表中增加和删除元素 <style> .my-ite ...

  7. Docker-compose 搭建 Harbor私有仓库

    一. 安装docker-compose 1. 下载docker-compose的最新版本 curl -L "https://github.com/docker/compose/release ...

  8. Play商店显示需要进行身份认证。您需要登录自己的Google帐户

    前段时间把一加6系统从H2OS换到OxygenOS,Play商店死活不能登录,网络配置等问题已经排除,重装Google全家桶也没有解决问题,最后找到原因. 解决办法:在应用列表中找到Google Pl ...

  9. ZYNQ SGI、PPI、SPI三种中断的实例(含代码)

    ZYNQ中断分为3类: SGI(Software Generated Interrupts)软件中断 PPI(Private Peripheral Interrupts)私有外设中断 SPI(Shar ...

  10. Django之 rest_framework (一基本组件)

    目录 RESTFUL 序列化 视图三部曲 认证与权限组件 解析器 分页 RESTFUL 一.什么是RESTFUL REST与技术无关代表的是一种软件架构风格,REST是Representational ...