blob: c8df159483a2c965599d164e205ca8c4cd75481e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
|
#! /bin/sh
set -e
update_param() {
eval old=\"'$'$1\"
eval new=\"'$'new_$1\"
if test "$old" = "$new"; then
return
fi
if test -z "$old"; then
grep -Eq "^ *$1=" "$INITCONFFILE" || echo "$1=" \
>> "$INITCONFFILE"
fi
sed -e "s/^ *$1=.*/$1=$new/" < $INITCONFFILE > $INITCONFFILE.$$
mv -f $INITCONFFILE.$$ $INITCONFFILE
}
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
configure)
# create smaller initrd.img files for kdump use
/etc/kernel/postinst.d/kdump-tools $(uname -r) > /dev/null 2>&1
# Customize crashkernel= value according to architecture
ARCH="$(arch)"
DEF_PRESET="384M-:128M"
PPC_PRESET="2G-4G:320M,4G-32G:512M,32G-64G:1024M,64G-128G:2048M,128G-:4096M@32M"
case "$ARCH" in
s390x)
HAS_CRASHKERNEL="$(grep crashkernel /etc/zipl.conf)" || true
if test -z "$HAS_CRASHKERNEL"; then
sed -i "/parameters/{s|\"$| crashkernel=${DEF_PRESET}\"|}" /etc/zipl.conf
zipl
fi
HAS_CIO="$(grep cio_ignore /etc/default/kdump-tools)" || true
if test -z "$HAS_CIO"; then
CIO_IGNORE="$(cio_ignore -u -k)"
sed -i "s/\#KDUMP_CMDLINE_APPEND/KDUMP_CMDLINE_APPEND/" /etc/default/kdump-tools
sed -i "/KDUMP_CMDLINE_APPEND/{s|\"$| ${CIO_IGNORE}\"|}" /etc/default/kdump-tools
fi
;;
ppc64el)
sed -i "s/UNCONFIGURED/$PPC_PRESET/" /etc/default/grub.d/kdump-tools.cfg
;;
*)
sed -i "s/UNCONFIGURED/$DEF_PRESET/" /etc/default/grub.d/kdump-tools.cfg
;;
esac
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# Handle debconf
. /usr/share/debconf/confmodule
INITCONFFILE=/etc/default/kdump-tools
# ------------------------- Debconf questions start ---------------------
db_get kdump-tools/use_kdump || RET=true
if [ "${RET}" = "true" ]; then
new_USE_KDUMP="1"
else
new_USE_KDUMP="0"
fi
update_param USE_KDUMP
# ------------------------- Debconf questions end ---------------------
if [ -x /usr/sbin/update-grub ] && [ -e /boot/grub/grub.cfg ]; then
update-grub
fi
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0
|