mirror of
https://github.com/freebsd/freebsd-src.git
synced 2024-12-04 10:19:26 +00:00
Minor cleanups to shutdown(8):
- Make the -k "don't actually halt" flag incompatible with the halt/reboot options -h, -p, and -r. - The -n "don't sync" option is ignored if -k is specified. Issue a warning message. - Compute the actual shutdown time written to /var/run/nologin correctly in the case of "now" being specified.
This commit is contained in:
parent
53a03d1c97
commit
1d4f4c0d21
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=48062
@ -30,7 +30,7 @@
|
|||||||
.\" SUCH DAMAGE.
|
.\" SUCH DAMAGE.
|
||||||
.\"
|
.\"
|
||||||
.\" @(#)shutdown.8 8.2 (Berkeley) 4/27/95
|
.\" @(#)shutdown.8 8.2 (Berkeley) 4/27/95
|
||||||
.\" $Id: shutdown.8,v 1.8 1998/12/11 10:35:38 bde Exp $
|
.\" $Id: shutdown.8,v 1.9 1999/01/11 09:07:42 asami Exp $
|
||||||
.\"
|
.\"
|
||||||
.Dd Dec 11, 1998
|
.Dd Dec 11, 1998
|
||||||
.Dt SHUTDOWN 8
|
.Dt SHUTDOWN 8
|
||||||
@ -71,6 +71,9 @@ system multi-user with logins disabled (for all but super-user).
|
|||||||
Prevent the normal
|
Prevent the normal
|
||||||
.Xr sync 2
|
.Xr sync 2
|
||||||
before stopping.
|
before stopping.
|
||||||
|
This option is ignored if
|
||||||
|
.Fl k
|
||||||
|
is specified.
|
||||||
.It Fl p
|
.It Fl p
|
||||||
The system will turn the power off after shutdown if it can.
|
The system will turn the power off after shutdown if it can.
|
||||||
.It Fl r
|
.It Fl r
|
||||||
@ -105,6 +108,14 @@ is supplied as an option, the warning message is read from the standard
|
|||||||
input.
|
input.
|
||||||
.El
|
.El
|
||||||
.Pp
|
.Pp
|
||||||
|
Only one of
|
||||||
|
.Fl h ,
|
||||||
|
.Fl k ,
|
||||||
|
.Fl p ,
|
||||||
|
and
|
||||||
|
.Fl r
|
||||||
|
can be specified at a time.
|
||||||
|
.Pp
|
||||||
At intervals, becoming more frequent as apocalypse approaches
|
At intervals, becoming more frequent as apocalypse approaches
|
||||||
and starting at ten hours before shutdown, warning messages are displayed
|
and starting at ten hours before shutdown, warning messages are displayed
|
||||||
on the terminals of all users logged in. Five minutes before
|
on the terminals of all users logged in. Five minutes before
|
||||||
|
@ -42,7 +42,7 @@ static const char copyright[] =
|
|||||||
static char sccsid[] = "@(#)shutdown.c 8.4 (Berkeley) 4/28/95";
|
static char sccsid[] = "@(#)shutdown.c 8.4 (Berkeley) 4/28/95";
|
||||||
#endif
|
#endif
|
||||||
static const char rcsid[] =
|
static const char rcsid[] =
|
||||||
"$Id: shutdown.c,v 1.16 1998/12/11 11:21:47 bde Exp $";
|
"$Id: shutdown.c,v 1.17 1999/06/18 14:26:07 ru Exp $";
|
||||||
#endif /* not lint */
|
#endif /* not lint */
|
||||||
|
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
@ -151,10 +151,14 @@ main(argc, argv)
|
|||||||
if (argc < 1)
|
if (argc < 1)
|
||||||
usage();
|
usage();
|
||||||
|
|
||||||
if (doreboot + dohalt + dopower > 1) {
|
if (killflg + doreboot + dohalt + dopower > 1) {
|
||||||
warnx("incompatible switches -h, -p and -r");
|
warnx("incompatible switches -h, -k, -p and -r");
|
||||||
usage();
|
usage();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (killflg && nosync)
|
||||||
|
warnx("option -n ignored with -k");
|
||||||
|
|
||||||
getoffset(*argv++);
|
getoffset(*argv++);
|
||||||
|
|
||||||
if (*argv) {
|
if (*argv) {
|
||||||
@ -383,12 +387,14 @@ getoffset(timearg)
|
|||||||
time_t now;
|
time_t now;
|
||||||
int this_year;
|
int this_year;
|
||||||
|
|
||||||
|
(void)time(&now);
|
||||||
|
|
||||||
if (!strcasecmp(timearg, "now")) { /* now */
|
if (!strcasecmp(timearg, "now")) { /* now */
|
||||||
offset = 0;
|
offset = 0;
|
||||||
|
shuttime = now;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
(void)time(&now);
|
|
||||||
if (*timearg == '+') { /* +minutes */
|
if (*timearg == '+') { /* +minutes */
|
||||||
if (!isdigit(*++timearg))
|
if (!isdigit(*++timearg))
|
||||||
badtime();
|
badtime();
|
||||||
|
Loading…
Reference in New Issue
Block a user