瀏覽代碼

Merge pull request #25188 from armills/nuke-graph-directory

nuke-graph-directory.sh: Improve subvolume search
Tõnis Tiigi 9 年之前
父節點
當前提交
8f8bb8ad4c
共有 1 個文件被更改,包括 4 次插入7 次删除
  1. 4 7
      contrib/nuke-graph-directory.sh

+ 4 - 7
contrib/nuke-graph-directory.sh

@@ -51,13 +51,10 @@ done
 
 # now, let's go destroy individual btrfs subvolumes, if any exist
 if command -v btrfs > /dev/null 2>&1; then
-	root="$(df "$dir" | awk 'NR>1 { print $NF }')"
-	root="${root%/}" # if root is "/", we want it to become ""
-	for subvol in $(btrfs subvolume list -o "$root/" 2>/dev/null | awk -F' path ' '{ print $2 }' | sort -r); do
-		subvolDir="$root/$subvol"
-		if dir_in_dir "$subvolDir" "$dir"; then
-			( set -x; btrfs subvolume delete "$subvolDir" )
-		fi
+	# Find btrfs subvolumes under $dir checking for inode 256
+	# Source: http://stackoverflow.com/a/32865333
+	for subvol in $(find "$dir" -type d -inum 256 | sort -r); do
+		( set -x; btrfs subvolume delete "$subvol" )
 	done
 fi