diff options
| author | Alejandro Colomar <alx@kernel.org> | 2023-08-17 22:47:16 +0200 |
|---|---|---|
| committer | Alejandro Colomar <alx@kernel.org> | 2023-08-17 23:12:31 +0200 |
| commit | 0569afbbccd6de28d1bacd13471a679ad2674aa1 (patch) | |
| tree | e0286e2d8dee88465fc9e2b31697573af0aa10cf /man5/proc_pid_exe.5 | |
| parent | 29597f1e7ecd58e8239a1650c6bdea0517f913af (diff) | |
| parent | 92cdcec79df039146e5ed42cac23cd4b7e3f9e25 (diff) | |
| download | man-pages-0569afbbccd6.tar.gz | |
proc*.5: Make sashimi
[Merge tag 'proc-sashimi-v1' of <git://www.alejandro-colomar.es/src/alx/linux/man-pages/man-pages.git>]
proc(5) was a huge page, which was quite hard to maintain, extend, read,
and refer to. Split the page into small pages for the different
directories and files within /proc. Some pages are still too large
(e.g., proc_sys(5)), and will some day be split even more.
This split keeps the contents of the original page, without modifying
anything; not even the formatting.
The only thing that has been modified in this patches, is that
directories are consistently represented with a trailing slash.
For the file name of the pages, we've used the name of the interface
(e.g., /proc/pid/), removing the leading and trailing '/'s and then
translating the remaining ones as `tr / _` (e.g., proc_pid.5). The
title of the pages (TH) is consistent with this. The NAME of the pages,
however, is the actual path name of the interfaces.
The man page references have not been updated, as that was a more
complex and tedious work, so I expect that they'll be slowly updated as
we and users find out.
Link: <https://lore.kernel.org/linux-man/e3a5bc09-e835-9819-4aaa-12959495ac59@kernel.org/T/>
Acked-by: Oskari Pirhonen <xxc3ncoredxx@gmail.com>
Acked-by: Günther Noack <gnoack@google.com>
Acked-by: "G. Branden Robinson" <g.branden.robinson@gmail.com>
Cc: Brian Inglis <Brian.Inglis@Shaw.ca>
Cc: Ingo Schwarze <schwarze@usta.de>
Cc: Colin Watson <cjwatson@debian.org>
Signed-off-by: Alejandro Colomar <alx@kernel.org>
Diffstat (limited to 'man5/proc_pid_exe.5')
| -rw-r--r-- | man5/proc_pid_exe.5 | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/man5/proc_pid_exe.5 b/man5/proc_pid_exe.5 new file mode 100644 index 0000000000..e308677f1a --- /dev/null +++ b/man5/proc_pid_exe.5 @@ -0,0 +1,59 @@ +.\" Copyright (C) 1994, 1995, Daniel Quinlan <quinlan@yggdrasil.com> +.\" Copyright (C) 2002-2008, 2017, Michael Kerrisk <mtk.manpages@gmail.com> +.\" Copyright (C) 2023, Alejandro Colomar <alx@kernel.org> +.\" +.\" SPDX-License-Identifier: GPL-3.0-or-later +.\" +.TH proc_pid_exe 5 (date) "Linux man-pages (unreleased)" +.SH NAME +/proc/pid/exe \- symbolic link to program pathname +.SH DESCRIPTION +.TP +.IR /proc/ pid /exe +Under Linux 2.2 and later, this file is a symbolic link +containing the actual pathname of the executed command. +This symbolic link can be dereferenced normally; attempting to open +it will open the executable. +You can even type +.IR /proc/ pid /exe +to run another copy of the same executable that is being run by +process +.IR pid . +If the pathname has been unlinked, the symbolic link will contain the +string \[aq]\ (deleted)\[aq] appended to the original pathname. +.\" The following was still true as at kernel 2.6.13 +In a multithreaded process, the contents of this symbolic link +are not available if the main thread has already terminated +(typically by calling +.BR pthread_exit (3)). +.IP +Permission to dereference or read +.RB ( readlink (2)) +this symbolic link is governed by a ptrace access mode +.B PTRACE_MODE_READ_FSCREDS +check; see +.BR ptrace (2). +.IP +Under Linux 2.0 and earlier, +.IR /proc/ pid /exe +is a pointer to the binary which was executed, +and appears as a symbolic link. +A +.BR readlink (2) +call on this file under Linux 2.0 returns a string in the format: +.IP +.in +4n +.EX +[device]:inode +.EE +.in +.IP +For example, [0301]:1502 would be inode 1502 on device major 03 (IDE, +MFM, etc. drives) minor 01 (first partition on the first drive). +.IP +.BR find (1) +with the +.I \-inum +option can be used to locate the file. +.SH SEE ALSO +.BR proc (5) |
