aboutsummaryrefslogtreecommitdiff
path: root/scripts/automountd
blob: 7276922630e8ca4ae2191185213b4f5fc1c9fd98 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#!/bin/sh

pathtoname() {
	udevadm info -p /sys/"$1" | awk -v FS== '/DEVNAME/ {print $2}'
}

stdbuf -oL -- udevadm monitor --udev -s block | while read -r -- _ _ event devpath _; do
	if [ "$event" = add ]; then
		devname=$(pathtoname "$devpath")
		# udisksctl mount --block-device "$devname" --no-user-interaction
		
		target="$(lsblk -no LABEL "$devname")"
		[ -z "$target" ] && target="$(lsblk -no UUID "$devname")"
		[ -z "$target" ] && continue
		sudo mount -v --mkdir "$devname" "/media/root/$target"
		mkdir -pv "/media/master/$target"
		sudo bindfs -u $(id -u) -g $(id -g) "/media/root/$target" "/media/master/$target"
	fi
done