При этом, то что есть с L, эта линковка не сработает для мигрантов p6>p9. /var/{lock,run} у них уже есть и это каталоги. А как писал shaba@, "с L+ в tmpfiles закончился неудачно". А без L+, облом на миграции с systemd на sysv:
https://forum.altlinux.org/index.php?topic=36177.msg330384#msg330384
https://forum.altlinux.org/index.php?topic=36177.msg330414#msg330414
Ладно, а что же всё таки произошло?
(На сборке regular-xfce от 24 октября)
А произошло то
# ls -l /var/ | grep lock
drwxr-xr-x 6 root root 140 окт 29 17:34 lock
# ls -l /var/ | grep run
drwxr-xr-x 30 root root 680 окт 29 17:35 run
# ls -l /var/run | grep lock
drwxr-xr-x 2 root root 40 окт 29 17:34 lock
# grep . /lib/tmpfiles.d/{legacy,var}.conf
/lib/tmpfiles.d/legacy.conf:# This file is part of systemd.
/lib/tmpfiles.d/legacy.conf:#
/lib/tmpfiles.d/legacy.conf:# systemd is free software; you can redistribute it and/or modify it
/lib/tmpfiles.d/legacy.conf:# under the terms of the GNU Lesser General Public License as published by
/lib/tmpfiles.d/legacy.conf:# the Free Software Foundation; either version 2.1 of the License, or
/lib/tmpfiles.d/legacy.conf:# (at your option) any later version.
/lib/tmpfiles.d/legacy.conf:# See tmpfiles.d(5) for details
/lib/tmpfiles.d/legacy.conf:# These files are considered legacy and are unnecessary on legacy-free
/lib/tmpfiles.d/legacy.conf:# systems.
/lib/tmpfiles.d/legacy.conf:d /run/lock 0755 root root -
/lib/tmpfiles.d/legacy.conf:L /var/lock - - - - ../run/lock
/lib/tmpfiles.d/legacy.conf:# /run/lock/subsys is used for serializing SysV service execution, and
/lib/tmpfiles.d/legacy.conf:# hence without use on SysV-less systems.
/lib/tmpfiles.d/legacy.conf:d /run/lock/subsys 0700 root root -
/lib/tmpfiles.d/legacy.conf:# /run/lock/lockdev is used to serialize access to tty devices via
/lib/tmpfiles.d/legacy.conf:# LCK..xxx style lock files, For more information see:
/lib/tmpfiles.d/legacy.conf:# http://lists.freedesktop.org/archives/systemd-devel/2011-March/001823.html
/lib/tmpfiles.d/legacy.conf:# On modern systems a BSD file lock is a better choice if
/lib/tmpfiles.d/legacy.conf:# serialization is needed on those devices.
/lib/tmpfiles.d/legacy.conf:d /run/lock/serial 0770 root uucp -
/lib/tmpfiles.d/legacy.conf:# /forcefsck, /fastboot and /forcequotacheck are deprecated in favor of the
/lib/tmpfiles.d/legacy.conf:# kernel command line options 'fsck.mode=force', 'fsck.mode=skip' and
/lib/tmpfiles.d/legacy.conf:# 'quotacheck.mode=force'
/lib/tmpfiles.d/legacy.conf:r! /forcefsck
/lib/tmpfiles.d/legacy.conf:r! /fastboot
/lib/tmpfiles.d/legacy.conf:r! /forcequotacheck
/lib/tmpfiles.d/var.conf:# This file is part of systemd.
/lib/tmpfiles.d/var.conf:#
/lib/tmpfiles.d/var.conf:# systemd is free software; you can redistribute it and/or modify it
/lib/tmpfiles.d/var.conf:# under the terms of the GNU Lesser General Public License as published by
/lib/tmpfiles.d/var.conf:# the Free Software Foundation; either version 2.1 of the License, or
/lib/tmpfiles.d/var.conf:# (at your option) any later version.
/lib/tmpfiles.d/var.conf:# See tmpfiles.d(5) for details
/lib/tmpfiles.d/var.conf:q /var 0755 - - -
/lib/tmpfiles.d/var.conf:L /var/run - - - - ../run
/lib/tmpfiles.d/var.conf:d /var/log 0755 - - -
/lib/tmpfiles.d/var.conf:f /var/log/wtmp 0664 root utmp -
/lib/tmpfiles.d/var.conf:f /var/log/btmp 0660 root utmp -
/lib/tmpfiles.d/var.conf:f /var/log/lastlog 0664 root utmp -
/lib/tmpfiles.d/var.conf:d /var/cache 0755 - - -
/lib/tmpfiles.d/var.conf:d /var/lib 0755 - - -
/lib/tmpfiles.d/var.conf:d /var/spool 0755 - - -
# apt-get install \
> sysvinit \
> pm-utils \
> nm-sysvinit \
> polkit-sysvinit \
> systemd- \
> systemd-services- \
> systemd-sysvinit- \
> apt-conf-ignore-systemd \
> syslog-ng
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Следующие дополнительные пакеты будут установлены:
libivykis libnet2 syslog-common
Следующие пакеты будут УДАЛЕНЫ:
bash-completion-systemd systemd systemd-analyze systemd-services systemd-sysvinit vconsole-setup-kludge
Следующие НОВЫЕ пакеты будут установлены:
apt-conf-ignore-systemd libivykis libnet2 nm-sysvinit pm-utils polkit-sysvinit syslog-common syslog-ng sysvinit
0 будет обновлено, 9 новых установлено, 6 пакетов будет удалено и 62 не будет обновлено.
Необходимо получить 845kB архивов.
После распаковки будет освобождено 3122kB дискового пространства.
Продолжить? [Y/n]
# ls -l /var/lock | grep 'serial\|subsys\|uucp'
drwxrwx--- 2 root uucp 40 окт 29 17:59 serial
drwx------ 2 root root 60 окт 29 17:59 subsys
# ls -l /run/lock | grep 'serial\|subsys\|uucp'
drwxrwx--- 2 root uucp 40 окт 29 17:59 serial
drwx------ 2 root root 60 окт 29 17:59 subsys
SysRq-reboot
что каталоги /var/{run,lock} как были каталогами, так и остались каталогами
# ls -l /var/ | grep lock
drwxr-xr-x 1 root root 4096 окт 29 18:22 lock
# ls -l /var/ | grep run
drwxr-xr-x 1 root root 4096 окт 29 18:22 run
# ls -l /run/lock | grep 'serial\|subsys\|uucp'
drwxrwx--- 2 root uucp 40 окт 29 18:22 serial
drwx------ 2 root root 40 окт 29 18:22 subsys
Зато /var/lock/{serial,subsys} благополучно поисчезали, вместе с изначально несуществующим uucp
# ls -l /var/lock | grep 'serial\|subsys\|uucp'
#
на чём sysv на старте системы просто стошнило в tty1:
# ls -lR /var/lock /run/lock
/run/lock:
итого 0
drwx------ 2 root root 40 окт 29 18:22 lvm
drwxrwx--- 2 root uucp 40 окт 29 18:22 serial
drwx------ 2 root root 40 окт 29 18:22 subsys
/run/lock/lvm:
итого 0
/run/lock/serial:
итого 0
/run/lock/subsys:
итого 0
/var/lock:
итого 0
drwxr-xr-x 2 root root 3 июл 5 11:15 sepermit
/var/lock/sepermit:
итого 0