Contents of /trunk/installer/include/prepare_disks.sh
Parent Directory | Revision Log
Revision 1061 -
(show annotations)
(download)
(as text)
Mon May 31 21:01:51 2010 UTC (14 years, 3 months ago) by niro
File MIME type: application/x-sh
File size: 2308 byte(s)
Mon May 31 21:01:51 2010 UTC (14 years, 3 months ago) by niro
File MIME type: application/x-sh
File size: 2308 byte(s)
-pipe everything to INSTALLER_LOG -fixed printf; added crlf for "gauge" in ncurses gui -honor GUITYPE variable properly
1 | #!/bin/sh |
2 | # $Id$ |
3 | |
4 | source /etc/installer.conf |
5 | |
6 | : ${INSTALL_ROOT="/mnt/magellan"} |
7 | KNOWN_DISKS="ROOT BOOT SWAP HOME TMP USER VAR SVR OPT" |
8 | |
9 | format_disks() |
10 | { |
11 | local disk |
12 | local disk_part |
13 | local disk_fs |
14 | local opts |
15 | local progress |
16 | local percent |
17 | |
18 | declare -i progress=0 |
19 | |
20 | # disk format |
21 | for disk in ${KNOWN_DISKS} |
22 | do |
23 | disk_part=$(eval echo \$PARTITION_DISK_${disk}) |
24 | disk_fs=$(eval echo \$PARTITION_FS_${disk}) |
25 | |
26 | if [[ ! -z ${disk_part} ]] |
27 | then |
28 | if [[ ! -z ${disk_fs} ]] |
29 | then |
30 | case ${disk_fs} in |
31 | swap) mkswap ${disk_part} &>> ${INSTALLER_LOG};; |
32 | reiserfs) mkfs.${disk_fs} -f ${disk_part} &>> ${INSTALLER_LOG};; |
33 | keep-as-is) echo "keeping ${disk_part} 'as-is'." &>> ${INSTALLER_LOG};; |
34 | *) mkfs.${disk_fs} ${disk_part} &>> ${INSTALLER_LOG};; |
35 | esac |
36 | fi |
37 | fi |
38 | |
39 | (( progress++ )) |
40 | percent=$(echo ${progress} 9 | awk '{print ($1 / $2 * 100) - 1}') |
41 | if [[ ${GUITYPE} = ncurses ]] |
42 | then |
43 | # no floats in ncurses gui possible + crlf |
44 | printf %.0f "${percent}";printf '\n' |
45 | else |
46 | echo "${percent}" |
47 | fi |
48 | done |
49 | |
50 | echo "100" |
51 | } |
52 | |
53 | mount_disks() |
54 | { |
55 | local disk |
56 | local disk_part |
57 | local dest |
58 | |
59 | # activate swap |
60 | swapon ${PARTITION_DISK_SWAP} |
61 | |
62 | # first mount rootfs |
63 | mount ${PARTITION_DISK_ROOT} ${INSTALL_ROOT} |
64 | |
65 | # than all other |
66 | for disk in ${KNOWN_DISKS} |
67 | do |
68 | case ${disk} in |
69 | BOOT) dest=boot ;; |
70 | HOME) dest=home ;; |
71 | TMP) dest=tmp ;; |
72 | USER) dest=usr ;; |
73 | VAR) dest=var ;; |
74 | SVR) dest=svr ;; |
75 | OPT) dest=opt ;; |
76 | *) continue ;; |
77 | esac |
78 | |
79 | disk_part=$(eval echo \$PARTITION_DISK_${disk}) |
80 | if [[ ! -z ${disk_part} ]] |
81 | then |
82 | install -d ${INSTALL_ROOT}/${dest} |
83 | mount ${disk_part} ${INSTALL_ROOT}/${dest} |
84 | fi |
85 | done |
86 | } |
87 | |
88 | umount_disks() |
89 | { |
90 | local disk |
91 | local disk_part |
92 | local dest |
93 | |
94 | # first umount all other |
95 | for disk in ${KNOWN_DISKS} |
96 | do |
97 | # excludes |
98 | case ${disk} in |
99 | ROOT) continue ;; |
100 | SWAP) continue ;; |
101 | esac |
102 | |
103 | disk_part=$(eval echo \$PARTITION_DISK_${disk}) |
104 | [[ ! -z ${disk_part} ]] && umount ${disk_part} |
105 | done |
106 | |
107 | # then umount rootfs |
108 | umount ${PARTITION_DISK_ROOT} |
109 | |
110 | # de-activate swap |
111 | swapoff ${PARTITION_DISK_SWAP} |
112 | } |
113 | |
114 | case $2 in |
115 | --ncurses) GUITYPE="ncurses" ;; |
116 | --gtk) GUITYPE="gtk" ;; |
117 | *) GUITYPE="gtk" ;; |
118 | esac |
119 | |
120 | case $1 in |
121 | --format | -f) format_disks ;; |
122 | --mount | -m ) mount_disks ;; |
123 | --umount | -u ) umount_disks ;; |
124 | *) echo "unknown option '$1'." ;; |
125 | esac |
Properties
Name | Value |
---|---|
svn:executable | * |