Replacing a failed Vinum drive
Replacing a failed Vinum drive

Last updated: 27 February 2000

The current man page is vague about replacing a failed drive. Here's a temporary overview:

  1. Replace the physical drive.
  2. Partition the new drive. Some restrictions apply:

  • If you have restarted Vinum, create a new drive. For example, if drive data3 is on the physical partition /dev/da3h, create a configuration file, say configfile, with the single line

    drive data3 device /dev/da3h
    

    Then enter:

    # vinum create configfile
    
  • Start the plexes which were down. For example, vinum list might show:

    vinum -> l -r test
    V test                  State: up       Plexes:       2 Size:         30 MB
    P test.p0             C State: up       Subdisks:     1 Size:         30 MB
    P test.p1             C State: faulty   Subdisks:     1 Size:         30 MB
    S test.p0.s0            State: up       PO:        0  B Size:         30 MB
    S test.p1.s0            State: obsolete PO:        0  B Size:         30 MB
    
    vinum -> start test.p1.s0
    Reviving test.p1.s0 in the background
    vinum -> vinum[295]: reviving test.p1.s0
    (some time later)
    vinum[295]: test.p1.s0 is up
    

    Note that currently a bug will cause the state to be incorrect. Instead of being obsolete, the subdisks are reborn, and you can't start them like that. Instead, write:

    vinum -> l -r test
    V test                  State: up       Plexes:       2 Size:         30 MB
    P test.p0             C State: up       Subdisks:     1 Size:         30 MB
    P test.p1             C State: flaky    Subdisks:     1 Size:         30 MB
    S test.p0.s0            State: up       PO:        0  B Size:         30 MB
    S test.p1.s0            State: reborn   PO:        0  B Size:         30 MB
    
    vinum -> start test.p1.s0
    Can't start test.p1.s0: Device busy (16)
    vinum -> setstate obsolete test.p1.s0
    vinum -> start test.p1.s0
    Reviving test.p1.s0 in the background
    vinum -> vinum[295]: reviving test.p1.s0
    vinum[295]: test.p1.s0 is up