Contents of /alx-src/trunk/alxinstall-ng/bin/alxinstall-ng.sh
Parent Directory | Revision Log
Revision 520 -
(show annotations)
(download)
(as text)
Fri Jun 27 22:27:46 2008 UTC (16 years, 3 months ago) by niro
File MIME type: application/x-sh
File size: 16089 byte(s)
Fri Jun 27 22:27:46 2008 UTC (16 years, 3 months ago) by niro
File MIME type: application/x-sh
File size: 16089 byte(s)
-increase version and many style updates
1 | #!/bin/sh |
2 | # |
3 | # $Header: /home/cvsd/alx-cvs/alx-src/alxinstall-ng/bin/alxinstall-ng.sh,v 1.7 2008-06-27 22:27:46 niro Exp $ |
4 | # |
5 | # AutoSta_LX Installation Script |
6 | # |
7 | # Niels Rogalla <niro@magellan-linux.de> |
8 | # <rogalla@augusta-bochum.de> |
9 | # |
10 | # |
11 | # Install Navigation Gui |
12 | # |
13 | |
14 | #images: (get ${CDIMAGENAME}) |
15 | source /mnt/cdrom/system/images.conf |
16 | |
17 | #Includes |
18 | source /usr/lib/alxinstall-ng/functions/findhdd.sh > /dev/null |
19 | ### bugfix ############################### |
20 | cdromdev="`echo $cdromdev|sed -e 's/ //'`" |
21 | ######################################## |
22 | |
23 | ### System/Config Version |
24 | VERSION="0.3" |
25 | TITLE="alxinstall-ng - ${VERSION}" |
26 | |
27 | #CONFIGS_TEMPLATE="/opt/alx-config/configs" |
28 | |
29 | CDPATH="/mnt/cdrom" |
30 | INSTALLPATH="/mnt/magellan" |
31 | |
32 | ### WICHTIG: anzahl lines in der autosta_lx.tar.gz -1 |
33 | CURRENTLINE=0 |
34 | #TOTALLINES=11072 # -> now in images.conf |
35 | |
36 | |
37 | ################################################# |
38 | # DIALOG BOXEN # |
39 | ################################################# |
40 | |
41 | die() |
42 | { |
43 | ERROR=$1 |
44 | RETVAL=$? |
45 | dialog_install_failure |
46 | exit 1 |
47 | } |
48 | |
49 | dialog_warning() |
50 | { |
51 | dialog \ |
52 | --backtitle "${TITLE}" \ |
53 | --colors \ |
54 | --defaultno \ |
55 | --yesno "\Z1 !!! Achtung !!! \Zn\n\n\ |
56 | Diese Festplatte wird unwiederruflich geloescht werden.\n\n\ |
57 | Soll ich wirklich fortfahren ?" 10 70 |
58 | RES=$? |
59 | if [[ ${RES} -eq 1 ]] |
60 | then |
61 | clear |
62 | echo "Der Vorgang wurde abgebrochen." |
63 | exit 1 |
64 | fi |
65 | } |
66 | |
67 | dialog_setup_hdd_info() |
68 | { |
69 | local SHDD="$(echo ${HDD} | sed 's/\/dev\///')" |
70 | |
71 | dialog \ |
72 | --colors \ |
73 | --title "[ Festplatten Partitionierung ]" \ |
74 | --backtitle "${TITLE}" \ |
75 | --ok-label "Weiter" \ |
76 | --msgbox "\nBitte legen Sie 3 Partitionen an.\n\n\ |
77 | [ \Z3${SHDD}1\Zn ] Typ: \Z3Linux\Zn mit ca. 50MB\n\ |
78 | [ \Z3${SHDD}2\Zn ] Typ: \Z3Linux Swap\Zn mit ca. 256MB\n\ |
79 | [ \Z3${SHDD}3\Zn ] Typ: \Z3Linux \Zn mit dem Rest (min. 256MB)\n\n\ |
80 | Bitte ${SHDD}1 als \Z3bootable\Zn markieren." 12 81 |
81 | } |
82 | |
83 | dialog_setup_hdd_info_flash() |
84 | { |
85 | local SHDD="$(echo $HDD | sed 's/\/dev\///')" |
86 | |
87 | dialog \ |
88 | --colors \ |
89 | --title "[ Festplatten Partitionierung ]" \ |
90 | --backtitle "${TITLE}" \ |
91 | --ok-label "Weiter" \ |
92 | --msgbox "\nBitte legen Sie 1 Partition an.\n\n\ |
93 | [ \Z3${SHDD}1\Zn ] Typ: \Z3Linux\Zn mit dem gesamten Speicher\n\ |
94 | Bitte ${SHDD}1 als \Z3bootable\Zn markieren." 12 81 |
95 | } |
96 | |
97 | dialog_setup_system_menu() |
98 | { |
99 | local i |
100 | |
101 | i=$(dialog \ |
102 | --backtitle "${TITLE}" \ |
103 | --title "[ Festplatten Partitionierung ]" \ |
104 | --cancel-label "Abbrechen" \ |
105 | --ok-label "Weiter" \ |
106 | --stdout \ |
107 | --menu "\nWaehlen Sie die Installations-Methode" 14 70 5 \ |
108 | "1" "Normale IDE-Disk" \ |
109 | "2" "Flash-Speicher") |
110 | RES=$? |
111 | [[ ${RES} -eq 1 ]] && return 1 |
112 | if [[ ${RES} -eq 0 ]] |
113 | then |
114 | case "${i}" in |
115 | "1") run_install_normal ;; |
116 | "2") run_install_flash ;; |
117 | esac |
118 | fi |
119 | } |
120 | |
121 | dialog_setup_hdd_found_manuell() |
122 | { |
123 | local i |
124 | |
125 | [[ ! -z ${installdevs} ]] && installdevs="" |
126 | |
127 | echo "dialog \\" > /tmp/hddtmp.sh |
128 | echo "--backtitle \"${TITLE}\" \\" >> /tmp/hddtmp.sh |
129 | echo "--ok-label \"Weiter\" \\" >> /tmp/hddtmp.sh |
130 | echo "--stdout \\" >> /tmp/hddtmp.sh |
131 | echo "--colors \\" >> /tmp/hddtmp.sh |
132 | echo "--msgbox \"Gefundene Hardware:\n\n \\" >> /tmp/hddtmp.sh |
133 | echo " Festplatten:\n \\" >> /tmp/hddtmp.sh |
134 | |
135 | if [[ ! -z ${scsidisks} ]] |
136 | then |
137 | for i in ${scsidisks} |
138 | do |
139 | if [[ ${i} != ${cdromdev} ]] |
140 | then |
141 | echo " \\Z7SCSI: \\Z3${i}\\Zn\n \\" >> /tmp/hddtmp.sh |
142 | installdevs="${installdevs} ${i}" |
143 | fi |
144 | done |
145 | fi |
146 | |
147 | if [[ ! -z ${idedisks} ]] |
148 | then |
149 | for i in ${idedisks} |
150 | do |
151 | if [[ ${i} != ${cdromdev} ]] |
152 | then |
153 | echo " \\Z7IDE: \\Z3${i}\\Zn\n \\" >> /tmp/hddtmp.sh |
154 | installdevs="${installdevs} ${i}" |
155 | fi |
156 | done |
157 | fi |
158 | |
159 | if [[ ! -z ${cdromdev} ]] |
160 | then |
161 | echo " \n \\" >> /tmp/hddtmp.sh |
162 | echo " \\Z7andere Laufwerke:\n \\" >> /tmp/hddtmp.sh |
163 | echo " CDROM: \\Z3${cdromdev}\\Zn\n \\" >> /tmp/hddtmp.sh |
164 | fi |
165 | echo " \" 13 70" >> /tmp/hddtmp.sh |
166 | chmod a+x /tmp/hddtmp.sh |
167 | /tmp/hddtmp.sh |
168 | } |
169 | |
170 | dialog_setup_hdd_partitions_manuell() |
171 | { |
172 | local i |
173 | |
174 | if [[ -z ${installdevs} ]] |
175 | then |
176 | dialog \ |
177 | --backtitle "${TITLE}" \ |
178 | --ok-label "Beenden" \ |
179 | --msgbox "Kein geeignetes Laufwerk gefunden.\nDie Installation ist fehlgeschlagen." 6 70 |
180 | exit 1 |
181 | else |
182 | |
183 | echo "dialog \\" > /tmp/hddtmp.sh |
184 | echo "--backtitle \"${TITLE}\" \\" >> /tmp/hddtmp.sh |
185 | echo "--ok-label \"Weiter\" \\" >> /tmp/hddtmp.sh |
186 | echo "--cancel-label \"Beenden\" \\" >> /tmp/hddtmp.sh |
187 | echo "--stdout \\" >> /tmp/hddtmp.sh |
188 | echo "--menu \"Installations Laufwerk auswaehlen:\" 10 70 3 \\" >> /tmp/hddtmp.sh |
189 | |
190 | for i in ${installdevs} |
191 | do |
192 | echo "\"${i}\" \"\" \\" >> /tmp/hddtmp.sh |
193 | done |
194 | echo -e "\n" >> /tmp/hddtmp.sh |
195 | |
196 | chmod a+x /tmp/hddtmp.sh |
197 | HDD="$(/tmp/hddtmp.sh)" |
198 | RES=$? |
199 | [[ ${RES} -eq 1 ]] && return 1 |
200 | if [[ ${RES} -eq 0 ]] |
201 | then |
202 | dialog_setup_hdd_info |
203 | setup_hdd_partitions_manuell |
204 | fi |
205 | fi |
206 | } |
207 | |
208 | dialog_setup_hdd_partitions_manuell_flash() |
209 | { |
210 | local i |
211 | |
212 | if [[ -z ${installdevs} ]] |
213 | then |
214 | dialog \ |
215 | --backtitle "${TITLE}" \ |
216 | --ok-label "Beenden" \ |
217 | --msgbox "Kein geeignetes Laufwerk gefunden.\nDie Installation ist fehlgeschlagen." 6 70 |
218 | exit 1 |
219 | else |
220 | |
221 | echo "dialog \\" > /tmp/hddtmp.sh |
222 | echo "--backtitle \"${TITLE}\" \\" >> /tmp/hddtmp.sh |
223 | echo "--ok-label \"Weiter\" \\" >> /tmp/hddtmp.sh |
224 | echo "--cancel-label \"Beenden\" \\" >> /tmp/hddtmp.sh |
225 | echo "--stdout \\" >> /tmp/hddtmp.sh |
226 | echo "--menu \"Installations Laufwerk auswaehlen:\" 10 70 3 \\" >> /tmp/hddtmp.sh |
227 | |
228 | for i in ${installdevs} |
229 | do |
230 | echo "\"${i}\" \"\" \\" >> /tmp/hddtmp.sh |
231 | done |
232 | echo -e "\n" >> /tmp/hddtmp.sh |
233 | |
234 | chmod a+x /tmp/hddtmp.sh |
235 | HDD="$(/tmp/hddtmp.sh)" |
236 | RES=$? |
237 | [[ ${RES} -eq 1 ]] && return 1 |
238 | if [[ ${RES} -eq 0 ]] |
239 | then |
240 | dialog_setup_hdd_info_flash |
241 | setup_hdd_partitions_manuell_flash |
242 | fi |
243 | fi |
244 | } |
245 | |
246 | dialog_setup_hdd_partitions_silent() |
247 | { |
248 | dialog \ |
249 | --backtitle "${TITLE}" \ |
250 | --infobox "Erstelle Partitionen ..." 3 70 |
251 | } |
252 | |
253 | dialog_setup_hdd_format() |
254 | { |
255 | dialog \ |
256 | --backtitle "${TITLE}" \ |
257 | --infobox "Erstelle Datei-Systeme ..." 3 70 |
258 | } |
259 | |
260 | dialog_install_settings() |
261 | { |
262 | dialog \ |
263 | --backtitle "${TITLE}" \ |
264 | --infobox "Speichere System-Einstellungen ..." 3 70 |
265 | } |
266 | |
267 | dialog_install_system_image() |
268 | { |
269 | dialog \ |
270 | --backtitle "${TITLE}" \ |
271 | --gauge "Kopiere System-Image ..." 6 80 |
272 | } |
273 | |
274 | dialog_install_meter() |
275 | { |
276 | while [[ ${CURRENTLINE} != ${TOTALLINES} ]] |
277 | do |
278 | CURRENTLINE=$(grep --count . /tmp/install.log) |
279 | PERCENT=$(expr ${CURRENTLINE} \* 100 / ${TOTALLINES}) |
280 | echo ${PERCENT} |
281 | sleep 1 |
282 | done |
283 | rm -f /tmp/install.log |
284 | return 0 |
285 | } |
286 | |
287 | |
288 | dialog_install_bootsector() |
289 | { |
290 | dialog \ |
291 | --backtitle "${TITLE}" \ |
292 | --infobox "Schreibe den Bootsektor ..." 3 70 |
293 | } |
294 | |
295 | dialog_install_alxconfig() |
296 | { |
297 | dialog \ |
298 | --backtitle "${TITLE}" \ |
299 | --infobox "Installiere die ALX Setup-Tools ..." 3 70 |
300 | } |
301 | |
302 | dialog_install_kernel_image() |
303 | { |
304 | dialog \ |
305 | --backtitle "${TITLE}" \ |
306 | --infobox "Installiere den System-Kernel ..." 3 70 |
307 | |
308 | } |
309 | |
310 | dialog_install_hotfixes() |
311 | { |
312 | dialog \ |
313 | --backtitle "${TITLE}" \ |
314 | --infobox "Installiere Hotfixes ..." 3 70 |
315 | |
316 | } |
317 | |
318 | dialog_install_successful() |
319 | { |
320 | dialog \ |
321 | --backtitle "${TITLE}" \ |
322 | --colors \ |
323 | --msgbox "Die Installation war \Z2erfolgreich\Zn." 5 81 |
324 | } |
325 | |
326 | dialog_install_failure() |
327 | { |
328 | dialog \ |
329 | --backtitle "${TITLE}" \ |
330 | --colors \ |
331 | --msgbox "Die Installation ist \Z1Fehlgeschlagen\Zn.\n\n\ |
332 | Fehler bei ${ERROR}, RetVal: ${RETVAL} \ |
333 | " 10 81 |
334 | } |
335 | |
336 | dialog_install_method() |
337 | { |
338 | |
339 | METHOD=$(dialog \ |
340 | --backtitle "${TITLE}" \ |
341 | --cancel-label "Abbrechen" \ |
342 | --ok-label "Weiter" \ |
343 | --stdout \ |
344 | --menu "Konfiguration" 14 70 5 \ |
345 | "1" "Normale Installation" \ |
346 | "2" "Silent Installation") |
347 | RES=$? |
348 | [[ ${RES} -eq 1 ]] && return 1 |
349 | if [[ ${RES} -eq 0 ]] |
350 | then |
351 | case ${METHOD} in |
352 | "1") run_install_normal ;; |
353 | "2") dialog_warning ; run_install_silent ;; |
354 | esac |
355 | fi |
356 | } |
357 | |
358 | dialog_main() |
359 | { |
360 | METHOD=0 |
361 | |
362 | while [[ ${METHOD} -le 2 ]] |
363 | do |
364 | METHOD=$(dialog \ |
365 | --backtitle "${TITLE}" \ |
366 | --no-cancel \ |
367 | --ok-label "Weiter" \ |
368 | --stdout \ |
369 | --menu "Konfiguration" 14 70 5 \ |
370 | "1" "AutoSta_LX installieren" \ |
371 | "2" "Uebersicht gefundener Laufwerke" \ |
372 | "3" "Beenden und neustarten" \ |
373 | "4" "Beenden und eine Shell starten") |
374 | RES=$? |
375 | if [[ ${RES} -eq 1 ]] && exit 1 |
376 | if [[ ${RES} -eq 0 ]] |
377 | then |
378 | case ${METHOD} in |
379 | "1") dialog_setup_system_menu ;; |
380 | "2") dialog_setup_hdd_found_manuell ;; |
381 | "3") install_do_reboot ;; |
382 | "4") /bin/bash --login -i ;; |
383 | esac |
384 | fi |
385 | done |
386 | } |
387 | |
388 | ################################################# |
389 | # Install Komandos # |
390 | ################################################# |
391 | setup_hdd_partitions_manuell() |
392 | { |
393 | BOOTHDD="${HDD}1" |
394 | SWAPHDD="${HDD}2" |
395 | ROOTHDD="${HDD}3" |
396 | |
397 | ## hdds partitionieren manuell |
398 | cfdisk ${HDD} || die |
399 | } |
400 | |
401 | setup_hdd_partitions_manuell_flash() |
402 | { |
403 | ROOTHDD="${HDD}1" |
404 | |
405 | ## hdds partitionieren manuell |
406 | cfdisk ${HDD} || die |
407 | } |
408 | |
409 | setup_hdd_partitions_silent() |
410 | { |
411 | ## hdds löschen |
412 | dd if=/dev/zero of=${HDD} bs=1024k count=1 || die |
413 | ## hdds partitionieren silent |
414 | fdisk ${HDD} < ${CONFIGS_TEMPLATE}/fdisksettings |
415 | |
416 | read |
417 | } |
418 | |
419 | setup_hdd_format() |
420 | { |
421 | mkswap ${SWAPHDD} || die |
422 | mke2fs -j -q ${BOOTHDD} || die |
423 | mke2fs -j -q ${ROOTHDD} || die |
424 | } |
425 | |
426 | setup_hdd_format_flash() |
427 | { |
428 | mke2fs -j -q ${ROOTHDD} || die |
429 | } |
430 | |
431 | install_mount_rootfs() |
432 | { |
433 | swapon ${SWAPHDD} || die |
434 | mount ${ROOTHDD} ${INSTALLPATH} || die |
435 | install -d ${INSTALLPATH}/boot || die |
436 | mount ${BOOTHDD} ${INSTALLPATH}/boot || die |
437 | cd ${INSTALLPATH} || die |
438 | } |
439 | |
440 | install_mount_rootfs_flash() |
441 | { |
442 | mount ${ROOTHDD} ${INSTALLPATH} || die |
443 | install -d ${INSTALLPATH}/boot || die |
444 | cd ${INSTALLPATH} || die |
445 | } |
446 | |
447 | install_system_image() |
448 | { |
449 | tar xvjpf ${CDPATH}/system/${CDIMAGENAME} -C ${INSTALLPATH} |
450 | } |
451 | |
452 | |
453 | install_kernel_image() |
454 | { |
455 | declare -i CPUTYPE=$(cat /proc/cpuinfo | grep "cpu family" | cut -d ' ' -f3) |
456 | |
457 | if [[ ${CPUTYPE} -le 5 ]] |
458 | then |
459 | lastdir="$(pwd)" |
460 | |
461 | mkdir -p ${INSTALLPATH}/INSTALL/kernel || die |
462 | cd ${INSTALLPATH}/INSTALL/kernel || die |
463 | tar xzpf ${CDPATH}/kernels/kernel-i386.tar.gz || die |
464 | source ${INSTALLPATH}/INSTALL/kernel/kernelversion || die |
465 | |
466 | cp -aRf ${INSTALLPATH}/INSTALL/kernel/${KRNLIB} ${INSTALLPATH}/lib/modules || die |
467 | cp -aRf ${INSTALLPATH}/INSTALL/kernel/${KRNIMG} ${INSTALLPATH}/boot || die |
468 | cp -aRf ${INSTALLPATH}/INSTALL/kernel/${KRNINITRD} ${INSTALLPATH}/boot || die |
469 | cp -aRf ${INSTALLPATH}/INSTALL/kernel/kernelversion ${INSTALLPATH}/boot || die |
470 | |
471 | cd ${lastdir} || die |
472 | |
473 | elif [[ ${CPUTYPE} -ge 6 ]] |
474 | then |
475 | lastdir="$(pwd)" |
476 | |
477 | mkdir -p ${INSTALLPATH}/INSTALL/kernel || die |
478 | cd ${INSTALLPATH}/INSTALL/kernel || die |
479 | tar xzpf ${CDPATH}/kernels/kernel-i686.tar.gz || die |
480 | source ${INSTALLPATH}/INSTALL/kernel/kernelversion || die |
481 | |
482 | cp -aRf ${INSTALLPATH}/INSTALL/kernel/${KRNLIB} ${INSTALLPATH}/lib/modules || die |
483 | cp -aRf ${INSTALLPATH}/INSTALL/kernel/${KRNIMG} ${INSTALLPATH}/boot || die |
484 | cp -aRf ${INSTALLPATH}/INSTALL/kernel/${KRNINITRD} ${INSTALLPATH}/boot || die |
485 | cp -aRf ${INSTALLPATH}/INSTALL/kernel/kernelversion ${INSTALLPATH}/boot || die |
486 | |
487 | cd ${lastdir} || die |
488 | fi |
489 | } |
490 | |
491 | install_bootsector() |
492 | { |
493 | ### grubconf schreiben |
494 | source ${INSTALLPATH}/INSTALL/kernel/kernelversion |
495 | |
496 | [[ -z ${KRNVER} ]] && KRNVER="AutoSta_LX" |
497 | [[ -z ${KRNIMG} ]] && KRNIMG="bzImage" |
498 | [[ -z ${KRNINITRD} ]] && KRNINITRD="initrd" |
499 | |
500 | |
501 | echo -e "default 0" > ${INSTALLPATH}/boot/grub/grub.conf || die |
502 | echo -e "timeout 03" >> ${INSTALLPATH}/boot/grub/grub.conf ||die |
503 | echo -e "\ntitle=${KRNVER}" >> ${INSTALLPATH}/boot/grub/grub.conf || die |
504 | echo -e "root (hd0,0)" >> ${INSTALLPATH}/boot/grub/grub.conf || die |
505 | |
506 | echo -e "kernel (hd0,0)/boot/${KRNIMG} root=${ROOTHDD} quiet" >> ${INSTALLPATH}/boot/grub/grub.conf || die |
507 | |
508 | ### bootsector schreiben |
509 | /sbin/grub --no-floppy --batch << "EOF" 1> /dev/null 2> /dev/null || die |
510 | root (hd0,0) |
511 | setup (hd0) |
512 | quit |
513 | EOF |
514 | } |
515 | |
516 | install_bootsector_chroot() |
517 | { |
518 | ### grubconf schreiben |
519 | source ${INSTALLPATH}/boot/kernelversion |
520 | |
521 | #for alx only |
522 | if [ -e ${INSTALLPATH}/etc/alx_version ] |
523 | then |
524 | OLD_ALXVER="${ALXVER}" |
525 | source ${INSTALLPATH}/etc/alx_version |
526 | KRNVER="ALX-${ALXVER}" |
527 | ALXVER="${OLD_ALXVER}" |
528 | fi |
529 | |
530 | [[ -z ${KRNVER} ]] && KRNVER="AutoSta_LX" |
531 | [[ -z ${KRNIMG} ]] && KRNIMG="bzImage" |
532 | [[ -z ${KRNINITRD} ]] && KRNINITRD="initrd" |
533 | |
534 | echo -e "default 0" > ${INSTALLPATH}/boot/grub/grub.conf || die |
535 | echo -e "timeout 0" >> ${INSTALLPATH}/boot/grub/grub.conf ||die |
536 | |
537 | echo -e "\ntitle=${KRNVER}" >> ${INSTALLPATH}/boot/grub/grub.conf || die |
538 | echo -e "root (hd0,0)" >> ${INSTALLPATH}/boot/grub/grub.conf || die |
539 | |
540 | echo -e "kernel (hd0,0)/boot/${KRNIMG} root=${ROOTHDD} quiet" >> ${INSTALLPATH}/boot/grub/grub.conf || die |
541 | |
542 | ### bootsector schreiben chrooted schreiben (gentoo) |
543 | if [ -f ${INSTALLPATH}/sbin/grub ] |
544 | then |
545 | cat > ${INSTALLPATH}/root/.bashrc << CHROOTEOF |
546 | /sbin/grub --no-floppy --batch << "EOF" 1> /dev/null 2> /dev/null |
547 | root (hd0,0) |
548 | setup (hd0) |
549 | quit |
550 | EOF |
551 | exit 0 |
552 | CHROOTEOF |
553 | fi |
554 | |
555 | ### bootsector schreiben chrooted schreiben (lfs/magellan) |
556 | if [ -f ${INSTALLPATH}/usr/sbin/grub ] |
557 | then |
558 | cat > ${INSTALLPATH}/root/.bashrc << CHROOTEOF |
559 | /usr/sbin/grub --no-floppy --batch << "EOF" 1> /dev/null 2> /dev/null |
560 | root (hd0,0) |
561 | setup (hd0) |
562 | quit |
563 | EOF |
564 | exit 0 |
565 | CHROOTEOF |
566 | fi |
567 | |
568 | ##enters chroot |
569 | mount -t proc none ${INSTALLPATH}/proc |
570 | mount -o bind /dev ${INSTALLPATH}/dev |
571 | chroot ${INSTALLPATH} /bin/bash --rcfile /root/.bashrc -i |
572 | umount ${INSTALLPATH}/proc |
573 | umount ${INSTALLPATH}/dev |
574 | rm ${INSTALLPATH}/root/.bashrc |
575 | } |
576 | |
577 | install_alxconfig() |
578 | { |
579 | lastdir="$(pwd)" |
580 | |
581 | mkdir -p ${INSTALLPATH}/opt/alx-config || die |
582 | cd ${INSTALLPATH}/opt/alx-config || die |
583 | tar xzpf ${CDPATH}/alx-config/alx-config.tar.gz || die |
584 | chmod a+x ${INSTALLPATH}/opt/alx-config/Configurator/config_functions.sh || die |
585 | chmod a+x ${INSTALLPATH}/opt/alx-config/Configurator/config_menu.sh || die |
586 | ln -sf /opt/alx-config/Configurator/config_menu.sh ${INSTALLPATH}/bin/ALXConfig || die |
587 | |
588 | cd ${lastdir} || die |
589 | } |
590 | |
591 | |
592 | install_system_settings() |
593 | { |
594 | ### schreibe fstab |
595 | echo -e "${BOOTHDD}\t/boot\text3\tnoatime,noauto\t1 1" > ${INSTALLPATH}/etc/fstab || die |
596 | echo -e "${ROOTHDD}\t/\text3\tnoatime\t0 0" >> ${INSTALLPATH}/etc/fstab || die |
597 | echo -e "${SWAPHDD}\tswap\tswap\tpri=1\t0 0" >> ${INSTALLPATH}/etc/fstab || die |
598 | echo -e "none\t/proc\tproc\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die |
599 | |
600 | echo -e "none\t/dev/shm\ttmpfs\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die |
601 | echo -e "none\t/proc/bus/usb\tusbfs\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die |
602 | } |
603 | |
604 | install_system_settings_flash() |
605 | { |
606 | ### schreibe fstab |
607 | echo -e "${ROOTHDD}\t/\text3\tnoatime\t0 0" > ${INSTALLPATH}/etc/fstab || die |
608 | echo -e "none\t/proc\tproc\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die |
609 | |
610 | echo -e "none\t/dev/shm\ttmpfs\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die |
611 | echo -e "none\t/proc/bus/usb\tusbfs\tdefaults\t0 0" >> ${INSTALLPATH}/etc/fstab || die |
612 | } |
613 | |
614 | install_hotfixes() |
615 | { |
616 | if [ -f ${CDPATH}/hotfixes/hotfixes.sh ] |
617 | then |
618 | dialog_hotfixes |
619 | sleep1 |
620 | ${CDPATH}/hotfixes/hotfixes.sh |
621 | fi |
622 | } |
623 | |
624 | install_umount_rootfs() |
625 | { |
626 | cd / |
627 | umount ${INSTALLPATH}/boot || die |
628 | umount ${INSTALLPATH} || die |
629 | swapoff ${SWAPHDD} || die |
630 | } |
631 | |
632 | install_umount_rootfs_flash() |
633 | { |
634 | cd / |
635 | umount ${INSTALLPATH} || die |
636 | } |
637 | |
638 | install_do_reboot() |
639 | { |
640 | reboot |
641 | } |
642 | |
643 | ################################################# |
644 | # Install Ablauf Scripte # |
645 | ################################################# |
646 | |
647 | run_install_normal() |
648 | { |
649 | dialog_setup_hdd_found_manuell |
650 | |
651 | dialog_setup_hdd_partitions_manuell |
652 | dialog_setup_hdd_format |
653 | setup_hdd_format > /dev/null |
654 | install_mount_rootfs |
655 | (install_system_image > /tmp/install.log) 2> /tmp/install_errors.log | dialog_install_meter | dialog_install_system_image |
656 | |
657 | dialog_install_bootsector |
658 | install_bootsector_chroot |
659 | |
660 | dialog_install_settings |
661 | sleep 1 |
662 | install_system_settings |
663 | install_hotfixes |
664 | install_umount_rootfs |
665 | dialog_install_successful |
666 | } |
667 | |
668 | run_install_flash() |
669 | { |
670 | dialog_setup_hdd_found_manuell |
671 | |
672 | dialog_setup_hdd_partitions_manuell_flash |
673 | dialog_setup_hdd_format |
674 | setup_hdd_format_flash > /dev/null |
675 | install_mount_rootfs_flash |
676 | (install_system_image > /tmp/install.log) 2> /tmp/install_errors.log | dialog_install_meter | dialog_install_system_image |
677 | |
678 | dialog_install_bootsector |
679 | install_bootsector_chroot |
680 | |
681 | dialog_install_settings |
682 | sleep 1 |
683 | install_system_settings_flash |
684 | install_hotfixes |
685 | install_umount_rootfs_flash |
686 | dialog_install_successful |
687 | } |
688 | |
689 | run_install_silent() |
690 | { |
691 | echo "starting silent install ..." |
692 | sleep 1 |
693 | } |
694 | |
695 | run_install_unattended() |
696 | { |
697 | echo "starting unattended install ..." |
698 | sleep 1 |
699 | } |
700 | |
701 | if [[ $1 = unattended ]] |
702 | then |
703 | run_install_unattended |
704 | else |
705 | dialog_main |
706 | fi |
707 | |
708 | exit 0 |