甲骨文使用cloudshell救砖
场景
一个号的甲骨文所有机器都被停了,但是这个号我是卡了bug的,硬盘没有删,只能挂载硬盘开机。但是没有引导了,用其他机器挂载dd一个引导不显示,因为机器全死了,因此使用cloudshell(因为cloudshell带了5g的空间) 下载efi来解决这个问题
部署一台tftp服务器
我用的是debian,按照下面操作就行
apt install tftpd-hpa
apt install tftp
默认的配置文件是在 /etc/default/tftpd-hpa
cat /etc/default/tftpd-hpa
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/srv/tftp"
TFTP_ADDRESS=":69"
TFTP_OPTIONS="--secure"
可以看到默认的tftp的文件夹在 /srv/tftp
我自己是懒得改的,只要记住下载的文件到放到这个文件夹里。
然后 systemctl restart tftpd-hpa 重启一下tftp就搭建好了。
下载引导到tftp服务器
我没有改配置文件,默认是在 /srv/tftp 文件夹下。
去netbootxyz 的github下载对应的引导:
- arm的下载netboot.xyz-arm64.efi
- amd的下载netboot.xyz.efi
甲骨文上的操作
首先进入要修复的主机,点击控制台连接,启动cloudshell
然后慢慢等,等连接上了,点击重新引导,差不多是下面的这个状态
然后在cloudshell处按 esc进入bios。
差不多是这个状态:
首先选择 Boot Manager
然后选择efi internal shell
在下图这个界面,依次输入命令:
FS0:
进入到目录
ifconfig -s eth0 dhcp
设置网口,自动获取网络
这个时候可以ping ip来看看网络是不是通的,记得是ip,不能是域名。
tftp 1.1.1.1 xyz.efi
1.1.1.1 是你tftp服务器的ip
xyz.efi 是服务器上的efi文件
这个命令就是去下载efi文件
下载完成后,重新引导实例,重新进入到bios
这个时候选择Boot Maintenance Manager
选择boot from file
然后选择volume,回车
这个时候可以看到下载的efi文件了,使用个文件安装系统就行
就正常安装系统就好了