//po4a: entry man manual
////
Copyright (C) 1998-2006 Miquel van Smoorenburg.
Copyright (C) 2012 Karel Zak <kzak@redhat.com>

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://gnu.org/licenses/>.
////
ifdef::neverdefined[---]

= sulogin(8)
:doctype: manpage
:man manual: System Administration
:man source: util-linux {release-version}
:page-layout: base
:command: sulogin
:asterisk: *

== NAME

sulogin - single-user login

== SYNOPSIS

*sulogin* [options] [_tty_]

== DESCRIPTION

*sulogin* is invoked by *init* when the system goes into single-user mode.

The user is prompted:

Give root password for system maintenance (or type Control-D for normal startup):

If the root account is locked and *--force* is specified, no password is required.

*sulogin* will be connected to the current terminal, or to the optional _tty_ device that can be specified on the command line (typically _/dev/console_).

When the user exits from the single-user shell, or presses control-D at the prompt, the system will continue to boot.

== OPTIONS

*-e*, *--force*::
If the default method of obtaining the root password from the system via *getpwnam*(3) fails, then examine _/etc/passwd_ and _/etc/shadow_ to get the password. If these files are damaged or nonexistent, or when root account is locked by '!' or '{asterisk}' at the begin of the password then *sulogin* will *start a root shell without asking for a password*.
//TRANSLATORS: Keep {asterisk} untranslated.
+
Only use the *-e* option if you are sure the console is physically protected against unauthorized access.

*-p*, *--login-shell*::
Specifying this option causes *sulogin* to start the shell process as a login shell.

*-t*, *--timeout* _seconds_::
Specify the maximum amount of time to wait for user input. By default, *sulogin* will wait forever.

include::man-common/help-version.adoc[]

== ENVIRONMENT

*sulogin* looks for the environment variable *SUSHELL* or *sushell* to determine what shell to start. If the environment variable is not set, it will try to execute root's shell from _/etc/passwd_. If that fails, it will fall back to _/bin/sh_.

== AUTHORS

*sulogin* was written by Miquel van Smoorenburg for sysvinit and later ported to util-linux by Dave Reisner and Karel Zak.

include::man-common/bugreports.adoc[]

include::man-common/footer.adoc[]

ifdef::translation[]
include::man-common/translation.adoc[]
endif::[]
