wofferl / proxmox-backup-arm64

Script for building Proxmox Backup Server 3.x (Bookworm) for Armbian64
151 stars 12 forks source link

proxmox-backup-proxy is missing libsgutils2-1.45.so.2 on ubuntu #38

Closed der-graph closed 11 months ago

der-graph commented 12 months ago

Hi,

after some os and pbs updates to the latest 2.4 release proxmox-backup-proxy couldn't start anymore. Because of this I upgraded to the new unofficial 3.0-x release and the problem continued to exist. The log was showing a missing libsgutils2-1.45.so.2. Ubuntu says there is already the newest libsgutils2-1.46 installed. At the moment i did a dirty symlink fot libsgutils2-1.45.so.2 to libsgutils2-1.46.so.2 and pbs is running again.

Ubuntu problem with the lib?

Daniel

wofferl commented 12 months ago

There is a change for the libsgutils2 dependencies between the old and new distributions. In debian this change was between bullseye and bookworm, where the dependency changed from libsgutils2-2 to libsgutils2-1.46-2.

Did you use the build script to compile the proxmox-backup packages or did you download the pre compiled? Which Ubuntu Version do you have?

The pre compiled packages are compiled for bullseye and should be running on ubuntu 22.04 (jammy). If you want them on ubuntu 23.04, you need to compile them by yourself.

der-graph commented 12 months ago

Thank you for your answer.

In the past I compiled the packages by myself. This time I was downloading the pre compiled packages. I used the build.sh with the download=3.0.2-1 option.

I'm on ubuntu 22.04.3 on an RPi 4.

Edit: I see what you mean.

Package: proxmox-backup-server Version: 3.0.2-1 Status: install ok installed Priority: optional Section: admin Source: rust-proxmox-backup Maintainer: Github Action github@linux-dude.de Installed-Size: 125 MB Depends: fonts-font-awesome, libjs-extjs (>= 7~), libjs-qrcodejs (>= 1.20201119), libproxmox-acme-plugins, libsgutils2-2 (>= 1.43), libzstd1 (>= 1.3.8), lvm2, openssh-server, pbs-i18n, postfix | mail-transport-agent, proxmox-backup-docs, proxmox-mini-journalreader, proxmox-widget-toolkit (>= 3.5.2), pve-xtermjs (>= 4.7.0-1), sg3-utils, smartmontools, libacl1 (>= 2.2.23), libapt-pkg6.0 (>= 1.9~), libc6 (>= 2.29), libcrypt1 (>= 1:4.1.0), libgcc-s1 (>= 4.2), libpam0g (>= 0.99.7.1), libssl1.1 (>= 1.1.1), libstdc++6 (>= 5.2), libsystemd0 (>= 246), libudev1 (>= 183), libuuid1 (>= 2.16) Recommends: ifupdown2, proxmox-mail-forward, proxmox-offline-mirror-helper, zfsutils-linuxHomepage: https://github.com/wofferl/proxmox-backup-arm64

But if I delete the symlink I get:

proxmox-backup-proxy: error while loading shared libraries: libsgutils2-1.45.so.2: cannot open shared object file: No such file or directory

wofferl commented 12 months ago

Thank you for your answer.

In the past i compiled the packages by myself. This time I was downloading the pre compiled packages. I uses the buidl.sh with the download=3.0.2-1 option.

I'm on ubuntu 22.04.3 on an RPi 4.

Ok, I was wrong. There are more dependency differences between debian and ubuntu. Ubuntu has libssl3, while Debian still uses libssl1.1. For this reason alone, the pre compiled packages cannot be used and you have to compile them by yourself.

wofferl commented 12 months ago

But if I delete the symlink I get:

proxmox-backup-proxy: error while loading shared libraries: libsgutils2-1.45.so.2: cannot open shared object file: No such file or directory

The problem here is that libsgutils doesn't have symlinks without version. That seems the reason, that in Debian/Bookworm the libsgutils package changed the dependency name.

ldd /usr/lib/aarch64-linux-gnu/proxmox-backup/proxmox-backup-proxy libsgutils2-1.45.so.2 => /lib/aarch64-linux-gnu/libsgutils2-1.45.so.2 (0x0000ffff8fbca000)

This is not optimal and I hope that the maintainers of libsgutils will change this in the future.

der-graph commented 12 months ago

I see, thank you for your explanation.

Just for clarification: this means if you compile the packages again by yourself on ubuntu the problem is gone anyway?

wofferl commented 12 months ago

Yes, it links to the installed version of libsgutils2. Normally that is no big problem, because libsgutils2 isn't updated that much, but in this case it makes packages in debian that relies on this package incompatible with ubuntu.

But if you have libssl1.1 installed you can try to go with the symlink. From the libsgutils changelog I don't see any critical changes in 1.46, so it should be safe to use.

der-graph commented 12 months ago

ok, thanks again for pointing this out and for your time and effort.