System Administration
cancel
Showing results for 
Search instead for 
Did you mean: 

Interpreting SCSI partition id's / device files

SOLVED
Go to solution
Steve Barnes_3
Occasional Visitor

Interpreting SCSI partition id's / device files

Hi,

I'm trying to get my head around how SCSI device id's are assigned to drives in Tru64. I've been given the task of imaging some StorageWorks drives, and I need to know that i've got everything available. I'm not a Tru64 Admin, but i'm fairly comfortable with Linux..

Below is a printout given to me of what's "available" :

root_domain#root - 1.5G
usr_domain#usr - 3.5G
var_domain#var - 0.7G
/dev/rz8c - 8.6G
/dev/rz10c - 8.6G
/dev/rz12c - 8.6G
/dev/rz14a - 4.3G
/dev/rz14b - 4.2G
/dev/rze24g - 5.9G
/dev/rzc24c - 43.0G
/dev/rze24h - 28.1G
/dev/rze24b - 3.9G
/dev/rze24a - 4.9G

From first impressions..shouldn't it be "rze24a" to "rze24h" without gaps?

If someone knows of a decent webpage or doc with an explanation of how the assignments work, I'll gladly read it and try and work it out for myself! :)

Finally, is there a command to show you all drives and partitions that are available for access? at the moment i'm only worred about StorageWorks drives - those that are externally linked...

T.I.A for pointers/assitance :)

Steveh.
9 REPLIES
Michael Schulte zur Sur
Honored Contributor
Solution

Re: Interpreting SCSI partition id's / device files

Hi,

a standard disklabel under TRU64 consists of 8 partitions from a to h.
a: is normally boot partition
b: is normally swap partition
c: is whole disk

What do you have available? We can't tell you. Use showfdmn to see what partitions are used by the file domains. Then use disklabel -r to see what partitions on a disk are used. If you do not use raw partitions than everything else which is not used by file domain/swap is free.

greetings,

Michael
Hein van den Heuvel
Honored Contributor

Re: Interpreting SCSI partition id's / device files

>> rze24a" to "rze24h" without gaps?
No, specifically rze24c would be mutually exclusive with all others as customary it is defined as 'the whole disk'. abgh is typical, but not required.


Looks like that RZx24 is throwing you a curveball.
I think those are on an HSZ40 or HSZ50 perhaps?

If you were to look at the console level then you would PROBABLY see something like
rz0 - DKA0 for the first drive (behind the domain. Check with ls /dev/fdmns/*)
rz8 - DKB0
rz10 - DKB200
rz12 - DKB400
rz14 - DKB600

rzc24 - DKD2
rze24 - DKD4

Those rz24 thingies are SUB-LUNs behind DKD000. That woudl be a lot clearer if they had happened to pick a different base, bbecause then you might have seen:
rzc25 - DKD102
rze25 - DKA104

The partitions are a totally independend concept from the luns and can be made visual (and changed) with disklabel -r as replied earlier.

hth,
Hein.

Re: Interpreting SCSI partition id's / device files

The question is how are SCSI ID's assigned to drives.

As they are rz devices then it is pre V5 devices.

The answer is that the device ID is 8 * the controller ID + the SCSI device number.

So if you are on Controller 0 and have say a CD at SCSI ID 5 then the device is seen as

8 * 0 + 5 = rz5

If you are on controller 4 with a SCSI ID of 6 then it would be

4 * 8 + 6 = rz38

The letter before the number is the LUN

See attachment re showing devices and /dev directory

Ken

Re: Interpreting SCSI partition id's / device files

Attachment didn't send. So I hope this comes out OK
alpha2# scu show edt

CAM Equipment Device Table (EDT) Information:

Device: RRD46 Bus: 0, Target: 5, Lun: 0, Type: Read-Only Direct Access < === 5c
Device: TZ89 Bus: 1, Target: 1, Lun: 0, Type: Sequential Access
Device: TZ89 Bus: 1, Target: 5, Lun: 0, Type: Sequential Access
Device: HSZ70 Bus: 2, Target: 0, Lun: 0, Type: Direct Access < == 16c
Device: HSZ70CCL Bus: 2, Target: 0, Lun: 1, Type: Direct Access
Device: HSZ70 Bus: 2, Target: 1, Lun: 0, Type: Direct Access < == a17c
Device: HSZ70 Bus: 2, Target: 1, Lun: 1, Type: Direct Access < == b17c
Device: HSZ70 Bus: 2, Target: 1, Lun: 2, Type: Direct Access < == c17c
Device: HSZ70 Bus: 2, Target: 1, Lun: 3, Type: Direct Access < == d17c
Device: HSZ70 Bus: 2, Target: 2, Lun: 0, Type: Direct Access < == a18c
Device: HSZ70 Bus: 2, Target: 2, Lun: 1, Type: Direct Access < == b18c
Device: HSZ70 Bus: 2, Target: 3, Lun: 3, Type: Direct Access < == d19c
Device: HSZ70 Bus: 2, Target: 3, Lun: 5, Type: Direct Access < == f19c
Device: HSZ70CCL Bus: 3, Target: 0, Lun: 0, Type: Direct Access
Device: HSZ70 Bus: 3, Target: 0, Lun: 1, Type: Direct Access < == a24c
Device: HSZ70 Bus: 3, Target: 0, Lun: 2, Type: Direct Access < == b24c
Device: HSZ70 Bus: 3, Target: 0, Lun: 3, Type: Direct Access < == c24c

alpha2# ls -al rz*c
brw------- 1 root system 8,32770 Aug 6 1998 rz16c
brw------- 1 root system 8,33794 Oct 16 2001 rz17c
brw------- 1 root system 8,34818 Oct 16 2001 rz18c
brw------- 1 root system 8,49154 Jul 4 1999 rz24c
brw------- 1 root system 8, 5122 Aug 6 1998 rz5c
brw------- 1 root system 8,33794 Nov 16 1998 rza17c
brw------- 1 root system 8,34818 Nov 16 1998 rza18c
brw------- 1 root system 8,32834 Oct 16 2001 rzb16c
brw------- 1 root system 8,33858 Aug 14 1998 rzb17c
brw------- 1 root system 8,34882 Aug 6 1998 rzb18c
brw------- 1 root system 8,49218 Jul 4 1999 rzb24c
brw------- 1 root system 8,33922 Mar 2 1999 rzc17c
brw------- 1 root system 8,49282 Jul 4 1999 rzc24c
brw------- 1 root system 8,32962 Dec 29 1998 rzd16c
brw------- 1 root system 8,33986 Aug 15 1999 rzd17c
brw------- 1 root system 8,36034 Aug 6 1998 rzd19c
brw------- 1 root system 8,49346 Jul 4 1999 rzd24c
brw------- 1 root system 8,49410 Jul 4 1999 rze24c
brw------- 1 root system 8,36162 Aug 6 1998 rzf19c
brw------- 1 root system 8,49474 Jul 4 1999 rzf24c
brw------- 1 root system 8,49538 Jul 4 1999 rzg24c
alpha2#

There are more disks listed in the /dev directory than are actually on the box. These are the result of disks

being removed from the system and not being deleted from the /dev directory.

alpha2# disklabel -r rzg24c < == failed disk is no longer on system
disklabel: rzg24c: Invalid argument

alpha2# disklabel -r rza17c < == worked ... and shows partition a-h
# /dev/rrza17c:
type: SCSI
disk: HSZ70
label:
flags:
bytes/sector: 512
sectors/track: 113
tracks/cylinder: 20
sectors/cylinder: 2260
cylinders: 3707
sectors/unit: 8378028


etc....
Steve Barnes_3
Occasional Visitor

Re: Interpreting SCSI partition id's / device files

wow! superb response!! :D

ok, i'll print out your replies and see if I can apply them when I go onsite this morning. If it's ok, i'll come back later today with more details on the drive setups based on what's been said above. With any luck I should get it!

Thank u Michael Schulte, Hein van den Heuvel, & Ken Dallinger for your help so far :)

Steveh.
Steve Barnes_3
Occasional Visitor

Re: Interpreting SCSI partition id's / device files

Ok, more details...

Firstly, for personal curiosity, i'd just like to ask, how do people manage this sort of indirect drive identification?...there is evidently some sense to this madness! (probably stemming from my lack of experience with enterprise server/storage environments). Having to do this on a permanent basis would lead me to either cover all of my server drives with stick-on labels, or put quick reference charts everywhere!. Is this where the term "UNIX Beard" originates from? sitting there scratching your chin trying to figure out which drive is playing up?...8*4+3, mapped to drive 3*100+6 equals...ah ha!...I look upon my "C:" designation with new found respect...

Meanwhile..back on the server farm...

One of the ES40's produced the following output from "scu show edt"

RZ2DD-LS BUS:0, TARGET:0, LUN:0
BD0096349A BUS:1, TARGET:0, LUN:0
BD009122C6 BUS:1, TARGET:2, LUN:0
BD009122C6 BUS:1, TARGET:4, LUN:0
BD009122C6 BUS:1, TARGET:6, LUN:0
HSZ70CCL BUS:3, TARGET:0, LUN:0
HSZ70 BUS:3, TARGET:0, LUN:1
HSZ70 BUS:3, TARGET:0, LUN:2
HSZ70 BUS:3, TARGET:0, LUN:3
HSZ70 BUS:3, TARGET:0, LUN:4
DEC WSE BSD/V1 BUS:3, TARGET:7, LUN:7
TLZ10 BUS:4, TARGET:0, LUN:0
CDR-8435 BUS:5, TARGET:0, LUN:0

1) From what's been said above,

HSZ70 3/0/1 equates to rza24c?
HSZ70 3/0/2 equates to rzb24c?
HSZ70 3/0/3 equates to rzc24c?
HSZ70 3/0/4 equates to rzd24c?

Is HSZ70CCL some sort of controller (at a guess?), or is it infact a disk?. I say this because the StorageWorks unit has 4 rows of 6 disks...hence 4 x HSZ70?

2) This means, there's 4 logical drives available for storage for this server (assuming each row of disks is configured as a RAID5 array)? - externally connected, each potentially having d,e,f,g,h as data partitions - leaving out "a" as boot, "b" as swap and "c" as the whole disk?

3) Why do I have some devices identified as rz and some as rz. I understand in the latter, the letter after rz is the LUN? where LUN 0=a, 1=b, 2=c, 3=d etc?

4) Similar to 3), what's the difference between "rz" and "rrz"?

4) Running (for example) "disklabel -r /dev/rza24c" will show me all partitions defined on that device?

Since I haven't been able to find anything on the intraweb about this (in much detail), i'm hoping all this might help others in the future...

We are "going in" over the weekend for a complete image of all data storage, so i need to get this clear in my head now...thank you everyone for helping me understand this :)

Steveh.
Mark Poeschl_2
Honored Contributor

Re: Interpreting SCSI partition id's / device files

1) The CCL or "Command Console LUN" is a dummy unit for control purposes only. It does not represent storage available to your server.

2) You do indeed have four logical drives presented to your server, but this has nothing to do with "four rows of six disks." In fact if your HSZ70 is set up optimally you'll have anything but one row of disks per unit. To see which physical drives comprise which unit you need to get at the HSZ70 console either by connecting to its serial port, or by using the hsxterm utility. (I seem to recall some rumors that hsxterm was becoming unsupported, but I still use it regularly.)

# /usr/lbin/ -b 3 -t 0 -l 1

would work for you. I said because you're on a Tru64 4.x machine and I think the name of the utility has changed over the years. Look for something like "hszterm" or "hsxterm" in the /usr/lbin directory.

Then you could either issue a "SHOW " command ("SHOW D1" through "SHOW D4" for you) or issue LOCATE commands and watch the pretty lights blink on the front of the storage cabinet. It would be "LOCATE " followed by "LOCATE CANCEL" to stop the blinking, then proceed to the next unit.

Each unit potentially has 7 partitions: a,b,d,e,f,g,h with c as the whole disk. The a and b partitions are not required to be "boot" or "swap" - that's just a convention adopted by a lot of sysadmins.

3) In the mists of time the LUN IDs of all SCSI devices was zero so there wasn't a need for the extra identifier in the device name. When non-zero LUNS started to be used it became necessary to add another field to the device name. So LUN=0 gives rz, LUN=1 gives rzb, and so on. (This is based on the SCSI(7) man page from Tru64 4.0G.)

4) "rrz" vs. "rz" is the character vs. the block device for the same device. The block device is used for "normal" I/O and the character device is typically used for "special" things like altering labels and fiddling with metadata.

5) That disklabel command you gave will always show all eight partitions on a disk, but the unused ones will generally have a length of zero.
Hein van den Heuvel
Honored Contributor

Re: Interpreting SCSI partition id's / device files

> how do people manage this sort of indirect drive identification?

1 - I have been known to create scripts that map out the whole path from mount poitn to domain to device to controller to virtual unit to disks :-). One such example attached.


2 - dd if=rrzxNNc of=/dev/null is your friend. This will light up just the right disks! :-)

> cover all of my server drives with stick-on labels,

Ayup, that helps :-)

> or put quick reference charts everywhere!.

Nah, those go stale to quick.


>> "scu show edt"

RZ2DD-LS BUS:0, TARGET:0, LUN:0
BD0096349A BUS:1, TARGET:0, LUN:0
BD009122C6 BUS:1, TARGET:2, LUN:0
BD009122C6 BUS:1, TARGET:4, LUN:0
BD009122C6 BUS:1, TARGET:6, LUN:0
HSZ70CCL BUS:3, TARGET:0, LUN:0
HSZ70 BUS:3, TARGET:0, LUN:1
HSZ70 BUS:3, TARGET:0, LUN:2
HSZ70 BUS:3, TARGET:0, LUN:3
HSZ70 BUS:3, TARGET:0, LUN:4
DEC WSE BSD/V1 BUS:3, TARGET:7, LUN:7
TLZ10 BUS:4, TARGET:0, LUN:0
CDR-8435 BUS:5, TARGET:0, LUN:0

>>> 1) From what's been said above,
>>> HSZ70 3/0/1 equates to rza24c?
:
YES!

>>> Is HSZ70CCL some sort of controller (at a guess?), or is it infact a disk?.

Yes, as replied earlier, find hsxterm or

>>> I say this because the StorageWorks unit has 4 rows of 6 disks...hence 4 x HSZ70?

NO. It could be, but it is not the reason.
Teh reason is 'units' which may be mapped onto single drives or many drives in raid/stripe/mirror sets.
You need to talk to the HSZ to find out why.
Use that HSXterm or connect a termainl (emulator) tothe HSZ console port.

>> 2) This means, there's 4 logical drives available for storage for this server
>> each potentially having d,e,f,g,h as data

For get partitions. They stink. Just use 'c', or completely redefine them as you please. The odds that say d-e-f meet your needs are slim to none.


>>> 3) Why do I have some devices identified as rz and some as rz.

Plain old disk, not behind a controll, just use lun 0 and do not get a letter.


>>> 4) Similar to 3), what's the difference between "rz" and "rrz"?

RAW device. Tyr the 'file' command to see the difference (or ls -l)

>>> 4) Running (for example) "disklabel -r /dev/rza24c" will show me all partitions defined on that device?

Yes, and often but not always an indication of how they are used.


Cheers,
Hein
Steve Barnes_3
Occasional Visitor

Re: Interpreting SCSI partition id's / device files

I am closing the thread because we've successfully completed the assignment. I would like to thank everyone that took the time to reply and provide assistance. I have awarded everyone 10 points simply for being kind enough to take the time and reply, all answers gave me a better understanding so directly assisted in providing me with an answer.

Thank you once again Michael Schulte, Hein van den Heuvel, Ken Dallinger & Mark Poeschl :)

Steve Barnes.