NetBSD-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

GPT and raid seems ok, missing disks awkward



I ended up figuring out my issues, but I'm thinking this note may be
useful to others.

summary:
  Does raidframe on dkN via gpt work? (yes, it seems to)
  Does the "absent" keyword in raidctl still work? (yes, but with -C)

My system is up-to-date netbsd-5/i386.

I just got two 2T SATA drives, intending to migrate a system from 2 *
400G RAID-1 to a RAID-1 pair with the new drives.  (Not relevant, I
think: I got one Seagate and one Hitachi drive, both 7200 rpm, to reduce
the chance of correlated failures.)

I put the Seagate drive in an Aluratek docking enclosure, and it shows
up as sd4 and seems to work.

I used gpt create, gpt add, gpt label, and addwedge, and can access dk0.
It looks fine (yes, I started at 64 not 34 due to 4K sectors which I
probably have):

       start        size  index  contents
           0           1         PMBR
           1           1         Pri GPT header
           2          32         Pri GPT table
          34          30         
          64  3907029071      1  GPT part - NetBSD RAIDFrame component
  3907029135          32         Sec GPT table
  3907029167           1         Sec GPT header

[There are no dk/wedge examples in the man page (on netbsd-5).]

I am trying to get a deficient raid-1 set created; I created a raidframe
config:

  START array
  1 2 0

  START disks
  /dev/dk0
  absent

  START layout
  # sectPerSU SUsPerParityUnit SUsPerReconUnit RAID_level_1
  128 1 1 1

  START queue
  fifo 100

Then, trying to configure raid1 (raid0 is my 400G pair):

# raidctl -v -c /etc/raid2T.conf  raid1 

  Ignoring missing component at column 1
  raid1: Component /dev/dk0 being configured at col: 0
           Column: 0 Num Columns: 0
           Version: 96 Serial Number: 0 Mod Counter: 0
           Clean: No Status: 0
  Number of columns do not match for: /dev/dk0
  /dev/dk0 is not clean!
  raid1: Component absent being configured at col: 1
           Column: 0 Num Columns: 0
           Version: 0 Serial Number: 0 Mod Counter: 0
           Clean: No Status: 0
  Column out of alignment for: absent
  Number of columns do not match for: absent
  absent is not clean!
  raid1: There were fatal errors
  RAIDFRAME: failed rf_ConfigureDisks with 22
  raidctl: ioctl (RAIDFRAME_CONFIGURE) failed: Invalid argument

I reran with -C and it configured:

  Ignoring missing component at column 1
  raid1: Component /dev/dk0 being configured at col: 0
           Column: 0 Num Columns: 0
           Version: 96 Serial Number: 0 Mod Counter: 0
           Clean: No Status: 0
  Number of columns do not match for: /dev/dk0
  /dev/dk0 is not clean!
  raid1: Component absent being configured at col: 1
           Column: 0 Num Columns: 0
           Version: 0 Serial Number: 0 Mod Counter: 0
           Clean: No Status: 0
  Column out of alignment for: absent
  Number of columns do not match for: absent
  absent is not clean!
  raid1: There were fatal errors
  raid1: Fatal errors being ignored.
  raid1: RAID Level 1
  raid1: Components: /dev/dk0 component1[**FAILED**]
  raid1: Total Sectors: 3907028992 (1907729 MB)

It seems that 'absent' is not an error, and forcing should not be
necessary.

Then -I to label, and -i to initialize, per the man page, and now things
seem normal.

Attachment: pgpdu_np6GyQJ.pgp
Description: PGP signature



Home | Main Index | Thread Index | Old Index