Subject: util vserver and /run in tmpfs
From: Ghislain Adnet <gadnet@aqueos.com>
Date: Sat, 6 Jan 2018 12:47:38 +0100

hi,

 Following my discussion with daniel on the IRc about the distribution having /run in
ram we concluded it need:



1513077082 M * daniel_hozac Ghislain: hmm, is that where it stops?
1513077118 M * daniel_hozac the || : should ignore any failures.
1513087829 M * Ghislain daniel_hozac: not it fails after but this is the only part that
make sense to me
1513087840 M * Ghislain i can send the whole thing in pastebin
1513088075 M * Ghislain last line is daniel_hozac:
1513088081 M * Ghislain i mean + _VS_LOCKS=
1513088137 M * Ghislain https://pastebin.com/raw/zhj8kP6m
1513088398 M * Ghislain the silly thing is that i got  a tmpfs allready and the very
same parameter the second do not works
1513088457 M * Ghislain /var/lock is a link to /run, could be the thing
1513088493 M * Ghislain the issue is the /run because the same thing on /mnt works
1513089143 M * Ghislain but if the mounting is done before the guest start then it must
be a check on the vserver util
that fail no ?
1513095274 M * daniel_hozac hmm
1513095283 M * daniel_hozac /var/lock is a symlink to /run?
1513095489 M * daniel_hozac the realpath doesn't appear to figure that out.
1513097339 M * Ghislain its a symlynk to /run/lock
1513097380 M * Ghislain [~]: realpath /var/lock
1513097380 M * Ghislain /run/lock
1513097423 M * Ghislain but if you do it before /run is mounted i guess that fails
1513110518 M * daniel_hozac ah, yeah. i can see how that would fail then...

1513190699 M * daniel_hozac Ghislain1: easiest temporary fix is probably appending ||
: to line 855 (the find) in
vserver.functions.

 this allow the utils to allow /run in tmpfs.


--- /vservers/kernel/util-vserver-0.30.216-pre3126.orig/scripts/vserver.functions  
    2018-01-06 12:45:07.280562573 +0100
+++ /vservers/kernel/util-vserver-0.30.216-pre3126/scripts/vserver.functions    2018-01-04
18:33:14.381793765 +0100
@@ -852,7 +852,7 @@
            local -a dirs=( $($_CHROOT_SH realpath /var/run /var/lock | $_SED 's!^/*!!'
|| :) )
            local dir
            for dir in "${dirs[@]}"; do
-               $_FIND "$dir/." ! -type d -print0 2>/dev/null | xargs -0r $_CHROOT_SH
rm
+               $_FIND "$dir/." ! -type d -print0 2>/dev/null | xargs -0r $_CHROOT_SH
rm || :
            done
            ;;
        plain)


best regards,
Ghislain.