REBOOT="@INITRD_RECOVERY_LIBEXEC_DIR@/minireboot"
SYNC="/usr/bin/sync"
UMOUNT="/usr/bin/umount"
+CUT="/usr/bin/cut"
+LS="/usr/bin/ls"
+MKDIR="/usr/bin/mkdir"
+RMDIR="/usr/bin/rmdir"
+TR="/usr/bin/tr"
#------------------------------------------------
# get partition id
}
#------------------------------------------------
+# mount_usb_partitions
+#------------------------------------------------
+USB_MOUNTPOINT_PREFIX=${FAKE_ROOT}/opt/media/USBDrive
+mount_usb_partitions() {
+ echo "mount USB partitions"
+ DEVICE_TYPE_LIST=(
+ ext4
+ vfat
+ )
+
+ for DEVICE_TYPE in ${DEVICE_TYPE_LIST[@]}
+ do
+ DEVICES=$("$BLKID" /dev/sd?? -t TYPE="${DEVICE_TYPE}" -o device)
+ for DEVICE in ${DEVICES}
+ do
+ USB_MOUNTPOINT_INDEX=$(echo ${DEVICE} | "$CUT" -b 8- | "$TR" '[:lower:]' '[:upper:]')
+ USB_MOUNTPOINT=${USB_MOUNTPOINT_PREFIX}${USB_MOUNTPOINT_INDEX}
+ "$MKDIR" ${USB_MOUNTPOINT}
+ "$MOUNT" -t ${DEVICE_TYPE} ${DEVICE} ${USB_MOUNTPOINT}
+ done
+ done
+}
+
+#------------------------------------------------
# mount_partitions
#------------------------------------------------
mount_partitions() {
"$MOUNT" -t devtmpfs devtmpfs ${FAKE_ROOT}/dev
"$MOUNT" -t devpts devpts ${FAKE_ROOT}/dev/pts
"$MOUNT" -t tmpfs tmpfs ${FAKE_ROOT}/tmp -o mode=1777,smackfsroot=*
+
+ mount_usb_partitions
+}
+
+#------------------------------------------------
+# umount_usb_partitions
+#------------------------------------------------
+umount_usb_partitions() {
+ echo "umount USB partitions"
+ USB_MOUNTPOINTS=$("$LS" -d ${USB_MOUNTPOINT_PREFIX}*)
+ for USB_MOUNTPOINT in ${USB_MOUNTPOINTS}
+ do
+ "$UMOUNT" ${USB_MOUNTPOINT}
+ "$RMDIR" ${USB_MOUNTPOINT}
+ done
}
#------------------------------------------------
echo "umount partitions"
"$SYNC"
+ umount_usb_partitions
+
"$UMOUNT" ${FAKE_ROOT}/opt/usr
"$UMOUNT" ${FAKE_ROOT}/opt
"$UMOUNT" ${FAKE_ROOT}