<div dir="ltr"><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Dec 12, 2023 at 6:15 PM Christopher Wong <<a href="mailto:Christopher.Wong@axis.com">Christopher.Wong@axis.com</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"><div class="msg5870886716831619400">





<div lang="en-SE" style="overflow-wrap: break-word;">
<div class="m_5870886716831619400WordSection1">
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">Hi Mantas,<u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">After
<a href="mailto:user@1001.service" target="_blank">user@1001.service</a> failed, it trigger the stopping process and become inactive.</span></p></div></div></div></blockquote><div><br></div><div>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.</div><div><br></div><div>Could you try temporarily removing that option / setting it to 'no', just to see what changes?<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="msg5870886716831619400"><div lang="en-SE" style="overflow-wrap: break-word;"><div class="m_5870886716831619400WordSection1"><p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"><u></u> <u></u></span></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400s1">○ <a href="mailto:user-runtime-dir@1001.service" target="_blank">user-runtime-dir@1001.service</a> - User Runtime Directory /run/user/1001</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">     </span><span class="m_5870886716831619400s1">Loaded: loaded (<a href="mailto:/etc/systemd/system/user-runtime-dir@.service" target="_blank">/etc/systemd/system/user-runtime-dir@.service</a>; static)</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">    </span><span class="m_5870886716831619400s1">Drop-In: /usr/lib/systemd/system/service.d</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">             </span><span class="m_5870886716831619400s1">└─10-axis.conf, 20-axis-sandbox.conf</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">     </span><span class="m_5870886716831619400s1">Active: inactive (dead) since Tue 2023-12-12 16:33:35 CET; 36min ago</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">   </span><span class="m_5870886716831619400s1">Duration: 315ms</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">       </span><span class="m_5870886716831619400s1">Docs: man:user@.service(5)</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">    </span><span class="m_5870886716831619400s1">Process: 16325 ExecStartPre=ls -la /run/user (code=exited, status=0/SUCCESS)</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">    </span><span class="m_5870886716831619400s1">Process: 16327 ExecStartPre=mount (code=exited, status=0/SUCCESS)</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">    </span><span class="m_5870886716831619400s1">Process: 16329 ExecStart=/usr/lib/systemd/systemd-user-runtime-dir start 1001 (code=exited, status=0/SUCCESS)</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">    </span><span class="m_5870886716831619400s1">Process: 16334 ExecStartPost=sleep 5 (code=exited, status=0/SUCCESS)</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">    </span><span class="m_5870886716831619400s1">Process: 16347 ExecStartPost=ls -la /run/user/1001 (code=exited, status=0/SUCCESS)</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">    </span><span class="m_5870886716831619400s1">Process: 16351 ExecStartPost=mount (code=exited, status=0/SUCCESS)</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">    </span><span class="m_5870886716831619400s1">Process: 16361 ExecStop=/usr/lib/systemd/systemd-user-runtime-dir stop 1001 (code=exited, status=0/SUCCESS)</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">   </span><span class="m_5870886716831619400s1">Main PID: 16329 (code=exited, status=0/SUCCESS)</span><u></u><u></u></p>
<p class="m_5870886716831619400p1"><span class="m_5870886716831619400apple-converted-space">        </span><span class="m_5870886716831619400s1">CPU: 48ms</span><u></u><u></u></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">/etc/fstab don’t include anything on /run/user/1001 and there is no mount unit for run-user-1001.mount either.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt;color:black">Best regards,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;color:black">Christopher Wong<u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
<div id="m_5870886716831619400mail-editor-reference-message-container">
<div>
<div style="border-width:1pt medium medium;border-style:solid none none;border-color:rgb(181,196,223) currentcolor currentcolor;padding:3pt 0cm 0cm">
<p class="MsoNormal" style="margin-bottom:12pt"><b><span style="font-size:12pt;font-family:"Aptos",sans-serif;color:black">From:
</span></b><span style="font-size:12pt;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<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">That sounds like it's getting immediately unmounted (or maybe not being mounted at all despite the program doing so).<u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">Does the user-runtime-dir service continue to show as "active" after this, or does it return to "inactive"?<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">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?)<u></u><u></u></span></p>
</div>
</div>
<p class="MsoNormal"><span style="font-size:11pt"><u></u> <u></u></span></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">On Tue, Dec 12, 2023, 17:34 Christopher Wong <<a href="mailto:Christopher.Wong@axis.com" target="_blank">Christopher.Wong@axis.com</a>> wrote:<u></u><u></u></span></p>
</div>
<blockquote style="border-width:medium medium medium 1pt;border-style:none none none solid;border-color:currentcolor currentcolor currentcolor rgb(204,204,204);padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">Hi Mantas,</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">I currently have the following flow:</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<ol start="1" type="1">
<li class="MsoNormal">
<span lang="EN-US" style="font-size:11pt">No /run/user/1001 directory</span><span style="font-size:11pt"><u></u><u></u></span></li><li class="MsoNormal">
<span lang="EN-US" style="font-size:11pt">systemctl start <a href="mailto:user@1001.service" target="_blank">
user@1001.service</a></span><span style="font-size:11pt"><u></u><u></u></span></li><li class="MsoNormal">
<span lang="EN-US" style="font-size:11pt">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:11pt"><u></u><u></u></span></li><li class="MsoNormal">
<span lang="EN-US" style="font-size:11pt">The directory /run/user/1001 exists now, but is empty, owned by root with mode 0700</span><span style="font-size:11pt"><u></u><u></u></span></li><li class="MsoNormal">
<span lang="EN-US" style="font-size:11pt">I don’t have findmnt on my system, so I used mount, but /run/user/1001 is not listed.</span><span style="font-size:11pt"><u></u><u></u></span></li><li class="MsoNormal">
<span lang="EN-US" style="font-size:11pt">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:11pt"><u></u><u></u></span></li></ol>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">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:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></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)<u></u><u></u></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)<u></u><u></u></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)<u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">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:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Menlo">root@</span><span lang="SV" style="font-size:11pt;font-family:Menlo">host</span><span style="font-size:11pt;font-family:Menlo">:/run/user#
 ls -la 1001</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Menlo">drwx------    3 ida      root            80 Dec 12 16:19 .</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Menlo">drwxr-xr-x    3 root     root            60 Dec 12 16:19 ..</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Menlo">srw-rw-rw-    1 ida      ssh-user         0 Dec 12 16:19 bus</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;font-family:Menlo">drwxr-xr-x    5 ida      ssh-user       140 Dec 12 16:19 systemd</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="SV" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">The ”mount” command don’t list /run/user/1001 for the successful case either.</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt;color:black">Best regards,</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;color:black">Christopher Wong</span><span style="font-size:11pt"><u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
<div id="m_5870886716831619400m_-8990293804925907923m_50470161548180358mail-editor-reference-message-container">
<div>
<div style="border-width:1pt medium medium;border-style:solid none none;border-color:rgb(181,196,223) currentcolor currentcolor;padding:3pt 0cm 0cm">
<p class="MsoNormal" style="margin-bottom:12pt"><b><span style="font-size:12pt;font-family:"Aptos",sans-serif;color:black">From:
</span></b><span style="font-size:12pt;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:11pt"><u></u><u></u></span></p>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">On Mon, Dec 11, 2023, 17:28 Christopher Wong <<a href="mailto:Christopher.Wong@axis.com" target="_blank">Christopher.Wong@axis.com</a>> wrote:<u></u><u></u></span></p>
</div>
<blockquote style="border-width:medium medium medium 1pt;border-style:none none none solid;border-color:currentcolor currentcolor currentcolor rgb(204,204,204);padding:0cm 0cm 0cm 6pt;margin:5pt 0cm 5pt 4.8pt">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">Hi Mantas,</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">I have added ExecStartPre to
</span><span style="font-size:11pt"><a href="mailto:user@.service" target="_blank"><span lang="EN-US">user@.service</span></a></span><span lang="EN-US" style="font-size:11pt"> to run “id” and “ls -la”:</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 11 15:50:34 host systemd-user-runtime-dir[40287]: Will mount /run/user/1001 owned by 1001:118<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">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")...<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 11 15:50:34 host systemd[1]: Finished User Runtime Directory /run/user/1001.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 11 15:50:34 host systemd[1]: Starting User Manager for UID 1001...<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 11 15:50:34 host id[40291]: uid=1001(ida) gid=118(ssh-users) groups=118(ssh-users),236(systemd-journal)<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 11 15:50:34 host ls[40293]: drwxr-xr-x    3 root     root            60 Dec 11 15:50 .<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 11 15:50:34 host ls[40293]: drwxr-xr-x   98 root     root          2120 Dec 11 15:30 ..<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 11 15:50:34 host ls[40293]: drwx------    2 root     root            40 Dec 11 15:50 1001<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">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)<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">The /run/user/1001 belongs to root with mode 0700. Should this belong to root?</span><span style="font-size:11pt"><u></u><u></u></span></p>
</div>
</div>
</blockquote>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">No, it should be owned by UID 1001 (though still mode 0700).<u></u><u></u></span></p>
</div>
<div>
<div>
<blockquote style="border-width:medium medium medium 1pt;border-style:none none none solid;border-color:currentcolor currentcolor currentcolor rgb(204,204,204);padding:0cm 0cm 0cm 6pt;margin:5pt 0cm 5pt 4.8pt">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">Is it because I manually start
</span><span style="font-size:11pt"><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:11pt"> as root?</span><span style="font-size:11pt"><u></u><u></u></span></p>
</div>
</div>
</blockquote>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">Which user started the .service is usually not important, all services get a "fresh" environment that's fully described by the unit file.<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">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).<u></u><u></u></span></p>
</div>
<div>
<div>
<blockquote style="border-width:medium medium medium 1pt;border-style:none none none solid;border-color:currentcolor currentcolor currentcolor rgb(204,204,204);padding:0cm 0cm 0cm 6pt;margin:5pt 0cm 5pt 4.8pt">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">However, after
</span><span style="font-size:11pt"><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:11pt"> has finished it startup,  the
</span><span style="font-size:11pt"><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:11pt"> is started as uid=1001 and therefore can’t create any directories under
 /run/user/1001. Resulting in </span><span style="font-size:11pt"><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:11pt"> failed to start.</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">If I add “</span><span style="font-size:11pt">ExecStartPre=+chown %i /run/user/%i</span><span lang="EN-US" style="font-size:11pt">”
 to </span><span style="font-size:11pt"><a href="mailto:user@.service" target="_blank"><span lang="EN-US">user@.service</span></a></span><span lang="EN-US" style="font-size:11pt"> then it works! But I am unsure if this is really the way fix this.</span><span style="font-size:11pt"><u></u><u></u></span></p>
</div>
</div>
</blockquote>
</div>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">So far, it sounds like the directory is being created *by something else* before user-runtime-dir@ is even invoked.<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">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.<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">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.<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">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.<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
</div>
<div>
<div>
<blockquote style="border-width:medium medium medium 1pt;border-style:none none none solid;border-color:currentcolor currentcolor currentcolor rgb(204,204,204);padding:0cm 0cm 0cm 6pt;margin:5pt 0cm 5pt 4.8pt">
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">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:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">Thank you for taking your time!</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt;color:black">Best regards,</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt;color:black">Christopher Wong</span><span style="font-size:11pt"><u></u><u></u></span></p>
</div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
<div id="m_5870886716831619400m_-8990293804925907923m_50470161548180358m_-2724165164821707795mail-editor-reference-message-container">
<div>
<div style="border-width:1pt medium medium;border-style:solid none none;border-color:rgb(181,196,223) currentcolor currentcolor;padding:3pt 0cm 0cm">
<p class="MsoNormal" style="margin-bottom:12pt"><b><span style="font-size:12pt;font-family:"Aptos",sans-serif;color:black">From:
</span></b><span style="font-size:12pt;font-family:"Aptos",sans-serif;color:black">Mantas Mikulėnas <</span><span style="font-size:11pt"><a href="mailto:grawity@gmail.com" target="_blank"><span style="font-size:12pt;font-family:"Aptos",sans-serif">grawity@gmail.com</span></a></span><span style="font-size:12pt;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:11pt"><a href="mailto:Christopher.Wong@axis.com" target="_blank"><span style="font-size:12pt;font-family:"Aptos",sans-serif">Christopher.Wong@axis.com</span></a></span><span style="font-size:12pt;font-family:"Aptos",sans-serif;color:black">><br>
<b>Cc: </b>Systemd <</span><span style="font-size:11pt"><a href="mailto:systemd-devel@lists.freedesktop.org" target="_blank"><span style="font-size:12pt;font-family:"Aptos",sans-serif">systemd-devel@lists.freedesktop.org</span></a></span><span style="font-size:12pt;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:11pt"><u></u><u></u></span></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">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:<u></u><u></u></span></p>
</div>
<blockquote style="border-width:medium medium medium 1pt;border-style:none none none solid;border-color:currentcolor currentcolor currentcolor rgb(204,204,204);padding:0cm 0cm 0cm 6pt;margin:5pt 0cm 5pt 4.8pt">
<div>
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">Hi Mantas,</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">I have from your suggestion done the following:</span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Putting the below in user@.service<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">[Service]<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">...<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Environment=XDG_RUNTIME_DIR=/run/user/%i<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Environment=SYSTEMD_LOG_LEVEL=debug<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Putting the below in user-runtime-dir@.service<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">[Service]<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">...<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Environment=SYSTEMD_LOG_LEVEL=debug<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">Then I have disabled the global set-log-level debug (if this is also required, please let me know).</span><span style="font-size:11pt"><u></u><u></u></span></p>
</div>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">Unlike set-environment that's not global, it only affects pid1.<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
</div>
<blockquote style="border-width:medium medium medium 1pt;border-style:none none none solid;border-color:currentcolor currentcolor currentcolor rgb(204,204,204);padding:0cm 0cm 0cm 6pt;margin:5pt 0cm 5pt 4.8pt">
<div>
<div>
<div>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt">What I can see from the logs is that
</span><span style="font-size:11pt"><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:11pt"> 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:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span lang="EN-US" style="font-size:11pt"> </span><span style="font-size:11pt"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd[1]: Created slice User Slice of UID 1001.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd[1]: Starting User Runtime Directory /run/user/1001...<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Bus n/a: changing state UNSET -> OPENING<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: sd-bus: starting bus by connecting to /run/dbus/system_bus_socket...<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Bus n/a: changing state OPENING -> AUTHENTICATING<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Bus n/a: changing state AUTHENTICATING -> HELLO<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">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<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">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<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Bus n/a: changing state HELLO -> RUNNING<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">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<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">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<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">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<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">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<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Bus n/a: changing state RUNNING -> CLOSED<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd-user-runtime-dir[36278]: Will mount /run/user/1001 owned by 1001:118<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">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")...<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd[1]: Finished User Runtime Directory /run/user/1001.<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd[1]: Starting User Manager for UID 1001...<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">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)<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible', ignoring: Permission denied<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible/reg', ignoring: Permission denied<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible/dir', ignoring: Permission denied<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible/fifo', ignoring: Permission denied<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible/sock', ignoring: Permission denied<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible/chr', ignoring: Permission denied<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11pt">Dec 08 17:33:29 host systemd[36280]: Failed to create '/run/user/1001/systemd/inaccessible/blk', ignoring: Permission denied<u></u><u></u></span></p>
</div>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">What's the ownership of /run/user/1001 and /run/user/1001/systemd after all of this?<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">Are you rebooting between tests or just manually starting it?<u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt"> <u></u><u></u></span></p>
</div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">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...<u></u><u></u></span></p>
</div>
</div>
<p class="MsoNormal"><span style="font-size:11pt"><br>
-- <u></u><u></u></span></p>
<div>
<div>
<p class="MsoNormal"><span style="font-size:11pt">Mantas Mikulėnas<u></u><u></u></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><br clear="all"><br><span class="gmail_signature_prefix">-- </span><br><div dir="ltr" class="gmail_signature"><div dir="ltr">Mantas Mikulėnas</div></div></div>