GCP 大硬盘的实例 变成 小硬盘的实例
GCP 的硬盘快照是压缩保存的,但是在恢复的时候,只能恢复到比快照时硬盘更大的硬盘上。这样,本来硬盘只使用了 1GB,但是因为所在的硬盘是 30GB 的,恢复成实例的时候也只能选 30GB 以上的硬盘大小。而 GCP 不管是实例还是快照都是按大小收钱的,所以就有了把大硬盘的实例变成小硬盘的实例,再做成快照的需求。
思路:
把大磁盘(以 30GB 为例)留下来
加到某个实例上
用 gparted 把磁盘缩小(以 10GB 为例)
* 后续描述都以 30GB,10GB 指代,请理解。
dd 到一个新的 10GB 硬盘上
具体操作过程:
1. 设置删除实例时不删除磁盘
打开 30GB 磁盘的实例,点击 “修改”,去掉勾选 “在删除实例时删除启动磁盘”,“保存”
2. 将 30GB 实例删除
提示删除磁盘的就不要勾选了
* 一定要先启动实例再加挂 30GB 硬盘,不然实例可能会从 30GB 硬盘启动,就不能做缩小分区的操作了。
5. 加挂已经存在的 30GB 硬盘,再新增一个 10GB 硬盘
修改实例
Xfce、VNC、gparted
parted
* vnc 的细节操作略,可参考 https://zelikk.blogspot.com/2019/01/gcp-vps-xfce-vnc.html
7. 将 30GB 硬盘 resize 到 10GB
在 vnc 窗口中终端运行 gparted
30GB 硬盘。
可以在 gparted 中确认。
思路:
把大磁盘(以
加到某个实例上
用
* 后续描述都以
dd
具体操作过程:
1. 设置删除实例时不删除磁盘
打开
2. 将
提示删除磁盘的就不要勾选了
3. 创建一个新实例
创建实例时注意和 30GB 磁盘在同一个区域。
4. 启动实例* 一定要先启动实例再加挂
5. 加挂已经存在的
修改实例
加挂 30GB 硬盘
新增 10GB 硬盘
6. 为了在图形界面下操作,安装apt-get install xfce4* 如果在命令行操作,只需要装
apt-get install tightvncserver
apt-get install gparted
* vnc
7. 将
在
其实各种分区工具的界面大同小异。
切换到
右键,"resize"
调整大小为 10238MB(注意空间的前面还有 2MB,无法改成 0,所以空间大小就成了 10238MB。这也是为什么不推荐使用命令行的原因,注意不到这些细节。)
确定之后,再 Apply
8. 把调整后的 10GB 数据 DD 到新的 10GB 硬盘上
dd in=/dev/sdb of=/dev/sdc sb=200Msdb sdc
红色部分根据实际可用内存大小设置,可以优化拷贝速度。
9. 把新的 10GB 硬盘从现在这个实例上拆下来,再创建新实例。
完成。
评论
发表评论