summaryrefslogtreecommitdiffstats
path: root/rescue/tree/ka
diff options
context:
space:
mode:
Diffstat (limited to 'rescue/tree/ka')
-rw-r--r--rescue/tree/ka/gen_modules_conf.pl191
-rw-r--r--rescue/tree/ka/hostnames225
-rwxr-xr-xrescue/tree/ka/install.sh641
-rwxr-xr-xrescue/tree/ka/ka-d-clientbin399376 -> 0 bytes
-rwxr-xr-xrescue/tree/ka/make_initrd44
-rwxr-xr-xrescue/tree/ka/setup_network.sh80
-rw-r--r--rescue/tree/ka/tftpserver1
7 files changed, 0 insertions, 1182 deletions
diff --git a/rescue/tree/ka/gen_modules_conf.pl b/rescue/tree/ka/gen_modules_conf.pl
deleted file mode 100644
index ae6c5bec6..000000000
--- a/rescue/tree/ka/gen_modules_conf.pl
+++ /dev/null
@@ -1,191 +0,0 @@
-$kinds2all_modules = {
- 'usb' => [
- 'usb-uhci',
- 'usb-ohci',
- 'ehci-hcd'
- ],
- 'network' => [
- '3c501',
- '3c503',
- '3c505',
- '3c507',
- '3c509',
- '3c515',
- '3c90x',
- '82596',
- 'abyss',
- 'ac3200',
- 'acenic',
- 'aironet4500_card',
- 'at1700',
- 'atp',
- 'com20020-pci',
- 'cs89x0',
- 'de600',
- 'de620',
- 'defxx',
- 'depca',
- 'dgrs',
- 'dmfe',
- 'e100',
- 'e2100',
- 'eepro',
- 'eepro100',
- 'eexpress',
- 'epic100',
- 'eth16i',
- 'ewrk3',
- 'hamachi',
- 'hp',
- 'hp-plus',
- 'hp100',
- 'ibmtr',
- 'lance',
- 'natsemi',
- 'ne',
- 'ne2k-pci',
- 'ni5010',
- 'ni52',
- 'ni65',
- 'nvnet',
- 'olympic',
- 'pcnet32',
- 'plip',
- 'rcpci',
- 'sb1000',
- 'sis900',
- 'smc-ultra',
- 'smc9194',
- 'starfire',
- 'tlan',
- 'tmspci',
- 'tulip',
- 'via-rhine',
- 'wd',
- 'winbond-840',
- 'forcedeth',
- 'fealnx',
- '3c990',
- '3c990fx',
- 'b44',
- 'bcm4400',
- 'skfp',
- 'tc35815',
- 'lanstreamer',
- 'farsync',
- 'sdladrv',
- 'prism2_plx',
- 'iph5526',
- '3c59x',
- '8139too',
- '8139cp',
- 'sundance',
- 'catc',
- 'CDCEther',
- 'kaweth',
- 'pegasus',
- 'rtl8150',
- 'usbnet',
- 'dl2k',
- 'myri_sbus',
- 'yellowfin',
- 'ns83820',
- 'r8169',
- 'tg3',
- 'e1000',
- 'sk98lin',
- 'bcm5820',
- 'bcm5700'
- ],
- 'scsi' => [
- '3w-xxxx',
- 'AM53C974',
- 'BusLogic',
- 'NCR53c406a',
- 'a100u2w',
- 'advansys',
- 'aha152x',
- 'aha1542',
- 'aha1740',
- 'atp870u',
- 'dc395x_trm',
- 'dtc',
- 'g_NCR5380',
- 'in2000',
- 'initio',
- 'pas16',
- 'pci2220i',
- 'psi240i',
- 'fdomain',
- 'qla1280',
- 'qla2x00',
- 'qlogicfas',
- 'qlogicfc',
- 'seagate',
- 'wd7000',
- 'sim710',
- 'sym53c416',
- 't128',
- 'tmscsim',
- 'u14-34f',
- 'ultrastor',
- 'eata',
- 'eata_pio',
- 'eata_dma',
- 'mptscsih',
- 'nsp32',
- 'ata_piix',
- 'sata_promise',
- 'sata_svw',
- 'sata_via',
- '53c7,8xx',
- 'aic7xxx',
- 'aic7xxx_old',
- 'aic79xx',
- 'pci2000',
- 'qlogicisp',
- 'sym53c8xx',
- 'lpfcdd',
- 'DAC960',
- 'dpt_i2o',
- 'megaraid',
- 'aacraid',
- 'cciss',
- 'cpqarray',
- 'gdth',
- 'i2o_block',
- 'cpqfc',
- 'qla2200',
- 'qla2300',
- 'pdc-ultra',
- 'ips',
- 'ppa',
- 'imm'
- ]
- };
-my @l = map { /^(\S+)\s*:/ ? $1 : () } `lspcidrake`;
-
-my %kinds2modules = map {
- $_ => [ intersection(\@l, $kinds2all_modules->{$_}) ];
-} qw(usb scsi);
-
-$kinds2modules{network} = [
- grep {
- my $l = $_;
- scalar grep { $_ eq $l } @{ $kinds2all_modules->{network} }
- } @l
-];
-
-if (my @scsi = @{$kinds2modules{scsi}}) {
- print "probeall scsi_hostadapter ", join(" ", @scsi), "\n";
-}
-if (my @usb = @{$kinds2modules{usb}}) {
- print "probeall usb-interface ", join(" ", @usb), "\n";
-}
-my $eth = 0;
-foreach (@{$kinds2modules{network}}) {
- print "alias eth$eth $_\n";
- $eth++;
-}
-
-sub intersection { my (%l, @m); @l{@{shift @_}} = (); foreach (@_) { @m = grep { exists $l{$_} } @$_; %l = (); @l{@m} = () } keys %l }
diff --git a/rescue/tree/ka/hostnames b/rescue/tree/ka/hostnames
deleted file mode 100644
index e30fac24a..000000000
--- a/rescue/tree/ka/hostnames
+++ /dev/null
@@ -1,225 +0,0 @@
-icluster1 129.88.96.1
-icluster2 129.88.96.2
-icluster3 129.88.96.3
-icluster4 129.88.96.4
-icluster5 129.88.96.51
-icluster6 129.88.96.6
-icluster7 129.88.96.7
-icluster8 129.88.96.8
-icluster9 129.88.96.9
-icluster10 129.88.96.10
-icluster11 129.88.96.11
-icluster12 129.88.96.12
-icluster13 129.88.96.13
-icluster14 129.88.96.14
-icluster15 129.88.96.15
-icluster16 129.88.96.16
-icluster17 129.88.96.17
-icluster18 129.88.96.18
-icluster19 129.88.96.19
-icluster20 129.88.96.20
-icluster21 129.88.96.21
-icluster22 129.88.96.22
-icluster23 129.88.96.23
-icluster24 129.88.96.24
-icluster25 129.88.96.25
-icluster26 129.88.96.26
-icluster27 129.88.96.27
-icluster28 129.88.96.28
-icluster29 129.88.96.29
-icluster30 129.88.96.30
-icluster31 129.88.96.31
-icluster32 129.88.96.32
-icluster33 129.88.96.33
-icluster34 129.88.96.34
-icluster35 129.88.96.35
-icluster36 129.88.96.36
-icluster37 129.88.96.37
-icluster38 129.88.96.38
-icluster39 129.88.96.39
-icluster40 129.88.96.40
-icluster41 129.88.96.41
-icluster42 129.88.96.42
-icluster43 129.88.96.43
-icluster44 129.88.96.44
-icluster45 129.88.96.45
-icluster46 129.88.96.46
-icluster47 129.88.96.47
-icluster48 129.88.96.48
-icluster49 129.88.96.49
-icluster50 129.88.96.50
-icluster51 129.88.96.51
-icluster52 129.88.96.52
-icluster53 129.88.96.53
-icluster54 129.88.96.54
-icluster55 129.88.96.55
-icluster56 129.88.96.56
-icluster57 129.88.96.57
-icluster58 129.88.96.58
-icluster59 129.88.96.59
-icluster60 129.88.96.60
-icluster61 129.88.96.61
-icluster62 129.88.96.62
-icluster63 129.88.96.63
-icluster64 129.88.96.64
-icluster65 129.88.96.65
-icluster66 129.88.96.66
-icluster67 129.88.96.67
-icluster68 129.88.96.68
-icluster69 129.88.96.69
-icluster70 129.88.96.70
-icluster71 129.88.96.71
-icluster72 129.88.96.72
-icluster73 129.88.96.73
-icluster74 129.88.96.74
-icluster75 129.88.96.75
-icluster76 129.88.96.76
-icluster77 129.88.96.77
-icluster78 129.88.96.78
-icluster79 129.88.96.79
-icluster80 129.88.96.80
-icluster81 129.88.96.81
-icluster82 129.88.96.82
-icluster83 129.88.96.83
-icluster84 129.88.96.84
-icluster85 129.88.96.85
-icluster86 129.88.96.86
-icluster87 129.88.96.87
-icluster88 129.88.96.88
-icluster89 129.88.96.89
-icluster90 129.88.96.90
-icluster91 129.88.96.91
-icluster92 129.88.96.92
-icluster93 129.88.96.93
-icluster94 129.88.96.94
-icluster95 129.88.96.95
-icluster96 129.88.96.96
-icluster97 129.88.96.97
-icluster98 129.88.96.98
-icluster99 129.88.96.99
-icluster100 129.88.96.100
-icluster101 129.88.96.101
-icluster102 129.88.96.102
-icluster103 129.88.96.103
-icluster104 129.88.96.104
-icluster105 129.88.96.105
-icluster106 129.88.96.106
-icluster107 129.88.96.107
-icluster108 129.88.96.108
-icluster109 129.88.96.109
-icluster110 129.88.96.110
-icluster111 129.88.96.111
-icluster112 129.88.96.112
-icluster113 129.88.96.113
-icluster114 129.88.96.114
-icluster115 129.88.96.115
-icluster116 129.88.96.116
-icluster117 129.88.96.117
-icluster118 129.88.96.118
-icluster119 129.88.96.119
-icluster120 129.88.96.120
-icluster121 129.88.96.121
-icluster122 129.88.96.122
-icluster123 129.88.96.123
-icluster124 129.88.96.124
-icluster125 129.88.96.125
-icluster126 129.88.96.126
-icluster127 129.88.96.127
-icluster128 129.88.96.128
-icluster129 129.88.96.129
-icluster130 129.88.96.130
-icluster131 129.88.96.131
-icluster132 129.88.96.132
-icluster133 129.88.96.133
-icluster134 129.88.96.134
-icluster135 129.88.96.135
-icluster136 129.88.96.136
-icluster137 129.88.96.137
-icluster138 129.88.96.138
-icluster139 129.88.96.139
-icluster140 129.88.96.140
-icluster141 129.88.96.141
-icluster142 129.88.96.142
-icluster143 129.88.96.143
-icluster144 129.88.96.144
-icluster145 129.88.96.145
-icluster146 129.88.96.146
-icluster147 129.88.96.147
-icluster148 129.88.96.148
-icluster149 129.88.96.149
-icluster150 129.88.96.150
-icluster151 129.88.96.151
-icluster152 129.88.96.152
-icluster153 129.88.96.153
-icluster154 129.88.96.154
-icluster155 129.88.96.155
-icluster156 129.88.96.156
-icluster157 129.88.96.157
-icluster158 129.88.96.158
-icluster159 129.88.96.159
-icluster160 129.88.96.160
-icluster161 129.88.96.161
-icluster162 129.88.96.162
-icluster163 129.88.96.163
-icluster164 129.88.96.164
-icluster165 129.88.96.165
-icluster166 129.88.96.166
-icluster167 129.88.96.167
-icluster168 129.88.96.168
-icluster169 129.88.96.169
-icluster170 129.88.96.170
-icluster171 129.88.96.171
-icluster172 129.88.96.172
-icluster173 129.88.96.173
-icluster174 129.88.96.174
-icluster175 129.88.96.175
-icluster176 129.88.96.176
-icluster177 129.88.96.177
-icluster178 129.88.96.178
-icluster179 129.88.96.179
-icluster180 129.88.96.180
-icluster181 129.88.96.181
-icluster182 129.88.96.182
-icluster183 129.88.96.183
-icluster184 129.88.96.184
-icluster185 129.88.96.185
-icluster186 129.88.96.186
-icluster187 129.88.96.187
-icluster188 129.88.96.188
-icluster189 129.88.96.189
-icluster190 129.88.96.190
-icluster191 129.88.96.191
-icluster192 129.88.96.192
-icluster193 129.88.96.193
-icluster194 129.88.96.194
-icluster195 129.88.96.195
-icluster196 129.88.96.196
-icluster197 129.88.96.197
-icluster198 129.88.96.198
-icluster199 129.88.96.199
-icluster200 129.88.96.200
-icluster201 129.88.96.201
-icluster202 129.88.96.202
-icluster203 129.88.96.203
-icluster204 129.88.96.204
-icluster205 129.88.96.205
-icluster206 129.88.96.206
-icluster207 129.88.96.207
-icluster208 129.88.96.208
-icluster209 129.88.96.209
-icluster210 129.88.96.210
-icluster211 129.88.96.211
-icluster212 129.88.96.212
-icluster213 129.88.96.213
-icluster214 129.88.96.214
-icluster215 129.88.96.215
-icluster216 129.88.96.216
-icluster217 129.88.96.217
-icluster218 129.88.96.218
-icluster219 129.88.96.219
-icluster220 129.88.96.220
-icluster221 129.88.96.221
-icluster222 129.88.96.222
-icluster223 129.88.96.223
-icluster224 129.88.96.224
-icluster225 129.88.96.225
diff --git a/rescue/tree/ka/install.sh b/rescue/tree/ka/install.sh
deleted file mode 100755
index ee93c1e19..000000000
--- a/rescue/tree/ka/install.sh
+++ /dev/null
@@ -1,641 +0,0 @@
-#!/bin/bash
-
-# this script is run by at startup on the nfs_root system, and runs the ka-deploy client
-# it also updates the 'step file' on the tftp server
-
-# $Revision$
-# $Author$
-# $Date$
-# $Header$
-# $Id$
-# $Log$
-# Revision 1.4 2005/08/28 21:38:32 oblin
-# ka support (initially from Antoine Ginies and Erwan Velu)
-#
-# Revision 1.1.2.5 2003/06/17 06:34:33 erwan
-# Removing remaining dchp cache for KA
-#
-# Revision 1.1.2.4 2003/06/11 18:04:28 erwan
-# Fixing mkreiserfs call
-#
-# Revision 1.1.2.3 2002/11/07 15:10:52 erwan
-# SCSI support now activated
-#
-# Revision 1.1.2.2 2002/11/05 15:49:13 erwan
-# added some files
-#
-# Revision 1.1.2.1 2002/11/05 11:16:54 erwan
-# added ka tools in rescue
-#
-# Revision 1.6 2001/12/03 16:28:02 sderr
-# Completely new install script
-#
-# Revision 1.5 2001/10/10 13:55:04 sderr
-# Updates in documentation
-#
-# Revision 1.4 2001/06/29 09:31:45 sderr
-# *** empty log message ***
-#
-# Revision 1.3 2001/05/31 08:51:43 sderr
-# scripts/doc update to match new command-line syntax
-#
-# Revision 1.2 2001/05/03 12:34:41 sderr
-# Added CVS Keywords to most files. Mostly useless.
-#
-# $State$
-
-# This script is provided as an exmaple and should probably not be run as is
-
-
-unset LANG
-unset LANGUAGE
-
-# needed for some for i in foo* loops
-shopt -s nullglob
-
-bash < /dev/tty2 >/dev/tty2 2>&1 &
-
-# IDEA : maybe this option could be overriden by a kaopt= in the kernel command line ?
-KA_SESSION_BASE="-s kainstall"
-
-ka_call_num=0
-
-inc_ka_session()
-{
- (( ka_call_num++ ))
- cur_ka_session=$KA_SESSION_BASE$ka_call_num
-}
-
-
-# testing ? -- NOT FULLY IMPLEMENTED !!!!!!!!!!!!!!!!!!!!
-#DONTWRITE=yes
-DONTWRITE=no
-
-# Let's find out what our IP is
-ip=`/sbin/ifconfig | grep -v 127.0.0.1 | grep "inet addr" | sed 's/^.*inet addr:\([^ ]*\) .*$/\1/g' | head -n 1`
-
-# the file tftpserver should contain the name of the .. tftpserver
-server=`cat tftpserver`
-
-
-# reverse a file
-tac()
-{
- awk '{ x[NR] = $0 } END { for (i = NR; i >= 1; i--) print x[i] }'
-}
-
-# run a command, hide its output and print OK if it suceeds, print FAILED and show the output otherwise.
-runcom()
-{
- echo -n "$1..." 1>&2
- shift;
- out=`"$@" 2>&1`
- ret=$?
- if [ $ret -eq 0 ]; then
- echo $C_S"OK"$C_N 1>&2
- else
- echo $C_F"Failed"$C_N 1>&2
- echo $C_W"$out"$C_N 1>&2
- fi
- return $ret
-
-}
-
-# 5 4 3 2 1 zero ignition
-countdown()
-{
- t=$1
- while [ "$t" -ne 0 ]; do
- echo -n "$t "
- sleep 1
- # move the cursor back
- # I use now tr instead of sed because busybox's sed adds a non-wanted carriage return
- # busybox's tr does not seem to know about the [: :] stuff (?)
- echo -n "$t " | tr " 0-9" $'\x08'
- (( t-- ))
- done
- # backspace only moves the cursor back, so at this point there's still a "1" to erase
- if [ "$1" -ne 0 ] ;then
- echo -n " "$'\x08\x08'
- fi
-}
-
-
-int_shell()
-{
- echo $C_H"starting an interactive shell"$C_N
- exec /bin/bash
-}
-
-fail()
-{
- echo $*
- echo $C_F"--- The installation program FAILED ---"$C_N
- echo "Check your configuration -- try to read previous error messages"
- echo "This machine is going to reboot (Ctrl-S to block it) (Ctrl-C for an interactive shell)"
- trap int_shell SIGINT
- countdown 30
- do_reboot
-}
-
-do_reboot()
-{
- reboot
- sleep 1234567 # do not continue the install script (/sbin/reboot does not block)
-}
-
-
-
-# ahem this LILO function should be fixed someday
-# right now this function assumes there is a properly configured lilo on the duplicated linux system
-do_lilo()
-{
-
-
-chroot /mnt/disk << EOF
-lilo
-EOF
-
-
-}
-
-
-run_chroot_command()
-{
-
- /usr/sbin/chroot /mnt/disk $*
-
-}
-
-
-log()
-{
- echo $* 1>&2
- echo $* >> /tmp/ginstlog
-}
-
-# version for the standard tftp client
-std_tftp_put_file()
-{
- remotef=$2
- localf=$1
- err=`echo put $localf $remotef | tftp $server 2>&1`
- err=`echo $err | grep Sent`
- if [ -z "$err" ]; then
- log tftp error: could not get/put file
- return 1
- fi
- return 0
-}
-
-# version for the tftp client built in busybox
-busybox_tftp_put_file()
-{
- remotef=$2
- localf=$1
- err=`tftp -p -l $localf -r $remotef $server 2>&1`
- if [ $? -ne 0 ]; then
- log tftp error: could not get/put file $err
- return 1
- fi
- return 0
-}
-
-
-busybox_tftp_get_file()
-{
- remotef=$1
- localf=$2
- err=`tftp -g -l $localf -r $remotef $server 2>&1`
- if [ $? -ne 0 ]; then
- log tftp error: could not get/put file $err
- return 1
- fi
- return 0
-}
-
-
-std_tftp_get_file()
-{
- remotef=$1
- localf=$2
- err=`echo get $remotef $localf | tftp $server 2>&1`
- err=`echo $err | grep Received`
- if [ -z "$err" ]; then
- echo tftp error: could not get/put file
- return 1
- fi
- return 0
-}
-
-tftp_get_file()
-{
- busybox_tftp_get_file "$@"
-}
-
-tftp_put_file()
-{
- busybox_tftp_put_file "$@"
-}
-
-# write a string ($2) in a remote file ($1)
-tftp_put_in()
-{
- echo "$2" > $temp
- err=`echo put $temp "$1" | tftp $server 2>&1`
- rm -f $temp
- err=`echo $err | grep Sent`
- if [ -z "$err" ]; then
- log tftp error: could not get/put file
- return 1
- fi
- return 0
-}
-
-get_var_bis()
-{
- while read a; do
- echo "$a" | grep -s -q "^ *#.*"
- if [ $? -eq 0 ]; then
- continue
- fi
- val=`echo "$a" | sed 's/[^"]*"\(.*[^\\]\)".*/\1/'`
- var=`echo "$a" | sed 's/[^"]*".*[^\\]" *\$\([^ ]*\)/\1/'`
- if [ "$var" = "$1" ]; then
- echo $val
- return 0
- fi
- done
- return 1
-}
-
-# fetch variable $2 from file $1
-get_var()
-{
- (cat $1; echo) | get_var_bis $2
-}
-
-# find the current step in the kernel command line
-get_step()
-{
- step=install
-# step=`cat /proc/cmdline | sed 's/.*kastep=\([^ ]*\).*/\1/'`
- if [ "$step" ]; then
- echo $step > /tmp/step
- return 0
- fi
- return 1
-}
-
-
-# write a new file on the tftp server
-# this file is a pxelinux config file
-# do this by getting the 'template file' and adding a DEFAULT at the beginning
-set_step()
-{
- step=$1
-
-
- runcom "Getting template file" tftp_get_file "ka/pxelinux.cfg/template" /tmp/template || return 1
-
- echo DEFAULT $step > /tmp/newcfg
- cat /tmp/template >> /tmp/newcfg
-
- runcom "Sending back new pxelinux config file" tftp_put_file /tmp/newcfg "ka/pxelinux.cfg/IP/$ip" || return 1
-
- return 0
-}
-
-
-
-# the mount_partition calls must be done in the same shell (NOT a subshell) because the global variable below has to be updated
-# idea : maybe use a file instead of this variable (and since the tac function now exists, why not ?)
-mounted_fs=""
-
-# mount a partition UNDER /disk !!! (/disk is prepended to $2)
-mount_partition()
-{
- dev=$1
- point=$2
-
- echo -n "Mounting $C_H$1$C_N as /mnt/disk$C_H$point$C_N"
- mkdir -p /mnt/disk$point
- test -d /mnt/disk$point || return 1
- runcom "..." mount $dev /mnt/disk/$point || return 1
- mounted_fs="$dev $mounted_fs"
- return 0
-}
-
-# umount all mounted partitions under /disk, in the reverse order
-umount_partitions()
-{
- for dev in $mounted_fs; do
- retries=0
- while ! runcom "Umounting $dev" umount $dev ; do
- sleep 3
- (( retries++ ))
- if [ $retries -gt 3 ]; then
- echo Failed too many times. giving up.
- break
- fi
- done
- done
-}
-
-
-# recreate excluded directories
-# read stdin like this : u=rwx g=rwx o=rwx uid gid filename
-recreate_dirs()
-{
- while read line; do
- declare -a fields
- fields=( $line )
- file=/mnt/disk/${fields[5]}
-# echo $file
-# note : it is possible that the directory exists already, if it was a mount point
-# we need to set the permissions/users anyway
- mkdir -p $file
-# echo chmod ${fields[0]},${fields[1]},${fields[2]} $file
- chmod ${fields[0]},${fields[1]},${fields[2]} $file
- # argl !! chmod o+t does not work with busybox's chmod !
- # we have to handle it alone
- if echo ${fields[2]} | grep -q t; then
- chmod +t $file
- fi
- chown ${fields[3]}.${fields[4]} $file
- done
-}
-
-make_partitions()
-{
- # we must be in the partfiles directory
- for file in partition_tab*; do
- drive=`echo $file | sed 's/partition_tab//'`
- cat $file | runcom "Writing partition table for $drive using sfdisk" /sbin/sfdisk /dev/$drive -uS --force || fail "error with sfdisk"
- done
-
- for file in fdisk_commands*; do
- drive=`echo $file | sed 's/fdisk_commands//'`
- runcom "Cleaning hard drive" dd if=/dev/zero of=/dev/$drive bs=1M count=5 || fail "Can t clean drive$drive"
- cat $file | runcom "Writing partition table for $drive using fdisk" fdisk /dev/$drive || fail "error with fdisk"
- done
-
-}
-checkDevEntries()
-{
- if ! test -r /mnt/disk/dev/hda ; then
- (cd /dev && tar c *) | (cd /mnt/disk/dev && tar x)
- fi
-}
-
-write_MBRs()
-{
-# we must be in the partfiles directory also
- for file in MBR*; do
- drive=`echo $file | sed 's/MBR//'`
- runcom "Writing new MBR for $drive" dd if=$file of=/dev/$drive bs=1 count=446
- done
-}
-
-
-# Colors
-# Success
-C_S=$'\033[1;32m'
-# Failure
-C_F=$'\033[1;31m'
-# Warning
-C_W=$'\033[1;33m'
-# Normal
-C_N=$'\033[0;39m'
-# Hilight
-C_H=$'\033[1;39m'
-
-
-# Clear screen, fancy startup message.
-echo $'\033'[2J$'\033'[H
-echo "------| $C_H"Ka"$C_N |---- Install starting..."
-
-temp=/tmp/ginst
-
-# activate dma ? -- obsolete stuff I think
-# runcom "Setting HD optimizations" hdparm -c1 -d1 -K1 $HD
-
-delay=0
-
-if ! runcom "Getting step name" get_step; then
- echo "Error: Could not get current step "
- fail
-else
- step=`cat /tmp/step`
-fi
-
-echo Next Server is `cat /ka/tftpserver`
-
-echo Current step for $ip is : \"$C_H$step$C_N\"
-
-echo -n "Finding install type : "
-case $step in
- shell)
- echo No install, but interactive shell
- ## drop the user to an interactive shell
- exec /bin/bash
- ;;
- install)
- install_type=install
- nextstep=ready
- echo Install Linux
- ;;
- test_install)
- install_type=test_install
- nextstep=ready
- echo TEST TEST TEST
- countdown 10
- echo Install Linux TEST
- ;;
-esac
-
-
-if [ -z "$install_type" ]; then
- echo FATAL : Could not recognize this step name
- echo "Aborting... "
- fail
-fi
-
-
-
-# receive the partition table, fstab, etc from the source node
-mkdir /tmp/partfiles
-inc_ka_session
-echo Current session is $cur_ka_session
-runcom "Receiving partitions information" /ka/ka-d-client -w $cur_ka_session -e "( cd /tmp/partfiles && tar xvf - )" || fail
-
-
-
-
-cd /tmp/partfiles
-make_partitions
-
-
-test -f /tmp/partfiles/streams || fail "Missing streams file"
-first_stream=`cat /tmp/partfiles/streams | head -n 1`
-
-if [ "$first_stream" = linux ]; then
- rcv_linux=yes
-else
- rcv_linux=no
-fi
-
-
-
-#if we must receive a linux system, we need to format and mount the partitions
-if [ $rcv_linux = yes ]; then
- # format partitions
- format_partitions()
- {
- while read line; do
- declare -a fields
- fields=( $line )
-
- case ${fields[2]} in
- reiserfs )
- runcom "Formatting ${fields[0]} as reiserfs" mkreiserfs -f ${fields[0]} || fail
- ;;
- jfs )
- runcom "Formatting ${fields[0]} as jfs" mkfs.jfs ${fields[0]} || fail
- ;;
-
- xfs )
- runcom "Formatting ${fields[0]} as xfs" mkfs.xfs -f ${fields[0]} || fail
- ;;
- ext3 )
- runcom "Formatting ${fields[0]} as ext3" mkfs.ext2 -j ${fields[0]} || fail
- ;;
- ext2 )
- runcom "Formatting ${fields[0]} as ext2" mkfs.ext2 ${fields[0]} || fail
- ;;
- swap )
- runcom "Formatting ${fields[0]} as swap" mkswap ${fields[0]} || fail
- ;;
- esac
- done
- }
-
- format_partitions < /tmp/partfiles/pfstab
-
-
- # mount the partitions
-
- mount_partitions()
- {
- while read line; do
- declare -a fields
- fields=( $line )
-
- case ${fields[2]} in
- reiserfs )
- mount_partition ${fields[0]} ${fields[1]} || fail
- ;;
- xfs )
- mount_partition ${fields[0]} ${fields[1]} || fail
- ;;
- jfs )
- mount_partition ${fields[0]} ${fields[1]} || fail
- ;;
- ext3 )
- mount_partition ${fields[0]} ${fields[1]} || fail
- ;;
- ext2 )
- mount_partition ${fields[0]} ${fields[1]} || fail
- ;;
- esac
- done
- }
-
- # NOTE
- # I replaced cat truc | mount_partitions by mount_partitions < truc
- # because in the former case mount_partitions runs in a subshell and the $mounted_fs value is lost
- mount_partitions < /tmp/partfiles/pfstab
-
- echo ++++++++++++++++++++++++++
- mount
- echo ++++++++++++++++++++++++++
-
- delay=0
-else
- delay=10
-fi
-
-if [ $DONTWRITE != yes ]; then
- for stream in `cat /tmp/partfiles/streams`; do
- if [ "$stream" = "linux" ]; then
- # partitions already formatted/mounted, just copy now
- # untar data from the master 'on the fly'
- echo -n "Linux copy is about to start "
- countdown $delay
- echo
- inc_ka_session
- /ka/ka-d-client -w $cur_ka_session -e "(cd /mnt/disk; tar --extract --read-full-records --same-permissions --numeric-owner --sparse --file - ) 2>/dev/null" || fail
-
- runcom "Syncing disks" sync
- echo Linux copy done.
- echo Creating excluded directories
- cat /tmp/partfiles/excluded | recreate_dirs
- #echo Setting up networking
- #/ka/setup_network.sh
- #delay=10
- else
- # maybe receive some raw partition dumps
- echo Raw copy of $stream is about to start
- countdown $delay
- inc_ka_session
- /ka/ka-d-client -w $cur_ka_session -e "dd of=$stream bs=65536" || fail
- delay=10
- fi
- done
-
- echo "Removing computing interfaces"
- rm -f /mnt/disk/etc/sysconfig/network-scripts/ifcfg-eth1 >/dev/null 2>&1
-
- echo "Removing duplicated dhcp cache"
- rm -f /mnt/disk/etc/dhcpc/* >/dev/null 2>&1
-
- echo "Writing modules.conf"
- /usr/bin/perl /ka/gen_modules_conf.pl >/mnt/disk/etc/modules.conf
-
- echo "Writing modprobe.conf"
- chroot /mnt/disk/ /sbin/generate-modprobe.conf >/mnt/disk/etc/modprobe.conf
-
- echo "Running mkinitrd"
- /ka/make_initrd
-
- cd /tmp/partfiles
- write_MBRs
-
-
- if test -f /tmp/partfiles/command; then
- checkDevEntries
- command_to_run=`cat /tmp/partfiles/command`
- runcom "Running $command_to_run" run_chroot_command "$command_to_run"
- fi
-
-else
- echo " I would run ka-deploy(s) and then lilo/mbr "
- sleep 1
-fi
-
-# maybe there is a last dummy ka-deploy for synchronization
-if test -f /tmp/partfiles/delay; then
- sleep 1
- inc_ka_session
- runcom "Waiting source node signal to end installation" /ka/ka-d-client -w $cur_ka_session -e "cat" || fail
-fi
-
-umount_partitions
-
-
-# Update the step file on the tftp server
-#runcom 'Sending back new $step' set_step $nextstep || fail
-
-echo -n Rebooting...
-countdown 3
-do_reboot
diff --git a/rescue/tree/ka/ka-d-client b/rescue/tree/ka/ka-d-client
deleted file mode 100755
index 1ae4fa703..000000000
--- a/rescue/tree/ka/ka-d-client
+++ /dev/null
Binary files differ
diff --git a/rescue/tree/ka/make_initrd b/rescue/tree/ka/make_initrd
deleted file mode 100755
index 8f8a0492d..000000000
--- a/rescue/tree/ka/make_initrd
+++ /dev/null
@@ -1,44 +0,0 @@
-#!/bin/bash
-echo Looking for default kernel
-CHROOT=/mnt/disk
-IMG=`cat $CHROOT/etc/lilo.conf | grep default | cut -d "=" -f 2 | sed -e 's/\"//g'`
-KERN="x"
-INITRD=""
-LABEL="x"
-
-modprobe loop
-
-for i in `cat $CHROOT/etc/lilo.conf`; do
-
- if echo $i | grep image >/dev/null; then
- KERN=$CHROOT`echo $i | cut -d "=" -f 2`
- INITRD=""
- LABEL="x"
- fi
- if echo $i | grep label >/dev/null; then
- LABEL=`echo $i | cut -d "=" -f 2 | sed -e 's/\"//g'`
- fi
- if echo $i | grep initrd >/dev/null; then
- INITRD=`echo $i | cut -d "=" -f 2`
- fi
- if [ ${LABEL} == ${IMG} ] && [ ! -z ${INITRD} ]; then
- echo "Kernel name is $KERN"
- echo "Initrd name is $INITRD"
- KERN_VERSION=`/usr/bin/strings $KERN | grep "^2\.[2.6]"| cut -d " " -f 1`
- if [ -z $KERN_VERSION ]; then
- echo "No kernel version found !"
- fi
- chroot $CHROOT mount /proc
- mount /dev/ $CHROOT/dev -o bind
-# chroot $CHROOT MAKEDEV loop
-# chroot $CHROOT MAKEDEV fd
-# chroot $CHROOT MAKEDEV hd
-# chroot $CHROOT MAKEDEV sd
-# chroot $CHROOT MAKEDEV md
-# chroot $CHROOT MAKEDEV zero
- chroot $CHROOT /sbin/mkinitrd -f $INITRD $KERN_VERSION
- umount $CHROOT/dev
- chroot $CHROOT umount /proc
- exit
- fi
-done
diff --git a/rescue/tree/ka/setup_network.sh b/rescue/tree/ka/setup_network.sh
deleted file mode 100755
index 9ef6992bd..000000000
--- a/rescue/tree/ka/setup_network.sh
+++ /dev/null
@@ -1,80 +0,0 @@
-#!/bin/bash
-
-# this script setups the network on the cloned system
-# puts a correct hostname
-# changes the IP if static -- for only ONE device (dunno what will happen with multiple NICs)
-# needs the file /ka/hostnames
-
-
-curdir=`pwd`
-
-
-ip=`/sbin/ifconfig | /bin/grep -v 127.0.0.1 | /bin/grep "inet addr" | /bin/sed 's/^.*inet addr:\([^ ]*\) .*$/\1/g'`
-oldip=$ip
-ip=`echo $ip | sed -e 's/\./_/g'`
-echo -n "Setting hostname: "
-/bin/hostname $ip
-
-
-# current hostname has been set up in rc.sysinit
-ip=$oldip
-echo My IP is $ip
-cd /ka
-
-# the sed command will remove unwanted spaces
-##########################
-# HOSTNMAE already set on NODE
-############################
-#if test -f hostnames ; then
-# myname=`/bin/cat hostnames | /bin/sed -e 's/ / /g' -e 's/ *$//' | /bin/grep " $ip\$" | /bin/cut -d ' ' -f 1`
-# nbfound=`echo "$myname" |/usr/bin/wc -l`
-#fi##
-#
-#if [ $nbfound -ne 1 ] || [ -z "$myname" ]; then
-# # try DNS
-# echo IP not found in /ka/hostnames, Trying DNS
-# myname=`/usr/bin/host $ip | /bin/grep "domain name" | /bin/cut -d " " -f 5 | /bin/sed 's/\.$//g' `
-# myname=`nslookup $ip | grep ^Name: | tail -n +2 | head -n 1 | sed 's/Name: *//'`
-#fi
-#
-#if [ -z "$myname" ]; then
-# myname=`/bin/hostname`
-# echo WARNING:HOSTNAME NOT FOUND
-#fi
-#
-#echo My hostname is $myname
-
-# change hostname in the network file
-#old=/mnt/disk/etc/sysconfig/network.beforeka
-#new=/mnt/disk/etc/sysconfig/network
-
-#rm -f "$old"
-#mv "$new" "$old"
-#/bin/cat "$old" | /bin/grep -v ^HOSTNAME= > "$new"
-#echo "HOSTNAME=$myname" >> "$new"
-######################
-##
-######################
-
-
-
-
-# assume first NIC is the gatewaydev (right ? wrong ?)
-#firstnic=`grep ^GATEWAYDEV "$new" | cut -d = -f 2 | tr -d \"`
-#echo GATEWAYDEV=$firstnic
-
-# see if IP has to be written
-#proto=`grep ^BOOTPROTO /mnt/disk/etc/sysconfig/network-scripts/ifcfg-$firstnic | cut -d = -f 2 | tr -d \"`
-#echo PROTO=$proto
-#if [ "$proto" != "dhcp" ]; then
-# # proto is static, write the new IP in the config file
-# old=/mnt/disk/etc/sysconfig/network-scripts/ifcfg-$firstnic.beforeka
-# new=/mnt/disk/etc/sysconfig/network-scripts/ifcfg-$firstnic
-#
-# rm -f "$old"
-# mv "$new" "$old"
-# cat "$old" | grep -v ^IPADDR= > "$new"
-# echo IPADDR=$ip >> "$new"
-#fi
-
-cd $curdir
diff --git a/rescue/tree/ka/tftpserver b/rescue/tree/ka/tftpserver
deleted file mode 100644
index deed6748f..000000000
--- a/rescue/tree/ka/tftpserver
+++ /dev/null
@@ -1 +0,0 @@
-192.168.200.10