[pve-devel] [PATCH manager master stable-7] pve7to8: Fix Fedora 38 systemd unified cgroupv2 check
Christian Ebner
c.ebner at proxmox.com
Mon Aug 28 09:54:14 CEST 2023
For Fedora 38 the systemd shared object files used to check the systemd
version are located at /usr/lib64/systemd or /usr/lib/systemd.
Therefore, include /usr/lib64/systemd in the list of directories to
check.
Further, Fedora 38 adds a fc38 postfix to the filename, so expand the
regex to cover that as well.
Signed-off-by: Christian Ebner <c.ebner at proxmox.com>
---
Reported by users via the forum:
https://forum.proxmox.com/threads/128721/#post-584456
PVE/CLI/pve7to8.pm | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/PVE/CLI/pve7to8.pm b/PVE/CLI/pve7to8.pm
index ff8e6045..3947b260 100644
--- a/PVE/CLI/pve7to8.pm
+++ b/PVE/CLI/pve7to8.pm
@@ -1022,12 +1022,18 @@ sub check_containers_cgroup_compat {
my $get_systemd_version = sub {
my ($self) = @_;
+ my @dirs = (
+ '/lib/systemd',
+ '/usr/lib/systemd',
+ '/usr/lib/x86_64-linux-gnu/systemd',
+ '/usr/lib64/systemd'
+ );
my $libsd;
- for my $dir ('/lib/systemd', '/usr/lib/systemd', '/usr/lib/x86_64-linux-gnu/systemd') {
+ for my $dir (@dirs) {
$libsd = PVE::Tools::dir_glob_regex($dir, "libsystemd-shared-.+\.so");
last if defined($libsd);
}
- if (defined($libsd) && $libsd =~ /libsystemd-shared-(\d+)(\.\d-\d)?\.so/) {
+ if (defined($libsd) && $libsd =~ /libsystemd-shared-(\d+)(\.\d-\d)?(\.fc\d\d)?\.so/) {
return $1;
}
--
2.39.2
More information about the pve-devel
mailing list