Tag Archives: ZFS

在OpenSolaris 2009.06共享ZFS文件系统

ZFS文件系统是由Sun公司开发的第一个128位 的文件系统,也是目前世界上最先进的文件系统,所以被称为“终极文件系统”。由于资源共享已经成为互联网领域的核心内容,服务器及PC机的文件共享也成为 一个非常重要的话题。本文将介绍在OpenSolaris 2009.06上共享ZFS文件系统的几种方式。 第一种方式:   选择 系统 -> 系统管理 -> 共享的文件夹,添加共享目录或文件并以NFS方式共享。   可以通过指定主机名、IP地址、网络等来配置允许访问该共享目录或文件的主机,并可设置主机操作权限为只读或读写。 第二种方式:   使用share命令。 这个命令和在Linux下的使用差不多,在OpenSolaris下使用share命令除了可以共享ZFS文件系统外,还可以共享UFS等其它文件系统。当然,需要修改/etc/dfs/dfstab配置文件。 第三种方式:   使用ZFS命令,这种方式只能共享ZFS文件系统。  ZFS 可以通过使用sharenfs 属性来自动共享文件系统,而不必修改/etc/dfs/dfstab 文件。在sharenfs 属性中,如果sharenfs=on,则由zfs控制其自动共享文件系统。如果sharenfs=off 表示文件系统不由ZFS 管理,就跟普通的文件系统共享方式一样,但可通过传统方法(如/etc/dfs/dfstab 文件)来管理。在引导过程中将共享sharenfs 属性不是off 的所有文件系统。你可以通过命令zfs get all查看所有zfs的属性。ZFS设置共享的命令如下: #zfs set sharenfs=rw=@192.168.203.0/24 rpool/test #share -@rpool/test    /test    sec=sys,rw=@192.168.203.0/24   ""

Posted in Solaris | Tagged , , | Leave a comment

ZFS snapshot高级篇之快照备份

ZFS snapshot是OpenSolaris的一个非常强大的技术,它就像Windows的还原点一样,能让你的系统还原到你想要的状态。在《OpenSolaris下的snapshot及基于zfs的系统恢复》一文中,我对snapshot的使用及恢复做了较详细的介绍,本文将介绍如果对snapshot快照进行备份(包括增量备份),从而来保证数据的完整性。 首先通过一个简单的demo来重温一下snapshot的原理: 1.       在rpool存储池中创建一个test文件系统: haiou@opensolaris:~# zfs create rpool/test haiou@opensolaris:~# zfs list NAME                      USED  AVAIL  REFER  MOUNTPOINT rpool                    4.52G  1.01G  79.5K  /rpool rpool/ROOT               3.84G  1.01G    19K  legacy rpool/ROOT/opensolaris   3.84G  1.01G  3.58G  / rpool/cifsdemo             99K  1.01G    19K  /rpool/cifsdemo rpool/export              698M  1.01G    … Continue reading

Posted in Solaris | Tagged , | Leave a comment

在Linux下使用ZFS

ZFS文件系统是Sun公司开发的第一个128位的具有革莫道不消魂命意义的文件系统,目前在FreeBSD及Mac OS X等Unix系统上已经引入了ZFS文件系统。 由于Solaris的CDDL开源协议和Linux的GPL开源协议不兼容,所以ZFS一直没有在Linux上直接实现。但是人们仍可以从opensolaris.org上下载ZFS的源代码,而在Linux上可以通过ZFS-FUSE在不违反版权声明的情况下使用ZFS。 目前ZFS-FUSE的最新版本是0.5.0,相关博客:http://zfs-on-fuse.blogspot.com/。 在Ubuntu8.10上安装zfs-fuse 0.5.0的过程如下: 1.       安装使用zfs-fuse所需要的包 sudo apt-get install build-essential libfuse-dev libaio-dev zlib1g-dev scons 2.       下载zfs-fuse 的源代码并解压 (1)可以使用wget命令下载或直接下载: wget http://download.berlios.de/zfs-fuse/zfs-fuse-0.5.0.tar.bz2 (2)解压 tar xzvf zfs-fuse-0.5.0.tar.bz2 3.       使用scons编译工具进行编译安装 cd zfs-fuse-0.5.0/src scons sudo scons install 然后键入sudo zfs-fuse就可以在Linux上使用ZFS了。 你也可以体验NexentaOS这个所谓太阳系中的Ubuntu,它构建于OpenSolaris内核和运行时环境,是一个完全基于GNU和Debian的开源软件操作系统。大家可以去http://www.nexenta.org/下载并体验。 NexentaOS的安装过程:http://linux.chinaitlab.com/administer/759611.html

Posted in Solaris | Tagged | Leave a comment

Minix、Linux及Solaris文件系统分析和对比

文件系统是操作系统中负责管理和存储文件的重要软件机构,它由三部分组成:与文件管理有关的软件、被管理的文件以及实施文件管理所需的数据结构。从系统角度来看,文件系统是对文件存储器空间进行组织和分配,负责文件的存储并对存入的文件进行保护和检索的系统。本文分析了Minix、Linux和Solaris文件系统,并对三者的文件系统特性进行了比较。 Continue reading

Posted in Linux&Minix, Solaris | Tagged , , , , , | Leave a comment

ZFS自动快照服务的实现与管理

OpenSolaris 2008.11 已于前些日子正式发布,它是 OpenSolaris的最新发行版本。对于用户、开发人员和部署人员来说,OpenSolaris 是一个功能强大而且完善的操作系统。它继承了 Solaris 安全、稳定且高度可伸缩的传统,更加贴近桌面用户,为用户提供了现代计算环境中所应有的工具。该发行版为桌面用户引进了很多新特性,本文将对其自动快照新特性进行介绍。 (1)为什么要使用自动快照服务? 我在opensolaris下的snapshot及基于zfs的系统恢复这篇博客中,曾详细分析了opensolaris下的snapshot机制和定期进行snapshot的一些好处。但对普通桌面用户来说,他需要的可能是系统提供一种开销低,同时又能通过点几下鼠标进行设置,就能对重要文件进行自动snapshot和恢复到特定状态。OpenSolaris 2008.11为我们提供了这样的功能,使用文件管理器中的时间滑块功能就能浏览文件的更改记录,查看并恢复更改。有了自动快照服务,能极大的降低你误删文件可能造成的损失。 (2)ZFS自动快照服务的实现 SMF(service management facility)是solaris新一代的服务管理框架。SMF 提供了在传统 UNIX 启动脚本、init 运行级和配置文件的基础上进行扩充的基础结构。SMF 框架中的基本管理单元是服务实例,实例是指服务的特定配置,每个 SMF 服务都有可能配置了多个版本。而且,同一版本的多个实例也可以在一个 Solaris 系统上运行。SMF的系统框图如下: repository.db存放了所有服务的属性的值,比如ZFS自动快照服务的时间间隔之类的,当服务启动的时候需要加载这些值。svc.configd这个后台进程用于维护这个属性数据库,所有的对这个数据库的读或者写的操作都要经过这个进程,这样的设计保证了这个数据库的完整性。svc.startd这个后台进程在开机的时候使用,它将读出需要启动的每一个服务的属性的值,然后用这些值去启动这些服务。SMF tools是SMF的一些维护工具如svcadm。 cron 是一个可以用来根据时间、日期、月份、星期的组合来调度对重复任务的执行的守护进程。cron 假定系统持续运行,如果当某任务被调度时系统不在运行,该任务就不会被执行。 ZFS自动快照服务包含在SUNWzfs-auto-snapshot程序包中,其利用了ZFS的snapshot特性和cron定时执行任务的功能,并被实现成SMF服务。在配置服务实例后,每当启动一个服务实例,就对应生成一个cron作业,自动定期对配置的文件进行snapshot。停止服务时,对应的cron作业被删除。当snapshots占到预设硬盘空间的一定百分比后,后台进程会删除最旧的一些snapshots。 (3)ZFS自动快照服务的管理 OpenSolaris 2008.11在ZFS自动快照服务之上,引进了时间滑块服务,并将这些功能整合进GNOME桌面环境。这些创新使得我们能轻松使用GNOME文件管理器,来管理ZFS自动快照服务。基于命令行的管理可以参见参考文献[3]。 时间滑块功能默认是关闭的,可以通过System -> Administration -> time slider setup进行开启和设置 要查看以前的备份,打开想查看的文件夹,如果下图中的红线标识的按钮可以,说明文件的备份可用。点击该按钮,就会显示时间滑块。 … Continue reading

Posted in Solaris | Tagged , | Leave a comment

ZFS混合存储池特性浅析

被称作“史上最后一个文件系统”的ZFS,作为Solaris 10和OpenSolaris的新特性引进后,吸引了开源社区里无数人的关注,Linux之父Linus Torvalds公开表示对Solaris软件的ZFS(Zettabyte文件系统)特别感兴趣,苹果公司也宣称Mac OSX采用ZFS文件系统。从OpenSolaris 2008.05发布版开始,SUN在ZFS中引进了对Intel® High-Performance Solid State Drives (SSDs)的支持,提供混合存储池(Hybrid Storage Pools),本文将对此进行介绍。 1. 什么是SSD? SSD即固态硬盘(solid state disk),SSD由控制单元和存储单元(FLASH芯片)组成,简单的说就是用固态电子存储芯片阵列而制成的硬盘。闪存设备记忆数据不需要电源,而且读写数据的速度非常快,就像 DRAM一样。随着全球电价上涨,以及海量数据存取速度的需求,SSD越来越被看好。 以下是SSD、HDD的存取速度、单位造价和耗电量的对比,IOPS 即Input/Output Operations PerSecond。     SSD:7000 write IOPS, 35000 read IOPS, $2/GB ,15-20w     HDD:180 write IOPS, 320 read IOPS ,$30/GB,2.5w 2. 改进存储系统的动机 … Continue reading

Posted in Solaris | Tagged | Leave a comment