[systemd-devel] stacked extension not working
Umut Tezduyar Lindskog
umut at tezduyar.com
Fri Oct 15 12:59:03 UTC 2021
Thanks and I would have never figured it out without your help. However,
moving the binary to /opt didn't work either (I made sure there is empty
/opt in the base too). Anything else I am missing?
root at osboxes:/home/osboxes/Development# tree stackupper/
stackupper/
├── bin
│ └── umut
├── dev
├── etc
│ ├── machine-id
│ ├── resolv.conf
│ └── runtime
├── lib -> usr/lib
├── opt
│ └── tree
├── proc
├── root
├── run
├── sys
├── tmp
├── usr
│ ├── bin
│ └── lib
│ ├── extension-release.d
│ │ └── extension-release.base
│ └── systemd
│ └── system
│ └── stackupper.service
└── var
└── tmp
18 directories, 7 files
root at osboxes:/home/osboxes/Development# cat
stackupper/usr/lib/systemd/system/stackupper.service
[Service]
Type=oneshot
ExecStart=/opt/tree /
On Fri, Oct 15, 2021 at 2:23 PM Luca Boccassi <bluca at debian.org> wrote:
> On Fri, 2021-10-15 at 12:18 +0000, Umut Tezduyar Lindskog wrote:
> > Hi, following works for us (for reference, configuration is printed
> > at the end)
> >
> > portablectl --now attach --extension=./stackupper ./base stackupper
> >
> > However, if we move the cat from base/usr/bin/cat to
> > stackupper/bin/cat it is not working. Seems like we cannot include
> > any library/executable in the extension.
> >
> > Are we missing something?
> >
> >
> > root at osboxes:/home/osboxes/Development# tree base/
> > base/
> > ├──bin
> > ├──dev
> > ├──etc
> > │ ├── machine-id
> > │ ├── os-release
> > │ └── resolv.conf
> > ├──lib
> > │ └── x86_64-linux-gnu
> > │ └── libc.so.6
> > ├──lib64
> > │ ├──ld-2.32.so
> > │ └── ld-linux-x86-64.so.2
> > ├──proc
> > ├──root
> > ├──run
> > ├──sys
> > ├──tmp
> > ├──usr
> > │ ├──bin
> > │ │ ├──cat
> > │ │ ├──echo
> > │ │ └── tree
> > │ └── lib
> > │ └── systemd
> > │ └── system
> > └── var
> > └── tmp
> >
> > 18 directories, 9 files
> >
> > root at osboxes:/home/osboxes/Development# tree stackupper/
> > stackupper/
> > ├──bin
> > │ └── umut
> > ├──dev
> > ├──etc
> > │ ├── machine-id
> > │ ├── resolv.conf
> > │ └── runtime
> > ├──lib -> usr/lib
> > ├──proc
> > ├──root
> > ├──run
> > ├──sys
> > ├──tmp
> > ├──usr
> > │ ├──bin
> > │ └── lib
> > │ ├──extension-release.d
> > │ │ └── extension-release.base
> > │ └── systemd
> > │ └── system
> > │ └── stackupper.service
> > └── var
> > └── tmp
> >
> > 17 directories, 6 files
> >
> > root at osboxes:/home/osboxes/Development# cat
> > stackupper/usr/lib/systemd/system/stackupper.service
> > [Service]
> > Type=oneshot
> > ExecStart=/usr/bin/cat /etc/os-release
> > root at osboxes:/home/osboxes/Development#systemctl --version
> > systemd 249 (249.4-1)
> > +PAM +AUDIT +SELINUX +APPARMOR +IMA +SMACK +SECCOMP +GCRYPT +GNUTLS -
> > OPENSSL +ACL +BLKID +CURL +ELFUTILS -FIDO2 +IDN2 -IDN +IPTC +KMOD
> > +LIBCRYPTSETUP -LIBFDISK +PCRE2 -PWQUALITY -P11KIT -QRENCODE +BZIP2
> > +LZ4 +XZ +ZLIB +ZSTD -XKBCOMMON +UTMP +SYSVINIT default-
> > hierarchy=unified
>
> Hi,
>
> You need to build your extension with the binaries under either the
> /usr or /opt hierarchies. Legacy locations like /bin and /lib are
> ignored. This is explained in the systemd-sysext.8 manpage.
>
> --
> Kind regards,
> Luca Boccassi
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/systemd-devel/attachments/20211015/6dd1194a/attachment.htm>
More information about the systemd-devel
mailing list