<div dir="ltr">1. When attaching a service with an extension, the portablectl list<br>shows the base image as 'attached' but the extension as 'detached'. Is<br>the 'detached' state expected or an indication that something is<br>wrong?<div><br></div><div>You can expect a detached state because the extension is not actually running in the same process as the base image.  The extension is has a different PID, but they share the same memory region.  </div><div><br></div><div>> 3. What are some approaches to debugging problems with the service's<br>> environment? Two examples of problems I encountered were 1) the base<br>> image was missing a library the extension depended upon <br></div><div><br></div><div>That's a weird problem.  Don't laugh, but I ran into a situation where the libraries were installed, but the systemd source code was missing.  I'm not sure what a good version of the source code should be.   I think I might be referring to an earlier comment.  My only suggestion would be to use <span style="background-color:rgb(207,226,243)">portablectl debug </span><span style="background-color:rgb(255,255,255)"> but you are probably already doing that.   </span></div><div><span style="background-color:rgb(255,255,255)"><br></span></div><div><span style="background-color:rgb(255,255,255)">If you use systemd-run,  Here is a template for a systemd service file that might help you.</span></div><div><span style="background-color:rgb(255,255,255)"><br></span></div><div><p style="margin:24px 0px;white-space:pre-wrap;word-break:break-word;color:rgb(31,31,31);font-family:"Google Sans","Helvetica Neue",sans-serif;font-size:16px">[Unit]
Description=My service</p><p style="margin:24px 0px;white-space:pre-wrap;word-break:break-word;color:rgb(31,31,31);font-family:"Google Sans","Helvetica Neue",sans-serif;font-size:16px">[Service]
Type=oneshot
ExecStart=/usr/bin/systemd-run --scope --rootimage=/path/to/root/image --extensionimages=/path/to/extension/image /usr/bin/my-command</p><p style="margin:24px 0px;white-space:pre-wrap;word-break:break-word;color:rgb(31,31,31);font-family:"Google Sans","Helvetica Neue",sans-serif;font-size:16px">[Install]
WantedBy=multi-user.target</p><p style="margin:24px 0px;white-space:pre-wrap;word-break:break-word;color:rgb(31,31,31);font-family:"Google Sans","Helvetica Neue",sans-serif;font-size:16px">Benjamin Godfrey</p></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, May 5, 2023 at 5:00 AM <<a href="mailto:systemd-devel-request@lists.freedesktop.org">systemd-devel-request@lists.freedesktop.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Send systemd-devel mailing list submissions to<br>
        <a href="mailto:systemd-devel@lists.freedesktop.org" target="_blank">systemd-devel@lists.freedesktop.org</a><br>
<br>
To subscribe or unsubscribe via the World Wide Web, visit<br>
        <a href="https://lists.freedesktop.org/mailman/listinfo/systemd-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/systemd-devel</a><br>
or, via email, send a message with subject or body 'help' to<br>
        <a href="mailto:systemd-devel-request@lists.freedesktop.org" target="_blank">systemd-devel-request@lists.freedesktop.org</a><br>
<br>
You can reach the person managing the list at<br>
        <a href="mailto:systemd-devel-owner@lists.freedesktop.org" target="_blank">systemd-devel-owner@lists.freedesktop.org</a><br>
<br>
When replying, please edit your Subject line so it is more specific<br>
than "Re: Contents of systemd-devel digest..."<br>
<br>
<br>
Today's Topics:<br>
<br>
   1.  portable service questions (Chuck Tuffli)<br>
   2. Re:  portable service questions (Luca Boccassi)<br>
<br>
<br>
----------------------------------------------------------------------<br>
<br>
Message: 1<br>
Date: Thu, 4 May 2023 12:52:16 -0700<br>
From: Chuck Tuffli <<a href="mailto:ctuffli@gmail.com" target="_blank">ctuffli@gmail.com</a>><br>
To: <a href="mailto:systemd-devel@lists.freedesktop.org" target="_blank">systemd-devel@lists.freedesktop.org</a><br>
Subject: [systemd-devel] portable service questions<br>
Message-ID:<br>
        <<a href="mailto:CAKAYmMK0g_EcgkaHe7k2bzdEf4ON1COo%2Bz3K5x9TuKcoDKOEOQ@mail.gmail.com" target="_blank">CAKAYmMK0g_EcgkaHe7k2bzdEf4ON1COo+z3K5x9TuKcoDKOEOQ@mail.gmail.com</a>><br>
Content-Type: text/plain; charset="UTF-8"<br>
<br>
I basically have portable service extensions working, but in the<br>
process, there are a few questions that came up.<br>
<br>
1. When attaching a service with an extension, the portablectl list<br>
shows the base image as 'attached' but the extension as 'detached'. Is<br>
the 'detached' state expected or an indication that something is<br>
wrong?<br>
<br>
2. When using the default profile, systemd attaches a writable /tmp<br>
and /var/tmp. But the trusted profile doesn't attach either. From<br>
looking at the code, this appears to be expected. For read-only<br>
service images running with the trusted profile, is there a way to get<br>
a writable tmp directories or is the expectation that the base image<br>
is writable?<br>
<br>
3. What are some approaches to debugging problems with the service's<br>
environment? Two examples of problems I encountered were 1) the base<br>
image was missing a library the extension depended upon and 2) the<br>
service couldn't create configuration files because of a missing<br>
directory. In both cases, I replaced the ExecStart with 'sleep 1d' and<br>
used 'nsenter --target $(pidof sleep)' to investigate the environment<br>
and figure out where I goofed. Is there a better way to do this?<br>
<br>
Thanks!<br>
<br>
--chuck<br>
<br>
<br>
------------------------------<br>
<br>
Message: 2<br>
Date: Thu, 4 May 2023 22:27:26 +0100<br>
From: Luca Boccassi <<a href="mailto:luca.boccassi@gmail.com" target="_blank">luca.boccassi@gmail.com</a>><br>
To: Chuck Tuffli <<a href="mailto:ctuffli@gmail.com" target="_blank">ctuffli@gmail.com</a>><br>
Cc: <a href="mailto:systemd-devel@lists.freedesktop.org" target="_blank">systemd-devel@lists.freedesktop.org</a><br>
Subject: Re: [systemd-devel] portable service questions<br>
Message-ID:<br>
        <CAMw=<a href="mailto:ZnTjRYQ1rP3jh0utiwAfP9Jm_PmKvSLe4FF%2Bry8-ZuJDYQ@mail.gmail.com" target="_blank">ZnTjRYQ1rP3jh0utiwAfP9Jm_PmKvSLe4FF+ry8-ZuJDYQ@mail.gmail.com</a>><br>
Content-Type: text/plain; charset="UTF-8"<br>
<br>
On Thu, 4 May 2023 at 22:00, Chuck Tuffli <<a href="mailto:ctuffli@gmail.com" target="_blank">ctuffli@gmail.com</a>> wrote:<br>
><br>
> I basically have portable service extensions working, but in the<br>
> process, there are a few questions that came up.<br>
><br>
> 1. When attaching a service with an extension, the portablectl list<br>
> shows the base image as 'attached' but the extension as 'detached'. Is<br>
> the 'detached' state expected or an indication that something is<br>
> wrong?<br>
<br>
That's a known issue, it's just cosmetic<br>
<br>
> 2. When using the default profile, systemd attaches a writable /tmp<br>
> and /var/tmp. But the trusted profile doesn't attach either. From<br>
> looking at the code, this appears to be expected. For read-only<br>
> service images running with the trusted profile, is there a way to get<br>
> a writable tmp directories or is the expectation that the base image<br>
> is writable?<br>
<br>
This was changed recently and now every profile has a private /tmp<br>
<br>
> 3. What are some approaches to debugging problems with the service's<br>
> environment? Two examples of problems I encountered were 1) the base<br>
> image was missing a library the extension depended upon and 2) the<br>
> service couldn't create configuration files because of a missing<br>
> directory. In both cases, I replaced the ExecStart with 'sleep 1d' and<br>
> used 'nsenter --target $(pidof sleep)' to investigate the environment<br>
> and figure out where I goofed. Is there a better way to do this?<br>
<br>
Use systemd-run and pass it RootImage and ExtensionImages and you can<br>
do whatever you want, even getting a shell, in an identical<br>
environment<br>
<br>
<br>
------------------------------<br>
<br>
Subject: Digest Footer<br>
<br>
_______________________________________________<br>
systemd-devel mailing list<br>
<a href="mailto:systemd-devel@lists.freedesktop.org" target="_blank">systemd-devel@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/systemd-devel" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/systemd-devel</a><br>
<br>
<br>
------------------------------<br>
<br>
End of systemd-devel Digest, Vol 157, Issue 4<br>
*********************************************<br>
</blockquote></div>