1
0
Fork 0
mirror of https://github.com/iiab/iiab.git synced 2025-03-09 15:40:17 +00:00
This commit is contained in:
Jerry Vonau 2025-02-19 00:51:37 -06:00
parent 896d31cf90
commit 3e6f551d5c

View file

@ -22,37 +22,19 @@
# Better to set this in /etc/usbmount/usbmount.conf
# VERBOSE=yes
logger -t "usbmount - usb_lib (70-usb-library)" "UM_MOUNTPOINT is: $UM_MOUNTPOINT"
logger -t "usbmount - usb_lib (70-usb-library)" "UM_DEVICE is: $UM_DEVICE"
#UM_DEV=$(findmnt -no source $UM_MOUNTPOINT)
logger -p user.notice -t "usbmount - usb_lib (70-usb-library)" "UM_MOUNTPOINT is: $UM_MOUNTPOINT"
logger -p user.notice -t "usbmount - usb_lib (70-usb-library)" "UM_DEVICE is: $UM_DEVICE"
# 2022-06-16 better security thanks to @tim-moody and @jvonau:
# https://github.com/iiab/iiab/pull/3254
LIB_DEV=$(findmnt -no source /library | cut -d '[' -f 1)
# excluded from mounting in usbmount
#ROOT_DEV=$(findmnt -no source /)
#BOOT_DEV=$(findmnt -no source /boot)
#BOOTFW_DEV=$(findmnt -no source /boot/firmware)
# Verbose logging to illuminate occasional boot bugginess:
logger -t "usbmount - usb_lib (70-usb-library)" "LIB_DEV is: $LIB_DEV"
#logger -t "usb_lib (70-usb-library)" "ROOT_DEV is: $ROOT_DEV"
#logger -t "usb_lib (70-usb-library)" "BOOT_DEV is: $BOOT_DEV"
#logger -t "usb_lib (70-usb-library)" "BOOTFW_DEV is: $BOOTFW_DEV"
logger -p user.notice -t "usbmount - usb_lib (70-usb-library)" "LIB_DEV is: $LIB_DEV"
#if [ "$UM_DEV" == "$LIB_DEV" ]; then
if [ "$UM_DEVICE" == "$LIB_DEV" ]; then
logger -t "usbmount - usb_lib (70-usb-library)" "Skipping $UM_MOUNTPOINT containing /library"
logger -p user.notice -t "usbmount - usb_lib (70-usb-library)" "Skipping $UM_MOUNTPOINT containing /library"
exit 1
#elif [ "$UM_DEV" == "$ROOT_DEV" ]; then
# logger -t "usb_lib (70-usb-library)" "Skipping $UM_MOUNTPOINT containing rootfs"
# exit 1
#elif [ "$UM_DEV" == "$BOOT_DEV" ]; then
# logger -t "usb_lib (70-usb-library)" "Skipping $UM_MOUNTPOINT containing /boot"
# exit 1
#elif [ "$UM_DEV" == "$BOOTFW_DEV" ]; then
# logger -t "usb_lib (70-usb-library)" "Skipping $UM_MOUNTPOINT containing /boot/firmware"
# exit 1
fi
# 2025-01-25: Check for existence of folder PUBLIC on USB stick: if found, the stick will not be completely browsable.
@ -60,20 +42,20 @@ fi
# "public artwork" — as summarized here: https://github.com/iiab/iiab/blob/master/roles/usb_lib/README.rst
if [ -d $UM_MOUNTPOINT/PUBLIC ]; then
SHARE_DIR=$UM_MOUNTPOINT/PUBLIC
logger -t "usbmount - usb_lib (70-usb-library)" "Found /PUBLIC on $UM_MOUNTPOINT"
logger -p user.notice -t "usbmount - usb_lib (70-usb-library)" "Found /PUBLIC on $UM_MOUNTPOINT"
else
SHARE_DIR=$UM_MOUNTPOINT
logger -t "usbmount - usb_lib (70-usb-library)" "Did not find /PUBLIC on $UM_MOUNTPOINT"
logger -p user.notice -t "usbmount - usb_lib (70-usb-library)" "Did not find /PUBLIC on $UM_MOUNTPOINT"
fi
CONTENT_LINK_USB=$(basename $UM_MOUNTPOINT | awk '{print toupper($0)}')
if [ -z "$CONTENT_LINK_USB" ]; then
logger -t "usbmount - usb_lib (70-usb-library)" 'ERROR: Var CONTENT_LINK_USB is empty ("rm -rf /library/www/html/local_content/" would be dangerous!)'
logger -p user.notice -t "usbmount - usb_lib (70-usb-library)" 'ERROR: Var CONTENT_LINK_USB is empty ("rm -rf /library/www/html/local_content/" would be dangerous!)'
exit 1
fi
CONTENT_LINK="{{ doc_root }}/local_content/$CONTENT_LINK_USB"
# 'rm -rf' even stronger than 'ln -nsf' and 'ln -Tsf'
# https://serverfault.com/questions/147787/how-to-update-a-symbolic-link-target-ln-f-s-not-working/522483#522483
logger -t "usbmount - usb_lib (70-usb-library)" "Creating link from $CONTENT_LINK to $SHARE_DIR"
logger -p user.notice -t "usbmount - usb_lib (70-usb-library)" "Creating link from $CONTENT_LINK to $SHARE_DIR"
rm -rf $CONTENT_LINK
ln -s $SHARE_DIR $CONTENT_LINK