X-Git-Url: http://git.ipfire.org/?a=blobdiff_plain;f=man%2Fpam_systemd.xml;h=e5e14c12d7f8250f24d6792f0cc22437dc9d01f5;hb=2691d65c5a7b6fbf5807e2e586f1979292d511bc;hp=f45631688c9f216a4286d7bb3fc6a26a526615be;hpb=0133d5553a1b24185f251ebbc4d873606118780f;p=thirdparty%2Fsystemd.git diff --git a/man/pam_systemd.xml b/man/pam_systemd.xml index f45631688c9..e5e14c12d7f 100644 --- a/man/pam_systemd.xml +++ b/man/pam_systemd.xml @@ -4,23 +4,6 @@ @@ -28,15 +11,6 @@ pam_systemd systemd - - - - Developer - Lennart - Poettering - lennart@poettering.net - - @@ -108,42 +82,45 @@ - - - Takes a string argument which sets the session - class. The XDG_SESSION_CLASS environmental variable takes - precedence. One of - user, - greeter, - lock-screen or - background. See - sd_session_get_class3 - for details about the session class. + class= + + Takes a string argument which sets the session class. The XDG_SESSION_CLASS + environment variable (see below) takes precedence. One of user, greeter, + lock-screen or background. See + sd_session_get_class3 for + details about the session class. - - - Takes a string argument which sets the session - type. The XDG_SESSION_TYPE environmental variable takes - precedence. One of - unspecified, - tty, - x11, - wayland or - mir. See - sd_session_get_type3 - for details about the session type. + type= + + Takes a string argument which sets the session type. The XDG_SESSION_TYPE + environment variable (see below) takes precedence. One of unspecified, + tty, x11, wayland or mir. See + sd_session_get_type3 for + details about the session type. - + desktop= + + Takes a single, short identifier string for the desktop environment. The + XDG_SESSION_DESKTOP environment variable (see below) takes precedence. This may be used to + indicate the session desktop used, where this applies and if this information is available. For example: + GNOME, or KDE. It is recommended to use the same identifiers and + capitalization as for $XDG_CURRENT_DESKTOP, as defined by the Desktop Entry + Specification. (However, note that the option only takes a single item, and not a colon-separated list + like $XDG_CURRENT_DESKTOP.) See + sd_session_get_desktop3 for + further details. + - Takes an optional - boolean argument. If yes or without - the argument, the module will log - debugging information as it - operates. + + debug= + + Takes an optional boolean argument. If yes or without the argument, the module will log + debugging information as it operates. @@ -157,20 +134,20 @@ Environment - The following environment variables are set for the - processes of the user's session: + The following environment variables are initialized by the module and available to the processes of the + user's session: $XDG_SESSION_ID - A session identifier, suitable to be used in - filenames. The string itself should be considered opaque, - although often it is just the audit session ID as reported by - /proc/self/sessionid. Each ID will be - assigned only once during machine uptime. It may hence be used - to uniquely label files or other resources of this - session. + A short session identifier, suitable to be used in filenames. The string itself should be + considered opaque, although often it is just the audit session ID as reported by + /proc/self/sessionid. Each ID will be assigned only once during machine uptime. It may + hence be used to uniquely label files or other resources of this session. Combine this ID with the boot + identifier, as returned by + sd_id128_get_boot3, for a + globally unique identifier for the current session. @@ -200,45 +177,31 @@ - The following environment variables are read by the module - and may be used by the PAM service to pass metadata to the - module: + The following environment variables are read by the module and may be used by the PAM service to pass + metadata to the module. If these variables are not set when the PAM module is invoked but can be determined + otherwise they are set by the module, so that these variables are initialized for the session and applications if + known at all. $XDG_SESSION_TYPE - The session type. This may be used instead of - on the module parameter line, and is - usually preferred. + The session type. This may be used instead of session= on the module parameter + line, and is usually preferred. $XDG_SESSION_CLASS - The session class. This may be used instead of - on the module parameter line, and is - usually preferred. + The session class. This may be used instead of class= on the module parameter + line, and is usually preferred. $XDG_SESSION_DESKTOP - A single, short identifier string for the - desktop environment. This may be used to indicate the session - desktop used, where this applies and if this information is - available. For example: GNOME, or - KDE. It is recommended to use the same - identifiers and capitalization as for - $XDG_CURRENT_DESKTOP, as defined by the - Desktop - Entry Specification. (However, note that - $XDG_SESSION_DESKTOP only takes a single - item, and not a colon-separated list like - $XDG_CURRENT_DESKTOP.) See - sd_session_get_desktop3 - for more details. + The desktop identifier. This may be used instead of desktop= on the module + parameter line, and is usually preferred. @@ -255,8 +218,65 @@ for, if any. (Only applies to seats with a VT available, such as seat0) + + + If not set, pam_systemd will initialize + $XDG_SEAT and $XDG_VTNR + based on the $DISPLAY variable (if the latter is set). + + + + Session limits + + PAM modules earlier in the stack, that is those that come before pam_systemd.so, + can set session scope limits using the PAM context objects. The data for these objects is provided as NUL-terminated C strings + and maps directly to the respective unit resource control directives. Note that these limits apply to individual sessions of the user, + they do not apply to all user processes as a combined whole. In particular, the per-user user@.service unit instance, + which runs the systemd --user manager process and its children, and is tracked outside of any session, being shared + by all the user's sessions, is not covered by these limits. + + + See + systemd.resource-control5 for more information about the resources. + Also, see pam_set_data3 for additional information about how to set + the context objects. + + + + + systemd.memory_max + + Sets unit MemoryMax=. + + + systemd.tasks_max + + Sets unit TasksMax=. + + + + systemd.cpu_weight + + Sets unit CPUWeight=. + + + + systemd.io_weight + + Sets unit IOWeight=. + + + Example data as can be provided from an another PAM module: + +pam_set_data(handle, "systemd.memory_max", (void *)"200M", cleanup); +pam_set_data(handle, "systemd.tasks_max", (void *)"50", cleanup); +pam_set_data(handle, "systemd.cpu_weight", (void *)"100", cleanup); +pam_set_data(handle, "systemd.io_weight", (void *)"340", cleanup); + + +