Detect Linux Runlevel
Lew Pitcher
lew.pitcher at digitalfreehold.ca
Mon Dec 5 17:45:57 EST 2016
On Monday December 5 2016 17:24, in comp.lang.python, "Chris Angelico"
<rosuav at gmail.com> wrote:
> On Tue, Dec 6, 2016 at 8:38 AM, Lew Pitcher
> <lew.pitcher at digitalfreehold.ca> wrote:
>> The OP asked for the runlevel, not the systemd target.
>
> Runlevels don't exist in systemd. And systemd targets don't exist in
> Upstart. The question "what runlevel are we in" does not make sense
> unless you're using an init system that works on the basis of
> runlevels (eg sysvinit).
I repeat: The OP asked for the runlevel, not the systemd target.
That should tell you that an answer involving systemd "does not make sense".
To the OP: as others have said, the file
/var/run/utmp
contains various records, including the RUN_LVL (runlevel) record. You can
find some documentation in utmp(3), including a record layout, and an values
list.
I don't know that python includes a standard or builtin method to parse the
utmp file; to retrieve the runlevel, you may have to code your own access
routine as part of your python code, or resort to invoking an external
program like who(1).
HTH
--
Lew Pitcher
"In Skills, We Trust"
PGP public key available upon request
More information about the Python-list
mailing list