diff options
Diffstat (limited to 'scripts/contrib')
-rwxr-xr-x | scripts/contrib/mkefidisk.sh | 63 |
1 files changed, 58 insertions, 5 deletions
diff --git a/scripts/contrib/mkefidisk.sh b/scripts/contrib/mkefidisk.sh index 55f72b0f54..cd4de05336 100755 --- a/scripts/contrib/mkefidisk.sh +++ b/scripts/contrib/mkefidisk.sh | |||
@@ -152,8 +152,55 @@ unmount() { | |||
152 | # Parse and validate arguments | 152 | # Parse and validate arguments |
153 | # | 153 | # |
154 | if [ $# -lt 3 ] || [ $# -gt 4 ]; then | 154 | if [ $# -lt 3 ] || [ $# -gt 4 ]; then |
155 | usage | 155 | if [ $# -eq 1 ]; then |
156 | exit 1 | 156 | AVAILABLE_DISK=`lsblk | grep "disk" | cut -f 1 -d " "` |
157 | X=0 | ||
158 | for disk in `echo $AVAILABLE_DISK`; do | ||
159 | mounted=`lsblk /dev/$disk | awk {'print $7'} | sed "s/MOUNTPOINT//"` | ||
160 | if [ -z "$mounted" ]; then | ||
161 | UNMOUNTED_AVAILABLES="$UNMOUNTED_AVAILABLES /dev/$disk" | ||
162 | info "$X - /dev/$disk" | ||
163 | X=`expr $X + 1` | ||
164 | fi | ||
165 | done | ||
166 | if [ $X -eq 0 ]; then | ||
167 | die "No unmounted device found." | ||
168 | fi | ||
169 | read -p "Choose unmounted device number: " DISK_NUMBER | ||
170 | X=0 | ||
171 | for line in `echo $UNMOUNTED_AVAILABLES`; do | ||
172 | if [ $DISK_NUMBER -eq $X ]; then | ||
173 | DISK_TO_BE_FLASHED=$line | ||
174 | break | ||
175 | else | ||
176 | X=`expr $X + 1` | ||
177 | fi | ||
178 | done | ||
179 | if [ -z "$DISK_TO_BE_FLASHED" ]; then | ||
180 | die "Option \"$DISK_NUMBER\" is invalid. Choose a valid option" | ||
181 | else | ||
182 | if [ -z `echo $DISK_TO_BE_FLASHED | grep "mmc"` ]; then | ||
183 | TARGET_TO_BE_BOOT="/dev/sda" | ||
184 | else | ||
185 | TARGET_TO_BE_BOOT="/dev/mmcblk0" | ||
186 | fi | ||
187 | fi | ||
188 | echo "" | ||
189 | echo "Choose a name of the device that will be boot from" | ||
190 | echo -n "Recommended name is: " | ||
191 | info "$TARGET_TO_BE_BOOT" | ||
192 | read -p "Is target device okay? [y/N]: " RESPONSE | ||
193 | if [ "$RESPONSE" != "y" ]; then | ||
194 | read -p "Choose target device name: " TARGET_TO_BE_BOOT | ||
195 | fi | ||
196 | echo "" | ||
197 | if [ -z "$TARGET_TO_BE_BOOT" ]; then | ||
198 | die "Error: choose a valid target name" | ||
199 | fi | ||
200 | else | ||
201 | usage | ||
202 | exit 1 | ||
203 | fi | ||
157 | fi | 204 | fi |
158 | 205 | ||
159 | if [ "$1" = "-v" ]; then | 206 | if [ "$1" = "-v" ]; then |
@@ -162,9 +209,15 @@ if [ "$1" = "-v" ]; then | |||
162 | shift | 209 | shift |
163 | fi | 210 | fi |
164 | 211 | ||
165 | DEVICE=$1 | 212 | if [ -z "$AVAILABLE_DISK" ]; then |
166 | HDDIMG=$2 | 213 | DEVICE=$1 |
167 | TARGET_DEVICE=$3 | 214 | HDDIMG=$2 |
215 | TARGET_DEVICE=$3 | ||
216 | else | ||
217 | DEVICE=$DISK_TO_BE_FLASHED | ||
218 | HDDIMG=$1 | ||
219 | TARGET_DEVICE=$TARGET_TO_BE_BOOT | ||
220 | fi | ||
168 | 221 | ||
169 | LINK=$(readlink $DEVICE) | 222 | LINK=$(readlink $DEVICE) |
170 | if [ $? -eq 0 ]; then | 223 | if [ $? -eq 0 ]; then |