Issues with os-prober/snapper/update; Issues with silent boot parameter

Hello, I've run into a few problems in recent updates, none of them are system-breaking but I worry that the Snapper one may become a problem in the future.

Since some updates in the last week or so I've run into 1 concerning issue and 1 annoying issue. The annoying issue is that my Grub is verbose unless I uncomment the splash, on just this 1 machine. All other machines I use Garuda on (2 laptops) have no issues with quiet with #splash. I've posted the kernel paramaters here, if anyone can see why I get a verbose startup I'd love to know. I think I added the loglevel=3 :

quiet quiet rd.udev.log_priority=3 vt.global_cursor_default=0 nvidia-drm.modeset=1 loglevel=3 # Modified by garuda-migrations: splash

The more concerning issue is with Garuda Update. It's not running the os-prober at the end anymore, which I believe isn't adding the Snapper Snapshots to Grub so that they are bootable. But I don't know if the problem is with Grub, with a Hook, or with the Update script. If I can't pinpoint what is causing the problem, I don't know how to start troubleshooting it. If it's a Grub issue, is it somehow related to why silent is being ignored? Let me know what I can add, please and thanks!

System:
  Kernel: 6.4.3-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 13.1.1
    parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen root=UUID=c44d8c49-a931-4efd-b6a6-a1f296c8e7fb
    rw rootflags=subvol=@ quiet quiet rd.udev.log_priority=3 vt.global_cursor_default=0
    nvidia-drm.modeset=1 loglevel=3 quiet
  Desktop: KDE Plasma v: 5.27.6 tk: Qt v: 5.15.10 wm: kwin_x11 vt: 2 dm: SDDM
    Distro: Garuda Linux base: Arch Linux
Machine:
  Type: Desktop Mobo: ASRock model: Z490 Phantom Gaming 4/ac serial: <superuser required>
    UEFI: American Megatrends v: L1.23 date: 12/04/2020
CPU:
  Info: model: Intel Core i7-10700K bits: 64 type: MT MCP arch: Comet Lake gen: core 10 level: v3
    note: check built: 2020 process: Intel 14nm family: 6 model-id: 0xA5 (165) stepping: 5
    microcode: 0xF6
  Topology: cpus: 1x cores: 8 tpc: 2 threads: 16 smt: enabled cache: L1: 512 KiB
    desc: d-8x32 KiB; i-8x32 KiB L2: 2 MiB desc: 8x256 KiB L3: 16 MiB desc: 1x16 MiB
  Speed (MHz): avg: 4749 high: 5100 min/max: 800/5100 scaling: driver: intel_cpufreq
    governor: performance cores: 1: 4700 2: 4699 3: 4700 4: 4704 5: 4700 6: 4700 7: 5100 8: 4699
    9: 4700 10: 5100 11: 4701 12: 4696 13: 4699 14: 4700 15: 4700 16: 4699 bogomips: 121596
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities: <filter>
Graphics:
  Device-1: NVIDIA GA102 [GeForce RTX 3080] vendor: Gigabyte driver: nvidia v: 535.54.03
    alternate: nouveau,nvidia_drm non-free: 535.xx+ status: current (as of 2023-07) arch: Ampere
    code: GAxxx process: TSMC n7 (7nm) built: 2020-22 pcie: gen: 3 speed: 8 GT/s lanes: 16
    link-max: gen: 4 speed: 16 GT/s ports: active: none off: DP-3,HDMI-A-1
    empty: DP-1,DP-2,HDMI-A-2 bus-ID: 01:00.0 chip-ID: 10de:2206 class-ID: 0300
  Device-2: HTC (High Tech ) Vive driver: snd-usb-audio,uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-12.1.2:15 chip-ID: 0bb4:2c87 class-ID: 0102
  Device-3: Logitech HD Pro Webcam C920 driver: snd-usb-audio,uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 3-1.3.1:7 chip-ID: 046d:082d class-ID: 0102
    serial: <filter>
  Display: x11 server: X.Org v: 21.1.8 with: Xwayland v: 23.1.2 compositor: kwin_x11 driver: X:
    loaded: nvidia gpu: nvidia,nvidia-nvswitch display-ID: :0 screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 60 s-size: 812x457mm (31.97x17.99") s-diag: 932mm (36.68")
  Monitor-1: DP-3 mapped: DP-4 note: disabled pos: primary model: AOC 1601W serial: <filter>
    built: 2019 res: 1920x1080 hz: 60 dpi: 142 gamma: 1.2 size: 344x194mm (13.54x7.64")
    diag: 395mm (15.5") ratio: 16:9 modes: max: 1920x1080 min: 640x480
  Monitor-2: HDMI-A-1 mapped: HDMI-0 note: disabled model: LG (GoldStar) TV SSCR2
    serial: <filter> built: 2022 res: 1920x1080 dpi: 61 gamma: 1.2 size: 1600x900mm (62.99x35.43")
    diag: 1836mm (72.3") ratio: 16:9 modes: max: 3840x2160 min: 640x480
  API: OpenGL v: 4.6.0 NVIDIA 535.54.03 renderer: NVIDIA GeForce RTX 3080/PCIe/SSE2
    direct-render: Yes
Audio:
  Device-1: Intel Comet Lake PCH cAVS vendor: ASRock driver: snd_hda_intel v: kernel
    alternate: snd_soc_skl,snd_sof_pci_intel_cnl bus-ID: 00:1f.3 chip-ID: 8086:06c8 class-ID: 0403
  Device-2: NVIDIA GA102 High Definition Audio vendor: Gigabyte driver: snd_hda_intel v: kernel
    pcie: gen: 3 speed: 8 GT/s lanes: 16 link-max: gen: 4 speed: 16 GT/s bus-ID: 01:00.1
    chip-ID: 10de:1aef class-ID: 0403
  Device-3: Logitech G560 Gaming Speaker driver: hid-generic,snd-usb-audio,usbhid type: USB
    rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-10.1:8 chip-ID: 046d:0a78 class-ID: 0300
    serial: <filter>
  Device-4: HTC (High Tech ) Vive driver: snd-usb-audio,uvcvideo type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-12.1.2:15 chip-ID: 0bb4:2c87 class-ID: 0102
  Device-5: HTC (High Tech ) Vive driver: hid-generic,usbhid type: USB rev: 2.0 speed: 12 Mb/s
    lanes: 1 mode: 1.1 bus-ID: 1-12.1.5:16 chip-ID: 0bb4:2c87 class-ID: 0300 serial: <filter>
  Device-6: Logitech HD Pro Webcam C920 driver: snd-usb-audio,uvcvide
o type: USB rev: 2.0
    speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 3-1.3.1:7 chip-ID: 046d:082d class-ID: 0102
    serial: <filter>
  Device-7: Texas Instruments PCM2912A Audio Codec driver: snd-usb-audio type: USB rev: 2.0
    speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 3-1.4.4:8 chip-ID: 08bb:2912 class-ID: 0102
  API: ALSA v: k6.4.3-zen1-1-zen status: kernel-api with: aoss type: oss-emulator tools: N/A
  Server-1: PipeWire v: 0.3.74 status: active with: 1: pipewire-pulse status: active
    2: wireplumber status: active 3: pipewire-alsa type: plugin 4: pw-jack type: plugin
    tools: pactl,pw-cat,pw-cli,wpctl
Network:
  Device-1: Intel Comet Lake PCH CNVi WiFi driver: iwlwifi v: kernel bus-ID: 00:14.3
    chip-ID: 8086:06f0 class-ID: 0280
  IF: wlo1 state: down mac: <filter>
  Device-2: Intel Ethernet I219-V vendor: ASRock driver: e1000e v: kernel port: N/A
    bus-ID: 00:1f.6 chip-ID: 8086:0d4d class-ID: 0200
  IF: eno2 state: up speed: 1000 Mbps duplex: full mac: <filter>
  Device-3: Realtek RTL8153 Gigabit Ethernet Adapter driver: r8152 type: USB rev: 3.0
    speed: 5 Gb/s lanes: 1 mode: 3.2 gen-1x1 bus-ID: 4-1.3.4:7 chip-ID: 0bda:8153 class-ID: 0000
    serial: <filter>
  IF: enp36s0u1u3u4 state: down mac: <filter>
  IF-ID-1: anbox0 state: down mac: <filter>
  IF-ID-2: virbr0 state: down mac: <filter>
  IF-ID-3: vmnet1 state: unknown speed: N/A duplex: N/A mac: <filter>
  IF-ID-4: vmnet8 state: unknown speed: N/A duplex: N/A mac: <filter>
Bluetooth:
  Device-1: HTC (High Tech ) Vive Hub Bluetooth 4.1 (Broadcom BCM920703) driver: btusb v: 0.8
    type: USB rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-12.2:12 chip-ID: 0bb4:0306
    class-ID: fe01 serial: <filter>
  Report: bt-adapter ID: hci1 rfk-id: 2 state: up address: N/A
  Device-2: Intel Bluetooth 9460/9560 Jefferson Peak (JfP) driver: btusb v: 0.8 type: USB
    rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-14:9 chip-ID: 8087:0aaa class-ID: e001
  Report: ID: hci0 rfk-id: 0 state: up address: <filter>
Drives:
  Local Storage: total: 23.76 TiB used: 1.33 TiB (5.6%)
  SMART Message: Unable to run smartctl. Root privileges required.
  ID-1: /dev/nvme0n1 maj-min: 259:7 vendor: Crucial model: CT2000P3SSD8 size: 1.82 TiB
    block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s lanes: 4 tech: SSD serial: <filter>
    fw-rev: P9CR30A temp: 34.9 C scheme: GPT
  ID-2: /dev/nvme1n1 maj-min: 259:0 vendor: Samsung model: SSD 970 EVO Plus 2TB size: 1.82 TiB
    block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s lanes: 4 tech: SSD serial: <filter>
    fw-rev: 4B2QEXM7 temp: 29.9 C scheme: GPT
  ID-3: /dev/sda maj-min: 8:0 vendor: Toshiba model: HDWR180 size: 7.28 TiB block-size:
    physical: 4096 B logical: 512 B speed: 6.0 Gb/s tech: HDD rpm: 7200 serial: <filter> fw-rev: 0603
    scheme: GPT
  ID-4: /dev/sdb maj-min: 8:16 vendor: SanDisk model: Ultra USB 3.0 size: 115.69 GiB block-size:
    physical: 512 B logical: 512 B type: USB rev: 3.0 spd: 5 Gb/s lanes: 1 mode: 3.2 gen-1x1
    tech: N/A serial: <filter> fw-rev: 1.00 scheme: MBR
  SMART Message: Unknown USB bridge. Flash drive/Unsupported enclosure?
  ID-5: /dev/sdc maj-min: 8:32 vendor: Seagate model: FireCuda Dock size: 3.64 TiB block-size:
    physical: 4096 B logical: 512 B type: USB rev: 3.2 spd: 10 Gb/s lanes: 1 mode: 3.2 gen-2x1
    tech: N/A serial: <filter> fw-rev: 235C scheme: GPT
  ID-6: /dev/sdd maj-min: 8:48 vendor: SanDisk model: Extreme 55AE size: 1.82 TiB block-size:
    physical: 512 B logical: 512 B type: USB rev: 3.2 spd: 10 Gb/s lanes: 1 mode: 3.2 gen-2x1
    tech: N/A serial: <filter> fw-rev: 3001 scheme: GPT
  SMART Message: Unknown USB bridge. Flash drive/Unsupported enclosure?
  ID-7: /dev/sde maj-min: 8:64 vendor: Seagate model: Backup+ Hub BK size: 7.28 TiB block-size:
    physical: 4096 B logical: 512 B type: USB rev: 3.1 spd: 5 Gb/s lanes: 1 mode: 3.2 gen-1x1
    tech: N/A serial: <filter> fw-rev: D781 scheme: GPT
Partition:
  ID-1: / raw-size: 1.82 TiB size: 1.82 TiB (100.00%) used: 1.12 TiB (61.7%) fs: btrfs
    dev: /dev/sdd2 maj-min: 8:50
  ID-2: /boot/efi ra
w-size: 300 MiB size: 299.4 MiB (99.80%) used: 2.5 MiB (0.8%) fs: vfat
    dev: /dev/sdd1 maj-min: 8:49
  ID-3: /home raw-size: 1.82 TiB size: 1.82 TiB (100.00%) used: 1.12 TiB (61.7%) fs: btrfs
    dev: /dev/sdd2 maj-min: 8:50
  ID-4: /var/log raw-size: 1.82 TiB size: 1.82 TiB (100.00%) used: 1.12 TiB (61.7%) fs: btrfs
    dev: /dev/sdd2 maj-min: 8:50
  ID-5: /var/tmp raw-size: 1.82 TiB size: 1.82 TiB (100.00%) used: 1.12 TiB (61.7%) fs: btrfs
    dev: /dev/sdd2 maj-min: 8:50
Swap:
  Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
  ID-1: swap-1 type: zram size: 31.24 GiB used: 7 MiB (0.0%) priority: 100 dev: /dev/zram0
Sensors:
  System Temperatures: cpu: 35.0 C pch: 53.0 C mobo: N/A gpu: nvidia temp: 42 C
  Fan Speeds (RPM): N/A gpu: nvidia fan: 0%
Info:
  Processes: 404 Uptime: 39m wakeups: 0 Memory: total: 32 GiB available: 31.24 GiB
  used: 5.8 GiB (18.6%) Init: systemd v: 253 default: graphical tool: systemctl Compilers:
  gcc: 13.1.1 clang: 15.0.7 Packages: pm: pacman pkgs: 2049 libs: 553 tools: octopi,paru,yay
  pm: appimage pkgs: 0 Client: shell wrapper v: 5.1.16-release inxi: 3.3.28
Garuda (2.6.16-1):
  System install date:     2022-06-02
  Last full system update: 2023-07-14
  Is partially upgraded:   No
  Relevant software:       snapper NetworkManager mkinitcpio nvidia-dkms
  Windows dual boot:       Probably (Run as root to verify)
  Failed units:            systemd-networkd-wait-online.service 

The splash kernel boot parameter was recently removed because the plymouth(-git) packge was causing troubles to several (not all) users. So if you want, you can try to put it back where it is not shown anymore.
Make sure that /etc/default/grub has

GRUB_DISABLE_OS_PROBER=false

Otherwise, the other OS's will never be probed, but this should not be related to the snapshots.
If that value was true, after enabling setting it to true, run a:

sudo update-grub

If I remember correctly, the snapshots are added to the grub via the snapper-support package, with the grub-btrfs-snapper.service.
You may want to check if you still have that package installed (I guess so) and the service working.

4 Likes

If you can run garuda-update and paste the full output into the thread, that may provide some clues as to what is happening or not happening.

Also, have you looked in the snapshot menu in Grub, to see if any snapshots have been recently added?

2 Likes

Confirming that GRUB_DISABLE_OS_PROBER=false and is uncommented (no #).
Here's the output when I query the snapper service, I think that means it's working.

╰─λ systemctl status grub-btrfs-snapper.service
â—‹ grub-btrfs-snapper.service - Regenerate grub-btrfs.cfg
Loaded: loaded (/usr/lib/systemd/system/grub-btrfs-snapper.service; static)
Active: inactive (dead) since Fri 2023-07-14 08:30:14 CDT; 1h 41min ago
TriggeredBy: â—Ź grub-btrfs-snapper.path
Process: 121308 ExecStart=bash -c if [[ -z $(/usr/bin/findmnt -n / | /usr/bin/grep "\.snapshots") ]]; the>
Main PID: 121308 (code=exited, status=0/SUCCESS)
CPU: 314ms

Jul 14 08:30:14 Siege3 bash[121695]: echo ""
Jul 14 08:30:14 Siege3 bash[121695]: else
Jul 14 08:30:14 Siege3 bash[121695]: submenu 'Garuda Linux snapshots' {
Jul 14 08:30:14 Siege3 bash[121695]:     configfile "${prefix}/grub-btrfs.cfg"
Jul 14 08:30:14 Siege3 bash[121695]: }
Jul 14 08:30:14 Siege3 bash[121695]: fi
Jul 14 08:30:14 Siege3 bash[121313]: Found 11 snapshot(s)
Jul 14 08:30:14 Siege3 bash[121313]: Unmount /tmp/grub-btrfs.YMAJULqUqV .. Success
Jul 14 08:30:14 Siege3 systemd[1]: grub-btrfs-snapper.service: Deactivated successfully.
Jul 14 08:30:14 Siege3 systemd[1]: Finished Regenerate grub-btrfs.cfg.

So maybe I'm just used to the os-prober/snapper snapshots being more verbose, and suddenly they are sparse? I'll have to see if snapshots are actually being added to Grub, but I'll have to generate more snapshots first.

Really appreciate the help!

1 Like

Yeah I've read about the splash being removed and why, but it's the only way the silent flag actually works, which is weird. But again it's not breaking anything.

When I run update-grub, it does all the os-prober and bootable snapper snapshots like I'd expect. I wonder if this was recently made silent as part of garuda-update? Or was update-grub removed from garuda-update (the arch wiki says you shouldn't be updating grub after every update, but the arch wiki also doesn't expect a running snapper-btrfs config).

No, no such change recently.

No, it wasn’t. update-grub is triggered necessarily to include new snapshots in the GRUB.

I think everything is in order.
You might have seen the GRUB reinstalled several times recently do to relevant grub package updates, but that’s something “more” not something “less”…

2 Likes

I can confirm that even manual snapper snapshots (no update-grub) are being added to Grub as bootable snapshots. So I'm more confident that things are working correctly.

Once I actually have an update, I'll post the garuda-update so you can see how it doesn't visibly trigger an os-prober after the Snapper snapshot is made - I just need someone to update a package! Thanks again

Well the default setup should trigger a snapshot before and after any Pacman transaction, not just an update. So you can install or remove a package, and you should get a pre- snapshot and a post- snapshot. Go ahead and install something to test:

sudo pacman -S mousepad

If you already have the mousepad text editor installed you'll have to use a different package to test, or just uninstall for the test:

sudo pacman -Rsu mousepad
2 Likes
╰─λ sudo pacman -S mousepad
[sudo] password for daves:
resolving dependencies...
looking for conflicting packages...

Packages (1) mousepad-0.6.1-2

Total Download Size:   0.43 MiB
Total Installed Size:  2.05 MiB

:: Proceed with installation? [Y/n] y
:: Retrieving packages...
mousepad-0.6.1-2-x86_64               437.1 KiB  1748 KiB/s 00:00 [------------------------------------] 100%
(1/1) checking keys in keyring                                     [------------------------------------] 100%
(1/1) checking package integrity                                   [------------------------------------] 100%
(1/1) loading package files                                        [------------------------------------] 100%
(1/1) checking for file conflicts                                  [------------------------------------] 100%
(1/1) checking available disk space                                [------------------------------------] 100%
:: Running pre-transaction hooks...
(1/1) Performing snapper pre snapshots for the following configurations...
==> root: 1199
:: Processing package changes...
(1/1) installing mousepad                                          [------------------------------------] 100%
Optional dependencies for mousepad
gspell: spell checking support [installed]
:: Running post-transaction hooks...
(1/9) Arming ConditionNeedsUpdate...
(2/9) Foreign/AUR package notification
fontbase 2.18.1-1
ltris 1.2.6-1
splashtop-business 3.5.2.0-1
splashtop-streamer 3.5.4.0-1
synergy1-bin 1.14.6-2
uxplay-git r893.d2969af-1
vmware-unlocker-bin 4.2.5-1
(3/9) Orphaned package notification...
=> No orphans found.
(4/9) Checking for .pacnew and .pacsave files...
.pac* files found:
/etc/shells.pacnew
/etc/locale.gen.pacnew
/etc/default/grub.pacnew
/etc/default/grub-btrfs/config.pacnew
/etc/mkinitcpio.conf.pacnew
/etc/pacman.conf.pacnew
/etc/pacman.d/mirrorlist.pacnew
/etc/plymouth/plymouthd.conf.pacnew
/etc/plymouth/plymouthd.conf.pacsave
/etc/retroarch.cfg.pacnew
Please check and merge
(5/9) Compiling GSettings XML schema files...
(6/9) Updating icon theme caches...
(7/9) Updating the desktop file MIME type cache...
(8/9) Performing snapper post snapshots for the following configurations...
==> root: 1200
(9/9) Syncing all file systems...

The snapshots are being made, I can see them in Snapper, and they are bootable from Grub, but there's no verbose output about os-prober being run after each install like there used to be.

OS-Prober only runs when the Grub configuration file is regenerated, which does not happen at every update. Only certain package transactions, like installing a kernel, will require the Grub configuration file to be regenerated.

2 Likes

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.