<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Colocation to Virtualization &#187; centos</title>
	<atom:link href="http://blog.colovirt.com/tag/centos/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.colovirt.com</link>
	<description>and linux between</description>
	<lastBuildDate>Thu, 05 Jan 2012 08:00:43 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<cloud domain='blog.colovirt.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>http://0.gravatar.com/blavatar/afd0d00d02b5abc67acf29066e3d1e3b?s=96&#038;d=http%3A%2F%2Fs2.wp.com%2Fi%2Fbuttonw-com.png</url>
		<title>Colocation to Virtualization &#187; centos</title>
		<link>http://blog.colovirt.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="http://blog.colovirt.com/osd.xml" title="Colocation to Virtualization" />
	<atom:link rel='hub' href='http://blog.colovirt.com/?pushpress=hub'/>
		<item>
		<title>Storage, SAN, Linux: EMC PowerPath Configuration On Cisco UCS</title>
		<link>http://blog.colovirt.com/2010/05/04/storage-san-linux-emc-powerpath-configuration-on-cisco-ucs/</link>
		<comments>http://blog.colovirt.com/2010/05/04/storage-san-linux-emc-powerpath-configuration-on-cisco-ucs/#comments</comments>
		<pubDate>Tue, 04 May 2010 14:39:42 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[EMC]]></category>
		<category><![CDATA[Filesystems]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[SAN (Storage Area Network)]]></category>
		<category><![CDATA[boot from san]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[EMCpower]]></category>
		<category><![CDATA[EMCpower.LINUX]]></category>
		<category><![CDATA[emcpowera1]]></category>
		<category><![CDATA[emcpreg]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[fnic]]></category>
		<category><![CDATA[key]]></category>
		<category><![CDATA[license]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[path]]></category>
		<category><![CDATA[paths]]></category>
		<category><![CDATA[Power Path]]></category>
		<category><![CDATA[powermt]]></category>
		<category><![CDATA[powerpath]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[san]]></category>
		<category><![CDATA[storage]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=707</guid>
		<description><![CDATA[Storage, SAN, Linux: EMC PowerPath Configuration On Cisco UCS<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=707&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The following is a walk through of installing EMC PowerPath software on RedHat based Linux hosts (CentOS/Fedora).  This is required to fully utilize multiple paths to EMC SANs.  The test server used here is a Cisco UCS B250-M1 blade running FCOE over 10gb Ethernet.  The configuration steps work for ISCSI, Fiber Channel, and FCOE connectivity to Clariion systems.</p>
<p><strong>First, copy the RPM installation package over to the server.  Below shows the package to be installed.</strong></p>
<pre>[root@test_server01 user01]# ll
total 7036
-rw-r--r-- 1 user01 user01 7191661 Apr 27 09:24 EMCpower.LINUX-5.3.1.00.00-111.rhel5.x86_64.rpm</pre>
<p><strong>Install the package via &#8220;rpm -i&#8221;.<span id="more-707"></span></strong></p>
<pre>[root@test_server01 user01]# rpm -i EMCpower.LINUX-5.3.1.00.00-111.rhel5.x86_64.rpm
All trademarks used herein are the property of their respective owners.
NOTE:License registration is not required to manage the CLARiiON AX series array.</pre>
<p><strong>Before powerpath can be used, a license key must be installed.</strong></p>
<pre>[root@test_server01 user01]# emcpreg -list
unable to open license key file: No such file or directory</pre>
<p><strong>Overview of the &#8220;emcpreg -add&#8221; syntax.</strong></p>
<pre>[root@test_server01 user01]# emcpreg -add
Missing option parameter.
Usage:
    emcpreg [opts] -add key [key ...]
    emcpreg [opts] -remove key [key ...]
    emcpreg [opts] -check key [key ...]
    emcpreg [opts] -list
    emcpreg [opts] -edit
    emcpreg [opts] -install
Options:
    -f file     license file</pre>
<p><strong>Now we add the license key to powerpath.  The following key is fake!  You must obtain yours from EMC.</strong></p>
<pre>[root@test_server01 user01]# emcpreg -add AGE4-DFD3-89842-DSAF-JIJ0-WKG50
1 key(s) successfully added.

<strong>Make sure the license was installed correctly.</strong>
[root@test_server01 user01]# emcpreg -list

Key AGE4-DFD3-89842-DSAF-JIJ0-WKG50
  Product: <strong>PowerPath</strong>
  Capabilities: <strong>All</strong>
[root@test_server01 user01]#</pre>
<p><strong>Next, start the Power Path service.</strong></p>
<pre>[root@test_server01 user01]# /etc/init.d/PowerPath start
Starting PowerPath:  done</pre>
<p><strong>Display the current paths to storage via &#8220;powermt&#8221;.  Since this server is booting from SAN and just being installed, there is currently only one path to storage.</strong></p>
<pre>[root@test_server01 ~]# powermt display dev=all
Pseudo name=emcpowera
CLARiiON ID=AXE00515480482 [test_server01_ucs]
Logical device ID=15618646804648SDSDFW84FW4894949 [test_server01_ucs_boot]
state=alive; policy=CLAROpt; priority=0; queued-IOs=0
Owner: default=Unknown, current=SP A    Array failover mode: 1
==============================================================================
---------------- Host ---------------   - Stor -   -- I/O Path -  -- Stats ---
###  HW Path                I/O Paths    Interf.   Mode    State  Q-IOs Errors
==============================================================================
   0 fnic                      sda       SP A0     active  alive      0      0</pre>
<p>Now that powerpath is installed, we need to edit fstab to boot off of the Power Path device.</p>
<p>Origional fstab using labels for &#8220;/boot&#8221;.</p>
<pre>/dev/lvm/root           /                       ext3    defaults        1 1
/dev/lvm/usr            /usr                    ext3    defaults        1 2
/dev/lvm/app            /app                    ext3    defaults        1 2
/dev/lvm/home           /home                   ext3    defaults        1 2
/dev/lvm/var            /var                    ext3    defaults        1 2
/dev/lvm/vartmp         /var/tmp                ext3    defaults        1 2
/dev/lvm/UsrLocal       /usr/local              ext3    defaults        1 2
LABEL=/boot             /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=SWAP-sda3         swap                    swap    defaults        0 0</pre>
<p><strong>Below is the edited fstab with &#8220;LABEL=/boot&#8221; commented out and /boot changed to use &#8220;/dev/emcpowera1&#8243;</strong></p>
<pre>[root@test_server01 ~]# vi /etc/fstab
/dev/lvm/root           /                       ext3    defaults        1 1
/dev/lvm/usr            /usr                    ext3    defaults        1 2
/dev/lvm/app            /app                    ext3    defaults        1 2
/dev/lvm/home           /home                   ext3    defaults        1 2
/dev/lvm/var            /var                    ext3    defaults        1 2
/dev/lvm/vartmp         /var/tmp                ext3    defaults        1 2
/dev/lvm/UsrLocal       /usr/local              ext3    defaults        1 2
/dev/emcpowera1         /boot                   ext3    defaults        0 0
#LABEL=/boot             /boot                   ext3    defaults        1 2
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
LABEL=SWAP-sda3         swap                    swap    defaults        0 0</pre>
<p><strong>Filesystem options were changed to &#8220;0 0&#8243; on emcpowera due to RedHat trying to do filesystem scans before the Power Path driver is started.</strong></p>
<p><strong>All paths now need to be zoned in the fiber switch, initiators registered in Navisphere, and paths added to the host in it&#8217;s storage group.  This will not be covered here.</strong></p>
<p><strong>After zoning both paths on one switch, &#8220;powermt&#8221; now shows a path to both Clariion SPA and SPB.  If not, try either stopping and restartaring &#8220;/etc/init.d/PowerPath&#8221; or restarting the server.</strong></p>
<pre>[root@test_server01 ~]# powermt display dev=all
Pseudo name=emcpowera
CLARiiON ID=AXE00515480482 [test_server01_ucs]
Logical device ID=15618646804648SDSDFW84FW4894949 [test_server01_ucs_boot]
state=alive; policy=CLAROpt; priority=0; queued-IOs=0
Owner: default=SP B, current=SP A       Array failover mode: 1
==============================================================================
---------------- Host ---------------   - Stor -   -- I/O Path -  -- Stats ---
###  HW Path                I/O Paths    Interf.   Mode    State  Q-IOs Errors
==============================================================================
   0 fnic                      sdc       SP B1     active  alive      0      0
   0 fnic                      sdd       SP A0     active  alive      0      0</pre>
<p><strong>Configuration has now been completed on fiber switch 2 and both SPA and SPB in the Clariion.  Reboot the server.  Again, &#8220;powermt&#8221; is used to list the paths.</strong></p>
<pre>[root@test_server01 ~]# powermt display dev=all
Pseudo name=emcpowera
CLARiiON ID=AXE00515480482 [test_server01_ucs]
Logical device ID=15618646804648SDSDFW84FW4894949 [test_server01_ucs_boot]
state=alive; policy=CLAROpt; priority=0; queued-IOs=0
Owner: default=SP B, current=SP B       Array failover mode: 1
==============================================================================
---------------- Host ---------------   - Stor -   -- I/O Path -  -- Stats ---
###  HW Path                I/O Paths    Interf.   Mode    State  Q-IOs Errors
==============================================================================
   0 fnic                      sdc       SP B1     active  alive      0      0
   0 fnic                      sdd       SP A0     active  alive      0      0
   1 fnic                      sde       SP B0     active  alive      0      0
   1 fnic                      sdf       SP A1     active  alive      0      0</pre>
<p><strong>From above, you can see that we now have 4 paths definied.  Both fnic interfaces can see SPA and SPB.  Each fnic is attached to a seperage fiber switch, so we have redundant paths to both Clariion heads (SP&#8217;s).  Once rebooted, the server should load fine with no issues and see all paths via powermt.</strong></p>
<p><strong>Notes:  &#8220;/boot&#8221; is the storage label used in this example.  If your mount point is different, modify it&#8217;s entry instead.  &#8220;/dev/emcpowera1&#8243; is used since there is only one LUN mapped to this host.  Like anything else, if there are more than one, each would have it&#8217;s own device.<br />
</strong></p>
<br />Filed under: <a href='http://blog.colovirt.com/category/san-storage-area-network/emc-san-storage-area-network/'>EMC</a>, <a href='http://blog.colovirt.com/category/filesystems/'>Filesystems</a>, <a href='http://blog.colovirt.com/category/linux/'>Linux</a>, <a href='http://blog.colovirt.com/category/san-storage-area-network/'>SAN (Storage Area Network)</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/707/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/707/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/707/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/707/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/707/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/707/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/707/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/707/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/707/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/707/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/707/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/707/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/707/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/707/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=707&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2010/05/04/storage-san-linux-emc-powerpath-configuration-on-cisco-ucs/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux: Cat And Tac &#8211; Reverse File Browsing</title>
		<link>http://blog.colovirt.com/2010/04/22/linux-cat-and-tac-reverse-file-browsing/</link>
		<comments>http://blog.colovirt.com/2010/04/22/linux-cat-and-tac-reverse-file-browsing/#comments</comments>
		<pubDate>Thu, 22 Apr 2010 14:49:22 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[cat]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[log]]></category>
		<category><![CDATA[log files]]></category>
		<category><![CDATA[more]]></category>
		<category><![CDATA[pipe]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[reverse]]></category>
		<category><![CDATA[tac]]></category>
		<category><![CDATA[tail]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=690</guid>
		<description><![CDATA[Linux: Cat And Tac - Reverse File Browsing.<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=690&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I always wind up forgetting the &#8220;tac&#8221; command, but it is definitely useful!  Normally when I am trying to track down issues, the command usually winds up looking like</p>
<pre>[root@tsthost01 log]# tail -50 /var/log/messages | more
Apr 21 14:27:58 t1ps-db01 snmpd[2936]: Received SNMP packet(s) from UDP: [127.0.10.77]
Apr 21 14:28:13 127.0.10.99 last message repeated 9 times
Apr 21 14:28:13 127.0.10.99 snmpd[2291]: Connection from UDP: [127.0.10.77]
Apr 21 14:28:13 127.0.10.99 snmpd[2291]: Received SNMP packet(s) from UDP: [127.0.10.77]
Apr 21 14:28:13 127.0.10.99 snmpd[2291]: Connection from UDP: [127.0.10.77]
Apr 21 14:28:13 127.0.10.99 snmpd[2291]: Received SNMP packet(s) from UDP: [127.0.10.77]
Apr 21 14:28:13 127.0.10.99 snmpd[2291]: Connection from UDP: [127.0.10.77]
Apr 21 14:28:19 127.0.10.81 last message repeated 18 times
Apr 21 14:28:25 127.0.10.26 MultiModemiSMS last message repeated 2 time(s)
... truncated
--More--</pre>
<p>Then I scroll through the results and how what I am looking for is in those 50 linues.  Unfortunately the information nornally is not and I re-run the command adding &#8220;-100&#8243; or &#8220;-200&#8243; to replace the &#8220;-50&#8243;.  That is definitely not the best way to do it.<span id="more-690"></span></p>
<p>The better way for searching from the end of large files is to use &#8220;tac&#8221; instead of &#8220;cat&#8221; or tail.  It might be obvious, but &#8220;tac&#8221; is just &#8220;cat&#8221; reversed.  Bellow are from the man pages of each command</p>
<pre>NAME       cat - concatenate files and print on the standard output

NAME       tail - output the last part of files

NAME       tac - concatenate and print files in reverse</pre>
<p>Below is an example of cat used to read a file.</p>
<pre>root@kdesk-l:~# cat GreenEggs
Do you like
green eggs and ham?
I do not like them, Sam-I-am.
I do not like
green eggs and ham.

Would you like them
here or there?

I would not like them
here or there.
I would not like them anywhere.
</pre>
<p>Next is tac reading the same file.  Notice the content has been read in reverse.</p>
<pre>root@kdesk-l:~# tac GreenEggs
I would not like them anywhere.
here or there.
I would not like them

here or there?
Would you like them

green eggs and ham.
I do not like
I do not like them, Sam-I-am.
green eggs and ham?
Do you like
</pre>
<p>Hopefully you can see some benefit to using this, especially in conjunction with the &#8220;more&#8221; command.</p>
<pre>[root@tsthost01 log]# tac messages | more</pre>
<p>Below are some schenarios that tac would be good for<br />
- Going through log files from newest events to old<br />
- Reviewing Java error log files (normally waaayyyyy to much information in those)<br />
- Checking mailserver or DNS server logs<br />
- When needing to go through a file without knowing exactly what you need to use &#8220;grep&#8221; to search for</p>
<p>Notes:  The &#8220;tac&#8221; command is pretty much standard issue on Linux based systems. I tested this on RedHat, CentOS, and Ubuntu</p>
<br />Filed under: <a href='http://blog.colovirt.com/category/linux/'>Linux</a>  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/690/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/690/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/690/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/690/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/690/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/690/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/690/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/690/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=690&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2010/04/22/linux-cat-and-tac-reverse-file-browsing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>VMware, Linux: Install VMware Tools On RedHat Based Systems</title>
		<link>http://blog.colovirt.com/2010/01/12/vmware-linux-install-vmware-tools-on-redhat-based-systems/</link>
		<comments>http://blog.colovirt.com/2010/01/12/vmware-linux-install-vmware-tools-on-redhat-based-systems/#comments</comments>
		<pubDate>Tue, 12 Jan 2010 18:58:20 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[VMWare]]></category>
		<category><![CDATA[cdrom]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[drivers]]></category>
		<category><![CDATA[esx]]></category>
		<category><![CDATA[esxi]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[rh]]></category>
		<category><![CDATA[rpm]]></category>
		<category><![CDATA[rpm -i]]></category>
		<category><![CDATA[tools]]></category>
		<category><![CDATA[vmware-config-tools]]></category>
		<category><![CDATA[vmware-config-tools.pl]]></category>
		<category><![CDATA[vSphere]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=662</guid>
		<description><![CDATA[VMware, Linux: Install VMware Tools On RedHat Based Systems<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=662&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p><strong>The following is a quick overview of installing VMware Tools on RedHat, CentOS, and Fedora systems.  Specifically for VMware ESX, ESXi, and vSphere systems.</strong></p>
<p><strong>First, go into the VMware console and right-click on the VM (Virtual Machine) that you are going to install VMware tools on.  Select &#8220;Install/Upgrade VMware Tools&#8221; option from the list.  Below is a screen shot of the menu.</strong><strong></p>
<div id="attachment_664" class="wp-caption alignnone" style="width: 252px"><strong><a href="http://colovirt.files.wordpress.com/2010/01/vmwtools.jpg"><img class="size-full wp-image-664" title="VMware Tools Menu" src="http://colovirt.files.wordpress.com/2010/01/vmwtools.jpg?w=497" alt=""   /></a></strong><p class="wp-caption-text">VMware Tools Menu</p></div>
<p><span id="more-662"></span>By default, most CDROM devices are symbolically linked to /dev/cdrom by the operating system.</strong></p>
<p>Just in case, you can search the messages file to see the actual device.  This is needed only if /dev/cdrom is not automatically linked or you have setup multiple cdrom devices on the VM (Virtual Machine).</p>
<pre>[root@RHserver01 media]# cat /var/log/messages | grep CDROM
Jan 10 10:59:03 RHserver01 kernel: hda: VMware Virtual IDE CDROM Drive, ATAPI CD/DVD-ROM drive</pre>
<p><!--more--><strong>From above, you can see that the actual device is hda, specifically /dev/hda.  If you are just curious you can do an &#8220;ll&#8221; on the /dev/cdrom device to see where is it linked to.  In this case again, it&#8217;s going to hda.</strong></p>
<pre>[root@RHserver01 ~]# ll /dev/cdrom
lrwxrwxrwx 1 root root 3 Jan 12 13:18 /dev/cdrom -&gt; hda</pre>
<p><strong>Mount the cdrom device to an empty or non-mounted point on the filesystem.  Here I use the defaultly present /media location.</strong></p>
<pre>[root@RHserver01 /]# mount /dev/cdrom /media/
mount: block device /dev/cdrom is write-protected, mounting read-only</pre>
<p><strong>Below we move into the /media location using &#8220;cd&#8221;.</strong></p>
<pre>[root@RHserver01 /]# cd /media/</pre>
<p><strong>&#8220;ls&#8221; is used to display what files are present.  Here we see both an RPM (native RedHat based OS package) and a gzip archive.  If you were installing VMware Tools on a non-RedHat derived distribution, you would use the .gz package.</strong></p>
<pre>[root@RHserver01 media]# ls
VMwareTools-3.5.0-143128.i386.rpm  VMwareTools-3.5.0-143128.tar.gz</pre>
<p><strong>Since we are on RedHat, this is simple.  Pass &#8220;-i&#8221; to the rpm command then the package name to be installed.</strong></p>
<pre>[root@RHserver01 media]# rpm -i VMwareTools-3.5.0-143128.i386.rpm</pre>
<p><strong>Immediately after installing the RPM, you might see the following errors to your console, or in /var/log/messages.</strong></p>
<pre>Jan 12 13:15:07 RHserver01 kernel: VFS: busy inodes on changed media or resized disk hda
Jan 12 13:15:07 RHserver01 kernel: VFS: busy inodes on changed media or resized disk hda</pre>
<p><strong>If you are getting these to the console, it makes it hard to continue working form the command line.  This is easy to stop.  First, cd out of the /media/ mount point</strong></p>
<pre>[root@RHserver01 ~]# cd ..</pre>
<p><strong>Next, unmount the cdrom device.  After doing so, the messages will stop</strong></p>
<pre>[root@RHserver01 ~]# umount /dev/cdrom</pre>
<p><strong>The &#8220;vmware-config-tools.pl&#8221; command must be ran from the VMware console.  Below is the output you would get if it was tried through a remote session (SSH).</strong></p>
<pre>[root@RHserver01 ~]# vmware-config-tools.pl

It looks like you are trying to run this program in a remote session. This
program will temporarily shut down your network connection, so you should only
run it from a local console session. Are you SURE you want to continue?
[no]
Please re-run this program from a local console shell.
Execution aborted.</pre>
<p><strong>There is a good reason for this.  vmware-config-tools.pl drops networking on the server to install the VMware network drives.  In doing so, you loose remote connectivity. </strong></p>
<p><strong>Below shows the actual output from vmware-config-tools.pl on the console</strong></p>
<pre>[root@RHserver01 ~]# vmware-config-tools.pl
Shutting down interface eth0:                              [  OK  ]
Shutting down loopback interface:                          [  OK  ]
Stopping VMware Tools services in the virtual machine:
   Guest operating system daemon:                          [  OK  ]
   Unmounting HGFS shares:                                 [  OK  ]
   Guest filesystem driver:                                [  OK  ]
   Guest memory manager:                                   [  OK  ]
Trying to find a suitable vmmemctl module for your running kernel.

The module bld-2.6.18-8.el5-i686smp-RHEL5 loads perfectly in the running
kernel.

Trying to find a suitable vmhgfs module for your running kernel.

The module bld-2.6.18-8.el5-i686smp-RHEL5 loads perfectly in the running
kernel.

Trying to find a suitable vmxnet module for your running kernel.

The module bld-2.6.18-8.el5-i686smp-RHEL5 loads perfectly in the running
kernel.

Trying to find a suitable vmblock module for your running kernel.

The module bld-2.6.18-8.el5-i686smp-RHEL5 loads perfectly in the running
kernel.

No X install found.

Starting VMware Tools services in the virtual machine:
   Switching to guest configuration:                       [  OK  ]
   Guest memory manager:                                   [  OK  ]
   Guest vmxnet fast network device:                       [  OK  ]
   DMA setup:                                              [  OK  ]
   Guest operating system daemon:                          [  OK  ]

The configuration of VMware Tools 3.5.0 build-143128 for Linux for this running
kernel completed successfully.

You must restart your X session before any mouse or graphics changes take
effect.

You can now run VMware Tools by invoking the following command:
"/usr/bin/vmware-toolbox" during an X server session.

To use the vmxnet driver, restart networking using the following commands:
/etc/rc.d/init.d/network stop
rmmod pcnet32
rmmod vmxnet
depmod -a
modprobe vmxnet
/etc/rc.d/init.d/network start

If you wish to configure any experimental features, please run the following
command: "vmware-config-tools.pl --experimental".

Enjoy,

--the VMware team</pre>
<p><strong>Notes: From my experience, restart of networking via init.d scripts or rebooting the server is always needed.  I personally always reboot the server to be safe. </strong></p>
<br />Posted in Linux, Networking, VMWare  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/662/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/662/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/662/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=662&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2010/01/12/vmware-linux-install-vmware-tools-on-redhat-based-systems/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>

		<media:content url="http://colovirt.files.wordpress.com/2010/01/vmwtools.jpg" medium="image">
			<media:title type="html">VMware Tools Menu</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux, Security, LDAP: Local Authentication Fallback</title>
		<link>http://blog.colovirt.com/2009/12/16/linux-security-ldap-local-authentication-fallback/</link>
		<comments>http://blog.colovirt.com/2009/12/16/linux-security-ldap-local-authentication-fallback/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 17:49:33 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[authentication]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[failed to bind to LDA]]></category>
		<category><![CDATA[fallback]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[ldap]]></category>
		<category><![CDATA[ldap.conf]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[local authentication]]></category>
		<category><![CDATA[nss_ldap]]></category>
		<category><![CDATA[openldap]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[rh]]></category>

		<guid isPermaLink="false">http://colovirt.wordpress.com/?p=658</guid>
		<description><![CDATA[Linux, Security, LDAP: Local Authentication Fallback When LDAP Is Unavailable<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=658&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I have been setting up and integrating an LDAP authentication system into our infrastructure over the past few days.  This is just one small &#8220;got-cha&#8221; that I ran into.  The default setting in the OpenLDAP configuration (/etc/ldap.conf) is to continuously try reconnecting to the LDAP server on failure.  This is definitely not what I want to happen if we loose LDAP.  In this scenario, when connecting to the server via SSH, the session will hang and eventually timeout.  This even removes the ability to login with a local system account.<br />
<span id="more-658"></span><strong>Example of the timeout when LDAP server is down:</strong></p>
<pre>testuser@workstation4-l:~$ ssh test123@ldapclientsrv
Connection closed by 172.16.0.192</pre>
<p><strong>To begin, lets look at a typical error that you would get on the system if LDAP communication was down.</strong></p>
<pre>Dec 13 12:52:58 ldapServer sshd[15965]: nss_ldap: failed to bind to LDAP server ldap://127.0.0.16: Can't contact LDAP server
Dec 13 12:52:58 ldapServer sshd[15965]: nss_ldap: reconnecting to LDAP server (sleeping 4 seconds)...
Dec 13 12:53:02 ldapServer sshd[15965]: nss_ldap: failed to bind to LDAP server ldap://127.0.0.16: Can't contact LDAP server
Dec 13 12:53:02 ldapServer sshd[15965]: nss_ldap: reconnecting to LDAP server (sleeping 8 seconds)...
Dec 13 12:53:10 ldapServer sshd[15965]: nss_ldap: failed to bind to LDAP server ldap://127.0.0.16: Can't contact LDAP server
Dec 13 12:53:10 ldapServer sshd[15965]: nss_ldap: reconnecting to LDAP server (sleeping 16 seconds)...</pre>
<p><strong>As noted before, I was unable to login with a local account.  Turns out that the problem was with the default &#8220;bind_policy&#8221; in /etc/ldap.conf.  Per the document:</strong></p>
<pre># Reconnect policy: hard (default) will retry connecting to
# the software with exponential backoff, soft will fail
# immediately.
#bind_policy hard</pre>
<p><strong>This was changed to:</strong></p>
<pre>bind_policy soft</pre>
<p><strong>Once this was changed, I brought up the firewall on the LDAP server and refused connections.  Ability to login via LDAP was gone, but the server did fail back to local system authentication</strong></p>
<p><strong>Note(s)</strong>: When failing back to local authentication, there is no error sent back to the client trying to login, only errors go to /var/log/secure file.  The server will just keep rejecting the users login until LDAP is back up.  At least this gives you the ability to get in with a local system account in an emergency.</p>
<p><strong>Example error to /var/log/secure when LDAP server is down and local authentication is rejecting the LDAP user received from the client:</strong></p>
<pre>Dec 13 12:59:59 ldapServer sshd[2588]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=172.16.0.22</pre>
<br />Posted in Linux, Networking, Security  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/658/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/658/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/658/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=658&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2009/12/16/linux-security-ldap-local-authentication-fallback/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux, Filesystem: GNOME Virtual File System (GVFS) Remote Connectivity CLI</title>
		<link>http://blog.colovirt.com/2009/12/07/linux-filesystem-gnome-virtual-file-system-gvfs-remote-connectivity-cli/</link>
		<comments>http://blog.colovirt.com/2009/12/07/linux-filesystem-gnome-virtual-file-system-gvfs-remote-connectivity-cli/#comments</comments>
		<pubDate>Mon, 07 Dec 2009 17:47:46 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Filesystems]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[gnome]]></category>
		<category><![CDATA[GNOME Virtual File System]]></category>
		<category><![CDATA[gvfs]]></category>
		<category><![CDATA[gvfs un-mount]]></category>
		<category><![CDATA[gvfs-mount]]></category>
		<category><![CDATA[gvfsd]]></category>
		<category><![CDATA[gvfsd-ftp]]></category>
		<category><![CDATA[gvfsd-sftp]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[list]]></category>
		<category><![CDATA[process]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[vfs]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=651</guid>
		<description><![CDATA[Linux, Filesystem: GNOME Virtual File System (GVFS) Remote Connectivity CLI<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=651&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>When not using NFS, Linux administrators generally move files from one server to the next via SFTP or FTP.  This can sometimes be a headache when needing to move large amounts of files between the systems.  This is where I like <strong>GVFS</strong> (GNOME Virtual File System).  This subsystem allows you to mount remote systems via the following protocols to a local directory tree:</p>
<li>SSH</li>
<li>FTP</li>
<li>CIFS (Windows shares)</li>
<li>WebDav (HTTP)</li>
<li>Secure WebDav (HTTPS)
<p><span id="more-651"></span><br />
Above are the common protocols supported, but there is support for more.  Using GVFS to mount the remote filesystem to yours allows you to create and move files to and from the remote system using typical &#8220;cp&#8221;, &#8220;rm&#8221;, and &#8220;mv&#8221; commands.  This makes things even easier if you are working through an X windows console.  Just bring up the remote directory structure through a file manager application and work from there.  Gnome also uses GVFS to manage USB based storage.  The following will go through manually connecting to a server using GVFS.<strong>Move into the &#8220;.gvfs&#8221; filesystem in the users home directory.  Unless Gnome has automatically mounted a device, this filesystem should be empty.</strong></p>
<pre>user01@LinuxDesk:~$ cd ~/.gvfs</pre>
<p><strong>In the below example, a remote servers filesystem will be mounted over an SSH/SFTP session.</strong></p>
<pre>user01@LinuxDesk:~/.gvfs$ gvfs-mount ssh://user05@SftpServer02
Enter password
Password:</pre>
<p><strong>Verify that the location has been mounted.</strong></p>
<pre>user01@LinuxDesk:~/.gvfs$ ls
sftp for user05 on SftpServer02</pre>
<p><strong>The SFTP was mounted and we can now traverse the remote servers filesystem as if it were our own.</strong></p>
<pre>user01@LinuxDesk:~/.gvfs$ cd sftp\ for\ user05\ on\ SftpServer02/

user01@LinuxDesk:~/.gvfs/sftp for user05 on SftpServer02$ ls
app  boot  etc   hs_err_pid15240.log  lib         media  mnt  opt   relay  sbin     srv  tmp  var
bin  dev   home  hs_err_pid8660.log   lost+found  misc   net  proc  root   selinux  sys  usr</pre>
<p><strong>Since we logged into the SSH/SFTP system using user &#8220;user05&#8243;, we can write to any direcotry that remote user has access to.</strong></p>
<pre>user01@LinuxDesk:~/.gvfs/sftp for user05 on SftpServer02$ cd home/user05/</pre>
<p><strong>Below creates a new file &#8220;asdf&#8221; containing the text &#8220;asdfasdf&#8221;.  Here we are just testing write capability to the remote server</strong></p>
<pre>user01@LinuxDesk:~/.gvfs/sftp for user05 on SftpServer02/home/user05$ echo "asdfasdf" &gt; asdf
user01@LinuxDesk:~/.gvfs/sftp for user05 on SftpServer02/home/user05$ cat asdf
asdfasdf</pre>
<p><strong>&#8220;gvfs-mount&#8221; can also be used to list all currently mounted gvfs systems.  Below shows only the sftp session.</strong></p>
<pre>user01@LinuxDesk:~$ gvfs-mount -l
Mount(0): sftp on SftpServer02 -&gt; sftp://SftpServer02/
  Type: GDaemonMount</pre>
<p><strong>For reference, the following shows my 4gig USB drive that was automatically mounted when attached to the workstation through Gnome.</strong></p>
<pre>user01@LinuxDesk:~$ gvfs-mount -l
Drive(0): USB Drive
  Type: GProxyDrive (GProxyVolumeMonitorHal)
  Volume(0): 4.1 GB Media
    Type: GProxyVolume (GProxyVolumeMonitorHal)
    Mount(0): 4.1 GB Media -&gt; file:///media/disk
      Type: GProxyMount (GProxyVolumeMonitorHal)
Mount(0): sftp on SftpServer02 -&gt; sftp://SftpServer02/
  Type: GDaemonMount</pre>
<p><strong>GVFS mount points can be un-mounted using the &#8220;-u&#8221; argument.  Below will un-mount the remote ssh server.</strong></p>
<pre>user01@LinuxDesk:~/.gvfs$ gvfs-mount -u ssh://user05@SftpServer02</pre>
<p><strong>Notes: GVFS contains one master daemon (gvfsd) which tracks current GVFS mounts.  Each mount is created as an individual daemon with it&#8217;s own process.  Knowing this, we can find the actual gvfsd process ID that the sftp connection is running under.</strong></p>
<pre>user01@LinuxDesk:~/.gvfs$  ps -ef | grep gvfsd-sftp
user01  8022     1  0 10:34 ?        00:00:00 /usr/lib/gvfs/gvfsd-sftp --spawner :1.8 /org/gtk/gvfs/exec_spaw/21</pre>
</li>
<br />Posted in Filesystems, Linux, Networking  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/651/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/651/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/651/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/651/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/651/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/651/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/651/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/651/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/651/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/651/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/651/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/651/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/651/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/651/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=651&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2009/12/07/linux-filesystem-gnome-virtual-file-system-gvfs-remote-connectivity-cli/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux, IBM: WebSphere WAS and Partner Gateway Version 6.2 FixPack 1</title>
		<link>http://blog.colovirt.com/2009/11/03/linux-ibm-websphere-was-and-partner-gateway-version-6-2-fixpack-1/</link>
		<comments>http://blog.colovirt.com/2009/11/03/linux-ibm-websphere-was-and-partner-gateway-version-6-2-fixpack-1/#comments</comments>
		<pubDate>Tue, 03 Nov 2009 19:28:42 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Middle Ware]]></category>
		<category><![CDATA[bcgStartServer.sh]]></category>
		<category><![CDATA[bcgStopServer]]></category>
		<category><![CDATA[bcgStopServer.sh]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[cgStartServer]]></category>
		<category><![CDATA[fix]]></category>
		<category><![CDATA[fix pack]]></category>
		<category><![CDATA[ibm]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[partner gateway]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[sftp]]></category>
		<category><![CDATA[update]]></category>
		<category><![CDATA[Update Installer]]></category>
		<category><![CDATA[update.sh]]></category>
		<category><![CDATA[updateinstaller]]></category>
		<category><![CDATA[upgrade]]></category>
		<category><![CDATA[was]]></category>
		<category><![CDATA[websphere]]></category>
		<category><![CDATA[websphere application server]]></category>
		<category><![CDATA[websphere partner gateway]]></category>
		<category><![CDATA[wpg]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=646</guid>
		<description><![CDATA[Linux, IBM: WebSphere WAS and Partner Gateway Version 6.2 FixPack 1 Upgrade Notes<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=646&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This is just a brief overview.  The installation process is pretty easy on these.  Same as with most patches, IBM UpdateInstaller &#8220;update.sh&#8221; was used to install the service &#8220;pak&#8221; files.  These patches must be done in order.  Patch the WAS installation before patching WPG.</p>
<p><strong>All WebSphere services must be stopped to install the WAS updates.  On a standard installation, bcguser must be used to stop the service</strong></p>
<pre>[bcguser@WPGhost ~]$/opt/IBM/bcghub-simple/bin/./bcgStopServer.sh</pre>
<p>We do not use &#8216;/opt&#8217; for our WebSphere location, so change this if yours is different.</p>
<p><strong>Next, use Update Installer to patch the WebSphere Application Server</strong><br />
<span id="more-646"></span>[user@WPGhost ~]$ sudo /opt/IBM/WebSphere/UpdateInstaller/./update.sh</p>
<p>There is a <strong>gotcha</strong> here that had me<strong> &#8220;chasing my tail&#8221;</strong> for about 10 minutes.  When going to install the WebSphere Partner Gateway fix pack, the Partner Gateway and WAS server must be started.  Installation of the update will fail with error &#8220;user input validation&#8221;.</p>
<p><strong>So before installing the WPG update, re-launch the Application Server and Partner Gateway</strong></p>
<pre>[bcguser@WPGhost ~]$ /opt/IBM/bcghub-simple/bin/./bcgStartServer.sh</pre>
<p><strong>Once done, launch IBM Update Installer again, passing the customized responce file for your environment.  This needs to be executed as the root user, so sudo was used to allow xforwarding from a non-root account</strong></p>
<pre>[user@WPGhost ~]$ sudo /opt/IBM/WebSphere/UpdateInstaller/./update.sh -options /opt/IBM/bcghub-simple/responsefiles/bcgupdate_en_US.txt</pre>
<p>Those are my miscellaneous notes about the update installation.  Everything went fine here and I hope this fixes some of the SFTP issues we have been having.<br />
<strong>This brings the WebSphere Partner Gateway Console form version 6.2.0.0.273 to 6.2.0.1.333</strong></p>
<p><strong>Notes: Here is the <a href="http://www-01.ibm.com/support/docview.wss?uid=swg27016776" target="_blank">link to IBM&#8217;s website</a> that lists the fixes that are provided in the update.</strong></p>
<br />Posted in Linux, Middle Ware  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/646/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/646/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/646/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/646/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/646/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/646/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/646/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/646/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/646/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/646/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/646/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/646/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/646/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/646/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=646&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2009/11/03/linux-ibm-websphere-was-and-partner-gateway-version-6-2-fixpack-1/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux / Oracle: IBM WebSphere Partner Gateway Oracle Gotcha</title>
		<link>http://blog.colovirt.com/2009/10/21/linux-oracle-ibm-websphere-partner-gateway-oracle-gotcha/</link>
		<comments>http://blog.colovirt.com/2009/10/21/linux-oracle-ibm-websphere-partner-gateway-oracle-gotcha/#comments</comments>
		<pubDate>Wed, 21 Oct 2009 08:49:33 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Middle Ware]]></category>
		<category><![CDATA[application server]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[database user]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[partner gateway]]></category>
		<category><![CDATA[patch]]></category>
		<category><![CDATA[patching]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[schema]]></category>
		<category><![CDATA[schema owner]]></category>
		<category><![CDATA[SID]]></category>
		<category><![CDATA[was]]></category>
		<category><![CDATA[websphere]]></category>
		<category><![CDATA[websphere application server]]></category>
		<category><![CDATA[websphere partner gateay]]></category>
		<category><![CDATA[wpg]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=629</guid>
		<description><![CDATA[Linux / Oracle: IBM WebSphere Partner Gateway Oracle Gotcha<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=629&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I have been wrestling around with IBM WebSphere Partner Gateway for a few weeks now.  There are so many tiny gotcahs out there that can affect the whole installation process.</p>
<p><strong>The main one that got me was integration with Oracle.    An overview of the installation steps are shown below:<br />
<span id="more-629"></span></strong></p>
<li>Install Oracle Client</li>
<li>Configure Oracle environment (SID, server)</li>
<li>Install WebSphere Application Server</li>
<li>Patch WebSphere Application Server</li>
<li>Install WebSphere Partner Gateway Application (apps) Database</li>
<li>Install WebSphere Partner Gateway</li>
<li>Patch WebSphere Partner Gateway</li>
<p>So the problem came down to the ‘Database owner name’ and ‘Schema owner login’ being the same.  This typically is not an issue.  The worst part is that the WAS (WebSphere Application Server) and WPG (WebSphere Partner Gateway) installation would both complete successfully.  Not only that, they system would run with no errors.</p>
<p>That being said, once I started the patching process, it would always fail.    So as a last resort, I tried changing the ‘Database user name’ and ‘Schema owner login’ to be different.    Thanks to DBA Eric&#8217;s recommendation.  This worked!<br />
<strong><br />
I decided to put this blog up because I could not find any useful information for this when searching.  The patching process is a pain and I might go into more details on it in more blogs later.  Anyone else ran into this issue?</strong></p>
<br />Posted in Linux, Middle Ware  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/629/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/629/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/629/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/629/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/629/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/629/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/629/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/629/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/629/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/629/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/629/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/629/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/629/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/629/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=629&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2009/10/21/linux-oracle-ibm-websphere-partner-gateway-oracle-gotcha/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux / Security: User Account Expiration Management</title>
		<link>http://blog.colovirt.com/2009/10/20/linux-security-user-account-expiration-management/</link>
		<comments>http://blog.colovirt.com/2009/10/20/linux-security-user-account-expiration-management/#comments</comments>
		<pubDate>Tue, 20 Oct 2009 09:00:33 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[account]]></category>
		<category><![CDATA[account expiration]]></category>
		<category><![CDATA[accounts]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[chage]]></category>
		<category><![CDATA[expiration]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[password expires]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=625</guid>
		<description><![CDATA[Linux / Security: User Account Expiration Management<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=625&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I am a firm believer in regular password rotation/change and Linux has a built in mechanism that makes it easy.  The following is a brief overview of password and account ageing for Linux based systems.</p>
<p><strong>The program that enables listing and modification on the expiration parameters is &#8216;chage&#8217;.  Each individual user can view their account settings as shown below.<br />
<span id="more-625"></span></strong>testuser@testServer:~$ chage -l testuser</p>
<pre>Last password change					: Aug 07, 2009
Password expires					: Nov 05, 2009
Password inactive					: never
Account expires						: Aug 05, 1992
Minimum number of days between password change		: 90
Maximum number of days between password change		: 90
Number of days of warning before password expires	: 7</pre>
<p><strong>As you can see above, the last password change date is listed, as well as the expiration date for the current password.  When executed from a non-privileged account, the user can only view their own account.</strong></p>
<pre>testuser@testServer:~$ chage -l root
chage: <strong>Permission denied</strong>.</pre>
<p><strong>Also, the non-privileged account can not change their settings either.</strong></p>
<pre>testuser@testServer:~$ chage -M 99 testuser
chage: Permission denied.</pre>
<p><strong>From the root account, you have to ability to modify all the settings for individual users.</strong></p>
<pre>root@testServer:~# chage
Usage: chage [options] [LOGIN]

Options:
  -d, --lastday LAST_DAY        set last password change to LAST_DAY
  -E, --expiredate EXPIRE_DATE  set account expiration date to EXPIRE_DATE
  -h, --help                    display this help message and exit
  -I, --inactive INACTIVE       set password inactive after expiration
                                to INACTIVE
  -l, --list                    show account aging information
  -m, --mindays MIN_DAYS        set minimum number of days before password
                                change to MIN_DAYS
  -M, --maxdays MAX_DAYS        set maximim number of days before password
                                change to MAX_DAYS
  -W, --warndays WARN_DAYS      set expiration warning days to WARN_DAYS</pre>
<p><strong>Before modification, I am going to turn off all expiration settings on the &#8216;testuser&#8217; account.  This is disabling password expiration on that individual account.</strong></p>
<pre>root@testServer:~# chage -E -1 -I -1 -m 0 -M 99999 testuser</pre>
<p><strong>No lets configure password aging for the test user.  The first example below runs change in interactive mode.</strong></p>
<pre>root@testServer:~# chage testuser
Changing the aging information for testuser
Enter the new value, or press ENTER for the default

	Minimum Password Age [0]:
	Maximum Password Age [99999]: 90
	Last Password Change (YYYY-MM-DD) [2009-10-16]:
	Password Expiration Warning [7]:
	Password Inactive [-1]:
	Account Expiration Date (YYYY-MM-DD) [1969-12-31]: 2012-12-31</pre>
<p><strong>Verify that the settings took.</strong></p>
<pre>root@testServer:~# chage -l testuser
Last password change					: Oct 16, 2009
Password expires					: Jan 14, 2010
Password inactive					: never
Account expires						: Dec 31, 2012
Minimum number of days between password change		: 0
Maximum number of days between password change		: 90
Number of days of warning before password expires	: 7</pre>
<p><strong>The same can be accomplished using the command line, non-interactively.</strong></p>
<pre>root@testServer:~# chage -E 2012-12-31 -I -1 -m 0 -M 90 -W 7 testuser</pre>
<p>With the above settings in place, the user should be warned 7 days before the password expires on their account.  If the password is not changed before expiration day, on the next login the user will be forced to change their password.</p>
<br />Posted in Linux, Security  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/625/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/625/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/625/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/625/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/625/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/625/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/625/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/625/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=625&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2009/10/20/linux-security-user-account-expiration-management/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux / Storage:  Memory – Huge Pages Overview</title>
		<link>http://blog.colovirt.com/2009/10/13/linux-storage-memory-huge-pages-overview/</link>
		<comments>http://blog.colovirt.com/2009/10/13/linux-storage-memory-huge-pages-overview/#comments</comments>
		<pubDate>Tue, 13 Oct 2009 14:39:16 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Filesystems]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[Huge Pages]]></category>
		<category><![CDATA[hugepage]]></category>
		<category><![CDATA[hugepages]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[memory]]></category>
		<category><![CDATA[oracle]]></category>
		<category><![CDATA[performance]]></category>
		<category><![CDATA[ram]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[storage]]></category>
		<category><![CDATA[swap]]></category>
		<category><![CDATA[TLB]]></category>
		<category><![CDATA[Translation Lookaside Buffers]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[virtual memory]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=621</guid>
		<description><![CDATA[Linux / Storage:  Memory - Huge Pages Overview<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=621&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>A page is really <strong>virtual memory</strong> which is managed by the<strong> Translation Lookaside Buffers(TLB)</strong> in the CPU.  The TLB controls the mapping of the virtual memory pages to physical memory addresses.  In doing so, it bypasses the kernel virtual memory manager.</p>
<p><strong>Per RedHat,</strong></p>
<blockquote><p><strong> The TLB is a limited hardware resource, so utilising a huge amount of physical memory with the default page size consumes the TLB and adds processing overhead &#8211; many pages of size 4096 Bytes equates to many TLB resources consumed.</strong></p></blockquote>
<p><span id="more-621"></span>This is where Huge Pages come in.  Pages are created at a larger size than the default 4096 bytes, and each page will consume only one TLB resource.  So you can see this is a huge benefit.  Using Huge Pages decrease the number of TLB resources required.</p>
<p><strong>Side Affect</strong><br />
This is great, depending on what you are trying to accomplish.  Once the physical memory is mapped to a Huge Page, it can no longer be used for &#8220;normal&#8221; memory allocation.  This is because the memory is no longer mapped by the kernel virtual memory manager.  The applications that you want to dedicate the Huge Pages to have to have support for them.</p>
<p><strong>Benefit</strong><br />
So here is the best part of Huge Pages.  It is dedicated memory to be used by only applications that request them.<strong> This dedicated memory is stored in physical RAM and will NEVER be swapped out! </strong>Thus, guaranteeing a level of performance.  When memory is swapped to disk, it&#8217;s a lot slower than RAM and decreases the performance of the process(s)/program(s) gets pushed there.</p>
<p>Now knowing that Huge Pages are stored in RAM, this also means that the allocated RAM is dedicated.  This is a little bit redundant to the above, but I want to make sure this point is clear.</p>
<p>Example: If a server has 8gigs of RAM and 5gigs are allocated to Huge Pages, that only leaves 3gigs for all other processes, programs, and underlining operating system to use.</p>
<p><strong>Below shows my Linux desktop that has the default page size of 4096 set</strong></p>
<pre>user@workstation:~$ cat /proc/meminfo | grep Huge
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       4096 kB</pre>
<p><strong>So as you can see, I have no Huge Pages reserved or in use.  The next example is from a production Oracle database server</strong></p>
<pre>[root@OracleServer1 ~]# cat /proc/meminfo | grep Huge
HugePages_Total: 12200
HugePages_Free:     85
Hugepagesize:     2048 kB</pre>
<p><strong>So to calculate the space dedicated to Huge Pages from above, it is 12,200 x 2048 kB which gives us</strong></p>
<pre><strong>24 985 600 kilobytes = 23.828125 gigabytes</strong></pre>
<p>In the 2.6x Linux kenel, Huge Pages are enabled using the CONFIG_HUGETLB_PAGE feature when compiling the kernel.  Most &#8220;Enterprise&#8221; Linux OSs by default have this enabled.  The ones that I know of are RedHat, CentOS, and possibly Fedora from version 4+.</p>
<p><strong>Notes:  Again, applications that you want to dedicate Huge Pages to must have support for them.  Most memory intensive ones do, but check for this first.</strong></p>
<br />Posted in Filesystems, Linux  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/621/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/621/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/621/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/621/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/621/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/621/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/621/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/621/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/621/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/621/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/621/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/621/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/621/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/621/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=621&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2009/10/13/linux-storage-memory-huge-pages-overview/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux / Security: Encrypted External Drive Part 1 – Urandom</title>
		<link>http://blog.colovirt.com/2009/09/04/linux-security-encrypted-external-drive-part-1-urandom/</link>
		<comments>http://blog.colovirt.com/2009/09/04/linux-security-encrypted-external-drive-part-1-urandom/#comments</comments>
		<pubDate>Fri, 04 Sep 2009 08:34:40 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[data protection]]></category>
		<category><![CDATA[encrypt]]></category>
		<category><![CDATA[encrypted filesystem]]></category>
		<category><![CDATA[external drive]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[filesystem]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[raid 1]]></category>
		<category><![CDATA[raid1]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[urandom]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=613</guid>
		<description><![CDATA[Linux / Security: Encrypted External Drive Part 1 - Urandom<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=613&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>So I am re-doing my external RAID 1 drive enclosure.  I love this little thing.  It has two 2.5 inch 160gig SATA drives in it.  The enclosure is connected via USB 2.0 but it does have an eSATA interface as well.  I will be configuring this to have a 10 gig non-encrypted partition. The remaining ~150 gigs will be an encrypted (LUKS) filesystem to be used on my linux machine.</p>
<p>All of this will not be detailed here but will be split up in 3 blogs.  Below just shows the time it takes to use Linux to overwrite the disk device using /dev/urandom.  This is done to make it just that much harder for a would be hacker to try and brute force the key on the encrypted partition.  If this is not done, the un-used space would just show up as empty, allowing for a more targeted attack against the pseudo random filesystem.  Being pseudo-random means that it is not truly random.  This being the case, with a lot of time and computing power, an attacker might be able to either brute force or find a pattern in the encryption.</p>
<p>So why not use /dev/random?  For me, this would take forever!  I do not have any special hardware or scripts pulling information from the environment and adding to the entropy pool.  The data on this drive not being national security grade, /dev/random will do the job.</p>
<p><strong>I know that the drive is under /dev/sdb.  With that information, it is as simple as using &#8220;dd&#8221; (built in Linux utility) to overwrite all blocks on the drive with pseudo-random data.</strong></p>
<pre>root@tstbox:~# dd if=/dev/urandom of=/dev/sdb
dd: writing to `/dev/sdb': No space left on device
312581810+0 records in
312581809+0 records out
160041886208 bytes (160 GB) copied, 40284.5 s, 4.0 MB/s</pre>
<p>From above, it tool 40,284.5 seconds to overwrite the drive with urandom data.  This equals ~11 hours and 19 minutes.  Definitely still a long time, but a lot faster than if /dev/random was used.</p>
<p><strong>This workstation is not an impressive computer.  It is a single CPU dual core machine with 2 gigs of ram.  Below is the info on one of the cores.</strong></p>
<pre>root@tstbox:~# cat /proc/cpuinfo
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 15
model name	: Intel(R) Core(TM)2 CPU          6300  @ 1.86GHz
stepping	: 2
cpu MHz		: 1867.000
cache size	: 2048 KB
physical id	: 0
siblings	: 2</pre>
<p><strong>Notes: I wish I could use /dev/random and probably will eventually when I can sit a drive out for a week.  Setting up external drives in this fashion is really geared towards data protection.  Not only are the drives in a mirrored RAID (one can fail and everything would still run fine), important data is encrypted using a strong key.  So who cares is the external enclosure walks away at a conference?  I would be out ~190$ but the data will be safe.</strong></p>
<br />Posted in Linux, Security  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/613/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/613/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/613/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/613/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/613/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/613/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/613/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/613/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/613/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/613/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/613/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/613/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/613/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/613/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=613&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2009/09/04/linux-security-encrypted-external-drive-part-1-urandom/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux/Unix/File Systems: Inodes (Part 2) – File Level Inode Information And Removal</title>
		<link>http://blog.colovirt.com/2009/04/13/linuxunixfile-systems-inodes-part-2-file-level-inode-information-and-removal/</link>
		<comments>http://blog.colovirt.com/2009/04/13/linuxunixfile-systems-inodes-part-2-file-level-inode-information-and-removal/#comments</comments>
		<pubDate>Mon, 13 Apr 2009 08:00:03 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Filesystems]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Monitoring]]></category>
		<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[chown]]></category>
		<category><![CDATA[exec]]></category>
		<category><![CDATA[find]]></category>
		<category><![CDATA[gid]]></category>
		<category><![CDATA[inode]]></category>
		<category><![CDATA[inodes]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[permissions]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[rm]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[uid]]></category>
		<category><![CDATA[unix]]></category>
		<category><![CDATA[xargs]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=497</guid>
		<description><![CDATA[Linux/Unix/File Systems: Inodes (Part 2) - File Level Inode Information And Removal<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=497&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Inodes &#8220;Part 1&#8243; went into locating filesystem level inode information.  Here we will move from the main filesystem to the individual file.  Besides reviewing how the inode record reflects permissions modification using chown, file removal based on inode number will be covered.</p>
<p><strong>Create a test file</strong></p>
<pre>user01@testsrv:~$ touch testfile</pre>
<p><strong>Below, &#8220;ls&#8221; is used to display the inode number (2009418) of the test file </strong></p>
<pre>user01@testsrv:~$ ls -i /home/user01/testfile
<strong>2009418</strong> /home/user01/testfile
<span id="more-497"></span><strong>Check the inode record for the newly created empty file</strong></pre>
<pre>user01@testsrv:~$ stat /home/user01/testfile
File: `/home/user01/testfile'
Size: 0         	Blocks: 0          IO Block: 4096   regular empty file
Device: fe01h/65025d	Inode: 2009418     Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/user01)   Gid: ( 1000/user01)
Access: 2009-04-10 17:52:59.000000000 -0400
Modify: 2009-04-10 17:52:58.000000000 -0400
Change: 2009-04-10 17:52:58.000000000 -0400</pre>
<p><strong>In the following example, a file is being checked that is solely owned by the root user</strong></p>
<pre>user01@testsrv:~$ ls -la /home/user01/w2k3-2.iso
-rw-r--r-- 1 root root 171769856 2009-03-28 13:15 /home/user01/w2k3-2.iso</pre>
<p><strong>Review the root owned ISO file inode information.  The user and group ownership is referenced as Uid and Gid respectively</strong></p>
<pre>user01@testsrv:~$ stat /home/user01/w2k3-2.iso
File: `/home/user01/w2k3-2.iso'
Size: 171769856 	Blocks: 335824     IO Block: 4096   regular file
Device: fe01h/65025d	Inode: 2009538     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Access: 2009-03-28 13:11:44.000000000 -0400
Modify: 2009-03-28 13:15:33.000000000 -0400
Change: 2009-03-28 13:15:33.000000000 -0400</pre>
<p><strong>Change the permissions of the ISO file via the root user (current owner of the file)</strong></p>
<pre>root@testsrv:/home/user01# chown user01:user01 /home/user01/w2k3-2.iso</pre>
<p><strong>Re-check tje ISO file permission from the initial user (user01) via the ls command</strong></p>
<pre>user01@testsrv:~$ ls -la /home/user01/w2k3-2.iso
-rw-r--r-- 1 user01 user01 171769856 2009-03-28 13:15 /home/user01/w2k3-2.iso</pre>
<p><strong>Re-stat the ISO file to view the changes in the inode record.  As you can see, the file ownership is now set to user user01 and group user01</strong></p>
<pre>user01@testsrv:~$ stat /home/user01/w2k3-2.iso
File: `/home/user01/w2k3-2.iso'
Size: 171769856 	Blocks: 335824     IO Block: 4096   regular file
Device: fe01h/65025d	Inode: 2009538     Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/user01)   Gid: ( 1000/user01)
Access: 2009-03-28 13:11:44.000000000 -0400
Modify: 2009-03-28 13:15:33.000000000 -0400
Change: 2009-04-10 17:57:35.000000000 -0400</pre>
<p><strong>For the next example user01 is kept as the user, but the group is changed to &#8216;admin&#8217;.  Since the current user user01 now has full rights to the file, it can be done from that account</strong></p>
<pre>user01@testsrv:~$ chown :admin /home/user01/w2k3-2.iso</pre>
<p><strong>Re-stat the file once more to see if the group (Gid) has been changed in the inode for this file</strong></p>
<pre>user01@testsrv:~$ stat /home/user01/w2k3-2.iso
File: `/home/user01/w2k3-2.iso'
Size: 171769856 	Blocks: 335824     IO Block: 4096   regular file
Device: fe01h/65025d	Inode: 2009538     Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/user01)   Gid: (  119/   admin)
Access: 2009-03-28 13:11:44.000000000 -0400
Modify: 2009-03-28 13:15:33.000000000 -0400
Change: 2009-04-10 18:00:32.000000000 -0400</pre>
<p><strong>Now with the basic understanding of finding an retrieving inode numbers and information, we will proceed to removing files using the &#8220;rm&#8221; command.  Specifically, the following will detail how to remove a file by referencing the inode number.  All of which is done by using &#8220;find&#8221; and passing the results to &#8220;rm&#8221;.</strong></p>
<p><strong>There have only been a few occasions that I can remember where I have needed to know the following, but it is worth knowing!  The main benefit is when a file has been created with a control character in the name</strong></p>
<p><strong>Create a test file</strong></p>
<pre>user01@testsrv:/tmp/testdir$ touch '`'
user01@testsrv:/tmp/testdir$ ls
`</pre>
<p><strong>Try to remove the file without enclosing the &#8220;`&#8221; filename</strong></p>
<pre>user01@testsrv:/tmp/testdir$ rm `
&gt;</pre>
<p><strong>Above you can see that the command did not work.  Instead it dropped to the &#8220;&gt;&#8221; sub-prompt</strong></p>
<p><strong>Locate the inode number for the &#8220;`&#8221; file.  Tab based auto-complete does wonders escaping the special character filename on the command line</strong></p>
<pre>user01@testsrv:/tmp/testdir$ ls -i /tmp/testdir/`
1163285 /tmp/testdir/`</pre>
<p><strong>Now that the inode number is known, the &#8220;find&#8221; command can be used to retrieve the filename associated with it</strong></p>
<pre>user01@testsrv:/tmp/testdir$ find /tmp -inum 1163285
/tmp/testdir/`</pre>
<p><strong>Putting it all together, we can remove the file passing the &#8220;find&#8221; results to &#8220;rm&#8221;.  Below uses a command line pipe (&#8220;|&#8221;) and xargs to accomplish this</strong></p>
<pre>user01@testsrv:/tmp/testdir$ find /tmp -inum 1163285 | xargs rm</pre>
<p><strong>Verify the file has been removed</strong></p>
<pre>user01@testsrv:/tmp/testdir$ ls /tmp/testdir/</pre>
<p><strong>The same can be accomplished via find commands built-in exec feature</strong></p>
<pre>user01@testsrv:/tmp/testdir$ find /tmp -inum 1163285 -exec rm {} ;</pre>
<p><strong>In my opinion, the best way to remove a file via the inode number is as follows</strong></p>
<pre>user01@testsrv:~$ find /tmp -inum 1163285 -exec rm -i {} ;
rm: remove regular empty file `/tmp/testdir/`'? <strong>y</strong></pre>
<p><strong>Specifying &#8220;-i&#8221; after rm makes the user verify the file to be removed.</strong></p>
<p><strong>Notes: There are other ways around removing files with certain characters.  In this chase, the &#8220;`&#8221; file could have been removed with:</strong></p>
<pre>user01@testsrv:/tmp/testdir$ rm /tmp/testdir/`</pre>
<p><strong>If any information in this post is found to be outdated, incorrect, useful, or needs further detail, please leave a comment or email me.</strong></p>
<br />Posted in Filesystems, Linux, Monitoring, Uncategorized  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/497/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/497/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/497/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/497/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/497/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/497/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/497/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/497/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=497&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2009/04/13/linuxunixfile-systems-inodes-part-2-file-level-inode-information-and-removal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux, Unix, NAS, File Systems: Inodes (Part 1) – Checking Availability And High Level Overview</title>
		<link>http://blog.colovirt.com/2009/04/10/linux-unix-nas-file-systems-inodes-part-1-checking-availability-and-high-level-overview/</link>
		<comments>http://blog.colovirt.com/2009/04/10/linux-unix-nas-file-systems-inodes-part-1-checking-availability-and-high-level-overview/#comments</comments>
		<pubDate>Fri, 10 Apr 2009 19:37:40 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Filesystems]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Monitoring]]></category>
		<category><![CDATA[NAS]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[check]]></category>
		<category><![CDATA[df]]></category>
		<category><![CDATA[df -i]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[inode]]></category>
		<category><![CDATA[inodes]]></category>
		<category><![CDATA[max]]></category>
		<category><![CDATA[max inodes]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[reiser]]></category>
		<category><![CDATA[reiser4]]></category>
		<category><![CDATA[reiserfs]]></category>
		<category><![CDATA[tune2fs]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=490</guid>
		<description><![CDATA[Linux, Unix, NAS, File Systems: Inodes (Part 1) - Checking Availability And High Level Overview<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=490&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>Inodes really tell you how many file handles (files) that can be created on a file system.  Most people will never exceed the default setting when the file system is created, nor even know that one is set.  I will eventually go into more detail concerning this topic here on the blog.  The majority (not all) of file systems that are used on Linux and Unix do not support dynamic inode allocation.  What this means is that if you exceed the inode limit of a file system before the storage space, the remainder will be un-usable.  That is until some of the current files are removed.</p>
<p>So here is the really bad part.  The inodes on ext2 and ext3 (Linux default type) are statically set when the file system is formatted.  You can not go back and change the max inode settings.  The exceptions to this that I know of are as follows:</p>
<p>- Reiser4<br />
- VxFS<br />
- XFS<br />
- JFS<br />
- WAFL (NetApp proprietary)<br />
- XZFS</p>
<p>If you are running one of the above and have max inodes issue, you can correct it.</p>
<p>I have been working with computers for over 15 years and have only ran into this problem once.  Luckily, it occurred on a NetApp NAS device that had the ability to increase this value on the live file system.  The main killer here are tons of small files.  In this case, the file system for that NFS share was 40 gigabytes in size and default was ~1 million inode limit.  The quick fix for the issue was to increase this to 3 million.</p>
<p>As far as a ext2 and 3 go, the following shows how to query a file system for relevant inode information<br />
<span id="more-490"></span></p>
<pre>root@testbox:~# tune2fs -l /dev/sda1
tune2fs 1.41.3 (12-Oct-2008)
Filesystem volume name:   &lt;none&gt;
Last mounted on:          &lt;not available&gt;
Filesystem UUID:          56161dd8-9d1d-4c54-851d-938bb88ce6d4
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super large_file
Filesystem flags:         signed_directory_hash
Default mount options:    (none)
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS type:       Linux
<strong>Inode count:              4685824</strong>
Block count:              18731782
Reserved block count:     936589
Free blocks:              15534374
<strong>Free inodes:              4459463</strong>
First block:              0
Block size:               4096
Fragment size:            4096
Reserved GDT blocks:      1019
Blocks per group:         32768
Fragments per group:      32768
<strong>Inodes per group:         8192
Inode blocks per group:   256</strong>
Filesystem created:       Mon Sep 29 16:25:20 2008
Last mount time:          Fri Jan 23 14:27:02 2009
Last write time:          Fri Jan 23 14:27:02 2009
Mount count:              4
Maximum mount count:      33
Last checked:             Thu Jan 15 09:00:37 2009
Check interval:           15552000 (6 months)
Next check after:         Tue Jul 14 10:00:37 2009
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
<strong>First inode:              11
Inode size:	          128</strong>
Journal inode:            8
First orphan inode:       2908742
Default directory hash:   tea
Directory Hash Seed:      a6544c5xxxxxxxxxxxxxxxxx
<strong>Journal backup:           inode blocks</strong></pre>
<p>The above is good to know, especially to check an un-mounted file system.  The command below shows a <strong>friendlier formatted</strong> output</p>
<pre>root@testbox:~# df -i
Filesystem            <strong>Inodes   IUsed   IFree IUse</strong>% Mounted on
/dev/sda1            4685824  226361 4459463    5% /
tmpfs                 222201       4  222197    1% /lib/init/rw
varrun                222201      64  222137    1% /var/run
varlock               222201       5  222196    1% /var/lock
udev                  222201    5142  217059    3% /dev
tmpfs                 222201       5  222196    1% /dev/shm
/dev/sdb1            61063168    1116 61062052    1% /media/disk</pre>
<p>As you can see, there are no issues to be worried about on this test computer.  Most systems administrators perform centralized monitoring of disk usage at a disk space level (capacity).  On highly used servers that utilize locally stored and/or direct attached storage, it is a good idea to have a script check and <strong>report on the available inodes</strong>.</p>
<p><a href="http://colovirt.files.wordpress.com/2009/04/inodes-1.pdf">PDF Version</a></p>
<p><strong>Notes: This information is provided for a high level overview concerning inodes.  More in-depth information will be provided in up-coming posts.</strong></p>
<br />Posted in Filesystems, Linux, Monitoring, NAS  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/490/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/490/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/490/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/490/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/490/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/490/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/490/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/490/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=490&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2009/04/10/linux-unix-nas-file-systems-inodes-part-1-checking-availability-and-high-level-overview/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux/Networking/Security: TFTP Deamon Setup and Cisco Configuration Backup</title>
		<link>http://blog.colovirt.com/2009/03/31/linuxnetworkingsecurity-tftp-deamon-setup-and-cisco-configuration-backup/</link>
		<comments>http://blog.colovirt.com/2009/03/31/linuxnetworkingsecurity-tftp-deamon-setup-and-cisco-configuration-backup/#comments</comments>
		<pubDate>Tue, 31 Mar 2009 13:50:13 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[SAN (Storage Area Network)]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[9124]]></category>
		<category><![CDATA[access list]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[cisco]]></category>
		<category><![CDATA[cisco 9124]]></category>
		<category><![CDATA[cisco backup]]></category>
		<category><![CDATA[cisco tftp]]></category>
		<category><![CDATA[daemon]]></category>
		<category><![CDATA[fefora]]></category>
		<category><![CDATA[insert]]></category>
		<category><![CDATA[iptables]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[mds]]></category>
		<category><![CDATA[port]]></category>
		<category><![CDATA[put]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[running-config]]></category>
		<category><![CDATA[tftp]]></category>
		<category><![CDATA[tftp rule]]></category>
		<category><![CDATA[tftp server]]></category>
		<category><![CDATA[tftpd]]></category>
		<category><![CDATA[xinetd]]></category>
		<category><![CDATA[xinetd.d]]></category>
		<category><![CDATA[yum]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=472</guid>
		<description><![CDATA[Linux/Networking/Security: TFTP Deamon Setup and Cisco Configuration Backup<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=472&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>This is just a quick walk-through on setting up TFTP service on a RedHat, Centos, or Fedora system.  In general, this process should transfer over to other Linux (<strong>not BSD!</strong>) derived distributions.</p>
<pre>[root@tftpsrv ~]# yum install tftp
Resolving Dependencies
--&gt; Running transaction check
---&gt; Package tftp-server.i386 0:0.42-3.1.el5.centos set to be updated
--&gt; Processing Dependency: xinetd for package: tftp-server
--&gt; Running transaction check
---&gt; Package xinetd.i386 2:2.3.14-10.el5 set to be updated
--&gt; Finished Dependency Resolution

Dependencies Resolved</pre>
<p><span id="more-472"></span></p>
<pre>
=============================================================================
 Package                 Arch       Version          Repository        Size
=============================================================================
Installing:
 tftp-server             i386       0.42-3.1.el5.centos  base               27 k
Installing for dependencies:
 xinetd                  i386       2:2.3.14-10.el5  base              124 k

Transaction Summary
=============================================================================
Install      2 Package(s)
Update       0 Package(s)
Remove       0 Package(s)         

Total download size: 151 k
Is this ok [y/N]: y
Downloading Packages:
(1/2): tftp-server-0.42-3 100% |=========================|  27 kB    00:00
(2/2): xinetd-2.3.14-10.e 100% |=========================| 124 kB    00:00
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing: xinetd                       ######################### [1/2]
  Installing: tftp-server                  ######################### [2/2]

Installed: tftp-server.i386 0:0.42-3.1.el5.centos
Dependency Installed: xinetd.i386 2:2.3.14-10.el5
Complete!</pre>
<p><strong>Edit configuration to enable tftp</strong></p>
<pre>[root@tftpsrv ~]# vi /etc/xinetd.d/tftp
# default: off
# description: The tftp server serves files using the trivial file transfer \
#       protocol.  The tftp protocol is often used to boot diskless \
#       workstations, download configuration files to network-aware printers, \
#       and to start the installation process for some operating systems.
service tftp
{
        socket_type             = dgram
        protocol                = udp
        wait                    = yes
        user                    = root
        server                  = /usr/sbin/in.tftpd
        server_args             = -s /tftpboot        -&gt; some directory (/tftpfiles)
        disable                 = yes            -&gt; no
        per_source              = 11
        cps                     = 100 2
        flags                   = IPv4
}</pre>
<p><strong>Create directory specified in tftp configuration file</strong></p>
<pre>[root@tftpsrv xinetd.d]# mkdir /tftpfiles</pre>
<p><strong>Start up xinetd.  This is used to call tftp</strong></p>
<pre>[root@tftpsrv ~]# /etc/init.d/xinetd start
Starting xinetd:                                           [  OK  ]

[root@tftpsrv xinetd.d]# iptables-save &gt; /etc/init.d/iptables
[root@tftpsrv xinetd.d]# iptables -F</pre>
<p><strong>Below, the tftp put will fail.  This is due to the file needing to be created on the TFTP server before the client can write to it.  This is the only real security there is to TFTP.  You at least need to know the filename before the file can be written or read.</strong></p>
<pre>C9124SW5# copy running-config tftp:CISCSCOCFG1
Enter hostname for the tftp server: 172.16.100.6
Trying to connect to tftp server......

TFTP put operation failed:Undefined error code (2)</pre>
<p><strong>Create the file to be saved from switch and change the permissions</strong></p>
<pre>[root@tftpsrv ~]# touch /tftpfiles/CISCSCOCFG1
[root@tftpsrv ~]# chmod 777 /tftpfiles/CISCSCOCFG1</pre>
<p><strong>Tell the switch to save the file</strong></p>
<pre>C9124SW5# copy running-config tftp:CISCSCOCFG1
Enter hostname for the tftp server: 172.16.100.6
Trying to connect to tftp server......
|
TFTP put operation was successful</pre>
<p><strong>Check the services file to find the TFTP port and protocol information</strong></p>
<pre>[root@tftpsrv]# cat /etc/services | grep tftp
tftp        69/tcp
tftp        69/udp</pre>
<p><strong>Bring the firewall back up so we can insert rules to allow TFTP in</strong></p>
<pre>[root@tftpsrv]# /etc/init.d/iptables restart</pre>
<p><strong>On my test server, the firewall chain is &#8220;RH-Firewall-1-INPUT&#8221;.  I always prefer inserting new firewall rules as the first rule.  Most servers keep a few custom reject rules and most are explicit allow with the default deny at the end.  Inserting the new rule as the first will normally bypass those that might reject before it ever gets to the tftp rule.</strong></p>
<pre>[root@tftpsrv]# iptables -I RH-Firewall-1-INPUT 1 -s 172.16.100.98 -p tcp --dport 69 -j ACCEPT
[root@tftpsrv]# iptables -I RH-Firewall-1-INPUT 1 -s 172.16.100.98 -p udp --dport 69 -j ACCEPT</pre>
<p><strong>The above statements tell iptables to insert &#8220;-I&#8221; the new rule into the chain &#8220;RH-Firewall-1-INPUT&#8221; as rule number &#8220;1&#8243;.  The -s is specifying the source, -p the protocol &#8211;dport the destination port and -j allows the connection to establish by jumping over to ACCEPT.</strong></p>
<p><strong>Verify the rules are there</strong></p>
<pre>[root@tftpsrv]# iptables -L
Chain RH-Firewall-1-INPUT
target     prot opt source               destination
ACCEPT     udp  --  172.16.100.98        anywhere            udp dpt:tftp
ACCEPT     tcp  --  172.16.100.98        anywhere            tcp dpt:tftp</pre>
<p><strong>Save the rules in sysconfig so they will be persistent through reboots</strong></p>
<pre>[root@tftpsrv]# iptables-save &gt; /etc/sysconfig/iptables</pre>
<p><strong>Notes:</strong> Never flush your iptables rules &#8220;iptables -F&#8221; on production systems that are not protected by a firewall or are on are public IP.  Always be sure to backup/save your iptables configuration when testing.  Also, if you are not familiar with security, or there is someone else responsible for security in the company, as them before or have them modify the local iptables rules.  Another good rule for servers running TFTP, FTP, Telnet, DNS, and mail is to have servers dedicated for each.  These are some of the most exploited servers out there.</p>
<br />Posted in Linux, Networking, SAN (Storage Area Network), Security  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/472/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/472/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/472/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/472/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/472/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/472/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/472/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/472/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=472&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2009/03/31/linuxnetworkingsecurity-tftp-deamon-setup-and-cisco-configuration-backup/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux/Security: Scponly SFTP Fix For RedHat and Centos 5.x (and possibly Fedora)</title>
		<link>http://blog.colovirt.com/2009/03/17/linuxsecurity-scponly-sftp-fix-for-redhat-and-centos-5x-and-possibly-fedora/</link>
		<comments>http://blog.colovirt.com/2009/03/17/linuxsecurity-scponly-sftp-fix-for-redhat-and-centos-5x-and-possibly-fedora/#comments</comments>
		<pubDate>Tue, 17 Mar 2009 14:50:12 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Security]]></category>
		<category><![CDATA[/dev/null]]></category>
		<category><![CDATA[5.x]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[chroot]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[jail]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[make jail]]></category>
		<category><![CDATA[null]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[scponly]]></category>
		<category><![CDATA[scponly fails]]></category>
		<category><![CDATA[sftp]]></category>
		<category><![CDATA[subsystem]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=464</guid>
		<description><![CDATA[Linux/Security: Scponly SFTP Fix For RedHat and Centos 5.x (and possibly Fedora)<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=464&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>The current scponly release does not function correctly out of the box for 5.x Redhat and Centos distributions.  I was unable to test Fedora, but I expect the same problems there.  Accounts created with scponly will fail to connect via scp or sftp without a /dev/null device inside the users chroot (jail).  The bad thing  is that enabling debugging and checking the logs will show now issue.  The logs showed ssh authenticate the username and password and drop the session to the sftp subsystem.  After that, it would just show a disconnect.  Below is the fixed I used to get scponly working.</p>
<p><strong>Using scponly &#8220;make jail&#8221; command to setup the initial user.  I removed most of the generic output from the command.</strong></p>
<pre>[root@testserver01 scponly-4.8]# make jail
/usr/bin/install -c -d /usr/local/bin
/usr/bin/install -c -d /usr/local/man/man8
/usr/bin/install -c -d /usr/local/etc/scponly
/usr/bin/install -c -o 0 -g 0 scponly /usr/local/bin/scponly
/usr/bin/install -c -o 0 -g 0 -m 0644 scponly.8 /usr/local/man/man8/scponly.8
/usr/bin/install -c -o 0 -g 0 -m 0644 debuglevel /usr/local/etc/scponly/debuglevel
if test "xscponlyc" != "x"; then
		/usr/bin/install -c -d /usr/local/sbin;
		rm -f /usr/local/sbin/scponlyc;
		cp scponly scponlyc;
		/usr/bin/install -c -o 0 -g 0 -m 4755 scponlyc /usr/local/sbin/scponlyc;
	fi
chmod u+x ./setup_chroot.sh
./setup_chroot.sh

Username to install [scponly]newact
home directory you wish to set for this user [/home/newact]
name of the writeable subdirectory [incoming]

creating  /home/newact/incoming directory for uploading files

Your platform (Linux) does not have a platform specific setup script.
This install script will attempt a best guess.
If you perform customizations, please consider sending me your changes.
Look to the templates in build_extras/arch.
 - joe at sublimation dot org

please set the password for newact:
Changing password for user newact.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully.</pre>
<p><strong><span id="more-464"></span>Now that the user is created, lets test the sftp session from a different system</strong></p>
<pre>user1@workstation03:~/.ssh$ sftp newact@10.1.3.43
Connecting to 10.1.3.43...
newact@10.1.3.43's password:
Connection closed</pre>
<p><strong>So we see that the connection failed.  The reason here is that there is no /dev/null device within the users chrooted home (jail).  Scponly does not auto-create this needed device.</strong></p>
<pre>[root@testserver01 scponly-4.8]# mkdir -p /home/newact/dev/
[root@testserver01 scponly-4.8]# cp -a /dev/null /home/newact/dev/</pre>
<p><strong>After re-testing the connection, you can see that everything is now functioning fine.  I was able to push a file to the incoming folder in the working chrooted (jailed) environment.</strong></p>
<pre>user1@workstation03:~/.ssh$ sftp newact@10.1.3.43
Connecting to 10.1.3.43...
newact@10.1.3.43's password:
sftp&gt; ls
dev       etc       incoming  lib       usr
sftp&gt; cd incoming
sftp&gt; put testfile
Uploading testfile to /incoming/testfile
testfile                                                                                                100%  885     0.9KB/s   00:00
sftp&gt; exit</pre>
<p><strong>Notes: For each user account that you create with scponly chrooting scripts, you will need to create the dev directory, as well as the null device under the users home directory.  This is definitely something that can be manually added to the setup_chroot.sh easily.<br />
</strong></p>
<br />Posted in Linux, Security  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/464/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/464/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/464/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/464/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/464/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/464/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/464/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/464/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=464&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2009/03/17/linuxsecurity-scponly-sftp-fix-for-redhat-and-centos-5x-and-possibly-fedora/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
		<item>
		<title>Linux/Networking: Persistent Changing Of Network Settings (/etc/sysconfig)</title>
		<link>http://blog.colovirt.com/2009/03/12/linuxnetworking-persistent-changing-of-network-settings/</link>
		<comments>http://blog.colovirt.com/2009/03/12/linuxnetworking-persistent-changing-of-network-settings/#comments</comments>
		<pubDate>Thu, 12 Mar 2009 17:27:10 +0000</pubDate>
		<dc:creator>Kevin Goodman</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[/etc/sysconfig]]></category>
		<category><![CDATA[/etc/sysconfig/network-scripts/]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[gateway]]></category>
		<category><![CDATA[hostname]]></category>
		<category><![CDATA[hosts]]></category>
		<category><![CDATA[ifconfig]]></category>
		<category><![CDATA[ip]]></category>
		<category><![CDATA[ip address]]></category>
		<category><![CDATA[LinkedIn]]></category>
		<category><![CDATA[networkin]]></category>
		<category><![CDATA[redhat]]></category>
		<category><![CDATA[sysconfig]]></category>

		<guid isPermaLink="false">http://blog.colovirt.com/?p=456</guid>
		<description><![CDATA[Linux/Networking: Persistent Changing Of Network Settings (/etc/sysconfig)<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=456&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></description>
			<content:encoded><![CDATA[<p>I know that this is lower level administrative work, but there are a lot of new system administrators out there.  This is a walk through of how to change the hostname and IP of a pre-configured Linux (<strong>Redhat, Centos, Fedora, etc</strong>) system.</p>
<pre>Original hostname:	newhn.testdomain.com
Original IP:		10.1.1.65</pre>
<p><strong>Make sure to edit the host file!  If not, this can real havoc on daemons that bind to network ports.</strong></p>
<pre>[root@orighn ssh]# vi /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost
::1             localhost6.localdomain6 localhost6
10.1.1.65            orighn.testdomain.com orighn</pre>
<p><strong>Change to</strong></p>
<pre># Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1               localhost.localdomain localhost
::1             localhost6.localdomain6 localhost6
10.1.1.40            newhn.testdomain.com newhn</pre>
<p><span id="more-456"></span><strong>If you want the changes to be persistent through a reboot, the stored configuration files under /etc/sysconfig also need to be modified.</strong></p>
<p><strong>Change the hostname to newhn.  If the server was being moved to a different subnet, or needed to route though another gateway, GATEWAY would need to be changed here as well.</strong></p>
<pre>[root@orighn ssh]# vi /etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=yes
HOSTNAME=orighn.testdomain.com	-&gt; newhn.testdomain.com
GATEWAY=10.1.1.1</pre>
<p><strong>Each network port has a configuration script prefixed with ifcfg-*.  Depending on your setup, the server could have a different IP per port or have a bonded port setup.  In those cases, you will have to determine which file needed to be modified by viewing each one.  This example changes the ip for the eth0 port(1 on the back of the server).</strong></p>
<pre>[root@orighn ssh]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0
BOOTPROTO=static
DHCPCLASS=
HWADDR=00:50:56:A0:02:B2
IPADDR=10.1.1.65			-&gt; 10.1.1.40
NETMASK=255.255.255.0
ONBOOT=yes</pre>
<p><strong>Changes are done, last thing to do is restart the system to make sure changes are persistent.</strong></p>
<pre>[root@orighn ssh]# reboot -f
Ok, reboot and watch pings
kgoodman@kdesk:~$ ping 10.1.1.40
PING 10.1.1.40 (10.1.1.40) 56(84) bytes of data.
64 bytes from 10.1.1.40: icmp_seq=35 ttl=61 time=8.09 ms
64 bytes from 10.1.1.40: icmp_seq=36 ttl=61 time=1.69 ms
64 bytes from 10.1.1.40: icmp_seq=37 ttl=61 time=1.93 ms
64 bytes from 10.1.1.40: icmp_seq=38 ttl=61 time=1.74 ms
64 bytes from 10.1.1.40: icmp_seq=39 ttl=61 time=3.19 ms
^C
--- 10.1.1.40 ping statistics ---
39 packets transmitted, 5 received, 87% packet loss, time 38240ms
rtt min/avg/max/mdev = 1.696/3.333/8.095/2.443 ms</pre>
<p><strong>It came up!  SSH to the server and check to make sure the hostname change to effect as well.</strong></p>
<pre>[root@newhn ~]# hostname
newhn.testdomain.com</pre>
<p><strong>Verify the ip information as well.</strong></p>
<pre>[root@newhn ~]# ifconfig eth0
eth0      Link encap:Ethernet  HWaddr 00:50:56:A0:02:B2
inet addr:10.1.1.40  Bcast:192.168.0.255  Mask:255.255.255.0
inet6 addr: fe80::250:56ff:fea0:2b2/64 Scope:Link
UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
RX packets:407 errors:0 dropped:0 overruns:0 frame:0
TX packets:433 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:34117 (33.3 KiB)  TX bytes:48091 (46.9 KiB)
Interrupt:177 Base address:0x1400</pre>
<p><strong>Notes: Depending on what you call Linux, some systems will not have the /etc/sysconfig/ directory structure.  This is due to some flavors being toted as a Linux distribution actually being derived from Unix/BSD systems.<br />
</strong></p>
<br />Posted in Linux, Networking  <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/colovirt.wordpress.com/456/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/colovirt.wordpress.com/456/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/colovirt.wordpress.com/456/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/colovirt.wordpress.com/456/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gofacebook/colovirt.wordpress.com/456/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/facebook/colovirt.wordpress.com/456/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gotwitter/colovirt.wordpress.com/456/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/twitter/colovirt.wordpress.com/456/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/colovirt.wordpress.com/456/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/colovirt.wordpress.com/456/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/colovirt.wordpress.com/456/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/colovirt.wordpress.com/456/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/colovirt.wordpress.com/456/"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/colovirt.wordpress.com/456/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=blog.colovirt.com&amp;blog=5256186&amp;post=456&amp;subd=colovirt&amp;ref=&amp;feed=1" width="1" height="1" />]]></content:encoded>
			<wfw:commentRss>http://blog.colovirt.com/2009/03/12/linuxnetworking-persistent-changing-of-network-settings/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	
		<media:content url="" medium="image">
			<media:title type="html">Kevin Goodman</media:title>
		</media:content>
	</item>
	</channel>
</rss>
