<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:"Cambria Math";
panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Aptos;
panose-1:2 11 0 4 2 2 2 2 2 4;}
@font-face
{font-family:Menlo;
panose-1:2 11 6 9 3 8 4 2 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0cm;
font-size:10.0pt;
font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
p.m-5267624441854422983p1, li.m-5267624441854422983p1, div.m-5267624441854422983p1
{mso-style-name:m-5267624441854422983p1;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:10.0pt;
font-family:"Calibri",sans-serif;}
p.m-5267624441854422983m5870886716831619400p1, li.m-5267624441854422983m5870886716831619400p1, div.m-5267624441854422983m5870886716831619400p1
{mso-style-name:m-5267624441854422983m5870886716831619400p1;
mso-margin-top-alt:auto;
margin-right:0cm;
mso-margin-bottom-alt:auto;
margin-left:0cm;
font-size:10.0pt;
font-family:"Calibri",sans-serif;}
span.m-5267624441854422983s1
{mso-style-name:m-5267624441854422983s1;}
span.m-5267624441854422983m5870886716831619400s1
{mso-style-name:m-5267624441854422983m5870886716831619400s1;}
span.m-5267624441854422983m5870886716831619400apple-converted-space
{mso-style-name:m-5267624441854422983m5870886716831619400apple-converted-space;}
span.m-5267624441854422983gmailsignatureprefix
{mso-style-name:m-5267624441854422983gmailsignatureprefix;}
span.gmailsignatureprefix
{mso-style-name:gmailsignatureprefix;}
span.EmailStyle28
{mso-style-type:personal-reply;
font-family:"Calibri",sans-serif;
color:windowtext;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;
mso-ligatures:none;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
{page:WordSection1;}
/* List Definitions */
@list l0
{mso-list-id:1830057052;
mso-list-template-ids:-2001719882;}
ol
{margin-bottom:0cm;}
ul
{margin-bottom:0cm;}
--></style>
</head>
<body lang="en-SE" link="blue" vlink="purple" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;mso-fareast-language:EN-US">Hi Mantas,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;mso-fareast-language:EN-US">I finally found out what was causing this mount issue. We have a global sandboxing configuration for all services, that implies PrivateNetwork=yes. According to manual
this will imply PrivateMounts=yes. So, I added a drop-in configuration to <a href="mailto:user-runtime-dir@.service.d">
user-runtime-dir@.service.d</a> which defines PrivateMounts=no. Now it works! </span>
<span lang="EN-US" style="font-size:11.0pt;font-family:"Apple Color Emoji";mso-fareast-language:EN-US">😊</span><span lang="EN-US" style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;mso-fareast-language:EN-US">Thank you very much for your support!<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:black;mso-fareast-language:EN-US">Best regards,<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:black;mso-fareast-language:EN-US">Christopher Wong<o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;mso-fareast-language:EN-US"><o:p> </o:p></span></p>
<div id="mail-editor-reference-message-container">
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">From:
</span></b><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">systemd-devel <systemd-devel-bounces@lists.freedesktop.org> on behalf of Christopher Wong <Christopher.Wong@axis.com><br>
<b>Date: </b>Wednesday, 13 December 2023 at 11:32<br>
<b>To: </b>Mantas Mikulėnas <grawity@gmail.com><br>
<b>Cc: </b>Systemd <systemd-devel@lists.freedesktop.org><br>
<b>Subject: </b>Re: [systemd-devel] Manual start of user@<uid>.service failed with permission denied<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">Hi Mantas,</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">I ran your suggestion and here is the result:</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">root@host:/run/user# ls -la<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">drwxr-xr-x 2 root root 40 Dec 13 11:24 .<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">drwxr-xr-x 99 root root 2160 Dec 13 11:00 ..<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">root@host:/run/user# /usr/lib/systemd/systemd-user-runtime-dir start 1001<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">root@host:/run/user# ls -la<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">drwxr-xr-x 3 root root 60 Dec 13 11:25 .<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">drwxr-xr-x 99 root root 2160 Dec 13 11:00 ..<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">drwx------ 2 ida ssh-user 40 Dec 13 11:25 1001<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">root@host:/run/user# mount | grep /run<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">tmpfs on /run/user/1001 type tmpfs (rw,nosuid,nodev,relatime,size=97096k,nr_inodes=24274,mode=700,uid=1001,gid=118)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">This seems to be correct, and I could see /run/user/1001 listed using “mount”.</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">Thank you for your explaination! We have probably be running with a uncomplete setup of the mount before.</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:black">Best regards,</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:black">Christopher Wong</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<div id="mail-editor-reference-message-container">
<div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">From:
</span></b><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">Mantas Mikulėnas <grawity@gmail.com><br>
<b>Date: </b>Wednesday, 13 December 2023 at 10:33<br>
<b>To: </b>Christopher Wong <Christopher.Wong@axis.com><br>
<b>Cc: </b>Systemd <systemd-devel@lists.freedesktop.org><br>
<b>Subject: </b>Re: [systemd-devel] Manual start of user@<uid>.service failed with permission denied</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">On Wed, Dec 13, 2023 at 10:36 AM Christopher Wong <<a href="mailto:Christopher.Wong@axis.com">Christopher.Wong@axis.com</a>> wrote:<o:p></o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt">
<div>
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">Hi Mantas,</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">I tried with StopWhenUnneeded=no in
<a href="mailto:user-runtime-dir@.service" target="_blank">user-runtime-dir@.service</a>, then when
<a href="mailto:user@1001.service" target="_blank">user@1001.service</a> fails the status of
<a href="mailto:user-runtime-dir@.service" target="_blank">user-runtime-dir@.service</a> is active. At this state the directory /run/user/1001 is created, it is empty, owned by root. Running the mount command doesn’t show /run/user/1001.</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Run the "/usr/lib/systemd/systemd-user-runtime-dir start 1001" manually and check whether the mounted filesystem is there afterwards.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">If it's still not there, then run "mount -t tmpfs -o uid=1001,mode=0700 none /run/user/1001" and then check whether it stays mounted.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt">
<div>
<div>
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:black"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983p1"><span lang="EN-US" style="font-size:11.0pt;color:black">I have mentioned it before, but I want to point out that if I put “</span><span class="m-5267624441854422983s1"><span style="font-size:11.0pt">ExecStartPre=+chown %i
/run/user/%i</span></span><span class="m-5267624441854422983s1"><span lang="EN-US" style="font-size:11.0pt">” in
<a href="mailto:user@.service" target="_blank">user@.service</a> then the <a href="mailto:user@1001.service" target="_blank">
user@1001.service</a> can be started manually. The mount command doesn’t show /run/user/1001 either, but since the service is started the path contains bus socket and systemd directory with content, which are the things I am after.
</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:black"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:black">The main issue here is that /run/user/1001 is owned by root after
<a href="mailto:user-runtime-dir@.service" target="_blank">user-runtime-dir@.service</a> has been exited successfully.</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
</div>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">No, that's only a symptom of the main issue.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">The current design that systemd implements is to have a user-specific tmpfs mounted at that location (for quota purposes), and so the underlying mountpoint is deliberately created as owned by root – its ownership
is not changed because it's supposed to have a new filesystem mounted on top (which would make the mountpoint hidden and its ownership moot).<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">If you specifically want to *not* have an additional tmpfs there, then you can continue using the manual "ExecStartPre=chown" (or in fact you could replace the entire user-runtime-dir@ with a simpler one that
only mkdirs and chowns), but in that case you shouldn't be saying that it's a systemd issue that it doesn't chown something that it was never meant to chown to begin with.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt">
<div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt;color:black"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:black">Best regards,</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:black">Christopher Wong</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<div id="m_-5267624441854422983mail-editor-reference-message-container">
<div>
<div style="border:none;border-top:solid windowtext 1.0pt;padding:3.0pt 0cm 0cm 0cm;border-color:currentcolor currentcolor">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">From:
</span></b><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">Mantas Mikulėnas <<a href="mailto:grawity@gmail.com" target="_blank">grawity@gmail.com</a>><br>
<b>Date: </b>Wednesday, 13 December 2023 at 08:08<br>
<b>To: </b>Christopher Wong <<a href="mailto:Christopher.Wong@axis.com" target="_blank">Christopher.Wong@axis.com</a>><br>
<b>Cc: </b>Systemd <<a href="mailto:systemd-devel@lists.freedesktop.org" target="_blank">systemd-devel@lists.freedesktop.org</a>><br>
<b>Subject: </b>Re: [systemd-devel] Manual start of user@<uid>.service failed with permission denied</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">On Tue, Dec 12, 2023 at 6:15 PM Christopher Wong <<a href="mailto:Christopher.Wong@axis.com" target="_blank">Christopher.Wong@axis.com</a>> wrote:<o:p></o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid windowtext 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt;border-color:currentcolor currentcolor currentcolor rgb(204,204,204)">
<div>
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">Hi Mantas,</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">After <a href="mailto:user@1001.service" target="_blank">
user@1001.service</a> failed, it trigger the stopping process and become inactive.</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Ah yeah, that makes sense, user-runtime-dir@ has StopWhenUnneeded=yes – so of course after user@1001 crashes you're not going to see anything mounted anymore.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Could you try temporarily removing that option / setting it to 'no', just to see what changes?<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid windowtext 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt;border-color:currentcolor currentcolor currentcolor rgb(204,204,204)">
<div>
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">○
<a href="mailto:user-runtime-dir@1001.service" target="_blank">user-runtime-dir@1001.service</a> - User Runtime Directory /run/user/1001</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Loaded: loaded (<a href="mailto:/etc/systemd/system/user-runtime-dir@.service" target="_blank">/etc/systemd/system/user-runtime-dir@.service</a>; static)</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Drop-In: /usr/lib/systemd/system/service.d</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">└─10-axis.conf, 20-axis-sandbox.conf</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Active: inactive (dead) since Tue 2023-12-12 16:33:35 CET; 36min ago</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Duration: 315ms</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Docs: man:user@.service(5)</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Process: 16325 ExecStartPre=ls -la /run/user (code=exited, status=0/SUCCESS)</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Process: 16327 ExecStartPre=mount (code=exited, status=0/SUCCESS)</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Process: 16329 ExecStart=/usr/lib/systemd/systemd-user-runtime-dir start 1001 (code=exited, status=0/SUCCESS)</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Process: 16334 ExecStartPost=sleep 5 (code=exited, status=0/SUCCESS)</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Process: 16347 ExecStartPost=ls -la /run/user/1001 (code=exited, status=0/SUCCESS)</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Process: 16351 ExecStartPost=mount (code=exited, status=0/SUCCESS)</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Process: 16361 ExecStop=/usr/lib/systemd/systemd-user-runtime-dir stop 1001 (code=exited, status=0/SUCCESS)</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">Main PID: 16329 (code=exited, status=0/SUCCESS)</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="m-5267624441854422983m5870886716831619400p1"><span class="m-5267624441854422983m5870886716831619400apple-converted-space"><span style="font-size:11.0pt">
</span></span><span class="m-5267624441854422983m5870886716831619400s1"><span style="font-size:11.0pt">CPU: 48ms</span></span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">/etc/fstab don’t include anything on /run/user/1001 and there is no mount unit for run-user-1001.mount either.</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:black">Best regards,</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:black">Christopher Wong</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<div id="m_-5267624441854422983m_5870886716831619400mail-editor-reference-message-container">
<div>
<div style="border:none;border-top:solid windowtext 1.0pt;padding:3.0pt 0cm 0cm 0cm;border-color:currentcolor">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">From:
</span></b><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">Mantas Mikulėnas <<a href="mailto:grawity@gmail.com" target="_blank">grawity@gmail.com</a>><br>
<b>Date: </b>Tuesday, 12 December 2023 at 17:05<br>
<b>To: </b>Christopher Wong <<a href="mailto:Christopher.Wong@axis.com" target="_blank">Christopher.Wong@axis.com</a>><br>
<b>Cc: </b>Systemd <<a href="mailto:systemd-devel@lists.freedesktop.org" target="_blank">systemd-devel@lists.freedesktop.org</a>><br>
<b>Subject: </b>Re: [systemd-devel] Manual start of user@<uid>.service failed with permission denied</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">That sounds like it's getting immediately unmounted (or maybe not being mounted at all despite the program doing so).<o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Does the user-runtime-dir service continue to show as "active" after this, or does it return to "inactive"?<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Does your /etc/fstab have any mentions of /run/user/1001? Or more generally, are there any run-user-1001.mount units? (If you 'systemctl status' this unit, does the status include a source path?)<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">On Tue, Dec 12, 2023, 17:34 Christopher Wong <<a href="mailto:Christopher.Wong@axis.com" target="_blank">Christopher.Wong@axis.com</a>> wrote:<o:p></o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid windowtext 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt;border-color:currentcolor currentcolor currentcolor rgb(204,204,204)">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">Hi Mantas,</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">I currently have the following flow:</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<ol style="margin-top:0cm" start="1" type="1">
<li class="MsoNormal" style="mso-list:l0 level1 lfo1"><span lang="EN-US" style="font-size:11.0pt">No /run/user/1001 directory</span><span style="font-size:11.0pt"><o:p></o:p></span></li><li class="MsoNormal" style="mso-list:l0 level1 lfo1"><span lang="EN-US" style="font-size:11.0pt">systemctl start
<a href="mailto:user@1001.service" target="_blank">user@1001.service</a></span><span style="font-size:11.0pt"><o:p></o:p></span></li><li class="MsoNormal" style="mso-list:l0 level1 lfo1"><span lang="EN-US" style="font-size:11.0pt">systemd start
<a href="mailto:user-runtime-dir@1001.service" target="_blank">user-runtime-dir@1001.service</a> which ends successfully.</span><span style="font-size:11.0pt"><o:p></o:p></span></li><li class="MsoNormal" style="mso-list:l0 level1 lfo1"><span lang="EN-US" style="font-size:11.0pt">The directory /run/user/1001 exists now, but is empty, owned by root with mode 0700</span><span style="font-size:11.0pt"><o:p></o:p></span></li><li class="MsoNormal" style="mso-list:l0 level1 lfo1"><span lang="EN-US" style="font-size:11.0pt">I don’t have findmnt on my system, so I used mount, but /run/user/1001 is not listed.</span><span style="font-size:11.0pt"><o:p></o:p></span></li><li class="MsoNormal" style="mso-list:l0 level1 lfo1"><span lang="EN-US" style="font-size:11.0pt">systemd start
<a href="mailto:user@1001.service" target="_blank">user@1001.service</a> which fails due to permission denied.</span><span style="font-size:11.0pt"><o:p></o:p></span></li></ol>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">I can’t explain why the /run/user/1001 is owned by root after
<a href="mailto:user-runtime-dir@1001.service" target="_blank">user-runtime-dir@1001.service</a> successfully exited. I added some personal print in systemd code to ensure that the mount command returned success (r=0). Although, the mount was successful the
command “mount” didn’t list it. In the list of mounts starting with /run I could only find these entries:</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p>Dec 12 16:19:35 <span lang="EN-US">host </span>mount[14500]: tmpfs on /run type tmpfs (rw,nosuid,nodev,mode=755)<o:p></o:p></p>
<p>Dec 12 16:19:35 <span lang="EN-US">host</span> mount[14500]: tmpfs on /run/credentials type tmpfs (ro,nosuid,nodev,noexec,mode=755)<o:p></o:p></p>
<p>Dec 12 16:19:35 <span lang="EN-US">host </span>mount[14500]: tmpfs on /run/systemd/incoming type tmpfs (ro,nosuid,nodev,mode=755)<o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">If I do a chown of the directory in
<a href="mailto:user@1001.service" target="_blank">user@1001.service</a> then it works</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Menlo">root@</span><span lang="SV" style="font-size:11.0pt;font-family:Menlo">host</span><span style="font-size:11.0pt;font-family:Menlo">:/run/user# ls -la 1001</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Menlo">drwx------ 3 ida root 80 Dec 12 16:19 .</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Menlo">drwxr-xr-x 3 root root 60 Dec 12 16:19 ..</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Menlo">srw-rw-rw- 1 ida ssh-user 0 Dec 12 16:19 bus</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:Menlo">drwxr-xr-x 5 ida ssh-user 140 Dec 12 16:19 systemd</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="SV" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">The ”mount” command don’t list /run/user/1001 for the successful case either.</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:black">Best regards,</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:black">Christopher Wong</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<div id="m_-5267624441854422983m_5870886716831619400m_-8990293804925907923m_50470161548180358mail-editor-reference-message-container">
<div>
<div style="border:none;border-top:solid windowtext 1.0pt;padding:3.0pt 0cm 0cm 0cm;border-color:currentcolor">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">From:
</span></b><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">Mantas Mikulėnas <<a href="mailto:grawity@gmail.com" target="_blank">grawity@gmail.com</a>><br>
<b>Date: </b>Monday, 11 December 2023 at 17:56<br>
<b>To: </b>Christopher Wong <<a href="mailto:Christopher.Wong@axis.com" target="_blank">Christopher.Wong@axis.com</a>><br>
<b>Cc: </b>Systemd <<a href="mailto:systemd-devel@lists.freedesktop.org" target="_blank">systemd-devel@lists.freedesktop.org</a>><br>
<b>Subject: </b>Re: [systemd-devel] Manual start of user@<uid>.service failed with permission denied</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">On Mon, Dec 11, 2023, 17:28 Christopher Wong <<a href="mailto:Christopher.Wong@axis.com" target="_blank">Christopher.Wong@axis.com</a>> wrote:<o:p></o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid windowtext 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt;border-color:currentcolor currentcolor currentcolor rgb(204,204,204)">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">Hi Mantas,</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">I have added ExecStartPre to
</span><span style="font-size:11.0pt"><a href="mailto:user@.service" target="_blank"><span lang="EN-US">user@.service</span></a></span><span lang="EN-US" style="font-size:11.0pt"> to run “id” and “ls -la”:</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 11 15:50:34 host systemd-user-runtime-dir[40287]: Will mount /run/user/1001 owned by 1001:118<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 11 15:50:34 host systemd-user-runtime-dir[40287]: Mounting tmpfs (tmpfs) on /run/user/1001 (MS_NOSUID|MS_NODEV "mode=0700,uid=1001,gid=118,size=99426304,nr_inodes=24274")...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 11 15:50:34 host systemd[1]: Finished User Runtime Directory /run/user/1001.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 11 15:50:34 host systemd[1]: Starting User Manager for UID 1001...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 11 15:50:34 host id[40291]: uid=1001(ida) gid=118(ssh-users) groups=118(ssh-users),236(systemd-journal)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 11 15:50:34 host ls[40293]: drwxr-xr-x 3 root root 60 Dec 11 15:50 .<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 11 15:50:34 host ls[40293]: drwxr-xr-x 98 root root 2120 Dec 11 15:30 ..<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 11 15:50:34 host ls[40293]: drwx------ 2 root root 40 Dec 11 15:50 1001<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 11 15:50:34 host systemd[40294]: systemd 254.7-2-g9edc143 running in user mode for user 1001/ida. (-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 -TPM2 +BZIP2 -LZ4 +XZ +ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON -UTMP -SYSVINIT default-hierarchy=unified)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">The /run/user/1001 belongs to root with mode 0700. Should this belong to root?</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">No, it should be owned by UID 1001 (though still mode 0700).<o:p></o:p></span></p>
</div>
<div>
<div>
<blockquote style="border:none;border-left:solid windowtext 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt;border-color:currentcolor currentcolor currentcolor rgb(204,204,204)">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">Is it because I manually start
</span><span style="font-size:11.0pt"><a href="mailto:user@1001.service" target="_blank"><span lang="EN-US">user@1001.service</span></a></span><span lang="EN-US" style="font-size:11.0pt"> as root?</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Which user started the .service is usually not important, all services get a "fresh" environment that's fully described by the unit file.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">So even if you did 'systemctl start' as root, the unit has User=%i so the instance parameter tells it which UID to run as, so will be running as UID 1001. Likewise user-runtime-dir@1001 will get the UID for
the mount from its instance name (you can see that the "Mounting tmpfs" message has the correct information).<o:p></o:p></span></p>
</div>
<div>
<div>
<blockquote style="border:none;border-left:solid windowtext 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt;border-color:currentcolor currentcolor currentcolor rgb(204,204,204)">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">However, after </span>
<span style="font-size:11.0pt"><a href="mailto:user-runtime-dir@1001.service" target="_blank"><span lang="EN-US">user-runtime-dir@1001.service</span></a>
</span><span lang="EN-US" style="font-size:11.0pt">has finished it startup, the </span>
<span style="font-size:11.0pt"><a href="mailto:user@1001.service" target="_blank"><span lang="EN-US">user@1001.service</span></a></span><span lang="EN-US" style="font-size:11.0pt"> is started as uid=1001 and therefore can’t create any directories under /run/user/1001.
Resulting in </span><span style="font-size:11.0pt"><a href="mailto:user@1001.service" target="_blank"><span lang="EN-US">user@1001.service</span></a></span><span lang="EN-US" style="font-size:11.0pt"> failed to start.</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">If I add “</span><span style="font-size:11.0pt">ExecStartPre=+chown %i /run/user/%i</span><span lang="EN-US" style="font-size:11.0pt">” to
</span><span style="font-size:11.0pt"><a href="mailto:user@.service" target="_blank"><span lang="EN-US">user@.service</span></a></span><span lang="EN-US" style="font-size:11.0pt"> then it works! But I am unsure if this is really the way fix this.</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
</div>
</blockquote>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">So far, it sounds like the directory is being created *by something else* before user-runtime-dir@ is even invoked.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Try adding the same "-/bin/ls -lad /run/user/%i" as both ExecStartPre and ExecStartPost of user-runtime-dir@ (and maybe even a findmnt). If the directory already exists during ExecStartPre, start looking for
other services or cronjobs, or tmpfiles.d configs, or 'su' invocations, which may cause it to be created.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">There might also be something that chowns it to root *after* it was created correctly. If you actually see the tmpfs mount in 'findmnt' or in 'mount', but it's owned by root despite having uid=1001 in its
mount options, something has chowned it...or your tmpfs feature is broken.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">If you don't see it in findmnt at all, even after user-runtime-dir has succeeded – either the mount failed quietly, or... something (like systemd itself) has quietly unmounted it.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<div>
<blockquote style="border:none;border-left:solid windowtext 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt;border-color:currentcolor currentcolor currentcolor rgb(204,204,204)">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">Regarding the testing, I have done both restart of everything and manual, but the result is the same. Now that I have the “Environment=XDG_RUNTIME_DIR=/run/user/%i” I no longer need to do “systemctl
set-environment …”</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">Thank you for taking your time!</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;color:black">Best regards,</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;color:black">Christopher Wong</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<div id="m_-5267624441854422983m_5870886716831619400m_-8990293804925907923m_50470161548180358m_-2724165164821707795mail-editor-reference-message-container">
<div>
<div style="border:none;border-top:solid windowtext 1.0pt;padding:3.0pt 0cm 0cm 0cm;border-color:currentcolor">
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">From:
</span></b><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">Mantas Mikulėnas <</span><span style="font-size:11.0pt"><a href="mailto:grawity@gmail.com" target="_blank"><span style="font-size:12.0pt;font-family:"Aptos",sans-serif">grawity@gmail.com</span></a></span><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">><br>
<b>Date: </b>Friday, 8 December 2023 at 21:53<br>
<b>To: </b>Christopher Wong <</span><span style="font-size:11.0pt"><a href="mailto:Christopher.Wong@axis.com" target="_blank"><span style="font-size:12.0pt;font-family:"Aptos",sans-serif">Christopher.Wong@axis.com</span></a></span><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">><br>
<b>Cc: </b>Systemd <</span><span style="font-size:11.0pt"><a href="mailto:systemd-devel@lists.freedesktop.org" target="_blank"><span style="font-size:12.0pt;font-family:"Aptos",sans-serif">systemd-devel@lists.freedesktop.org</span></a></span><span style="font-size:12.0pt;font-family:"Aptos",sans-serif;color:black">><br>
<b>Subject: </b>Re: [systemd-devel] Manual start of user@<uid>.service failed with permission denied</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">On Fri, Dec 8, 2023 at 6:53 PM Christopher Wong <<a href="mailto:Christopher.Wong@axis.com" target="_blank">Christopher.Wong@axis.com</a>> wrote:<o:p></o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid windowtext 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt;border-color:currentcolor currentcolor currentcolor rgb(204,204,204)">
<div>
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">Hi Mantas,</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">I have from your suggestion done the following:</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Putting the below in user@.service<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">[Service]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Environment=XDG_RUNTIME_DIR=/run/user/%i<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Environment=SYSTEMD_LOG_LEVEL=debug<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Putting the below in user-runtime-dir@.service<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">[Service]<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Environment=SYSTEMD_LOG_LEVEL=debug<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">Then I have disabled the global set-log-level debug (if this is also required, please let me know).</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
</div>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Unlike set-environment that's not global, it only affects pid1.<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<blockquote style="border:none;border-left:solid windowtext 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt;border-color:currentcolor currentcolor currentcolor rgb(204,204,204)">
<div>
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt">What I can see from the logs is that
</span><span style="font-size:11.0pt"><a href="mailto:user-runtime-dir@1001.service" target="_blank"><span lang="EN-US">user-runtime-dir@1001.service</span></a></span><span lang="EN-US" style="font-size:11.0pt"> seems to be started and mount /run/user/1001,
but addition creation of directory under this mount is getting permission denied.
</span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt"> </span><span style="font-size:11.0pt"><o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd[1]: Created slice User Slice of UID 1001.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd[1]: Starting User Runtime Directory /run/user/1001...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Bus n/a: changing state UNSET -> OPENING<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: sd-bus: starting bus by connecting to /run/dbus/system_bus_socket...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Bus n/a: changing state OPENING -> AUTHENTICATING<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Bus n/a: changing state AUTHENTICATING -> HELLO<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Sent message type=method_call sender=n/a destination=org.freedesktop.DBus path=/org/freedesktop/DBus interface=org.freedesktop.DBus member=Hello cookie=1
reply_cookie=0 signature=n/a error-name=n/a error-message=n/a<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Got message type=method_return sender=org.freedesktop.DBus destination=:1.2536 path=n/a interface=n/a member=n/a cookie=1 reply_cookie=1 signature=s error-name=n/a
error-message=n/a<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Bus n/a: changing state HELLO -> RUNNING<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Sent message type=method_call sender=n/a destination=org.freedesktop.login1 path=/org/freedesktop/login1 interface=org.freedesktop.DBus.Properties member=Get
cookie=2 reply_cookie=0 signature=ss error-name=n/a error-message=n/a<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Got message type=method_return sender=:1.323 destination=:1.2536 path=n/a interface=n/a member=n/a cookie=15 reply_cookie=2 signature=v error-name=n/a
error-message=n/a<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Sent message type=method_call sender=n/a destination=org.freedesktop.login1 path=/org/freedesktop/login1 interface=org.freedesktop.DBus.Properties member=Get
cookie=3 reply_cookie=0 signature=ss error-name=n/a error-message=n/a<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Got message type=method_return sender=:1.323 destination=:1.2536 path=n/a interface=n/a member=n/a cookie=16 reply_cookie=3 signature=v error-name=n/a
error-message=n/a<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Bus n/a: changing state RUNNING -> CLOSED<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Will mount /run/user/1001 owned by 1001:118<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Mounting tmpfs (tmpfs) on /run/user/1001 (MS_NOSUID|MS_NODEV "mode=0700,uid=1001,gid=118,size=99426304,nr_inodes=24274")...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd[1]: Finished User Runtime Directory /run/user/1001.<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd[1]: Starting User Manager for UID 1001...<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd[36280]: systemd 254.7-2-g9edc143 running in user mode for user 1001/ida. (-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 -TPM2 +BZIP2 -LZ4 +XZ +ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON -UTMP -SYSVINIT default-hierarchy=unified)<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible', ignoring: Permission denied<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible/reg', ignoring: Permission denied<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible/dir', ignoring: Permission denied<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible/fifo', ignoring: Permission denied<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible/sock', ignoring: Permission denied<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible/chr', ignoring: Permission denied<o:p></o:p></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible/blk', ignoring: Permission denied<o:p></o:p></span></p>
</div>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">What's the ownership of /run/user/1001 and /run/user/1001/systemd after all of this?<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Are you rebooting between tests or just manually starting it?<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt"> <o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">My current guess is that due to the earlier `systemctl set-environment`, some *other* thing that's running as root inherited the /run/user/1001 path and created root-owned directories there? That's the issue
with setting global environment, it needs to be unset afterwards...<o:p></o:p></span></p>
</div>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt"><br>
-- <o:p></o:p></span></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Mantas Mikulėnas<o:p></o:p></span></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt"><br clear="all">
<br>
<span class="m-5267624441854422983gmailsignatureprefix">-- </span><o:p></o:p></span></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Mantas Mikulėnas<o:p></o:p></span></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><span style="font-size:11.0pt"><br clear="all">
<br>
<span class="gmailsignatureprefix">-- </span><o:p></o:p></span></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11.0pt">Mantas Mikulėnas<o:p></o:p></span></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>