code: plan9front

ref: 5622b0bbd878dbc34045cc6fd37cffa64461eabe
dir: /sys/src/cmd/venti/words/dumpvacroots/

View raw version
#!/bin/rc
# dumpvacroots - dumps all the vac scores ever stored to the venti server
# if nothing else, this illustrates that you have to control access
# to the physical disks storing the archive!

ventihttp=`{
	echo $venti | sed 's/^[a-z]+!([0-9\.]+)![a-z0-9]+$/\1/
		s/^[a-z]+!([0-9\.]+)/\1/; s/$/:8000/'
}

hget http://$ventihttp/index |
	awk '
 		/^index=/ { blockSize = 0 + substr($3, 11) }
 		/^arena=/ { arena = substr($1, 7) }
 		/^	arena=/ {
			start = (0 + substr($5, 2)) - blockSize
			printf("venti/printarena -o %.0f %s\n", start, $3 "")
		}
	' |
	rc |
	awk '$3 == 16 { printf("vac:%s\n", $2 "") }'