usbinstall.sh: install bootx86.efi and bootia32.efi if found in EFI partition
This commit is contained in:
parent
9a46459efc
commit
2139bc2ac6
@ -246,17 +246,17 @@ if [ "$?" != "0" ]; then
|
|||||||
errorAndExit $"Error:"" \"parted\" "$"exit with error (see $LOGFILE)"
|
errorAndExit $"Error:"" \"parted\" "$"exit with error (see $LOGFILE)"
|
||||||
fi
|
fi
|
||||||
# EFI partition
|
# EFI partition
|
||||||
sudo parted -s -- $SELECT_USB mkpart primary fat32 0 20M &>>$LOGFILE
|
sudo parted -s -a optimal -- $SELECT_USB mkpart primary fat32 0 20M &>>$LOGFILE
|
||||||
if [ "$?" != "0" ]; then
|
if [ "$?" != "0" ]; then
|
||||||
errorAndExit $"Error:"" \"parted\" "$"exit with error (see $LOGFILE)"
|
errorAndExit $"Error:"" \"parted\" "$"exit with error (see $LOGFILE)"
|
||||||
fi
|
fi
|
||||||
# openmamba partition
|
# openmamba partition
|
||||||
sudo parted -s -- $SELECT_USB mkpart primary ext4 20M -1 &>>$LOGFILE
|
sudo parted -s -a optimal -- $SELECT_USB mkpart primary ext4 20M -1 &>>$LOGFILE
|
||||||
if [ "$?" != "0" ]; then
|
if [ "$?" != "0" ]; then
|
||||||
errorAndExit $"Error:"" \"parted\" "$"exit with error (see $LOGFILE)"
|
errorAndExit $"Error:"" \"parted\" "$"exit with error (see $LOGFILE)"
|
||||||
fi
|
fi
|
||||||
# boot flag on openmamba partition
|
# boot flag on openmamba partition
|
||||||
sudo parted -s -- $SELECT_USB set 2 boot on &>>$LOGFILE
|
sudo parted -s $SELECT_USB set 2 boot on &>>$LOGFILE
|
||||||
if [ "$?" != "0" ]; then
|
if [ "$?" != "0" ]; then
|
||||||
errorAndExit $"Error:"" \"parted\" "$"exit with error (see $LOGFILE)"
|
errorAndExit $"Error:"" \"parted\" "$"exit with error (see $LOGFILE)"
|
||||||
fi
|
fi
|
||||||
@ -275,12 +275,29 @@ if [ "$?" != "0" ]; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
sleep 1
|
sleep 1
|
||||||
|
LANG=C udisks --mount ${SELECT_USB}1 &>>$LOGFILE
|
||||||
|
if [ "$?" != "0" ]; then
|
||||||
|
errorAndExit $"Error:"" \"udisks --mount\" "$"exit with error (see $LOGFILE)"
|
||||||
|
fi
|
||||||
LANG=C udisks --mount ${SELECT_USB}2 &>>$LOGFILE
|
LANG=C udisks --mount ${SELECT_USB}2 &>>$LOGFILE
|
||||||
if [ "$?" != "0" ]; then
|
if [ "$?" != "0" ]; then
|
||||||
errorAndExit $"Error:"" \"udisks --mount\" "$"exit with error (see $LOGFILE)"
|
errorAndExit $"Error:"" \"udisks --mount\" "$"exit with error (see $LOGFILE)"
|
||||||
fi
|
fi
|
||||||
set_pbar 30
|
set_pbar 30
|
||||||
|
|
||||||
|
# Riceve la mountdir della chiavetta da dbus
|
||||||
|
MOUNTDIR_EFI=`dbus_properties_get_stringlist org.freedesktop.UDisks /org/freedesktop/UDisks/devices/${SELECT_USB/*\/}1 \
|
||||||
|
org.freedesktop.UDisks.Device DeviceMountPaths`
|
||||||
|
|
||||||
|
if [ ! -d "$MOUNTDIR_EFI" ]; then
|
||||||
|
errorAndExit $"Error: unable to found usb mount path"
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p $MOUNTDIR_EFI/EFI/BOOT/
|
||||||
|
for f in /usr/lib/grub/bootx64.efi /usr/lib/grub/bootia32.efi; do
|
||||||
|
[ -e $f ] && cp $f $MOUNTDIR_EFI/EFI/BOOT/
|
||||||
|
done
|
||||||
|
|
||||||
# Riceve la mountdir della chiavetta da dbus
|
# Riceve la mountdir della chiavetta da dbus
|
||||||
MOUNTDIR=`dbus_properties_get_stringlist org.freedesktop.UDisks /org/freedesktop/UDisks/devices/${SELECT_USB/*\/}2 \
|
MOUNTDIR=`dbus_properties_get_stringlist org.freedesktop.UDisks /org/freedesktop/UDisks/devices/${SELECT_USB/*\/}2 \
|
||||||
org.freedesktop.UDisks.Device DeviceMountPaths`
|
org.freedesktop.UDisks.Device DeviceMountPaths`
|
||||||
@ -302,10 +319,8 @@ set_pbar 38
|
|||||||
set_status $"Writing bootloader..."
|
set_status $"Writing bootloader..."
|
||||||
echo $"Writing bootloader..."
|
echo $"Writing bootloader..."
|
||||||
sudo extlinux --install boot
|
sudo extlinux --install boot
|
||||||
sudo install-mbr -e 1 $SELECT_USB
|
|
||||||
set_pbar 45
|
set_pbar 45
|
||||||
|
|
||||||
|
|
||||||
set_status $"Copying ISO..."
|
set_status $"Copying ISO..."
|
||||||
echo $"Copying ISO..."
|
echo $"Copying ISO..."
|
||||||
# Copy code
|
# Copy code
|
||||||
@ -327,13 +342,20 @@ done
|
|||||||
ln -fs `basename $SELECT_ISO` ./openmamba-live.iso
|
ln -fs `basename $SELECT_ISO` ./openmamba-live.iso
|
||||||
popd >/dev/null
|
popd >/dev/null
|
||||||
sync
|
sync
|
||||||
set_pbar 98
|
set_pbar 95
|
||||||
|
|
||||||
set_status $"Unmount usb device"
|
set_status $"Unmount usb device"
|
||||||
echo $"Unmount usb device"
|
echo $"Unmount usb device"
|
||||||
LANG=C udisks --unmount ${SELECT_USB}2 | grep failed && {
|
LANG=C udisks --unmount ${SELECT_USB}1 | grep failed && {
|
||||||
|
errorAndExit $"Error: fail to umount the usb key (${SELECT_USB}1)"
|
||||||
|
}
|
||||||
|
LANG=C udisks --unmount ${SELECT_USB}2 | grep failed && {
|
||||||
errorAndExit $"Error: fail to umount the usb key (${SELECT_USB}2)"
|
errorAndExit $"Error: fail to umount the usb key (${SELECT_USB}2)"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# WARNING: calling install-mbr after unmounting to prevent problems of FAT since EFI partition introduction
|
||||||
|
sudo install-mbr $SELECT_USB
|
||||||
|
|
||||||
set_pbar 100
|
set_pbar 100
|
||||||
exit_frontend ""
|
exit_frontend ""
|
||||||
echo $"Done!"
|
echo $"Done!"
|
||||||
|
Loading…
Reference in New Issue
Block a user