歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> Solaris zpool操作與使用

Solaris zpool操作與使用

日期:2017/3/1 15:37:30   编辑:關於Linux
Solaris zpool操作與使用 ZFS文件系統的英文名稱為Zettabyte File System,也叫動態文件系統(Dynamic File System),是第一個128位文件系統。最初是由Sun公司為Solaris 10操作系統開發的文件系統。作為OpenSolaris開源計劃的一部分,ZFS於2005年11月發布,被Sun稱為是終極文件系統。ZFS是基於存儲池的,與典型的映射物理存儲設備的傳統文件系ZFS統不同,ZFS所有在存儲池中的文件系統都可以使用存儲池的資源。 Zpool 常見用法 建立Zpool ZPool Stripe group: zpool create vol0 /dev/sda /dev/sdb /dev/sdc ZPool mirror group: zpool create vol0 mirror /dev/sda /dev/sdb ZPool raidz group: Similar to RAID5. zpool create vol0 raidz /dev/sda /dev/sdb /dev/sdc ZPool raidz2 set: Similar to RAID5 with dual parity. zpool create vol0 raidz2 /dev/sdb /dev/sdc1 /dev/sdd /dev/sde 刪除 ZPool zpool destroy nameofzpool 移除(卸載) Zpool 比如說移除USB設備 zpool export nameofzpool 裝載 zpool : zpool import nameofzpool zpool import會列出所有可用的zpool 在硬盤文件上建pool dd if=/dev/zero of=filename.img bs=1M count=1000 zpool create nameofzpool /absolute/path/to/filename.img will create an image of 1GB. It is also possible to create a sparse image, to create an image that can hold 100GB: dd if=/dev/zero of=filename.img bs=1k count=1 seek=100M 使用zpool # zpool create datapool mirror c4t0d0 c4t1d0 # zfs create datapool/bob # zfs create datapool/joe # zfs create datapool/fred # zfs create datapool/pat 磁盤和存儲池 使用磁盤 存儲池中的基本單元是物理存儲,可以是整個磁盤(c1t0d0)或者是某個分區(c0t0d0s7)。推薦使用整個磁盤,這樣的話就不用操心格式化了。ZFS會使用EFI標簽格式化磁盤,格式化之後的磁盤在format命令下表現為 Current partition table (original): Total disk sectors available: 17672849 + 16384 (reserved sectors) Part Tag Flag First Sector Size Last Sector 0 usr wm 256 8.43GB 17672849 1 unassigned wm 0 0 0 2 unassigned wm 0 0 0 3 unassigned wm 0 0 0 4 unassigned wm 0 0 0 5 unassigned wm 0 0 0 6 unassigned wm 0 0 0 8 reserved wm 17672850 8.00MB 17689233 如果某個磁盤要作為根池,他需要是SMI標簽,“format -e”命令可以執行這種轉換工作。 使用分區 雖然不推薦,不過存儲池中也可以使用分區。對於可啟動的根池,磁盤中分區必須是SMI標簽。 # format . . . Specify disk (enter its number): 4 selecting c1t1d0 partition> p Current partition table (original): Total disk cylinders available: 14087 + 2 (reserved cylinders) Part Tag Flag Cylinders Size Blocks 0 root wm 0 - 14086 68.35GB (14087/0/0) 143349312 1 unassigned wm 0 0 (0/0/0) 0 2 backup wm 0 - 14086 68.35GB (14087/0/0) 143349312 3 unassigned wm 0 0 (0/0/0) 0 4 unassigned wm 0 0 (0/0/0) 0 5 unassigned wm 0 0 (0/0/0) 0 6 unassigned wm 0 0 (0/0/0) 0 7 unassigned wm 0 0 (0/0/0) 0 文件也可以作為存儲池的元素 建立根池 根池是比較特殊的,體現在: 1. 其中磁盤必須是SMI標簽的分區 2. 必須是鏡像或者是整盤,不能使用"zpool add"命令建立多鏡像,但是可以使用"zpool attach"擴充,所以說,根池的大小是不能擴大的 3. RAID-Z和striped是不支持的 4. 不能有單獨的log元件 操作存儲池中的設備 add/remove設備 通過增加一個頂層的設備,可以動態的增加池的容量。下面是一個mirror的例子 點擊(此處)折疊或打開 # zpool status tank pool: tank state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t1d0 ONLINE 0 0 0 c1t1d0 ONLINE 0 0 0 mirror-1 ONLINE 0 0 0 c0t2d0 ONLINE 0 0 0 c1t2d0 ONLINE 0 0 0 errors: No known data errors # zpool add tank mirror c0t3d0 c1t3d0 # zpool status tank pool: tank state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t1d0 ONLINE 0 0 0 c1t1d0 ONLINE 0 0 0 mirror-1 ONLINE 0 0 0 c0t2d0 ONLINE 0 0 0 c1t2d0 ONLINE 0 0 0 mirror-2 ONLINE 0 0 0 c0t3d0 ONLINE 0 0 0 c1t3d0 ONLINE 0 0 0 errors: No known data errors "zpool remove"命令可以移除hot spares, log devices, and cache devices, 不能移除主設備。morrored池可以用"zpool detach" 命令來移除,非冗余和RAID-Z設備不能夠被移除。 attach/detach設備 attach命令可以向一個鏡像或者非鏡像設備添加一個新設備,下面是一個把二盤鏡像增加為三盤鏡像的例子 點擊(此處)折疊或打開 # zpool status zeepool pool: zeepool state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM zeepool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t1d0 ONLINE 0 0 0 c1t1d0 ONLINE 0 0 0 errors: No known data errors # zpool attach zeepool c1t1d0 c2t1d0 # zpool status zeepool pool: zeepool state: ONLINE scrub: resilver completed after 0h0m with 0 errors on Fri Jan 8 12:59:20 2010 config: NAME STATE READ WRITE CKSUM zeepool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t1d0 ONLINE 0 0 0 c1t1d0 ONLINE 0 0 0 c2t1d0 ONLINE 0 0 0 592K resilvered errors: No known data errors 也可以把一個非鏡像pool變成一個鏡像pool 點擊(此處)折疊或打開 # zpool create tank c0t1d0 # zpool status tank pool: tank state: ONLINE scrub: none requested config: NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 c0t1d0 ONLINE 0 0 0 errors: No known data errors # zpool attach tank c0t1d0 c1t1d0 # zpool status tank pool: tank state: ONLINE scrub: resilver completed after 0h0m with 0 errors on Fri Jan 8 14:28:23 2010 config: NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c0t1d0 ONLINE 0 0 0 c1t1d0 ONLINE 0 0 0 73.5K resilvered errors: No known data errors "zpool detach"命令用來從一個鏡像池中移除設備。 # zpool detach zeepool c2t1d0
Copyright © Linux教程網 All Rights Reserved