[SOLVED] unable to make backup link of System.map-6.15.8-1-siduction-amd64

Started by kitty-kitty, 2025/07/31, 08:36:04

Previous topic - Next topic

kitty-kitty

Hi everyone,

I'm getting this when trying to update the kernel:


jyrki@siductionbox:~$ LC_ALL=en_US.UTF-8 sudo aptitude dist-upgrade
The following packages will be upgraded:
  linux-image-6.15.8-1-siduction-amd64
The following partially installed packages will be configured:
  linux-image-siduction-amd64
1 packages upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/61.8 MB of archives. After unpacking 510 kB will be used.
Do you want to continue? [Y/n/?] y
Reading changelogs... Done               
(Reading database ... 599929 files and directories currently installed.)
Preparing to unpack .../linux-image-6.15.8-1-siduction-amd64_6.15-8.1_amd64.deb ...
Unpacking linux-image-6.15.8-1-siduction-amd64 (6.15-8.1) over (6.15-8) ...
dpkg: error processing archive /var/cache/apt/archives/linux-image-6.15.8-1-siduction-amd64_6.15-8.1_amd64.deb (--unpack):
unable to make backup link of './boot/System.map-6.15.8-1-siduction-amd64' before installing new version: Operation not permitted
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/linux-image-6.15.8-1-siduction-amd64_6.15-8.1_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)
dpkg: dependency problems prevent configuration of linux-image-siduction-amd64:
linux-image-siduction-amd64 depends on linux-image-6.15.8-1-siduction-amd64 (= 6.15-8.1); however:
  Version of linux-image-6.15.8-1-siduction-amd64 on system is 6.15-8.

dpkg: error processing package linux-image-siduction-amd64 (--configure):
dependency problems - leaving unconfigured
Errors were encountered while processing:
linux-image-siduction-amd64


It may be a factor I'm using EFI system partition (FAT32) as /boot, so symlinks can't be placed there. This hasn't occurred with older kernel versions though.

devil

Hi, I am not a kernel expert, but it seems to me, linux-image-siduction-amd64 is not fully installed and produces the error while being configured. I would try to run sudo dpkg --configure -a followed by sudo apt update && sudo apt -f install. Let us know if it works.

kitty-kitty

Unfortunately, I get the same errors with those commands.


jyrki@siductionbox:~$ sudo dpkg --configure -a
[sudo] password for jyrki:
dpkg: dependency problems prevent configuration of linux-image-siduction-amd64:
linux-image-siduction-amd64 depends on linux-image-6.15.8-1-siduction-amd64 (= 6.15-8.1); however:
  Version of linux-image-6.15.8-1-siduction-amd64 on system is 6.15-8.

dpkg: error processing package linux-image-siduction-amd64 (--configure):
dependency problems - leaving unconfigured
Errors were encountered while processing:
linux-image-siduction-amd64
jyrki@siductionbox:~$ sudo apt update && sudo apt -f install
Get:2 http://debug.mirrors.debian.org/debian-debug unstable-debug InRelease [56.7 kB]             
Get:3 http://httpredir.debian.org/debian unstable InRelease [213 kB]                               
Get:4 https://packages.microsoft.com/debian/12/prod bookworm InRelease [3,618 B]                   
Hit:6 https://packages.microsoft.com/repos/code stable InRelease                                   
Get:7 https://packages.microsoft.com/debian/12/prod bookworm/main amd64 Packages [107 kB]         
Get:8 http://httpredir.debian.org/debian unstable/main amd64 Packages.diff/Index [63.6 kB]         
Ign:1 https://repo.vivaldi.com/stable/deb stable InRelease                                         
Hit:10 https://packages.siduction.org/fixes unstable-nvidia InRelease
Hit:11 https://repo.vivaldi.com/stable/deb stable Release                                       
Get:13 http://httpredir.debian.org/debian unstable/main i386 Packages.diff/Index [63.6 kB]
Hit:5 https://packages.siduction.org/extra unstable InRelease
Get:14 http://httpredir.debian.org/debian unstable/main Translation-fi.diff/Index [63.3 kB]
Get:15 http://httpredir.debian.org/debian unstable/main all Contents (deb).diff/Index [63.8 kB]
Hit:9 https://packages.siduction.org/fixes unstable InRelease
Get:16 http://httpredir.debian.org/debian unstable/main amd64 Packages T-2025-07-31-0804.28-F-2025-07-31-0804.28.pdiff [219 B]
Get:16 http://httpredir.debian.org/debian unstable/main amd64 Packages T-2025-07-31-0804.28-F-2025-07-31-0804.28.pdiff [219 B]
Get:17 http://httpredir.debian.org/debian unstable/main i386 Packages T-2025-07-31-0804.28-F-2025-07-31-0804.28.pdiff [218 B]
Get:17 http://httpredir.debian.org/debian unstable/main i386 Packages T-2025-07-31-0804.28-F-2025-07-31-0804.28.pdiff [218 B]
Get:18 http://httpredir.debian.org/debian unstable/main Translation-fi T-2025-07-31-0804.28-F-2025-07-31-0804.28.pdiff [31 B]
Get:18 http://httpredir.debian.org/debian unstable/main Translation-fi T-2025-07-31-0804.28-F-2025-07-31-0804.28.pdiff [31 B]
Get:19 http://httpredir.debian.org/debian unstable/main all Contents (deb) T-2025-07-31-0804.28-F-2025-07-31-0804.28.pdiff [338 B]
Get:19 http://httpredir.debian.org/debian unstable/main all Contents (deb) T-2025-07-31-0804.28-F-2025-07-31-0804.28.pdiff [338 B]
Get:20 http://httpredir.debian.org/debian unstable/main amd64 Components [5,318 kB] 
Fetched 5,953 kB in 5s (1,152 kB/s)                                                               
1 package can be upgraded. Run 'apt list --upgradable' to see it.
Warning: https://packages.microsoft.com/debian/12/prod/dists/bookworm/InRelease: Policy will reject signature within a year, see --audit for details
Warning: https://packages.microsoft.com/repos/code/dists/stable/InRelease: Policy will reject signature within a year, see --audit for details
Correcting dependencies... Done
Upgrading:
  linux-image-6.15.8-1-siduction-amd64

Summary:
  Upgrading: 1, Installing: 0, Removing: 0, Not Upgrading: 0
  1 not fully installed or removed.
  Download size: 0 B / 61.8 MB
  Space needed: 510 kB / 81.4 GB available

Continue? [Y/n] y
Reading changelogs... Done
(Reading database ... 599929 files and directories currently installed.)
Preparing to unpack .../linux-image-6.15.8-1-siduction-amd64_6.15-8.1_amd64.deb ...
/etc/kernel/preinst.d/dkms:
dkms: removing module nvidia-current/575.64 for kernel 6.15.8-1-siduction-amd64 (x86_64)
Module nvidia-current/575.64 for kernel 6.15.8-1-siduction-amd64 (x86_64):
Before uninstall, this module version was ACTIVE on this kernel.
Deleting /lib/modules/6.15.8-1-siduction-amd64/updates/dkms/nvidia-current.ko
Deleting /lib/modules/6.15.8-1-siduction-amd64/updates/dkms/nvidia-current-modeset.ko
Deleting /lib/modules/6.15.8-1-siduction-amd64/updates/dkms/nvidia-current-drm.ko
Deleting /lib/modules/6.15.8-1-siduction-amd64/updates/dkms/nvidia-current-uvm.ko
Deleting /lib/modules/6.15.8-1-siduction-amd64/updates/dkms/nvidia-current-peermem.ko
Running depmod... done.
Unpacking linux-image-6.15.8-1-siduction-amd64 (6.15-8.1) over (6.15-8) ...
dpkg: error processing archive /var/cache/apt/archives/linux-image-6.15.8-1-siduction-amd64_6.15-8.1_amd64.deb (--unpack):
unable to make backup link of './boot/System.map-6.15.8-1-siduction-amd64' before installing new version: Operation not permitted
dpkg-deb: error: paste subprocess was killed by signal (Broken pipe)
Errors were encountered while processing:
/var/cache/apt/archives/linux-image-6.15.8-1-siduction-amd64_6.15-8.1_amd64.deb
Error: Sub-process /usr/bin/dpkg returned an error code (1)

Penyelam

to upgrade your sytem you shoud do an sudo apt update  and then
sudo apt full-upgrade
don't use aptitude.

Teriarch

@kitty-kitty

> It may be a factor I'm using EFI system partition (FAT32) as /boot, so symlinks can't be placed there.

You suppose correctly.

> This hasn't occurred with older kernel versions though.

The upgrade from linux-image-6.15.8-1-siduction-amd64_6.15-8_amd64.deb to
                             linux-image-6.15.8-1-siduction-amd64_6.15-8.1_amd64.deb

is a minor one, preserving all the previous filenames. In this case and to be on the safe side the system keeps
backups of the previous files as symbolic links and you fell prey to the shortcomings of the fat32 file system.

How to resolve? Temporarily move the /boot to someting else, say /boot.tmp:

$ sudo mv /boot /boot.tmp
$ sudo mkdir /boot
$ sudo cp -a /boot.tmp/* /boot
$ sudo apt-get install (install the new kernel, whatever commands it takes else ...)

(compare the updated /boot with /boot.tmp, if there are no symboic links, proceed!)

Restore the old state:

$ sudo mkdir /boot.org (*)
$ sudo cp -a /boot.tmp/* /boot.org (*)
$ sudo cp -a  /boot/* /boot.tmp (*)
i[$ sudo rm -rf /boot      (*, see below)]
$ sudo mv /boot.tmp /boot

All the way an attentive proceeding goes without saying.
Reboot and keep your fingers crossed!

(*) On second thoughts you should better keep the new /boot as /boot.bak
instead of removing it and also keep a backup of /boot.tmp :

$ sudo mv /boot /boot.bak

kitty-kitty

@Teriarch: thanks, that solved the issue. Some details I needed to do differently from your instructions:

I couldn't move /boot and had to unmount it instead (after copying its contents of course):


sudo cp -a /boot/* /boot.tmp
sudo umount /boot


Likewise, bringing it back meant remounting it:


sudo mount -a
sudo cp -a /boot.tmp/* /boot


And I also needed to update GRUB configuration after moving the files:


sudo update-grub


Anyway, my install is fixed now. Thanks guys. :)

scholle1

Quote from: kitty-kitty on 2025/07/31, 08:36:04
It may be a factor I'm using EFI system partition (FAT32) as /boot, so symlinks can't be placed there. This hasn't occurred with older kernel versions though.

Is there a special reason for this?
Depending on the boot manager, the recommended mount point is
/boot/efi (GRUB) and
/efi (systemd-boot)

Then (GRUB) the /boot directory is located within the root directory, or on a separate partition with an advanced file system (e.g. ext4).

An XBOOTLDR partition is strongly recommended with systemd-boot.
ESP mounted under /efi and XBOOTLDR under /boot, also with an advanced file system.
"Pax in terris" - Das ist mein großer, mein einzigster für diese Welt von Herzen kommender Wunsch.
"Friede auf Erden" und alles Weitere erscheint einfach.

kitty-kitty

Quote from: scholle1 on 2025/07/31, 12:17:55
Is there a special reason for this?
Depending on the boot manager, the recommended mount point is
/boot/efi (GRUB) and
/efi (systemd-boot)

AFAIK, ESP as /boot is fairly common: https://wiki.archlinux.org/title/EFI_system_partition#Typical_mount_points

I switched to that setup when I changed my root partition to Btrfs with Zstandard compression. I was worried GRUB might not be able to access the kernel and initrd if they resided in the root partition, so I moved them to the ESP instead.

scholle1

QuoteI switched to that setup when I changed my root partition to Btrfs with Zstandard compression.

I have been using Btrfs for several years with the /boot directory inside the ROOT partition without any problems.

Presumably the above procedure will now be necessary with every kernel upgrade. Because siduction did not have a kernel upgrade from 6.15.8 to 6.15.8-1 but from 6.15.7-1 to 6.15.8-1.

My recommendation: Move the /boot directory back to the ROOT partition and mount the ESP under /boot/efi.

"Pax in terris" - Das ist mein großer, mein einzigster für diese Welt von Herzen kommender Wunsch.
"Friede auf Erden" und alles Weitere erscheint einfach.

Teriarch

@scholle1

>  Because siduction did not have a kernel upgrade from 6.15.8 to 6.15.8-1 but from 6.15.7-1 to 6.15.8-1

Well, there was a minor change because of the iwlwifi issue, I don't think, that going from 6.15.8-1 to
6.15.9-1 e.g would cause problems, because the names of the system files will change in that case. You
can still see the 'minor change' in the /var/cache/apt/archive directory (if available):

$ ls -lat /var/cache/apt/archives/linux-image-6.15.8-1*
-rw-r--r-- 1 root root 61842896 29. Jul 18:52 /var/cache/apt/archives/linux-image-6.15.8-1-siduction-amd64_6.15-8.1_amd64.deb
-rw-r--r-- 1 root root 61765212 24. Jul 11:22 /var/cache/apt/archives/linux-image-6.15.8-1-siduction-amd64_6.15-8_amd64.deb

And that was causing the issue. But you are right: fat32 for /boot is rather unusual.

@kitty-kitty

Glad to here that. And of course one cannot move active mount points, stupid me.

kitty-kitty

Quote from: scholle1 on 2025/07/31, 12:44:58
My recommendation: Move the /boot directory back to the ROOT partition and mount the ESP under /boot/efi.

All right, I've moved /boot back to the root partition. Regarding the ESP, I opted to follow systemd's advice and mounted it as /efi instead.

Also verified that the system continues to boot fine with this. GRUB can indeed handle Btrfs with Zstandard compression. :)

scholle1

@kitty-kitty
It's good that it works.

QuoteI opted to follow systemd's advice and mounted it as /efi instead.
This is recommended if you use systemd-boot as your boot manager.

With GRUB, siduction (based on Debian) uses the mount point /boot/efi by default.

NOTE:
The grub-install command assumes standard configuration of siduction
with EFI partiton at /dev/sdX1 or /dev/nvmeXnXp1
and the bootx64.efi file in /boot/efi/EFI/boot directory
and the grubx64.efi file in /boot/efi/EFI/siduction directory.
Your configuration would have to use the full command in the form of:

grub-install --target=x86_64-efi --efi-directory=/efi --bootloader-id=some_name_you_want
or simply
grub-install --efi-directory=/efi
Keep in mind /efi instead of /boot/efi
"Pax in terris" - Das ist mein großer, mein einzigster für diese Welt von Herzen kommender Wunsch.
"Friede auf Erden" und alles Weitere erscheint einfach.