谷歌云国际账号 GCP谷歌云系统重装步骤
听说你在GCP上把系统搞崩了?别慌,不是世界末日——只是你和一台崭新干净的Linux之间,差了七步半操作。
先说句大实话:GCP没有“一键重装系统”按钮。它不像某些国产云平台,点一下就弹出“选择CentOS 7/Ubuntu 22.04/Windows Server 2019”的下拉菜单,然后“确定”,喝口咖啡回来就发现root密码已发到邮箱。GCP走的是“工程师哲学”路线:不给你捷径,但给你全套扳手、螺丝刀和电路图——只要你愿意动手,重装比修自行车还稳。
所以今天这篇,不画大饼,不甩术语,只干一件事:把重装这件事,拆成你边看边敲就能跑通的步骤。我们覆盖三种主流需求:① 控制台图形化重装(适合怕命令行的新手);② gcloud命令行重装(适合爱终端的极客);③ 基于快照的“无损重装”(适合生产环境求稳的老司机)。顺便,还会告诉你三个血泪教训:为什么重装后连不上SSH?为什么新系统里找不到旧数据盘?为什么重启后直接黑屏?——答案全在后头。
一、重装前,请先做三件事(否则你会回来骂我)
第一,备份快照——不是可选,是刚需。
打开GCP控制台 → 计算引擎 → 磁盘 → 找到你的启动盘(通常叫instance-name-boot)→ 点击右侧“创建快照”。名字建议带日期+用途,比如backup-before-reinstall-20240520。快照创建是异步的,几分钟就好,且不收费(存储才收费,且首月30GB免费)。这玩意儿就是你的后悔药——重装翻车?删掉新实例,从快照再起一台,秒回事发前状态。
第二,确认SSH密钥是否托管在元数据里。
很多人重装完死活登不上,不是密码错了,而是GCP根本没把你的公钥塞进新系统的/home/username/.ssh/authorized_keys。去控制台 → 计算引擎 → 元数据 → SSH密钥 → 检查是否已添加你的公钥(格式:ssh-rsa AAA... user@host)。如果没加,现在就贴进去——这是新实例启动时自动注入密钥的唯一通道。
第三,分清“启动盘”和“数据盘”。
如果你挂了额外磁盘(比如disk-data-01),重装时千万别删它!重装只影响启动盘,数据盘就像U盘插着不动。但注意:新系统启动后,它不会自动挂载!得手动sudo mkfs.ext4 /dev/sdb(首次)→ sudo mkdir /data → sudo mount /dev/sdb /data → 最后写进/etc/fstab。忘了这步?恭喜,你的1TB数据库静静躺在/dev/sdb里,而你正对着空空如也的/home抓狂。
谷歌云国际账号 二、方法一:控制台图形化重装(最傻瓜,但最可控)
适用场景:不想开终端,鼠标党,或临时救急。
- 进入控制台 → 计算引擎 → 虚拟机实例 → 找到目标实例 → 点击实例名进入详情页
- 点击右上角“停止”(⚠️注意:不是重启!必须停机状态才能换启动盘)
- 停稳后,点页面顶部的“编辑”按钮
- 滚动到“启动磁盘”区域 → 点击右侧铅笔图标 → 弹出窗口里点“更改”
- 在“公共映像”页签,选你想要的系统(Ubuntu 24.04 LTS / CentOS Stream 9 / Debian 12……别选“老旧版”,GCP对老内核支持越来越佛系)
- 确认大小(默认10GB够用,但若装Docker+镜像,建议30GB起步)→ 点“选择”
- 回到编辑页,务必勾选“删除原始启动磁盘”(否则旧盘会残留计费!)→ 拉到最底点“保存”
- 保存成功后,点实例页的“启动”按钮
✅ 成功标志:实例状态变“正在运行”,串行端口日志里出现Started User Manager for UID 1001之类字样。等2分钟,拿你元数据里的SSH密钥试试登录——成了!
三、方法二:gcloud命令行重装(帅,且能批量)
前提:本地装好gcloud CLI,并已gcloud auth login和gcloud config set project YOUR-PROJECT-ID。
一行命令搞定(复制粘贴前,替换方括号内容):
gcloud compute instances delete [INSTANCE_NAME] \
--zone=[ZONE] \
--keep-disks=boot \
--quiet && \
gcloud compute instances create [INSTANCE_NAME] \
--zone=[ZONE] \
--machine-type=e2-medium \
--image-project=ubuntu-os-cloud \
--image-family=ubuntu-2404-lts \
--boot-disk-size=30GB \
--boot-disk-type=pd-balanced \
--tags=http-server,https-server \
--metadata-from-file startup-script=startup.sh
说明:
• --keep-disks=boot 保留原启动盘(作为备份,不删)
• --image-family=ubuntu-2404-lts 是自动选最新补丁版,比硬写--image=ubuntu-2404-lts-v20240501更省心
• --metadata-from-file 可传入初始化脚本,比如自动装Docker、配防火墙,这才是命令行的灵魂!
四、方法三:快照重生术(生产环境黄金法则)
步骤:用旧启动盘快照 → 创建新磁盘 → 绑定新实例。全程不碰原实例,零风险。
- 控制台 → 磁盘 → 找到你之前打的快照 → 点“创建磁盘”
- 磁盘名称填
reinstall-boot-20240520,类型选pd-balanced(性价比之选),大小保持和原盘一致 - 创建完成后,点“创建实例” → 在“启动磁盘”处选“现有磁盘” → 找到刚建的磁盘
- 其他配置照旧(同区、同机型、同网络),启动!
💡 进阶技巧:想保留原实例IP?在创建新实例时,“管理、安全、磁盘、网络”页签下 → “网络” → “外部IP” → 选“已有静态外部IP”。这样新旧实例无缝切换,前端用户毫无感知。
五、重装后必做的五件事
- 更新系统:
sudo apt update && sudo apt upgrade -y(Ubuntu/Debian)或sudo dnf upgrade -y(CentOS/RHEL) - 检查时区:
timedatectl status,不对就sudo timedatectl set-timezone Asia/Shanghai - 开放端口:GCP防火墙独立于系统iptables!去“VPC网络 → 防火墙”确认HTTP/HTTPS/自定义端口规则已放行
- 验证数据盘:
lsblk看磁盘是否存在 →sudo file -s /dev/sdb确认文件系统 →sudo mount /dev/sdb /mnt/data - 禁用root密码登录:
sudo passwd -l root,安全底线不能破
最后送一句GCP生存箴言:不要重装,要重建;不要修复,要替换。云的本质,是把服务器当乐高积木——坏了?拆掉,换一块新的。快照是你的存档,自动化脚本是你的装配线,而重装,不过是按下回车键的0.3秒。
现在,关掉这篇文章,打开控制台,去当一次云上铁匠吧——锤子在手,万物可锻。


