]>
Commit | Line | Data |
---|---|---|
07ca0d93 AF |
1 | #!/bin/bash |
2 | ############################################################################ | |
3 | # # | |
4 | # This file is part of the IPFire Firewall. # | |
5 | # # | |
6 | # IPFire is free software; you can redistribute it and/or modify # | |
7 | # it under the terms of the GNU General Public License as published by # | |
8 | # the Free Software Foundation; either version 2 of the License, or # | |
9 | # (at your option) any later version. # | |
10 | # # | |
11 | # IPFire is distributed in the hope that it will be useful, # | |
12 | # but WITHOUT ANY WARRANTY; without even the implied warranty of # | |
13 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # | |
14 | # GNU General Public License for more details. # | |
15 | # # | |
16 | # You should have received a copy of the GNU General Public License # | |
17 | # along with IPFire; if not, write to the Free Software # | |
18 | # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # | |
19 | # # | |
b6785f2e | 20 | # Copyright (C) 2010 IPFire-Team <info@ipfire.org>. # |
07ca0d93 AF |
21 | # # |
22 | ############################################################################ | |
23 | # | |
24 | . /opt/pakfire/lib/functions.sh | |
25 | extract_files | |
26 | # | |
2a224f6c | 27 | KVER=2.6.32.61 |
707b4fa1 AF |
28 | ROOT=`mount | grep " / " | cut -d" " -f1` |
29 | ROOTUUID=`blkid -c /dev/null -sUUID $ROOT | cut -d'"' -f2` | |
30 | if [ ! -z $ROOTUUID ]; then | |
31 | ROOT="UUID=$ROOTUUID" | |
32 | fi | |
33 | ||
07ca0d93 AF |
34 | MOUNT=`grep "kernel" /boot/grub/grub.conf | tail -n 1` |
35 | # Nur den letzten Parameter verwenden | |
36 | echo $MOUNT > /dev/null | |
37 | MOUNT=$_ | |
707b4fa1 AF |
38 | if [ ! $MOUNT == "rw" ]; then |
39 | MOUNT="ro" | |
40 | fi | |
41 | ||
07ca0d93 AF |
42 | ENTRY=`grep "savedefault" /boot/grub/grub.conf | tail -n 1` |
43 | # Nur den letzten Parameter verwenden | |
44 | echo $ENTRY > /dev/null | |
45 | let ENTRY=$_+1 | |
46 | # | |
47 | # backup grub.conf | |
48 | # | |
4411715a | 49 | cp /boot/grub/grub.conf /boot/grub/grub-backup-$KVER-xen.conf |
07ca0d93 AF |
50 | # |
51 | # Add new Entry to grub.conf | |
52 | # | |
53 | echo "" >> /boot/grub/grub.conf | |
500f7b48 | 54 | echo "title IPFire (legacy XEN-Kernel $KVER)" >> /boot/grub/grub.conf |
1a10fcdc | 55 | echo " kernel /vmlinuz-$KVER-ipfire-xen root=$ROOT panic=10 console=xvc0 $MOUNT" >> /boot/grub/grub.conf |
4411715a | 56 | echo " initrd /ipfirerd-$KVER-xen.img" >> /boot/grub/grub.conf |
aa730400 | 57 | echo "# savedefault $ENTRY" >> /boot/grub/grub.conf |
d876f9c3 AF |
58 | # |
59 | # Test if we running already on xen | |
60 | # | |
aa730400 | 61 | uname -r | grep "ipfire-xen"; |
d876f9c3 AF |
62 | if [ ${?} = 0 ]; then |
63 | #Xen Kernel is active | |
64 | #Set grub default entry to this kernel | |
738e90f6 | 65 | sed -i -e "s|^default .*|default $ENTRY|g" /boot/grub/grub.conf |
b6785f2e AF |
66 | #Remove ramdisk of normal kernel (not enough space) |
67 | rm -f /boot/ipfirerd-$KVER.img | |
d876f9c3 AF |
68 | else |
69 | #Normal Kernel | |
70 | #pygrub crash with "default saved" | |
aa730400 | 71 | sed -i -e "s|^default saved|#default saved|g" /boot/grub/grub.conf |
d876f9c3 | 72 | fi |
07ca0d93 AF |
73 | # |
74 | # Made initramdisk | |
75 | # | |
bb198266 | 76 | /sbin/dracut --force --verbose /boot/ipfirerd-$KVER-xen.img $KVER-ipfire-xen |
07ca0d93 AF |
77 | # |
78 | # Create new module depency | |
79 | # | |
4411715a | 80 | depmod -a $KVER-ipfire-xen |