总计 1,199 阅读, 今天 1 阅读

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

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

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 一项已经变为我们指定的值。

linux 在线扩inode,Ubuntu 18.04 磁盘根目录在线扩容 修改分区 inode 数量相关推荐

  1. skype linux 安装,如何在Ubuntu 18.04上安装Skype

    Skype是世界上最流行的通信应用程序之一,它使您可以拨打免费的在线音频和视频电话,以及可负担得起的拨打全球移动电话和固定电话的国际电话. Skype不是开源应用程序,也不包含在Ubuntu存储库中. ...

  2. linux 模拟运行 微信,Ubuntu 18.04 安装微信(Linux通用)

    Ubuntu 18.04 安装微信(Linux通用) 发布时间:2018-06-02 10:52, 浏览次数:1468 , 标签: Ubuntu Linux Linux相关的知识:https://ww ...

  3. linux 安装软件 垃圾,Ubuntu 18.04 安装垃圾清理工具 BleachBit 2.2

    Ubuntu 18.04 安装垃圾清理工具 BleachBit 2.2 BleachBit 可以清理系统缓存文件, 清理磁盘垃圾.下面记录在Ubuntu 18.04下安装垃圾清理工具 BleachBi ...

  4. linux系统安装teamview,在Ubuntu 18.04系统上安装TeamViewer的两种方法

    本文介绍在Ubuntu 18.04 LTS Bionic Beaver系统上安装TeamViewer的两种方法,第一种方法使用图形用户界面安装,第二种使用终端命令行安装,同时可以先参考在Ubuntu ...

  5. linux欢迎界面设计,Ubuntu 18.04 LTS新增欢迎界面--方便用户快速上手新系统

    在Ubuntu生态系统中有很多风味版本都有欢迎界面,例如Ubuntu MATE和Ubuntu Budgie,还有很多基于Ubuntu的GNU/Linux发行版本,在系统安装完成之后为消费者设置提供快捷 ...

  6. linux卸载kodi,在Ubuntu 18.04上,如何安装Kodi

    Kodi (以前称为XBMC )是一个免费的开放源代码跨平台媒体播放器和娱乐中心,可让你组织和播放Internet,本地和网络存储中的流媒体,例如视频,播客,音乐. 在本教程中,我们引导你如何在Ubu ...

  7. linux终端界面美化,Ubuntu 18.04系统美化记录:Grub2\主题\登录界面\终端美化

    初装Ubuntu 18.04系统后想美化操作系统,该怎么做?以下为你介绍Ubuntu 18.04美化一体化:Grub2美化.主题美化.登录界面美化.终端美化.以下美化仅是初级介绍,如果需要更多请看Li ...

  8. linux 命令安装 wine,Wine安装使用(适用Linux Mint 19与Ubuntu 18.04下)

    以下分享关于Wine的安装使用经验,适用于Linux Mint 19或者是Ubuntu 18.04及Ubuntu Kylin 18.04操作系统,本文内容是手工命令安装方式,而通过软件中心进行安装则不 ...

  9. linux删除网卡virbr0,Ubuntu 18.04中删除virbr0网桥

    使用Ubuntu 18.04 LTS操作系统,按照官方教程安装Openstack时,需要使用LXC创建虚拟机,过程中使用LXC默认生成virbr0网桥,使用ifconfig指令能看到网桥virbr0: ...

最新文章

  1. Fragment导入包的问题
  2. 使用 GDB 调试多进程程序
  3. 爬虫之观察js的执行过程
  4. 移动端的touch事件处理
  5. java调试报告_java实验一报告
  6. vscode 语法检查_Jenkins 声明式流水线的语法错误检查
  7. caas k8s主控节点如何查询_k8s中部署prometheus监控告警系统prometheus系列文章第一篇...
  8. 阿里云云计算 16 块存储的概念
  9. 动态规划(Dynamic Programming)理论篇
  10. HTML5俄罗斯方块网页游戏代码
  11. Linux下bzero函数
  12. Fliqlo屏保mac
  13. outlook统一签名模版设置
  14. 《赋得古原草送别》诗改文
  15. 政考网:公务员考试备考攻略!
  16. Java 鸡翁一值钱五Java_Java案例5:斐波那契数列,百钱百鸡
  17. MAC如何安装pfx
  18. Juc_并发编程目录
  19. 使用高级语言编写计算机程序步骤,计算机执行用高级语言编写的程序主要有两种途径解释和编译编译专.doc...
  20. javascript中Doom操作方法总结

热门文章

  1. 【C】Function
  2. nodejs爬虫——汽车之家所有车型数据
  3. (2)扩散模型 Diffusion Model 1-2 扩散阶段
  4. 『参考』OpenNETCF的动手实验——WIFI
  5. 基于多源城市交通出行数据的定制公交需求辨识方法研究
  6. android最新相机打不开,Android 7.0调用相机崩溃详解及解决办法
  7. 2022.09·最新PC端微信小程序抓包方式
  8. 渗透测试工具——Nmap
  9. 网络安全工具-Nmap
  10. Win7怎么设置计算机窗口,win7纯净版电脑中切换窗口显示的数目如何设置