50G硬盘扩容至200G

温馨提示:本文操作涉及系统磁盘,请务必做好数据备份!搞砸了别来找我哭诉(虽然大概率不会搞砸)

有需要的朋友可以另外看看这篇文章:

一、前言:甲骨文的"良心"与"小气"

甲骨文云(Oracle Cloud)确实挺良心——免费套餐能开两台 X86 主机 +ARM 4H24G 配置,这配置跑个小网站、挂个爬虫、搭个梯子(咳咳,我是说科学上网学习)绰绰有余。但!是!它有个 "小气" 的地方:默认只给你 50G 硬盘(实际显示 47G),而整个账户的免费额度其实是 200G!

这就好比去自助餐厅,老板说 "随便吃",结果只给你个小碟子——不是不让吃,是让你多跑几趟。好在,我们可以把碟子换成大碗!

二、扩容前的"灵魂拷问"

在动手前,先问自己三个问题:

  1. 数据重要吗? 如果只是测试环境,直接重开实例改硬盘大小最省事(但环境得重配)
  2. 懒吗? 如果懒得重装环境,那就跟着本文走扩容路线
  3. 会备份吗? 不会?现在就去学!别等数据丢了才后悔

三、方法一:后台修改引导卷(最安全)

这是官方推荐的方式,适合手残党(比如我)。

操作步骤(手把手版)

  1. 登录甲骨文云后台 → 菜单 → 计算 → 实例
  2. 找到你的小鸡(实例),点进去 找到实例
  3. 找到"引导卷" ,点"编辑" 找到引导卷
  4. 输入新大小(最大200G,别贪心) 调整卷的大小
  5. 保存 → 等待状态变成"可用"

系统识别新容量

多数系统重启后会自动识别。如果没反应,别慌,试试以下命令(以 Oracle Linux 为例):

# 先设置语言环境(避免乱码)
LANG=en_US.UTF-8

# 执行扩容命令
/usr/libexec/oci-growfs

# 查看磁盘大小
lsblk

如果看到 sda 从 50G 变成了你设置的大小,恭喜你,扩容成功!

四、方法二:其他系统的"骚操作"

如果你用的不是 Oracle Linux,可能需要手动操作。这里以 Debian 为例:

Debian系统扩容

甲骨文自带的 Debian 系统会提示你执行以下命令:

# 第一步:执行dd命令(别问为什么,照做就行)
sudo dd iflag=direct if=/dev/oracleoci/oraclevda of=/dev/null count=1

# 第二步:重新扫描磁盘
echo "1" | sudo tee /sys/class/block/`readlink /dev/oracleoci/oraclevda | cut -d'/' -f 2`/device/rescan

其他系统(如Ubuntu、CentOS)

执行完 DD 命令后,用 lsblk 或 df -h 查看盘符。假设你的系统盘是 sda1,执行:

# 调整文件系统大小
resize2fs /dev/sda1

注意:有些系统重启后直接 resize2fs 就能完成,有些需要先执行上面的 DD 命令。建议先重启试试,不行再上命令。

五、常见翻车现场与自救指南

翻车场景 症状 自救方法
翻车场景 症状 自救方法
命令执行后没反应 df-h还是显示旧容量 重启实例试试,或者检查命令是否输错
提示权限不足 Permission denied 加 sudo,或者切换到root用户
系统卡死 命令执行后无响应 强制重启实例(后台操作)
数据丢失 文件不见了 提前备份!提前备份!提前备份!

六、总结与吐槽

  1. 为什么默认50G? 我猜甲骨文是为了防止用户滥用,毕竟200G免费额度对个人来说挺香的
  2. 扩容有风险吗? 理论上风险很低,但任何磁盘操作都有万分之一的风险,所以备份!备份!备份!
  3. 需要重启吗? 多数情况需要,但有些系统(如Oracle Linux)可以在线扩容
  4. 能缩容吗? 不能!硬盘只能增不能减,就像我的体重一样

最后,如果你扩容成功了,记得在评论区留个 "已成功",让我知道这篇教程没坑人。如果翻车了... 呃,建议先看备份教程。


免责声明:本文仅作技术分享,操作前请自行评估风险。作者不对任何数据丢失负责(毕竟我提醒过你备份了)。