3 PATH=/bin:/usr/bin:/sbin:/usr/sbin
4 SYSTEM_RECOVERY="@SYSTEM_RECOVERY_LIBEXEC_DIR@/system-recovery"
5 SYSTEM_RECOVERY_GUI="/usr/bin/system-recovery_gui"
8 BLKID="/usr/sbin/blkid"
9 REBOOT="@INITRD_RECOVERY_LIBEXEC_DIR@/minireboot"
11 UMOUNT="/usr/bin/umount"
14 MKDIR="/usr/bin/mkdir"
15 RMDIR="/usr/bin/rmdir"
18 #------------------------------------------------
19 # mount_usb_partitions
20 #------------------------------------------------
21 USB_MOUNTPOINT_PREFIX=@USB_MOUNTPOINT_ROOT@/@USB_MOUNTPOINT_PREFIX@
22 mount_usb_partitions() {
23 echo "mount USB partitions"
29 LAST_MOUNTED_DEVICE=""
30 for DEVICE_TYPE in ${DEVICE_TYPE_LIST[@]}
33 for ((i=0; i<10; i++))
35 DEVICES=$("$BLKID" /dev/sd* -t TYPE="${DEVICE_TYPE}" -o device)
36 if [ ! -z "${DEVICES}" ]
38 for DEVICE in ${DEVICES}
40 USB_MOUNTPOINT_INDEX=$(echo ${DEVICE} | "$CUT" -b 8- | "$TR" '[:lower:]' '[:upper:]')
41 USB_MOUNTPOINT=${USB_MOUNTPOINT_PREFIX}${USB_MOUNTPOINT_INDEX}
42 "$MKDIR" -p ${USB_MOUNTPOINT}
43 "$MOUNT" -t ${DEVICE_TYPE} ${DEVICE} ${USB_MOUNTPOINT}
45 LAST_MOUNTED_DEVICE=${DEVICE}
54 if [ -z "${LAST_MOUNTED_DEVICE}" ]
56 echo "WARNING : USB not mounted"
60 #------------------------------------------------
61 # umount_usb_partitions
62 #------------------------------------------------
63 umount_usb_partitions() {
64 echo "umount USB partitions"
65 USB_MOUNTPOINTS=$("$LS" -d ${USB_MOUNTPOINT_PREFIX}*)
66 for USB_MOUNTPOINT in ${USB_MOUNTPOINTS}
68 "$UMOUNT" ${USB_MOUNTPOINT}
69 "$RMDIR" ${USB_MOUNTPOINT}
73 #------------------------------------------------
75 #------------------------------------------------
87 #------------------------------------------------
88 # system-recovery initrc
89 #------------------------------------------------
90 echo "Starting system recovery."
93 # For debugging - It should be deleted on Release
94 /sbin/agetty -l /bin/sh -n --keep-baud 115200,38400,9600 ttyS1 linux &
96 [ -x "${SYSTEM_RECOVERY_GUI}" ] && "${SYSTEM_RECOVERY_GUI}" &
97 [ -x "${SYSTEM_RECOVERY}" ] && "${SYSTEM_RECOVERY}"