??xml version="1.0" encoding="utf-8" standalone="yes"?>
]]>
]]>
一大堆Q不可能一个一个数吧。我只想看看80端口的连接加一个grep ,q样Q?br>root@www:~#netstat -na46 | grep 192\.168\.100\.14:80
q是很多。加一?wc -l有重复统计。好了,我只要第5列。cut -f5 。不起作用。原来cut是按TAB分字Dc没关系使用sed替换Q?br>root@www:~#netstat -na46 | grep 192\.168\.100\.14:80 | sed 's/ \{1,\}/\t/g'
好了l于可是使用cut ?br>root@www:~#netstat -na46 | grep 192\.168\.100\.14:80 | sed 's/ \{1,\}/\t/g' | cut -f 5
接下来就是排序把重复的ipqo掉:
root@www:~#netstat -na46 | grep 192\.168\.100\.14:80 | sed 's/ \{1,\}/\t/g' | cut -f 5 | sort -u
root@www:~#netstat -na46 | grep 192\.168\.100\.14:80 | sed 's/ \{1,\}/\t/g' | cut -f 5 | sort -u | wc -l
真方便!模块化的力量Q中间g的力?道W|N不算一个精巧的消息中间件吗)Q?br>
]]>
在接下来的工作中Q我们希望把存储的XML表达出来。我们通过XSL来实现XML的表达,有趣的是XSL
本n也是XMLQ又是一个有的递归?
把DBXML与XSL联系h。我们找C一个DBXML API中函敎ͼ他可以将XML Node 以Xerces DOMDocument 方式q回Q?
我们要还要引入一个库Xalan C++。Xalan C++可以生成的l果存储在一个Xerces DOMDocument中;可以使用TransformToXercesDOMXercesDOM作ؓ转换的源?br>
在XML开源Y件中q有一支,那就是来自MIT的xmlsoft.org。其中最著名的libxml2和基于libxml2的libxsltQ均应用到gnome上。这些都是C的API包,在此基础上有C++l定,PHPl定Qperll定{等。debian下的php-mod-xml源自这里?
openoffice的OpenDocumentZXML,xml.openoffice.org上也有一些实玎ͼ同样值得x?
]]>
二. SUN Solstice DiskSuite软g安装
SUN Solstice DiskSuite软g免费提供于Solaris 2.6、Solaris 7、Solaris 8、Solaris 9及最新发布的Solaris 10中。在Solaris 9和Solaris 10中,SUN Solstice DiskSuite已经集成在操作系l当中,不需要安装就可以直接使用。在Solaris 2.6、Solaris 7?Solaris 8的操作系l环境下Q需要对SUN Solstice DiskSuiteq行安装。以下介l具体安装过E(以Solaris 8ZQ?br /> SUN Solstice DiskSuite软g存在于Solaris8pȝ安装盘的software 2 of 2中,也就是^常所说的Solaris 8安装盘的W?张(通常所说的Solaris 8安装盘有4张:install Qsoftware 1 of 2Qsoftware 2 of 2QlanguageQ。Y件具体目录如下: /sol_8_401_sparc_2/Solaris_8/EA/products/DiskSuite_4.2.1
其中Q?sol_8_401为操作系l版本号Q本例中的操作系l版本号为Solaris 8 0401。DiskSuite_4.2.1为SUN Solstice DiskSuite软g版本P此版本ؓ4.2.1Q如果没有安装介质,可以到SUN的网站免费下载Y件包Q。SUN Solstice DiskSuite软g的安装\径在/usr/opt下,所以您?usr下至需?0兆空间来安装SUN Solstice DiskSuite软g?br /> 软g安装Ҏ有两U,在图形界面环境下可以直接执行以上路径中的installer脚本E序。启动图形界面,q而根据下一步提C完成安装。除?installer脚本E序Q我们通常利用命o行通过安装软g包来安装SUN Solstice DiskSuite。SUN Solstice DiskSuite软g包存在目录ؓQ?sol_8_401_sparc_2/Solaris_8/EA/products/DiskSuite_4.2.1/sparc/packages/
以下为安装实例:
1Q进入Packages所在的目录
#cd /cdrom/cdrom0/Solaris_8/EA
#cd /products/DiskSuite_4.2.1/sparc/Packages
2Q查看Y件包
# ls
SUNWlvma SUNWlvmg SUNWlvmr SUNWmdg SUNWmdja SUNWmdnr SUNWmdnu SUNWmdr SUNWmdu SUNWmdx
3Q添加Y件包
# pkgadd -d . Q注Q?”ؓ安装路径为当前目录,不可省略Q?br /> he following packages are available:
1 SUNWlvma Solaris Volume Management API's
(sparc) 1.0,REV=2001.11.02.03.17
2 SUNWlvmg Solaris Volume Management Application
(sparc) 1.0,REV=2001.11.14.03.19
3 SUNWlvmr Solaris Volume Management (root)
(sparc) 1.0,REV=2001.11.14.03.19
4 SUNWmdg Solstice DiskSuite Tool
(sparc) 4.2.1,REV=1999.11.04.18.29
5 SUNWmdja Solstice DiskSuite Japanese localization
(sparc) 4.2.1,REV=1999.12.09.15.37
6 SUNWmdnr Solstice DiskSuite Log Daemon Configuration Files
(sparc) 4.2.1,REV=1999.11.04.18.29
7 SUNWmdnu Solstice DiskSuite Log Daemon
(sparc) 4.2.1,REV=1999.11.04.18.29
8 SUNWmdr Solstice DiskSuite Drivers
(sparc) 4.2.1,REV=1999.12.03.10.00
9 SUNWmdu Solstice DiskSuite Commands
(sparc) 4.2.1,REV=1999.11.04.18.29
10 SUNWmdx Solstice DiskSuite Drivers(64-bit)
(sparc) 4.2.1,REV=1999.11.04.18.29
Select package(s) you wish to process (or 'all' to process all packages). (default: all) [?,??,q]:
输入all来安装所有Y件包。在实际安装q程中,W者在较早的操作系l环境下曄遇到安装不成功的情况Q原因是驱动不符。SUN Solstice DiskSuite驱动?可Y件包SUNWmdr提供Q大家如果碰到类似问题可以先安装8可Y件包再安装其他Y件包。也是先在输入栏输?Q等?可Y件包安装成功后再对其它Y件包q行安装?br />
三. Metadevice State Database介绍
SUN Solstice DiskSuite软g在用的时候需要调用一个其Ҏ的Metadevice State Database数据库。Metadevice State Database通常被称为MetadbQMetadb用来存储SUN Solstice DiskSuite软gҎ务器盘的所有配|信息。换句话_我们所做的所有磁盘、卷、RAID的结构,都存储在Metadb当中。每当服务器重新启动QSUN Solstice DiskSuite软g׃自动调用Metadb中的信息Q从而按照这些信息配|物理磁盘,挂接UFS文gpȝQ从而操作pȝ正常启动。相反,如果 Metadb被破坏了Q操作系l就有可能无法正常启动,q入单用L态,甚至可能丢失盘数据?br /> Metadb对于SUN Solstice DiskSuite软g来讲是异帔R要的。因此我们会在徏立Metadb时徏立很多备份。一旦Metadb被破坏,SUN Solstice DiskSuite软g可以自动其恢复Q如果Metadb损坏严重Q我们也可以手动恢复MetadbQMetadb和其备䆾之间是实时备份的?br /> 在物理磁盘中QMetadb通常是磁盘的一个专有分区,也就是说在安装操作系l的时候要预留Z个分区给Metadb。这个分Z能存在文件系l,一旦这个分做成MetadbQ它也就不能再做其他应用。我们通常把磁盘的7号分区预留给MetadbQ其大小通常?0兆到50兆。当Ӟ大家也可以用别的分区代替7号分区预留给Metadb?br /> 在实际应用中Q我们通常把SUN Solstice DiskSuite软g下的所有硬盘都建立一个Metadb。每个硬盘上的Metadb分区又可以存在多个备份,所有这些备份之间都是实时同步的。这P我们基本可以保证Metadb不会被破坏?br /> Metadb必须在SUN Solstice DiskSuite软g使用之前建立Q否则SUN Solstice DiskSuite软g不会生效。我们用metadb命oQ徏立Metadevice State Database。下面是一个徏立Metadevice State Database的实例:
# metadb -a -f -c 3 cxtxdxsx cytydysy
metadbY件命令;-a参数为增加metadbQ?f参数为徏立一个初始的metadbQ?c参数后边要加个数字,表示在一个物理分区里?metadb备䆾的数目,此例中ؓ每个分区里面3个备份;cxtxdxsx cytydysy 则是要徏立metadb的物理分区,可以增加他的个数。注意,一旦metadb命o执行成功Q预留分Z的其他数据将会被破坏。所以此条命令可以解释ؓQ在cxtxdxsx cytydysy两个盘分区上徏立初始的MetadbQ每块硬盘分Z的备份数目ؓ3?br />
下面介绍一个删除Metadb的实例:
# metadb –d cxtxdxsx
-d参数为删除metadb。这条命令可以解释ؓQ在cxtxdxsx分区上删除原有的Metadb。我们要查看已经存在的Metadb可以用以下命令:
# metadb –I
最后,ȝ介绍一下metadb的参敎ͼ-a 参数意ؓ增加一个metadbQ?f 参数意ؓ建立一个初始化的MetadbQ?c n 其中n为数字,此参数意为在每一个分Z建立n个Metadb备䆾Q如果不指定此参敎ͼ默认只徏立一个MetadbQ?d 参数意ؓ删除一个MetadbQ?I参数意ؓ查询现有的Metadb的信息,包括备䆾个数Q分布情况和Metadb的健Lc?br /> SUN Solstice DiskSuite软g的用接口有三种Q基于图形界面操作系l的GUI软g界面方式、命令行方式、修?etc/opt/SUNWmd/md.tab文g方式。其中,命o行方式应用广泛,本文着重介l命令行方式?br />
四. RAID 0
我们通常所说的RAID 0是对硬盘进行串q,把两个或更多的硬盘或分区串接hQ当做一个逻辑讑֤使用。RAID 0增加了X倍的数据I间QX为磁盘个敎ͼQ但是数据的危险性也同时增加到X倍。例如,我们做一?块硬盘的RAID 0Q那么数据空间就是原来的3倍,危险性也是原来的3倍,坏掉3块盘中Q何一块硬盘,整个RAID的数据将会全部丢失?br /> SUN Solstice DiskSuite软g通过把物理硬盘上的逻辑分区讑֤转换成特D的DiskSuite讑֤Q通常我们DiskSuite讑֤UCؓ “metadevice”,可以通过metainit命o把一个系l逻辑分区做成一个metadevice。metadevice的设备\径和pȝ原来的设备\径不同,块设备\径在/dev/md/dsk下,裸设备\径在/dev/md/rdsk下?br /> SUN Solstice DiskSuite软g下的RAID 0有两U方式:concatenation方式?striping方式。它们ؓRAID 0提供了两U不同的l构Q而且各有各的优、缺炏V?br /> Q.concatenation方式
concatenation方式把多个逻辑盘或分区首接做成一个metadevice。具体结构如下图Q?br />
׃数据是从W一个block序往下写的,因此Qconcatenation方式h良好的可扩展性。也是_理员可以根据文件系l的实时使用情况随时扩充metadevice的大。然而,是因ؓq种序写入的结构,使得concatenation方式有个致命的缺点,即IO性能降低。因为当数据写入的时候,只要W一块硬盘没有写满,在其后的盘上,都不会有M的写入动作。这P也就造成了后面硬盘IO带宽的浪费,从而整个 concatenation方式的RAID 0 IO性能降低。下面是一个制作Concatenation方式RAID 0的实例:
# metainit d1 2 1 /dev/dsk/c0t0d0s1 1 /dev/dsk/c0t1d0s5
metainit为制作metadevice的命令;d1为metadevice的名字;metadevice的名字用dN表示QN可以??127Q? 为RAID 0的子盘个敎ͼ子盘实际上是以striping的方式做成的Q? 为每个striping的方式做成的子盘中的分区个数Q只有当q个数字?的时候,我们做成的metadevice才是真正的concatenation 方式Q?dev/dsk/c0t0d0s1 做成metadevice的物理分区。这条命令可以解释ؓQ用metainit命o制作一个concatenation方式的包含两个子盘名为d1?RAID 0Q两个子盘分别ؓ/dev/dsk/c0t0d0s1?dev/dsk/c0t1d0s5?br />
Q.striping方式
striping方式把多个逻辑盘以条带化的方式连接成一个metadevice。具体方式参照下图:
striping方式是把硬盘分割成若干条带Q数据写入的时候和concatenation方式不同。striping方式在写入数据的时候由于条带化的分ԌҎ有的盘都有写入操作Q因此striping方式比concatenation方式有着良好的IO。但是,也由于这U条带结构, striping方式不可以在U扩充文件系l容量。下面是一个制作striping方式RAID 0的实例:
# metainit d2 1 2 /dev/dsk/c0t0d0s4 /dev/dsk/c0t0d0s5 –i 32k
metainit为制作metadevice的命令;d2为metadevice的名字;1 为RAID 0的子盘个敎ͼ只有当这个数字ؓ1的时候,我们做成的RAID 0才是真正的striping方式Q? 为striping方式做成的子盘中的分Z敎ͼ/dev/dsk/c0t0d0s4 做成metadevice的物理分区;-i 参数为每个条带的大小Q?i 32k的意思是每个条带?2k字节。这条命令可以解释ؓQ用metainit命o制作一个striping方式的包含两个子盘名为d2的RAID 0Q两个子盘分别ؓ/dev/dsk/ c0t0d0s4?dev/dsk/ c0t0d0s4Q每个条带大ؓ32k?br /> 除了striping方式和concatenation方式Q我们还可以通过metainit命o制作混合方式的RAID 0Q不q很有客户会要求把RAID 0制作成合方式?下面是一个制作合RAID 0的实例:
#metainit d12 3 2 c0t1d0s1 c1t1d0s1 1 c0t2d0s3 3 c0t3d0s4 c1t3d0s4 c2t3d0s4
q条命o可以解释为,用metainit命o制作一个包?个子盘名为d12的RAID 0Q第一个子盘分别ؓc0t1d0s1和c1t1d0s1做成的stripingQ第二个子盘分别为c0t2d0s3Q第三个子盘分别为c0t3d0s4 c1t3d0s4 c2t3d0s4做成的striping?br />
五. RAID 1
我们通常所说的RAID 1也就是对盘q行q联Q把两个或更多的盘或分区ƈ联v来当做一个逻辑讑֤使用Qv到镜像的作用。RAID 1提供了数据最大限度的安全性,它的数据安全性是没有RAID 1时候的X倍(X为子镜像数目Q。ؓ了提高数据安全性RAID 1费了XQ?倍的I间Q磁盘利用率是没有RAID 1时候的1/XQIO性能也略有下降。具体结构参照下图:
在RAID 1中,两个子镜像的数据是实时同步的。也是_两个子镜像在同一旉q行相同的读写操作。RAID 1的方式被q泛的应用到pȝ盘的盘理之中。就我个人的l验Q超q半数的客户会要求管理员或者工E师对他的系l盘q行镜像操作Q以便于当一块硬盘损坏之后,可以从另一块镜像盘引导操作pȝ?下面是一个系l盘制作RAID 1完整的实例;
1.首先规划需要镜像的盘
d0 d10 d20 / s0
d1 d11 d21 /var s1
d2 d12 d22 swap s3
d3 d13 d23 /export/home s6
d0Qd1Qd2Qd3为对应各个分区的metadevice名字Qd10{是每个metadevice对应的子镜像。一般在做系l盘镜像前,大家最好规划一下各个metadevice的对应关pd子镜像名字以免乱,同时也便于后期的l护?br />
2.盘分区同步
# prtvtoc /dev/rdsk/c0t0d0s2 | fmthard -s - /dev/rdsk/c0t1d0s2
׃pȝ盘镜象要求磁盘分区完全一_两块盘分区大小也必ȝ同。如果两块物理硬盘大不一_在保持所有分区大和序完全一致后Q其他的I间会费掉。上面的prtvtoc可以使硬盘c0t1d0的分区和盘c0t0d0的分区相同,c0t0d0上的数据不会被破坏,但是c0t1d0上的数据会被完全毁灭。除此之外,也可以利用系l中的format命o手动修改盘分区臛_全一致?br />
3Q制作metadb
# metadb -a -f -c 3 c0t0d0s7 c1t0d0s7
在c0t0d0s7、c0t1d0s7两个盘分区上徏立初始的metadbQ每块硬盘分Z的备份数目ؓ3?br />
4.作根分区的两路子镜像
# metainit -f d10 1 1 c0t0d0s0
把c0t0d0s0制成名ؓd10的子镜像Q实际上q个子镜像就是一个只包含一个分区的RAID 0。由于c0t0d0s0是操作系l的跟盘Q分Z存在文gpȝQ所以用参?f在文件系l的分区中强制执行metainit命oQ即Q?br />
# metainit d20 1 1 c0t1d0s0
把c0t1d0s0制作成名为d20的子镜像?br />
5Q制作根分区的镜像盘
# metainit d0 -m d10
制名为d0的镜像盘Q其中一路子镜像为d10。用metainit命o?f参数制作镜像盘,所制的镜像盘必d含一路的子镜像。这路镜像硬盘必L镜像源盘所对应的分区,也就是说q\子镜像中必须包含文gpȝ?br />
6Q备份vfstab
、 # cp /etc/vfstab /etc/vfstab.backup
׃要修改vfstab文gQ所以事先要备䆾vfstab文gQ以便修改失败时可以通过单用h者光盘单用户方式恢复?br />
7Q修改vfstab文g中关于根分区的项?br /> # metaroot d0
# lockfs
# reboot
把系l逻辑讑֤制作成metadevice后,需要修?etc/vfstab文gQ从而下次重启之后操作pȝ可以用metadevice的\径挂接文件系l。通常情况要把cM?dev/dsk/c0t0d0s0?dev/rdsk/c0t0d0s0的行改ؓ /dev/md/dsk/c0t0d0s0?dev/md/rdsk/c0t0d0s0?br /> metaroot命o可以自动修改vfstab文g的有x分区的内容, vfstab文g中非根分区的内容要进行手动修攏V修Ҏ注意目之间要用tab键格开Q不能用I格?br />当系l重新引导成功后Q用df –k命o可以看出pȝ根分区的挂接目录已经由原来的c0t0d0s0改ؓ存在单\子镜像的metadeviceQ这个metadevice的名字是d0?br />
8Q制作其他分区的镜像?br />
其它分区镜像盘的制作ҎcM于根分区的制作方法?br />
# metainit -f d11 1 1 c0t0d0s1
制作c0t0d0盘上的1号分区的metadeviceQ名为d11?br />
# metainit d21 1 1 c0t1d0s1
制作c0t1d0盘上的1号分区的metadeviceQ名为d21?br />
# metainit d1 -m d11
制作/var分区镜像的metadeviceQ名为d1。其中,包含单\子镜像的d11。d11必是包含文gpȝ的源盘对应的分区?br />
# metainit -f d12 1 1 c0t0d0s3
制作c0t0d0盘上的3号分区的metadeviceQ名为d12?br />
# metainit d22 1 1 c0t1d0s3
制作c0t1d0盘上的3号分区的metadeviceQ名为d22?br />
# metainit d2 -m d12
制作swap分区镜像的metadeviceQ名为d2Q其中包含单路子镜像的d12。d12必须是包含文件系l的源盘对应的分区?br />
# metainit -f d13 1 1 c0t0d0s6
制作c0t0d0盘上的6号分区的metadeviceQ名为d13?br />
# metainit d23 1 1 c0t1d0s6
制作c0t1d0盘上的1号分区的metadeviceQ名为d23?br />
# metainit d3 -m d13
制作/export/home分区镜像的metadeviceQ?名ؓd3Q其中包含单路子镜像的d13。d13也必L包含文gpȝ的源盘对应的分区?br />
我们可以使用metastat命o来查看SUN Solstice DiskSuite软g使用的状态。metastat命o可以查看到各个metadevice的属性——也是它们的RAIDU别Q各?metadevice之间的依存关p,各个metadevice和系l逻辑盘分区的关p,各个metadevice的健L况以及同步时昄同步癑ֈ比。在实际应用中,metastat是一个非常有用的命oQ系l管理员和工E师可以很容易地从metastat命o的输Z观察到各?metadevice的结构和健康状况。我们还可以使用metaclear命o清除对硬盘的metadevice操作。这个命令可以理解ؓ?metainit的反向命令。例如:
# metaclear d0
9Q将另外一路子镜像盘加入到镜像盘中
# metattach d0 d20
# metattach d1 d21
# metattach d2 d22
# metattach d3 d23
分别把子镜像d20、d21、d22、d23加入相应的镜像盘。我们用metattach命o把另外一路子镜像d到镜像盘中。metattach命o的格式是Qmetattach 镜像盘名子镜像盘名,q两个名字必都是metadevice名称。同LQ我们还l常使用metadetach命o一路子镜像盘从镜像盘中分离出去?metadetach命o和metattach命o的作用是相反的?br />在用metattach命o把另外一路子镜像d到镜像盘之后Q两路子镜像会进行同步,q个同步的过E比较Oѝ?br />
#metastat | grep %
查看镜像同步癑ֈ比。可以用此命o查看所有分区同步的癑ֈ比?br />
10Q修?etc/vfstab文g中关于其它分区的目
metaroot命o只能修改vfstab文g中关于根分区的项目,非根分区的项目需要手动修攏V当修改vfstab文g和同步进E全部完成之后,可以重新引导操作pȝQ至此,pȝ盘镜像制作完毕?br />
六.RAID 5
RAID 5是一U带有校验位的RAID形式。RAID 5的构成至需?块硬盘。它在把物理盘以类gstriping方式排列hQƈ在其中加入校验位。在RAID 5中,校验位是以Z字Ş的顺序排列的。这h列的好处是,一旦其中Q何一块硬盘损坏,RAID 5都可以至占?个数据模块和一个校验模块中臛_两项。而另外一Ҏd以根据已l存在的两项出。也是说RAID 5的空间可以增加到没有RAID 5之前的XQ?倍,而同时又可以允许M一块硬盘故障而不丢失数据QX为RAID 5中的物理盘个数Q。RAID 5的具体结构可以参照下图?br />
可利用metainit命o制作RAID 5Q下面是一个制作RAID 5的实例:
# metainit /dev/md/dsk/d12 –r /dev/dsk/c0t0d0s3 /dev/dsk/c0t0d0s4 /dev/dsk/c0t0d0s5 –i 8k
我们?r参数代表制作RAID 5Q在-r参数后边加上需要做成RAID5的子盘Q用 –i 参数来指定RAID 5中每个条带的大小。这条命令可以解释ؓ?dev/dsk/c0t0d0s3?dev/dsk/c0t0d0s4?/dev/dsk/c0t0d0s5三个分区制作一个名为d12的RAID 5Q每个条带的大小?k。同样可以用metastat命o查看RAID 5 的各信息。由于RAID 5有着很好的容量和定w的^衡性,所以在实际目实施中,RAID 5被应用十分普遍。由于通常情况下RAID 5都是用来存储数据Q所以系l管理员需要经常观察RAID 5的健L况,从而确保数据安全?br />========
以下是用心?在一台SunFire V880使用):
1 在第0个盘上安装SolarispȝQ由于无知没有预留metadb的空?br />2 通过format命o,在第1?个盘上安装metadb分区(c1t1d0s7,c1t2d0s7),?-5盘上联立33GB的数据分?c1t1d0s1,c1t2d0s1,c1t3d0s1,c1t4d0s1,c1t5d0s1)
3 建立meta数据
#metadb -a -f -c 3 c1t1d0s7 c1t2d0s7
l果:
# metadb
flags first blk block count
a u 16 8192 /dev/dsk/c1t1d0s7
a u 8208 8192 /dev/dsk/c1t1d0s7
a u 16400 8192 /dev/dsk/c1t1d0s7
a u 16 8192 /dev/dsk/c1t2d0s7
a u 8208 8192 /dev/dsk/c1t2d0s7
a u 16400 8192 /dev/dsk/c1t2d0s7
4 建立RAID5
#metainit /dev/md/dsk/d12 -r /dev/dsk/c1t1d0s1 /dev/dsk/c1t2d0s1 \
/dev/dsk/c1t3d0s1 /dev/dsk/c1t4d0s1 /dev/dsk/c1t5d0s1 -i 8k
l果:
# metastat d12: RAID
状? 初始?br /> 正在q行初始? 56.6% 完成
交错Q?16 ?br /> 大小Q?276821091 ?(131 GB)
原始讑֤Q?br /> 大小Q?276823296 ?(131 GB)
讑֤ 引导块 ?Dbase 状?Reloc 热备?br /> c1t1d0s1 3059 否 ?初始化 ??br /> c1t2d0s1 3059 否 ?初始化 ??br /> c1t3d0s1 3059 否 ?初始化 ??br /> c1t4d0s1 3059 否 ?初始化 ??br /> c1t5d0s1 3059 否 ?初始化 ??br />
Device Relocation Information:
Device Reloc Device ID
c1t1d0 是 ?id1,ssd@n20000004cf7f1ce9
c1t2d0 是 ?id1,ssd@n20000004cf7f1757
c1t3d0 是 ?id1,ssd@n20000004cf7f178b
c1t4d0 是 ?id1,ssd@n2000002037f834fc
c1t5d0 是 ?id1,ssd@n20000004cf7f1a88
5 格式?br /># newfs /dev/md/dsk/d12
newfs: 建构新的文gpȝ /dev/md/rdsk/d12: (y/n)Q?y
警告Q最后一个未分配柱面中的 2974 扇区
/dev/md/rdsk/d12: ?45056 道上,48 扇区?128 柱面?276821090 扇区
135166.5MB ?2816 柱面组 (16 c/g, 48.00MB/g, 5824 i/g)
块 (fsck -F ufs -o b=#) 备䆾在:
32, 98464, 196896, 295328, 393760, 492192, 590624, 689056, 787488, 885920,
初始化柱面组Q?br />........................................................
最?10 个柱面组的超U块备䆾位置Q?br /> 275847968, 275946400, 276044832, 276143264, 276241696, 276340128, 276438560,
276536992, 276635424, 276733856
6 mount
# mount /dev/md/dsk/d12 /data/
?etc/vfstab中添?br />/dev/md/dsk/d12 /dev/md/dsk/d12 /data ufs 2 yes -
]]>
]]>
]]>