+86 189 8218 1436Mon. - Fri. 10:00-22:00

GCP大硬盘的实例 变成 小硬盘的实例教程

GCP大硬盘的实例 变成 小硬盘的实例教程
Posted in: GCP谷歌云服务器代维护, Google谷歌GCP云服务器代维护服务, Google谷歌GCP云服务外包, Google谷歌GCP企业支持外包, Google谷歌GCP技术支持服务, Google谷歌GCP服务器代维外包, Google谷歌GCP服务器代维护, Google谷歌GCP服务器代维管理 Started by

GCP大硬盘的实例 变成 小硬盘的实例教程

GCP的硬盘快照是压缩保存的,但是在恢复的时候,只能恢复到比快照时硬盘更大的硬盘上。这样,本来硬盘只使用了1GB,但是因为所在的硬盘是30GB的,恢复成实例的时候也只能选30GB以上的硬盘大小。而GCP不管是实例还是快照都是按大小收钱的,所以就有了把大硬盘的实例变成小硬盘的实例,再做成快照的需求。

思路:
把大磁盘(以30GB为例)留下来
加到某个实例上
用gparted把磁盘缩小(以10GB为例)
     * 后续描述都以30GB,10GB指代,请理解。
dd到一个新的10GB硬盘上

具体操作过程:
1. 设置删除实例时不删除磁盘
打开30GB磁盘的实例,点击 “修改”,去掉勾选“在删除实例时删除启动磁盘”,“保存”

%25E5%259B%25BE%25E5%2583%258F_1547560710

2. 将30GB实例删除
提示删除磁盘的就不要勾选了

%25E5%259B%25BE%25E5%2583%258F_1547560920
3. 创建一个新实例
创建实例时注意和30GB磁盘在同一个区域。
%25E5%259B%25BE%25E5%2583%258F_1547561183

4. 启动实例
* 一定要先启动实例再加挂30GB硬盘,不然实例可能会从30GB硬盘启动,就不能做缩小分区的操作了。
5. 加挂已经存在的30GB硬盘,再新增一个10GB硬盘
修改实例

%25E5%259B%25BE%25E5%2583%258F_1547576647%25E5%259B%25BE%25E5%2583%258F_1547567338
加挂30GB硬盘
%25E5%259B%25BE%25E5%2583%258F_1547567381
新增10GB硬盘
%25E5%259B%25BE%25E5%2583%258F_1547575703%25E5%259B%25BE%25E5%2583%258F_1547575763

6. 为了在图形界面下操作,安装Xfce、VNC、gparted

apt-get install xfce4
apt-get install tightvncserver
apt-get install gparted

* 如果在命令行操作,只需要装parted
* vnc的细节操作略,可参考 https://www.twtw.tk/2019/01/gcp-vps-xfce-vnc.html
7. 将30GB硬盘resize到10GB
在vnc窗口中终端运行gparted

%25E5%259B%25BE%25E5%2583%258F_1547562825
其实各种分区工具的界面大同小异。

切换到30GB硬盘。

%25E5%259B%25BE%25E5%2583%258F_1547562895%25E5%259B%25BE%25E5%2583%258F_1547562923
右键,”resize”
%25E5%259B%25BE%25E5%2583%258F_1547570626
调整大小为10238MB(注意空间的前面还有2MB,无法改成0,所以空间大小就成了10238MB。这也是为什么不推荐使用命令行的原因,注意不到这些细节。)
%25E5%259B%25BE%25E5%2583%258F_1547570799
确定之后,再Apply
%25E5%259B%25BE%25E5%2583%258F_1547570850
8. 把调整后的10GB数据DD到新的10GB硬盘上

dd in=/dev/sdb of=/dev/sdc sb=200M

sdb sdc可以在gparted中确认。

红色部分根据实际可用内存大小设置,可以优化拷贝速度。
9. 把新的10GB硬盘从现在这个实例上拆下来,再创建新实例。
完成。