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

<channel>
	<title>thinking sysadmin &#187; linux</title>
	<atom:link href="http://andyleonard.com/tag/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://andyleonard.com</link>
	<description>qstat -u aleonard -s z</description>
	<lastBuildDate>Fri, 30 Jul 2010 17:47:40 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Installing the F5 FirePass VPN Client on Ubuntu 10.04 AMD64</title>
		<link>http://andyleonard.com/2010/05/20/installing-the-f5-firepass-vpn-client-on-ubuntu-10-04-amd64/</link>
		<comments>http://andyleonard.com/2010/05/20/installing-the-f5-firepass-vpn-client-on-ubuntu-10-04-amd64/#comments</comments>
		<pubDate>Thu, 20 May 2010 19:12:21 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[operating systems]]></category>
		<category><![CDATA[10.04]]></category>
		<category><![CDATA[f5]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[firepass]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[lucid lynx]]></category>
		<category><![CDATA[lynx]]></category>
		<category><![CDATA[mozilla]]></category>
		<category><![CDATA[ssl vpn]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://andyleonard.com/?p=474</guid>
		<description><![CDATA[Disclaimer: I am not a FirePass administrator; only an end-user and have no other relationship with F5.  There may be better methods to address this issue; please comment if you know of one.
See also: f5vpn-login.py, described here, and brought to my attention by sh4k3sph3r3.  A CLI FirePass client is quite likely a better [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Disclaimer:</strong> I am not a FirePass administrator; only an end-user and have no other relationship with F5.  There may be better methods to address this issue; please comment if you know of one.</p>
<p><strong>See also:</strong> <a href="http://fuhm.net/software/f5vpn-login/">f5vpn-login.py</a>, described <a href="http://fuhm.net/software/f5vpn-login/README">here</a>, and brought to my attention by <a href="http://andyleonard.com/2010/05/20/installing-the-f5-firepass-vpn-client-on-ubuntu-10-04-amd64/#comment-439">sh4k3sph3r3</a>.  A CLI FirePass client is quite likely a better solution than separate browser instances, etc.</p>
<p><strong>Preliminaries:</strong> Although the F5 FirePass SSL VPN product supports Linux, as best as I can tell, that support is somewhat limited: My understanding is that they officially claim support for 32-bit installs only, and they do not appear to track new distribution releases particularly aggressively.  F5 has also been somewhat slow in supporting new browser versions: They <a href="http://devcentral.f5.com/weblogs/f5news/archive/2008/10/06/firepass-v6.0.3-released.aspx">announced support for Firefox 3</a> on October 6, 2008, nearly four months after its release and with only two months to go before Firefox 2 was end-of-lifed.  For Firefox 3.6 support, a comment on the post linked above states that you need to request a special hot fix from F5 (which my site has not applied).  There is no Google Chrome support that I am aware of.</p>
<p>Further, F5&#8217;s automated client installation tools have unfortunately never worked for me on Linux, even when the architecture and browser are in their support matrix.  The manual download instruction links are also broken on the FirePass install I connect to.</p>
<p><strong>Solution:</strong> Install a dedicated, 32-bit version of Firefox in a supported version; create a single-purpose Firefox profile for VPN use.  Add the FirePass client to that browser and the operating system.<br />
<span id="more-474"></span><br />
For the Firefox install, follow the &#8220;Manual Installation&#8221; instructions from the <a href="https://help.ubuntu.com/community/FirefoxNewVersion/MozillaBuilds">Ubuntu Community Documentation</a> site.  Install version 3.5 if your site does not have the hotfix mentioned above.</p>
<p>Be sure to create a new Firefox profile in your account for use with the FirePass; however, I recommend modifying the script in the Ubuntu documentation to automatically take you to your FirePass site (https://firepass.example.com/ for the purposes of this post):</p>
<pre class="brush: bash;">
#!/bin/bash
exec &quot;\$HOME/firefox/firefox&quot; -P mozilla-build https://firepass.example.com/
</pre>
<p>Next, download the client components from your F5 site; again, assuming firepass.example.com, retrieve and save:</p>
<p>https://firepass.example.com/vdesk/vpn/nogzip/downloads.php/linux/np_F5_SSL_VPN.so</p>
<p>and</p>
<p>https://firepass.example.com/vdesk/vpn/nogzip/downloads.php/linux/SSLVpn.tgz</p>
<p>Move np_F5_SSL_VPN.so to the plugins directory of the new Firefox installation &#8211; ~/firefox/plugins if following the Ubuntu documentation.  Based on file layout, it appears that F5 intended for you to extract SSLVpn.tgz at the root of your file system.  Instead of following this bad practice, in scratch space and as root, extract the SSLVpn.tgz tarball and manually move the files into place:</p>
<pre class="brush: bash; light: true;">
cp SSLVpn.tgz /tmp
cd /tmp
sudo tar -xvpzf SSLVpn.tgz
# inspect extracted files here...
cd /usr/local/lib
mkdir -p F5Networks/SSLVPN
cd /tmp/usr/local/lib/F5Networks/SSLVPN
cp -Rp etc svpn var /
</pre>
<p>Using the bash script above, you should now be able to launch your purpose-built FirePass browser installation and have it &#8220;just work&#8221; for Network Access.  Good luck!</p>
]]></content:encoded>
			<wfw:commentRss>http://andyleonard.com/2010/05/20/installing-the-f5-firepass-vpn-client-on-ubuntu-10-04-amd64/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>VMware/NFS/NetApp SnapRestore/Linux LVM Single File Recovery Notes</title>
		<link>http://andyleonard.com/2009/06/01/vmwarenfsnetapp-snaprestorelinux-lvm-single-file-recovery-notes/</link>
		<comments>http://andyleonard.com/2009/06/01/vmwarenfsnetapp-snaprestorelinux-lvm-single-file-recovery-notes/#comments</comments>
		<pubDate>Mon, 01 Jun 2009 21:55:54 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[virtualization]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[netapp]]></category>
		<category><![CDATA[nfs]]></category>
		<category><![CDATA[snaprestore]]></category>
		<category><![CDATA[vmware]]></category>
		<category><![CDATA[vmware esx]]></category>

		<guid isPermaLink="false">http://andyleonard.com/?p=241</guid>
		<description><![CDATA[There have been a few posts elsewhere discussing file-level recovery for Linux VMs on NetApp NFS datastores, but none that have dealt specifically with Linux LVM-encapsulated partitions.
Here&#8217;s our in-house procedure for recovery; note that we do not have FlexClone licensed on our filers.

Prerequisites

An existing VMware ESX infrastructure, connected to a NetApp filer NFS datastore; SnapRestore [...]]]></description>
			<content:encoded><![CDATA[<p>There have been a few posts <a href="http://storagefoo.blogspot.com/2007/10/vmware-over-nfs-backup-trickscontinued.html">elsewhere</a> discussing file-level recovery for Linux VMs on NetApp NFS datastores, but none that have dealt specifically with Linux LVM-encapsulated partitions.</p>
<p>Here&#8217;s our in-house procedure for recovery; note that we do not have FlexClone licensed on our filers.<br />
<span id="more-241"></span><br />
<strong>Prerequisites</strong></p>
<ul>
<li>An existing VMware ESX infrastructure, connected to a NetApp filer NFS datastore; SnapRestore speeds the recovery process but is not mandatory &#8211; see discussion below.</li>
<li>A backup script or system which coordinates VMware snapshots with NetApp snapshots &#8211; perhaps something along the lines of <a href="http://vmwaretips.com/wp/2008/12/05/netapp-snapshots-in-esx-take-2/">Rick Scherer&#8217;s script</a>.</li>
<li>A dedicated Linux restore VM, at a similar version level to the rest of your Linux VM infrastructure.  This VM should have LVM support, but <em>should not have any volume groups (VGs) or logical volumes (LVs) configured</em> &#8211; volume group and logical volume names on the VMDK you are restoring from must not conflict with VGs and LVs already in use on the restore system; the simplest way to guarantee this is to simply not have any VGs or LVs.</li>
</ul>
<p><strong>Restore Procedure</strong></p>
<ul>
<li>Restore the VMDK file from the appropriate snapshot to a <em>new location</em> in the datastore.  With SnapRestore, this can be done as follows (one line in the filer CLI, restoring from snapshot sv_daily.0 to a new file &#8211; again, <strong>be extremely careful not to overwrite the current version of the VMDK in your datastore</strong>, consider restoring to an entirely different directory in the FlexVol):
<p><code>snap restore -t file -s sv_daily.0<br />
-r /vol/vmware04_sis/system.example.com/system.example.com-restore.vmdk<br />
/vol/vmware04_sis/system.example.com/system.example.com.vmdk</code></p>
<p>Follow the prompts, verifying the restore path is correct and is not the path to your existing VMDK.  Do the same for the flat VMDK file (again, one line, and, as before, <strong>use caution to make sure you do not clobber an existing file</strong>):</p>
<p><code>snap restore -t file -s sv_daily.0<br />
-r /vol/vmware04_sis/system.example.com/system.example.com-restore-flat.vmdk<br />
/vol/vmware04_sis/system.example.com/system.example.com-flat.vmdk</code></p>
<p>Without SnapRestore, you can simply mount the NFS export of the datastore on a Linux machine and use &#8220;cp&#8221; to copy the files out of the snapshot.  For flat VMDK files, expect this copy to run for a substantial amount of time compared the nearly-instant recovery SnapRestore offers.</li>
<li>Manually edit the line below &#8220;# Extent description&#8221; in the recovered .vmdk file to match the path to the recovered flat VMDK.  In this case, it would look something like this:<br />
<code># Extent description<br />
RW 20971520 VMFS "system.example.com-restore-flat.vmdk"</code></li>
<li>Attach the recovered VMDK to your powered-off restore host.  Boot the restore host.</li>
<li>Once your restore host is up, use &#8220;pvscan&#8221;, &#8220;vgscan&#8221; and &#8220;lvscan&#8221; (each without arguments) as root to examine available LVM components.  Then, use the &#8220;lvchange&#8221; command to activate the necessary volume group (in this case, &#8220;VolGroup00&#8243;):<br />
<code># lvchange -ay VolGroup00</code></li>
<li>Mount the appropriate logical volume &#8211; for example, LogVol00 in VolGroup00:<br />
<code>mount -o ro /dev/VolGroup00/LogVol00 /mnt</code><br />
Restore files by copying them out of /mnt.</li>
</ul>
<p><strong>Cleanup</strong></p>
<ul>
<li>Shut down the Linux restore host.</li>
<li>Remove the recovery VMDK &#8211; the files restored with SnapRestore or by &#8220;cp&#8221; above &#8211; from the restore host in the VMware Infrastructure Client.</li>
<li>Delete the recovery .vmdk and -flat.vmdk files in the NFS datastore.  <strong>Don&#8217;t screw up here: Be sure to delete the recovery files only, not the working VMDK.</strong></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://andyleonard.com/2009/06/01/vmwarenfsnetapp-snaprestorelinux-lvm-single-file-recovery-notes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Links, 9/10/2008</title>
		<link>http://andyleonard.com/2008/09/10/links-9102008/</link>
		<comments>http://andyleonard.com/2008/09/10/links-9102008/#comments</comments>
		<pubDate>Wed, 10 Sep 2008 19:57:08 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[link dump]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[timekeeping]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://andyleonard.com/?p=80</guid>
		<description><![CDATA[
Timekeeping best practices for Linux &#8211; &#8220;This article presents best practices for Linux timekeeping. These recommendations include specifics on the particular kernel command line options to use for the Linux operating system of interest. There is also a description of the recommended settings and usage for NTP time sync, configuration of VMware Tools time synchronization, [...]]]></description>
			<content:encoded><![CDATA[<ul>
<li><a href="http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&#038;cmd=displayKC&#038;externalId=1006427">Timekeeping best practices for Linux</a> &#8211; &#8220;This article presents best practices for Linux timekeeping. These recommendations include specifics on the particular kernel command line options to use for the Linux operating system of interest. There is also a description of the recommended settings and usage for NTP time sync, configuration of VMware Tools time synchronization, and Virtual Hardware Clock configuration, to achieve best timekeeping results.&#8221;  Where has this document been since I started deploying VMware?  Oh, wait, looks like it may have been written on August 19th&#8230; Still, thanks, VMware &#8211; exactly what I wanted!</li>
<li><a href="http://viops.vmware.com/home/index.jspa">VI:OPS</a> &#8211; A new VMware site: &#8220;We created VI:OPS to widen the discussion beyond pure, deep technical by adding five topics that VMware staff, partners and customers talk about all the time but where there is no online collaboration facility for these topics.&#8221;  I found the above link through a post on this site.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://andyleonard.com/2008/09/10/links-9102008/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Links, 6/23/2008</title>
		<link>http://andyleonard.com/2008/06/23/links-6232008/</link>
		<comments>http://andyleonard.com/2008/06/23/links-6232008/#comments</comments>
		<pubDate>Mon, 23 Jun 2008 18:54:15 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[link dump]]></category>
		<category><![CDATA[advfs]]></category>
		<category><![CDATA[hp]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[scalability]]></category>
		<category><![CDATA[tru64]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://andyleonard.com/?p=37</guid>
		<description><![CDATA[
Blocks &#038; Files: Now HP contributes HPC file system to open source &#8211; &#8220;HP has contributed its Tru64 UNIX Advanced File System (AdvFS) source code to the open source community, meaning Linux.&#8221;  It&#8217;s been a long time since I&#8217;ve used AdvFS (the last time I used Tru64 was in 2003 or so), but it [...]]]></description>
			<content:encoded><![CDATA[<ul>
<li><a href="http://www.blocksandfiles.co.uk/article/5686">Blocks &#038; Files: Now HP contributes HPC file system to open source</a> &#8211; &#8220;HP has contributed its Tru64 UNIX Advanced File System (AdvFS) source code to the open source community, meaning Linux.&#8221;  It&#8217;s been a long time since I&#8217;ve used AdvFS (the last time I used Tru64 was in 2003 or so), but it seems to me that this would maybe have been a lot more exciting if it had happened in 2000 or so.  They do have a site up on <a href="http://advfs.sourceforge.net/">SourceForge</a> with source code already available for download, but I have to wonder how much interest this is going to attract with all the other file systems already out there.</li>
<li><a href="http://blogs.vmware.com/performance/2008/06/scaling-real-li.html">VMware VROOM!: Scaling real-life Web server workloads</a> &#8211; &#8220;While the performance of each single-VCPU virtual machine is slightly lower than that of a one-CPU native machine (because of virtualization overhead), the cumulative performance of the multiple virtual machines well exceeds the performance of a large SMP native machine (because serialization penalties are reduced).&#8221;  In other words, if you know that you have a scale out (instead of scale up) application, you can scale out by scaling up your virtualization server.</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://andyleonard.com/2008/06/23/links-6232008/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Kickstarting CentOS 5.1 &#8211; Not from a yum repository any more</title>
		<link>http://andyleonard.com/2008/02/15/kickstarting-centos-51-not-from-a-yum-repository-any-more/</link>
		<comments>http://andyleonard.com/2008/02/15/kickstarting-centos-51-not-from-a-yum-repository-any-more/#comments</comments>
		<pubDate>Fri, 15 Feb 2008 14:47:27 +0000</pubDate>
		<dc:creator>Andy</dc:creator>
				<category><![CDATA[operating systems]]></category>
		<category><![CDATA[centos]]></category>
		<category><![CDATA[kickstart]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[pxe]]></category>

		<guid isPermaLink="false">http://andyleonard.com/2008/02/15/kickstarting-centos-51-not-from-a-yum-repository-any-more/</guid>
		<description><![CDATA[In the past, I&#8217;ve used our local mirror of the CentOS yum repository to kickstart machines booted using PXE; apparently, this no longer works with CentOS 5.1, although it did with 5.0.  If you attempt to do so, after the initial PXE boot, you get the following message:

The CentOS installation tree in that directory [...]]]></description>
			<content:encoded><![CDATA[<p>In the past, I&#8217;ve used our local mirror of the CentOS yum repository to kickstart machines booted using PXE; apparently, this no longer works with CentOS 5.1, although it did with 5.0.  If you attempt to do so, after the initial PXE boot, you get the following message:</p>
<p><code><br />
The CentOS installation tree in that directory does not seem to match your boot media.<br />
</code><br />
<span id="more-16"></span><br />
The solution?  Download the 5.1 DVD iso image, copy its contents to your disk and re-run the &#8220;pxeos&#8221; command to use that as your installation tree.  I&#8217;m not sure if this was an oversight or a conscious change on the part of the CentOS project (or if the yum repository method was never supported in the first place), but it stumped me for a little while, so I thought I&#8217;d post it here.</p>
]]></content:encoded>
			<wfw:commentRss>http://andyleonard.com/2008/02/15/kickstarting-centos-51-not-from-a-yum-repository-any-more/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
