鲲鹏920的麒麟v10物理服务器断电后无法启动处理
source link: https://zhangguanzhang.github.io/2021/07/26/kylin-v10-boot-hang/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
珠海园区升压前置检查,上周六整个园区关电检查,然后今天来后连不上我们在 鲲鹏920的麒麟v10机器上开的虚拟机了,进 bmc 的 web 看了下是开机进入后卡住。
是当初安装系统的同事去处理这个事情的,他 bmc 的 web 上去重启在菜单那里按 e 编辑准备改 boot cmdline 进单用户,结果按 e 后要输入用户名和密码,询问了麒麟他们。很久也没给答复。然后就在那干等,上面的虚机有我的环境,我就过去看了下。
尝试的处理
麒麟那边的人员没有回复,我打算这边同步尝试下其他手段,而且不只一台无法开机,哪怕麒麟的回复了密码也能同步尝试不同手段。Linux 无法开机的就搞个 yum 系列的新系统镜像挂载到光驱,然后设置成光驱启动,然后开机后进入 iso 的安装界面,Troubleshooting –> Rescue a CentOS Linux system
。先进 bmc web 上用java的远程窗口(之前华三的 h5 挂载镜像失败了),挂载本地的 麒麟v10 镜像,然后 bmc web 上设置下次从光驱启动。然后重启服务器,进 Rescue
模式里后,界面是显示乱的。
这个时候问了下珠海那边有同事能去机房看下吗,同事说正在赶去。然后我赶紧去找了下 centos 7的arm64镜像,后面下载完了进 Rescue
模式里一直卡住。估计没适配国产的服务器。后面尝试了其他国产的系统镜像,没 Rescue
模式。机房现场也有人去了,麒麟v10 镜像Rescue
模式进去后,他那边现场看了下也是显示乱的。
后面麒麟回复了修改 boot 的时候用户名是 root
密码是 Kylin123123
,确实能进入编辑 boot 的界面了,但是加了相关选项后还是无法进入单用户,左上角只有一个光标然后一直卡住。询问安装系统的同事,分区是咋搞的,他说 lvm 和有个大盘。然后问他有没有其他正常能开机的机器,他说有一个,我 ssh 上去后看到下面类似的分区:
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 893.1G 0 disk
├─sda1 8:1 0 200M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 892G 0 part
├─klas-root 252:0 0 838G 0 lvm /
├─klas-swap 252:1 0 4G 0 lvm [SWAP]
└─klas-backup 252:2 0 50G 0 lvm
sdb 8:16 0 14.6T 0 disk
└─sdb1 8:17 0 2T 0 part /oskvm
正常机器的 lvm 信息如下:
$ vgs
VG #PV #LV #SN Attr VSize VFree
klas 1 3 0 wz--n- <891.94g 0
$ lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
backup klas -wi-a----- 50.00g
root klas -wi-ao---- <837.94g
swap klas -wi-ao---- 4.00g
推测了下,无法开机的机器是因为把 sdb 搞成 lvm 的原因,所以单用户肯定别想了。
Rescue 模式
目前的解决办法只有重装,这个时候快到中午了,其他同事催得急,重装代价太高了,安装慢,而且上面的虚拟机都没了,Rescue 模式后的乱码能解决就有办法了。看看正常机器上有没有显示的相关内核启动参数。
查找下 grub
的配置文件
$ cd /boot
$ find -type f -name 'grub*'
./efi/EFI/kylin/grubaa64.efi
./efi/EFI/kylin/grubenv
./efi/EFI/kylin/grub.cfg
看了下果然有
$ cat ./efi/EFI/kylin/grub.cfg
linux /vmlinuz-4.19.90-17.ky10.aarch64 root=/dev/mapper/klas-root ro crashkernel=auto rd.lvm.lv=klas/root rd.lvm.lv=klas/swap smmu.bypassdev=0x1000:0x17 smmu.bypassdev=0x1000:0x15 crashkernel=1024M,high video=efifb:off video=VGA-1:640x480-32@60me
然后在 麒麟v10 的 iso 进入了 Troubleshooting –> Rescue
选中 Rescue
先别回车,直接按 e 编辑,linux
那行后面加了上面的 video=efifb:off video=VGA-1:640x480-32@60me
,然后 ctrl + x
启动,显示正常了。和 Centos 的 Rescue
有点不一样,进去后类似进入 emergency 模式里,然后回车继续,进入到了一个 bash。
$ vgchange -a y
$ lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
18 18 -wi-ao---- 14.55t
backup klas -wi-a----- 50.00g
root klas -wi-ao---- <837.94g
swap klas -wi-ao---- 4.00g
$ mkdir /mnt/sysimage
然后挂载 root 分区
$ mount /dev/mapper/klas-root /mnt/sysimage
$ chroot /mnt/sysimage
其实也没必要 chroot 进去,无非就是 vi 多了个前面的路径。取消最后一行的挂载,然后 reboot 后重启就好了。
# 没chroot进去就是编辑 vi /mnt/sysimage/etc/fstab
$ vi /etc/fstab
...
#/dev/mapper/18-18 /oskvm xfs default 0 0
可能是分区太大了,lvm 在国产系统开机上有问题。另外也不推荐物理机使用 lvm,能不查资料笔记熟悉 lvm 的命令的人实际上目前不多,会修复的人更少了。lvm 扩容一时爽,恢复火葬场。
$ pvs
PV VG Fmt Attr PSize PFree
/dev/sda3 klas lvm2 a-- <891.94g 0
/dev/sdb 18 lvm2 a-- 14.55t <1.16g
l$ vgs
VG #PV #LV #SN Attr VSize VFree
18 1 1 0 wz--n- 14.55t <1.16g
klas 1 3 0 wz--n- <891.94g 0
$ lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
18 18 -wi-ao---- 14.55t
backup klas -wi-a----- 50.00g
root klas -wi-ao---- <837.94g
swap klas -wi-ao---- 4.00g
Recommend
-
47
一、服务器数据恢复故障描述机房突然断电导致整个存储瘫痪,加电后存储依然无法使用。经过用户方工程师诊断后认为是断电导致存储阵列损坏。整个存储是由12块日立硬盘(3TSAS硬盘)组成的RAID-6磁盘阵列,被分成一个卷,分配给几台Vmware的ESXI主机做共享存储。整个...
-
8
【服务器数据恢复】意外断电导致FreeNAS中UFS2文件系统故障的数据恢复案例 原创 宋国建...
-
5
【服务器数据恢复】机房意外断电导致服务器数据丢失这类案例的数据恢复专题探讨 原创 宋国建...
-
3
【服务器数据恢复】服务器断电一段时间重启后RAID5无法识别的数据恢复案例 原创 宋国建...
-
7
【服务器数据恢复】断电导致存储raid6阵列瘫痪的数据恢复案例 原创 宋国建 20...
-
7
【数据库数据恢复】断电导致Oracle数据库启动报错,数据丢失的数据恢复案例 精选 原创 宋国建...
-
7
mongodb3.4.18断电后导致WiredTiger.wt文件损坏导致无法启动 精选 原创 雍州无名 ...
-
4
ORACLE 断电启动报 ORA-00600Oct 11, 2022Oracle5点击由于服务器断电,...
-
2
V2EX › 问与答 windows 主机有没有办法在断电后自动启动?
-
2
鲲鹏应用创新大赛2023正式启动 总奖金池1000万! 【广东•东莞,2023年5月6日】今日,鲲鹏应用创新大赛2023全国赛于鲲鹏开发者峰会2023活动现场正式宣布启动,来自主办...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK