zsgd 发表于 2009-08-03 17:03

ZFS文件系统 create & destroy

ZFS文件系统 - (1) zpool create/destroy
         
                           
      
要建立ZFS文件系统,首先要建立一个pool,这个pool是所有在它之上的文件系统所共享的存储空间,当然,每一个文件系统的大小容量等可以分别设
定,这个我们以后再分别详细讲述。那么pool是什么?简单的讲,一个pool本身就是一个zfs文件系统,只是它同时又是所有在它之上的文件系统的父文
件系统,它确定了整个建立于它之上的所有ZFS文件系统的基本属性,例如,它是一个简单pool还是一个mirror,或者raidz池。它具有zfs文
件系统的所以属性,例如在其之上建立文件,目录,创建snapshot,clone等等,同时在它之上还可以进行对pool管理的所有操作。例如,add
或remove设备,扩充或缩小池的大小,以及attach或者detach设备等等。
      zpool create的语法如下
zpool create [-fn] [-R root] [-m mountpoint] pool vdev ...
-f    强制执行创建池操作,甚至正在被其他的文件系统所占用
-n    显示配置信息。注:用该参数,该操作并不真正执行
-R    指定整个pool的根目录。也就是所以在这个pool之上的zfs文件系统的mount目录前缀。默认值:/
-m    mount点
pool    所要建立的pool的名字
vdev    "virtual device".具体说包括三类:disk,file和keywords
            disk:就是位于/dev/dsk下的设备文件
            file:普通的文件
            keywords:包括mirror, raidz, raidz1, raidz2 和 spare

下来我们看几个个例子,
1. 创建一个无冗余的pool。
       # zpool create tank c1t4d0
2. 创建一个两路mirror
# zpool create mypool mirror c1t3d0 c1t4d0

3. 创建一个raidz池
# zpool create -f tank raidz2 c2t5d0 c2t4d0 c2t2d04. 创建一个带hot spare的池
# zpool create tank c2t5d0 spare c2t4d0
5. 创建一个pool并指定根目录和mount点
# zpool create -f -R /zfsdir -m /root tank c2t4d0# zfs listNAME   USEDAVAILREFERMOUNTPOINTtank    91K16.5G24.5K/zfsdir/root
      /zfsdir就是以后所有创建与tank之上的文件系统mount点前缀,包括tank本身。/root是mount点。
6. 查看创建一个pool结果,但不真正执行
# zpool create -n -R /zfsdir -m /root tank c2t5d0would create 'tank' with the following layout:
      tank          c2t5d0

      相对应于create,自然就有destroy。destroy的语法如下
zpool destroy [-f] pool
-f    强行删除
例如
# zpool destroy tank# zpool create tank c2t5d0# zfs mounttank                            /tank# cd /tank# zpool destroy tankcannot unmount '/tank': Device busycould not destroy 'tank': could not unmount datasets# zpool destroy -f tank
      通过zfs mount查出tank的mount点,然后进入并占用mount目录,这样当试图删除时系统就会报错。用参数-f,系统将删除tank而忽略警告信息。
                  
      
            Posted at
               05:51PM Dec 19, 2006
            by forrest in ZFS|
                                       
Comments
                  
      
-->
   
   
   
      
                  
   
            Comments:
            
   
                        
            
                zpool create mypool mirror c1t3d0 c1t4d0
               
                Posted by
                                    创建一个两路mirror?
               
                on July 31, 2007 at 08:22 PM CST
               
#
               
            
                              
            
                多谢提醒,已经改正!
               
                Posted by
                                    
Forrest
               
                on August 01, 2007 at 09:43 AM CST
               
#
               
            
                              
            
               
cool
               
                Posted by
                                    
wow gold
               
                on November 03, 2008 at 09:27 AM CST
               
#
               
            
               
               
               
               

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/1604/showart_2016486.html

xieweihua 发表于 2009-09-09 08:33

现在不仅 solaris中可以用,freeBSD7X中也可以用了。
linux中也能使用了,但实现方式好像不好。
页: [1]
查看完整版本: ZFS文件系统 create & destroy