Skip to content

Instantly share code, notes, and snippets.

@ink-splatters
Created October 17, 2023 14:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ink-splatters/6ed6f4c5b51591c1facdbe48195d00de to your computer and use it in GitHub Desktop.
Save ink-splatters/6ed6f4c5b51591c1facdbe48195d00de to your computer and use it in GitHub Desktop.
generate /etc/fstab nomount entries from APFS container volumes
#!/usr/bin/env bash
set -e
set -o pipefail
disk=$(echo "$1" | sed -E 's/^\/dev\///g')
if [[ $# != 1 || ! "$disk" =~ disk[0-9]$ ]]; then
cat <<EOF
usage: $0 <APFS container node>
EOF
exit 1
fi
cnt=$(/usr/sbin/diskutil apfs list $disk | grep -ic \>\ Volume)
echo -- APFS container node: $disk
echo -- '#' volumes: $cnt
for ((i = 1; i <= cnt; i++)); do
/usr/sbin/diskutil info ${disk}s${i} | grep -E 'Volume (Name|UUID)' | sed -E 's/^.{30}//' | tail -r | tr '\n' '\0' | xargs -n2 -0 | sed -E 's/([0-9A-F-]{36} )/\1none apfs rw,noauto # /g'
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment