第一种方法:
注意:你的公网 IP如果是自动分配的,不能停机,一但停机 IP就会变,这种方法就不太合适
1.首先创建一个新的密钥对,建立后将自动下载至您的本地
2.chmod 400 myKey.pem 修改密钥对权限
3.执行命令 `ssh-keygen -y -f myKey.pem`,您将会获得一串 "公钥",这是要配置在后续 user data 中的
使用 ec2添加刚才生成的公钥
找到那台丢失公钥的服务器----》操作----》实例设置----》编辑用户数据
``` 复制下面内容,请将 "ssh-rsa AAAAB3NzaC1yc2....A/YnybJNqJ" 取代成您的公钥
Content-Type: multipart/mixed; boundary="//"
MIME-Version: 1.0
--//
Content-Type: text/cloud-config; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename="cloud-config.txt"
#cloud-config
cloud_final_modules:
- [users-groups, always]
users:
- name: ec2-user
ssh-authorized-keys:
- ssh-rsa AAAAB3NzaC1yc2....A/YnybJNqJ
```复制上面内容,请将 "ssh-rsa AAAAB3NzaC1yc2....A/YnybJNqJ" 取代成您的公钥
粘贴完成后重新启动服务器
第二种方法:
点击实例---操作----映像和模板---创建映像---从 AMI启动实例(忘记是否需要取消注册 AMI了),这样更换了系统,但是硬盘还是你那个硬盘
第三中方法:
将密钥对出现问题的服务器的硬盘在Elastic Block Store----->卷---》选中对应服务器的硬盘(记得卷 ID)---->操作---分离卷-----》新建一个系统,将分离的卷挂载到新的服务器上,然后查看对应请看