From mboxrd@z Thu Jan 1 00:00:00 1970 To: pavelcak@gmail.com, 9fans@9fans.net Subject: Re: [9fans] Subject: Venti, redundancy, and hardware failure. From: "Russ Cox" Date: Sun, 3 Aug 2008 08:49:40 -0700 In-Reply-To: <6256dcf20808020659r18a22e6iedc08662f89e74c2@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Message-Id: <20080803154627.1DD1F1E8C47@holo.morphisms.net> Topicbox-Message-UUID: fa47555a-ead3-11e9-9d60-3106f5b1d025 > occurred to me that, although I know how to mirror my arenas, I'm not > clear on how to recover from hardware failure. That is, suppose sdD0 > and sdD1 are dedicated to arenas, they are mirrored, and venti.conf > has something like 'arenas /dev/fs/arenas'. Now suppose sdD0 goes > belly up. Do I change '/dev/fs/arenas' to '/dev/sdD1/arenas', in > venti.conf and fossil conf? Only if you've changed your mind and no longer think mirroring is a good idea. What you want to do is re-establish the mirror. Assuming that sdD1 is still working, you replace sdD0, run dd (or pump(1)) to initialize sdD0 with the contents of sdD1. Then you keep using /dev/fs/arenas. > Maybe rerun fmtindex? I recall reading > about setting up venti and recovering fossil from venti, but I don't > remember seeing anything about this. Let's assume you need to run off sdD1 alone for a while until you get your sdD0 replacement. The easiest thing to do is change your mirror config so that /dev/fs/arenas is now a mirror of one disk (if that's not allowed, it should be), just sdD1. Then nothing else has to change, since the data is still available as /dev/fs/arenas. But suppose you are asking "I changed the disk device name in venti.conf. What else do I need to do for that to take effect?" The answer is nothing: fmtindex does write down info about the disks, but it names them using the names you provided to fmtisect and fmtarenas (things like index0 and arenas0.1). The only place that a full path name is given is in venti.conf. If you move the device to a different name (but have the same data), only venti.conf needs to change. Russ