]> CyberLeo.Net >> Repos - FreeBSD/releng/8.1.git/blob - sbin/reboot/nextboot.sh
Copy stable/8 to releng/8.1 in preparation for 8.1-RC1.
[FreeBSD/releng/8.1.git] / sbin / reboot / nextboot.sh
1 #! /bin/sh
2 #
3 # Copyright 2002. Gordon Tetlow.
4 # gordon@FreeBSD.org
5 #
6 # $FreeBSD$
7
8 delete="NO"
9 force="NO"
10 nextboot_file="/boot/nextboot.conf"
11
12 display_usage() {
13         echo "Usage: nextboot [-f] [-o options] -k kernel"
14         echo "       nextboot -D"
15 }
16
17 while getopts "Dfk:o:" argument ; do
18         case "${argument}" in
19         D)
20                 delete="YES"
21                 ;;
22         f)
23                 force="YES"
24                 ;;
25         k)
26                 kernel="${OPTARG}"
27                 ;;
28         o)
29                 kernel_options="${OPTARG}"
30                 ;;
31         *)
32                 display_usage
33                 exit 1
34                 ;;
35         esac
36 done
37
38 if [ ${delete} = "YES" ]; then
39         rm -f ${nextboot_file}
40         exit 0
41 fi
42
43 if [ "xxx${kernel}" = "xxx" ]; then
44         display_usage
45         exit 1
46 fi
47
48 if [ ${force} = "NO" -a ! -d /boot/${kernel} ]; then
49         echo "Error: /boot/${kernel} doesn't exist. Use -f to override."
50         exit 1
51 fi
52
53 cat > ${nextboot_file} << EOF
54 nextboot_enable="YES"
55 kernel="${kernel}"
56 kernel_options="${kernel_options}"
57 EOF