[OpenAFS] Re: trouble deleting corrupt volume

Wes Chow wchow@athenacr.com
Mon, 05 Jun 2006 14:41:53 -0400


Chaskiel M Grundman wrote:
> There are certain kinds of corruption that the salvage does not deal
> with correctly on platforms where the namei server is used (like linux,
> macos, *bsd) At the current time, the only way to remove the volume is
> to find the root of the tree on the vice partition that it is stored in
> and remove it with rm -rf.
> 
> I suggest:
> 
> repeat the vos zap -force
> rm -rf /vicepa/AFSIDat/I=/INF+U

I tried that, and the vos release now seems to be working.  I'll verify
the integrity of the data over the next day or so (it's a rather large
volume).

Thanks for the help!


Wes


> The following program may be used to map a volume id to the tree in
> which it is stored (link it with libafsutil.a). Note that volumes in the
> same volume group (a volume and its backup. an RW and any RO's on the
> same partition), are stored in the same tree and are located based on
> the RW's ID (aka the parentid)
> #include <sys/types.h>
> #include <inttypes.h>
> #include <stdio.h>
> #include <stdlib.h>
> #include <afs/param.h>
> #include <afs/afsutil.h>
> 
> int main(int argc, char **argv) {
> lb64_string_t tmp;
> 
>  unsigned long vol;
>  if (argc < 2) { fprintf(stderr, "Usage: nametodir vol\n"); exit(1); }
>  vol=strtoul(argv[1], NULL, 0);
>  (void)int32_to_flipbase64(tmp, (int64_t) (vol  & 0xff));
>  printf("Component is %s\n", tmp);
>  (void)int32_to_flipbase64(tmp, (int64_t) vol);
>  printf("Component is %s\n", tmp);
> 
>  exit(0);
> }
> 

-- 

Athena Capital Research LLC
http://pgp.mit.edu:11371/pks/lookup?op=get&search=0xA5CA6644
Key fingerprint = FDE5 21D8 9D8B 386F 128F  DF52 3F52 D582 A5CA 6644