<?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"
	>

<channel>
	<title>realsysadmin.com</title>
	<atom:link href="http://realsysadmin.com/www/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://realsysadmin.com/www</link>
	<description>Tall Tales for System Admins</description>
	<pubDate>Thu, 03 May 2012 16:43:21 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.6.3</generator>
	<language>en</language>
			<item>
		<title>Navigating Solaris 11</title>
		<link>http://realsysadmin.com/www/?p=50</link>
		<comments>http://realsysadmin.com/www/?p=50#comments</comments>
		<pubDate>Thu, 03 May 2012 16:43:21 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Solaris 10]]></category>

		<category><![CDATA[Primer]]></category>

		<category><![CDATA[Solaris 11]]></category>

		<category><![CDATA[Systems Administration]]></category>

		<guid isPermaLink="false">http://realsysadmin.com/www/?p=50</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="481" height="402">
<param name="allowScriptAccess" value="always" /><param name="allowfullscreen" value="true" />
<param name="movie" value="http://www.authorstream.com/player.swf?p=1408060_634716419752788750"/>
<param name="wmode" value="transparent" />
<embed src="http://www.authorstream.com/player.swf?p=1408060_634716419752788750" quality="high" type="application/x-shockwave-flash" allowScriptAccess="always" allowFullScreen="true" wmode="transparent" width="481" height="402"></embed>
</object>
<br/><font size="2">Uploaded on authorSTREAM by <a href="http://www.authorstream.com/User-Presentations/dlahiri/" target="_blank" title="More presentations by dlahiri on authorSTREAM">dlahiri</a></font>
]]></content:encoded>
			<wfw:commentRss>http://realsysadmin.com/www/?feed=rss2&amp;p=50</wfw:commentRss>
		</item>
		<item>
		<title>Solaris 11, Solaris Cluster 4, T4 and HA-LDOMs</title>
		<link>http://realsysadmin.com/www/?p=48</link>
		<comments>http://realsysadmin.com/www/?p=48#comments</comments>
		<pubDate>Wed, 15 Feb 2012 17:11:07 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Solaris 10]]></category>

		<category><![CDATA[HA LDOMs]]></category>

		<category><![CDATA[Solaris 11]]></category>

		<category><![CDATA[Solaris Cluster 4]]></category>

		<category><![CDATA[T4]]></category>

		<guid isPermaLink="false">http://realsysadmin.com/www/?p=48</guid>
		<description><![CDATA[
Clustered LDOM Configuration generic

More PowerPoint presentations from Dwai Lahiri

]]></description>
			<content:encoded><![CDATA[<div>
<h3 style="padding: 0px; margin: 3px;"><a href="http://www.authorstream.com/Presentation/dlahiri-1335333-clustered-ldom-configuration-generic/" target="_blank" style="font:normal 18px,arial;">Clustered LDOM Configuration generic</a></h3>
<p><object width="425" height="354" id="player"><param name="movie" value="http://www.authorstream.com/player.swf?fb=0&#038;pl=as&#038;nb=1&#038;ap=0&#038;c=#dfdfdf&#038;p=1335333_634649006265967500" /><param name="allowfullscreen" value="true" /><param name="allowScriptAccess" value="always"/><embed src="http://www.authorstream.com/player.swf?fb=0&#038;pl=as&#038;nb=1&#038;ap=0&#038;c=#dfdfdf&#038;p=1335333_634649006265967500" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="354"></embed></object>
<div  style="font-family: arial; font-style: normal; font-variant: normal; font-weight: normal;font-size: 11px; line-height: normal; font-size-adjust: none; font-stretch: normal;">More <a href="http://www.authorstream.com/" target="_blank">PowerPoint presentations</a> from <a href="http://www.authorstream.com/dlahiri/" target="_blank">Dwai Lahiri</a></div>
</div>
]]></content:encoded>
			<wfw:commentRss>http://realsysadmin.com/www/?feed=rss2&amp;p=48</wfw:commentRss>
		</item>
		<item>
		<title>Password Vault in Perl</title>
		<link>http://realsysadmin.com/www/?p=32</link>
		<comments>http://realsysadmin.com/www/?p=32#comments</comments>
		<pubDate>Thu, 10 Sep 2009 15:46:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[administration]]></category>

		<category><![CDATA[password]]></category>

		<category><![CDATA[security]]></category>

		<category><![CDATA[systems]]></category>

		<category><![CDATA[vault]]></category>

		<guid isPermaLink="false">http://realsysadmin.com/www/?p=32</guid>
		<description><![CDATA[The password vault tool uses the "Crypt::Simple" perl module (don't go by the name, it's got a bunch of stuff happening under the hood) to encrypt anything that is typed into the interface and saves it on a file-system acl'ed back end store.

Only a select group (the System Admins) have ability to access this backend store (as a result the Vault application). The appliction has been written to search, modify, add and delete entries and each action is audited in the backend repository. Using a simply Curses based menu, the app is self-intuitive and requires no training.]]></description>
			<content:encoded><![CDATA[<h1 style="border-bottom: 1px solid #aaaaaa; margin: 0px 0px 0.6em; color: black; background-image: none; font-weight: normal; padding-top: 0.5em; padding-bottom: 0.17em; font-size: 24px;"><span class="mw-headline">Password Vault</span></h1>
<blockquote><hr style="border-width: 0px; margin: 0.2em 0px; height: 1px; color: #aaaaaa; background-color: #aaaaaa;" />
<p style="margin: 0.4em 0px 0.5em; line-height: 1.5em;">
<p><a style="text-decoration: none; color: #002bb8; background-image: none;" name="The_uxpsh_application"></a></p></blockquote>
<h2 style="border-bottom: 1px solid #aaaaaa; margin: 0px 0px 0.6em; color: black; background-image: none; font-weight: normal; padding-top: 0.5em; padding-bottom: 0.17em; font-size: 19px;"><span class="mw-headline">The uxpsh application</span></h2>
<blockquote>
<p style="margin: 0.4em 0px 0.5em; line-height: 1.5em;">
</blockquote>
<p style="margin: 0.4em 0px 0.5em; line-height: 1.5em;">
<pre style="border: 1px dashed #2f6fab; padding: 1em; font-family: monospace; line-height: 1.1em; color: black; background-color: #f9f9f9;">         &lt;site A&gt;                                                         &lt;site B&gt;
        _______________                                                     ________________
       |   bastion1  |                                                     | bastion 2      |
       |               |                                                   |                |
       |               |                                                   |                |
       |               |                                                   |                |
       |_______________|                                                   |________________|
                    \ _____                                                        _____/
                     |/var |                                                      |/var |
                     |_____|                                                      |_____|
                           \ _______                                      _______ /
                            |/uxadm |=================================&gt;  |/uxadm |
                            |_______|          replicated                |_______|
                                               via ssh tunneled
                                               rsync every day</pre>
<p style="margin: 0.4em 0px 0.5em; line-height: 1.5em;">
<p style="margin: 0.4em 0px 0.5em; line-height: 1.5em;">The password vault tool uses the &#8220;Crypt::Simple&#8221; perl module (don&#8217;t go by the name, it&#8217;s got a bunch of stuff happening under the hood) to encrypt anything that is typed into the interface and saves it on a file-system acl&#8217;ed back end store.</p>
<p style="margin: 0.4em 0px 0.5em; line-height: 1.5em;">Only a select group (the System Admins) have ability to access this backend store (as a result the Vault application).<span class="Apple-converted-space"> </span>The appliction has been written to search, modify, add and delete entries and each action is audited in the backend repository.<span class="Apple-converted-space"> </span>Using a simply Curses based menu, the app is self-intuitive and requires no training.</p>
<p style="margin: 0.4em 0px 0.5em; line-height: 1.5em;">
<p><a style="text-decoration: none; color: #002bb8; background-image: none;" name="About_Crypt::Simple"></a></p>
<h2 style="border-bottom: 1px solid #aaaaaa; margin: 0px 0px 0.6em; color: black; background-image: none; font-weight: normal; padding-top: 0.5em; padding-bottom: 0.17em; font-size: 19px;"><span class="mw-headline">About Crypt::Simple</span></h2>
<p style="margin: 0.4em 0px 0.5em; line-height: 1.5em;">
<ul style="margin: 0.3em 0px 0px 1.5em; padding: 0px; line-height: 1.5em; list-style-type: square; list-style-image: url(http://sawiki.uscc.com/mediawiki/skins/monobook/bullet.gif);">
<li style="margin-bottom: 0.1em;">The name of the program is used as the key to create an MD5 hash of the string that is being encrypted.</li>
<li style="margin-bottom: 0.1em;">FreezeThaw is used to squish all the data into a concise textual representation</li>
<li style="margin-bottom: 0.1em;">Compress::Zlib is used to compress this string</li>
<li style="margin-bottom: 0.1em;">Crypt::Blowfish in a home-brew CBC mode is used to actually encrypt this string</li>
<li style="margin-bottom: 0.1em;">Then the string is processed via Mime::Base64 to actually produce the text that is being displayed.</li>
</ul>
<p style="margin: 0.4em 0px 0.5em; line-height: 1.5em;">For instance,</p>
<p style="margin: 0.4em 0px 0.5em; line-height: 1.5em;">
<pre style="border: 1px dashed #2f6fab; padding: 1em; font-family: monospace; line-height: 1.1em; color: black; background-color: #f9f9f9;">password123 becomes ==&gt; 4vXAfgpKoyEZN67CpgmATZgV4nXirSvhzCWwQSY54GF2Wol0noNCqIujvUXCRVWj</pre>
<p>Get the application here:</p>
<p><a href="http://realsysadmin.com/www/wp-content/uploads/2009/09/uxpsh">uxpsh</a></p>
<p>The Code is here:</p>
<blockquote><p>#!/opt/perl/bin/perl</p>
<p>#&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
# uxpsh &#8212; UNIX password shell<br />
# Author &#8212; Dwai Lahiri<br />
# Created &#8212; 4/13/2004<br />
# Credits to : Steven L. Kunz&#8217;s perlmenu demo program(s)<br />
# Note: Even though advisory exclusive write locks are in place,<br />
# have to make sure file doesn&#8217;t get clobbered by simultaneous writes<br />
# Modified &#8212; 4/27/2004 &#8212; DL<br />
# Cleaned up some old declarations, variables, etc - 6/25/04 - DL<br />
# Minor fixes to &#8220;cleanup&#8221; routine - 6/25/04 - DL<br />
# SCCS Delta 1.3<br />
# $Id: uxpsh,v 1.1 2006/01/16 18:16:02 dlahiri Exp $<br />
#&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;</p>
<p>#use strict;                    #For now, don&#8217;t use strict subs<br />
BEGIN { $Curses::OldCurses = 1; }<br />
use lib &#8220;/opt/perl/lib/site_perl/5.8.8/sun4-solaris&#8221;;<br />
use Curses;      #PerlMenu needs &#8220;Curses&#8221;<br />
use perlmenu;    #Main menu package</p>
<p>use Crypt::Simple;<br />
use File::Copy qw/mv cp/;<br />
require &#8220;menuutil.pl&#8221;;    #For &#8220;pause&#8221; and &#8220;print_nl&#8221; routines</p>
<p>my $pwfl = &#8220;/var/uxadm/usccpux.txt&#8221;;</p>
<p>$SIG{&#8217;INT&#8217;} = &#8216;cleanup&#8217;;    #Set Signal Handler<br />
$| = 1;                     #Flush after every write to stdout</p>
<p>my $window = &amp;initscr();</p>
<p>&amp;menu_curses_application($window);<br />
&amp;menu_quit_routine(&#8221;endwin&#8221;);</p>
<p>#Default prefs active at start<br />
my $numbered_flag = 1;            #Numbered menus<br />
my $num_pref      = &#8220;numbered&#8221;;<br />
my $gopher_pref   = &#8220;default&#8221;;    #Non-gopherlike arrows/scrolling<br />
my $gopher_flag   = 0;<br />
my $mult_pref     = &#8220;single&#8221;;     #Single column menus<br />
my $mult_flag     = 0;<br />
my $arrow_pref    = &#8220;arrow&#8221;;      #Arrow selection indicator menus<br />
my $arrow_flag    = 1;</p>
<p>my $menu_default_top = 0;              # Storage for mainline top item number.<br />
my $menu_default_row = 0;              # Storage for mainline arrow location.<br />
my $menu_default_col = 0;              # Storage for mainline arrow location.<br />
my $row              = my $col = 0;    # Storage for row/col for menuutil.pl<br />
my $title_cnt = 0;    # To trigger different subtitles/bottom titles<br />
my $default;<br />
my $version = &#8220;v0.5&#8243;;</p>
<p>@input_data   = ();<br />
@display_data = ();<br />
@protect      = ();<br />
$bell         = &#8220;\007&#8243;;<br />
$default      = &#8220;&#8221;;<br />
my $null = &#8220;/dev/null&#8221;;<br />
my $src;<br />
my $dest;<br />
my $username = $ENV{LOGNAME};</p>
<p>while (1) {<br />
&amp;menu_init(<br />
$numbered_flag, &#8220;UNIX Password Shell Utility $version&#8221;,<br />
0, &#8220;&#8221;, &#8220;&#8211; WARNING $username! If you don&#8217;t have permission to use this application, \n exit immediately!\n Abusers will be prosecuted to the maximum extent of the Law.\n All actions are logged and monitored. &#8220;,<br />
&#8220;main_menu_help&#8221;<br />
);</p>
<p>&amp;menu_paint_file( &#8220;/usr/bin/unix_text&#8221;, 0 );<br />
&amp;menu_item( &#8220;Exit this shell&#8221;,                &#8220;exit&#8221; );<br />
&amp;menu_item( &#8220;Search records for a hostname&#8221;, &#8220;host_pw&#8221; );<br />
&amp;menu_item( &#8220;host modify&#8221;,                    &#8220;mod_host&#8221; );<br />
&amp;menu_item( &#8220;host add&#8221;,                       &#8220;add_host&#8221; );<br />
&amp;menu_item( &#8220;host delete&#8221;,                    &#8220;del_host&#8221; );<br />
my $sel =<br />
&amp;menu_display( &#8220;&#8221;, $menu_default_row, $menu_default_top,<br />
$menu_default_col );<br />
if ( $sel eq &#8220;exit&#8221; ) { last; }</p>
<p>if ( $sel eq &#8220;%EMPTY%&#8221; ) {<br />
die &#8220;Not enough screen lines to display passwd shell menu\n&#8221;;<br />
}<br />
if ( $sel ne &#8220;%UP%&#8221; ) {</p>
<p>#Note that this assumes the &#8220;action_text&#8221; is a subroutine name<br />
&amp;$sel();<br />
}<br />
if ( $sel eq &#8220;host_pw&#8221; )  { &amp;host_pw(); }<br />
if ( $sel eq &#8220;mod_host&#8221; ) { &amp;mod_host(); }<br />
if ( $sel eq &#8220;add_host&#8221; ) { &amp;add_host(); }<br />
if ( $sel eq &#8220;del_host&#8221; ) { &amp;del_host(); }<br />
}<br />
endwin;<br />
exit;</p>
<p>sub main_menu_help {<br />
my ( $item_text, $item_tag ) = @_;</p>
<p>&amp;top_title(&#8221;Password shell &#8212; Help Screen for Specific Menu Items&#8221;);<br />
&amp;print_nl( &#8220;Selection \&#8221;$item_text\&#8221;", 2 );<br />
if ( $item_tag eq &#8220;exit&#8221; ) {<br />
&amp;print_nl( &#8220;Selecting this item will immediately exit this program.&#8221;,<br />
1 );<br />
}<br />
elsif ( $item_tag eq &#8220;host_pw&#8221; ) {<br />
&amp;print_nl( &#8220;Search password for given host string &#8212; returns value only if valid hostname in the repository&#8221;,<br />
1 );<br />
}<br />
elsif ( $item_tag eq &#8220;mod_host&#8221; ) {<br />
print_nl( &#8220;Modify an existing password entry.&#8221;, 1 );<br />
}<br />
elsif ( $item_tag eq &#8220;add_host&#8221; ) {<br />
print_nl( &#8220;Add a password entry to the encrypted repository.&#8221;, 1 );<br />
}<br />
elsif ( $item_tag eq &#8220;del_host&#8221; ) {<br />
print_nl( &#8220;Delete a password entry from the ecrypted repository.&#8221;, 1 );<br />
}<br />
pause(&#8221;(Press any key to exit help)&#8221;);<br />
}</p>
<p>sub host_pw {<br />
my $sel;<br />
while (1) {<br />
my $prow = $row;<br />
my $pcol = $col + 2;</p>
<p>#Init a numbered menu with a title<br />
&amp;menu_init( $numbered_flag,<br />
&#8220;Search database for host string entered here&#8221; );</p>
<p>#Add item to return to main menu<br />
&amp;menu_item( &#8220;Exit&#8221;, &#8220;exit&#8221; );</p>
<p>&amp;menu_item( &#8220;Host string search&#8221;, &#8220;get_host_str&#8221; );</p>
<p>$sel =<br />
menu_display( &#8220;&#8221;, $menu_default_row, $menu_default_top,<br />
$menu_default_col );<br />
if ( ( $sel eq &#8220;%UP%&#8221; ) || ( $sel eq &#8220;exit&#8221; ) ) { return; }<br />
if ( $sel eq &#8220;get_host_str&#8221; ) {<br />
print_nl( &#8220;    Enter the hostname you&#8217;re looking for&#8221;, 1 );<br />
&amp;print_nl( &#8220;  Supply a null value to exit.&#8221;, 2 );<br />
$prow = $row;<br />
$pcol = $col + 2;<br />
my $hostname = &amp;menu_getstr( $prow, $pcol, &#8220;Enter hostname: &#8220;,<br />
0, $default, 20, 0 );<br />
last if ( $hostname eq &#8220;&#8221; );<br />
decreep($hostname);<br />
}<br />
&amp;clear_screen();<br />
}<br />
}</p>
<p>sub mod_host {<br />
my $sel;<br />
while (1) {<br />
my $prow = $row;<br />
my $pcol = $col + 2;</p>
<p>#Init a numbered menu with a title<br />
&amp;menu_init( $numbered_flag,<br />
&#8220;Modify a host/password entry in the encrypted file&#8221; );</p>
<p>#Add item to return to main menu<br />
&amp;menu_item( &#8220;Exit&#8221;, &#8220;exit&#8221; );</p>
<p>&amp;menu_item( &#8220;Modify host/passwd entry&#8221;, &#8220;mod_host_str&#8221; );</p>
<p>$sel =<br />
menu_display( &#8220;&#8221;, $menu_default_row, $menu_default_top,<br />
$menu_default_col );<br />
if ( ( $sel eq &#8220;%UP%&#8221; ) || ( $sel eq &#8220;exit&#8221; ) ) { return; }<br />
if ( $sel eq &#8220;mod_host_str&#8221; ) {<br />
print_nl( &#8220;    Enter the hostname you want to modify&#8221;, 1 );<br />
&amp;print_nl( &#8220;  Supply a null value to exit.&#8221;, 2 );<br />
$prow = $row;<br />
$pcol = $col + 2;<br />
my $hostname = &amp;menu_getstr( $prow, $pcol, &#8220;Enter hostname: &#8220;,<br />
0, $default, 20, 0 );<br />
print_nl( &#8220;    Enter the new password&#8221;, 1 );<br />
$prow = $row;<br />
$pcol = $col + 2;<br />
my $password = &amp;menu_getstr( $prow, $pcol, &#8220;Enter new password: &#8220;,<br />
0, $default, 20, 0 );<br />
last if ( $hostname eq &#8220;&#8221; );<br />
modit( $hostname, $password );<br />
}<br />
&amp;clear_screen();<br />
}<br />
}</p>
<p>sub add_host {<br />
my $sel;<br />
while (1) {<br />
my $prow = $row;<br />
my $pcol = $col + 2;</p>
<p>#Init a numbered menu with a title<br />
&amp;menu_init( $numbered_flag,<br />
&#8220;Add a host/password entry in the encrypted repository&#8221; );</p>
<p>#Add item to return to main menu<br />
&amp;menu_item( &#8220;Exit&#8221;, &#8220;exit&#8221; );</p>
<p>&amp;menu_item( &#8220;Add host/passwd entry&#8221;, &#8220;add_host_str&#8221; );</p>
<p>$sel =<br />
menu_display( &#8220;&#8221;, $menu_default_row, $menu_default_top,<br />
$menu_default_col );<br />
if ( ( $sel eq &#8220;%UP%&#8221; ) || ( $sel eq &#8220;exit&#8221; ) ) { return; }<br />
if ( $sel eq &#8220;add_host_str&#8221; ) {<br />
print_nl( &#8220;    Enter the hostname you want to add&#8221;, 1 );<br />
&amp;print_nl( &#8220;  Supply a null value to exit.&#8221;, 2 );<br />
$prow = $row;<br />
$pcol = $col + 2;<br />
my $hostname = &amp;menu_getstr( $prow, $pcol, &#8220;Enter hostname: &#8220;,<br />
0, $default, 20, 0 );<br />
print_nl( &#8220;    Enter the password for the given hostname&#8221;, 1 );<br />
$prow = $row;<br />
$pcol = $col + 2;<br />
my $password = &amp;menu_getstr( $prow, $pcol, &#8220;Enter password: &#8220;,<br />
0, $default, 20, 0 );<br />
last if ( $hostname eq &#8220;&#8221; );<br />
addit( $hostname, $password );<br />
}<br />
&amp;clear_screen();<br />
}<br />
}</p>
<p>sub del_host {<br />
my $sel;<br />
while (1) {<br />
my $prow = $row;<br />
my $pcol = $col + 2;</p>
<p>#Init a numbered menu with a title<br />
&amp;menu_init( $numbered_flag,<br />
&#8220;Delete an existing entry from encrypted repository&#8221; );</p>
<p>#Add item to return to main menu<br />
&amp;menu_item( &#8220;Exit&#8221;, &#8220;exit&#8221; );</p>
<p>&amp;menu_item( &#8220;delete host/passwd entry&#8221;, &#8220;del_host_str&#8221; );</p>
<p>$sel =<br />
menu_display( &#8220;&#8221;, $menu_default_row, $menu_default_top,<br />
$menu_default_col );<br />
if ( ( $sel eq &#8220;%UP%&#8221; ) || ( $sel eq &#8220;exit&#8221; ) ) { return; }<br />
if ( $sel eq &#8220;del_host_str&#8221; ) {<br />
print_nl( &#8220;    Enter the hostname you want to delete&#8221;, 1 );<br />
&amp;print_nl( &#8220;  Supply a null value to exit.&#8221;, 2 );<br />
$prow = $row;<br />
$pcol = $col + 2;<br />
my $hostname = &amp;menu_getstr( $prow, $pcol, &#8220;Enter host name: &#8220;,<br />
0, $default, 20, 0 );<br />
last if ( $hostname eq &#8220;&#8221; );<br />
delit($hostname);<br />
}<br />
&amp;clear_screen();<br />
}<br />
}</p>
<p>sub handleit {<br />
my $string = shift;<br />
if ( !&amp;display_entry($string) ) {<br />
&amp;new_line(1);<br />
&amp;pause(<br />
&#8220;  Login \&#8221;$string\&#8221; not found - Press any key to continue $bell&#8221;);<br />
$default = $string;<br />
}<br />
else { $default = &#8220;&#8221;; }<br />
}</p>
<p>sub decreep {<br />
require &#8216;menuutil.pl&#8217;;<br />
my $host = shift;<br />
my @arr;<br />
chomp $host;<br />
open( SRCHPWFL, &#8220;&lt; $pwfl&#8221; ) || die &#8220;Unable to open $pwfl: $!\n&#8221;;<br />
for (&lt;SRCHPWFL&gt;) {<br />
if ( $_ =~ m/^$host/i ) {<br />
@arr = split( &#8216;:&#8217;, $_ );<br />
my $password = decrypt( $arr[1] );<br />
menu_display(&#8221;Password for $arr[0] is : $password&#8221;);<br />
}<br />
}<br />
close(SRCHPWFL);<br />
}</p>
<p>sub modit {<br />
my ( $host, $password ) = @_;<br />
my @arr;<br />
my $date = qx/date &#8216;+%m%d%Y%H%M&#8217;/;<br />
chomp $date;<br />
$src  = $pwfl;<br />
$dest = $pwfl . &#8220;.&#8221; . $date;<br />
chomp $dest;<br />
cp( &#8220;$src&#8221;, &#8220;$dest&#8221; );<br />
open( MOD1PWFL, &#8220;&lt; $dest&#8221; ) || menu_display(&#8221;Unable to open $dest: $!\n&#8221;);<br />
open( MODPWFL,  &#8220;&gt;&gt; $src&#8221; ) || menu_display(&#8221;Unable to open $src: $!\n&#8221;);<br />
system(&#8221;&gt; $src&#8221;);    #Zero out the actual password file<br />
flock(MODPWFL, 2) or menu_display(&#8221;Unable to get an exclusive write lock on $src: $! \n&#8221;);</p>
<p>if ( ( !-z $host ) &amp;&amp; ( !-z $password ) ) {<br />
my $encrypted = encrypt($password);<br />
for (&lt;MOD1PWFL&gt;) {<br />
print MODPWFL &#8220;$_&#8221; and next if /^#/;<br />
my @lsplit = split(&#8217;:', $_);<br />
if ( $lsplit[0] eq $host ) {<br />
$lsplit[1] = $encrypted;<br />
print MODPWFL &#8220;# $username Modified $host entry &#8212; $date \n&#8221;;<br />
print MODPWFL &#8220;$host:$lsplit[1]\n&#8221;;<br />
}<br />
else {<br />
print MODPWFL &#8220;$_&#8221;;<br />
}<br />
}<br />
}<br />
close(MOD1PWFL);<br />
close(MODPWFL);<br />
}</p>
<p>sub addit {<br />
my ( $host, $password ) = @_;<br />
my $date = qx/date &#8216;+%m%d%Y%H%M&#8217;/;<br />
chomp $date;<br />
$src  = $pwfl;<br />
$dest = $pwfl . &#8220;.&#8221; . $date;<br />
chomp $dest;<br />
cp( &#8220;$src&#8221;, &#8220;$dest&#8221; );<br />
open(READPWFL, &#8220;&lt; $dest&#8221;);<br />
open( ADDPWFL, &#8220;&gt;&gt; $src&#8221; ) || menu_display(&#8221;Unable to open $src : $!\n&#8221;);<br />
flock(ADDPWFL, 2) or menu_display(&#8221;Unable to get an exclusive write lock on: $src \n&#8221;);</p>
<p>if ( ( !-z $host ) &amp;&amp; ( !-z $password ) ) {<br />
my $encrypted = encrypt($password);<br />
for (&lt;READPWFL&gt;) {<br />
next  if /^#/o;<br />
my @lsplit = split(&#8217;:',$_);<br />
if ( $lsplit[0]  eq $host ) {<br />
menu_display(&#8221;$host already has an entry in : $src \n&#8221;);<br />
return 1;<br />
}<br />
}<br />
if ($? != 1) {<br />
print ADDPWFL &#8220;# $username added entry for $host - $date \n&#8221;;<br />
print ADDPWFL &#8220;$host:$encrypted\n&#8221;;<br />
}<br />
}<br />
close(ADDPWFL);<br />
}</p>
<p>sub delit {<br />
my $host = shift;<br />
my @arr;<br />
chomp $host;<br />
my $date = qx/date &#8216;+%m%d%Y%H%M&#8217;/;<br />
chomp $date;<br />
$src  = $pwfl;<br />
$dest = $pwfl . &#8220;.&#8221; . $date;<br />
chomp $dest;<br />
cp( &#8220;$src&#8221;, &#8220;$dest&#8221; );<br />
open( DEL1PWFL, &#8220;&lt; $dest&#8221; ) || menu_display(&#8221;Unable to open $dest: $!\n&#8221;);<br />
open( DELPWFL,  &#8220;&gt;&gt; $src&#8221; ) || menu_display(&#8221;Unable to open $src: $!\n&#8221;);<br />
system(&#8221;&gt; $src&#8221;);    #Zero out actual pw file<br />
flock(DELPWFL, 2) or menu_display(&#8221;Unable to get an exclusive write lock on : $src \n&#8221;);</p>
<p>for (&lt;DEL1PWFL&gt;) {<br />
print DELPWFL &#8220;$_&#8221; and next  if /^#/;<br />
my @lsplit = split(&#8217;:',$_);<br />
if ( $lsplit[0] ne  $host ) {<br />
print DELPWFL &#8220;$_&#8221; ;<br />
}<br />
else {<br />
print DELPWFL &#8220;# $username deleted entry for $host - $date \n&#8221;;<br />
}<br />
}<br />
close(DEL1PWFL);<br />
close(DELPWFL);<br />
}</p>
<p>sub cleanup {<br />
&amp;clear_screen;<br />
wrefresh;<br />
endwin;<br />
exit;<br />
}</p>
<p>sub inwait {<br />
ReadMode(&#8217;cbreak&#8217;);<br />
if ( defined( $char = ReadKey(-1) ) ) {<br />
print $char;<br />
}<br />
else {<br />
print &#8220;No input waiting\n&#8221;;<br />
}<br />
ReadMode(&#8217;normal&#8217;);<br />
}</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://realsysadmin.com/www/?feed=rss2&amp;p=32</wfw:commentRss>
		</item>
		<item>
		<title>Virtualization Options with Solaris</title>
		<link>http://realsysadmin.com/www/?p=27</link>
		<comments>http://realsysadmin.com/www/?p=27#comments</comments>
		<pubDate>Thu, 02 Jul 2009 14:56:20 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Container]]></category>

		<category><![CDATA[NonGlobal Zone]]></category>

		<category><![CDATA[Solaris 10]]></category>

		<category><![CDATA[Zone]]></category>

		<category><![CDATA[solution]]></category>

		<category><![CDATA[Virtualization]]></category>

		<guid isPermaLink="false">http://realsysadmin.com/www/?p=27</guid>
		<description><![CDATA[A short presentation on Virtualization technologies and their underlying mechanism available from Sun.]]></description>
			<content:encoded><![CDATA[<p>Disclaimer: Some of the graphics on this presentation have been borrowed from presentations by others and the content itself has been compiled from documentation from Sun.</p>
<p>I had presented this piece in a Lunch and Learn session with my team.</p>
<p><a href="http://www.authorstream.com/Presentation/dlahiri-209427-svov-Solaris-Virtualization-overview-Why-stale-news-options-Sun-Hardware-Partition-Science-Technology-ppt-powerpoint/">Solaris Virtualization</a></p>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="481" height="402">
<param name="allowScriptAccess" value="always" /><param name="allowfullscreen" value="true" />
<param name="movie" value="http://www.authorstream.com/player/player.swf?p=209427_633821242860692500"/>
<param name="wmode" value="transparent" />
<embed src="http://www.authorstream.com/player/player.swf?p=209427_633821242860692500" quality="high" type="application/x-shockwave-flash" allowScriptAccess="always" allowFullScreen="true" wmode="transparent" width="481" height="402"></embed>
</object>
<br/><font size="2">Uploaded on authorSTREAM by <a href="http://www.authorstream.com/User-Presentations/dlahiri/" target="_blank" title="More presentations by dlahiri on authorSTREAM">dlahiri</a></font>
]]></content:encoded>
			<wfw:commentRss>http://realsysadmin.com/www/?feed=rss2&amp;p=27</wfw:commentRss>
		</item>
		<item>
		<title>Sun&#8217;s M5000 Firmware Upgrade</title>
		<link>http://realsysadmin.com/www/?p=25</link>
		<comments>http://realsysadmin.com/www/?p=25#comments</comments>
		<pubDate>Wed, 07 Jan 2009 22:47:28 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[administration]]></category>

		<category><![CDATA[enterprise]]></category>

		<category><![CDATA[Firmware]]></category>

		<category><![CDATA[M5000]]></category>

		<category><![CDATA[Sun]]></category>

		<category><![CDATA[Upgrade]]></category>

		<guid isPermaLink="false">http://realsysadmin.com/www/?p=25</guid>
		<description><![CDATA[teps to updating flashimage on Sun M5000 servers: ]]></description>
			<content:encoded><![CDATA[<p>Steps to updating flashimage on Sun M5000 servers:</p>
<p>Download latest flash image</p>
<p><a class="external free" title="http://www.sun.com/download/products.xml?id=46fc425e" rel="nofollow" href="http://www.sun.com/download/products.xml?id=46fc425e">http://www.sun.com/download/products.xml?id=46fc425e</a></p>
<p>Download to usb drive.</p>
<p>I had to rename the file &#8220;[]&#8221; were put into the name on download.</p>
<p>I made a directory named images</p>
<p>Moved renamed file (FFXCP1071.tar.gz) into images directory.</p>
<p>(The usb port is on the XSCF card in rear of system)</p>
<p>Load image into system memory:</p>
<blockquote><p>XSCF&gt;getflashimage file:///media/usb_msd/images/FFXCP1071.tar.gz</p>
<p>Answer: Y (Loads image into memory)</p>
<p>Install image:</p>
<p>XSCF&gt;flashupdate -c update -m xcp -s 1071</p>
<p>Answer: Y</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://realsysadmin.com/www/?feed=rss2&amp;p=25</wfw:commentRss>
		</item>
		<item>
		<title>A healthy dose of mdb</title>
		<link>http://realsysadmin.com/www/?p=24</link>
		<comments>http://realsysadmin.com/www/?p=24#comments</comments>
		<pubDate>Thu, 16 Oct 2008 15:20:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[SSM]]></category>

		<category><![CDATA[Solaris 10]]></category>

		<category><![CDATA[Veritas Volume Manager]]></category>

		<category><![CDATA[crash debug]]></category>

		<category><![CDATA[kernel debug]]></category>

		<category><![CDATA[system hang]]></category>

		<guid isPermaLink="false">http://realsysadmin.com/www/?p=24</guid>
		<description><![CDATA[Since the past several months, we have been encountering a baffling problem with Solaris 10 systems hanging on their way up after a reboot (or simply a boot) in the multi-user mode (run level 3).  Since we do our system patching at regular intervals (and since solaris runs so well that we don&#8217;t need [...]]]></description>
			<content:encoded><![CDATA[<p>Since the past several months, we have been encountering a baffling problem with Solaris 10 systems hanging on their way up after a reboot (or simply a boot) in the multi-user mode (run level 3).  Since we do our system patching at regular intervals (and since solaris runs so well that we don&#8217;t need to reboot our servers otherwise), we didn&#8217;t notice this until we came upon our latest patch cycle last month.</p>
<p>We noticed that our systems were not booting up the normal way. The only way to boot was to &#8220;trick&#8221; the system into booting into single-user mode and then exiting out to the multi-user run-level.</p>
<p>This was a problem happening only on systems running Solaris 10, with Veritas Volume Manager 5.0 MP1. So naturally we leaned towards tackling this first as a possible VxVM problem (introduced by some patch during the patch cycle). And the patch rev we had decided to apply had the Veritas Storage Foundation 5.0 MP1 RP4 in it.</p>
<p>Again, to reiterate the problem description &#8211;
<p class="line874"><span style="font-weight: bold;">Description:</span></p>
<p class="line874">Systems running Solaris 10 and Veritas Volume Manager tend to hang when booted with a normal init 6 (ie while booting into Run Level 3). <span class="anchor" id="line-7"></span><span class="anchor" id="line-8"></span></p>
<p class="line867">
<p> <span class="anchor" id="line-9"></span><span class="anchor" id="line-10"></span>
<p style="font-weight: bold;" class="line874">Workaround:</p>
<p class="line874">Boot the system in run level S (single user mode) and then exit out of it to boot into multi-user mode. <span class="anchor" id="line-11"></span><span class="anchor" id="line-12"></span></p>
<p class="line867">
<p><span style="font-weight: bold;"><br />Details:</span><span class="anchor" id="line-13"></span><span class="anchor" id="line-14"></span>
<p class="line874">Opened a case with Veritas and sent them VRTSexplorer outputs and copies of our messages file from problem host nodeA.<span class="anchor" id="line-15"></span><span class="anchor" id="line-16"></span></p>
<p class="line874">After several iterations of generating explorers and veritas configuration information, Veritas still didn&#8217;t have anything substantial they could pin this issue on. They asked me to generate a crash dump of the hanging system (usually should be able to coredump a running host by breaking it and running &#8220;sync&#8221; from the OBP). <span class="anchor" id="line-17"></span><span class="anchor" id="line-18"></span></p>
<p class="line874">After repeated attempts at generating the core, I was unable to do so. It seems like the system hangs before the dump device is initialized/configured by the OS. <span class="anchor" id="line-19"></span><span class="anchor" id="line-20"></span></p>
<p class="line874">Using the work around, I enabled the solaris deadman timer (which incidentally we should have on all our servers). This involves setting the following line in the /etc/system file &#8212; <span class="anchor" id="line-21"></span><span class="anchor" id="line-22"></span></p>
<p class="line867"><tt><br />
<blockquote>* set snooping = 1</p></blockquote>
<p></tt> <span class="anchor" id="line-23"></span><span class="anchor" id="line-24"></span></p>
<p class="line874">What the deadman timer does is sents a high-priority hardware interrupt to each CPU (or Core or strand depending on the platform) and updates a counter upon successful response by the CPU. In case of a system being hung (due to hardware issues especially), this count might not increase with an increase in clock tick (interrupts aresent to CPUs every tick). When this counter is not incremented, the kernel panics and kills itself. <span class="anchor" id="line-25"></span><span class="anchor" id="line-26"></span></p>
<p class="line874">This didn&#8217;t work because we didn&#8217;t encounter that kind of a problem (but is a good idea to have enabled nonetheless). <span class="anchor" id="line-27"></span><span class="anchor" id="line-28"></span></p>
<p class="line867">
<h4 id="head-3c29500ae289d58f8525d8704937074798413f2a">Another alternative for panicking a system is as follows</h4>
<p> <span class="anchor" id="line-29"></span><span class="anchor" id="line-30"></span>
<p class="line862">Boot the server in kernel debug mode (in SPARC systems it is done by running <tt>boot -k</tt> from the OBP). This loads the <strong class="highlight">kmdb</strong> module into the kernel as it boots up. Breaking the system while in kernel debug mode will not drop it into the OBP but instead launch an mdb interface. <span class="anchor" id="line-31"></span><span class="anchor" id="line-32"></span></p>
<p>One can generate a coredump by running $ < i="" tried="" that="" but="" no=""><br />
<blockquote><span style="font-size:85%;"><br /><span style="font-family:courier new;">    [17]> $ <></systemdump"></span><br /><span style="font-family:courier new;">    panic[cpu17]/thread=2a101a3fca0: BAD TRAP: type=9 rp=2a101a3f760 addr=0 mmu_fsr=0</span></p>
<p><span style="font-family:courier new;">    sched: trap type = 0&#215;9</span><br /><span style="font-family:courier new;">    pid=0, pc=0&#215;0, sp=0&#215;2a101a3f001, tstate=0&#215;1606, context=0&#215;0</span><br /><span style="font-family:courier new;">    g1-g7: 1011be4, 1, 1870000, 20040, 1860c00, 0, 2a101a3fca0</span></p>
<p><span style="font-family:courier new;">    000002a101a3f480 unix:die+9c (9, 2a101a3f760, 0, 0, 2a101a3f540, 1901ec0)</span><br /><span style="font-family:courier new;">    %l0-3: 0000000000000000 0000000000000009 0000000000000009 0000000000000000</span><br /><span style="font-family:courier new;">    %l4-7: 0000000000000000 00000000018f1800 0000000000001606 0000000001097000</span><br /><span style="font-family:courier new;">    000002a101a3f560 unix:trap+6cc (2a101a3f760, 10000, 0, 0, 30003dac000, 2a101a3fca0)</span><br /><span style="font-family:courier new;">    %l0-3: 0000000000000000 0000000001859480 0000000000000009 0000000000000000</span><br /><span style="font-family:courier new;">    %l4-7: 0000000000000000 00000000018f1800 0000000000001606 0000000000010200</span><br /><span style="font-family:courier new;">    000002a101a3f6b0 unix:ktl0+64 (0, 20040, 1860c00, 1, 1260ce4, 1901ec0)</span><br /><span style="font-family:courier new;">    %l0-3: 0000030003dac000 0000000000000088 0000000000001606 0000000001020354</span><br /><span style="font-family:courier new;">    %l4-7: 0000000000000000 00000000018f1800 000000000000000c 000002a101a3f760</span><br /><span style="font-family:courier new;">    000002a101a3f800 unix:debug_enter+108 (0, a, a, 1826400, 0, 1870000)</span><br /><span style="font-family:courier new;">    %l0-3: 0000000001834060 00000048df61937c 0000000000000000 0000000000000000</span><br /><span style="font-family:courier new;">    %l4-7: 0000000000000000 00000000018f1800 0000000000000000 0000000001011b30</span><br /><span style="font-family:courier new;">    000002a101a3f8d0 unix:abort_seq_softintr+94 (1826400, 18f1800, 30003dac000, 2a101a3fd78, 1, 189f800)</span><br /><span style="font-family:courier new;">    %l0-3: 0000000001834060 00000048df61937c 0000000000000000 0000000000000000</span><br /><span style="font-family:courier new;">    %l4-7: 0000000000000000 00000000018f1800 0000000000000000 0000000001011b30</span></p>
<p><span style="font-family:courier new;">    syncing file systems&#8230; done</span><br /><span style="font-family:courier new;">    skipping system dump - no dump device configured</span><br /><span style="font-family:courier new;">    rebooting&#8230;</span></p>
<p><span style="font-family:courier new;">    SC Alert: Host System has Reset</span></p>
<p><span style="font-family:courier new;">    SC Alert: Failed to send email alert for recent event.</span></p>
<p><span style="font-family:courier new;">    SC Alert: Indicator SYS/ACT is now STANDBY BLINK</span></span></p></blockquote>
<p>So back to the kernel debug mode again. This time I decided to try and investigate the kernel (you can do this against a coredump as well).<br />
<blockquote><span style="font-size:85%;"><br /><span style="font-family:courier new;">    [17]> ::msgbuf</span><br /><span style="font-family:courier new;">    MESSAGE</span><br /><span style="font-family:courier new;">    /pci@780/pci@0/pci@9/scsi@0 (mpt0):</span><br /><span style="font-family:courier new;">    mpt0 supports power management.</span><br /><span style="font-family:courier new;">    /pci@780/pci@0/pci@9/scsi@0 (mpt0):</span><br /><span style="font-family:courier new;">    DMA restricted to lower 4GB due to errata</span><br /><span style="font-family:courier new;">    /pci@780/pci@0/pci@9/scsi@0 (mpt0):</span><br /><span style="font-family:courier new;">    mpt0 Firmware version v1.9.0.0 (IR)</span><br /><span style="font-family:courier new;">    /pci@780/pci@0/pci@9/scsi@0 (mpt0):</span><br /><span style="font-family:courier new;">    mpt0: IOC Operational.</span><br /><span style="font-family:courier new;">    /pci@780/pci@0/pci@9/scsi@0 (mpt0):</span><br /><span style="font-family:courier new;">    mpt0: Initiator WWNs: 0&#215;5080020000262858-0&#215;508002000026285b</span><br /><span style="font-family:courier new;">    PCI-device: scsi@0, mpt0</span><br /><span style="font-family:courier new;">    mpt0 is /pci@780/pci@0/pci@9/scsi@0</span><br /><span style="font-family:courier new;">    sd1 at mpt0: target 0 lun 0</span><br /><span style="font-family:courier new;">    sd1 is /pci@780/pci@0/pci@9/scsi@0/sd@0,0</span><br /><span style="font-family:courier new;">    /pci@780/pci@0/pci@9/scsi@0/sd@0,0 (sd1) online</span><br /><span style="font-family:courier new;">    root on /pci@780/pci@0/pci@9/scsi@0/disk@0,0:a fstype ufs</span><br /><span style="font-family:courier new;">    px1 at root: 0&#215;7c0 0&#215;0</span><br /><span style="font-family:courier new;">    px1 is /pci@7c0</span><br /><span style="font-family:courier new;">    PCI Express-device: pci@0, pxb_plx5</span><br /><span style="font-family:courier new;">    pxb_plx5 is /pci@7c0/pci@0</span><br /><span style="font-family:courier new;">    PCI-device: pci@1, pxb_plx6</span><br /><span style="font-family:courier new;">    pxb_plx6 is /pci@7c0/pci@0/pci@1</span><br /><span style="font-family:courier new;">    PCI-device: pci@0, px_pci0</span><br /><span style="font-family:courier new;">    px_pci0 is /pci@7c0/pci@0/pci@1/pci@0</span><br /><span style="font-family:courier new;">    PCI-device: ide@8, uata0</span><br /><span style="font-family:courier new;">    uata0 is /pci@7c0/pci@0/pci@1/pci@0/ide@8</span><br /><span style="font-family:courier new;">    WARNING: px1: spurious interrupt from ino 0&#215;4</span><br /><span style="font-family:courier new;">    uata-0#0</span></p>
<p><span style="font-family:courier new;">    sd2 at uata0: target 0 lun 0</span><br /><span style="font-family:courier new;">    sd2 is /pci@7c0/pci@0/pci@1/pci@0/ide@8/sd@0,0</span><br /><span style="font-family:courier new;">    sd3 at mpt0: target 1 lun 0</span><br /><span style="font-family:courier new;">    sd3 is /pci@780/pci@0/pci@9/scsi@0/sd@1,0</span><br /><span style="font-family:courier new;">    /pci@780/pci@0/pci@9/scsi@0/sd@1,0 (sd3) online</span><br /><span style="font-family:courier new;">    sd4 at mpt0: target 2 lun 0</span><br /><span style="font-family:courier new;">    sd4 is /pci@780/pci@0/pci@9/scsi@0/sd@2,0</span><br /><span style="font-family:courier new;">    /pci@780/pci@0/pci@9/scsi@0/sd@2,0 (sd4) online</span><br /><span style="font-family:courier new;">    sd5 at mpt0: target 3 lun 0</span><br /><span style="font-family:courier new;">    sd5 is /pci@780/pci@0/pci@9/scsi@0/sd@3,0</span><br /><span style="font-family:courier new;">    /pci@780/pci@0/pci@9/scsi@0/sd@3,0 (sd5) online</span><br /><span style="font-family:courier new;">    iscsi0 at root</span><br /><span style="font-family:courier new;">    iscsi0 is /iscsi</span><br /><span style="font-family:courier new;">    root remounted on /pseudo/vxio@0:0 fstype ufs</span><br /><span style="font-family:courier new;">    virtual-device: cnex0</span><br /><span style="font-family:courier new;">    cnex0 is /virtual-devices@100/channel-devices@200</span><br /><span style="font-family:courier new;">    PCI-device: isa@2, ebus0</span><br /><span style="font-family:courier new;">    ebus0 is /pci@7c0/pci@0/pci@1/pci@0/isa@2</span><br /><span style="font-family:courier new;">    pseudo-device: dld0</span><br /><span style="font-family:courier new;">    dld0 is /pseudo/dld@0</span><br /><span style="font-family:courier new;">    PCI-device: usb@5, ohci0</span><br /><span style="font-family:courier new;">    ohci0 is /pci@7c0/pci@0/pci@1/pci@0/usb@5</span><br /><span style="font-family:courier new;">    PCI-device: usb@6, ohci1</span><br /><span style="font-family:courier new;">    ohci1 is /pci@7c0/pci@0/pci@1/pci@0/usb@6</span><br /><span style="font-family:courier new;">    cpu0: UltraSPARC-T1 (cpuid 0 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu1: UltraSPARC-T1 (cpuid 1 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu1 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu2: UltraSPARC-T1 (cpuid 2 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu2 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu3: UltraSPARC-T1 (cpuid 3 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu3 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu4: UltraSPARC-T1 (cpuid 4 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu4 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu5: UltraSPARC-T1 (cpuid 5 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu5 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu6: UltraSPARC-T1 (cpuid 6 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu6 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu7: UltraSPARC-T1 (cpuid 7 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu7 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu8: UltraSPARC-T1 (cpuid 8 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu8 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu9: UltraSPARC-T1 (cpuid 9 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu9 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu10: UltraSPARC-T1 (cpuid 10 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu10 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu11: UltraSPARC-T1 (cpuid 11 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu11 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu12: UltraSPARC-T1 (cpuid 12 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu12 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu13: UltraSPARC-T1 (cpuid 13 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu13 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu14: UltraSPARC-T1 (cpuid 14 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu14 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu15: UltraSPARC-T1 (cpuid 15 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu15 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu16: UltraSPARC-T1 (cpuid 16 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu16 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu17: UltraSPARC-T1 (cpuid 17 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu17 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu18: UltraSPARC-T1 (cpuid 18 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu18 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu19: UltraSPARC-T1 (cpuid 19 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu19 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu20: UltraSPARC-T1 (cpuid 20 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu20 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu21: UltraSPARC-T1 (cpuid 21 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu21 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu22: UltraSPARC-T1 (cpuid 22 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu22 initialization complete - online</span><br /><span style="font-family:courier new;">    cpu23: UltraSPARC-T1 (cpuid 23 clock 1000 MHz)</span><br /><span style="font-family:courier new;">    cpu23 initialization complete - online</span><br /><span style="font-family:courier new;">    USB 1.10 device (usb3eb,3301) operating at full speed (USB 1.x) on USB 1.10 root</span><br /><span style="font-family:courier new;">    hub: hub@1, hubd1 at bus address 2</span><br /><span style="font-family:courier new;">    hubd1 is /pci@7c0/pci@0/pci@1/pci@0/usb@6/hub@1</span><br /><span style="font-family:courier new;">    /pci@7c0/pci@0/pci@1/pci@0/usb@6/hub@1 (hubd1) online</span><br /><span style="font-family:courier new;">    PCI-device: pci@0,2, px_pci1</span><br /><span style="font-family:courier new;">    px_pci1 is /pci@7c0/pci@0/pci@1/pci@0,2</span><br /><span style="font-family:courier new;">    PCI-device: pci@1, pxb_plx1</span><br /><span style="font-family:courier new;">    pxb_plx1 is /pci@780/pci@0/pci@1</span><br /><span style="font-family:courier new;">    PCI-device: pci@2, pxb_plx2</span><br /><span style="font-family:courier new;">    pxb_plx2 is /pci@780/pci@0/pci@2</span><br /><span style="font-family:courier new;">    PCI-device: pci@8, pxb_plx3</span><br /><span style="font-family:courier new;">    pxb_plx3 is /pci@780/pci@0/pci@8</span><br /><span style="font-family:courier new;">    PCI-device: pci@2, pxb_plx7</span><br /><span style="font-family:courier new;">    pxb_plx7 is /pci@7c0/pci@0/pci@2</span><br /><span style="font-family:courier new;">    PCI-device: pci@8, pxb_plx8</span><br /><span style="font-family:courier new;">    pxb_plx8 is /pci@7c0/pci@0/pci@8</span><br /><span style="font-family:courier new;">    PCI-device: pci@9, pxb_plx9</span><br /><span style="font-family:courier new;">    pxb_plx9 is /pci@7c0/pci@0/pci@9</span><br /><span style="font-family:courier new;">    NOTICE: e1000g0 registered</span><br /><span style="font-family:courier new;">    Intel(R) PRO/1000 Network Connection, Driver Ver. 5.1.11</span><br /><span style="font-family:courier new;">    NOTICE: pciex8086,105e - e1000g[0] : Adapter copper link is down.</span><br /><span style="font-family:courier new;">    NOTICE: e1000g1 registered</span><br /><span style="font-family:courier new;">    Intel(R) PRO/1000 Network Connection, Driver Ver. 5.1.11</span><br /><span style="font-family:courier new;">    NOTICE: pciex8086,105e - e1000g[1] : Adapter copper link is down.</span><br /><span style="font-family:courier new;">    NOTICE: e1000g3 registered</span><br /><span style="font-family:courier new;">    Intel(R) PRO/1000 Network Connection, Driver Ver. 5.1.11</span><br /><span style="font-family:courier new;">    NOTICE: pciex8086,105e - e1000g[3] : Adapter copper link is down.</span><br /><span style="font-family:courier new;">    NOTICE: pciex8086,105e - e1000g[0] : Adapter 1000Mbps full duplex copper link is</span><br /><span style="font-family:courier new;">    up.</span><br /><span style="font-family:courier new;">    NOTICE: pciex8086,105e - e1000g[1] : Adapter 1000Mbps full duplex copper link is</span><br /><span style="font-family:courier new;">    up.</span><br /><span style="font-family:courier new;">    pseudo-device: devinfo0</span><br /><span style="font-family:courier new;">    devinfo0 is /pseudo/devinfo@0</span><br /><span style="font-family:courier new;">    NOTICE: pciex8086,105e - e1000g[3] : Adapter 1000Mbps full duplex copper link is</span><br /><span style="font-family:courier new;">    up.</span><br /><span style="font-family:courier new;">    NOTICE: VxVM vxdmp V-5-0-34 added disk array DISKS, datype = Disk</span></p>
<p><span style="font-family:courier new;">    NOTICE: VxVM vxdmp V-5-3-1700 dmpnode 300/0&#215;0 has migrated from enclosure FAKE_E</span><br /><span style="font-family:courier new;">    NCLR_SNO to enclosure DISKS</span></p>
<p><span style="font-family:courier new;">    NOTICE: e1000g2 registered</span><br /><span style="font-family:courier new;">    Intel(R) PRO/1000 Network Connection, Driver Ver. 5.1.11</span></span></p></blockquote>
<p>Look at the process table&#8230;<br />
<blockquote><span style="font-size:85%;"><br /><span style="font-family:courier new;">    [17]> ::ps</span><br /><span style="font-family:courier new;">    S    PID   PPID   PGID    SID    UID      FLAGS             ADDR NAME</span><br /><span style="font-family:courier new;">    R      0      0      0      0      0 0&#215;00000001 0000000001859480 sched</span><br /><span style="font-family:courier new;">    R      3      0      0      0      0 0&#215;00020001 000006001172d838 fsflush</span><br /><span style="font-family:courier new;">    R      2      0      0      0      0 0&#215;00020001 000006001172e450 pageout</span><br /><span style="font-family:courier new;">    R      1      0      0      0      0 0&#215;4a004000 000006001172f068 init</span><br /><span style="font-family:courier new;">    R     79      1     78     78      0 0&#215;42010000 0000060017f30028 ssmagent.bin</span><br /><span style="font-family:courier new;">    R      9      1      9      9      0 0&#215;42000000 000006001292f070 svc.configd</span><br /><span style="font-family:courier new;">    R      7      1      7      7      0 0&#215;42000000 000006001172c008 svc.startd</span><br /><span style="font-family:courier new;">    R     54      7      7      7      0 0&#215;4a004000 0000060017e43080 vxvm-sysboot</span><br /><span style="font-family:courier new;">    R     56     54      7      7      0 0&#215;4a004000 0000060017e42468 vxconfigd</span><br /><span style="font-family:courier new;">    R     57     56     57     57      0 0&#215;42020000 0000060017dc8018 vxconfigd</span><br /></span></p></blockquote>
<p>Pick a suspect thread and dig deeper &#8211;<br />
<blockquote><span style="font-size:85%;">  <br />[17]> 0000060017e43080::findstack -v<br />   kmdb: thread 60017e43080 isn&#8217;t in memory<br />   [17]> 0000060017e43080::walk thread<br />   30003eba480<br />   [17]> 0000060017e43080::walk thread| ::findstack -v<br />   stack pointer for thread 30003eba480: 2a101514ff1<br />   [ 000002a101514ff1 cv_wait_sig_swap_core+0x130() ]<br />     000002a1015150a1 waitid+0&#215;484(0, 60017e42468, 0, 60017e430e8, 0, 1)<br />     000002a101515171 waitsys32+0&#215;10(0, 38, ffbffa80, 83, 39590, 3a57c)<br />     000002a1015152e1 syscall_trap32+0xcc(0, 38, ffbffa80, 83, 39590, 3a57c)<br />   [17]></p>
<p>   [17]> 0000060017e42468::walk thread| ::findstack -v<br />   stack pointer for thread 30003fae200: 2a101dbeff1<br />   [ 000002a101dbeff1 cv_wait_sig_swap_core+0x130() ]<br />     000002a101dbf0a1 waitid+0&#215;484(0, 0, 0, 60017e424d0, 7, 1)<br />     000002a101dbf171 waitsys32+0&#215;10(7, 0, ffbffaa8, 3, 2909e8, 0)<br />     000002a101dbf2e1 syscall_trap32+0xcc(7, 0, ffbffaa8, 3, 2909e8, 0)</p>
<p>   [17]> 0000060017dc8018::walk thread | ::findstack -v<br />   stack pointer for thread 30003eb0420: 2a10072ec21<br />   [ 000002a10072ec21 cv_wait+0x38() ]<br />     000002a10072ecd1 delay+0&#215;90(1, 1870000, df39, df3a, 1, 18f0818)<br />     000002a10072ed81 vxio`volkio_flush_cached_io+0xdc(7006ea30, 30003eb0420,<br />     7006789c, 7006e9e8, 0, 0)<br />     000002a10072ee31 vxio`vol_commit_flush_cached_io+0&#215;60(60011503240, 70046d28, 0<br />     , 0, 0, 0)<br />     000002a10072eee1 vxio`vol_ktrans_commit+0&#215;6fc(7006b2f0, 1, 7006789c, 7006d92c<br />     , 60011503240, 0)<br />     000002a10072ef91 vxio`volsioctl_real+0&#215;4c8(70034000, 564f4c86, 0, 100003,<br />     60011403768, 2a10072fadc)<br />     000002a10072f0e1 fop_ioctl+0&#215;20(60012a7f900, 564f4c86, 0, 100003, 60011403768<br />     , 12f1770)<br />     000002a10072f191 ioctl+0&#215;184(1, 600115e8a50, 0, 564f4c86, 0, 564f4c86)<br />     000002a10072f2e1 syscall_trap32+0xcc(1, 564f4c86, 0, 564f4c86, 0, 820770)<br />   [17]><br /></span></p></blockquote>
<p>Found something in the last one, but no immediate red flags. But then I saw this (ssmagent running). SSM Agent is a SNMP agent that is used to monitor our systems and report back to Netcool, our Fault Management server.<br />
<blockquote><span style="font-size:85%;"><br /><span style="font-family:courier new;">    [17]> ::ps                       </span><br /><span style="font-family:courier new;">    S    PID   PPID   PGID    SID    UID      FLAGS             ADDR NAME</span><br /><span style="font-family:courier new;">    R      0      0      0      0      0 0&#215;00000001 0000000001859480 sched</span><br /><span style="font-family:courier new;">    R      3      0      0      0      0 0&#215;00020001 000006001172d838 fsflush</span><br /><span style="font-family:courier new;">    R      2      0      0      0      0 0&#215;00020001 000006001172e450 pageout</span><br /><span style="font-family:courier new;">    R      1      0      0      0      0 0&#215;4a004000 000006001172f068 init</span><br /><span style="font-family:courier new;">    R     79      1     78     78      0 0&#215;42010000 0000060017f5e028 ssmagent.bin</span><br /><span style="font-family:courier new;">    R     43      1     42     42      0 0&#215;42020000 0000060017db7078 dhcpagent</span><br /><span style="font-family:courier new;">    R      9      1      9      9      0 0&#215;42000000 0000060012922458 svc.configd</span><br /><span style="font-family:courier new;">    R      7      1      7      7      0 0&#215;42000000 000006001172c008 svc.startd</span><br /><span style="font-family:courier new;">    R     54      7      7      7      0 0&#215;4a004000 000006001172cc20 vxvm-sysboot</span><br /><span style="font-family:courier new;">    R     56     54      7      7      0 0&#215;4a004000 0000060017e10468 vxconfigd</span><br /><span style="font-family:courier new;">    R     57     56     57     57      0 0&#215;42020000 0000060017db4018 vxconfigd</span><br /><span style="font-family:courier new;">    [17]> 0000060017f5e028::walk thread| ::findstack -v</span><br /><span style="font-family:courier new;">    stack pointer for thread 30003fb55a0: 2a101e02961</span><br /><span style="font-family:courier new;">    [ 000002a101e02961 sema_p+0x130() ]</span><br /><span style="font-family:courier new;">      000002a101e02a11 biowait+0&#215;6c(60017dda100, 0, 1870000, 30003dbe000, 2000,</span><br /><span style="font-family:courier new;">      60017dda100)</span><br /><span style="font-family:courier new;">      000002a101e02ac1 ufs`ufs_getpage_miss+0&#215;2ec(60019a0f300, 40000, 4de,</span><br /><span style="font-family:courier new;">      600129cea20, fdba0000, 2a101e03760)</span><br /><span style="font-family:courier new;">      000002a101e02bc1 ufs`ufs_getpage+0&#215;694(300014b7e00, 40000, 1, 0, 1, 3)</span><br /><span style="font-family:courier new;">      000002a101e02d21 fop_getpage+0&#215;44(60019a0f300, 600114659c0, 60011403978, 3,</span><br /><span style="font-family:courier new;">      fdba0000, 3)</span><br /><span style="font-family:courier new;">      000002a101e02df1 segvn_fault+0xb04(8000, 600129cea20, 3, 2000, 40000, 0)</span><br /><span style="font-family:courier new;">      000002a101e02fc1 as_fault+0&#215;4c8(600129cea20, 600129d9200, fdba0000,</span><br /><span style="font-family:courier new;">      60011736320, 189eb00, 0)</span><br /><span style="font-family:courier new;">      000002a101e030d1 pagefault+0&#215;68(fdba14a8, 0, 3, 0, 60017f5e028, 600117362a8)</span><br /><span style="font-family:courier new;">      000002a101e03191 trap+0xd50(2a101e03b90, 10000, 0, 3, fdba14a8, 0)</span><br /><span style="font-family:courier new;">      000002a101e032e1 utl0+0&#215;4c(ff3f40fc, ff3f5a70, 1, 0, ff3f4910, 821)</span><br /><span style="font-family:courier new;">    stack pointer for thread 30003f08820: 2a102005091</span><br /><span style="font-family:courier new;">    [ 000002a102005091 cv_wait_sig_swap_core+0x130() ]</span><br /><span style="font-family:courier new;">      000002a102005141 lwp_park+0&#215;130(0, 1, 30003f089c6, 30003f08820, 0, 100000)</span><br /><span style="font-family:courier new;">      000002a102005231 syslwp_park+0&#215;54(0, 0, 0, 0, ff092010, 1)</span><br /><span style="font-family:courier new;">      000002a1020052e1 syscall_trap32+0xcc(0, 0, 0, 0, ff092010, 1)</span><br /><span style="font-family:courier new;">    stack pointer for thread 30003fb4560: 2a101d9f091</span><br /><span style="font-family:courier new;">    [ 000002a101d9f091 cv_wait_sig_swap_core+0x130() ]</span><br /><span style="font-family:courier new;">      000002a101d9f141 lwp_park+0&#215;130(0, 1, 30003fb4706, 30003fb4560, 0, 100000)</span><br /><span style="font-family:courier new;">      000002a101d9f231 syslwp_park+0&#215;54(0, 0, 0, 0, ff092020, 1)</span><br /><span style="font-family:courier new;">      000002a101d9f2e1 syscall_trap32+0xcc(0, 0, 0, 0, ff092020, 1)</span><br /><span style="font-family:courier new;">    stack pointer for thread 30003ef77c0: 2a1008e9091</span><br /><span style="font-family:courier new;">    [ 000002a1008e9091 cv_wait_sig_swap_core+0x130() ]</span><br /><span style="font-family:courier new;">      000002a1008e9141 lwp_park+0&#215;130(0, 1, 30003ef7966, 30003ef77c0, 0, 100000)</span><br /><span style="font-family:courier new;">      000002a1008e9231 syslwp_park+0&#215;54(0, 0, 0, 0, ff092030, 1)</span><br /><span style="font-family:courier new;">      000002a1008e92e1 syscall_trap32+0xcc(0, 0, 0, 0, ff092030, 1)</span><br /><span style="font-family:courier new;">    stack pointer for thread 30003fd35c0: 2a101db6f91</span><br /><span style="font-family:courier new;">    [ 000002a101db6f91 cv_timedwait_sig+0x16c() ]</span><br /><span style="font-family:courier new;">      000002a101db7041 cv_waituntil_sig+0&#215;8c(60017dc8592, 60017dc8558, 2a101db7ad0,</span><br /><span style="font-family:courier new;">      2, 18f0800, 2)</span><br /><span style="font-family:courier new;">      000002a101db7111 poll_common+0&#215;4e8(60012996580, 60017f5e028, 2a101db7ad0, 0,</span><br /><span style="font-family:courier new;">      fe57bcd0, 2)</span><br /><span style="font-family:courier new;">      000002a101db7201 pollsys+0xf8(fe57bcd0, 1, fe57bd70, 0, 2a101db7ad0, 0)</span><br /><span style="font-family:courier new;">      000002a101db72e1 syscall_trap32+0xcc(fe57bcd0, 1, fe57bd70, 0, fe57bd70, 0)</span><br /><span style="font-family:courier new;">    stack pointer for thread 30003efa460: 2a101df3091</span><br /><span style="font-family:courier new;">    [ 000002a101df3091 cv_wait_sig_swap_core+0x130() ]</span><br /><span style="font-family:courier new;">      000002a101df3141 lwp_park+0&#215;130(0, 1, 30003efa606, 30003efa460, 0, 100000)</span><br /><span style="font-family:courier new;">      000002a101df3231 syslwp_park+0&#215;54(0, 0, 0, 0, ff092050, 1)</span><br /><span style="font-family:courier new;">      000002a101df32e1 syscall_trap32+0xcc(0, 0, 0, 0, ff092050, 1)</span><br /><span style="font-family:courier new;">    stack pointer for thread 30003fe55e0: 2a10089efc1</span><br /><span style="font-family:courier new;">    [ 000002a10089efc1 cv_timedwait_sig+0x16c() ]</span><br /><span style="font-family:courier new;">      000002a10089f071 cv_waituntil_sig+0&#215;8c(30003fe5786, 30003fe5788, 2a10089fa10,</span><br /><span style="font-family:courier new;">      2, 18f0800, 2)</span><br /><span style="font-family:courier new;">      000002a10089f141 lwp_park+0&#215;130(fdffbd50, 0, 30003fe5786, 30003fe55e0, 0,</span><br /><span style="font-family:courier new;">      100000)</span><br /><span style="font-family:courier new;">      000002a10089f231 syslwp_park+0&#215;54(0, fdffbd50, 0, 0, ff092060, 1)</span><br /><span style="font-family:courier new;">      000002a10089f2e1 syscall_trap32+0xcc(0, fdffbd50, 0, 0, ff092060, 1)</span><br /><span style="font-family:courier new;">    stack pointer for thread 30003ff4a20: 2a10083f091</span><br /><span style="font-family:courier new;">    [ 000002a10083f091 cv_wait_sig_swap_core+0x130() ]</span><br /><span style="font-family:courier new;">      000002a10083f141 lwp_park+0&#215;130(0, 0, 30003ff4bc6, 30003ff4a20, 0, 100000)</span><br /><span style="font-family:courier new;">      000002a10083f231 syslwp_park+0&#215;54(0, 0, 0, 0, ff092070, 1)</span><br /><span style="font-family:courier new;">      000002a10083f2e1 syscall_trap32+0xcc(0, 0, 0, 0, ff092070, 1)</span><br /><span style="font-family:courier new;">    [17]></span><br /></span></p></blockquote>
<p>It wasn&#8217;t vxconfigd, but was ssmagent (a Netcool/Micromuse/IBM SNMP monitoring agent) instead that was sitting in a blocked i/o wait state (biowait) and effectively preventing VxVM from starting up the rootdg and mounting the encapsulated volumes.<br />An svcadm disable ssmagent from the running OS, fixed the problem and system now boots just fine.<br /></systemdump".></p>
]]></content:encoded>
			<wfw:commentRss>http://realsysadmin.com/www/?feed=rss2&amp;p=24</wfw:commentRss>
		</item>
		<item>
		<title>Oracle 10G R2 and ASM in a Solaris Non-Global Zone</title>
		<link>http://realsysadmin.com/www/?p=23</link>
		<comments>http://realsysadmin.com/www/?p=23#comments</comments>
		<pubDate>Fri, 22 Aug 2008 17:16:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[ASM]]></category>

		<category><![CDATA[Container]]></category>

		<category><![CDATA[NonGlobal Zone]]></category>

		<category><![CDATA[Oracle 10G]]></category>

		<category><![CDATA[Solaris 10]]></category>

		<category><![CDATA[Zone]]></category>

		<guid isPermaLink="false">http://realsysadmin.com/www/?p=23</guid>
		<description><![CDATA[It&#8217;s been a while since I&#8217;ve made any posts. I am looking to migrate the site shortly (host it privately). But here&#8217;s one I thought I&#8217;d share with my thousands of anonymous readers.
Really folks&#8230;if you like what you read here&#8230;post a few lines. If you hate it&#8230;post that too!

Global Zone configuration
 

Add the oracle user [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been a while since I&#8217;ve made any posts. I am looking to migrate the site shortly (host it privately). But here&#8217;s one I thought I&#8217;d share with my thousands of anonymous readers.</p>
<p>Really folks&#8230;if you like what you read here&#8230;post a few lines. If you hate it&#8230;post that too!<br /><span class="anchor" id="line-4"></span><span class="anchor" id="line-5"></span>
<p class="line867"></p>
<h2 id="head-65deed54d3595eeb6f3105d7976c61c824751a87">Global Zone configuration</h2>
<p> <span class="anchor" id="line-6"></span><span class="anchor" id="line-7"></span>
<p class="line867"></p>
<h3 id="head-a02a8482906ea7bad0af66cd2b4af7e7114463a6">Add the oracle user and dba group</h3>
<p> <span class="anchor" id="line-8"></span><span class="anchor" id="line-9"></span>
<p class="line867"><span class="anchor" id="line-10"></span></p>
<pre>vistatst-01:$() # grep dba /etc/group<span class="anchor" id="line-11"></span>dba::600:<span class="anchor" id="line-12"></span>vistatst-01:$() # grep oracle /etc/passwd<span class="anchor" id="line-13"></span>oracle:x:101:600:Oracle DBA:/u01/app/oracle:/usr/bin/ksh<span class="anchor" id="line-14"></span></pre>
<p><span class="anchor" id="line-15"></span><span class="anchor" id="line-16"></span>
<p class="line867"></p>
<h3 id="head-9a3580d9c585a07708d557eb9000fdc93dd46ec1">Configure LUNs for Oracle ASM formatting</h3>
<p> <span class="anchor" id="line-17"></span><span class="anchor" id="line-18"></span>
<p class="line867"><span class="anchor" id="line-19"></span></p>
<pre>c4t6006016030C01C00EC2DC1FE8052DD11d0s2 is ASM disk...Let's inspect it's partition table...<span class="anchor" id="line-20"></span>       2      5    01          0 104852480 104852479<span class="anchor" id="line-21"></span>       6      0    00       2560 104849920 104852479<span class="anchor" id="line-22"></span><span class="anchor" id="line-23"></span>c4t6006016030C01C009698C4458152DD11d0s2 is ASM disk...Let's inspect it's partition table...<span class="anchor" id="line-24"></span>       2      5    01          0 104852480 104852479<span class="anchor" id="line-25"></span>       6      0    00       2560 104849920 104852479<span class="anchor" id="line-26"></span><span class="anchor" id="line-27"></span>c4t6006016030C01C0046A8487A8152DD11d0s2 is ASM disk...Let's inspect it's partition table...<span class="anchor" id="line-28"></span>       2      5    01          0 104852480 104852479<span class="anchor" id="line-29"></span>       6      0    00       2560 104849920 104852479<span class="anchor" id="line-30"></span><span class="anchor" id="line-31"></span>c4t6006016030C01C00CEF5BFAA8152DD11d0s2 is ASM disk...Let's inspect it's partition table...<span class="anchor" id="line-32"></span>       2      5    01          0 104852480 104852479<span class="anchor" id="line-33"></span>       6      0    00       2560 104849920 104852479<span class="anchor" id="line-34"></span><span class="anchor" id="line-35"></span>vistatst-01:$() #<span class="anchor" id="line-36"></span></pre>
<p><span class="anchor" id="line-37"></span><span class="anchor" id="line-38"></span>
<p class="line867"><img alt="(!)" src="http://sawiki.uscc.com/wiki/modern/img/idea.png" title="(!)" height="15" width="15" /> Here we have chosen to set up slice 6 as the &#8220;disk&#8221; with cylinder 0 being excluded by manually partitioning it. The starting sector count (as you can observe is 2560 instead of sector 0). <span class="anchor" id="line-39"></span><span class="anchor" id="line-40"></span></p>
<p class="line874">Make oracle:dba the owner of these LUNS. <span class="anchor" id="line-41"></span><span class="anchor" id="line-42"></span></p>
<p class="line867"><span class="anchor" id="line-43"></span></p>
<pre>vistatst-01:$() # for i in `vxdisk list|grep invalid|awk '{print $1}><span class="anchor" id="line-44"></span>lrwxrwxrwx   1 oracle   dba           67 Jul 15 16:50 /dev/rdsk/c4t6006016030C01C00EC2DC1FE8052DD11d0s2 -> ../../devices/scsi_vhci/ssd@g6006016030c01c00ec2dc1fe8052dd11:c,raw<span class="anchor" id="line-45"></span><span class="anchor" id="line-46"></span>lrwxrwxrwx   1 oracle   dba           67 Jul 15 16:50 /dev/rdsk/c4t6006016030C01C009698C4458152DD11d0s2 -> ../../devices/scsi_vhci/ssd@g6006016030c01c009698c4458152dd11:c,raw<span class="anchor" id="line-47"></span><span class="anchor" id="line-48"></span>lrwxrwxrwx   1 oracle   dba           67 Jul 15 16:50 /dev/rdsk/c4t6006016030C01C0046A8487A8152DD11d0s2 -> ../../devices/scsi_vhci/ssd@g6006016030c01c0046a8487a8152dd11:c,raw<span class="anchor" id="line-49"></span><span class="anchor" id="line-50"></span>lrwxrwxrwx   1 oracle   dba           67 Jul 15 16:50 /dev/rdsk/c4t6006016030C01C00CEF5BFAA8152DD11d0s2 -> ../../devices/scsi_vhci/ssd@g6006016030c01c00cef5bfaa8152dd11:c,raw<span class="anchor" id="line-51"></span></pre>
<p><span class="anchor" id="line-52"></span><span class="anchor" id="line-53"></span>
<p class="line874">And change the ownerships of the underlying files&#8230; <span class="anchor" id="line-54"></span><span class="anchor" id="line-55"></span></p>
<p class="line867"><span class="anchor" id="line-56"></span></p>
<pre>crw-r-----   1 oracle   dba      118, 426 Aug 14 13:41 devices/scsi_vhci/ssd@g6006016030c01c00ec2dc1fe8052dd11:c,raw<span class="anchor" id="line-57"></span>crw-r-----   1 oracle   dba      118, 418 Aug 14 13:41 devices/scsi_vhci/ssd@g6006016030c01c009698c4458152dd11:c,raw<span class="anchor" id="line-58"></span>crw-r-----   1 oracle   dba      118, 402 Aug 14 13:41 devices/scsi_vhci/ssd@g6006016030c01c0046a8487a8152dd11:c,raw<span class="anchor" id="line-59"></span>crw-r-----   1 oracle   dba      118, 434 Aug 14 13:41 devices/scsi_vhci/ssd@g6006016030c01c00cef5bfaa8152dd11:c,raw<span class="anchor" id="line-60"></span></pre>
<p><span class="anchor" id="line-61"></span><span class="anchor" id="line-62"></span>
<p class="line867"></p>
<h2 id="head-1661dbef7de891dd63c4b5de3b0c5eda2e27672f">Configure Solaris Non-Global Zone (NGZ)</h2>
<p> <span class="anchor" id="line-63"></span><span class="anchor" id="line-64"></span>
<p class="line867"><span class="anchor" id="line-65"></span></p>
<pre>vistatst-01:$() # zonecfg -z vistatst-01-z01 set limitpriv=def<span class="anchor" id="line-66"></span>ault,proc_priocntlvistatst-01:$() # zonecfg -z vistatst-01-z01 export<span class="anchor" id="line-67"></span>create -b<span class="anchor" id="line-68"></span>set zonepath=/zonefiles/vistatst-01-z01<span class="anchor" id="line-69"></span>set autoboot=true<span class="anchor" id="line-70"></span>set limitpriv=default,proc_priocntl<span class="anchor" id="line-71"></span>set ip-type=shared<span class="anchor" id="line-72"></span>add net<span class="anchor" id="line-73"></span>set address=10.10.10.119<span class="anchor" id="line-74"></span>set physical=ce0<span class="anchor" id="line-75"></span>end<span class="anchor" id="line-76"></span>add device<span class="anchor" id="line-77"></span>set match=/dev/rdsk/c4t6006016030C01C00EC2DC1FE8052DD11d0s6<span class="anchor" id="line-78"></span>end<span class="anchor" id="line-79"></span>add device<span class="anchor" id="line-80"></span>set match=/dev/dsk/c4t6006016030C01C00EC2DC1FE8052DD11d0s6<span class="anchor" id="line-81"></span>end<span class="anchor" id="line-82"></span>add device<span class="anchor" id="line-83"></span>set match=/dev/rdsk/c4t6006016030C01C009698C4458152DD11d0s6<span class="anchor" id="line-84"></span>end<span class="anchor" id="line-85"></span>add device<span class="anchor" id="line-86"></span>set match=/dev/dsk/c4t6006016030C01C009698C4458152DD11d0s6<span class="anchor" id="line-87"></span>end<span class="anchor" id="line-88"></span>add device<span class="anchor" id="line-89"></span>set match=/dev/rdsk/c4t6006016030C01C0046A8487A8152DD11d0s6<span class="anchor" id="line-90"></span>end<span class="anchor" id="line-91"></span>add device<span class="anchor" id="line-92"></span>set match=/dev/dsk/c4t6006016030C01C0046A8487A8152DD11d0s6<span class="anchor" id="line-93"></span>end<span class="anchor" id="line-94"></span>add device<span class="anchor" id="line-95"></span>set match=/dev/rdsk/c4t6006016030C01C00CEF5BFAA8152DD11d0s6<span class="anchor" id="line-96"></span>end<span class="anchor" id="line-97"></span>add device<span class="anchor" id="line-98"></span>set match=/dev/dsk/c4t6006016030C01C00CEF5BFAA8152DD11d0s6<span class="anchor" id="line-99"></span>end<span class="anchor" id="line-100"></span>add dataset<span class="anchor" id="line-101"></span>set name=vinmarttstpool<span class="anchor" id="line-102"></span>end<span class="anchor" id="line-103"></span>vistatst-01:$() #<span class="anchor" id="line-104"></span>vistatst-01:$() # zoneadm -z vistatst-01-z01 reboot<span class="anchor" id="line-105"></span></pre>
<p><span class="anchor" id="line-106"></span><span class="anchor" id="line-107"></span>
<p class="line867"><img alt="(!)" src="http://sawiki.uscc.com/wiki/modern/img/idea.png" title="(!)" height="15" width="15" /> Set up CSSD to start up<span style="text-decoration: underline;"></span><a href="http://sawiki.uscc.com/mywiki/OracleCRSSvcConfig"></a> <span class="anchor" id="line-108"></span><span class="anchor" id="line-109"></span></p>
<p class="line867"><img alt="/!\" src="http://sawiki.uscc.com/wiki/modern/img/alert.png" title="/!\" height="15" width="15" /> If CSSD doesn&#8217;t start up at this point &#8212; run the following command from <tt>$ORACLE_HOME/bin</tt> &#8212; <span class="anchor" id="line-110"></span><span class="anchor" id="line-111"></span></p>
<p class="line867"><span class="anchor" id="line-112"></span></p>
<pre>#./localconfig reset<span class="anchor" id="line-113"></span>vinmartst-01:$(bin) # ./localconfig reset<span class="anchor" id="line-114"></span>Successfully accumulated necessary OCR keys.<span class="anchor" id="line-115"></span>Creating OCR keys for user 'root', privgrp 'root'..<span class="anchor" id="line-116"></span>Operation successful.<span class="anchor" id="line-117"></span>Configuration for local CSS has been initialized<span class="anchor" id="line-118"></span><span class="anchor" id="line-119"></span>Adding to inittab<span class="anchor" id="line-120"></span>Aug 14 11:58:36 vinmartst-01 root: Oracle Cluster Synchronization Service starting by user request.<span class="anchor" id="line-121"></span>Startup will be queued to init within 30 seconds.<span class="anchor" id="line-122"></span>Checking the status of new Oracle init process...<span class="anchor" id="line-123"></span>Expecting the CRS daemons to be up within 600 seconds.<span class="anchor" id="line-124"></span>Aug 14 11:58:36 vinmartst-01 root: Cluster Ready Services completed waiting on dependencies.<span class="anchor" id="line-125"></span>CSS is active on these nodes.<span class="anchor" id="line-126"></span>        vinmartst-01<span class="anchor" id="line-127"></span>CSS is active on all nodes.<span class="anchor" id="line-128"></span>Oracle CSS service is installed and running under init(1M)<span class="anchor" id="line-129"></span></pre>
<p><span class="anchor" id="line-130"></span><span class="anchor" id="line-131"></span>
<p class="line874">Verify that cssd is running in the process table &#8212; <span class="anchor" id="line-132"></span><span class="anchor" id="line-133"></span></p>
<p class="line867"><span class="anchor" id="line-134"></span></p>
<pre>vinmartst-01:$(bin) # ps -ef|grep css<span class="anchor" id="line-135"></span>  oracle  9120  8207   0 11:58:36 ?           0:00 /u01/app/oracle/product/10.2.0/db_1/bin/ocssd.bin<span class="anchor" id="line-136"></span>    root  9220  8373   0 11:59:59 console     0:00 grep css<span class="anchor" id="line-137"></span></pre>
<p><span class="anchor" id="line-138"></span><span class="anchor" id="line-139"></span>
<p class="line874">Verify that the LUNs are visible to the NGZ &#8212; <span class="anchor" id="line-140"></span><span class="anchor" id="line-141"></span></p>
<p class="line867"><span class="anchor" id="line-142"></span></p>
<pre>vinmartst-01:$(.oracle) # ls -alrt /dev/rdsk<span class="anchor" id="line-143"></span>total 4<span class="anchor" id="line-144"></span>drwxr-xr-x   2 root     root         512 Aug 12 16:34 .<span class="anchor" id="line-145"></span>drwxr-xr-x  12 root     root        1024 Aug 14 11:57 ..<span class="anchor" id="line-146"></span>crw-r-----   1 oracle   dba      118, 422 Aug 14 13:46 c4t6006016030C01C009698C4458152DD11d0s6<span class="anchor" id="line-147"></span>crw-r-----   1 oracle   dba      118, 430 Aug 14 13:55 c4t6006016030C01C00EC2DC1FE8052DD11d0s6<span class="anchor" id="line-148"></span>crw-r-----   1 oracle   dba      118, 438 Aug 14 14:10 c4t6006016030C01C00CEF5BFAA8152DD11d0s6<span class="anchor" id="line-149"></span>crw-r-----   1 oracle   dba      118, 406 Aug 14 14:10 c4t6006016030C01C0046A8487A8152DD11d0s6<span class="anchor" id="line-150"></span></pre>
<p><span class="anchor" id="line-151"></span><span class="anchor" id="line-152"></span>
<p class="line867"><span class="anchor" id="line-153"></span></p>
<pre>vinmartst-01:$(.oracle) # ls -lart /dev/dsk<span class="anchor" id="line-154"></span>total 4<span class="anchor" id="line-155"></span>brw-r-----   1 oracle   dba      118, 430 Aug 12 16:34 c4t6006016030C01C00EC2DC1FE8052DD11d0s6<span class="anchor" id="line-156"></span>brw-r-----   1 oracle   dba      118, 438 Aug 12 16:34 c4t6006016030C01C00CEF5BFAA8152DD11d0s6<span class="anchor" id="line-157"></span>brw-r-----   1 oracle   dba      118, 422 Aug 12 16:34 c4t6006016030C01C009698C4458152DD11d0s6<span class="anchor" id="line-158"></span>brw-r-----   1 oracle   dba      118, 406 Aug 12 16:34 c4t6006016030C01C0046A8487A8152DD11d0s6<span class="anchor" id="line-159"></span>drwxr-xr-x   2 root     root         512 Aug 12 16:34 .<span class="anchor" id="line-160"></span>drwxr-xr-x  12 root     root        1024 Aug 14 11:57 ..<span class="anchor" id="line-161"></span></pre>
<p><span class="anchor" id="line-162"></span><span class="anchor" id="line-163"></span>
<p class="line867"><img alt="/!\" src="http://sawiki.uscc.com/wiki/modern/img/alert.png" title="/!\" height="15" width="15" /> Run Oracle Installer and do the rest of the stuff that needs to be done! <span class="anchor" id="line-164"></span><span class="anchor" id="line-165"></span><span class="anchor" id="line-166"></span></p>
<p class="line867">
<h2 id="head-dedbf13e653988d0fcbc6e4243ea0b2f74391d4e">References</h2>
<p> <span class="anchor" id="line-167"></span><span class="anchor" id="line-168"></span>
<ul>
<li>
<p class="line891"><a class="http" href="http://askdba.org/weblog/?p=126">http://askdba.org/weblog/?p=126</a> <span class="anchor" id="line-169"></span></p>
</li>
<li>
<p class="line891"><a class="http" href="http://askdba.org/weblog/?p=132">http://askdba.org/weblog/?p=132</a> <span class="anchor" id="line-170"></span></p>
</li>
<li>
<p class="line891"><a class="http" href="http://preview.tinyurl.com/5ukyuw">http://preview.tinyurl.com/5ukyuw</a> <span class="anchor" id="line-171"></span></p>
</li>
<li><span class="anchor" id="line-172"></span></li>
</ul>
<p><span class="anchor" id="bottom"></span></p>
]]></content:encoded>
			<wfw:commentRss>http://realsysadmin.com/www/?feed=rss2&amp;p=23</wfw:commentRss>
		</item>
		<item>
		<title>Dry-running Splunk &#8212; &#34;The IT Search Engine&#34; - I</title>
		<link>http://realsysadmin.com/www/?p=22</link>
		<comments>http://realsysadmin.com/www/?p=22#comments</comments>
		<pubDate>Fri, 23 May 2008 18:45:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://realsysadmin.com/www/?p=22</guid>
		<description><![CDATA[This is a study we&#8217;d (a former colleague of mine and yours truly) done last year of a log analysis tool called SplunkWhat you will read in this article are the results/excerpts of that study.
Some of the questions we asked are as follows &#8211;
  



 Why use a log analysis tool?
What do most shops [...]]]></description>
			<content:encoded><![CDATA[<p>This is a study we&#8217;d (a former colleague of mine and yours truly) done last year of a log analysis tool called <a href="http://www.splunk.com/">Splunk</a><br />What you will read in this article are the results/excerpts of that study.</p>
<p>Some of the questions we asked are as follows &#8211;</p>
<p:colorscheme colors="#ffffff,#000000,#b5b5b5,#2a8dba,#2a8dba,#cc0000,#fcf600,#549117">  </p:colorscheme>
<div shape="_x0000_s1026" style="">
<div class="O" style=""><span style=""><span style=";font-family:Wingdings;font-size:45;"  ><!--[if !ppt]--><img src="file:///C:/DOCUME%7E1/ch1dlah1/LOCALS%7E1/Temp/msohtml1/01/clip_bullet001.gif" alt="*" style="position: absolute; top: 33.33%; left: -2.5%; width: 1.25%; height: 28.57%;" /></span></span></div>
<ul>
<li> Why use a log analysis tool?</li>
<li>What do most shops use</li>
<li>What does a tool such as splunk buy us (as an IT shop)</li>
<li>What are it&#8217;s benefits and pit-falls?</li>
<li>What is the cost of ownership?</li>
</ul>
<p><span style="font-weight: bold;">Why use a log-analysis tool?</span></p>
<p>The biggest reason to use such a tool would be to move from a Reactive to Proactive Systems Management paradigm</p>
<p>With the number of systems (about 900+ *nix servers in that shop) and the criticality (many systems cost millions of dollars in down-time) of availability of these, it is imperative to find a tool that can actually be used quickly and effortlessly to analyze valuable log information</p>
<p>If such a tool can look at various layers of a &#8220;delivered stack&#8221; (aka hardware, os, application, network, san, etc), it would be a gold-mine by virtue of being able to link the stack &#8220;end-to-end&#8221; and by speeding up the analysis process.</p>
<p><span style="font-weight: bold;">What do most shops use?</span></p>
<p>Most shops I&#8217;ve been in do log analysis like this &#8211;</p>
<p>a) Don&#8217;t do any log analysis unless absolutely required. And if it is required, admins log into the individual servers and parse through the logs using vi (or using a combination of grep/awk/sed if they are script-savvy)</p>
<p>b) Have a centralized ssh (or god forbid! rsh) trusted admin host from where they launch a log parser script that filters specific key words and that gets emailed to a mailbox or to the individual admins&#8217; email boxes</p>
<p>c) have a centralized log host where they run a script akin to the one mentioned above</p>
<p>I&#8217;ve worked in shops of varying sizes &#8212; from a ISP/Telecom giant who ran 4000+ sun servers to a 50-server tiny sweatshop. Most of the shops I&#8217;ve been in fall some where in between (with hosts ranging from 200 - 1000 in number). That&#8217;s a lot of hosts to manage and a lot of logging that needs to be parsed.</p>
<p><span style="font-weight: bold;">What does a log-analysis tool buy an IT shop?</span></p>
<p>You&#8217;ve all probably thought about this &#8212; a centralized, easy-to-use log analysis tool buys an IT shop valuable time!</p>
<p><span style="font-weight: bold;">So what does Splunk claim to do?</p>
<p></span>In there own words &#8211;</p>
<p>“The Splunk Server indexes IT data from ANY source. No need to configure it for specific formats, write regular expressions or change your logging output. Search mountains of data by time, keywords, type of event, source, host or relationships to other events. “</p>
<p>Some key features of Splunk:</p>
<ul>
<li>Universal Indexing</li>
<li>Can index terabytes of data all from one place</li>
<li>Capable of indexing approx. 22,000 events/second at density of 150 bytes/event.</li>
</ul>
<p><span style="font-weight: bold;">How does splunk acquire data?</p>
<p></span>Access data from any live source:
<ul>
<li>Mounted files: NFS/SMB, CIFS/AFP, NAS/SAN, FIFO, </li>
<li>Remote files: rsync, scp/ftp/rcp, </li>
<li>Network ports: UDP &amp; TCP, syslog/syslog-ng, log4j/log4php, JMX/JMS, SNMP </li>
<li>Databases: SQL/ODBC </li>
<li>Splunk Servers: Access data locally on production hosts and forward it to another Splunk Server over SSL/TCP</li>
</ul>
<p>The actual evaluation results will be the next article.</div>
]]></content:encoded>
			<wfw:commentRss>http://realsysadmin.com/www/?feed=rss2&amp;p=22</wfw:commentRss>
		</item>
		<item>
		<title>Servers running on Hot Air</title>
		<link>http://realsysadmin.com/www/?p=21</link>
		<comments>http://realsysadmin.com/www/?p=21#comments</comments>
		<pubDate>Tue, 01 Apr 2008 17:56:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://realsysadmin.com/www/?p=21</guid>
		<description><![CDATA[This infoworld article caught my eye and induced some much needed mirth.
http://www.infoworld.com/article/08/04/01/14FE-april-fool-hp-windy_1.html
]]></description>
			<content:encoded><![CDATA[<p>This infoworld article caught my eye and induced some much needed mirth.</p>
<p>http://www.infoworld.com/article/08/04/01/14FE-april-fool-hp-windy_1.html</p>
]]></content:encoded>
			<wfw:commentRss>http://realsysadmin.com/www/?feed=rss2&amp;p=21</wfw:commentRss>
		</item>
		<item>
		<title>NFS HA Service Group in VCS 5.x on Solaris 10</title>
		<link>http://realsysadmin.com/www/?p=20</link>
		<comments>http://realsysadmin.com/www/?p=20#comments</comments>
		<pubDate>Fri, 07 Mar 2008 19:17:00 +0000</pubDate>
		<dc:creator>admin</dc:creator>
		
		<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://realsysadmin.com/www/?p=20</guid>
		<description><![CDATA[ Remember to delete the service maps for NFS using svccfg command
With Solaris 10 and VCS 5.x, nfsd HAS TO run under VCS control. In order to achieve that, the following needs ton happen (on every node that will host the NFS share) &#8212; 

Disable/Delete the NFS services from SMF
 

# svccfg delete -f svc:/network/nfs/server:default# [...]]]></description>
			<content:encoded><![CDATA[<p><img alt="/!\" src="http://ilscha01-ss-01.uscc.com/wiki/modern/img/alert.png" title="/!\" height="15" width="15" /> Remember to delete the service maps for NFS using <tt>svccfg</tt> command
<p class="line862">With Solaris 10 and VCS 5.x, <tt>nfsd</tt> <strong>HAS TO</strong> run under VCS control. In order to achieve that, the following needs ton happen (on every node that will host the NFS share) &#8212; <span class="anchor" id="line-6"></span><span class="anchor" id="line-7"></span><span class="anchor" id="line-8"></span></p>
<p class="line867">
<h2 id="head-cf34df017660f18f2efd67a95e54d026d5b07748"><span style="font-size:100%;">Disable/Delete the NFS services from SMF</span></h2>
<p> <span class="anchor" id="line-9"></span>
<p class="line867"><span class="anchor" id="line-10"></span></p>
<pre><span class="anchor" id="line-11"></span># svccfg delete -f svc:/network/nfs/server:default<span class="anchor" id="line-12"></span># svccfg delete -f svc:/network/nfs/status:default<span class="anchor" id="line-13"></span># svccfg delete -f svc:/network/nfs/nlockmgr:default<span class="anchor" id="line-14"></span></pre>
<p><span class="anchor" id="line-15"></span><span class="anchor" id="line-16"></span>
<p class="line867"></p>
<h2 id="head-516c198622c71546ff8af8ff6fa0a19b676a3e50"><span style="font-size:100%;">Manually restart lockd, statd and automountd</span></h2>
<p> <span class="anchor" id="line-17"></span><span class="anchor" id="line-18"></span>
<p class="line867"><span class="anchor" id="line-19"></span></p>
<pre># /usr/lib/nfs/lockd<span class="anchor" id="line-20"></span># /usr/lib/nfs/statd<span class="anchor" id="line-21"></span># /usr/lib/fs/autofs/automount<span class="anchor" id="line-22"></span># /usr/lib/autofs/automountd<span class="anchor" id="line-23"></span></pre>
<p><span class="anchor" id="line-24"></span><span class="anchor" id="line-25"></span>
<p class="line867"><strong>NOTE:</strong> In this example (see below), the NFSgrp is configured only for one node. To add another node, add the node name and number to <tt>SystemList</tt> and <tt>AutoStartList</tt> <span class="anchor" id="line-26"></span><span class="anchor" id="line-27"></span></p>
<pre>       group NFSgrp (               SystemList = { hostA = 0 }               AutoStartList = { hostA }<span class="anchor" id="line-30"></span>        )<span class="anchor" id="line-31"></span><span class="anchor" id="line-32"></span>        DiskGroup nfsDG (<span class="anchor" id="line-33"></span>               Critical = 0<span class="anchor" id="line-34"></span>               DiskGroup = testdg<span class="anchor" id="line-35"></span>        )<span class="anchor" id="line-36"></span><span class="anchor" id="line-37"></span>        Volume nfsVOL (<span class="anchor" id="line-38"></span>              Critical = 0<span class="anchor" id="line-39"></span>              Volume = testnfshome<span class="anchor" id="line-40"></span>              DiskGroup = testdg<span class="anchor" id="line-41"></span>        )<span class="anchor" id="line-42"></span><span class="anchor" id="line-43"></span><span class="anchor" id="line-44"></span>        IP IPres (<span class="anchor" id="line-45"></span>                Device = bge0               Address = "10.10.10.22"<span class="anchor" id="line-47"></span>                NetMask = "255.255.255.0"<span class="anchor" id="line-48"></span>        )<span class="anchor" id="line-49"></span>        Mount Mountres (<span class="anchor" id="line-50"></span>                MountPoint = "/nfs/testnfs"<span class="anchor" id="line-51"></span>                BlockDevice = "/dev/vx/dsk/testdg/testnfshome"<span class="anchor" id="line-52"></span>                FSType = vxfs<span class="anchor" id="line-53"></span>                MountOpt = rw<span class="anchor" id="line-54"></span>                FsckOpt = "-y"<span class="anchor" id="line-55"></span>        )<span class="anchor" id="line-56"></span>        NFS NFSres (<span class="anchor" id="line-57"></span>                Nservers = 16<span class="anchor" id="line-58"></span>        )<span class="anchor" id="line-59"></span><span class="anchor" id="line-60"></span>        NFSLock NFSLockres (<span class="anchor" id="line-61"></span>                PathName = "/nfs/testnfs"<span class="anchor" id="line-62"></span>        )<span class="anchor" id="line-63"></span>        NIC NICres (<span class="anchor" id="line-64"></span>                Device = bge0<span class="anchor" id="line-65"></span>        )<span class="anchor" id="line-66"></span>        Share Shareres (<span class="anchor" id="line-67"></span>                PathName = "/nfs/testnfs"<span class="anchor" id="line-68"></span>                Options = "-o rw -d \"test home dirs\""<span class="anchor" id="line-69"></span>        )<span class="anchor" id="line-70"></span><span class="anchor" id="line-71"></span><span class="anchor" id="line-72"></span><span class="anchor" id="line-73"></span>        // IPres requires Shareres<span class="anchor" id="line-74"></span>        IPres requires NICres<span class="anchor" id="line-75"></span>        nfsVOL requires nfsDG<span class="anchor" id="line-76"></span>        Mountres requires nfsVOL<span class="anchor" id="line-77"></span>        NFSLockres requires Mountres<span class="anchor" id="line-78"></span>        Shareres requires NFSLockres<span class="anchor" id="line-79"></span>        Shareres requires NFSres<span class="anchor" id="line-80"></span><span class="anchor" id="line-81"></span>        // resource dependency tree<span class="anchor" id="line-82"></span>        //<span class="anchor" id="line-83"></span>        // group NFSgrp<span class="anchor" id="line-84"></span>        // {<span class="anchor" id="line-85"></span>        // IP IPres<span class="anchor" id="line-86"></span>        //      {<span class="anchor" id="line-87"></span>        //      NIC NICres<span class="anchor" id="line-88"></span>        //      Share Shareres<span class="anchor" id="line-89"></span>        //          {<span class="anchor" id="line-90"></span>        //          NFSLock NFSLockres<span class="anchor" id="line-91"></span>        //              {<span class="anchor" id="line-92"></span>        //              Mount Mountres<span class="anchor" id="line-93"></span>        //                  {<span class="anchor" id="line-94"></span>        //                  Volume nfsVOL<span class="anchor" id="line-95"></span>        //                      {<span class="anchor" id="line-96"></span>        //                      DG nfsDG<span class="anchor" id="line-97"></span>        //                      }<span class="anchor" id="line-98"></span>        //                  }<span class="anchor" id="line-99"></span>        //              }<span class="anchor" id="line-100"></span>        //          NFS NFSres<span class="anchor" id="line-101"></span>        //          }<span class="anchor" id="line-102"></span>        //       }<span class="anchor" id="line-103"></span>        // }</pre>
]]></content:encoded>
			<wfw:commentRss>http://realsysadmin.com/www/?feed=rss2&amp;p=20</wfw:commentRss>
		</item>
	</channel>
</rss>
