Update to 8.2 broke the entire system

I am trying to send you a showcase :)

Give me some time - I can't promise if this is helping...

You need to adopt parts of it.

Code:
[root@sysrescue ~]# cat /proc/partitions
major minor  #blocks  name

   8        0  209715200 sda
   8        1  209584111 sda1
   8       14       3072 sda14
   8       15     126976 sda15
  11        0     873472 sr0
  11        1       4096 sr1
   7        0     785932 loop0

[root@sysrescue ~]# mkdir -p /media/RESCUE

[root@sysrescue ~]# mount /dev/sda1 /media/RESCUE

# you might need to do "something something" here
# my testmox system only has one sda1 - I don't need this :)
#### [root@sysrescue ~]# mount /dev/sda1 /media/RESCUE/boot


[root@sysrescue ~]# mount -t proc proc /media/RESCUE/proc
[root@sysrescue ~]# mount -t sysfs sys /media/RESCUE/sys
[root@sysrescue ~]# mount -o bind /dev /media/RESCUE/dev
[root@sysrescue ~]# mount -o bind /run /media/RESCUE/run

# jump in chroot
[root@sysrescue ~]# chroot /media/RESCUE


# validate that we have somethinghere

# we need /boot stuff
root@sysrescue:/# ls /boot
config-6.5.13-5-pve  grub                     pve                      vmlinuz-6.5.13-5-pve
config-6.8.4-2-pve   initrd.img-6.5.13-5-pve  System.map-6.5.13-5-pve  vmlinuz-6.8.4-2-pve
efi                  initrd.img-6.8.4-2-pve   System.map-6.8.4-2-pve

# we need stuff in /etc that is plausible
root@sysrescue:/# cat /etc/hostname
testmox.something.lan

# something in /bin must also be present
root@sysrescue:/# ls /bin | wc -l
1681

root@sysrescue:/# proxmox-boot-tool kernel list
Manually selected kernels:
None.

Automatically selected kernels:
6.5.13-5-pve
6.8.4-2-pve

# pinning 6.5
root@sysrescue:/# proxmox-boot-tool kernel pin 6.5.13-5-pve
Setting '6.5.13-5-pve' as grub default entry and running update-grub.
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.8.4-2-pve
Found initrd image: /boot/initrd.img-6.8.4-2-pve
Found linux image: /boot/vmlinuz-6.5.13-5-pve
Found initrd image: /boot/initrd.img-6.5.13-5-pve
done

root@sysrescue:/# exit


[root@sysrescue ~]# reboot
 
  • Like
Reactions: Spaldo
if you have the chance, send me both files /default/grub and grub.cfg, i cant find any default for pve 8.x unfortunately, then i have to figure out a way to push them

It makes no sense to sed them... I send you the "don't edit this file, it will be generated"...

Never try to outsmart that smart thing if you are not 10001% sure to be smarter then the 1000 smart people that created this
 
You need to adopt parts of it.

Code:
[root@sysrescue ~]# cat /proc/partitions
major minor  #blocks  name

   8        0  209715200 sda
   8        1  209584111 sda1
   8       14       3072 sda14
   8       15     126976 sda15
  11        0     873472 sr0
  11        1       4096 sr1
   7        0     785932 loop0

[root@sysrescue ~]# mkdir -p /media/RESCUE

[root@sysrescue ~]# mount /dev/sda1 /media/RESCUE

# you might need to do "something something" here
# my testmox system only has one sda1 - I don't need this :)
#### [root@sysrescue ~]# mount /dev/sda1 /media/RESCUE/boot


[root@sysrescue ~]# mount -t proc proc /media/RESCUE/proc
[root@sysrescue ~]# mount -t sysfs sys /media/RESCUE/sys
[root@sysrescue ~]# mount -o bind /dev /media/RESCUE/dev
[root@sysrescue ~]# mount -o bind /run /media/RESCUE/run

# jump in chroot
[root@sysrescue ~]# chroot /media/RESCUE


# validate that we have somethinghere

# we need /boot stuff
root@sysrescue:/# ls /boot
config-6.5.13-5-pve  grub                     pve                      vmlinuz-6.5.13-5-pve
config-6.8.4-2-pve   initrd.img-6.5.13-5-pve  System.map-6.5.13-5-pve  vmlinuz-6.8.4-2-pve
efi                  initrd.img-6.8.4-2-pve   System.map-6.8.4-2-pve

# we need stuff in /etc that is plausible
root@sysrescue:/# cat /etc/hostname
testmox.something.lan

# something in /bin must also be present
root@sysrescue:/# ls /bin | wc -l
1681

root@sysrescue:/# proxmox-boot-tool kernel list
Manually selected kernels:
None.

Automatically selected kernels:
6.5.13-5-pve
6.8.4-2-pve

# pinning 6.5
root@sysrescue:/# proxmox-boot-tool kernel pin 6.5.13-5-pve
Setting '6.5.13-5-pve' as grub default entry and running update-grub.
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.8.4-2-pve
Found initrd image: /boot/initrd.img-6.8.4-2-pve
Found linux image: /boot/vmlinuz-6.5.13-5-pve
Found initrd image: /boot/initrd.img-6.5.13-5-pve
done

root@sysrescue:/# exit


[root@sysrescue ~]# reboot
I have run through these commands, at pinning 6.5 i get "cant read /boot/grub/grub.cfg, No such file or directory", just for info, yes the boot is mounted.
 
I have run through these commands, at pinning 6.5 i get "cant read /boot/grub/grub.cfg, No such file or directory", just for info, yes the boot is mounted.

1) did you get "kernels" when doing a ls -la /boot?

2) did you get your hostname with the cat /etc/hostname?

if not

- you need to adjust the sda1 to your needs
. you might need to mount the root disk (it could be sdb14 or nvme0something194) I can't guess this.


^^^ you can retry (after unmounting - or if you don't know what I am talking about here - just reboot the rescue system again)
 
I have run through these commands, at pinning 6.5 i get "cant read /boot/grub/grub.cfg, No such file or directory", just for info, yes the boot is mounted.


You get this?

Code:
root@testmox:~# ls /boot/grub/grub.cfg
ls: cannot access '/boot/grub/grub.cfg': No such file or directory

root@testmox:~# proxmox-boot-tool kernel list
Manually selected kernels:
None.

Automatically selected kernels:
6.5.13-5-pve
6.8.4-2-pve

root@testmox:~# proxmox-boot-tool kernel pin 6.5.13-5-pve
Setting '6.5.13-5-pve' as grub default entry and running update-grub.
sed: can't read /boot/grub/grub.cfg: No such file or directory
 
You get this?

Code:
root@testmox:~# ls /boot/grub/grub.cfg
ls: cannot access '/boot/grub/grub.cfg': No such file or directory

root@testmox:~# proxmox-boot-tool kernel list
Manually selected kernels:
None.

Automatically selected kernels:
6.5.13-5-pve
6.8.4-2-pve

root@testmox:~# proxmox-boot-tool kernel pin 6.5.13-5-pve
Setting '6.5.13-5-pve' as grub default entry and running update-grub.
sed: can't read /boot/grub/grub.cfg: No such file or directory
yes, i get exactly this
 
  • Like
Reactions: Der Harry
This would be the fix ...

Code:
root@testmox:~# proxmox-boot-tool kernel pin 6.5.13-5-pve
Setting '6.5.13-5-pve' as grub default entry and running update-grub.
sed: can't read /boot/grub/grub.cfg: No such file or directory


root@testmox:~# grub-mkconfig > /boot/grub/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.8.4-2-pve
Found initrd image: /boot/initrd.img-6.8.4-2-pve
Found linux image: /boot/vmlinuz-6.5.13-5-pve
Found initrd image: /boot/initrd.img-6.5.13-5-pve
done


root@testmox:~# proxmox-boot-tool kernel pin 6.5.13-5-pve
Setting '6.5.13-5-pve' as grub default entry and running update-grub.
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.8.4-2-pve
Found initrd image: /boot/initrd.img-6.8.4-2-pve
Found linux image: /boot/vmlinuz-6.5.13-5-pve
Found initrd image: /boot/initrd.img-6.5.13-5-pve
done
 
This would be the fix ...

Code:
root@testmox:~# proxmox-boot-tool kernel pin 6.5.13-5-pve
Setting '6.5.13-5-pve' as grub default entry and running update-grub.
sed: can't read /boot/grub/grub.cfg: No such file or directory


root@testmox:~# grub-mkconfig > /boot/grub/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.8.4-2-pve
Found initrd image: /boot/initrd.img-6.8.4-2-pve
Found linux image: /boot/vmlinuz-6.5.13-5-pve
Found initrd image: /boot/initrd.img-6.5.13-5-pve
done


root@testmox:~# proxmox-boot-tool kernel pin 6.5.13-5-pve
Setting '6.5.13-5-pve' as grub default entry and running update-grub.
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-6.8.4-2-pve
Found initrd image: /boot/initrd.img-6.8.4-2-pve
Found linux image: /boot/vmlinuz-6.5.13-5-pve
Found initrd image: /boot/initrd.img-6.5.13-5-pve
done
"grub-mkconfig" command not found...
 
"grub-mkconfig" command not found...

1) did you get "kernels" when doing a ls -la /boot?

2) did you get your hostname with the cat /etc/hostname?

[Y/n]?

3) probably it's not in $PATH

Code:
root@testmox:~# ls /usr/sbin/grub-mkconfig
/usr/sbin/grub-mkconfig

Then try using /usr/sbin/grub-mkconfig > /boot/grub/grub.cfg
 
1) did you get "kernels" when doing a ls -la /boot?

2) did you get your hostname with the cat /etc/hostname?

[Y/n]?

3) probably it's not in $PATH

Code:
root@testmox:~# ls /usr/sbin/grub-mkconfig
/usr/sbin/grub-mkconfig

Then try using /usr/sbin/grub-mkconfig > /boot/grub/grub.cfg
 

Attachments

  • IMG_20240510_182416.jpg
    IMG_20240510_182416.jpg
    859.2 KB · Views: 4
I asked 2 question 2 times :)

You answered the question that you already answered.
I told you already cat /etc/hostname prints my server hostname so i am in the chroot of it. also, /usr/sbin, same issue. The picture is what you asked, ls -la /boot and i dont see "kernels" but their configs (i suppose)
 
I told you already cat /etc/hostname prints my server hostname so i am in the chroot of it. also, /usr/sbin, same issue. The picture is what you asked, ls -la /boot and i dont see "kernels" but their configs (i suppose)


so in the chrooted ... where you have the /boot, the /etc/hostname of the server - in the chrooted -

you get what when you run

/usr/sbin/grub-mkconfig > /boot/grub/grub.cfg
 
so in the chrooted ... where you have the /boot, the /etc/hostname of the server - in the chrooted -

you get what when you run

/usr/sbin/grub-mkconfig > /boot/grub/grub.cfg
yes, grub-mkconfig doesnt exists, thats what i get, as chrooted
 
yes, grub-mkconfig doesnt exists, thats what i get, as chrooted

Ok that's sad.

Code:
root@testmox:~# dpkg -S grub-mkconfig
grub-common: /usr/share/man/man8/grub-mkconfig.8.gz
grub-common: /usr/share/bash-completion/completions/grub-mkconfig
grub-common: /usr/lib/grub/grub-mkconfig_lib
grub-common: /usr/sbin/grub-mkconfig
grub-common: /usr/share/grub/grub-mkconfig_lib
 
Ok that's sad.

Code:
root@testmox:~# dpkg -S grub-mkconfig
grub-common: /usr/share/man/man8/grub-mkconfig.8.gz
grub-common: /usr/share/bash-completion/completions/grub-mkconfig
grub-common: /usr/lib/grub/grub-mkconfig_lib
grub-common: /usr/sbin/grub-mkconfig
grub-common: /usr/share/grub/grub-mkconfig_lib
"no path found matching pattern *grub-mkconfig*"
 
Debian 12:

Code:
root@debian:~# dpkg -S grub-mkconfig
grub-common: /usr/share/man/man8/grub-mkconfig.8.gz
grub-common: /usr/share/bash-completion/completions/grub-mkconfig
grub-common: /usr/lib/grub/grub-mkconfig_lib
grub-common: /usr/sbin/grub-mkconfig
grub-common: /usr/share/grub/grub-mkconfig_lib

The difference is here - but still the same package:

Code:
root@debian:~# dpkg -l | grep grub-common
ii  grub-common                              2.06-13+deb12u1                     amd64        GRand Unified Bootloader (common files)

## Proxmox use their "better" version

root@testmox:~# dpkg -l | grep grub-common
ii  grub-common                          2.06-13+pmx2                        amd64        GRand Unified Bootloader (common files)
 
"no path found matching pattern *grub-mkconfig*"

Well :)

You have some package thingys... super carefull here...

I show you the grub-ish things my test proxmox has installed.

-> At this point I don't care if you are killing your computer - without a backup. Just to make this clear.

Code:
root@testmox:~# apt list --installed | grep grub

grub-cloud-amd64/stable,now 0.0.5 amd64 [installed]
grub-common/stable,now 2.06-13+pmx2 amd64 [installed,automatic]
grub-efi-amd64-bin/stable,now 2.06-13+pmx2 amd64 [installed,automatic]
grub-efi-amd64-signed/stable,now 1+2.06+13+pmx2 amd64 [installed,automatic]
grub-pc-bin/stable,now 2.06-13+pmx2 amd64 [installed,automatic]
grub-pc/stable,now 2.06-13+pmx2 amd64 [installed,automatic]
grub2-common/stable,now 2.06-13+pmx2 amd64 [installed,automatic]
 
Debian 12:

Code:
root@debian:~# dpkg -S grub-mkconfig
grub-common: /usr/share/man/man8/grub-mkconfig.8.gz
grub-common: /usr/share/bash-completion/completions/grub-mkconfig
grub-common: /usr/lib/grub/grub-mkconfig_lib
grub-common: /usr/sbin/grub-mkconfig
grub-common: /usr/share/grub/grub-mkconfig_lib

The difference is here - but still the same package:

Code:
root@debian:~# dpkg -l | grep grub-common
ii  grub-common                              2.06-13+deb12u1                     amd64        GRand Unified Bootloader (common files)

## Proxmox use their "better" version

root@testmox:~# dpkg -l | grep grub-common
ii  grub-common                          2.06-13+pmx2                        amd64        GRand Unified Bootloader (common files)
dpkg -l | grep grub-common doesnt return me anything, im getting very confused
 
You might >> not << have

grub-cloud-amd64/stable,now 0.0.5 amd64 [installed]

And you never need it!
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!