<?xml version='1.0' encoding='utf-8' ?>
<rss version='2.0'>
<channel>
	<title>neilpahl.com Logs Feed: All Logs</title>
	<link></link>
	<description></description>
	<pubDate>Thu, 22 Jul 21 07:35:35 -0400</pubDate>
	<ttl>60</ttl>
	<item>
		<title>Vim As My IDE:: Entry 4: Time to branch my generic Vim setup</title>
		<description><![CDATA[Since my last post, I've been trying different programming languages, and different vim modules &amp; settings to accomodate those. I currently have a generic vim setup, which is getting mixed up as I switch between different 'modes' of development.Coming soon, I'll create different vim profiles so that I can easily switch between the different 'mode' I'm in.For each mode, I'll make a new git repository, define custom code snippets for autocompletion and pick focused modules.I am going to need a way to easily switch between these profiles on my computer as well.]]></description>
		<pubDate>Wed, 28 Aug 13 23:59:09 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/vim/4/</link>
	</item>
	<item>
		<title>Ninja Skills:: Entry 1: Training those Ninja Skills</title>
		<description><![CDATA[Good system admins are able easily look through directories and files for specific targets or patterns and then either aggregate data for easy viewing or perform tasks on files.If its something done regularly, then one would usually design a script which can handle the task.However, if its a one off task then the best case scenario is having access to some ninja skills and tools which can make the job less tedious and more efficient. Otherwise, you're stuck doing things manually.Throughout this log, I will pick out entries from www.commandlinefu.com and break down the building blocks of that elegant (intimidating to some) command.]]></description>
		<pubDate>Wed, 28 Aug 13 22:56:31 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/ninja-skills/1/</link>
	</item>
	<item>
		<title>OpenVPN on Ubuntu Server Behind Firewall:: Entry 3: Access Remote Intranet (Web Resources or GUIs) via SSH Tunnel</title>
		<description><![CDATA[Alot of the time I need to join via VPN just so that I can reach the web resources which are only offered on the remote LAN. In this case, seting up a complete VPN infrastructure can be overkill and more efffort than I would like.So, instead I create an ssh tunnel and route my web traffic to the remote LAN. With just a simple ssh tunnel, and a little configuration to Firefox, I no longer have to add to the complexity of my server on that network. I believe that a simpler setup can reduce vulnerabilities down the line as there is less software you need to keep applying security patches for.First I need to bind a port to the ssh tunnel. I'm going to use port 1080 since its the one used for the SOCKS proxy in firefox that allows us to use the remote dns. Other uses may require a different port to be bound.In Linux, just add the -D option to your regular ssh command:ssh -D 1080 username@remoteiporaddress.com -p 22the -D is to bind port 1080. the -]]></description>
		<pubDate>Tue, 24 Jul 12 01:36:38 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/remote-administration/openvpn-on-ubuntu-server-behind-firewall/3-access-remote-intranet-web-resources-or-guis-via-ssh-tunnel/</link>
	</item>
	<item>
		<title>Vim As My IDE:: Entry 3:  update_bundles Script Can now Handle Hg (Mercurial) Repos</title>
		<description><![CDATA[I modified the update bundles script which I use to manage my vim plugins (along with Tim Pope's pathogen) so that it can download plugins which are held in hg repositories.I needed to do this in order to have it get the autcomplpop plugin which will allow popup autocompletion while coding. to use this plugin I had to also download the L9 Library which is written by the same author and held in a hg repo on bitbucket. my vim configs are in my git repo:https://github.com/neildaemond/np-vim]]></description>
		<pubDate>Mon, 02 Jul 12 04:13:45 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/vim/3-update_bundles-script-can-now-handle-hg-mercurial-repos/</link>
	</item>
	<item>
		<title>Version Control:: Entry 2: Snippets From A Great Git Branching Model</title>
		<description><![CDATA[A great git branching model was proposed on nvie.com and can be found here:http://nvie.com/posts/a-successful-git-branching-model/I highly recommend anyone to first go and read it since it is very elegantly explained, along with pleasant diagrams. Here, I'm just going to highlight a few of the code snippets for my own reference.A] Main Branches- There are 2 main branches... develop and master.- Master is assumed to be production ready, develop is branched from master and merged back to master when it is stable enough.- Master is tagged with a version each time it is updated.Using my private repo that I set up in my last entry, I'll switch to the master branch(probably already starts there but I'll be explicit), then tag my first version of mastergit checkout origin master
git tag -a '0.01' -m 'first version 0.01'
next, I would create and checkout a dev branchgit checkout -b develop masterwhich is just short forgit branch develop master
git checkout developso, if you don't need to checkout develop,]]></description>
		<pubDate>Fri, 29 Jun 12 09:56:01 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/software-development/version-control/2-snippets-from-a-great-git-branching-model/</link>
	</item>
	<item>
		<title>Version Control:: Entry 1: Serving a Private Git Repo With Sharing</title>
		<description><![CDATA[This is pretty much a sumary of what was already said at ...http://git-scm.com/book/en/Git-on-the-Server-Setting-Up-the-Server... plus a few customizations and a suggested method of how to init a bare git repo for a user that is restricted by git-shell.Step 1)Install Git server:sudo apt-get install git-server
after installing git-server create a user account which will own the shared repo. Usually just using 'git' is ok, but if you are serving to different organizations, then you would liek to give them their own username so that they cannot access all the other projects ( I would prefix their username with git so that I can recognize why that user is on my system... something like gitjsdesign). If you're on a shared server or cloud, you can protect the data by encrypting their home folder... using (in Ubuntu at least)..adduser --encrypt-home gitjsdesignwithout encryption, you can use:adduser gitjsdesignstep 2)ask gitjsdesign to use ssh and create a public key which they can send(email) you.]]></description>
		<pubDate>Fri, 29 Jun 12 01:32:52 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/software-development/version-control/1-creating-a-private-git-repo-with-sharing/</link>
	</item>
	<item>
		<title>Lift:: Entry 5: Github Fork For My Personalised Skeleton Liftweb App</title>
		<description><![CDATA[I forked heiflo's github project so that I can customize it a bit and use it as my skeleton liftweb projects in the future while not having to worry about it being updated and breaking my comfortable configurations. Mainly, I just wanted to change the jetty port... repo found here:https://github.com/neildaemond/lift-basic-2.4-sbt-0.11.2.gitFeel free to clone/fork as you please]]></description>
		<pubDate>Fri, 29 Jun 12 00:17:32 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/jvm/scala/lift/5-github-fork-for-my-personalised-skeleton-liftweb-app/</link>
	</item>
	<item>
		<title>Lift:: Entry 4: Move to sbt 0.11.3 Broke Lifty</title>
		<description><![CDATA[I gave sbt 0.11.3 a go and lifty broke. I guess moving to the newest versions of sbt isn't the greatest idea, since it carries the potential for breaking its plugins. However, did I really need lifty anyways? Now I'm thinking not really.Thanks to heiflo on github who has a nice project going that has a skeleton project using lift 2.4, and sbt 0.11.2. This project contains all the configurations and such sorted out for the new versions of sbt. I just need to clone the project from https://github.com/heiflo/lift-basic-2.4-sbt-0.11.2, cd into the directory and run ./sbtThe first load takes a while to download the dependancies, but then you are set. Now onto the coding...]]></description>
		<pubDate>Thu, 28 Jun 12 00:23:54 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/jvm/scala/lift/4-move-to-sbt-0.11.3-broke-lifty/</link>
	</item>
	<item>
		<title>Processwire CMS Security Analysis:: Entry 1: Motivations</title>
		<description><![CDATA[So I've began reading Hacking Exposed 3 - Web Applications. Also, I've been developing websites using the Processwire CMS which, in my opinion, is THE best CMS for any website developer who wants to make truely customized and perfectly tailored designs. I ended up using this CMS after EXTENSIVE research into Drupal, Wordpress, and even some of the smaller ones like Get Simple. I tried them all out and found that (minus the available plugins for wordpress and drupal) is much more simple, flexible and powerfull. With some enginuity, you'll blow the compeditors out of the water with its jquery inspired API. I use is for my personal site, but focusing on functionality, I have not taken the time to make my personal site all that pretty in design... eventually I will.So, my goal with this log is to work through the techniques and principles mentions in this text while testing out the Processwire CMS. I'm sure it I won't find anything really sine the creator of Processwire, Ryan Cramer,]]></description>
		<pubDate>Mon, 25 Jun 12 09:58:05 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/security-projects-public/processwire-cms-security-analysis/1-motivations/</link>
	</item>
	<item>
		<title>Lift:: Entry 3: First Steps Developing with Lift</title>
		<description><![CDATA[Ok, so I'm going to let lifty build my project and directory structure... but, I'll make it start with the project-blank recipe.So far, I installed sbt 0.10 and put the suggested build.sbt and project/plugins.sbt into the project's root folder. But it turns out that lifty can take care of all that now anyways (they were out of sync before the 1.7.5-SNAPSHOT).But, it turns out that lifty was more convinient than I thought. I origionally used the 1.7.4 version, but it had issues with it and sbt .10, so the 1.7.5-SNAPSHOT version ended up working. Installing lifty is easy, as all you need to do is create the following global sbt settings:~/.sbt/plugins/build.sbtresolvers += Resolver.url("sbt-plugin-snapshots", new URL("http://scalasbt.artifactoryonline.com/scalasbt/sbt-plugin-snapshots/"))(Resolver.ivyStylePatterns)addSbtPlugin("org.lifty" % "lifty" % "1.7.5-SNAPSHOT")(leave a one line space between both statements)~/.sbt/build.sbtseq( Lifty.liftySettings : _*) And that's it to installing Lifty!]]></description>
		<pubDate>Sat, 16 Jun 12 01:22:31 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/jvm/scala/lift/3-first-steps-developing-with-lift/</link>
	</item>
	<item>
		<title>Lift:: Entry 2: Configuring SBT for Lift</title>
		<description><![CDATA[First, your going to need to install sbt. you can use your package manager like "apt-get install sbt", but last time it gave me the older version. I followed the unix instructions:Download sbt-launch.jar and place it in ~/bin.Create a script to run the jar, by placing this in a file called sbt in your ~/bin directory:java -Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=384M -jar `dirname $0`/sbt-launch.jar "$@"
Make the script executable:$ chmod u+x ~/bin/sbt
Then, going through the process of figuring out sbt for the second time, I realized its actually quite easy if you follow the instructions they have on assembla. The first time was confusing because they give instructions for the outdated version (which has a higher version number [0.7 &gt; 0.10] when .10 is actually newer)Lift documentation seems to be trying to catch up to the switch from sbt 0.7 to 0.10 (i still dont get why .1 is new than .7 since .7 is clearly greater than .1,]]></description>
		<pubDate>Thu, 14 Jun 12 10:02:58 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/jvm/scala/lift/2-configuring-sbt-for-lift/</link>
	</item>
	<item>
		<title>Lift:: Entry 1: SBT or Maven?</title>
		<description><![CDATA[I've been meaning to post this for a bit, but a very strange bug caused by a third party service provided by my web host had my page rendered uneditable for a brief while. I wouldn't mind hosting this site on my own servers, but I've already paid for this place... Anyways, back to the post:At first, when I first started studying scala and lift, I was under the impression that Maven was the way to go to manage ones Lift (liftweb) projects. I began with (and still am) reading Programming in Scala (http://www.artima.com/shop/programming_in_scala) to learn the fascinating scala language.After reading enough to get an idea, I am ready to dive in and get some hands on experience with it.Really wanting to get my lift skills going, I figured I'd start with a mainly theoretical knowledge of scala,]]></description>
		<pubDate>Wed, 13 Jun 12 09:27:57 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/jvm/scala/lift/1-sbt-or-maven/</link>
	</item>
	<item>
		<title>Vim As My IDE:: Entry 2: My Vim Configurations in a Github Repo</title>
		<description><![CDATA[I have added my vim configurations to github at:https://github.com/neildaemond/np-vimfeel free to check it out~]]></description>
		<pubDate>Sat, 05 May 12 04:19:13 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/vim/2-my-vim-configurations-in-a-github-repo/</link>
	</item>
	<item>
		<title>Vim As My IDE:: Entry 1: Topic Intro</title>
		<description><![CDATA[Growing up, I used Notepad. Then some MS Visual studios and Eclipse. I went on to use Notepad++ for c programming, then progressed back into text-based IDE's by trying out Emacs.While Emacs made my pinky sore, VIM... well, I just fell in love with vim.I focused a solid few weeks doing everything in vim, even though the learning curve was steep. I kept the keyboard cheat sheet nearby and drudged on. Now the VIM-style keyboard navigation is second nature and is a lot more efficient and less frustrating then reaching over for that retched mouse.I've added a few plugins since then, and hope to progress into creating my own macros and things..so far, my favorite plugins have been NERD tree and NERD Commenter. With a few more settings to the .vimrc I got syntax highlighting and more~In this log topic, I plan to talk about Vim configurations and plugins... and my efforts in becoming a Vim master~]]></description>
		<pubDate>Fri, 04 May 12 01:35:28 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/vim/1-topic-intro/</link>
	</item>
	<item>
		<title>OpenVPN on Ubuntu Server Behind Firewall:: Entry 2: Where Is My Server If Its Behind A Firewall?</title>
		<description><![CDATA[If you are behind someone else's firewall, chances are you have a dynamic ip as well.Usually to keep track of the external IP of a host with dynamic ip, I use a ddns service which is supported with my router. If my router doesn't support ddns, I use a simple script which will email me the external IP address of the host.Behind a Firewall however, I have setup a reverse shh tunnel which can hold a persistent connection to an agent server. Then I can access the server which is behind the firewall by ssh'ing into the agent server at a specific port which will redirect me to the host behind the firewall. I will write a post on this when I get some time~Similarly, there is a way to maintain an openVPN connection between two hosts. I will write about this in the coming future too.Sorry for the short Log, but I just wanted to add a quick update to this topic.]]></description>
		<pubDate>Thu, 03 May 12 11:28:44 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/remote-administration/openvpn-on-ubuntu-server-behind-firewall/2-where-is-my-server-if-its-behind-a-firewall/</link>
	</item>
	<item>
		<title>Maven:: Entry 1: Installing Maven 3 on Ubuntu 10.04</title>
		<description><![CDATA[Since Ubuntu 10.04 has only maven2 in the apt-get repositories, maven 3 must be downloaded, extracted and added to the $PATH environment variable.First, download the the binaries from the maven download page. I would give the download link, but they ask that you download from the nearest mirror (I'm in Hong Kong, and downloaded binaries for Maven 3.0.4) . So, copy the download link for your nearest mirror and then use:wget http://link/to/download/maven_binaries.tar.gzunzip them,tar xzf maven_binaries.tar.gzmove the files to /usr/local (the recommended place to place non-package managed linux installs)sudo cp maven_binaries /usr/local/apache-maventhen add some evirontment variables to /etc/environment:JAVA_HOME="/usr/lib/jvm/java-6-openjdk"
M3_HOME="/usr/local/apache-maven"
MAVEN_HOME="/usr/local/apache-maven"
M3="/usr/local/apache-]]></description>
		<pubDate>Tue, 01 May 12 05:58:10 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/jvm/maven/1-installing-maven-3-on-ubuntu-10.04/</link>
	</item>
	<item>
		<title>Web Design:: Entry 1: Google Web Fonts For Cross Browser Font Support</title>
		<description><![CDATA[There are lot of methods to add cool font to yoru page. For titles and headers, you can use images instead of text, or you can use a some scripts and modules which will change letters to their font image equivalent.However, using images is not goot for CEO, so people usually recomment staying with the standard "font-family: Verdana Helvetica Ariel" combination. Those fonts are usually found across all browsers, but they can be a little boring for a good look.I stumbled upon Google's Web Fonts which was very nice. A pleasant gui to choose your fonts, then after adding them to your collection you can hit "use" and they will give you a line of code to link the font in your &lt;header&gt;, the 'font-family' line to put into your CSS (put it in body{} if you wan't everything in that font), and they have a gauge which will tell you how linking the font will affect your page load times.All nice and easy, I was glad to find it.]]></description>
		<pubDate>Tue, 10 Apr 12 21:10:55 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/web-design/1-google-web-fonts-for-cross-browser-font-support/</link>
	</item>
	<item>
		<title>Xen Based Cloud VPS:: Entry 2: Fiddling with The Available Virtual Images</title>
		<description><![CDATA[There I was getting things started, when... It was just too tempting so...I deleted my ubuntu 10.04 64 bit PV image of my server and decided to take a gander at what else this Xen Based Cloud Hosting had to offer.FIrst of all, after my confirations to delete the virtual cloud server, I only had to wait seconds before I could deploy a new server. And now I could test any of their supports OSs.This had me thinking back to all the time I spent reinstalling different distros back when I was first giving linux a shot. Having a virtual host like this would of been real nice. However, none of the servers run guis... and I guess I could of achieved a similar thing had I used just plain old virtual machines.But, the way I can just pick and choose them, and have them deployed instantly (I can delete one, and deploy in less than a min) is quite convinient and efficient. Unfortunatley, it takes a while to test out different distros and learn the real diffreences behind them.]]></description>
		<pubDate>Sat, 31 Mar 12 02:20:04 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/xen-based-cloud-vps/2-fiddling-with-the-available-virtual-images/</link>
	</item>
	<item>
		<title>Xen Based Cloud VPS:: Entry 1: Just The Beginning</title>
		<description><![CDATA[After tinkering around with my ubuntu home server for a while, I 
began thinking about getting a VPS with a dedicated IP. My Home server 
just used a free dyndns (I don't think you can add free dyndns 
sub-domain names to the free account anymore) account which, in 
cooperation with my router, kept my dynamic IP binded with the free 
sub-domain name.Now, anyone who has gotten any sort of webspace 
knows that there is almost no use in searching for "hosting". The market
 is flooded with good, bad and terrible hosts and it takes some probing 
to feel confident about the perfect (best bang for buck) hosting 
package. There are the main conglomerates (which are expensive) and the 
el' cheapo companies who are probably just subleasing out space they got
 from the big company. Just, do your research.I'm no ultra 
expert, so I wanted flexibility. I wanted a chance to play around and 
figure out if I made a mistake before I sign on to any sort of premium 
package.Basic Requirements:      -]]></description>
		<pubDate>Fri, 23 Mar 12 01:05:39 -0400</pubDate>
		<link>http://archived.neilpahl.com/logs/xen-based-cloud-vps/1-just-the-beginning/</link>
	</item>
	<item>
		<title>Graphviz:: Entry 2: Creating A Graph From A Dot File Via The Command Line</title>
		<description><![CDATA[I installed graphviz in the command line on ubuntu withsudo apt-get install graphvizOn mac, I used macports via the commandsudo port install graphvizNext, I created a dot file with a text editor. Something simple like:digraph G {
    one -&gt; two;
    one -&gt; three;
    one -&gt; four;
    four -&gt; five -&gt; six;
    five -&gt; one;
    six -&gt; two;
}then, save it as dotFile.dotNext, in the command line, you can use that dot file to generate the graph. The format is as follows:dot -Txxx dotFile.dot -o graphName.xxxso for png, I use:dot -Tpng dotFile.dot -o graphname.pngsee the man page withman dotand you will see instructions for the command line usage for:       dot - filter for drawing directed graphs       neato - filter for drawing undirected graphs       twopi - filter for radial layouts of graphs       circo - filter for circular layout of graphs       fdp - filter for drawing undirected graphs       sfdp -]]></description>
		<pubDate>Sun, 26 Feb 12 22:51:57 -0500</pubDate>
		<link>http://archived.neilpahl.com/logs/diagram-tools/graphviz/2-creating-a-graph-from-a-dot-file-via-the-command-line/</link>
	</item>
	<item>
		<title>mac osx:: Entry 1: +1 For macports Package Manager</title>
		<description><![CDATA[I liked Ubuntu because of the apt package manager, but trying some out on the mac and they have been not so bad.The main players in the race for best pacakge manager on the mac right now are brew, macports and fink. I chose brew first because it was supposed to be simplist. Very easy to install with only one line from the command lineruby -e "$(curl -fsS http://gist.github.com/raw/323731/install_homebrew.rb)"And, until now It had the packages I needed. Start simple right?But just now, I tried to install graphviz via brew and couldn't find it in the repo's. So, I thought I'd give macports a try. I just had to downloand and install the .dmg from the macports homepage, which was dead simple on osx 10.6. Then,  using the commandsudo port install graphvizto install graphviz. +1 for macportsThen again, brew onlyclaims to be the simpler alternative so I have no hard feelings. I haven't tried fink yet.]]></description>
		<pubDate>Wed, 22 Feb 12 19:31:45 -0500</pubDate>
		<link>http://archived.neilpahl.com/logs/os/mac-osx/1-1-for-macports-package-manager/</link>
	</item>
	<item>
		<title>OS:: Entry 1: My OS Usage Background</title>
		<description><![CDATA[I grew up using Windows, even using DOS at a young age. In primary school we used Mac, but I didn't like it very much as I was used to having in-my-face-settings haha. The average user can sometimes find the settings confusing, but I found them empowering as they gave me the ability to customize things the way I wanted.First year Engineering at my University does programming curriculum through Linux terminals, where they use the classic g++ and makefiles to compile the c++ code learnt. However, I transfered into second year and missed this exposure to linux. My first year was done on windows machines using eclipse and visual studio. I learned C++ and elected to learn java as well. At the time, I found programming quite strait forward and later found myself opting to go into Electrical Engineering instead of Computer because I liked the challenge of visuallizing Electric and Magnetic fields. I have since been more inspired to learn about good software engineering. In 4th year,]]></description>
		<pubDate>Sat, 04 Feb 12 11:29:02 -0500</pubDate>
		<link>http://archived.neilpahl.com/logs/os/1-my-os-usage-background/</link>
	</item>
	<item>
		<title>Network With Windows Clients And Linux Admin:: Entry 3: Network/PXE Boot with FOG Flashes Menu Too Quick</title>
		<description><![CDATA[After setting up a FOG server and configuring a machine to boot off the network using PXE / Network Boot, I had an issue with the boot menu flashing too quickly to choose anything (even if I held a key down beforehand). It turned out that the timeout was set too small by default for my machine to handle.so, In/tfptboot/pxelinux.cfg/default  I changedTIMEOUT 30toTIMEOUT 300
it appears that that timeout value is in 10ths of seconds~ and only defaulted to 30 (which, in my opinion, should be enough but for some reason my machine flashed it so quick).my original post on the FOG forum]]></description>
		<pubDate>Mon, 02 Jan 12 18:29:30 -0500</pubDate>
		<link>http://archived.neilpahl.com/logs/network-with-windows-clients-and-linux-admin/3/</link>
	</item>
	<item>
		<title>RAID1 with LVM on Ubuntu Server:: Entry 1: Setting It Up</title>
		<description><![CDATA[I had 2x750GB HDD's which I wanted to setup in a RAID array in my ubuntu server 10.04 LTS box.It turned out to be quite easy when following the guide provided by canonical:https://help.ubuntu.com/10.04/serverguide/C/advanced-installation.htmlBut, I made a few adjustments. The guide makes you partition each of your physical disks into two sections, swap and root. both those are set to be used as 'physical drives for RAID'These would lead to the creation of two MD's (or md or 'multiple device'). I found it to be simpler to just have one partition for each HDD and use it as the physical drive for RAID. This would reult in only having one MD/md/multiple device.The reason I chose this was to make for simple maintanaince down the road. From the guide, to replace (remove and add) an HDD i would have to run the command:sudo mdadm --remove /dev/md0 /dev/sda1sudo mdadm --add /dev/md0 /dev/sda1If I have two md's, I would probably have to do:sudo mdadm --remove /dev/md0 /dev/sda1
sudo mdadm --]]></description>
		<pubDate>Mon, 02 Jan 12 15:37:19 -0500</pubDate>
		<link>http://archived.neilpahl.com/logs/hard-disk-management/raid/raid1-with-lvm-on-ubuntu-server/1/</link>
	</item>
	<item>
		<title>OpenVPN on Ubuntu Server Behind Firewall:: Entry 1: First Things First: Bridging or Routing?</title>
		<description><![CDATA[When you are using an internal server to manage your intranet and LAN resources, some of the services running on on your internal server will run web-based gui's. Sure you can access those if you open up your intranet to the world wide web but that would defeat the whole purpose of your intranet. I host company resources over our intraweb, so it would be a bad thing to open them up to the world.Right now I setup FOG to ghost and manage PC images in a small LAN. It works great when I access the web-interface while connected to our local network, but I wouldn't be able to access this remotely.So, I'm seting up a VPN so that I can remotely connect to the intranet resources and web-gui's. I am planing on using OpenVPN.My internal server runs Ubuntu 10.04 Server LTS and sits behind a router (firewalled router). So before setting up the VPN, I have to choose between a Routed or Bridged network.My understanding of those two concepts are as follows:&gt;&gt; Adding the Bridging configurations to my Ubuntu Server,]]></description>
		<pubDate>Sun, 01 Jan 12 22:24:10 -0500</pubDate>
		<link>http://archived.neilpahl.com/logs/remote-administration/openvpn-on-ubuntu-server-behind-firewall/1/</link>
	</item>
	<item>
		<title>Network With Windows Clients And Linux Admin:: Entry 2: Ghosting Solution for Linux Server and Windows Clients</title>
		<description><![CDATA[Came across FOG today, this is going to be essential for managing the windows client PC images and their software updates. A blurb from their website:FOG is a Linux-based, free and open source computer imaging solution for Windows XP, Vista and 7 that ties together a few open-source tools with a php-based web interface. FOG doesn't use any boot disks, or CDs; everything is done via TFTP and PXE. Also with fog many drivers are built into the kernel, so you don't really need to worry about drivers (unless there isn't a linux kernel driver for it). FOG also supports putting an image that came from a computer with a 80GB partition onto a machine with a 40GB hard drive as long as the data is less than 40GB. ]]></description>
		<pubDate>Wed, 21 Dec 11 17:05:35 -0500</pubDate>
		<link>http://archived.neilpahl.com/logs/network-with-windows-clients-and-linux-admin/2/</link>
	</item>
	<item>
		<title>Diagram Tools:: Entry 2: My Choice for Diagrams</title>
		<description><![CDATA[looks like Graphviz is my choice for diagrams.But, It doesn't create sequence charts how I would like. Now to find something that does, and does it efficiently.Take a look here for my expiences with graphviz.]]></description>
		<pubDate>Fri, 16 Dec 11 02:01:31 -0500</pubDate>
		<link>http://archived.neilpahl.com/logs/diagram-tools/2/</link>
	</item>
	<item>
		<title>Graphviz:: Entry 1: The Plan</title>
		<description><![CDATA[I'm a visual thinker, and I feel that i best describe my ideas through hand drawn images. So, for making diagrams and flowcharts, it looks like Graphviz is going to be my choice. I'm choosing it mainly because I can use it tomake diagrams in the command line.Thinking back to when I was in school, I remember spending so much time drawing up a flowchart using the (abominous) flowchart drawing tools provided in MS Word. It took forever.But now, Graphviz uses very simple text to generate the diagram. This will be faster to draw and even faster to edit in the future. For example, something as simpdle asdigraph G {
  a -&gt; b;
  a -&gt; c;
  b -&gt; d;
  b -&gt; e;
  c -&gt; f;
  c -&gt; g;
  c -&gt; h;
  g -&gt; i;
  g -&gt; j;
}will generate all the neccesary arrows. But don't be fooled, there are a lot more capabilities.The documentation of Graphviz is quite technical, and not that easy for the newcomer to decypher. But,]]></description>
		<pubDate>Fri, 16 Dec 11 00:31:59 -0500</pubDate>
		<link>http://archived.neilpahl.com/logs/diagram-tools/graphviz/1/</link>
	</item>
	<item>
		<title>Diagram Tools:: Entry 1: Why? Which?</title>
		<description><![CDATA[To avoid verbose logs, I am looking into some good diagraming tools to draw sequence and class diagrams. Since I like doing my text editing in vim, it would be nice if I could generate the diagram from a text file or script.I saw some simple examples on this blog of how they use graphviz and it seems quite straight forward.So far I'm looking at dia (because it seems the most common), and graphviz because its supopsed to have a decent api.Hopefully I can find something which fits my needs, and doesn't generate a (too) ugly diagram.]]></description>
		<pubDate>Thu, 15 Dec 11 17:12:34 -0500</pubDate>
		<link>http://archived.neilpahl.com/logs/diagram-tools/1/</link>
	</item>
	<item>
		<title>Network With Windows Clients And Linux Admin:: Entry 1: Where to Start</title>
		<description><![CDATA[This log is focused on the topic of administering a windows network with a linux server.I'm setting up a network to manage windows PC's. We're not in a place to invest into Windows Servers (why would you when you can use linux?) and that fact is not going to let us utallize the well travelled route of Active Directory. The current state of the 'Network' is just a room full of PC's all running independantly with the same software setup, and there is a definate need to have all these computers properly networked with their user data centrallized.So, after searching around for good ways to avoid Windows Server, I came across a nice HOW-TO which will use samba to implement policies and redirect user folders to the network drives. The HOW-TO was found here:http://tldp.org/HOWTO/Samba-Authenticated-Gateway-HOWTO-]]></description>
		<pubDate>Tue, 13 Dec 11 18:05:03 -0500</pubDate>
		<link>http://archived.neilpahl.com/logs/network-with-windows-clients-and-linux-admin/1/</link>
	</item>
</channel>
</rss>