projects
/
grml-autoconfig.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
* Display "not using swap partition" only in live-cd mode.
[grml-autoconfig.git]
/
autoconfig.functions
diff --git
a/autoconfig.functions
b/autoconfig.functions
index
e69b041
..
5307d54
100755
(executable)
--- a/
autoconfig.functions
+++ b/
autoconfig.functions
@@
-4,7
+4,7
@@
# Authors: grml-team (grml.org), (c) Klaus Knopper <knopper@knopper.net>, (c) Michael Prokop <mika@grml.org>
# Bug-Reports: see http://grml.org/bugs/
# License: This file is licensed under the GPL v2.
# Authors: grml-team (grml.org), (c) Klaus Knopper <knopper@knopper.net>, (c) Michael Prokop <mika@grml.org>
# Bug-Reports: see http://grml.org/bugs/
# License: This file is licensed under the GPL v2.
-# Latest change:
Fre Nov 10 00:33:15
CET 2006 [mika]
+# Latest change:
Mon Nov 27 21:02:23
CET 2006 [mika]
################################################################################
# {{{ path, variables, signals, umask, zsh
################################################################################
# {{{ path, variables, signals, umask, zsh
@@
-89,6
+89,7
@@
mount_sys(){
# }}}
# {{{ Read in boot parameters
# }}}
# {{{ Read in boot parameters
+[ -f /proc/version ] || mount_proc # make sure we can access /proc/cmdline when sourcing this file too
CMDLINE="$(cat /proc/cmdline)"
[ -d /cdrom/bootparams/ ] && CMDLINE="$CMDLINE $(cat /cdrom/bootparams/* | tr '\n' ' ')"
# }}}
CMDLINE="$(cat /proc/cmdline)"
[ -d /cdrom/bootparams/ ] && CMDLINE="$CMDLINE $(cat /cdrom/bootparams/* | tr '\n' ' ')"
# }}}
@@
-315,7
+316,13
@@
config_hostname(){
# fstabuser (needed when running from harddisk with username != grml {{{
config_userfstab(){
# fstabuser (needed when running from harddisk with username != grml {{{
config_userfstab(){
- fstabuser=$(getent passwd 1000 | cut -d: -f1)
+ [ -r /etc/grml/autoconfig ] && . /etc/grml/autoconfig
+ if [ -n "$CONFIG_FSTAB_USER" ] ; then
+ fstabuser="$CONFIG_FSTAB_USER"
+ else
+ fstabuser=$(getent passwd 1000 | cut -d: -f1)
+ fi
+ # if not yet set fall back to default 'grml' user
[ -n "$fstabuser" ] || fstabuser='grml'
}
# }}}
[ -n "$fstabuser" ] || fstabuser='grml'
}
# }}}
@@
-897,7
+904,7
@@
check_partitions 1>/dev/null 2>&1 # avoid output "check_partitions:3: read-only
# }}}
# {{{ Enable DMA for all IDE drives now if not disabled
# }}}
# {{{ Enable DMA for all IDE drives now if not disabled
-# Notice: Already done by linuxrc,
maybe not on hd-installation
s
+# Notice: Already done by linuxrc,
but make sure it's done also on harddisk-installed system
s
config_dma(){
if checkbootparam "nodma"; then
ewarn "Skipping DMA accelleration as requested on boot commandline." ; eend 0
config_dma(){
if checkbootparam "nodma"; then
ewarn "Skipping DMA accelleration as requested on boot commandline." ; eend 0
@@
-920,9
+927,9
@@
fi
# {{{ Start creating /etc/fstab with HD partitions and USB SCSI devices now
config_fstab(){
# {{{ Start creating /etc/fstab with HD partitions and USB SCSI devices now
config_fstab(){
-NOSWAP="
"
-if checkbootparam "
noswap" -o checkbootparam "forensic
" ; then
- NOSWAP=
"yes"
+NOSWAP="
yes" # we do not use swap by default!
+if checkbootparam "
swap" -o checkbootparam "anyswap
" ; then
+ NOSWAP=
''
fi
if checkbootparam "nofstab" -o checkbootparam "forensic" ; then
fi
if checkbootparam "nofstab" -o checkbootparam "forensic" ; then
@@
-943,8
+950,8
@@
else
fi
fi
# Scan for swap, config, homedir
fi
fi
# Scan for swap, config, homedir
-if [ -z "$NOSWAP"
-o -z "$INSTALLED"
]; then
-
einfo "Checking for swap partition(s)
."
+if [ -z "$NOSWAP" ]; then
+
einfo "Searching for swap partition(s) as requested
."
fi
GRML_IMG=""
GRML_SWP=""
fi
GRML_IMG=""
GRML_SWP=""
@@
-957,7
+964,9
@@
if [ -n "$partitions" ]; then
case "$f" in swap)
eindent
if [ -n "$NOSWAP" ]; then
case "$f" in swap)
eindent
if [ -n "$NOSWAP" ]; then
- ewarn "Ignoring swap partition ${WHITE}$p${NORMAL} as requested." ; eend 0
+ if [ -z "$INSTALLED" ] ; then
+ ewarn "Ignoring swap partition ${WHITE}$p${NORMAL}. (Force usage via boot option 'swap', or execute grml-swapon)" ; eend 0
+ fi
else
case "$(dd if=$p bs=1 count=6 skip=4086 2>/dev/null)" in
S1SUSP|S2SUSP|pmdisk|[zZ]*)
else
case "$(dd if=$p bs=1 count=6 skip=4086 2>/dev/null)" in
S1SUSP|S2SUSP|pmdisk|[zZ]*)
@@
-1890,55
+1899,64
@@
fi
config_swraid(){
if [ -z "$INSTALLED" ] ; then
# notice: checkbootparam "forensic" is just for users who don't know how to really use the bootoption
config_swraid(){
if [ -z "$INSTALLED" ] ; then
# notice: checkbootparam "forensic" is just for users who don't know how to really use the bootoption
- if checkbootparam "noraid" -o checkbootparam "forensic" -o checkbootparam "raid=noautodetect" ; then
- ewarn "Skipping search for SW-RAID as requested on boot commandline." ; eend 0
+ if checkbootparam 'noraid' -o checkbootparam 'noswraid' -o \
+ checkbootparam 'forensic' -o checkbootparam 'raid=noautodetect' ; then
+ ewarn "Skipping SW-RAID code as requested on boot commandline." ; eend 0
else
if ! [ -x /sbin/mdadm ] ; then
eerror "mdadm not available, can not execute it." ; eend 1
else
else
if ! [ -x /sbin/mdadm ] ; then
eerror "mdadm not available, can not execute it." ; eend 1
else
+ # if ! egrep -qv '^(MAILADDR.*|#.*|)$' /etc/mdadm/mdadm.conf 2>>$DEBUG ; then
+ # find out whether we have a valid configuration file already
if ! grep -q ARRAY /etc/mdadm/mdadm.conf 2>>$DEBUG ; then
if ! grep -q ARRAY /etc/mdadm/mdadm.conf 2>>$DEBUG ; then
-
einfo "Creating /etc/mdadm/mdadm.conf
"
- [ -r /etc/mdadm/mdadm.conf ] && mv /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf.old
- /usr/share/mdadm/mkconf > /etc/mdadm/mdadm.conf ; eend $?
- else
- ewarn "/etc/mdadm/mdadm.conf looks like a configured mdadm setup, will not touch it." ; eend 0
+
einfo "Creating /etc/mdadm/mdadm.conf for use with mdadm.
"
+
[ -r /etc/mdadm/mdadm.conf ] && mv /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf.old
+
MDADM_MAILADDR__='root'
/usr/share/mdadm/mkconf > /etc/mdadm/mdadm.conf ; eend $?
+
else
+
ewarn "/etc/mdadm/mdadm.conf looks like a configured mdadm setup, will not touch it." ; eend 0
fi
fi
- einfo "Searching for software RAID arrays (disable via bootoption noraid):"
- eindent
- IFSOLD=${IFS:-}
- IFS='
+ if ! checkbootparam 'swraid' ; then
+ eindent
+ einfo "Just run 'Start mdadm-raid' to assemble md arrays or boot using 'swraid' as bootoption for autostart."
+ eoutdent
+ else
+ einfo "Bootoption swraid found. Searching for software RAID arrays:"
+ eindent
+ IFSOLD=${IFS:-}
+ IFS='
'
'
- for line in $(mdadm --assemble --scan --auto=yes --symlink=no 2>&1) ; do
- case $line in
- *'No arrays found'*)
- ewarn "$line" ; eend 0
- ;;
- *)
- einfo "$line" ; eend 0
- ;;
- esac
- done
- IFS=$IFSOLD
- eoutdent
+
for line in $(mdadm --assemble --scan --auto=yes --symlink=no 2>&1) ; do
+
case $line in
+
*'No arrays found'*)
+
ewarn "$line" ; eend 0
+
;;
+
*)
+
einfo "$line" ; eend 0
+
;;
+
esac
+
done
+
IFS=$IFSOLD
+
eoutdent
- if [ -r /proc/mdstat ] ; then
- eindent
- MDSTAT=$(grep '^md[0-9]' /proc/mdstat)
- if [ -z "$MDSTAT" ] ; then
- ewarn "No active arrays found" ; eend 0
- else
- IFSOLD=${IFS:-}
- IFS='
+
if [ -r /proc/mdstat ] ; then
+
eindent
+
MDSTAT=$(grep '^md[0-9]' /proc/mdstat)
+
if [ -z "$MDSTAT" ] ; then
+
ewarn "No active arrays found" ; eend 0
+
else
+
IFSOLD=${IFS:-}
+
IFS='
'
'
- for line in $(grep '^md[0-9]' /proc/mdstat) ; do
- einfo "active arrays: $line" ; eend 0
- done
- IFS=$IFSOLD
- fi
- eoutdent
- fi
+ for line in $(grep '^md[0-9]' /proc/mdstat) ; do
+ einfo "active arrays: $line" ; eend 0
+ done
+ IFS=$IFSOLD
+ fi
+ eoutdent
+ fi # /proc/mdstat
+ fi # bootoption swraid
fi # is /sbin/mdadm executable?
fi # check for bootoptions
fi # is /sbin/mdadm executable?
fi # check for bootoptions