xref: /plan9/sys/doc/backup.ms (revision fac6300f1f1b25611e114fc0bdda9cf428c13da4)
11c9e5a6cSDavid du Colombier.HTML "Venti Backups to Blu-Ray Discs"
21c9e5a6cSDavid du Colombier.EQ
31c9e5a6cSDavid du Colombierdelim $$
41c9e5a6cSDavid du Colombier.EN
51c9e5a6cSDavid du Colombier.
61c9e5a6cSDavid du Colombier.TL
71c9e5a6cSDavid du ColombierVenti Backups to Blu-Ray Discs
81c9e5a6cSDavid du Colombier.AU
91c9e5a6cSDavid du ColombierGeoff Collyer
101c9e5a6cSDavid du Colombier.AI
111c9e5a6cSDavid du Colombier.MH
121c9e5a6cSDavid du Colombier.SH
131c9e5a6cSDavid du ColombierOverview
141c9e5a6cSDavid du Colombier.PP
151c9e5a6cSDavid du ColombierAs a precaution against multiple disks in our
161c9e5a6cSDavid du ColombierPlan 9
171c9e5a6cSDavid du Colombier.I venti
181c9e5a6cSDavid du Colombierserver's RAID array failing at about the same time,
191c9e5a6cSDavid du Colombieror other catastrophic failure, we record
201c9e5a6cSDavid du Colombier.I venti
211c9e5a6cSDavid du Colombierarenas,
221c9e5a6cSDavid du Colombierafter they are sealed,
231c9e5a6cSDavid du Colombieronto dual-layer Blu-Ray discs (BDs).
241c9e5a6cSDavid du ColombierOne could use other large optical discs instead.
251c9e5a6cSDavid du Colombier.PP
261c9e5a6cSDavid du ColombierThe advertised capacity of a dual-layer BD is 50GB,
271c9e5a6cSDavid du Colombierbut those aren't even disk-manufacturer's (decimal) gigabytes,
281c9e5a6cSDavid du Colombierwhich would give a capacity of
291c9e5a6cSDavid du Colombier$50 times 10 sup 9$ bytes,
301c9e5a6cSDavid du Colombierwhich is roughly equivalent to 46.6 gigabytes,
311c9e5a6cSDavid du Colombieras the term is used by everyone but disk manufacturers.
321c9e5a6cSDavid du ColombierIn the case of BDs,
331c9e5a6cSDavid du Colombiereven that is an exaggeration, with the actual capacity being
341c9e5a6cSDavid du Colombiercloser to $48.44 times 10 sup 9$ bytes,
35*fac6300fSDavid du Colombierso the claimed capacity should be read as `50 BD-gigabytes',
361c9e5a6cSDavid du Colombierwhere a
37*fac6300fSDavid du Colombier.I BD-gigabyte
381c9e5a6cSDavid du Colombieris 968,800,338 bytes.
391c9e5a6cSDavid du ColombierThe default
401c9e5a6cSDavid du Colombier.I venti
411c9e5a6cSDavid du Colombierarena size is 512MB, but for some reason our server is configured
421c9e5a6cSDavid du Colombierwith 1GB arenas, so we could fit 46 of them on a BD.
431c9e5a6cSDavid du ColombierTo leave a little extra room for lead-in, lead-out, inter-track gaps,
441c9e5a6cSDavid du Colombierlossless-linking and the like,
451c9e5a6cSDavid du Colombierwe record 45 arenas per BD.
461c9e5a6cSDavid du Colombier.PP
471c9e5a6cSDavid du ColombierThe scripts used and records kept are in
481c9e5a6cSDavid du Colombier.CW /sys/lib/backup
491c9e5a6cSDavid du Colombierand pertain to the file server on which they are stored.
501c9e5a6cSDavid du ColombierYou will probably want to edit
511c9e5a6cSDavid du Colombier.CW funcs
521c9e5a6cSDavid du Colombierto set default file server and Blu-ray device, at minimum.
531c9e5a6cSDavid du Colombier.SH
541c9e5a6cSDavid du ColombierCreating and Updating Backups
551c9e5a6cSDavid du Colombier.PP
561c9e5a6cSDavid du ColombierWe start
571c9e5a6cSDavid du Colombier.I cdfs
581c9e5a6cSDavid du Colombierafter inserting a disc (virgin or partially-written),
591c9e5a6cSDavid du Colombierthen use
601c9e5a6cSDavid du Colombier.I venti/rdarena
611c9e5a6cSDavid du Colombierto copy the next sealed but not backed-up arena
621c9e5a6cSDavid du Colombierto the start of the unwritten portion of the BD by writing to
631c9e5a6cSDavid du Colombier.CW /mnt/cd/wd/x .
641c9e5a6cSDavid du ColombierWe don't fixate data BDs, as that seems to tickle a bug,
651c9e5a6cSDavid du Colombierperhaps in our Sony Blu-Ray burners, that only records the first track
661c9e5a6cSDavid du Colombierin the disc index upon fixation.
671c9e5a6cSDavid du Colombier.PP
681c9e5a6cSDavid du ColombierOne can find out which arenas are sealed and which are open by viewing
691c9e5a6cSDavid du Colombier.CW http://\fIventi-server\fP/index .
701c9e5a6cSDavid du ColombierWe also periodically print the most recent
711c9e5a6cSDavid du Colombier.I fossil
721c9e5a6cSDavid du Colombierdump scores and save the paper with the discs.
731c9e5a6cSDavid du Colombier.PP
741c9e5a6cSDavid du ColombierAll of this is packaged up as scripts in
751c9e5a6cSDavid du Colombier.CW /sys/lib/backup ,
761c9e5a6cSDavid du Colombiernotably
771c9e5a6cSDavid du Colombier.CW backup .
781c9e5a6cSDavid du ColombierA typical invocation would be just
791c9e5a6cSDavid du Colombier.DS
801c9e5a6cSDavid du Colombier.ft CW
811c9e5a6cSDavid du Colombiercd /sys/lib/backup
821c9e5a6cSDavid du Colombierbackup
831c9e5a6cSDavid du Colombier.ft
841c9e5a6cSDavid du Colombier.DE
851c9e5a6cSDavid du Colombierwhich will guide its invoker as to which discs to insert into a Blu-ray
861c9e5a6cSDavid du Colombierburner and when.
871c9e5a6cSDavid du ColombierThis works for a first full backup and for subsequent incremental backups
881c9e5a6cSDavid du Colombierof just the newly-sealed arenas.
891c9e5a6cSDavid du ColombierThere is provision for burning multiple backup sets, the default being
901c9e5a6cSDavid du Colombier.CW set1 .
911c9e5a6cSDavid du ColombierTo burn a second set, we would
921c9e5a6cSDavid du Colombier.DS
931c9e5a6cSDavid du Colombier.ft CW
941c9e5a6cSDavid du Colombiermkdir /sys/lib/backup/set2
951c9e5a6cSDavid du Colombierbackup -s set2
961c9e5a6cSDavid du Colombier.ft
971c9e5a6cSDavid du Colombier.DE
981c9e5a6cSDavid du Colombier.CW backup
991c9e5a6cSDavid du Colombierand related scripts keep track of which BD is current and how many
1001c9e5a6cSDavid du Colombiertracks are recorded, and which arenas have been dumped to BD.
1011c9e5a6cSDavid du Colombier.PP
1021c9e5a6cSDavid du ColombierWe have recorded two sets of BD backups, one of which will go to
1031c9e5a6cSDavid du ColombierAntwerp to seed their
1041c9e5a6cSDavid du Colombier.I venti
1051c9e5a6cSDavid du Colombierserver and also serve as off-site backup for Murray Hill.
1061c9e5a6cSDavid du Colombier.SH
1071c9e5a6cSDavid du ColombierRestoring from Backups
1081c9e5a6cSDavid du Colombier.PP
1091c9e5a6cSDavid du ColombierAfter a disaster, or when setting up a new
1101c9e5a6cSDavid du Colombier.I venti
1111c9e5a6cSDavid du Colombierserver from BD backups,
1121c9e5a6cSDavid du Colombierthe first step is to get Plan 9 running on the new
1131c9e5a6cSDavid du Colombier.I venti
1141c9e5a6cSDavid du Colombierserver.
1151c9e5a6cSDavid du ColombierThis could be done by installing into a smallish (2GB)
1161c9e5a6cSDavid du Colombier.I fossil
1171c9e5a6cSDavid du Colombierpartition from a Plan 9 installation CD, if necessary.
1181c9e5a6cSDavid du ColombierOne would then initialise the new disk partitions per
1191c9e5a6cSDavid du Colombier.I venti-fmt (8)
1201c9e5a6cSDavid du Colombierand read all the arenas on all the BDs into the new
1211c9e5a6cSDavid du Colombier.I venti
1221c9e5a6cSDavid du Colombierby running
1231c9e5a6cSDavid du Colombier.I venti/wrarena
1241c9e5a6cSDavid du Colombieronce per BD track (arena).
1251c9e5a6cSDavid du Colombier.br
1261c9e5a6cSDavid du Colombier.ne 3
1271c9e5a6cSDavid du Colombier.PP
1281c9e5a6cSDavid du ColombierTo add the contents of a backup BD to a (possibly fresh)
1291c9e5a6cSDavid du Colombier.I venti
1301c9e5a6cSDavid du Colombierstore,
1311c9e5a6cSDavid du Colombiershut down the
1321c9e5a6cSDavid du Colombier.I venti
1331c9e5a6cSDavid du Colombierserver,
1341c9e5a6cSDavid du Colombierformat the arenas partition, then
1351c9e5a6cSDavid du Colombierrun
1361c9e5a6cSDavid du Colombier.DS
1371c9e5a6cSDavid du Colombier.ft CW
1381c9e5a6cSDavid du Colombierrestore \fIfirst-arena-number\fP
1391c9e5a6cSDavid du Colombier.ft
1401c9e5a6cSDavid du Colombier.DE
1411c9e5a6cSDavid du Colombierafter inserting a BD into the Blu-ray drive.
1421c9e5a6cSDavid du ColombierRepeat this for each BD in the backup set.
1431c9e5a6cSDavid du ColombierWhen all the arenas have been restored,
1441c9e5a6cSDavid du Colombierit will be necessary to build a new
1451c9e5a6cSDavid du Colombier.I venti
1461c9e5a6cSDavid du Colombierindex,
1471c9e5a6cSDavid du Colombierthe usual steps being to run
1481c9e5a6cSDavid du Colombier.I checkarenas ,
1491c9e5a6cSDavid du Colombier.I fmtisect ,
1501c9e5a6cSDavid du Colombier.I fmtbloom ,
1511c9e5a6cSDavid du Colombier.I fmtindex ,
1521c9e5a6cSDavid du Colombierand
1531c9e5a6cSDavid du Colombier.I "buildindex -b" ,
1541c9e5a6cSDavid du Colombierall from
1551c9e5a6cSDavid du Colombier.I venti-fmt (8).
1561c9e5a6cSDavid du ColombierThen the
1571c9e5a6cSDavid du Colombier.I venti
1581c9e5a6cSDavid du Colombierserver may be restarted.
1591c9e5a6cSDavid du Colombier.PP
1601c9e5a6cSDavid du ColombierOnce the
1611c9e5a6cSDavid du Colombier.I venti
1621c9e5a6cSDavid du Colombierstorage has been restored,
1631c9e5a6cSDavid du Colombiera new
1641c9e5a6cSDavid du Colombier.I fossil
1651c9e5a6cSDavid du Colombierpartition (perhaps the existing one or another one)
1661c9e5a6cSDavid du Colombiercan be initialised from the last
1671c9e5a6cSDavid du Colombier.I fossil
1681c9e5a6cSDavid du Colombierdump score corresponding to the last arena on BD
1691c9e5a6cSDavid du Colombier(see
1701c9e5a6cSDavid du Colombier.I fossil/flfmt
1711c9e5a6cSDavid du Colombierin
1721c9e5a6cSDavid du Colombier.I fossil (4)):
1731c9e5a6cSDavid du Colombier.DS
1741c9e5a6cSDavid du Colombier.ft CW
1751c9e5a6cSDavid du Colombierfossil/flfmt -v c388...32b5 /dev/sdC0/fossil
1761c9e5a6cSDavid du Colombier.ft
1771c9e5a6cSDavid du Colombier.DE
178