iankelling.org
/
git
/
distro-setup
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
syncthing stuff
[distro-setup]
/
mount-latest-subvol
diff --git
a/mount-latest-subvol
b/mount-latest-subvol
index 49ddcd594d39842306b1cc5d82f1d6e947c64dfc..091cf44448d4cace3675056a015f179f9cfa2989 100644
(file)
--- a/
mount-latest-subvol
+++ b/
mount-latest-subvol
@@
-68,7
+68,7
@@
tu() {
e() { printf "%s\n" "$*"; "$@"; }
mnt() {
dir=$1
e() { printf "%s\n" "$*"; "$@"; }
mnt() {
dir=$1
- if ! mountpoint $dir >/dev/null; then
+ if ! mountpoint $dir
&
>/dev/null; then
mkdir -p $dir
e mount $dir
fi
mkdir -p $dir
e mount $dir
fi
@@
-78,18
+78,18
@@
ret=0
first_root_crypt=$(awk '$2 == "/" {print $1}' /etc/mtab)
tu /etc/fstab <<EOF
first_root_crypt=$(awk '$2 == "/" {print $1}' /etc/mtab)
tu /etc/fstab <<EOF
-$first_root_crypt /q btrfs noatime,subvol=q 0 0
-/q/a /a none bind 0 0
+$first_root_crypt /a btrfs noatime,subvol=a 0 0
EOF
case $HOSTNAME in
treetowl|x2|frodo)
tu /etc/fstab <<EOF
EOF
case $HOSTNAME in
treetowl|x2|frodo)
tu /etc/fstab <<EOF
-$first_root_crypt /p btrfs noatime,subvol=p 0 0
+$first_root_crypt /q btrfs noatime,subvol=q 0 0
+/q/p /p none bind 0 0
EOF
;;
esac
EOF
;;
esac
-for vol in q
p
; do
+for vol in q
a
; do
d=/$vol
if ! awk '{print $2}' /etc/fstab | grep -xF $d &>/dev/null; then
continue
d=/$vol
if ! awk '{print $2}' /etc/fstab | grep -xF $d &>/dev/null; then
continue
@@
-101,7
+101,8
@@
for vol in q p; do
while true; do
new_roots=()
for r in ${roots[@]}; do
while true; do
new_roots=()
for r in ${roots[@]}; do
- # /q/a /a none bind 0 0
+ # example
+ # /q/p /p none bind 0 0
new_roots+=($(sed -rn "s#^$r/\S+\s+(\S+)\s+none\s+bind\s.*#\1#p" /etc/fstab))
done
(( ${#new_roots} )) || break
new_roots+=($(sed -rn "s#^$r/\S+\s+(\S+)\s+none\s+bind\s.*#\1#p" /etc/fstab))
done
(( ${#new_roots} )) || break
@@
-196,10
+197,8
@@
EOF
cryptdisks_start crypt_dev_$dev
fi
done
cryptdisks_start crypt_dev_$dev
fi
done
-else
- tu /etc/fstab <<'EOF'
-/q/i /i none bind,noauto 0 0
-EOF
+ # note, could do an else here and have some kind of mount for /i
+ # on other hosts.
fi
exit $ret
fi
exit $ret