分类目录归档:操作系统

Failed to open \EFI\redhat\grubx64.efi – Not Found 故障处理

由于某种原因导致linux的grubx64.efi文件丢失,系统重启报错(Failed to open \EFI\redhat\grubx64.efi – Not Found)
grubx64-not-found


grubx64.efi 是 64 位 UEFI 系统 下的 GRUB 引导程序核心文件,作用是启动操作系统.现在系统启动报该文件丢失,导致系统无法正常引导启动.对于这样的情况,比较简单的方法就是使用相同版本的操作系统iso文件进入救援模式,然后把grubx64.efi文件拷贝进去,具体操作步骤:
1.使用光盘启动,并进入Troubleshooting –> 并回车
troubleshooting

2. 选择:Rescue a Oracle Linux system 并回车
rescue

3. 选择1) Continue ,然后回车继续执行
QQ20251004-090450

4. 可以看到原系统分区被挂载在/mnt/sysimage下面的相关挂载点
QQ20251004-090550

5. 输入chroot /mnt/sysimage按照原系统方式进行挂载
QQ20251004-090617

6. 确认grubx64.efi文件丢失
QQ20251004-090645

7. 挂载系统盘到/media,并确认grubx64.efi文件在系统盘中存在
QQ20251004-090804

8. 拷贝系统盘中的grubx64.efi到/boot/efi/EFI/redhat/中
QQ20251004-091128

9. 退出救援模式,系统启动正常,完成grubx64.efi文件丢失修复故障

发表在 Linux | 标签为 , | 评论关闭

fio测试io,导致磁盘文件系统损坏故障恢复

运行在云平台上的达梦数据库,部署了DMDataWatch(类似oracle的dataguard),在重启主备库进行扩容内存之后,发现两个机器数据库所在磁盘的分区信息,lvm信息全部丢失,通过查看history文件,最终确认在24年9月份做了一次fio的性能测试,但是当时数据没有出问题,一直运行至今,现在重启两个机器系统之后,均重现同样问题,导致主备容灾,备份全备异常.
fio
通过对磁盘进行分析,发现客户说描述的分区信息(从磁盘2T,三个分区data,bak,arch,而且分区大小也一直10:6:4),但是没有发现lvm信息
scan-part


对发现的分区进行恢复,发现达梦数据库相关文件,备份文件,以及arch归档日志
dm-1
dm-2
dm-3
把恢复的数据传输到客户新划分磁盘的达梦数据库服务器上,然后达梦厂商使用备份还原,和原库启动均正常,运气不错,完成了本次的达梦数据故障恢复.
通过这次故障,有几点我们需要引以为戒:
1.千万不要在生产环境做类似磁盘写操作的io性能测试,比如fio,orion等
2.对于有主备架构的系统,尽量不要同时进行维护,在确认一个库正常之后,再操作另外一个库

发表在 操作系统 | 标签为 | 评论关闭

Linux 8 修改网卡名称

在某些情况下,我们希望通过修改网卡的名称,从而避免应用层面的一些配置(比如oracle rac 网络从千兆换成万兆,我们直接把万兆网卡的名称修改和之前使用的网卡名称一致,集群层面不用做任何配置),这里做一个测试,验证在linux 8(redhat/oracle linux/Rocky/AlmaLinux/centos等)修改网卡名称可行性:
查看当前主机网卡名称情况(有两个网卡ens160和ens192)

[root@xifenfeidg network-scripts]# cat /etc/redhat-release 
Red Hat Enterprise Linux release 8.9 (Ootpa)
[root@xifenfeidg network-scripts]# cat /etc/oracle-release 
Oracle Linux Server release 8.9
[root@xifenfeidg network-scripts]# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.118.141  netmask 255.255.255.0  broadcast 192.168.118.255
        inet6 fe80::20c:29ff:fe2d:1c85  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:2d:1c:85  txqueuelen 1000  (Ethernet)
        RX packets 265118  bytes 392933574 (374.7 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 24828  bytes 1374591 (1.3 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens192: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.222.18  netmask 255.255.255.0  broadcast 192.168.222.255
        inet6 fe80::20c:29ff:fe2d:1c8f  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:2d:1c:8f  txqueuelen 1000  (Ethernet)
        RX packets 165  bytes 18748 (18.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 127  bytes 21755 (21.2 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 6403  bytes 648853 (633.6 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6403  bytes 648853 (633.6 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 52:54:00:ab:b4:34  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@xifenfeidg ~]# nmcli d s
DEVICE  TYPE      STATE      CONNECTION 
ens160  ethernet  connected  ens160     
ens192  ethernet  connected  ens192     
virbr0  bridge    unmanaged  --         
lo      loopback  unmanaged  --   

[root@xifenfeidg ~]# cd /etc/sysconfig/network-scripts/
[root@xifenfeidg network-scripts]# ls
ifcfg-ens160  ifcfg-ens192

尝试把ens160修改为ens191,删除ens160设备

[root@xifenfeidg network-scripts]# nmcli connection delete ens160
Connection 'ens160' (ae9669d8-3db3-424e-8a0e-41d8b05197d0) successfully deleted.
[root@xifenfeidg network-scripts]# ifconfig
ens160: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        ether 00:0c:29:2d:1c:85  txqueuelen 1000  (Ethernet)
        RX packets 291009  bytes 431437623 (411.4 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 27085  bytes 1499570 (1.4 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ens192: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.222.18  netmask 255.255.255.0  broadcast 192.168.222.255
        inet6 fe80::20c:29ff:fe2d:1c8f  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:2d:1c:8f  txqueuelen 1000  (Ethernet)
        RX packets 193  bytes 21530 (21.0 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 156  bytes 27505 (26.8 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 6427  bytes 650593 (635.3 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 6427  bytes 650593 (635.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

virbr0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        ether 52:54:00:ab:b4:34  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[root@xifenfeidg network-scripts]# nmcli d s
DEVICE  TYPE      STATE         CONNECTION 
ens192  ethernet  connected     ens192     
ens160  ethernet  disconnected  --         
virbr0  bridge    unmanaged     --         
lo      loopback  unmanaged     --         

增加ens191设备(注意mac地址使用之前ens160)

[root@xifenfeidg network-scripts]# nmcli connection add type ethernet con-name ens191 ifname ens191  mac 00:0c:29:2d:1c:85
Connection 'ens191' (62a5fd83-8dc9-407d-83cc-1327d400fa0b) successfully added.
[root@xifenfeidg network-scripts]# 
[root@xifenfeidg network-scripts]# nmcli d s
DEVICE  TYPE      STATE         CONNECTION 
ens192  ethernet  connected     ens192     
ens160  ethernet  disconnected  --         
virbr0  bridge    unmanaged     --         
lo      loopback  unmanaged     --         

重启主机

[root@xifenfeidg network-scripts]# reboot

Activate the web console with: systemctl enable --now cockpit.socket

Last login: Tue Sep  3 14:12:20 2024 from 192.168.222.1

重启之后登录主机查看网络信息(确认网卡名称从ens160修改为ens191)

[root@xifenfeidg ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens191: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:0c:29:2d:1c:85 brd ff:ff:ff:ff:ff:ff
    altname enp3s0
    inet 192.168.118.141/24 brd 192.168.118.255 scope global dynamic noprefixroute ens191
       valid_lft 1788sec preferred_lft 1788sec
    inet6 fe80::30e4:c5bf:692a:2753/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
3: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:0c:29:2d:1c:8f brd ff:ff:ff:ff:ff:ff
    altname enp11s0
    inet 192.168.222.18/24 brd 192.168.222.255 scope global noprefixroute ens192
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe2d:1c8f/64 scope link 
       valid_lft forever preferred_lft forever
4: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 52:54:00:ab:b4:34 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
[root@xifenfeidg ~]# cd /etc/sysconfig/network-scripts/
[root@xifenfeidg network-scripts]# ls -ltr
total 8
-rw-r--r--. 1 root root 308 Jul 31 05:04 ifcfg-ens192
-rw-r--r--. 1 root root 300 Sep  3 14:16 ifcfg-ens191
[root@xifenfeidg network-scripts]# nmcli d s
DEVICE  TYPE      STATE                   CONNECTION 
ens191  ethernet  connected               ens191     
ens192  ethernet  connected               ens192     
virbr0  bridge    connected (externally)  virbr0     
lo      loopback  unmanaged               --       
发表在 Linux | 标签为 | 评论关闭