diff --git a/dashcam-transfer-mount.sh b/dashcam-transfer-mount.sh new file mode 100755 index 0000000..ce8a627 --- /dev/null +++ b/dashcam-transfer-mount.sh @@ -0,0 +1,24 @@ +#!/bin/bash +# Mount SD card by UUID and start dashcam transfer. +# Called by udev rule 99-dashcam-trigger.rules via systemd-run. +# systemd-run is used (not direct udev exec) because udev context +# lacks mount/umount permissions on Fedora with SELinux enforcing. +UUID=/dev/disk/by-uuid/00D3-7715 +logger -t dashcam-transfer Trigger: SD card detected +for ((i=0; i<60; i++)); do + if [ -e "$UUID" ]; then + logger -t dashcam-transfer Trigger: device ready after ${i}s + break + fi + sleep 1 +done +while mountpoint -q /mnt/sdcard 2>/dev/null; do + umount /mnt/sdcard 2>/dev/null || break +done +mount "$UUID" /mnt/sdcard -o uid=1000,gid=1000,fmask=0000,dmask=0000 2>/dev/null +if [ $? -eq 0 ]; then + logger -t dashcam-transfer Trigger: mounted, starting transfer + systemctl start dashcam-transfer +else + logger -t dashcam-transfer TRIGGER ERROR: mount failed +fi \ No newline at end of file