May 1, 2009
Yesterday I was mainly deploying a new release of php code to a Linux server. Not that it’s a problem, but I normally develop php web application on IIS running on Windows Server just because I know where all the knobs and switches are. VS.PHP from jcx.software is a great add-in for Visual Studio and with the Zend server side debugger it makes an awesome development environment. Sure I could use Eclipse PDT in a similar way for free, but ‘m more productive using Visual Studio; rightly or wrongly, the keyboard shortcuts are now part of my DNA.
I never quite feel comforable using Linux and I’m not sure why. Clearly it’s an excellent OS and I have several embedded boxes which have been running Linux that I’ve never had to reboot. My WRT54G and NSLU2 always perform flawlessly. However, while on my journey home last night I realised what the problem might be. Linux makes my fingers hurt with all the typing I have to do!
Anyway, tip of the day for me was this little gem. I needed to copy the (massive) previous releases directory into my deployment working area and was happily using
cp -r blah blah
Then I started worrying about whether the permissions were being copied. (Ok so I’m happy to admit my perpetual virgin status when it comes to Linux). It was then pointed out to me buried in the directory structure were a raft of symbolic links and using cp would do a deep copy and fill up my server disc space pretty quickly. “Use tar to copy from the current directory to the new one like this”, they said.
tar cBf -.|(cd new_directory && tar xvBf -)
It worked a treat, I feel less like a Linux virgin, but my fingers still hurt.