On 06.02.2026 15:01, Stuart Henderson wrote:
On 2026-02-06, Thomas Kupper <[email protected]> wrote:
Hi,
I'm playing around with Chrony and used setproctitle() to set the title
of the involved process (main, helper and NTS helper).
And I can't figure out how to receive the command line the application
was started with after using setproctitle().
E.g. running 'ps -o command' outputs before setproctitle():
$ ps -auxo command | fgrep chronyd
_chrony 43240 <snip> chronyd -F 0 -u _chrony -d -f /etc/chrony.conf
_chrony 77494 <snip> chronyd -F 0 -u _chrony -d -f /etc/chrony.conf
root 18016 <snip> chronyd -F 0 -u _chrony -d -f /etc/chrony.conf
running 'ps -o command' outputs after setproctitle():
$ ps -auxo command | fgrep chronyd
_chrony 47331 <snip> chronyd: server (chronyd)
_chrony 64136 <snip> chronyd: NTS helper (chronyd)
root 56489 <snip> chronyd: PRV helper (chronyd)
What tool would show the calling command line? Would someone be able to
nudge me into the right direction?
You would need to save it before calling setproctitle (depending on
exactly what you want this for, you could possibly change the
setproctitle call to add the contents of argv)
Thank you Stuart, I will then not set the process title for the first
one (server). That seems the easiest way. Mmh or add it at the end as
you suggested (like pflogd).
I thought that maybe something similar to /proc/<proc id>/cmdline would
exists and I was just to thick to find it.
It was generally meant as an easy way to see the command line arguments
used to start a application, mostly for debugging purposes (httpd, sshd, ).