<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Admin&#039;s Choice &#187; Solstice DiskSuite</title>
	<atom:link href="http://adminschoice.com/tag/solstice-disksuite/feed" rel="self" type="application/rss+xml" />
	<link>http://adminschoice.com</link>
	<description>Unix adminstrators documents , tip and more</description>
	<lastBuildDate>Thu, 11 Feb 2010 02:53:34 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Solstice DiskSuite &#8211; Admin&#8217;s Guide</title>
		<link>http://adminschoice.com/solstice-disksuite-guide</link>
		<comments>http://adminschoice.com/solstice-disksuite-guide#comments</comments>
		<pubDate>Tue, 29 Dec 2009 21:17:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Volumes]]></category>
		<category><![CDATA[Solstice DiskSuite]]></category>
		<category><![CDATA[sun volume manager]]></category>

		<guid isPermaLink="false">http://adminschoice.com/?p=354</guid>
		<description><![CDATA[Understanding and setting up Solstice DiskSuite 4.2.1 in Solaris]]></description>
			<content:encoded><![CDATA[<table border="0" >
<caption><b><u><font size="4">Table of Contents</font></u></b></caption>
<tr>
<td width="49%" align="left" valign="top" height="315">
<dl>
<dt>1.<a href="#Advantages of Disksuite">Advantages of Disksuite</a></dt>
<dt>2. <a href="#Disksuite terms">Disksuite terms</a></dt>
<dt>3. <a href="#Disksuite Packages :">Disksuite Packages</a> </dt>
<dt>4. <a href="#Installing DiskSuite 4.2.1 in Solaris 8">Installing<br />
      DiskSuite 4.2.1 in Solaris 8</a></dt>
<dt>5. <a href="#Installing DiskSuite 4.2.1 in Solaris 8">Creating State<br />
      Database </a></dt>
<dt>6. <a href="#Creating MetaDevices :">Creating MetaDevices</a> </dt>
<dt>6.1. <a href="#1.) Creating a concatenated Metadevice :">Concatenated<br />
      Metadevice</a></dt>
<dt>6.2. <a href="#2.) Creating a stripe of 32k interleave">Striped<br />
      Metadevice</a></dt>
<dt>6.3 <a href="#3.) Creating a Mirror :">Mirrored Metadevice</a> </dt>
<dt>6.3.1 <a href="#6.3.1 ) Creating a simple mirror from new partitions"> Simple mirror</a></dt>
<dt>6.3.2 <a href="#6.3.2.) Mirroring a Partitions with data which can be unmounted">Mirroring a unmountable Partition </a></dt>
<dt>6.3.3 <a href="#6.3.3 ) Mirroring a Partitions with data which can not be unmounted - root and /usr">  root mirroring &amp; /usr mirroring</a></dt>
<dt>6.3.4 <a href="#· root mirroring">&nbsp;</a><a href="#6.3.4  ) Making Mirrored disk bootable">Making alternate&nbsp; root disk bootable</a></dt>
<dt>6.3.5&nbsp;<a href="#2.) Creating alterbate name for Mirrored boot disk">Setting<br />
      alternate boot path for root mirror</a></dt>
<dt>6.4 <a href="#4.) Creating a RAID 5 volume :">RAID 5 </a></dt>
</dl>
</td>
<td width="51%" align="left" valign="top" height="315">
<dl>
<dt>6.5 <a href="#B.)Trans Metadevice for a File System That Cannot Be Unmounted"> TransMeta Device</a></dt>
<dt>6.5.1 <a href="#6.5.1) Trans Metadevice for a File System That Can Be Unmounted"> TransMeta device for unmountable partition</a></dt>
<dt>6.5.2 <a href="#B.) Trans Metadevice for a File System That Cannot Be Unmounted">TransMeta device for non unmountable partition.</a></dt>
<dt>6.5.3 <a href="#6.5.3 ) TransMeta device using Mirrors">TransMeta<br />
      device using Mirror</a></dt>
<dt>6.6 <a href="#6.) HotSpare Pool">Hotspare Pool</a></dt>
<dt>6.6.1 <a href="#6.6.1) Associating a Hot Spare Pool with Submirrors">Adding a Hotspare to Mirror</a></dt>
<dt>6.6.2 <a href="#6.6.2 ) Associating or changing a Hot Spare Pool with a RAID5 Metadevice">Adding a Hotspare to RAID5</a></dt>
<dt>6.6.3 <a href="#6.6.3 ) Mirroring a Partitions with data which can not be unmounted - root and /usr">Adding a disk to Hotspare Pool.</a></dt>
<dt>6.7 <a href="#7.)Disksets">disksets</a></dt>
<dt>6.7.1 <a href="#6.7.1 ) Creating Two Disksets">Creating two diskset </a></dt>
<dt>6.7.2 <a href="#6.7.2 ) Adding Drives to a Diskset">Adding disk to diskset </a></dt>
<dt>6.7.3 <a href="#6.7.3 ) Creating  a Mirror in a Diskset">Creating Mirror in Diskse</a>t</dt>
<dt>7.&nbsp; <a href="#Trouble Shooting">TroubleShooting </a></dt>
<dt>7.1) <u><a href="#1.) Recovering from  Stale State Database Replicas"> Recovering from&nbsp; Stale State Database replicas</a></u></dt>
<dt>7.2) <u><a href="#2.) Metadevice Errors :">Metadevice Errors</a></u></dt>
</dl>
</td>
</tr>
</table>
<blockquote>
<blockquote></blockquote>
</blockquote>
<p><b></p>
<p>1.<a name="Advantages of Disksuite"> <u>Advantages of Disksuite</u></a><br />
</b><br />
  Solstice disk suite provides three major functionalities :</p>
<p><b>1.</b> Over come the disk size limitation by providing for joining of<br />
    multiple disk slices to form a bigger&nbsp; volume.&nbsp;</p>
<p><b><br />
 2.</b> Fault Tolerance by allowing mirroring of data from one disk to another<br />
    and keeping parity&nbsp;<br />
    &nbsp;&nbsp;&nbsp; information in RAID5.&nbsp;</p>
<p><b><br />
    3.</b> Performance enhancement by allowing spreading the data space over<br />
    multiple disks .</p>
<p>  <b></p>
<p>2. <u><a name="Disksuite terms">Disksuite terms</a><br />
  </u><br />
</b></p>
<dl>
<dd><b>Metadevice :</b>A virtual device composed of several physical devices -<br />
    slices/disks&nbsp; . All the operations are carried out using metadevice<br />
    name and transparently implemented on the individual device.</dd>
<dd><b>RAID : </b>A group of disks used for creating a virtual volume is called array and<br />
depending on disk/slice arrangement these are called various types of RAID<br />
(Redundant Array of Independent Disk ).</dd>
</dl>
<blockquote>
<dl>
<dd>RAID 0 Concatenation/Striping</dd>
<dd>RAID 1 Mirroring</dd>
<dd>RAID 5 Striped array with rotating parity.</dd>
</dl>
</blockquote>
<p><b>Concatenation :</b>Concatenation is joining of two or more disk slices to add up the disk space<br />
. Concatenation is serial in nature i.e. sequential data operation are performed<br />
serially on first disk then second disk and so on . Due to serial nature new<br />
slices can be added up without having to take the backup of entire concatenated<br />
volume ,adding slice and restoring backup .</p>
<p><b>Striping </b>:Spreading of data over multiple disk drives mainly to enhance the performance<br />
by distributing data in alternating chunks &#8211; 16 k interleave across the stripes<br />
. Sequential data operations are performed in parallel on all the stripes by<br />
reading/writing&nbsp; 16k data blocks alternatively form the disk stripes.</p>
<p><b>Mirroring </b>: Mirroring provides data redundancy by simultaneously writing data on to two<br />
sub mirrors of a mirrored device . A submirror can be a stripe or concatenated<br />
volume and a mirror can have three mirrors . Main concern here is that a mirror<br />
needs as much as the volume to be mirrored.</p>
<p><b>RAID 5</b> : RAID 5 provides data redundancy and advantage of striping and uses less space<br />
than mirroring . A RAID 5 is made up of at least three disk which are striped<br />
with parity information written alternately on all the disks . In case of a<br />
single disk failure the data can be rebuild using the parity information from<br />
the remaining disks .<br />
<b></p>
<p>3. <u><a name="Disksuite Packages :">Disksuite Packages :</a><br />
</u><br />
</b></p>
<p>Solstice disk suite is a part of server edition of the Solaris OS and is not<br />
included with desktop edition . The software is in pkgadd format &amp; can be<br />
found in following locations in CD :</p>
<dl>
<dd>
<p style="margin-left: 33">Solaris 2.6 &#8211; “Solaris Server Intranet Extensions 1.0” CD.</dd>
<dd>
<p style="margin-left: 33">Solaris 7 &#8211; “Solaris Easy Access Server 3.0”</dd>
<dd>
<p style="margin-left: 33">Solaris 8 &#8211; “Solaris 8 Software 2 of 2”</dd>
</dl>
<p>Solaris 2.6 &amp; 2.7 Solstice Disk suite version is 4.2 .&nbsp; Following packages are part of it but only the &quot;SUNWmd&quot; is the<br />
minimum required package and a patch.</p>
<dl>
<dd>
<p style="margin-left: 33">SUNWmd &#8211; Solstice DiskSuite</dd>
<dd>
<p style="margin-left: 33">SUNWmdg &#8211; Solstice DiskSuite Tool</dd>
<dd>
<p style="margin-left: 33">SUNWmdn &#8211; Solstice DiskSuite Log Daemon</dd>
<dd>
<p style="margin-left: 33">Patch No. 106627-04 (obtain latest revision)</dd>
</dl>
<p>Solaris 8 DiskSuite version is 4.2.1 .Following are the minimum required packages ..</p>
<dl>
<dd>
<p style="margin-left: 33">SUNWmdr Solstice DiskSuite Drivers (root)</dd>
<dd>
<p style="margin-left: 33">SUNWmdu Solstice DiskSuite Commands</dd>
<dd>
<p style="margin-left: 33">SUNWmdx Solstice DiskSuite Drivers (64-bit)</dd>
</dl>
<p><b></p>
<p>4. <u><a name="Installing DiskSuite 4.2.1 in Solaris 8">Installing DiskSuite 4.2.1 in Solaris 8</a><br />
</u><br />
</b></p>
<p><b>#</b> <b>cd /cdrom/sol_8_401_sparc_2/Solaris_8/EA/products/DiskSuite_4.2.1/sparc/Packages</b></p>
<p><b><font COLOR="#000000"># pkgadd -d .<br />
</font><br />
</b></p>
<dl>
<dd>
<p style="margin-left: 30">The following packages are available:</dd>
<dd>
<p style="margin-left: 30">1 SUNWmdg Solstice DiskSuite Tool</dd>
<dd>
<p style="margin-left: 30">(sparc) 4.2.1,REV=1999.11.04.18.29</dd>
<dd>
<p style="margin-left: 30">2 SUNWmdja Solstice DiskSuite Japanese<br />
      localization</dd>
<dd>
<p style="margin-left: 30">(sparc) 4.2.1,REV=1999.12.09.15.37</dd>
<dd>
<p style="margin-left: 30">3 SUNWmdnr Solstice DiskSuite Log Daemon<br />
      Configuration Files</dd>
<dd>
<p style="margin-left: 30">(sparc) 4.2.1,REV=1999.11.04.18.29</dd>
<dd>
<p style="margin-left: 30">4 SUNWmdnu Solstice DiskSuite Log Daemon</dd>
<dd>
<p style="margin-left: 30">(sparc) 4.2.1,REV=1999.11.04.18.29</dd>
<dd>
<p style="margin-left: 30">5 SUNWmdr Solstice DiskSuite Drivers</dd>
<dd>
<p style="margin-left: 30">(sparc) 4.2.1,REV=1999.12.03.10.00</dd>
<dd>
<p style="margin-left: 30">6 SUNWmdu Solstice DiskSuite Commands</dd>
<dd>
<p style="margin-left: 30">(sparc) 4.2.1,REV=1999.11.04.18.29</dd>
<dd>
<p style="margin-left: 30">7 SUNWmdx Solstice DiskSuite Drivers(64-bit)</dd>
<dd>
<p style="margin-left: 30">(sparc) 4.2.1,REV=1999.11.04.18.29</dd>
<dd>
<p style="margin-left: 30"><font COLOR="#000000"><br />
  Select 1,3,4,5,6,7 packages .<br />
</font></dd>
</dl>
<p><font COLOR="#000000"></p>
<p>Enter ‘yes’ for the questions asked during installation and reboot the<br />
system after installation .<br />
</font></p>
<p>Put /usr/opt/SUNWmd/bin in root PATH as the DISKSUITE commands are located in<br />
this directory<br />
<b></p>
<p>5. <u><a name="Creating State Database :">Creating State Database :</a><br />
</u><br />
</b></p>
<p>State meta database , metadb , keeps information of the metadevices and is<br />
needed for Disksuite operation . Disksuite can not function without metadb so a<br />
copy of replica databases is placed on different disks to ensure that a copy is<br />
available in case of a complete disk failure .</p>
<p>Metadb needs a dedicated disk slice so create partitions of about 5 Meg. on<br />
the disks for metadb. If there is no space available for metadb then it can be<br />
taken from swap . Having metadb on two disks can create problems as DISKSUITE<br />
looks for database replica number &gt; 50% of total replicas and if one of the<br />
two disks crashes the replica falls at 50% . On next reboot system will go to<br />
single user mode and one has to recreate additional replicas to correct the<br />
metadb errors.</p>
<p>The following command creates three replicas of metadb on three disk slices.<br />
<b></p>
<p>#metadb -a -f -c 3 /dev/dsk/c0t1d0s6&nbsp;&nbsp;&nbsp;&nbsp;<br />
/dev/dsk/c0t2d0s6&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /dev/dsk/c0t3d0s6</p>
<p>6. <a name="Creating MetaDevices :">Creating<u> MetaDevices :</u></a></p>
<p>
</b>Metadevices can be created in two ways</p>
<blockquote>
<blockquote>
<dl>
<dd>1. Directly from the command line</dd>
<dd>2. Editing the /etc/opt/SUNWmd/<u>&lt;md.tab.html&gt;</u><br />
    file as per example given in the md.tab and</dd>
<dd>&nbsp;&nbsp;&nbsp; initializing devices on command<br />
    line using metainit &lt;device name&gt; .</dd>
</dl>
</blockquote>
</blockquote>
<p><b></p>
<p>6.<a name="1.) Creating a concatenated Metadevice :">1 ) Creating a concatenated Metadevice :</a><br />
</b></p>
<p style="margin-left: 50"><b>#<u>metainit</u>&nbsp;&nbsp;&nbsp; d0&nbsp;&nbsp;&nbsp;<br />
3&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp; /dev/dsk/c0t0d0s4 1 /dev/dsk/c0t0d0s4<br />
1 /dev/dsk/c0t0d0s4 </b></p>
<dl>
<dd>
<p style="margin-left: 50">d0 &#8211; metadevice name</dd>
<dd>
<p style="margin-left: 50">3 &#8211; Total Number of Slices</dd>
<dd>
<p style="margin-left: 50">1 &#8211; Number of Slices to be added followed by slice name.</dd>
</dl>
<p><b></p>
<p>6.2<a name="2.) Creating a stripe of 32k interleave"> ) Creating a stripe</a></b><a name="2.) Creating a stripe of 32k interleave"><br />
<b>of 32k interleave</b></a></p>
<p style="margin-left: 50"># <b><u>metainit</u> d10&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; 2&nbsp;&nbsp;&nbsp;&nbsp; c0t1d0s2&nbsp;&nbsp;&nbsp;&nbsp; c0t2d0s2&nbsp;&nbsp;&nbsp;&nbsp; -i&nbsp;&nbsp; 32k<br />
</b></p>
<dl>
<dd>
<p style="margin-left: 50">d0 &#8211; metadevice name</dd>
<dd>
<p style="margin-left: 50">1 &#8211; Total Number of Stripe</dd>
<dd>
<p style="margin-left: 50">2- Number of Slices to be added to stripe followed by slice name .</dd>
<dd>
<p style="margin-left: 50">-i chunks of data written alternatively on stripes.</dd>
</dl>
<p><b></p>
<p>6.<a name="3.) Creating a Mirror :">3 ) Creating a Mirror :</a></p>
<blockquote><p>
</b><font COLOR="#000000"></p>
<p>A <b>mirror</b> is a metadevice composed of one or more <b>submirrors</b>. A<br />
submirror is made of one or more striped or concatenated metadevices. Mirroring<br />
data provides you with maximum data availability by maintaining multiple copies<br />
of your data. The system must contain at least three state database replicas<br />
before you can create mirrors. Any file system including root (</font>/<font COLOR="#000000">),<br />
</font>swap<font COLOR="#000000">, and </font>/usr<font COLOR="#000000">,<br />
or any application such as a database, can use a mirror.</font><br />
<font COLOR="#000000">
</p></blockquote>
<p><b></p>
<p><a name="6.3.1 ) Creating a simple mirror from new partitions">6.3.1 ) Creating a simple mirror from new partitions</a></p>
<p style="margin-left: 33">1</b>.<u>Create two stripes for two submirors as d21 &amp; d22<br />
</u></font></p>
<dl>
<dd>
<p style="margin-left: 33">#<b> <u><br />
  metainit</u> d21 1 1 c0t0d0s2</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d21: Concat/Stripe is setup</dd>
<dd>
<p style="margin-left: 33">#<b> <u><br />
  metainit </u>t<br />
d22 1 1 c1t0d0s2</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d22: Concat/Stripe is setup</dd>
</dl>
<p><b></p>
<p style="margin-left: 33">2</b>. <u>Create a mirror device (d20) using one of the submirror (d21)<br />
</u></p>
<dl>
<dd>
<p style="margin-left: 33">#<b> <u><br />
  metainit</u> &nbsp; d20&nbsp;&nbsp; -m&nbsp;&nbsp; d21</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d20: Mirror is setup</dd>
</dl>
<p><b></p>
<p style="margin-left: 33">3</b>. <u>Attach the second submirror (D21) to the main mirror device (D20)<br />
</u></p>
<dl>
<dd>
<p style="margin-left: 33">#<b> metattach d20 d22</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d50: Submirror d52 is attached.</dd>
</dl>
<p><b></p>
<p style="margin-left: 33">4</b>. <u>Make file system on new metadevice</u><br />
<b></p>
<dl>
<dd>
<p style="margin-left: 33">#newfs /dev/md/rdsk/d20</dd>
<p></b></p>
<dd>
<p style="margin-left: 33">edit /etc/vfstab to mount the /dev/dsk/d20 on a mount point.</dd>
</dl>
<p><b></p>
<p><a name="6.3.2.) Mirroring a Partitions with data which can be unmounted"><br />
6.3.2.) Mirroring a Partitions with data which can be unmounted</a><br />
</b></p>
<dl>
<dd>
<p style="margin-left: 33"># <b><u>metainit</u> f<br />
d1 1 1 c1t0d0s0</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d1: Concat/Stripe is setup</dd>
<dd>
<p style="margin-left: 33"># <b><u>metainit</u> d2 1<br />
1 c2t0d0s0</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d2: Concat/Stripe is setup</dd>
<dd>
<p style="margin-left: 33"># <b><u>metainit</u> d0 -m<br />
d1</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d0: Mirror is setup</dd>
<dd>
<p style="margin-left: 33"># <b>umount /local</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">(Edit the /etc/vfstab file so that the file system references the mirror)</dd>
<dd>
<p style="margin-left: 33">#<b>mount /local</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">#<b>metattach d0 d2</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d0: Submirror d2 is attached</dd>
</dl>
<p>&nbsp;<br />
<b></p>
<p>
<a name="6.3.3 ) Mirroring a Partitions with data which can not be unmounted - root and /usr"><br />
6.3.3 ) Mirroring a Partitions with data which can not be unmounted &#8211; root and /usr</a><br />
</b></p>
<blockquote>
<blockquote>
<p><a name="· /usr mirroring">· </a> <b><a name="· /usr mirroring">/usr mirroring</a><br />
    </b>
  </p></blockquote>
</blockquote>
<dl>
<dd>
<p style="margin-left: 33"># <b>metainit -f d12 1 1 c0t3d0s6</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d12: Concat/Stripe is setup</dd>
<dd>
<p style="margin-left: 33"># <b>metainit d22 1 1 c1t0d0s6</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d22: Concat/Stripe is setup</dd>
<dd>
<p style="margin-left: 33"># <b>metainit d2 -m d12</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d2: Mirror is setup</dd>
<dd>
<p style="margin-left: 33">(Edit the /etc/vfstab file so that /usr references the mirror)</dd>
<dd>
<p style="margin-left: 33"># <b>reboot</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">&#8230;</dd>
<dd>
<p style="margin-left: 33">&#8230;</dd>
<dd>
<p style="margin-left: 33"># <b>metattach d2 d22</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d2: Submirror d22 is attached</dd>
</dl>
<blockquote>
<blockquote>
<p><a name="· root mirroring">· </a> <b><a name="· root mirroring">root mirroring</a><br />
    </b>
  </p></blockquote>
</blockquote>
<dl>
<dd>
<p style="margin-left: 33"># <b>metainit -f d11 1 1 c0t3d0s0</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d11: Concat/Stripe is setup</dd>
<dd>
<p style="margin-left: 33"># <b>metainit d12 1 1 c1t3d0s0</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d12: Concat/Stripe is setup</dd>
<dd>
<p style="margin-left: 33"># <b>metainit d10 -m d11</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d10: Mirror is setup</dd>
<dd>
<p style="margin-left: 33"># <b>metaroot d10</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33"># <b>lockfs -fa</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33"># <b>reboot</dd>
<p> </b></p>
<dd>
<p style="margin-left: 33">…</dd>
<dd>
<p style="margin-left: 33">…</dd>
<dd>
<p style="margin-left: 33"># <b>metattach d10 d12</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d10: Submirror d12 is attached</dd>
</dl>
<p><b></p>
<p><a name="6.3.4  ) Making Mirrored disk bootable">6.3.4&nbsp; )</a></b><a name="6.3.4  ) Making Mirrored disk bootable"> <b>Making Mirrored disk bootable</b></a><br />
<b></p>
<p style="margin-left: 33">a.)</b> # installboot /usr/platform/`uname -i`/lib/fs/ufs/bootblk<br />
/dev/rdsk/c0t1d0s0<br />
<b></p>
<p><a name="2.) Creating alterbate name for Mirrored boot disk">6.3.5 &nbsp;)</a></b><a name="2.) Creating alterbate name for Mirrored boot disk"> <b>Creating alterbate name for Mirrored boot disk</b></a><br />
<b></p>
<p style="margin-left: 33">a</b>.) <u>Find physical path name for the second boot disk<br />
</u></p>
<p style="margin-left: 33"># <b>ls -l /dev/rdsk/c1t3d0s0<br />
</b></p>
<p style="margin-left: 33">lrwxrwxrwx 1 root root 55 Sep 12 11:19 /dev/rdsk/c1t3d0s0 -&gt;../../devices/sbus@1,f8000000/esp@1,200000/sd@3,0:a</p>
<p style="margin-left: 33"><b>b</b>.) <u>Create an alias for booting from disk2</u></p>
<p style="margin-left: 33"><b>ok&gt;</b> <b>nvalias bootdisk2 /sbus@1,f8000000/esp@1,200000/sd@3,0:a<br />
</b></p>
<p style="margin-left: 33"><b>ok&gt;</b> <b>boot bootdisk2</p>
<p>6.<a name="4.) Creating a RAID 5 volume :">4 <u>Creating a RAID 5 volume :</u></a><br />
</b></p>
<p><font COLOR="#000000">The system must contain at least three state<br />
database replicas before you can create RAID5 metadevices.<br />
</font></p>
<p><font COLOR="#000000">A RAID5 metadevice can only handle a single<br />
slice failure.A RAID5 metadevice can be grown by concatenating additional slices<br />
to the metadevice. The new slices do not store parity information, however they<br />
are parity protected. The resulting RAID5 metadevice continues to handle a<br />
single slice failure. </font>Create a RAID5 metadevice from a slice that<br />
contains an existing file system.will erase the data during the RAID5<br />
initialization process .The interlace value is key to RAID5 performance. It is<br />
configurable at the time the metadevice is created; thereafter, the value cannot<br />
be modified. The default interlace value is 16 Kbytes which is reasonable for<br />
most of the applications.</p>
<p>&nbsp;</p>
<p><a name="6.4.1.) To setup raid5 on three slices of different disks ."><b><br />
6.4.1.) <u>To setup raid5 on three slices of different disks .</u> </b> </a></p>
<dl>
<dd>
<p style="margin-left: 33"><b><br />
  # metainit d45 -r c2t3d0s2 c3t0d0s2 c4t0d0s2</b></dd>
<dd>
<p style="margin-left: 33">d45: RAID is setup</dd>
</dl>
<p>&nbsp;<br />
<b></p>
<p>6.<a name="5.) Creating a Trans Meta Device :">5.) <u><br />
Creating a Trans Meta Device :</u></a><br />
</b></p>
<p>Trans meta devices enables ufs logging . There is one logging device and a<br />
master device and all file system changes are written into logging device and<br />
posted on to master device . This greatly reduces the fsck time for very large<br />
file systems as fsck has to check only the logging device which is usually of 64<br />
M. maximum size.Logging device preferably should be mirrored and located on a different drive<br />
and controller than the master device .</p>
<p>Ufs logging can not be done for root partition.<br />
<b></p>
<p><a name="6.5.1) Trans Metadevice for a File System That Can Be Unmounted"><br />
6.5.1)</a></b><a name="6.5.1) Trans Metadevice for a File System That Can Be Unmounted"> <b>Trans Metadevice for a File System That Can Be Unmounted</b></a></p>
<blockquote>
<blockquote>
<p>· <b>/home2<br />
  </b>
</p></blockquote>
</blockquote>
<p><b></p>
<p style="margin-left: 33">1. </b><u>Setup metadevice<br />
</u></p>
<p style="margin-left: 33"># <b>umount /home2<br />
</b></p>
<p style="margin-left: 33"># <b>metainit d63 -t c0t2d0s2 c2t2d0s1<br />
</b></p>
<p style="margin-left: 33">d63: Trans is setup</p>
<p style="margin-left: 33">Logging becomes effective for the file system when it is remounted<br />
<b></p>
<p style="margin-left: 33">2. </b><u>Change vfstab entry &amp; reboot<br />
</u></p>
<dl>
<dd>
<p style="margin-left: 33">from<b></dd>
<p></b></p>
<dd>
<p style="margin-left: 33">/dev/md/dsk/d2 /dev/md/rdsk/d2 /home2 ufs 2 yes -</dd>
<dd>
<p style="margin-left: 33">to</dd>
<p><b></p>
<dd>
<p style="margin-left: 33">/dev/md/dsk/d63 /dev/md/rdsk/d63 /home2 ufs 2 yes -</dd>
<p></b></p>
<dd>
<p style="margin-left: 33"># <b>mount /home2</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">Next reboot displays the following message for logging device</dd>
<dd>
<p style="margin-left: 33"># <b>reboot</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">&#8230;</dd>
<dd>
<p style="margin-left: 33">/dev/md/rdsk/d63: is logging</dd>
</dl>
<p><b></p>
<p>6.5.2<a name="B.) Trans Metadevice for a File System That Cannot Be Unmounted"><br />
)</a></b><a name="B.) Trans Metadevice for a File System That Cannot Be Unmounted"> <b>Trans Metadevice for a File System That Cannot Be Unmounted</b></a></p>
<blockquote>
<blockquote>
<p>· <b>/usr
  </p></blockquote>
</blockquote>
<p style="margin-left: 33">1</b>.) <u>Setup metadevice<br />
</u></p>
<dl>
<dd>
<p style="margin-left: 33"># <b>metainit -f d20 -t c0t3d0s6 c1t2d0s1</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d20: Trans is setup</dd>
</dl>
<p><b></p>
<p style="margin-left: 33">2.) </b><u>Change vfstab entry &amp; reboot:<br />
</u></p>
<dl>
<dd>
<p style="margin-left: 33"><b>from</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33"><b>/dev/dsk/c0t3d0s6&nbsp;&nbsp;&nbsp;&nbsp; /dev/rdsk/c0t3d0s6&nbsp;&nbsp; /usr&nbsp;&nbsp; ufs&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; no&nbsp;&nbsp;&nbsp;&nbsp; -</b></dd>
<dd>
<p style="margin-left: 33"><b>to</b></dd>
<dd><b><br />
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /dev/md/dsk/d20&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /dev/md/rdsk/d20&nbsp;&nbsp;&nbsp;&nbsp; /usr&nbsp;&nbsp;&nbsp; ufs&nbsp;&nbsp;&nbsp;&nbsp; 1&nbsp;&nbsp;&nbsp;&nbsp; no&nbsp;&nbsp;&nbsp;&nbsp; -</b></dd>
<p>  <b>
</dl>
<p></b></p>
<p style="margin-left: 33">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # <b>reboot</p>
<p><a name="6.5.3 ) TransMeta device using Mirrors">6.5.3 ) TransMeta device using Mirrors</a></p>
<p style="margin-left: 33">1</b>.) <u>Setup metadevice<br />
</u><b></p>
<dl>
<dd>
<p style="margin-left: 33">#umount /home2</dd>
<dd>
<p style="margin-left: 33">#metainit&nbsp;&nbsp;&nbsp;&nbsp; d64&nbsp;&nbsp;&nbsp;&nbsp; -t&nbsp;&nbsp;&nbsp;&nbsp; d30&nbsp;&nbsp;&nbsp;&nbsp; d12</dd>
<p></b></p>
<dd>
<p style="margin-left: 33">d64 trans is setup</dd>
</dl>
<p><b></p>
<p style="margin-left: 33">2.) </b><u>Change vfstab entry &amp; reboot:<br />
</u><b></p>
<dl>
<dd>
<p style="margin-left: 33">from</dd>
<p></b></p>
<dd>
<p style="margin-left: 33"><b>/dev/md/dsk/d30 /dev/md/rdsk/d30 /home2 ufs 2 yes</b></dd>
<p><i></p>
<dd>
<p style="margin-left: 33">to</dd>
<p></i><b></p>
<dd>
<p style="margin-left: 33">/dev/md/dsk/d64 /dev/md/rdsk/d64 /home2 ufs 2 yes</dd>
</dl>
<p><a name="6.) HotSpare Pool">6.6 ) <u>HotSpare Pool</u></a><br />
</b><font COLOR="#000000"><br />
A hot spare pool is a collection of slices reserved by DiskSuite to be<br />
automatically substituted in case of a slice failure in either a submirror or<br />
RAID5 metadevice . A hot spare cannot be a metadevice and it can be associated<br />
with multiple submirrors or RAID5 metadevices. However, a submirror or RAID5<br />
metadevice can only be asociated with one hot spare pool. .Replacement is based on a first fit for the failed slice and they need to be<br />
replaced with repaired or new slices. Hot spare pools may be allocated,<br />
deallocated, or reassigned at any time unless a slice in the hot spare pool is<br />
being used to replace damaged slice of its associated metadevice.</font>
<p><b><br />
  <a name="6.6.1) Associating a Hot Spare Pool with Submirrors">6.6.1) Associating a Hot Spare Pool with Submirrors<br />
</a><br />
</b></p>
<dl>
<dd>
<p style="margin-left: 33"># <b>metaparam -h&nbsp;&nbsp;&nbsp;&nbsp; hsp100&nbsp;&nbsp;&nbsp;&nbsp;<br />
d10</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33"># <b>metaparam -h&nbsp;&nbsp;&nbsp;&nbsp; hsp100&nbsp;&nbsp;&nbsp;&nbsp;<br />
d11</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33"># <b>metastat d0</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">d0: Mirror</dd>
<dd>
<p style="margin-left: 33">Submirror 0: d10</dd>
<dd>
<p style="margin-left: 33">State: Okay</dd>
<dd>
<p style="margin-left: 33">Submirror 1: d11</dd>
<dd>
<p style="margin-left: 33">State: Okay</dd>
<dd>
<p style="margin-left: 33">&#8230;</dd>
<dd>
<p style="margin-left: 33">d10: Submirror of d0</dd>
<dd>
<p style="margin-left: 33">State: Okay</dd>
<dd>
<p style="margin-left: 33">Hot spare pool: hsp100</dd>
<dd>
<p style="margin-left: 33">&#8230;</dd>
<dd>
<p style="margin-left: 33">d11: Submirror of d0</dd>
<dd>
<p style="margin-left: 33">State: Okay</dd>
<dd>
<p style="margin-left: 33">Hot spare pool: hsp100</dd>
</dl>
<blockquote>
<blockquote><p>
    <b>
    </p></blockquote>
</blockquote>
<p>
  <a name="6.6.2 ) Associating or changing a Hot Spare Pool with a RAID5 Metadevice">6.6.2 ) Associating or changing a Hot Spare Pool with a RAID5 Metadevice</a></p>
<dl>
<dd>
<p style="margin-left: 33">#metaparam&nbsp;&nbsp;&nbsp;&nbsp; -h&nbsp;&nbsp;&nbsp;<br />
    hsp001&nbsp;&nbsp;&nbsp;&nbsp; d10</b></dd>
<dd>
<p style="margin-left: 33"><b>#metastat&nbsp;&nbsp;&nbsp;&nbsp; d10</b></dd>
<dd>
<p style="margin-left: 33">d10:RAID</dd>
<dd>
<p style="margin-left: 33">State: Okay</dd>
<dd>
<p style="margin-left: 33">Hot spare Pool: hsp001</dd>
</dl>
<p>
    <b><br />
    <a name="6.6.3 ) Adding a Hot Spare Slice to All Hot Spare Pools">6.6.3 ) Adding a Hot Spare Slice to All Hot Spare Pools<br />
    </a><br />
</b></p>
<dl>
<dd>
<p style="margin-left: 33"># <b>metahs&nbsp;&nbsp; -a&nbsp;&nbsp;&nbsp; -all&nbsp;&nbsp;&nbsp;<br />
    /dev/dsk/c3t0d0s2</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">hsp001: Hotspare is added</dd>
<dd>
<p style="margin-left: 33">hsp002: Hotspare is added</dd>
<dd>
<p style="margin-left: 33">hsp003<b>:</b> Hotspare is added</dd>
<dd>&nbsp;</dd>
</dl>
<p><b></p>
<p>6.<a name="7.) Disksets">7 ) <u>Disksets</u></a></p>
<p>Few important points about disksets :<br />
</b></p>
<ul>
<li>
<p> A diskset is a set of shared <i>disk drives</i> containing<br />
        DiskSuite objects that can be shared exclusively (but not concurrently)<br />
        by one or two hosts. Disksets are used in high availability failover<br />
        situations where the ownership of the failed machine’s diskset is<br />
        transferred to other machine . Disksets are connected to two hosts for<br />
        sharing and must have&nbsp; same attributes , controller/target/drive ,<br />
        in both machines except for the ownership .</li>
</ul>
<ul>
<li>
DiskSuite must be installed on each host that will be connected to the<br />
        diskset.There is one metadevice state database per shared diskset and one on<br />
        the &quot;local&quot; diskset. Each host must have its local metadevice<br />
        state database set up before you can create disksets.</p>
<p>    Each host in a diskset must have a local diskset besides a shared diskset.A diskset can be created seprately on one host&nbsp; &amp;&nbsp; then<br />
        added to&nbsp; the second host later.</li>
</ul>
<ul>
<li>
Drive should not be in use by a&nbsp; file system, database, or any other<br />
application for adding in diskset .
        </li>
</ul>
<div align="left">
<ul>
<li>When a drive is added to disksuite it&nbsp; is&nbsp;<br />
        repartitioned&nbsp; so that the metadevice state database replica for<br />
        the diskset can be placed on the drive. Drives are repartitioned when<br />
        they are added to a diskset only if Slice 7 is not set up correctly. A<br />
        small portion of each drive is reserved in Slice 7 for use by DiskSuite.<br />
        The remainder of the space on each drive is placed into Slice 0.. After<br />
        adding a drive to a diskset, it may be repartitioned as necessary,<br />
        provided&nbsp; that no changes are made to Slice 7 . If Slice 7 starts<br />
        at cylinder 0, and is large enough to contain a state database replica,<br />
        the disk is not repartitioned.
        </li>
</ul></div>
<div align="left">
<ul>
<li>When drives are added to a diskset, DiskSuite re-balances the state<br />
        database replicas across the remaining drives. Later, if necessary, you<br />
        can change the replica layout with the metadb(1M)<br />
        command.
        </li>
</ul></div>
<div align="left">
<ul>
<li>To create a diskset, root<br />
        must be a member of Group 14, or the ./rhosts<br />
        file must contain an entry for each host.
        </li>
</ul></div>
<p><b></p>
<p>&nbsp;</p>
<p><a name="6.7.1 ) Creating Two Disksets">6.7.1 ) <u>Creating Two Disksets</u></a><br />
</b></p>
<dl>
<dd>
<p style="margin-left: 33">host1# <b>metaset&nbsp;&nbsp; -s&nbsp;&nbsp;&nbsp; diskset0&nbsp;&nbsp;<br />
    -a&nbsp;&nbsp; -h&nbsp;&nbsp;&nbsp; host1&nbsp;&nbsp;&nbsp; host2</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">host1# <b>metaset&nbsp;&nbsp; -s&nbsp;&nbsp;&nbsp;<br />
    diskset1&nbsp; -a&nbsp;&nbsp;&nbsp; -h&nbsp;&nbsp;&nbsp; host1&nbsp;&nbsp;&nbsp;<br />
    host2 </b>
  </dd>
<dd>
<p style="margin-left: 33">host1# <b>metaset</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">Set name = diskset0, Set number = 1</dd>
<dd>
<p style="margin-left: 33">Host&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Owner</dd>
<dd>
<p style="margin-left: 33">host1</dd>
<dd>
<p style="margin-left: 33">host2</dd>
<dd>
<p style="margin-left: 33">Set name = diskset1, Set number = 2</dd>
<dd>
<p style="margin-left: 33">Host&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Owner</dd>
<dd>
<p style="margin-left: 33">host1</dd>
<dd>
<p style="margin-left: 33">host2</dd>
</dl>
<p><b></p>
<p><a name="6.7.2 ) Adding Drives to a Diskset">6.7.2 ) <u>Adding Drives to a Diskset</u></a><br />
</b></p>
<dl>
<dd>
<p style="margin-left: 33">host1# <b>metaset&nbsp;&nbsp;&nbsp;&nbsp; -s&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
diskset0&nbsp;&nbsp;&nbsp;&nbsp; -a&nbsp;&nbsp;&nbsp; c1t2d0&nbsp; c1t3d0&nbsp; c2t2d0&nbsp;&nbsp;<br />
c2t3d0&nbsp;&nbsp; c2t4d0&nbsp;&nbsp; c2t5d0 </b>
  </dd>
<dd>
<p style="margin-left: 33">&nbsp;</dd>
<dd>
<p style="margin-left: 33">host1# <b>metaset </b>
  </dd>
<dd>
<p style="margin-left: 33">Set name = diskset0, Set number = 1</dd>
<dd>
<p style="margin-left: 33">Host&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Owner</dd>
<dd>
<p style="margin-left: 33">host1&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Yes</dd>
<dd>
<p style="margin-left: 33">host2</dd>
<dd>
<p style="margin-left: 33">&nbsp;</dd>
<dd>
<p style="margin-left: 33">Drive&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Dbase</dd>
<dd>
<p style="margin-left: 33">c1t2d0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Yes</dd>
<dd>
<p style="margin-left: 33">c1t3d0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Yes</dd>
<dd>
<p style="margin-left: 33">c2t2d0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Yes</dd>
<dd>
<p style="margin-left: 33">c2t3d0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Yes</dd>
<dd>
<p style="margin-left: 33">c2t4d0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Yes</dd>
<dd>
<p style="margin-left: 33">c2t5d0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Yes</dd>
<dd>
<p style="margin-left: 33">&nbsp;</dd>
<dd>
<p style="margin-left: 33">Set name = diskset1, Set number = 2</dd>
<dd>
<p style="margin-left: 33">Host&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Owner</dd>
<dd>
<p style="margin-left: 33">host1</dd>
<dd>
<p style="margin-left: 33">host2</dd>
</dl>
<p><b></p>
<p><a name="6.7.3 ) Creating  a Mirror in a Diskset">6.7.3 ) <u>Creating&nbsp; a Mirror in a Diskset&nbsp;</u></a><br />
</b></p>
<dl>
<dd>
<p style="margin-left: 33"># <b>metainit -s diskset0 d51&nbsp;&nbsp; 1&nbsp;&nbsp;<br />
    1&nbsp;&nbsp; /dev/dsk/c0t0d0s2</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">diskset0/d51: Concat/Stripe is setup</dd>
<dd>
<p style="margin-left: 33">&nbsp;</dd>
<dd>
<p style="margin-left: 33"># <b>metainit -s diskset0 d52&nbsp;&nbsp; 1&nbsp;&nbsp;<br />
    1&nbsp;&nbsp; /dev/dsk/c1t0d0s2</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">diskset0/d52: Concat/Stripe is setup</dd>
<dd>
<p style="margin-left: 33">&nbsp;</dd>
<dd>
<p style="margin-left: 33"># <b>metainit -s diskset0 d50&nbsp;&nbsp; -m&nbsp;&nbsp;<br />
    d51</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">diskset0/d50: mirror is setup</dd>
<dd>
<p style="margin-left: 33">&nbsp;</dd>
<dd>
<p style="margin-left: 33"># <b>metattach -s diskset0&nbsp;&nbsp; d50&nbsp;&nbsp;&nbsp;&nbsp;<br />
    d52</dd>
<p>  </b></p>
<dd>
<p style="margin-left: 33">diskset0/d50: Submirror d52 is attached</dd>
</dl>
<p><b></p>
<p>7.0 <a name="Trouble Shooting">Trouble Shooting </a><br />
</b></p>
<p><b>7.<a name="1.) Recovering from  Stale State Database Replicas">1 ) <u>Recovering from&nbsp; Stale State Database Replicas</u></a></b></p>
<dl>
<dd><b>Problem&nbsp;&nbsp;&nbsp; : </b>State database<br />
  corrupted or unavailable .</dd>
<dd><b>Causes&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : </b>Disk failure , Disk I/O<br />
  error.</dd>
<dd><b>Symptoms :</b> Error message at the booting time if databases are &lt;=<br />
  50% of total database. System comes to Single user mode.</dd>
</dl>
<p style="margin-left: 33">ok <b><kbd>boot</kbd></b><br />
&#8230;<br />
Hostname: host1<br />
metainit: Host1: stale databases<br />
Insufficient metadevice database replicas located.<br />
Use metadb to delete databases which are broken.<br />
Ignore any &quot;Read-only file system&quot; error messages.<br />
Reboot the system when finished to reload the metadevice<br />
database.<br />
After reboot, repair any broken database replicas which were<br />
deleted.<br />
Type Ctrl-d to proceed with normal startup,<br />
(or give root password for system maintenance): &lt;<var>root-password</var>&gt;<br />
Entering System Maintenance Mode.</p>
<p>1.) Use the <tt>metadb</tt> command to look at the metadevice state database<br />
and see which state database replicas are not available. Marked by unknown and M<br />
flag.</p>
<p style="margin-left: 33"># <b><kbd>/usr/opt/SUNWmd/metadb -i</kbd></b><br />
&nbsp;&nbsp; flags&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; first blk&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
block count<br />
&nbsp;&nbsp;&nbsp; a m&nbsp; p&nbsp; lu&nbsp;&nbsp;&nbsp; 16&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
1034&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
/dev/dsk/c0t3d0s3<br />
&nbsp;&nbsp;&nbsp; a&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; p&nbsp; l&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
1050&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
1034&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
/dev/dsk/c0t3d0s3<br />
&nbsp;&nbsp;&nbsp; M&nbsp;&nbsp;&nbsp; p&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
unknown&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unknown&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
/dev/dsk/c1t2d0s3<br />
&nbsp;&nbsp;&nbsp; M&nbsp;&nbsp;&nbsp; p&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
unknown&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; unknown&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </p>
<dl>
<dd>2.) Delete the state database replicas on the bad disk using the <kbd>-d</kbd><br />
  option to the <tt>metadb(1M)</tt> command.</dd>
<dd>
<p style="margin-left: 33">At this point, the root (<kbd>/</kbd>) file system<br />
  is read-only. You can ignore the <kbd>mddb.cf</kbd> error messages:</dd>
<dd>
<p style="margin-left: 33">&nbsp;</dd>
<dd>
<p style="margin-left: 33"># <b><kbd>/usr/opt/SUNWmd/metadb&nbsp; -d&nbsp; -f&nbsp;<br />
  c1t2d0s3</kbd></b><br />
  metadb: demo: /etc/opt/SUNWmd/mddb.cf.new: Read-only file system .</dd>
<dd>
<p style="margin-left: 33">&nbsp;</dd>
<dd>
<p style="margin-left: 22"><u>Verify deletion</u> </dd>
<dd>
<p style="margin-left: 33"># <b><kbd>/usr/opt/SUNWmd/metadb&nbsp; -i</kbd></b><br />
&nbsp;&nbsp;&nbsp; flags&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; first blk&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
  block count<br />
&nbsp;&nbsp;&nbsp;&nbsp; a m&nbsp; p&nbsp; lu&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
  16&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
  1034&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; /dev/dsk/c0t3d0s3<br />
&nbsp;&nbsp;&nbsp;&nbsp; a&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; p&nbsp; l&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
  1050&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1034&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
    /dev/dsk/c0t3d0s3</dd>
</dl>
<p>3.) Reboot.</p>
<p>4.) Use the <tt>metadb</tt> command to add back the state database replicas<br />
and to see&nbsp; that the state database replicas are correct.</p>
<p style="margin-left: 33"># <b><kbd>/usr/opt/SUNWmd/metadb -a -c 2 c1t2d0s3</kbd></b><br />
<br />
# <b><kbd>/usr/opt/SUNWmd/metadb</kbd></b><br />
<br />
&nbsp;&nbsp; flags&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; first blk&nbsp;<br />
block count<br />
&nbsp; a m&nbsp; p&nbsp; luo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
16&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
1034&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dev/dsk/c0t3d0s3<br />
&nbsp; a&nbsp;&nbsp;&nbsp; p&nbsp; luo&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
1050&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
1034&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dev/dsk/c0t3d0s3<br />
&nbsp; a&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
u&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
16&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
1034&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dev/dsk/c1t2d0s3<br />
&nbsp; a&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
u&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
1050&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
1034&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dev/dsk/c1t2d0s3</p>
<p><b>7.<a name="2.) Metadevice Errors :">2 ) <u>Metadevice Errors :</u></a></b></p>
<dl>
<dd><b>Problem&nbsp; </b>&nbsp; : Sub Mirrors out of sync&nbsp; in&nbsp;<br />
  &quot;Needs maintainence&quot; state ,</dd>
<dd><b>Causes</b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : Disk problem / failure ,<br />
  improper shutdown , communication problems between two mirrored disks .</dd>
<dd><b>symptoms  </b>: &quot;Needs maintainence&quot; errors in metastat output</dd>
</dl>
<p>  <TABLE cellPadding=0 width="100%" border=0 style="border-collapse: collapse" bordercolor="#111111" cellspacing="0"><br />
    <TR><br />
      <TD noWrap></p>
<dl>
<dd># <B><KBD>/usr/opt/SUNWmd/metastat</KBD></B><br />
        d0: Mirror<br />
&nbsp;&nbsp;&nbsp; Submirror 0: d10<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; State: Needs maintenance<br />
&nbsp;&nbsp;&nbsp; Submirror 1: d20<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; State: Okay<br />
        &#8230;<br />
        d10: Submirror of d0<br />
&nbsp;&nbsp;&nbsp; State: Needs maintenance<br />
&nbsp;&nbsp;&nbsp; Invoke: &quot;metareplace d0 /dev/dsk/c0t3d0s0 &lt;new device&gt;&quot;<br />
&nbsp;&nbsp;&nbsp; Size: 47628 blocks<br />
&nbsp;&nbsp;&nbsp; Stripe 0:<br />
        	Device&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Start Block&nbsp; Dbase State&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Hot Spare<br />
        	/dev/dsk/c0t3d0s0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; No&nbsp;&nbsp;&nbsp; Maintenance<br />
        <br />
&nbsp;<br />
        d20: Submirror of d0<br />
&nbsp;&nbsp;&nbsp; State: Okay<br />
&nbsp;&nbsp;&nbsp; Size: 47628 blocks<br />
&nbsp;&nbsp;&nbsp; Stripe 0:<br />
        	Device&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Start Block&nbsp; Dbase State&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Hot Spare<br />
        	/dev/dsk/c0t2d0s0&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 0&nbsp;&nbsp;&nbsp;&nbsp; No&nbsp;&nbsp;&nbsp; Okay&nbsp;</dd>
</dl>
<p>      </TD></TR></TABLE></p>
<p><b>Solution :</b></p>
<dl>
<dd>1.)&nbsp;&nbsp;&nbsp; If disk is all right&nbsp; -&nbsp; enable the&nbsp;<br />
  failed metadevice&nbsp; with metareplace command&nbsp; .</dd>
<dd>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If disk is failed &#8211; Replace<br />
  disk create similar partitions as in failed disk and enable new device with<br />
  metareplace command.</dd>
<dd>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # <B><KBD>/usr/opt/SUNWmd/metareplace -e d0 c0t3d0s0</KBD></B><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
Device /dev/dsk/c0t3d0s0 is enabled<br />
&nbsp;<br />
  2.)&nbsp; If disk has failed&nbsp; and you want to move the failed devices to<br />
  new disk with different id (CnTnDn) &#8211; add new disk ,</dd>
<dd>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; format to create&nbsp;&nbsp;&nbsp;&nbsp;<br />
  a similar partition scheme as in failed disk and use metarepalce command</dd>
<dd>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # <B><KBD>/usr/opt/SUNWmd/metareplace&nbsp; d0 c0t3d0s0&nbsp;&nbsp;<br />
  &lt;new device name&gt; </KBD></B></dd>
</dl>
<p>The metareplace command above can also be used for concate or strip&nbsp;<br />
replacement in a&nbsp; volme but that would involve restoring the backup if it<br />
is not mirrored.</p>
]]></content:encoded>
			<wfw:commentRss>http://adminschoice.com/solstice-disksuite-guide/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
