歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> Unix教程 >> UnixWare7.1.x操作系統下的硬盤管理

UnixWare7.1.x操作系統下的硬盤管理

日期:2017/2/27 17:42:56   编辑:Unix教程

  1. 硬盤管理概述
  UnixWare7.1.x對硬盤的管理分為兩個步驟,或者說是兩個層次。一個就是用眾所周知的fdisk命令劃分的硬盤分區,應該說大部分操作系統都使用這一工具進行硬盤的分區劃分和管理,為了與另一個管理方式“slice”相區別,我們用英文表示為”partition”,此硬盤分區不能在UnixWare7.1.x操作系統下直接進行操作,只能通過UnixWare7.1.x所特有的slice進行映射或者重新劃分後才能夠進行操作;另一個就是”slice”,它是UnixWare7.1.x所特有的管理硬盤的工具,並且UnixWare只有通過slice對硬盤進行訪問。
  
  1.1 Partition具有如下特點:
  1.一個開始Sector;
  2. 該分區的長度,用Sector計算的;
  3. 該分區操作系統的類型,如UNIX, DOS, 或者 Extended DOS等等;
  4. 如果是可引導分區必須具有Active標志;
  5. 每個硬盤最多可以劃分4個Partition;
  6. 如果硬盤要被UnixWare操作系統使用則必須至少有一個分區(Partition);
  7. UnixWare7.1.x操作系統利用命令fdisk進行劃分。
  
  1.2 Slice特點如下:
  1.一個開始的Sector。
  2. 該Slice的長度,用Sector計算。
  3. Slice的類型,例如root, user, swap, stand等等。
  4. 訪問限制(valid and mountable/unmountable)。
  5. UnixWare7.1.x操作系統只有通過Slice才能夠訪問和管理硬盤,而不能夠通過其他方式對硬盤進行管理和訪問。
  6. 每個物理硬盤原則上最多是有256個Slice,實際上使用的只有188個,而這188個slice在系統中的體現要靠節點設備文件表現出來,如/dev/rdsk/c0b0t0d0s0,就是當前狀態為ACTIVE的整個unix分區(P),下面將更詳細的討論。
  7. 在一個物理硬盤上的當前活動的UNIX分區可以可以通過slice進行管理,而slice也只能對當前活動的UNIX分區進行更進一步的劃分分區和管理。
  8. 一個slice可以用做一個文件系統,可以被用做swap空間,可以作為生設備使用,也可以被其他應用程序使用,例如被數據庫管理和使用。
  
  1.3 Slice、分區(P)和節點設備文件的關系:
  
  1、學習環境
  首先讓我們來看一個環境,主機的硬盤總容量是6173.4 MB,分了兩個分區(P),第一個分區容量為1851.2MB,是當前的活動的UNIX系統分區,安裝了SCO OpenServer 5.0.5;第二個分區容量為4322.2MB,是非活動UNIX系統分區,安裝了UnixWare7.1.1操作系統,而當前正在運行的系統是第二分區的UnixWare,對操作系統本身來講,第二個分區是當前UNIX系統分區(P)。具體分區情況如下所示:
  Total disk size is 787 cylinders (6173.4 MB)
  Cylinders Approx
  Partition Status Type Start End Length % MB
  ===== ====== =========== ===== === ====== === ======
  1 Active UNIX System 0 235 236 30 1851.2
  2 UNIX System 236 786 551 70 4322.2
  表1-1
  該主機通過一個SCSI Ultra160卡外掛了一個磁盤陣列櫃,陣列櫃有三個70G的SCSI硬盤,做了RAID 5,陣列櫃的兩個外接SCSI通道的ID都設為5,陣列櫃做了RAID 5後,在邏輯盤空間劃分了三個分區,這三個對應的邏輯號分別為0、1、2,這樣通過主機的操作系統就能夠看到三個硬盤的標識,通過系統命令”sdiconfig –l”可以看到如下信息:(我們在每一行的前面加了行號,這是為了我們方便的加以解釋和說明)
  1 # sdiconfig -l
  2 0:0,7,0: HBA : (ide,1) Generic ESDI/IDE/ATA
  3 0,0,0: DISK : Generic IDE/ESDI 1.00
  4 1:0,7,0: HBA : (ide,2) Generic ESDI/IDE/ATA
  5 0,0,0: CDROM : ATAPI CD-ROM DRIVE-32XT2DP
  6 2:0,7,0: HBA : (adst70,2) Adaptec Ultra160
  7 0,5,0: DISK : NetStor DA8160 0001
  8 0,5,1: DISK : NetStor DA8160 0001
  9 0,5,2: DISK : NetStor DA8160 0001
  表1-2
  第1行是系統命令,這是在root用戶下執行的,通過前面的”#”提示符可以看出來。
  第2、4兩行是IDE通道的信息,它們分別接著本地IDE硬盤(即第3行所示信息)和IDE光驅(即第5行所示信息)。
  第6行是我們主機上的SCSI卡的信息,也就是接磁盤陣列櫃的SCSI通道的信息,第7、8、9三行是磁盤陣列櫃的三個分區的信息,這裡的分區不同於我們對物理硬盤分區(Partition)的概念,它們類似於一個物理硬盤,操作系統在處理過程中也是安裝一個物理硬盤來進行的。
  
  2、UnixWare7.1.x硬盤的標識
  在任何一個Unix操作系統中,每一個硬件設備都對應著一個設備文件名,通過文件來對設備進行管理和操作,當然,UnixWare7.1.x也不例外,它對於SCSI和非SCSI硬盤的管理也是通過設備文件來進行的,有如下兩種形式:
  /dev/[r]dsk/cCbBtTdDsS
  /dev/[r]dsk/cCbBtTdDpP
  各個部分的解釋如下:
  1)[r]dsk
  /rdsk目錄下是原始設備(字符設備);/dsk目錄下是塊設備。
  2)cC
  C是系統中的主機通道適配器或者是IDE控制器的序列號,C的范圍是0到31。
  在UnixWare7.1.x中,不同於SCO OpenServer 5.0.x中不同的適配器或IDE控制器的序列號是沒有關系的,不是順序增加的,例如有兩個IDE控制器和兩個SCSI控制器,在OpenServer中,第一個IDE控制器的C是0,第二個IDE控制器的C是1,第一個SCSI控制器的C是0,第二個控制器的C是1;而在UnixWare中,第一個IDE控制器的C是0,第二個IDE控制器的C是1,第一個SCSI控制器的C是2,第二個控制器的C是3,當然也可以第一個SCSI控制器的C是0,第二個控制器的C是1,第一個IDE控制器的C是2,第二個IDE控制器的C是3,就是說UnixWare中,不會區分控制器的類型而進行排序,它對所有的控制器(不論什麼類型,IDE、SCSI或者其他)進行排序。
  3)bB
  B是HBA總線編號,范圍是0到7(依賴於增加的適配器),對於IDE硬盤來講它總是0。
  4)tT
  T是SCSI目標控制器標號(ID),這個ID的范圍從0到31。第一個IDE硬盤是0,第二個是1。
  5)dD
  D是硬盤設備的邏輯單元號(即LUN),范圍從0到31,D對IDE硬盤來講都是0。
  6)sS
  S是硬盤的Slice號,范圍從0到b7(十六進制),十進制是0到183。
  7)pP
  P是fdisk(1M)硬盤分區號,范圍是從0到4,在硬盤分區表中,p0代表整個硬盤,而p1到p4分別表示用fdisk命令顯示的硬盤的分區1到分區4。
  
  3、分析
  我們來看一下目錄/dev/rdsk/下有那些內容:
  # pwd
  /dev/rdsk
  # lf
  c0b0t0d0p0 c2b0t5d0s1 c2b0t5d1s7 c2b0t5d2sd f05q f15d16
  c0b0t0d0p1 c2b0t5d0s2 c2b0t5d1s8 c2b0t5d2se f05qt f15d16t
  c0b0t0d0p2 c2b0t5d0s3 c2b0t5d1s9 c2b0t5d2sf f0d8d f15d4
  c0b0t0d0p3 c2b0t5d0s4 c2b0t5d1sa f0 f0d8dt f15d4t
  c0b0t0d0p4 c2b0t5d0s5 c2b0t5d1sb f03c f0d8t f15d8
  c0b0t0d0s0 c2b0t5d0s6 c2b0t5d1sc f03ct f0d9d f15d8t
  c0b0t0d0s1 c2b0t5d0s7 c2b0t5d1sd f03d f0d9dt f15d8u
  c0b0t0d0s2 c2b0t5d0s8 c2b0t5d1se f03dt f0d9t f15d9
  c0b0t0d0s3 c2b0t5d0s9 c2b0t5d1sf f03e f0q15d f15d9t
  c0b0t0d0s4 c2b0t5d0sa c2b0t5d2p0 f03et f0q15dt f15h
  c0b0t0d0s5 c2b0t5d0sb c2b0t5d2p1 f03h f0q18d f15ht
  c0b0t0d0s6 c2b0t5d0sc c2b0t5d2p2 f03ht f0q18dt f15q
  c0b0t0d0s7 c2b0t5d0sd c2b0t5d2p3 f03m f0q9dt f15qt
  c0b0t0d0s8 c2b0t5d0se c2b0t5d2p4 f03mt f0t f1d8d
  c0b0t0d0s9 c2b0t5d0sf c2b0t5d2s0 f03n f1 f1d8dt
  c0b0t0d0sa c2b0t5d1p0 c2b0t5d2s1 f03nt f13c f1d8t
  c0b0t0d0sb c2b0t5d1p1 c2b0t5d2s2 f05d16 f13ct f1d9d
  c0b0t0d0sc c2b0t5d1p2 c2b0t5d2s3 f05d16t f13d f1d9dt
  c0b0t0d0sd c2b0t5d1p3 c2b0t5d2s4 f05d4 f13dt f1d9t
  c0b0t0d0se c2b0t5d1p4 c2b0t5d2s5 f05d4t f13e f1q15d
  c0b0t0d0sf c2b0t5d1s0 c2b0t5d2s6 f05d8 f13et f1q15dt
  c2b0t5d0p0 c2b0t5d1s1 c2b0t5d2s7 f05d8t f13h f1q18dt
  c2b0t5d0p1 c2b0t5d1s2 c2b0t5d2s8 f05d8u f13ht f1q9dt
  c2b0t5d0p2 c2b0t5d1s3 c2b0t5d2s9 f05d9 f13m f1t
  c2b0t5d0p3 c2b0t5d1s4 c2b0t5d2sa f05d9t f13mt
  c2b0t5d0p4 c2b0t5d1s5 c2b0t5d2sb f05h f13n
  c2b0t5d0s0 c2b0t5d1s6 c2b0t5d2sc f05ht f13nt
  表1-3
  在表1-3中具有/dev/[r]dsk/cCbBtTdDsS或者/dev/[r]dsk/cCbBtTdDpP格式的設備文件名稱都代表了系統中的硬盤,可以歸納如下4行。
  1 c0b0t0d0p[0-4],c0b0t0d0s[0-f]
  2 c2b0t5d0p[0-4],c2b0t5d0s[0-f]
  3 c2b0t5d1p[0-4],c2b0t5d1s[0-f]
  4 c2b0t5d2p[0-4],c2b0t5d2s[0-f]
  表1-4
  注意:以上4行中[0-X],不是代表0到X中的任何一個,而是一個實際的范圍,例如c0b0t0d0p[0-4]代表c0b0t0d0p0、c0b0t0d0p1、c0b0t0d0p2、c0b0t0d0p3。
  表1-4中的每一行都代表著一個硬盤,實際情況是第1行代表本地IDE硬盤,即表1-2中第3行所示之硬盤;第2行代表磁盤陣列櫃的邏輯分區1,設置此分區的LUN號為0,即表1-2中第7行對應磁盤陣列的邏輯分區1;第3、4兩行代表磁盤陣列的邏輯分區2和3,LUN號分別為1和2。
  我們結合上面的說明對表1-2重新進行分析:
  
  上圖中標出了表1-2每一個字符代表的意思,從表1-2可以看出三個控制器(第2、4、6行)是按照順序進行編號0、1、2,不分控制器的類型,第2、4行代表的是IDE類型,第6行代表的是SCSI類型;每一個控制器都有自己的B、T、D號,巧合的是本系統中的三個控制器的T(target)都是7,這樣通過該控制器相連接的設備的T就不能是7;同時我們看到,
Copyright © Linux教程網 All Rights Reserved