<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1361728184873317046</id><updated>2012-01-26T08:07:09.926-08:00</updated><category term='launchd'/><category term='packages'/><category term='virtualbox'/><category term='sysadmin'/><category term='documentation'/><category term='macadmins'/><category term='deploystudio'/><category term='BIgFix'/><category term='dscl'/><category term='adobe'/><category term='bloggig tools'/><category term='Administraton'/><category term='PSU'/><category term='osx'/><category term='10.6'/><category term='Conference'/><category term='Mac'/><category term='ssl'/><category term='labs'/><category term='tsm script app'/><category term='video'/><category term='screen saver'/><category term='ARD'/><category term='backuprestore'/><category term='freestuff'/><category term='AD'/><category term='management'/><category term='binding'/><title type='text'>Rusty is a Geek</title><subtitle type='html'>OS X System Administration, plus some other adventures.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>55</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-7647503346158936246</id><published>2011-11-09T11:09:00.000-08:00</published><updated>2011-11-09T11:22:59.955-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='virtualbox'/><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><title type='text'>Creating VMs from an existing VDI file</title><content type='html'>We recently had a request to install VirtualBox and a custom VDI for a course. Students with little technical backgrounds needed to be able to launch and create a individual instance of an Ubuntu virtual machine.&lt;div&gt;We did some experimentation on configuring the virtual machine with a shared VDI file and using VirtualBox snapshots, as well as shadow disk images, for saving changes. We decided the best course was to drop a copy of the entire VDI to the students Desktop and use VirtualBox's command line tool to configure them a VM.&lt;/div&gt;&lt;div&gt;We stored the VDI inside a disk image and delivered it to the /Users/Shared folder of each Mac. We then had VirtualBox installed. Using &lt;a href="http://sveinbjorn.org/platypus"&gt;Platypus&lt;/a&gt; we wrapped a script that will copy the VDI, create the VM, and start it. &lt;/div&gt;&lt;div&gt;If the VDI already exists on the desktop, the VM is created and launched. If the VM is already created, then it's launched right away.&lt;/div&gt;&lt;div&gt;This provides students and faculty with a simple way to launch and use the virtual machine provided to them.&lt;/div&gt;&lt;div&gt;Here is the script that we use: https://github.com/rustymyers/scripts/blob/master/shell/createVBoxVM.sh&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;After writing this, I got a lot of comments that we should check out Vagrant. http://vagrantup.com/&lt;/div&gt;&lt;div&gt;Do your self a favor and always google what you want to do before writing something from scratch to do it!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-7647503346158936246?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/7647503346158936246/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=7647503346158936246' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/7647503346158936246'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/7647503346158936246'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/11/creating-vms-from-existing-vdi-file.html' title='Creating VMs from an existing VDI file'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-5810283105885795940</id><published>2011-10-06T05:51:00.000-07:00</published><updated>2011-10-06T05:56:14.031-07:00</updated><title type='text'>Thank You Steve.</title><content type='html'>My words feel lacking in empathy today. It feels futile to try to think of what to type. So I leave you with these pictures instead...&lt;div&gt;&lt;br /&gt;&lt;div style="text-align: center;"&gt;&lt;img style="cursor:pointer; cursor:hand;width: 400px; height: 299px;" src="http://4.bp.blogspot.com/-3tM7YVCQMS4/To2k7QyDZRI/AAAAAAAAALQ/8d1Qyg32h3A/s400/IMG_0718.JPG" border="0" alt="" id="BLOGGER_PHOTO_ID_5660361644698723602" /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span"  style="font-size:78%;"&gt;Picture of an original Macintosh with a "Thank You" note written by Rusty Myers October 6&lt;span class="blsp-spelling-error" id="SPELLING_ERROR_0"&gt;th&lt;/span&gt;, 2011.&lt;/span&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-5810283105885795940?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/5810283105885795940/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=5810283105885795940' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/5810283105885795940'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/5810283105885795940'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/10/thank-you-steve.html' title='Thank You Steve.'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-3tM7YVCQMS4/To2k7QyDZRI/AAAAAAAAALQ/8d1Qyg32h3A/s72-c/IMG_0718.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-5632802025913195620</id><published>2011-08-17T14:28:00.000-07:00</published><updated>2011-08-17T14:53:40.213-07:00</updated><title type='text'>Maya 2012 Semaphore Issues</title><content type='html'>&lt;span class="Apple-style-span"&gt;Recently I had the pleasure of installing Maya 2012 in a lab environment. To qualify "lab", it is a &lt;/span&gt;non-admin &lt;span class="Apple-style-span"&gt;multi-user lab.&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;Maya 2012 seems to have a bit of an issue with cleaning itself up after running. Someone much more informed on the subject has guided me through the discovery of the issues and how to deal with them.&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;In a nutshell, Maya is leaving Semaphore ipc instances after quiting the program, which also persist after a user logs out! A reboot of the system will clear the semaphore, but it asking a little too much to have a user reboot after quitting Maya 2012.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;So, how do I know this? After launching Maya 2012 (Or Mudbox 2012), try running this command:&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;$ ipcs -b&lt;/div&gt;&lt;div&gt;IPC status from &lt;running system=""&gt; as of Fri Aug 12 14:41:35 EDT 2011&lt;/running&gt;&lt;/div&gt;&lt;div&gt;T     ID     KEY        MODE       OWNER    GROUP QBYTES&lt;/div&gt;&lt;div&gt;Message Queues:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;T     ID     KEY        MODE       OWNER    GROUP  SEGSZ&lt;/div&gt;&lt;div&gt;Shared Memory:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;T     ID     KEY        MODE       OWNER    GROUP NSEMS&lt;/div&gt;&lt;div&gt;Semaphores:&lt;/div&gt;&lt;div&gt;s 327680 0xb3536107 --ra-r--r--   rzm102 psuguest      3&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You can see it's being left there even after log out! To remove it, you need to pass the ID to the ipcrm command:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;$ ipcrm -s 327680&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;That will clear the semaphore ipc and allow Maya to once again launch. I've noticed that the error in the console about "ACE_SV_Semaphore_Complex: Permission denied" still occurs, but has no effect on Maya launching.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;To fix this for the labs, I'm suggesting having the logout hook clean this up using this code:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div&gt;IPCSUCKS=`ipcs -b | grep -A 1 -i semaphores|tail -1|awk '{print $2}'`&lt;/div&gt;&lt;div&gt;sudo ipcrm -s "$IPCSUCKS"&lt;/div&gt;&lt;/blockquote&gt;&lt;div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This should clear the instance of the ipc from Semaphores. I'm not sure this is the best solution because there could be multiple ipc's from semaphore or it could be for something other than Maya. However, I'm running out of time this semester and I need to move on.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A bug report needs to be filled with Autodesk to ask them to change the permissions on the semaphore so that other non-admin users can overwrite that instance. As Frogor from ##osx-server explained: "They need to be setting it up as --ra-ra-r--".&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This is a quick and dirty blog post, please forgive the assumptions, spelling mistakes, grammar mistakes, and overall vagueness. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For more information on IPC and Semaphores, check out wikipedia:&lt;/div&gt;&lt;div&gt;&lt;a href="http://en.wikipedia.org/wiki/Inter-process_communication"&gt;http://en.wikipedia.org/wiki/Inter-process_communication&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://en.wikipedia.org/wiki/Semaphore_(programming)"&gt;http://en.wikipedia.org/wiki/Semaphore_(programming)&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;And if you are more knowledgeable about these issues, please post in the comments so we may all learn!&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Source for the command examples: &lt;a href="Source: http://www.dbasupport.com/forums/archive/index.php/t-34262.html"&gt;http://www.dbasupport.com/forums/archive/index.php/t-34262.html&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-5632802025913195620?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/5632802025913195620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=5632802025913195620' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/5632802025913195620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/5632802025913195620'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/08/maya-2012-semaphore-issues.html' title='Maya 2012 Semaphore Issues'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-8019937406053889266</id><published>2011-08-16T07:12:00.000-07:00</published><updated>2011-08-16T07:45:17.184-07:00</updated><title type='text'>Firmware Passwords on New Macs</title><content type='html'>According to the KB article TS3554, new Macs have a different way of resetting the firmware password, should you forget it. More on that later.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;What I want to discuss is the new tool for setting your firmware password.&lt;br /&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;No Longer is the nvram used when configuring the password. The nvram settings are outright ignored. The Firmware Password Utility shipped by Apple has been updated to accommodate this change. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I am unsure of WHERE or HOW the passwords is configured, but I do know that Apple has a new binary tool to configure it via the command line. "setregproptool" can now be used to configure your firmware password.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Finding information of this update from the MacEnterprise email list points me to the install DVD that shipped with our newest iMacs.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;To locate this tool, Tomas has given you a path to it on the USB flash drive that came with Macbook Airs. Well, the DVD path is almost the same, except for a few slight changes to the media name.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Here are some directions to get the binary tool:&lt;/div&gt;&lt;div&gt;1) Insert your Install DVD to your Mac.&lt;/div&gt;&lt;div&gt;2) Open the Terminal.app from /Applications/Utilities/&lt;/div&gt;&lt;div&gt;3) Paste in this line:&lt;/div&gt;&lt;div&gt;&lt;code&gt;cp /Volumes/Mac\ OS\ X\ Install\ DVD/Applications/Utilities/Firmware\ \&lt;/code&gt;&lt;/div&gt;&lt;div&gt;&lt;code&gt;Password\ Utility.app/Contents/Resources/setregproptool ~/Desktop/&lt;/code&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The setregproptool should appear on your desktop, assuming the name of the DVD is the same as I have in my command. YMMV.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now that you have the binary tool, you can distribute it by whatever means you find the best. Scripts can be written to call it. You can now have fun.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The setregproptool has a nice little man page to help you configure your firmware password. In our case, we simply want a firmware password when choosing the "option boot" or command mode.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;$ setregproptool -m "command" -p secretpassword&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If a password is currently set, it will prompt you for it.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;As Thomas Larkin talks about in his MacE post, the check flag (-c) was not correctly reporting that the password was set. While this may be an issue for some people it was of little concern for me, at least, for now!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Now that you can set your firmware password again, lets talk about what happens when you FORGET it!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;A) Don't forget it.&lt;/div&gt;&lt;div&gt;B) If you do, you have to boot your Mac into the firmware password screen. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;This screen provides a hash that can be sent to Apple. I assume Apple has a way to reverse this hash and respond to you with the firmware password.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;All things considered, you should never see this screen. Hopefully you have a way to manage your passwords that is secured and is available to at least two people.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When that inevitable time comes that someone forgets it, your going to have to jump through some hoops.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If your an Authorized Service Center, or a Authorized Self Service Center for Apple, you can talk to the friendly TPSS support staff to have your hash reversed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;If your not, your going to need to find someone that is. That means a trip to your closest Apple Store or other Authorized Service Center.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Please avoid the hassle and don't forget your firmware password.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Good luck!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Links:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;MacEnterprise Post:&lt;/div&gt;&lt;div&gt;http://groups.google.com/group/macenterprise/browse_thread/thread/3092c51a73d064c4?pli=1&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Apple KB on resetting the FW password:&lt;/div&gt;&lt;div&gt;http://support.apple.com/kb/TS3554&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;Products Affected as of 08/2011&lt;/div&gt;&lt;div&gt;MacBook Air (Late 2010), MacBook Pro (17-inch, Early 2011), MacBook Pro (15-inch, Early 2011), MacBook Pro (13-inch, Early 2011), MacBook Air (Mid 2011), iMac (27-inch, Mid 2011), iMac (21.5-inch, Mid 2011), Mac mini (Mid 2011)&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-8019937406053889266?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/8019937406053889266/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=8019937406053889266' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/8019937406053889266'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/8019937406053889266'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/08/firmware-passwords-on-new-macs.html' title='Firmware Passwords on New Macs'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-3434556659842120462</id><published>2011-06-29T11:19:00.000-07:00</published><updated>2011-06-29T11:27:39.158-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='labs'/><category scheme='http://www.blogger.com/atom/ns#' term='Mac'/><category scheme='http://www.blogger.com/atom/ns#' term='adobe'/><title type='text'>Adobe Encore Disc Burning</title><content type='html'>I've run across an issue in our lab where the Adobe Encore CS5 app failed to burn a DVD of a project. It gives an error of: "OSStatus Error = -5000". According to Google, this is an error that occurs when the filesystem can't write to a particular location. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;After running FSEventer to watch where Encore wants to write, I find it trying to log the Video TS Layout inside it's own .app bundle! &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When the user has full permissions to write, Encore creates this file: /Applications/Adobe Encore CS5/Adobe Encore CS5.app/Contents/MacOS/DualLayerVideoTSLayout.log&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When a user does not have write permissions, Encore complains. There are a couple options to fix this;&lt;/div&gt;&lt;div&gt;1) Give the world write privileges&lt;blockquote&gt;&lt;code&gt;chmod o+w DualLayerVideoTSLayout.log&lt;/code&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;2) Change the group to your standard users group &lt;/div&gt;&lt;div&gt;&lt;code&gt;&lt;br /&gt;&lt;/code&gt;&lt;/div&gt;&lt;div&gt;&lt;code&gt;&lt;blockquote&gt;chgrp staff DualLayerVideoTSLayout.log&lt;/blockquote&gt;&lt;/code&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;or my favorite...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;3) Symlink the log file to tmp &lt;/div&gt;&lt;div&gt;&lt;blockquote&gt;&lt;code&gt;ln -fhs /tmp/DualLayerVideoTSLayout.log /Applications/Adobe Encore CS5/Adobe Encore CS5.app/Contents/MacOS/DualLayerVideoTSLayout.log&lt;/code&gt;&lt;/blockquote&gt;&lt;/div&gt;&lt;br /&gt;So if you ever run into Adobe Encore CS5 failing to burn, check this log out!&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-3434556659842120462?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/3434556659842120462/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=3434556659842120462' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3434556659842120462'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3434556659842120462'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/06/adobe-encore-disc-burning.html' title='Adobe Encore Disc Burning'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-4248458348000795957</id><published>2011-06-28T19:53:00.000-07:00</published><updated>2011-06-29T11:18:50.178-07:00</updated><title type='text'>DeployStudio freeze users home directories</title><content type='html'>&lt;span class="Apple-style-span"   style="  color: rgb(66, 66, 66); line-height: 16px; -webkit-text-size-adjust: none; font-family:ArialMT, Arial, sans-serif;font-size:12px;"&gt;&lt;span class="Bullet"   style="text-decoration: none; text-transform: none; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-  line-height: 15.2px; font-size:12px;color:initial;"&gt;&lt;div&gt;&lt;span class="Apple-style-span"  style="color:#424242;"&gt;&lt;span class="Apple-style-span"  style="color:#000000;"&gt;&lt;span class="Apple-style-span" style="font-family: Georgia, serif; line-height: normal; -webkit-text-size-adjust: auto; font-size: 16px; "&gt;&lt;span class="Apple-style-span" style="font-family: ArialMT, Arial, sans-serif; font-size: 12px; color: rgb(66, 66, 66); line-height: 16px; -webkit-text-size-adjust: none; "&gt;&lt;span class="Bullet" style="text-decoration: none; text-transform: none; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; font-size: 12px; line-height: 15.2px; "&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: ArialMT, Arial, sans-serif; font-size: 12px; color: rgb(66, 66, 66); line-height: 16px; -webkit-text-size-adjust: none; "&gt;&lt;span class="Bullet" style="text-decoration: none; text-transform: none; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; font-size: 12px; line-height: 15.2px; "&gt;I've had a chance to check out the new DeployStudio "Freeze home directories content (restore at reboot)" feature of rc127. It's a check box in the Configuration Task of a workflow. &lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: ArialMT, Arial, sans-serif; font-size: 12px; color: rgb(66, 66, 66); line-height: 16px; -webkit-text-size-adjust: none; "&gt;&lt;span class="Bullet" style="text-decoration: none; text-transform: none; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; font-size: 12px; line-height: 15.2px; "&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: ArialMT, Arial, sans-serif; font-size: 12px; color: rgb(66, 66, 66); line-height: 16px; -webkit-text-size-adjust: none; "&gt;&lt;span class="Bullet" style="text-decoration: none; text-transform: none; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; font-size: 12px; line-height: 15.2px; "&gt;The script that runs at first boot checks for any existing backups. If none are found, it &lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: ArialMT, Arial, sans-serif; font-size: 12px; color: rgb(66, 66, 66); line-height: 16px; -webkit-text-size-adjust: none; "&gt;&lt;span class="Bullet" style="text-decoration: none; text-transform: none; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; font-size: 12px; line-height: 15.2px; "&gt;uses ditto (&lt;/span&gt;&lt;/span&gt;ditto --rsrc ) to create a copy of each home directory from /Users to /private/dss_homedirs_ref/. &lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;If there is an existing backup of a user in /private/dss_homedirs_ref/, the script uses rsync ( rsync -av --delete ) to restore the home folder. A word of caution here; If there is an existing backup and changes have been made to the user's home directory, the rsync command will &lt;b&gt;delete&lt;/b&gt; the files that &lt;b&gt;don't&lt;/b&gt; exist in the backup after a reboot. This is great for a lab Mac, where you want the same home folder every time the machine reboots. Its not so great for a faculty machine, be careful and test!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;By default, the Shared folder is not included in the backup and restore process.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;div&gt;&lt;span class="Apple-style-span" style="font-family: ArialMT, Arial, sans-serif; font-size: 12px; color: rgb(66, 66, 66); line-height: 16px; -webkit-text-size-adjust: none; "&gt;Check out the actual script here: &lt;a href="http://pastie.textmate.org/2141011"&gt;http://pastie.textmate.org/2141011&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-4248458348000795957?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/4248458348000795957/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=4248458348000795957' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4248458348000795957'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4248458348000795957'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/06/deploystudio-freeze-users-home.html' title='DeployStudio freeze users home directories'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-7134525950404884470</id><published>2011-06-27T05:29:00.001-07:00</published><updated>2011-06-27T05:30:48.375-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='macadmins'/><title type='text'>PSU MacAdmins Conference 2011 Videos</title><content type='html'>Check out all* the videos and slides from the 2011 PSU MacAdmins Conference.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;http://itunes.apple.com/us/itunes-u/penn-state-mac-admins-podcasts/id429872255&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;*Presentations made by Apple Employees are not available for download.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-7134525950404884470?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/7134525950404884470/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=7134525950404884470' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/7134525950404884470'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/7134525950404884470'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/06/psu-macadmins-conference-2011-videos.html' title='PSU MacAdmins Conference 2011 Videos'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-3221724112729241776</id><published>2011-06-22T07:32:00.000-07:00</published><updated>2011-06-22T07:34:14.454-07:00</updated><title type='text'>DeployStudio BackupRestore Scripts 0.7.1</title><content type='html'>&lt;div&gt;&lt;a href="https://github.com/rustymyers/BackupRestore"&gt;&lt;b&gt;Visit on GitHub&lt;/b&gt;&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;- Added flag to remove user cache folder before backing up home.&lt;/div&gt;&lt;div&gt;- Testing new DS_INTERNAL_DRIVE variable command.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-3221724112729241776?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/3221724112729241776/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=3221724112729241776' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3221724112729241776'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3221724112729241776'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/06/deploystudio-backuprestore-scripts-071.html' title='DeployStudio BackupRestore Scripts 0.7.1'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-3066170090424943899</id><published>2011-04-19T14:56:00.000-07:00</published><updated>2011-04-19T14:58:27.484-07:00</updated><title type='text'>DeployStudio BackupRestore Scripts 0.7</title><content type='html'>&lt;span class="Apple-style-span"   style="  color: rgb(51, 51, 51); font-family:Verdana, Arial, sans-serif;font-size:13px;"&gt;&lt;h3 class="post-title entry-title" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-size: 16px; font-weight: bold; line-height: 1.1em; "&gt;&lt;a href="https://github.com/rustymyers/BackupRestore"&gt;Visit on GitHub&lt;/a&gt;&lt;/h3&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Quick update to fix bad eliminator that killed the scripts. Thanks to Data Scavenger for reporting it.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;-Updated code to use new user deliminator from '.' to '-'&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;https://github.com/rustymyers/BackupRestore&lt;/div&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-3066170090424943899?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/3066170090424943899/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=3066170090424943899' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3066170090424943899'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3066170090424943899'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/04/deploystudio-backuprestore-scripts-07.html' title='DeployStudio BackupRestore Scripts 0.7'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-4460936166148355026</id><published>2011-04-16T18:28:00.001-07:00</published><updated>2011-04-16T18:28:55.449-07:00</updated><title type='text'>DeployStudio BackupRestore Scripts 0.6</title><content type='html'>&lt;div&gt;New Version Posted:&lt;/div&gt;&lt;div&gt;https://github.com/rustymyers/BackupRestore&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Updates:&lt;/div&gt;&lt;div&gt;Lots of little error fixes from midnight coding.&lt;/div&gt;&lt;div&gt;Tried to unify script messages.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Older Changes:&lt;/div&gt;&lt;div&gt;Change name of user plists and home backups to account for names with '.' in them.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-4460936166148355026?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/4460936166148355026/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=4460936166148355026' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4460936166148355026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4460936166148355026'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/04/deploystudio-backuprestore-scripts-06.html' title='DeployStudio BackupRestore Scripts 0.6'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-4770441395789913777</id><published>2011-04-15T19:34:00.000-07:00</published><updated>2011-04-15T19:41:10.445-07:00</updated><title type='text'>VPN Connection Failing</title><content type='html'>I was having an issue with my new Macbook Pro not connecting with Cisco VPN. I had a few times this morning, but then stopped working. After a few google searches, I found this answer:&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Source: http://superuser.com/questions/194961/os-x-10-6-4-system-vpn-failing-to-connect-ike-packet-transmit-failed&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="font-family:Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif;font-size:100%;"&gt;&lt;span class="Apple-style-span"  style="border-collapse: collapse; font-size:13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="font-family:Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif;font-size:100%;"&gt;&lt;span class="Apple-style-span"  style="border-collapse: collapse; font-size:13px;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;blockquote&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="font-family:Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif;font-size:100%;"&gt;&lt;span class="Apple-style-span"  style="border-collapse: collapse; font-size:13px;"&gt;"This occasionally occurs for me as well, e.g. when I switch between two different Cisco VPNs. It seems to be a minor crash in racoon somewhere*. Manually restarting the process seems to do the trick for me:&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="font-family:Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif;font-size:100%;"&gt;&lt;span class="Apple-style-span"  style="border-collapse: collapse; font-size:13px;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="font-family:Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif;font-size:100%;"&gt;&lt;span class="Apple-style-span"  style="border-collapse: collapse; font-size:13px;"&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;div style="text-align: auto;"&gt;$ ps -ef | grep racoon&lt;/div&gt;&lt;div style="text-align: auto;"&gt;0  5861     1   0   0:00.09 ??         0:00.15 /usr/sbin/racoon&lt;/div&gt;&lt;div style="text-align: auto;"&gt;$ sudo kill 5861&lt;/div&gt;&lt;div style="text-align: auto;"&gt;$ ps ax | grep racoon&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;wait until="" it="" shuts="" sometimes="" you="" may="" need="" to="" sigkill="" kill="" 9=""&gt;&lt;pid&gt;)&amp;gt;&lt;/pid&gt;&lt;/wait&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;$ sudo /usr/sbin/racoon&lt;/div&gt;&lt;div style="text-align: auto;"&gt;$ ps -ef | grep racoon&lt;/div&gt;&lt;div style="text-align: auto;"&gt;0  6786     1   0   0:00.08 ??         0:00.15 /usr/sbin/racoon -x&lt;/div&gt;&lt;div style="text-align: auto;"&gt;(Don't know what the '-x' param does, it's not mentioned in the man page)&lt;/div&gt;&lt;div style="text-align: auto;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: auto;"&gt;(*) Haven't investigated"&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;/blockquote&gt;&lt;div style="text-align: auto;"&gt;&lt;span class="Apple-style-span"   style="font-family:Arial, 'Liberation Sans', 'DejaVu Sans', sans-serif;font-size:100%;"&gt;&lt;span class="Apple-style-span"  style="border-collapse: collapse; font-size:13px;"&gt;&lt;div style="text-align: auto;"&gt;&lt;/div&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Now its working! Real easy fix.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-4770441395789913777?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/4770441395789913777/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=4770441395789913777' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4770441395789913777'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4770441395789913777'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/04/vpn-connection-failing.html' title='VPN Connection Failing'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-3837372281241158592</id><published>2011-04-14T10:08:00.000-07:00</published><updated>2011-04-14T11:05:26.966-07:00</updated><title type='text'>New Position</title><content type='html'>As I spend my morning cleaning up my new office, I think about the old duties and mates that I left behind. It was only yesterday, but I already miss my friends in the College of Education at Penn State. My duties were administering the Mac systems in the College and today I start my new job administering Mac systems for public labs at Penn State. I look forward to getting to know my new colleagues, settling into my new office, and getting to know my new job responsibilities. As I sit here looking out my window watching the students pass from one class to the next, I think of my days on campus as a student. As Mr. Layhe says: "Tempus Fugit"&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Source: http://www.youtube.com/watch?v=jCaxeFu0sMk&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-3837372281241158592?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/3837372281241158592/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=3837372281241158592' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3837372281241158592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3837372281241158592'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/04/new-position.html' title='New Position'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-3377641907678238364</id><published>2011-03-30T07:25:00.001-07:00</published><updated>2011-03-30T07:25:30.414-07:00</updated><title type='text'>Part Time Web Development</title><content type='html'>&lt;!--StartFragment--&gt;  &lt;h1&gt;&lt;b&gt;Part-Time Web Developer&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/h1&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;WORK UNIT:&lt;/b&gt; Center for Science and the Schools&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;LOCATION:&lt;/b&gt; University Park Campus, Chambers Bldg.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;RESPONSIBILITIES:&lt;/b&gt;&lt;span style="mso-spacerun:yes"&gt;  &lt;/span&gt;Design static and dynamic web pages using Dreamweaver MX, ColdFusion MX, and Microsoft Access. Assist in maintaining a Windows server, update and maintain server software, virus protection, patches, server backup functions. The position requires skills with the preceding software packages and with Microsoft server software.&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;This part-time position (approximately 15 hours a week) features flexible hours and a collegial work environment. The work will assist the University in developing strong and mutually beneficial collaborations between K-12 educators and Penn State scientists and engineers. &lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;APPLICATION:&lt;/b&gt; provide name, email, phone number, resume, and pointers to examples of web resources that you have developed, to Janell Howe at &lt;a href="mailto:juh6@psu.edu"&gt;juh6@psu.edu&lt;/a&gt; &lt;span style="mso-spacerun:yes"&gt; &lt;/span&gt;(Please include WEBDEVT in the email subject line)&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;!--EndFragment--&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-3377641907678238364?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/3377641907678238364/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=3377641907678238364' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3377641907678238364'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3377641907678238364'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/03/part-time-web-development.html' title='Part Time Web Development'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-8278978355952355701</id><published>2011-03-22T16:52:00.000-07:00</published><updated>2011-03-22T16:55:28.312-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='deploystudio'/><category scheme='http://www.blogger.com/atom/ns#' term='backuprestore'/><title type='text'>BackupRestore Scripts 0.4.6</title><content type='html'>Now with Filevault compatibility! &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Backup and Restore local and mobile filevault accounts. Mobie filevault accounts require a first boot script be installed. This should not, but may interfere with other DeployStudio tasks. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Reminder, this is still a beta script. It probably won't work, but if it does, great!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Please send me feedback at rustymyers at gmail dot com!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Download the updated scripts here:&lt;/div&gt;&lt;div&gt;&lt;a href="https://github.com/rustymyers/BackupRestore"&gt;https://github.com/rustymyers/BackupRestore&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-8278978355952355701?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/8278978355952355701/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=8278978355952355701' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/8278978355952355701'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/8278978355952355701'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/03/backuprestore-scripts-046.html' title='BackupRestore Scripts 0.4.6'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-2511376570078094292</id><published>2011-03-18T06:22:00.000-07:00</published><updated>2011-03-18T06:23:46.002-07:00</updated><title type='text'>BackupRestore Scripts 0.4.5</title><content type='html'>Major fix that resolves issues with backing up local and network users. Also added more commenting!&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Check out the new scripts!&lt;/div&gt;&lt;div&gt;https://github.com/rustymyers/BackupRestore&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-2511376570078094292?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/2511376570078094292/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=2511376570078094292' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/2511376570078094292'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/2511376570078094292'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/03/backuprestore-scripts-045.html' title='BackupRestore Scripts 0.4.5'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-3921569316018299702</id><published>2011-02-18T06:59:00.001-08:00</published><updated>2011-02-18T07:06:40.473-08:00</updated><title type='text'>DeployStudio on Talking Mac</title><content type='html'>&lt;div&gt;Catch me on &lt;a href="http://www.talkingmac.com/"&gt;www.talkingmac.com&lt;/a&gt; Enterprise podcast, coming up February 22nd at 7pm EST, doing a quick talk about DeployStudio. Tune in for some great discussions from lots of smart folks!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-3921569316018299702?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/3921569316018299702/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=3921569316018299702' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3921569316018299702'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3921569316018299702'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/02/deploystudio-on-talking-mac.html' title='DeployStudio on Talking Mac'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-8674118040173731339</id><published>2011-02-09T18:55:00.001-08:00</published><updated>2011-02-09T18:57:32.404-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='deploystudio'/><category scheme='http://www.blogger.com/atom/ns#' term='backuprestore'/><title type='text'>BackupRestore gits it.</title><content type='html'>I've added BackupRestore scripts to git. Check it out&lt;div&gt;https://github.com/rustymyers/BackupRestore&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-8674118040173731339?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/8674118040173731339/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=8674118040173731339' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/8674118040173731339'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/8674118040173731339'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/02/backuprestore-gits-it.html' title='BackupRestore gits it.'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-4009373384141026234</id><published>2011-02-01T05:57:00.000-08:00</published><updated>2011-02-01T06:08:14.366-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='documentation'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><category scheme='http://www.blogger.com/atom/ns#' term='Administraton'/><category scheme='http://www.blogger.com/atom/ns#' term='dscl'/><title type='text'>Restoring admin rights</title><content type='html'>I've not had a reason to do this recently, but was curious so I decided to try. I wanted to give myself admin rights from the command line, specifically single user mode. &lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;For those of you who don't know, single user mode is a command line only way to interact with the system as root, in most cases its possible without a password. Hold command+s when booting and see what it looks like! (if you get scared, just type "exit")&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Once in single user mod (SUM), you can interact with the system by using commands. So, in this case, I want to add my user "rusty" to the admin group on the machine... This is what I did.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;First, start computer in SUM - hold command+s at boot&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Second, after you see the prompt (root#) type "/sbin/mount -uw /" (there are two spaces in there, its important not to loose them!)&lt;/div&gt;&lt;div&gt;Hit Return.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Third, I need to start the Directory Services, I do so by typing:&lt;/div&gt;&lt;div&gt;launchctl load /System/Library/LaunchDaemons/com.apple.DirectoryServices.plist&lt;/div&gt;&lt;div&gt;Hit Return.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fourth, Now that Directory Services is started, I can make the appropriate changes use dscl.&lt;/div&gt;&lt;div&gt;To add my "rusty" account to the admin group, I use:&lt;/div&gt;&lt;div&gt;dscl . append /Groups/admin GroupMembership rusty&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Fifth, &lt;/div&gt;&lt;div&gt;Once you are done making changes, exit SUM using the command "exit"&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;There are lots of other cool tricks with dscl, give it a try and post some of your favorites!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-4009373384141026234?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/4009373384141026234/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=4009373384141026234' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4009373384141026234'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4009373384141026234'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/02/restoring-admin-rights.html' title='Restoring admin rights'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-4978104375762815093</id><published>2011-01-28T10:55:00.001-08:00</published><updated>2011-01-28T11:06:47.991-08:00</updated><title type='text'>Updated BackupRestore Scripts - Beta 0.4</title><content type='html'>Releasing today are updated BackupRestore scripts for DeployStudio!&lt;div&gt;http://dl.dropbox.com/u/5442688/DeployStudio/BackupRestore.Beta004.zip&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The updated scripts now allow you to use the DeployStudio variables field to set the script variables. You can also set them in the script, however the variables field will overwrite any variables set in the script.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;You can print the help menu using -h from the command line:&lt;/div&gt;&lt;div&gt;&lt;div&gt;&lt;div&gt;Usage: DS_BACKUP_DATA.sh [ -e "guest admin shared" ] [ -v "/Volumes/Macintosh HD" ] [ -u /Users ] [ -d "/Volumes/External Drive/" ]&lt;/div&gt;&lt;div&gt;BackupRestore Variables:&lt;/div&gt;&lt;div&gt;-e Users to Skip&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Must use quotes for multiple users&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Default is "guest" and "shared"&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;You must specify "guest" and&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;"shared" if your use the argument&lt;/div&gt;&lt;div&gt;-v Target volume&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Specify full path to mount point of volume&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Default is the internal volume&lt;/div&gt;&lt;div&gt;-u User path on target&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Set to path of users on volume&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Default is /Users&lt;/div&gt;&lt;div&gt;-d Backup destination&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Specify full ath to the backup volume&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Default is /tmp/DSNetworkRepository&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Please send any feedback to rustymyers@gmail.com&lt;/div&gt;&lt;div&gt;Thanks, Enjoy!&lt;/div&gt;&lt;div&gt;Rusty&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-4978104375762815093?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/4978104375762815093/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=4978104375762815093' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4978104375762815093'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4978104375762815093'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2011/01/updated-backuprestore-scripts-alpha-04.html' title='Updated BackupRestore Scripts - Beta 0.4'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-6533318618988003579</id><published>2010-12-17T09:03:00.001-08:00</published><updated>2010-12-20T14:33:25.014-08:00</updated><title type='text'>BackupRestore User Data with DeployStudio</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;/div&gt;One of the minor annoyances I've run into during a re-imaging process is the time and trouble it takes to backup and restore user data. Our users store home folders locally on their Macs and use AD accounts to log in. I don't want to get into network homes or syncing homes. We do backup computers over the network via Tivoli storage manager, but thats another topic and we don't backup graduate student machines.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Usually, I have to spend time backing up the home folders and restoring them after imaging the Mac. This relatively easy task slows me down taking up my (precious?) time to do this. Training someone would be fairly simple, but then we'd have to hire someone who can support Macs; thats not an option right now. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The manpower I do have available to me have already been trained to use DeployStudio. The great thing about DeployStudio is; I can tell the staff person what workflow to run, I know the workflow will run the correct steps for the task, and I can give access to workflows for specific users as they grow to do more (or remove access if needed).&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Since DeployStudio does not have a built in option to;&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;backup user data&lt;/li&gt;&lt;li&gt;image a machine&lt;/li&gt;&lt;li&gt;restore the data&lt;/li&gt;&lt;/ul&gt;&lt;/div&gt;&lt;div&gt;...then we have to do it ourselves!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Introducing the DeployStudio BackupRestore* scripts&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The concept with the scripts are easy...&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Backup Script:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Creates a new folder called "Backups" DeployStudio Repository&lt;/li&gt;&lt;li&gt;Data is stored in a subfolder using the MAC address as the name (sans ":")&lt;/li&gt;&lt;li&gt;User home folder is backed up using tar&lt;/li&gt;&lt;li&gt;User account is backed up using plist, password hash is also backed up&lt;/li&gt;&lt;li&gt;Network and Mobile accounts (AD/OD) are skipped (if uid is &gt; 1000, skip account) &lt;/li&gt;&lt;/ul&gt;Once the backup task is finished, you can run as many other tasks as you'd like. Image the hard drive, install packages, create users, etc... The last step is to restore the user data.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Restore Script:&lt;/div&gt;&lt;div&gt;&lt;ul&gt;&lt;li&gt;Finds the backup folder based on the MAC address&lt;/li&gt;&lt;li&gt;For local accounts; Creates all the accounts &amp;amp; restores password hash&lt;/li&gt;&lt;li&gt;Restores the user home folders&lt;/li&gt;&lt;li&gt;Does NOT delete backups&lt;/li&gt;&lt;/ul&gt;It's important to note that the data is not removed from the backup folder. If you leave the data there, it will be restored on the machine if you run the workflow again. This could lead to unexpected results. For example, if you run the BackupRestore scripts in January you will backup "userA" and "userB". Lets say "userB" leaves in March, you delete their data on the machine, then "userC" starts using the Mac. Then, sometime in May, you run the BackupRestore scripts again The script will overwrite the backups of "userA" and "userB" and, for the first time, backup "userC". When the data is restored, you will restore all three users. This can be avoided by removing the specific users files in the Backups folder. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Example:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;MAC Address: 01:02:03:04:05:06&lt;/div&gt;&lt;div&gt;Users: "userA" and "userB"&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;"userA" is a local user - GeneratedUID="ABC12345"&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;"userB" is a mobile account&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;When the Backup script creates a machine specific folder, it uses the MAC address of the machine without the ":". &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;/&lt;deploystudiorepository&gt;/Backups/010203040506/&lt;/deploystudiorepository&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then the users home folder is backed up, with tar, to the Backups folder using their username, machine MAC address, and the keyword "HOME":&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;userA.010203040506.HOME.tar&lt;/div&gt;&lt;div&gt;and&lt;/div&gt;&lt;div&gt;userB.010203040506.HOME.tar&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The account details are backed up to a plist file with the naming convention of:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;userA.010203040506.USER.plist&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Then the password hash is backed up as:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;userA.010203040506.ABC12345&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;...the mobile account is skipped because it can be recreated when the user logs back in. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;That is it for backing up! When the Restore script runs it creates the user account, restores the GeneratedUID &lt;span class="Apple-style-span"  style=" ;font-family:Georgia;"&gt;(for the local accounts), then restores the home folders &lt;/span&gt;on the target for EVERY record in the folder that matches the Macs MAC address. &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The implementation in DeployStudio is very easy. Simply take the scripts and wrap them around your workflow:&lt;/div&gt;&lt;div style="text-align: center;"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 238); -webkit-text-decorations-in-effect: underline; "&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); "&gt;&lt;a href="http://dl.dropbox.com/u/5442688/DeployStudio/restoreworkflow.png"&gt;&lt;span class="Apple-style-span" style="color: rgb(0, 0, 0); -webkit-text-decorations-in-effect: none; "&gt;&lt;/span&gt;&lt;/a&gt;&lt;a href="http://dl.dropbox.com/u/5442688/DeployStudio/backupworkflow1.png"&gt;&lt;img src="http://dl.dropbox.com/u/5442688/DeployStudio/backupworkflow1.png" border="0" alt="" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 466px; height: 206px; " /&gt;&lt;/a&gt;&lt;img src="http://dl.dropbox.com/u/5442688/DeployStudio/restoreworkflow.png" border="0" alt="" style="display: block; margin-top: 0px; margin-right: auto; margin-bottom: 10px; margin-left: auto; text-align: center; cursor: pointer; width: 466px; height: 208px; " /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thats it!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;I'm releasing this code for all, please share, edit, use! Please report bugs and branches back to me at &lt;a href="mailto:rustymyers@gmail.com"&gt;rustymyers@gmail.com&lt;/a&gt;. I'd love to hear what your doing!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thanks to Pete Akins and his createUser.pkg from the instaDMG project. It was heavily relied upon for the backing up and creating of users. Seriously, Thank You Pete!&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Thanks to the ##osx-server channel on the freenode IRC server. Everyone was very helpful in helping me work out the "bugs".&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;a href="http://dl.dropbox.com/u/5442688/DeployStudio/BackupRestore.Beta003.zip"&gt;Download the scripts!&lt;/a&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;div&gt;* Updated Monday December 20, 2010&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;- Resolved issue with accounts not showing in System Preferences after restore.&lt;/div&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;- Added support for restoring admin rights for network users&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Notes:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;These scripts have been tested on 10.6 with local accounts and AD accounts. Machines are bound to AD via Directory Utility, with mobile accounts being created at login.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;*Crappy generic name subject to change without notification&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-6533318618988003579?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/6533318618988003579/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=6533318618988003579' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6533318618988003579'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6533318618988003579'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/12/backuprestore-user-data-with.html' title='BackupRestore User Data with DeployStudio'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-7939828265672466887</id><published>2010-11-27T18:09:00.000-08:00</published><updated>2010-11-28T19:12:08.193-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='packages'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>SysAdmin Video Series: Payload Free Package</title><content type='html'>The second video focuses on creating a payload free package.&lt;br /&gt;&lt;br /&gt;In this video I create a payload free package. This package will only  install a script, it won't install anything! Its a very useful package  type! This video also covers the difference between the different types  of installation scripts. &lt;a href="http://dl.dropbox.com/u/14532739/Payloadfree%20Package%20Files.zip" class="external text" rel="nofollow"&gt;Download the files&lt;/a&gt; used in the video to follow along! &lt;b&gt;NOTE:&lt;/b&gt; I do not have the script written well for InstaDMG. You should use the target of $3. Check this &lt;a href="http://www.afp548.com/forum/viewtopic.php?showtopic=23476" class="external text" rel="nofollow"&gt;afp548.com thread&lt;/a&gt; for great scripts to run with InstaDMG.  &lt;a href="https://streaming.psu.edu/media/?movieId=11427" class="external text" rel="nofollow"&gt;Watch the video&lt;/a&gt;&lt;p&gt; &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-7939828265672466887?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/7939828265672466887/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=7939828265672466887' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/7939828265672466887'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/7939828265672466887'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/11/sysadmin-video-series-payload-free.html' title='SysAdmin Video Series: Payload Free Package'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-5055955783701538828</id><published>2010-11-04T19:54:00.000-07:00</published><updated>2010-11-28T19:12:43.978-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='video'/><category scheme='http://www.blogger.com/atom/ns#' term='packages'/><category scheme='http://www.blogger.com/atom/ns#' term='sysadmin'/><title type='text'>SysAdmin Video Series: First Boot Package</title><content type='html'>The introductory video to the SysAdmin Video Series is here!&lt;br /&gt;&lt;br /&gt;Following is a video on building a package that will run a script when a computer first boots. This is useful for instadmg when you can't apply scripts during the build train. Its also useful for other uses.&lt;br /&gt;&lt;br /&gt;This video also covers some basics to Iceberg packaging and launchd plists. Download the files used in the video &lt;a href="http://www.personal.psu.edu/rzm102/movies/firstboot/ARD%20Kickstart.zip"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Watch the video &lt;a href="https://streaming.psu.edu/media/?movieId=11427"&gt;here&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-5055955783701538828?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/5055955783701538828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=5055955783701538828' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/5055955783701538828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/5055955783701538828'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/11/sysadmin-video-series-first-boot.html' title='SysAdmin Video Series: First Boot Package'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-4269530138677124111</id><published>2010-11-01T12:56:00.000-07:00</published><updated>2010-11-28T19:14:00.618-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='binding'/><category scheme='http://www.blogger.com/atom/ns#' term='AD'/><category scheme='http://www.blogger.com/atom/ns#' term='Administraton'/><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><title type='text'>AD Binding Fails</title><content type='html'>I have been having some issues lately with some random machines loosing their binding. I've just had to fix the third Mac in as many months with this issue. Unfortunately, I didn't really know what was going on until now.&lt;br /&gt;&lt;br /&gt;I would try to bind using Directory Utility and it kept failing on step 3. I turned on DirectoryService debugging with the handy command-y:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;sudo killall -USR1 DirectoryService&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;That produced some cool errors such as:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;Active Directory:      Password verify for rzm102@DOMAIN.COM failed with error -1765328230&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;and&lt;br /&gt;&lt;br /&gt;&lt;code&gt;Plug-in call "dsDoPlugInCustomCall()" failed with error = -14090.&lt;code&gt;&lt;br /&gt;&lt;br /&gt;Let me just say, I know my password. I didn't forget it. I type it in my machine hundreds of times a day, so it's not that!&lt;br /&gt;&lt;br /&gt;What it was, was very interesting. I found &lt;a href="http://web.archiveorange.com/archive/v/zFVVmzRFbaMeCrTydzc1"&gt;this&lt;/a&gt; thread that lead me to the real issue. Apparently, the /var/db/dslocal/nodes/Default/config/Kerberos\:AD.DOMAIN.NAME file had become corrupted. When I went to cat the file, it displayed with some funky text, not the plist I was expecting.&lt;br /&gt;&lt;br /&gt;Removing this file allows rebinding and fixes the issue. Yay!&lt;/code&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-4269530138677124111?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/4269530138677124111/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=4269530138677124111' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4269530138677124111'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4269530138677124111'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/11/ad-binding-fails.html' title='AD Binding Fails'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-4617311993748368207</id><published>2010-10-24T11:01:00.000-07:00</published><updated>2010-10-24T11:09:18.265-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='launchd'/><category scheme='http://www.blogger.com/atom/ns#' term='Administraton'/><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><title type='text'>launchd plist generator</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://content.screencast.com/users/rustymyers/folders/Jing/media/7bbfcc75-c675-43fc-b5f4-16d137fa84b1/00000086.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 662px; height: 345px;" src="http://content.screencast.com/users/rustymyers/folders/Jing/media/7bbfcc75-c675-43fc-b5f4-16d137fa84b1/00000086.png" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;A little gem of a web app, a plist generator, from Michael Rieder.&lt;br /&gt;&lt;br /&gt;This fancy webpage allows you to create a launchd plist! Very nice, and I suspect will be useful if I'm ever away from &lt;a href="http://lingon.sourceforge.net/"&gt;Lingon&lt;/a&gt; or my launchd notes.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-4617311993748368207?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/4617311993748368207/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=4617311993748368207' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4617311993748368207'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4617311993748368207'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/10/launchd-plist-generator.html' title='launchd plist generator'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-6893275798782214968</id><published>2010-10-24T10:20:00.000-07:00</published><updated>2010-10-24T10:50:39.409-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Conference'/><title type='text'>Macworld 2011</title><content type='html'>Macworld 2011 is only a few moths away and as excitement and anticipation builds, we must remember the simple things that need done before visiting. &lt;br /&gt;&lt;br /&gt;Always, always, always book a hotel! There are quite a few excellent hotels in the area of Macworld, some more expensive than others. I have stayed in the W San Francisco Hotel in the past and will be again this year. It's close, has great accommodations, and a lovely swimming pool!&lt;br /&gt;&lt;br /&gt;Also, your flights are good to book early. Personally, I prefer to return to the east coast on the red eye from SFO. It's cramped, uncomfortable, and smelly. However, I usually squeeze a couple naps in between bathroom breaks and the ballet dance of the drink carts.&lt;br /&gt;&lt;br /&gt;Finally, and most importantly, get your Macworld ticket! The Expo runs Jan 27th to 29th; the IT and Users conference runs 26th to 29th. And here is the part of this post that I can help you with! Use my unique priority code to receive a special discount on your Expo Pass and pay only $15 (normally $25) or 15% off a conference registration package.&lt;br /&gt;&lt;br /&gt;Register here: &lt;a href="http://rcsreg.com/macworld/RMU9926"&gt;http://rcsreg.com/macworld/RMU9926&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;For more information about Macworld 2011 visit &lt;a href="www.macworldexpo.com"&gt;www.macworldexpo.com&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Hope to see you there!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-6893275798782214968?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/6893275798782214968/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=6893275798782214968' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6893275798782214968'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6893275798782214968'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/10/macworld-2011.html' title='Macworld 2011'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-6596933116681645805</id><published>2010-10-24T10:08:00.001-07:00</published><updated>2010-10-24T10:51:02.998-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='documentation'/><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><title type='text'>OS X Wiki</title><content type='html'>It's been my wish for some time to see a wiki formed for OS X systems administration. Yay today! &lt;br /&gt;&lt;br /&gt;Check out:&lt;a href="http://www.osxdeployment.com/wiki/Main_Page"&gt; http://www.osxdeployment.com/wiki/Main_Page&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Don't forget to add some content!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-6596933116681645805?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/6596933116681645805/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=6596933116681645805' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6596933116681645805'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6596933116681645805'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/10/os-x-wiki.html' title='OS X Wiki'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-6306758523279988771</id><published>2010-08-04T08:03:00.000-07:00</published><updated>2010-10-24T10:52:16.897-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='management'/><category scheme='http://www.blogger.com/atom/ns#' term='Administraton'/><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><title type='text'>Double Click to minimize windows</title><content type='html'>I was trolling around the ##osx-server channel on freenode today when I saw a problem someone was having. natewa, as he is know on that channel, was having trouble setting a preference to allow all new users to double click a window to minimize it. It should be able to be set in the /System/Library/User Template/English.lproj/Library/Preferences/.GlobalPreferences.plist file for all new users. For some reason, this plist file gets overwritten when a new user gets a home folder. &lt;br /&gt;&lt;br /&gt;After looking at the User Template folder, I noticed a Non_localized.lproj folder. It seems that this folder also has a .GlobalPreferences.plist! Instead of changing the English.lproj GlobalTemplate file, I changed the Non_localized.lproj GlobalPreferences file. Bam! It worked for all new users. &lt;br /&gt;&lt;br /&gt;My guess is that your specific language template file, such as English.lproj in my case, is being combined with the non_localized.lproj file for whatever reasons.&lt;br /&gt;&lt;br /&gt;Here is the command I used:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;sudo defaults write /System/Library/User\ Template/Non_localized/Library/Preferences/.GlobalPreferences AppleMiniaturizeOnDoubleClick -bool TRUE&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;That allows all new users to double click a window to minimize it. Enjoy!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-6306758523279988771?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/6306758523279988771/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=6306758523279988771' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6306758523279988771'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6306758523279988771'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/08/double-click-to-minimize-windows.html' title='Double Click to minimize windows'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-2228688743899458482</id><published>2010-07-30T12:15:00.001-07:00</published><updated>2010-10-24T10:58:27.038-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Administraton'/><category scheme='http://www.blogger.com/atom/ns#' term='PSU'/><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><title type='text'>Mounting Pass and Udrive in an AD environment</title><content type='html'>Do I script too much?&lt;br /&gt;&lt;br /&gt;Today I have a little script that my intern &lt;a href="ecox_86@yahoo.com"&gt;Ethan Cox&lt;/a&gt; and I worked on together.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Problem:&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Penn State PASS and UDRIVE storage drives require a special edu.psu.kerberos file to be in place to access them. Our Active Directory requires a special edu.psu.kerberos file to be in place to log into the computer. So far, I&amp;#8217;ve been able to either remove the machine from our AD or have people access the PASS space via the website. It&amp;#8217;s not too bad interacting with the PASS space via the website, but it can be less appealing than the Finder.&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Solution:&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Create an application to temporarily switch the kerberos file with PSU&amp;#8217;s, mount the file share, then put everything back. Seems simple enough, and it was in the end. The hardest issue to overcome was getting kinit to prompt for the password.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;What you will Need:&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;The &lt;a href="http://www.sveinbjorn.org/platypus"&gt;Platypus.app&lt;/a&gt;.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;The &lt;a href="http://dl.dropbox.com/u/5442688/mountsysman.zip"&gt;Mounting Script&lt;/a&gt;.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;OR&lt;br /&gt;&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;The &lt;a href="http://dl.dropbox.com/u/5442688/SysmanApp.zip"&gt;Mount the Sysman share app&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;li&gt;The &lt;a href="http://dl.dropbox.com/u/5442688/PassApp.zip"&gt;Mount the PASS share app&lt;/a&gt;&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;&lt;br /&gt;  You can edit the finished app by Right clicking it and opening the Contents/Resources/script file.&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Putting it together:&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;Platypus takes a script as input for creating an .app. Download the &lt;a href="http://dl.dropbox.com/u/5442688/mountsysman.zip"&gt;mounting script&lt;/a&gt; and drag it into Platypus&amp;#8217; &amp;#8220;Script Path&amp;#8221; field. For this script I change the Shell to &amp;#8220;/bin/bash&amp;#8221; and uncheck the &amp;#8220;Remains running after initial execution&amp;#8221; check box. Click the &amp;#8220;Create&amp;#8221; button and save your new app.&lt;br /&gt;&lt;br /&gt;Your new app is now a double-clickable script that anyone can run.&lt;br /&gt;&lt;br /&gt;&lt;h2&gt;Changing the script:&lt;/h2&gt;&lt;br /&gt;&lt;br /&gt;The &lt;a href="http://dl.dropbox.com/u/5442688/mountsysman.zip"&gt;mounting script&lt;/a&gt; is configurable to your needs. &lt;br /&gt;&lt;br /&gt;There are two variables at the top of the script. The first variable sets the smb path to mount. Right now, the script only mounts SMB shares. Change the path to mount a different share.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;psuserver="smb://udrive.win.psu.edu/sysman"&lt;br /&gt;&lt;/pre&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;The second variable is the domain to get a kerberos ticket from. You can use your own domain if you need.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;domain="dce.psu.edu"&lt;br /&gt;&lt;/pre&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Some other shares can be:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;    cifs://cifs.pass.psu.edu&lt;br /&gt;&lt;/pre&gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Edit the alternate kerberos file if it differs from PSU&amp;#8217;s. This bit of code checks for the existence of our PSU kerberos file and creates it if it&amp;#8217;s missing.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;if [[ -e /Library/Preferences/edu.mit.Kerberos.psu ]]; then&lt;br /&gt;    echo "PSU File avail"&lt;br /&gt;else&lt;br /&gt;    echo "[domain_realm]&lt;br /&gt;    .psu.edu = dce.psu.edu&lt;br /&gt;    psu.edu = dce.psu.edu&lt;br /&gt;&lt;br /&gt;[libdefaults]&lt;br /&gt;    default&lt;em&gt;realm = dce.psu.edu&lt;br /&gt;    dns&lt;/em&gt;lookup_kdc = true&lt;br /&gt;    forwardable = true&lt;br /&gt;    noaddresses = true" &gt; /Library/Preferences/edu.mit.Kerberos.psu&lt;br /&gt;fi&lt;br /&gt;&lt;/pre&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-2228688743899458482?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/2228688743899458482/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=2228688743899458482' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/2228688743899458482'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/2228688743899458482'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/07/mounting-pass-and-udrive-in-ad.html' title='Mounting Pass and Udrive in an AD environment'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-9029511697390698641</id><published>2010-07-28T11:04:00.001-07:00</published><updated>2010-10-24T10:58:05.785-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ssl'/><category scheme='http://www.blogger.com/atom/ns#' term='Administraton'/><category scheme='http://www.blogger.com/atom/ns#' term='osx'/><title type='text'>Intermediate CA Bundles!</title><content type='html'>Thwate changes the way certificates work.&lt;br /&gt;&lt;br /&gt;In the past browsers and client machines would have root certificate authority files that verified the ssl certificates used. Now, with the new certificates (after June 27th, 2010), you have to install a intermediate certificate authority on the server for the new certificates to behave.&lt;br /&gt;&lt;br /&gt;So, When I added the new cert.crt from Thwate to the Server Admin interface, it complained that it was unassigned. I found &lt;a href="https://search.thawte.com/support/ssl-digital-certificates/index?page=content&amp;amp;id=SO15173&amp;amp;actp=search&amp;amp;viewlocale=en_US&amp;amp;searchid=1279741678429"&gt;this site&lt;/a&gt; which explains what changed recently and how to fix it. I&amp;#8217;m sure it works great for a *nix webserver that doesn&amp;#8217;t use Virtual Hosts, unlike OS X server.&lt;br /&gt;&lt;br /&gt;How do we fix this? Actually, its stupid simple after you mess with it for four hours. After you add the new cert.cer from Thwate through the Server Admin interface, open the site configuration and the security tab. Choose the new ssl certificate, save, apply, restart. Next, you will need to edit the Virtual Host for the site that has ssl enabled. &lt;br /&gt;&lt;br /&gt;I started with &lt;a href="https://search.thawte.com/support/ssl-digital-certificates/index?page=content&amp;amp;id=SO15173&amp;amp;actp=search&amp;amp;viewlocale=en_US&amp;amp;searchid=1279741678429"&gt;this certificate&lt;/a&gt; but it was not working for me. Something with the three difference CAs. I ended up using &lt;a href="https://search.thawte.com/support/ssl-digital-certificates/index?page=content&amp;amp;id=AR1374"&gt;this certificate bundle&lt;/a&gt; which worked.&lt;br /&gt;&lt;br /&gt;From &lt;a href="https://search.thawte.com/support/ssl-digital-certificates/index?page=content&amp;amp;id=AR1374"&gt;this page&lt;/a&gt; copy the new intermediate cert bundle and paste it into a plain text file. Save that file in /etc/certificates/ named intermediate.crt. &lt;br /&gt;&lt;br /&gt;Open the Terminal.app and navigate to the /etc/apache2/sites folder. Open the conf file for the site with ssl enabled, look for the one with 443 in the name, with your favorite text editor. Comment out the SSLCertificateChainFile line  and create a new SSLCertificateChainFile file to point to your new intermediate file. Should look like this:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;SSLCertificateChainFile = "/etc/certificates/intermediate.crt"&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Save the changes and restart the Web Server. I use the terminal in this case:&lt;br /&gt;&lt;br /&gt;Stop the web server:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;sudo serveradmin web stop&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Start the web server:&lt;br /&gt;&lt;br /&gt;&lt;code&gt;sudo serveradmin web start&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;Check your site and you should be good to go! The new certificate should appear without warnings. It should also appear without warning in the Server Admin certificates tab.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-9029511697390698641?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/9029511697390698641/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=9029511697390698641' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/9029511697390698641'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/9029511697390698641'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/07/intermediate-bundles.html' title='Intermediate CA Bundles!'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-2607741244480979509</id><published>2010-07-26T11:33:00.001-07:00</published><updated>2010-07-26T11:34:04.146-07:00</updated><title type='text'>Command Line Favorites #2</title><content type='html'>Update to my previous post. This is a few more months of command line favs!&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;##System Version Checks&lt;br /&gt;#&lt;br /&gt;sysversionOSX=`system_profiler SPSoftwareDataType | grep "System Version:" | awk '{print $6}' | awk -F . '{print $1$2}'`&lt;br /&gt;echo $sysversionOSX&lt;br /&gt;#The version is displayed as the major version without periods. Thses are the possible results.&lt;br /&gt;#   10.4.11 will equal 104&lt;br /&gt;#   10.4.7 will equal 104&lt;br /&gt;#   10.5 will equal  105&lt;br /&gt;#   10.6 will equal  106&lt;br /&gt;#   10.6.2 will equal 106&lt;br /&gt;&lt;br /&gt;#This command will give you the whole OS with periods:&lt;br /&gt;# system_profiler SPSoftwareDataType | grep "System Version:" | awk '{print $6}'&lt;br /&gt;# Example Result: 10.6.2&lt;br /&gt;&lt;br /&gt;#This command will show you witout the periods:&lt;br /&gt;# system_profiler SPSoftwareDataType | grep "System Version:" | awk '{print $6}' | awk -F . '{print $1$2$3}'&lt;br /&gt;# Example Result: 1062&lt;br /&gt;&lt;br /&gt;#This will exit 1 if the version is 10.5 or less&lt;br /&gt;# if [ "$sysversionOSX" -gt "105" ]&lt;br /&gt;#  then&lt;br /&gt;#   echo "Greater Than"&lt;br /&gt;#   exit 1&lt;br /&gt;# fi&lt;br /&gt;&lt;br /&gt;#This will exit 1 if the version is 10.6 or greater&lt;br /&gt; if [ "$sysversionOSX" -lt "106" ]; then&lt;br /&gt;  echo "Less Than"&lt;br /&gt;  exit 1&lt;br /&gt; else&lt;br /&gt;  echo "10.6 or higher"&lt;br /&gt; fi&lt;br /&gt;&lt;br /&gt;##Check DHCP packets&lt;br /&gt;ipconfig getpacket en0&lt;br /&gt;&lt;br /&gt;##Chech DS Cache&lt;br /&gt;dscacheutil -statistics&lt;br /&gt;&lt;br /&gt;##Watch files accessed by system&lt;br /&gt;fs_usage&lt;br /&gt;&lt;br /&gt;##List processes&lt;br /&gt;ps -ef&lt;br /&gt;&lt;br /&gt;##Show vm statistics&lt;br /&gt;vm_stat&lt;br /&gt;&lt;br /&gt;##Copy last 5 commands to textedit file&lt;br /&gt;history -n -5 | open -f&lt;br /&gt;&lt;br /&gt;##Pasteboard access&lt;br /&gt;pbpaste&lt;br /&gt;&lt;br /&gt;##Convert plist to xml1&lt;br /&gt;plutil -convert xml1&lt;br /&gt;&lt;br /&gt;##Set password policy for accounts&lt;br /&gt;pwpolicy&lt;br /&gt;&lt;br /&gt;##Spotlight info&lt;br /&gt;mdls filename&lt;br /&gt;&lt;br /&gt;##Spotlight find&lt;br /&gt;mdfind variable&lt;br /&gt;&lt;br /&gt;##List all RAID status&lt;br /&gt;diskutil appleRAID list&lt;br /&gt;&lt;br /&gt;##List bill of materials for packages&lt;br /&gt;lsbom -p UGMsF pathto.bom&lt;br /&gt;&lt;br /&gt;##Expand flat package&lt;br /&gt;pkgutil --expand name.pkg destination&lt;br /&gt;&lt;br /&gt;##List packages installed&lt;br /&gt;repair_packages --list-standard-pkgs&lt;br /&gt;&lt;br /&gt;##Repair Mail permissions&lt;br /&gt;sqlite3 ~/Library/Envelope Index vacum&lt;br /&gt;&lt;br /&gt;##Set Startup Disk&lt;br /&gt;sudo systemsetup -setstartupdisk /System/Library/CoreServices&lt;br /&gt;&lt;br /&gt;##Set fullname for user&lt;br /&gt;sudo dscl . -create /Users/etcadmin RealName "etcadmin"&lt;br /&gt;&lt;br /&gt;##Set User Picture&lt;br /&gt;sudo dscl . -create /Users/etcadmin picture "/Library/User Pictures/ETC/etc.jpg"&lt;br /&gt;&lt;br /&gt;##Set Auto login&lt;br /&gt;/usr/libexec/PlistBuddy -c "Add autoLoginUser string etcadmin" $3/Library/Preferences/com.apple.loginwindow.plist &lt;br /&gt;&lt;br /&gt;##Update auto login&lt;br /&gt;/usr/libexec/PlistBuddy -c "Set autoLoginUser etcadmin" $3/Library/Preferences/com.apple.loginwindow.plist &lt;br /&gt;&lt;br /&gt;##Remove Auto Login&lt;br /&gt;/usr/libexec/PlistBuddy -c "Remove autoLoginUser string etcadmin" $3/Library/Preferences/com.apple.loginwindow.plist &lt;br /&gt;OR&lt;br /&gt;/usr/libexec/PlistBuddy -c "Set autoLoginUser" $3/Library/Preferences/com.apple.loginwindow.plist &lt;br /&gt;&lt;br /&gt;##Find battery capacity information&lt;br /&gt;ioreg -l | grep Capacity&lt;br /&gt;&lt;br /&gt;##Find Battery Information&lt;br /&gt;#Cycle Count&lt;br /&gt;ioreg -l | grep Capacity | grep "Cycle Count"| cut -d, -f6 |sed -e s/\"//g | sed -e s/}//g&lt;br /&gt;#Cycle Count Number Only&lt;br /&gt;ioreg -l | grep Capacity | grep "Cycle Count"| cut -d, -f6 |sed -e s/\"Cycle\ Count\"=//g | sed -e s/}//g&lt;br /&gt;#Max Capacity&lt;br /&gt;ioreg -l | grep MaxCapacity | sed s/\"//g| awk '{print $3,$4,$5}'&lt;br /&gt;#Max Capacity Number Only&lt;br /&gt;ioreg -l | grep MaxCapacity | sed s/\"//g | awk '{print $5}'&lt;br /&gt;#Current Capacity&lt;br /&gt;ioreg -l | grep CurrentCapacity | sed s/\"//g| awk '{print $3,$4,$5}'&lt;br /&gt;#Current Capacity Number Only&lt;br /&gt;ioreg -l | grep CurrentCapacity | sed s/\"//g | awk '{print $5}'&lt;br /&gt;##Design Capacity&lt;br /&gt;ioreg -l | grep DesignCapacity | sed s/\"//g | awk '{print $3,$4,$5}'&lt;br /&gt;#Design Capacity Number Only&lt;br /&gt;ioreg -l | grep DesignCapacity | sed s/\"//g | awk '{print $5}'&lt;br /&gt;&lt;br /&gt;##Allow local admins to auth screen saver&lt;br /&gt;perl -i~backup -pe s/"account    required       pam_group.so no_warn group=admin,wheel fail_safe"/"account    sufficient     pam_group.so no_warn group=admin,wheel fail_safe"/g /etc/pam.d/screensaver&lt;br /&gt;&lt;br /&gt;## Watch packagemaker changes to system&lt;br /&gt;cd /Developer/Applications/Utilities/PackageMaker.app/Contents/MacOS&lt;br /&gt;./packagemaker --watch&lt;br /&gt;&lt;br /&gt;# Creating a snapshot package:&lt;br /&gt;packagemaker --watch [normal options, except --doc and --root]&lt;br /&gt;&lt;br /&gt;## Remove username from Cisco VPN menu&lt;br /&gt;perl -i~backup -pe s/`cat /private/etc/opt/cisco-vpnclient/Profiles/ITS\ Wireless\ at\ University\ Park.pcf|grep Username`//g /private/etc/opt/cisco-vpnclient/Profiles/ITS\ Wireless\ at\ University\ Park.pcf &lt;br /&gt;&lt;br /&gt;## Run script to update software&lt;br /&gt;#!/bin/sh&lt;br /&gt;&lt;br /&gt;#General settings to Software Updates to run in background defaults -currentHost write com.apple.SoftwareUpdate AgreedToLicenseAgrement -bool YES defaults -currentHost write com.apple.SoftwareUpdate AutomaticDownload -bool YES defaults -currentHost write com.apple.SoftwareUpdate LaunchAppInBackground -bool YES&lt;br /&gt;&lt;br /&gt;#Set Software Update to run in background with no user interaction defaults write /System/Library/CoreServices/Software\ Update.app/Contents/Info NSUIElement -bool TRUE&lt;br /&gt;&lt;br /&gt;#Check for new updates, what else?&lt;br /&gt;/System/Library/CoreServices/Software\ Update.app/Contents/Resources/SoftwareUpdateCheck&lt;br /&gt;&lt;br /&gt;#Re-enable Software Update to run in foreground defaults write /System/Library/CoreServices/Software\ Update.app/Contents/Info NSUIElement -bool FALSE&lt;br /&gt;&lt;br /&gt;#Add all updates to update index under IsntallAtLogout section updatelist=(`defaults read /Library/Updates/index ProductPaths | grep -v "[{}]" | awk -F "=" '{print $1}' | grep -o "[^\" ]\+"`) defaults write /Library/Updates/index InstallAtLogout -array ${updatelist[*]}&lt;br /&gt;&lt;br /&gt;#Tell OSX that we want to install updates at logout touch /var/db/.SoftwareUpdateAtLogout chmod og-r /var/db/.SoftwareUpdateAtLogout&lt;br /&gt;&lt;br /&gt;#Check to see if a user is logged in or not if who | grep -q console; then&lt;br /&gt;    #user logged on&lt;br /&gt;    #Bring up an alert to reboot&lt;br /&gt;    osascript -e 'tell application "System Events" to display alert "A restart is required to finish updates. Please click restart to restart your computer now" buttons {"Cancel", "Restart"} as warning default button "Restart" cancel button "Cancel"&lt;br /&gt;    if button returned of result = "Restart" then&lt;br /&gt;                tell application "System Events" to restart&lt;br /&gt;    end if'&lt;br /&gt;else&lt;br /&gt;&lt;br /&gt;    #login window&lt;br /&gt;    #reboot to install updates&lt;br /&gt;    #current errors out&lt;br /&gt;    osascript -e 'tell application "System Events" to tell process "SecurityAgent" to click button "Restart" of window 1'&lt;br /&gt;&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;## Find UUID of computer&lt;br /&gt;ioreg -rd1 -c IOPlatformExpertDevice | grep -E '(UUID)'| sed s/\"//g | sed s/\ //g | awk -F\= '{print $2}'&lt;br /&gt;&lt;br /&gt;# Flush DNS Cache&lt;br /&gt;# *10.6 and later &lt;br /&gt;dscacheutil -flushcache&lt;br /&gt;&lt;br /&gt;# 10.5.2 - 10.5.8&lt;br /&gt;dscacheutil -flushcache&lt;br /&gt;&lt;br /&gt;# 10.5.1 and earlier: &lt;br /&gt;lookupd -flushcache&lt;br /&gt;&lt;br /&gt;## List all local admins exept for root and etcadmin&lt;br /&gt;sudo dscl . read /Groups/admin GroupMembership | sed 's/GroupMembership\:\ //g;s/root\ //g;s/etcadmin\ //g'&lt;br /&gt;&lt;br /&gt;## Show All Extensions On turn on extensions in Finder and file dialogs &lt;br /&gt;defaults write -g AppleShowAllExtensions -bool YES; killall Finder&lt;br /&gt;&lt;br /&gt;## allow any user to set dvd region code&lt;br /&gt;"$3"/usr/libexec/PlistBuddy -c "Set :rights:system.device.dvd.setregion.initial:class allow" "$3"/etc/authorization&lt;br /&gt;&lt;br /&gt;## Remove "downloaded this app from internet" message&lt;br /&gt;xattr -d com.apple.quarantine firefoxapp.app&lt;br /&gt;&lt;br /&gt;## Move MacSpeech Data to local Network Users folders&lt;br /&gt;for i in `ls /Users/NetworkUsers/`&lt;br /&gt;do&lt;br /&gt;sudo cp /Users/Shared/Library/Preferences/com.macspeech.dictate.plist /Users/NetworkUsers/$i/Library/Preferences/&lt;br /&gt;done&lt;br /&gt;sudo cp -R /Users/Shared/Library/Application\ Support/MacSpeech /Library/PSUadmin/guestmaster/Library/Application\ Support/&lt;br /&gt;sudo cp /Users/Shared/Library/Preferences/com.macspeech.dictate.plist /Library/PSUadmin/guestmaster/Library/Preferences/&lt;br /&gt;&lt;br /&gt;for i in `ls /Users/NetworkUsers/`&lt;br /&gt;do&lt;br /&gt;sudo cp -R /Users/Shared/Library/Application\ Support/MacSpeech /Users/NetworkUsers/$i/Library/Application\ Support/&lt;br /&gt;sudo chmod 777 /Users/NetworkUsers/$i/Library/Application\ Support/MacSpeech&lt;br /&gt;done&lt;br /&gt;&lt;br /&gt;## Starts the Flurry screensaver over the login window when idle for 60 seconds&lt;br /&gt;$defaults write "${PREFS_DIR}/com.apple.screensaver" loginWindowIdleTime -int 60&lt;br /&gt;$defaults write "${PREFS_DIR}/com.apple.screensaver" loginWindowModulePath "/System/Library/Screen Savers/Flurry.saver"&lt;br /&gt;&lt;br /&gt;## Wait for network to be ready&lt;br /&gt;/usr/sbin/networksetup -detectnewhardware&lt;br /&gt;&lt;br /&gt;## Enable Assistive Devices&lt;br /&gt;sudo touch /private/var/db/.AccessibilityAPIEnabled&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-2607741244480979509?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/2607741244480979509/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=2607741244480979509' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/2607741244480979509'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/2607741244480979509'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/07/command-line-favorites-2.html' title='Command Line Favorites #2'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-5858720441462839439</id><published>2010-06-08T19:52:00.000-07:00</published><updated>2010-06-08T19:54:06.839-07:00</updated><title type='text'>My Colloquy Theme</title><content type='html'>&lt;span style="font-weight:bold;"&gt;I like it!!&lt;/span&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://2.bp.blogspot.com/_kBdUBuqi2xk/TA8CIHH42uI/AAAAAAAAAD4/ZzeRbGz20rM/s1600/colloquytheme.png"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 400px; height: 242px;" src="http://2.bp.blogspot.com/_kBdUBuqi2xk/TA8CIHH42uI/AAAAAAAAAD4/ZzeRbGz20rM/s400/colloquytheme.png" border="0" alt=""id="BLOGGER_PHOTO_ID_5480601609907526370" /&gt;&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-5858720441462839439?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/5858720441462839439/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=5858720441462839439' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/5858720441462839439'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/5858720441462839439'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/06/my-colloquy-theme.html' title='My Colloquy Theme'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_kBdUBuqi2xk/TA8CIHH42uI/AAAAAAAAAD4/ZzeRbGz20rM/s72-c/colloquytheme.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-6990325742133156258</id><published>2010-04-15T16:21:00.000-07:00</published><updated>2010-04-16T11:59:03.683-07:00</updated><title type='text'>iPad as mobile admin</title><content type='html'>As I tried to type a bash command on my iPod, I dreamed to do it from a larger keyboard. After I rotated the iPod to landscape, I wished for a larger screen. Then, I got an iPad. &lt;br /&gt;&lt;br /&gt;Remote administration is a big part of my job. Being able to be in two places at one time is not physically possible, without VNC! Be it SSH, ARD, VNC, or RDP, I longed for a device that could help. A laptop is great, but can be too big of a tool for the job, when the job is just to restart a service.&lt;br /&gt;&lt;br /&gt;Last night I got a call about the web server being down. Thinking about http://thewebsiteisdown.com, now. Anyway, our mysql server wasn't responding, which is a bad thing. Hopping on my iPad, I opened the iSSH app and tried to ping the mysql server. No go there, the host was down. The mysql server is hosted on the VM server, so...next stop, Jump Desktop. Jump Desktop allows me to RDP into the windows servers. After adding the vm server, I tried to connect! &lt;br /&gt;&lt;br /&gt;So I could lie to you, tell you how I restarted the vm, and the mysql server came back up, and I was a big hero (Imagine me as Clark Griswold on cover of national lampoons vacation).&lt;br /&gt;&lt;br /&gt;&lt;center&gt;&lt;a href='http://blogpress.w18.net/photos/10/04/16/1036.jpg'&gt;&lt;img src='http://blogpress.w18.net/photos/10/04/16/s_1036.jpg' border='0' width='185' height='281' style='margin:5px'&gt;&lt;/a&gt;&lt;/center&gt;&lt;br /&gt;It didn't happen that way. I was literally standing in my living room with kids hanging off my legs, iPad in my hand (much like the tennis racket of Clark's). However, I could not reach the VM server. I later found out it was scheduled maintenance that took the VM server offline. I expect my next remote administration job to have a better end!&lt;br /&gt;&lt;br /&gt;So if anyone else is interested in remote administration from the iPad, here are the apps I am using:&lt;br /&gt;&lt;br /&gt;iSSH - SSH and VNC&lt;br /&gt;     $9.99 - http://tinyurl.com/ipadissh &lt;br /&gt;Jump Desktop - RDP&lt;br /&gt;     $9.99 - http://tinyurl.com/ipadjumpdesktop&lt;br /&gt;Server Admin Remote - OS X server status (allows for turning services off and on)&lt;br /&gt;     $11.99 - http://tinyurl.com/ipadserveradminremote&lt;br /&gt;&lt;br /&gt;I feel I should at least write a few lines about Server Admin Remote. It's very pretty, it shows the same types of things as Server Admin on my Mac does. I can turn services off and on. I can't configure them though. That's a bummer, but understandable. Does a nice job of showing graphs too.&lt;br /&gt;      &lt;br /&gt;-Rusty&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-6990325742133156258?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/6990325742133156258/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=6990325742133156258' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6990325742133156258'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6990325742133156258'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/04/ipad-as-mobile-admin.html' title='iPad as mobile admin'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-2660979312182150572</id><published>2010-04-08T12:18:00.000-07:00</published><updated>2010-04-08T12:24:24.940-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='tsm script app'/><title type='text'>TSM Backup Check</title><content type='html'>Tivoli Storage Manager (TSM) is IBM's backup software that we use where I work. Its a great piece of software, but it's a bit lacking in the notifications area. To put it simply, it does not tell the user what's happening. &lt;br /&gt;&lt;br /&gt;For obvious reasons this can lead to confusion and lost backups when errors do occur. TSM does log whats happening and we can use those logs to our benefit. Introduction the solution; TSM Backup Check.app. A simple shell script that will parse the dsmsched.log for successful backups and errors. This app is not well tested, so use with caution.&lt;br /&gt;&lt;br /&gt;Here is the installer for the app:&lt;br /&gt;http://www.personal.psu.edu/rzm102/TSM%20Backup%20Check.dmg&lt;br /&gt;&lt;br /&gt;Here is the source for the app:&lt;br /&gt;http://www.personal.psu.edu/rzm102/TSM%20Backup%20Check%20Source.zip&lt;br /&gt;&lt;br /&gt;The TSM Backup Check package installs the "TSM Backup Check.app" and "Set TSM Backup Check Run Time.app" in to the "TSM Backup Check folder" in Applications.  There is a postflight script that sets Growl to start at login.&lt;br /&gt;&lt;br /&gt;The TSM Backup Check.app requires Growl to be installed and turned on. I used Growl 1.2 from here: http://growl.cachefly.net/Growl-1.2.dmg&lt;br /&gt;The TSM Backup Check.app creates a log file in ~/Library/Logs/TSMChk.log and appends to it after each run. The script will search the dsmsched.log for your last successful backup. If it's older than 10 days, it does some error checking and reports what fails. The successful backup date is then displayed with growl.&lt;br /&gt;&lt;br /&gt;The Set TSM Backup Check Run Time.app uses applescript to ask you for the time you want the launchd item to run the TSM Backup Check.app. The launchd item tries to launch it from the /Applications/TSM Backup Check/ folder, so if it's moved, it will break. Once you enter what time you want it to check it will enable the plist and set the time. You can enter "disable" to turn the launchd item off. &lt;br /&gt;&lt;br /&gt;I hope that this app will help alleviate some of the confusion of the TSM systems for users. Please ask questions, tell me if something breaks, or if you want to change it to fit your environment!&lt;br /&gt;&lt;br /&gt;Cheers,&lt;br /&gt;Rusty&lt;br /&gt;&lt;br /&gt;TSM is http://www-01.ibm.com/software/tivoli/products/storage-mgr/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-2660979312182150572?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/2660979312182150572/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=2660979312182150572' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/2660979312182150572'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/2660979312182150572'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/04/tsm-backup-check.html' title='TSM Backup Check'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-2745663433708114321</id><published>2010-03-30T12:04:00.000-07:00</published><updated>2010-07-30T12:18:58.842-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='screen saver'/><category scheme='http://www.blogger.com/atom/ns#' term='10.6'/><category scheme='http://www.blogger.com/atom/ns#' term='ARD'/><title type='text'>10.6 Snow Leopard Screen Saver</title><content type='html'>In 10.5 and before, a local admin could unlock a screen saver using their credentials. This changed in 10.6. I understand why, two admins, one computer, you really don't want your buddy to unlock your screen saver. What if you had sensitive data there?! Apple changed this so that only the user that's logged in could unlock the screen saver. All well and good, for a home computer. Here at the university, we need to be able to unlock screen savers with our local admin accounts. &lt;br /&gt;&lt;br /&gt;Thanks to a discussion on Apple's discussion boards: http://discussions.apple.com/thread.jspa?threadID=2235793&amp;tstart=0&lt;br /&gt;I was able to find a way to change the authorization to allow local admins to unlock the screen saver. Of course I could edit the file manually, but pishaw to that! Here's the command to change the file:&lt;br /&gt;&lt;br /&gt;Don't forget your backup!&lt;br /&gt;cp /etc/pam.d/screensaver /etc/pam.d/screensaver.backup&lt;br /&gt;&lt;br /&gt;This should all be on one line. It will make a backup of the file and change the line.:&lt;br /&gt;&lt;blockquote&gt;perl -i~backup -pe s/"account    required       pam_group.so no_warn group=admin,wheel fail_safe"/"account    sufficient     pam_group.so no_warn group=admin,wheel fail_safe"/g /etc/pam.d/screensaver&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;You can see that all we are changing is the "required" to "sufficient". Someone much smarter than I can comment and tell us what this is actually doing, but for my purpose this gets the done stamp.&lt;br /&gt;&lt;br /&gt;I ssh'd into a laptop I was locked out of, ran this command, and was immediately able to unlock the screen saver. This should work through ARD, SSH, Payload Free Package (provided below), etc..&lt;br /&gt;&lt;br /&gt;&lt;a href="http://dl.dropbox.com/u/5442688/ScreenSaverAuth.pkg.zip"&gt;Here&lt;/a&gt; is a payload free package that will do this. Feel free to check out what the postflight script is doing.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Enjoy Mac Ninjas&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Updated blog post! Using perl script instead of shell. 20100330&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-2745663433708114321?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/2745663433708114321/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=2745663433708114321' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/2745663433708114321'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/2745663433708114321'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/03/106-snow-leopard-screen-saver.html' title='10.6 Snow Leopard Screen Saver'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-1332145040011338566</id><published>2010-03-29T05:53:00.001-07:00</published><updated>2010-03-29T06:00:35.859-07:00</updated><title type='text'>Monitoring Battery Status through the Terminal</title><content type='html'>We all monitor our batteries in laptops. Usually by watching a percentage symbol or fancy bar in the Menu Bar. Well, unless your on a desktop. These percentages or bar graphs give us some idea on how much time we have till we loose our digital friend. For most users, this is fine and dandy. For me, and I'm assuming some other geeks out there, it's not quite enough. I manage a few hundred laptops and finding out that someone's battery is on the fritz is never fun. If it's in warranty, no problem, just a free replacement. However, if it's "consumed" (the Apple approved term for "your battery is dead") we need to have funds allocated and parts ordered. &lt;br /&gt;&lt;br /&gt;So how can we help manage or clients batteries more effective? Well, keep track of course! For batteries approaching a 300+ cycle count, I know to be aware that they are at the end of their life. If the Max Capacity of a battery is only 50% of its Designed Capacity, I know someone isn't happy with their battery life. &lt;br /&gt;&lt;br /&gt;Introducing Battery Capacity Terminal Commands! Take these babies and make your own scripts, GUIs, reporting tools. Whatever you want, but please share what you can!&lt;br /&gt;&lt;br /&gt;#Cycle Count&lt;br /&gt;ioreg -l | grep Capacity | grep "Cycle Count"| cut -d, -f6 |sed -e s/\"//g | sed -e s/}//g&lt;br /&gt;#Cycle Count Number Only&lt;br /&gt;ioreg -l | grep Capacity | grep "Cycle Count"| cut -d, -f6 |sed -e s/\"Cycle\ Count\"=//g | sed -e s/}//g&lt;br /&gt;#Max Capacity&lt;br /&gt;ioreg -l | grep MaxCapacity | sed s/\"//g| awk '{print $3,$4,$5}'&lt;br /&gt;#Max Capacity Number Only&lt;br /&gt;ioreg -l | grep MaxCapacity | sed s/\"//g | awk '{print $5}'&lt;br /&gt;#Current Capacity&lt;br /&gt;ioreg -l | grep CurrentCapacity | sed s/\"//g| awk '{print $3,$4,$5}'&lt;br /&gt;#Current Capacity Number Only&lt;br /&gt;ioreg -l | grep CurrentCapacity | sed s/\"//g | awk '{print $5}'&lt;br /&gt;##Design Capacity&lt;br /&gt;ioreg -l | grep DesignCapacity | sed s/\"//g | awk '{print $3,$4,$5}'&lt;br /&gt;#Design Capacity Number Only&lt;br /&gt;ioreg -l | grep DesignCapacity | sed s/\"//g | awk '{print $5}'&lt;br /&gt;&lt;br /&gt;Questions, Questions? I should buy a boat!&lt;br /&gt;Rusty&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-1332145040011338566?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/1332145040011338566/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=1332145040011338566' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/1332145040011338566'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/1332145040011338566'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2010/03/monitoring-battery-status-through.html' title='Monitoring Battery Status through the Terminal'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-5534320934825961415</id><published>2009-10-05T13:02:00.000-07:00</published><updated>2009-10-05T13:12:35.226-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='BIgFix'/><category scheme='http://www.blogger.com/atom/ns#' term='Mac'/><category scheme='http://www.blogger.com/atom/ns#' term='Administraton'/><title type='text'>BigFix on the Mac</title><content type='html'>BigFix? http://bigfix.com&lt;br /&gt;What's that? It's a systems management tool!&lt;br /&gt;It's a big tool, with lots of stuff you can do. One of those things is deploy software or scripts to machines based on there current settings. It's called relevance.&lt;br /&gt;&lt;br /&gt;If a machine needs the latest firefox update, we can automatically push it, based on the relevance. For example, if it's version is less than the current version, it will update. &lt;br /&gt;If our admin account is missing from the machine, it can automatically add our account. Super awesome password and all. Secure and tracked using SHA1.&lt;br /&gt;&lt;br /&gt;I've create a few tasks in BigFix so far and here are some examples of the relevance.&lt;br /&gt;&lt;br /&gt;For the 10.6.1 update, the relevance is:&lt;br /&gt;(system version = "10.6")&lt;br /&gt;&lt;br /&gt;For Enabling remote management (Checks that Remote Management is not running and that our admin account is available):&lt;br /&gt;((name of operating system = "Mac OS X") AND (not exists process whose (name of it starts with "ARDAgent")) AND (exists user "etcadmin"))&lt;br /&gt;&lt;br /&gt;For enabling remote login (Checks overrides.plist to see if it's disabled):&lt;br /&gt;(system version &gt;= "10.6") AND (exists ((booleans of values of entries whose (key of it is "Disabled") of dictionary "com.openssh.sshd" of dictionaries of file "/private/var/db/launchd.db/com.apple.launchd/overrides.plist")) whose (it = true))&lt;br /&gt;&lt;br /&gt;So far, it's been working pretty well. Routers slow the process down, but university IP addresses get the tasks right away. More examples to come as I work on them.&lt;br /&gt;&lt;br /&gt;Enjoy BigFix on the Mac&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-5534320934825961415?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/5534320934825961415/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=5534320934825961415' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/5534320934825961415'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/5534320934825961415'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2009/10/bigfix-on-mac.html' title='BigFix on the Mac'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-1959448633937715513</id><published>2009-09-11T19:01:00.000-07:00</published><updated>2009-09-11T19:04:59.063-07:00</updated><title type='text'>Command Line Favorites #1</title><content type='html'>So I've been collecting some of my favorite and most used CLI commands. I figured, now that Snow Leopard is out, why not share them!&lt;br /&gt;&lt;br /&gt;Key:&lt;br /&gt;&lt;br /&gt;##"Name of Command or what it does"&lt;br /&gt;#"Comments from the actual command or script that it is in"&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;Command Line Favorites for OS X Leopard&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;##Change en0 to DHCP:&lt;br /&gt;sudo ipconfig set en0 DHCP&lt;br /&gt;&lt;br /&gt;##Enable ARD for etcadmin:&lt;br /&gt;#etcadmin user&lt;br /&gt;sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -users etcadmin -privs -all -restart -agent -menu&lt;br /&gt;#all users&lt;br /&gt;sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -activate -configure -access -on -restart -agent -privs -all&lt;br /&gt;&lt;br /&gt;##Change Password for admin from ARD:&lt;br /&gt; dscl . -passwd /Users/admin oldpass newpass ; kickstart - configure -privs -all -users admin&lt;br /&gt;&lt;br /&gt;On 10.4 / 10.5:&lt;br /&gt;&lt;br /&gt;dscl . -passwd /Users/USERNAME OLDPASS NEWPASS&lt;br /&gt;&lt;br /&gt;##Copy text to remote location:&lt;br /&gt;sudo cat /file.txt | ssh user@host 'cat - &gt;&gt; ~/file.txt'&lt;br /&gt;&lt;br /&gt;##Quicklook from the Command Line:&lt;br /&gt;qlmanage -p filename.jpg&lt;br /&gt;&lt;br /&gt;#Usage: qlmanage [OPTIONS] path... -h Display this help -r Force reloading Generators list -p Show a preview of the documents -t Show thumbnails of the documents -s size Size for the thumbnail -f factor Scale factor for the thumbnail -c contentTypeUTI Force the content type used for the documents -g generator Force the generator to use&lt;br /&gt;&lt;br /&gt;#Quick Look launch in the background:&lt;br /&gt;qlmanage -p filename.jpg &amp;&lt;br /&gt;&lt;br /&gt;##Add highlighting to Stacks grid view:&lt;br /&gt;defaults write com.apple.dock mouse-over-hilte-stack -boolean yes&lt;br /&gt;killall Dock&lt;br /&gt;&lt;br /&gt;##SSH Authorized Keys&lt;br /&gt;sudo ssh-keygen -t dsa -f ~/.ssh/id_dsa -C "whatever comment"&lt;br /&gt;sudo cat /private/var/root/.ssh/id_dsa.pub | ssh user@host 'cat - &gt;&gt; ~/.ssh/authorized_keys'&lt;br /&gt;sudo cat /private/var/root/.ssh/id_dsa.pub &gt;&gt; /private/var/root/.ssh/authorized_keys&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;##Rsync Backup&lt;br /&gt;sudo rsync -xrlptgoEv --progress --delete / /Volumes/Evolve&lt;br /&gt;&lt;br /&gt;##random&lt;br /&gt;systemsetup&lt;br /&gt;networksetup&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;##Disable Time Machine "use this disk"&lt;br /&gt;defaults write com.apple.TimeMachine DoNotOfferNewDisksForBackup -bool YES&lt;br /&gt;&lt;br /&gt;##Spoof Mac Address&lt;br /&gt;Retrieving your current MAC address&lt;br /&gt;&lt;br /&gt;First, you’re going to want your current wireless MAC address so you can set it back without rebooting. Launch the Terminal and type the following command:&lt;br /&gt;ifconfig en1 | grep ether&lt;br /&gt;You’ll know see something like:&lt;br /&gt;ether 00:12:cb:c6:24:e2&lt;br /&gt;And the values after ‘ether’ makeup your current MAC address. Write this down somewhere so you don’t forget it. If you do, it’s not the end of the world, you’ll just have to reboot to reset it from a change.&lt;br /&gt;&lt;br /&gt;Spoofing a MAC address&lt;br /&gt;&lt;br /&gt;To spoof your MAC address, you simply set that value returned from ifconfig to another hex value in the format of aa:bb:cc:dd:ee:ff&lt;br /&gt;&lt;br /&gt;For this example, we will set our wireless MAC address to 00:e2:e3:e4:e5:e6 by issuing the following command:&lt;br /&gt;sudo ifconfig en1 ether 00:e2:e3:e4:e5:e6&lt;br /&gt;&lt;br /&gt;The sudo command will require that you enter your root password to make the change.&lt;br /&gt;&lt;br /&gt;Verifying the Spoofed MAC address worked&lt;br /&gt;&lt;br /&gt;If you want to check that the spoof worked, type the same command as earlier:&lt;br /&gt;ifconfig en1 | grep ether&lt;br /&gt;Now you will see:&lt;br /&gt;ether 00:e2:e3:e4:e5:e6&lt;br /&gt;Meaning your MAC address is now the value you set it to. If you want to further verify the spoof, simply login to your wireless router and look at the ‘available devices’ (or attached devices) list, and your spoofed MAC address will be part of that list.&lt;br /&gt;&lt;br /&gt;If you want to set your MAC address back to its real value, simply issue the above ifconfig commands with the MAC address that you retrieved in step 1. You can also reboot your Mac.&lt;br /&gt;&lt;br /&gt;##Display full paths as Finder window titles&lt;br /&gt;defaults write com.apple.finder _FXShowPosixPathInTitle -bool YES&lt;br /&gt;&lt;br /&gt;##Add Bonjour to screen sharing application&lt;br /&gt;defaults write com.apple.ScreenSharing ShowBonjourBrowser_Debug 1&lt;br /&gt;&lt;br /&gt;##Add functionality to 10.5 Screen Sharing app&lt;br /&gt;defaults write com.apple.ScreenSharing \&lt;br /&gt;'NSToolbar Configuration ControlToolbar' -dict-add 'TB Item Identifiers' \&lt;br /&gt;'(Scale,Control,Share,Curtain,Capture,FullScreen,GetClipboard,SendClipboard,Quality)'&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;##Add IP Printer&lt;br /&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;# Tests to see if printer exists&lt;br /&gt;# Requires the printer name as a parameter.  Returns 1 if the printer exists.&lt;br /&gt;&lt;br /&gt;function printerExists()&lt;br /&gt;{&lt;br /&gt; if [ $# -ne 1 ]; then&lt;br /&gt;   echo "Incorrect parameters"&lt;br /&gt;   return 0&lt;br /&gt; else&lt;br /&gt;   lpstat -p | awk '{print $2}' | while read printer&lt;br /&gt;   do&lt;br /&gt;     if [ $1 = "${printer}" ]; then&lt;br /&gt;       return 1&lt;br /&gt;     fi&lt;br /&gt;   done&lt;br /&gt; fi	&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;# Printer Name cannot Include any spaces&lt;br /&gt;prName="LabPrinter"&lt;br /&gt;# User friendly printer name"&lt;br /&gt;prDescription="Lab Printer"&lt;br /&gt;# Location&lt;br /&gt;prLocation="The Lab"&lt;br /&gt;# IP Address of printer&lt;br /&gt;prAddress="printer.mycompany.com"&lt;br /&gt;# PPD Filename... assumes it is installed on machine&lt;br /&gt;prPPD="HP LaserJet 4350.gz"&lt;br /&gt;&lt;br /&gt;#Test If Printer is already installed&lt;br /&gt;printerExists $prName&lt;br /&gt;prExists=$?&lt;br /&gt;&lt;br /&gt;if [ $prExists -eq 1 ]; then&lt;br /&gt; echo "Printer already exists. Skipping: \"$prName\""&lt;br /&gt;else&lt;br /&gt; # Add Printer Command&lt;br /&gt; lpadmin -p "${prName}" -D "${prDescription}" -L "${prLocation}" \&lt;br /&gt; -E -v lpd://"${prAddress}" -P "/Library/Printers/PPDs/Contents/Resources/$prPPD" \&lt;br /&gt; -o HPOption_Tray3=Tray3_500 -o HPOption_Duplexer=True -o InstalledMemory=Mem96_127 -o Duplex=DuplexNoTumble&lt;br /&gt;&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;#------------------------------------------------------&lt;br /&gt;#The important part is the lpadmin and lpoptions commands.  if you look at thee man pages.&lt;br /&gt;#it also is a good idea to add an option to not share the printer.&lt;br /&gt;&lt;br /&gt;#I've actually made this into a package so users can install it themselves.&lt;br /&gt;#Hope that helps!&lt;br /&gt;#Steve&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;lpadmin -p printer_name -E -v lpd://printer_and_queue_address -m printer_model_ppd_file -L "text_description_of_printer_location"&lt;br /&gt;Example:&lt;br /&gt;lpadmin -p "163_Chambers_Color" -E -v lpd://146.186.208.43 -P "/Library/Printers/PPDs/Contents/Resources/HP Color LaserJet 4550.gz" -L "163_Chambers_Color" -o "printer-info='163 Chambers'"&lt;br /&gt;&lt;br /&gt;lpadmin -p B-Copier -v eqtrans://printserver/b_mfp -E -P "/Library/Printers/PPDs/Contents/Resources/HP LaserJet M5035 MFP.gz"&lt;br /&gt;&lt;br /&gt;I have all of my printers setup using a shell script that adds them all at once. It makes setting up printers using ARD quick and easy.&lt;br /&gt;• Printers are available immediately.&lt;br /&gt;• For leopard machines, make sure to send the command as root or an admin. Otherwise users will need admin authentication before printing.&lt;br /&gt;• Make sure to substitute the appropriate device URI (after -v)&lt;br /&gt;&lt;br /&gt;Another quick tip is to delete all printers quickly. You can do it using the name, but I do it using a script that I grabbed somewhere.&lt;br /&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;lpstat -p | awk '{print $2}' | while read printer&lt;br /&gt;do&lt;br /&gt; echo "Deleting  Printer:" $printer&lt;br /&gt; lpadmin -x $printer&lt;br /&gt;done&lt;br /&gt;&lt;br /&gt;#Leopard Delete printer&lt;br /&gt;PRINTERS_CONF="/etc/cups/printers.conf"&lt;br /&gt;CUPS_PLIST="/System/Library/LaunchDaemons/org.cups.cupsd.plist"&lt;br /&gt;&lt;br /&gt;launchctl unload "${CUPS_PLIST}"&lt;br /&gt;rm ${PRINTERS_CONF}&lt;br /&gt;launchctl load "${CUPS_PLIST}"&lt;br /&gt;&lt;br /&gt;##Use your own SUS Server&lt;br /&gt;&lt;br /&gt;#Software Update command line:&lt;br /&gt;sudo defaults write com.apple.SoftwareUpdate CatalogURL "http://146.186.208.248:8088/"&lt;br /&gt;&lt;br /&gt;#Software update program:&lt;br /&gt;sudo defaults write /Library/Preferences/com.apple.SoftwareUpdate CatalogURL "http://146.186.208.248:8088/"&lt;br /&gt;&lt;br /&gt;#To Reverse just Delete:&lt;br /&gt;sudo defaults delete /Library/Preferences/com.apple.SoftwareUpdate CatalogURL&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;##CLI Software Update:&lt;br /&gt;&lt;br /&gt;sudo softwareupdate -i -a&lt;br /&gt;&lt;br /&gt;##Change Computer Name from CLI&lt;br /&gt;&lt;br /&gt;defaults write /Library/Preferences/SystemConfiguration/preferences System '&lt;dict&gt;&lt;key&gt;Network&lt;/key&gt;&lt;dict&gt;&lt;key&gt;HostNames&lt;/key&gt;&lt;dict&gt;&lt;key&gt;LocalHostName&lt;/key&gt;&lt;br /&gt;&lt;string&gt;NEWHOSTNAME&lt;/string&gt;&lt;br /&gt;&lt;/dict&gt;&lt;/dict&gt;&lt;key&gt;System&lt;/key&gt;&lt;dict&gt;&lt;key&gt;ComputerName&lt;/key&gt;&lt;br /&gt;&lt;string&gt;NEWHOSTNAME&lt;/string&gt;&lt;br /&gt;&lt;key&gt;ComputerNameEncoding&lt;/key&gt;&lt;integer&gt;0&lt;/integer&gt;&lt;/dict&gt;&lt;/dict&gt;'&lt;br /&gt;&lt;br /&gt;##Stop Spaces fro switching when an app is opened and have it open the app in that space&lt;br /&gt;defaults write com.apple.dock workspaces-auto-swoosh -bool NO&lt;br /&gt;killall Dock&lt;br /&gt;&lt;br /&gt;##Enable ssh on machine&lt;br /&gt;To enable SSH go to the terminal and type in the following:&lt;br /&gt;&lt;br /&gt;sudo /sbin/service ssh start&lt;br /&gt;&lt;br /&gt;That should start the SSH server on the computer. SSH should be activated even if you restart the computer until you type the following into the terminal:&lt;br /&gt;&lt;br /&gt;sudo /sbin/service ssh stop&lt;br /&gt;&lt;br /&gt;##KRun command to execute task at some point in time: Exmple ARD&lt;br /&gt;We resolved this issue in the environments we manage by:&lt;br /&gt;&lt;br /&gt;1. Set all Macs to turn themselves back on at 03:01AM&lt;br /&gt;2. Added to /etc/crontab&lt;br /&gt;&lt;br /&gt;50	3	*	*	*	root	/System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -restart -agent&lt;br /&gt;&lt;br /&gt;##log into remote machine from cli and ARD&lt;br /&gt;osascript &lt;&lt;EndOfMyScript&lt;br /&gt;   tell application "System Events"&lt;br /&gt;       keystroke "LOGIN_NAME"&lt;br /&gt;       keystroke return&lt;br /&gt;       delay 3.0 &lt;br /&gt;       keystroke "PASSWORD"&lt;br /&gt;       delay 3.0 &lt;br /&gt;       keystroke tab&lt;br /&gt;       keystroke return&lt;br /&gt;       keystroke return&lt;br /&gt;   end tell &lt;br /&gt;EndOfMyScript&lt;br /&gt;&lt;br /&gt;##OR&lt;br /&gt;&lt;br /&gt;line_01='set logInUser to "admin"';line_02='set logInPassword to "donoharm"';line_03='tell application "System Events"';line_04='tell application process "loginwindow"';line_05='key code 53';line_06='delay 1';line_07='key code 125';line_08='delay 1';line_09='key code 36 using option down';line_10='delay 1';line_11='keystroke tab';line_12='delay 1';line_13='key code 117';line_14='delay .5';line_15='keystroke tab';line_16='delay .5';line_17='key code 117';line_18='keystroke return';line_19='delay 1';line_20='keystroke tab';line_21='delay .2';line_22='repeat with aChar in characters of logInUser';line_23='keystroke aChar';line_24='delay 0.2';line_25='end repeat';line_26='keystroke tab';line_27='delay .5';line_28='repeat with aChar in characters of logInPassword';line_29='keystroke aChar';line_30='delay 0.2';line_31='end repeat';line_32='key code 98 using control down';line_33='delay 0.2';line_34='keystroke return';line_35='end tell';line_36='end tell';value=$(osascript -e "$line_01" -e "$line_02" -e "$line_03" -e "$line_04" -e "$line_05" -e "$line_06" -e "$line_07" -e "$line_08" -e "$line_09" -e "$line_10" -e "$line_11" -e "$line_12" -e "$line_13" -e "$line_14" -e "$line_15" -e "$line_16" -e "$line_17" -e "$line_18" -e "$line_19" -e "$line_20" -e "$line_21" -e "$line_22" -e "$line_23" -e "$line_24" -e "$line_25" -e "$line_26" -e "$line_27" -e "$line_28" -e "$line_29" -e "$line_30" -e "$line_31" -e "$line_32" -e "$line_33" -e "$line_34" -e "$line_35" -e "$line_36") # 53=escape,125=down,117=delete&lt;br /&gt;&lt;br /&gt;##Mount shares with apple script:&lt;br /&gt;tell application Finder&lt;br /&gt;activate&lt;br /&gt;mount volume "afp://ownerofsharepoint:password@serverIPhere/volumename/sharename here"&lt;br /&gt;end tell&lt;br /&gt;&lt;br /&gt;##Migrate ARD to new machine&lt;br /&gt;&lt;br /&gt;# Copy database to remote machine:&lt;br /&gt;sudo scp -Epr /var/db/RemoteManagement root@machinename:/var/db&lt;br /&gt;&lt;br /&gt;# Copy /Library prefs&lt;br /&gt;sudo scp -Ep /Library/Preferences/com.apple.RemoteDesktop.plist&lt;br /&gt;root@machinename:/Library/Preferences&lt;br /&gt;&lt;br /&gt;# Copy home dir prefs&lt;br /&gt;sudo scp -E &lt;br /&gt;/Users/username/Library/Preferences/com.apple.RemoteDesktop.plist&lt;br /&gt;username@machinename:~/Library/Preferences&lt;br /&gt;&lt;br /&gt;# Copy home dir Application Support Remote Desktop dir&lt;br /&gt;sudo scp -Er /Users/username/Library/Application Support/Remote Desktop&lt;br /&gt;username@machinename:'~/LIbrary/Application&lt;br /&gt;Support'&lt;br /&gt;&lt;br /&gt;##Bind or unbind to leopard server&lt;br /&gt;dsconfigldap -v -r oldserver.somewhere.lan&lt;br /&gt;dscl /Search -delete / CSPSearchPath /LDAPv3/oldserver.somewhere.lan&lt;br /&gt;dsconfigldap -v -a newserver.somewhere.lan&lt;br /&gt;dscl /Search -create / SearchPolicy CSPSearchPath&lt;br /&gt;dscl /Search -append / CSPSearchPath /LDAPv3/newserver.somewhere.lan&lt;br /&gt;&lt;br /&gt;#Set up mac Mail sript&lt;br /&gt;#!/bin/sh&lt;br /&gt;#&lt;br /&gt;#&lt;br /&gt;# Create_Email_Account v1 &lt;br /&gt;#&lt;br /&gt;#-------------------------------------------------------------------------&lt;br /&gt;#&lt;br /&gt;#          Created: Feb 2007&lt;br /&gt;#         Modified: 18-06-07&lt;br /&gt;#&lt;br /&gt;#           Author: D Savage&lt;br /&gt;#                   Humanities and Social Science Support&lt;br /&gt;#                   Information Services&lt;br /&gt;#                   University of Edinburgh&lt;br /&gt;#&lt;br /&gt;#-------------------------------------------------------------------------&lt;br /&gt;#   Description:&lt;br /&gt;#&lt;br /&gt;#		Script to setup thunderbird and mail for new staff, runs once&lt;br /&gt;#		by using the users loginwindow.plist, then deletes the file&lt;br /&gt;# 		mac must be bound to AD!&lt;br /&gt;#&lt;br /&gt;#-------------------------------------------------------------------------&lt;br /&gt;#	Disclaimer:&lt;br /&gt;#&lt;br /&gt;#		We accept no responsibility for, nor do we warrant the merchantibility or &lt;br /&gt;#		fitness of this script. Any use or modification is at your own risk, though &lt;br /&gt;#		we would request notification of any modification required.&lt;br /&gt;#&lt;br /&gt;#-------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;#&lt;br /&gt;#Set environ&lt;br /&gt;#&lt;br /&gt;#get user shortname&lt;br /&gt;user=`who | grep console| awk '{print $1}'`&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#fetch data from AD&lt;br /&gt;Get_AD_Data ()&lt;br /&gt;{&lt;br /&gt;role=$1&lt;br /&gt;dscl localhost -read "/Active Directory/All Domains/Users/${user}" | grep "^${role}:" | awk '{print $2}'&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;empType=`Get_AD_Data employeeType` &lt;br /&gt;firstN=`Get_AD_Data FirstName`&lt;br /&gt;lastN=`Get_AD_Data LastName` &lt;br /&gt;&lt;br /&gt;fullN=`echo $firstN $lastN`&lt;br /&gt;#Only students don't use staff mail so&lt;br /&gt;email=`echo ${user}@staffmail.ed.ac.uk`&lt;br /&gt;mailServer="staff.mail.server"&lt;br /&gt;AccountName="Staff M ail Service"&lt;br /&gt;SMTPName="Staff.smtp.server"&lt;br /&gt;&lt;br /&gt;#if a student then use sms&lt;br /&gt;if [ "$empType" == "Student" ];&lt;br /&gt;	then&lt;br /&gt;	email=`echo ${user}@sms.ed.ac.uk`&lt;br /&gt;	mailServer="student.mail.server"&lt;br /&gt;	AccountName="Student Mail Service"&lt;br /&gt;	SMTPName="student.smtp.serverk"&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;#&lt;br /&gt;#End environ&lt;br /&gt;#&lt;br /&gt;thunConf=`find /Users/$user/Library/Thunderbird/Profiles/ -name 'staff.mail.server*' -o -print`&lt;br /&gt;mailConf=`ls /Users/${user}/Library/Mail | grep "staffmail"`&lt;br /&gt;if ! [ -z $mailConf ] &amp;&amp; ! [ -z $thunConf ]&lt;br /&gt;	then&lt;br /&gt;	exit 0;&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ls /Users/${user}/Library/Thunderbird/Profiles/ | grep -v '^[.*]' &gt; /tmp/thun.txt&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#&lt;br /&gt;#Mail.app config done here&lt;br /&gt;#&lt;br /&gt;&lt;br /&gt;osascript &lt;&lt;EOF&lt;br /&gt;tell application "Mail"&lt;br /&gt;	set theAccountName to "$AccountName"&lt;br /&gt;	set theMailServer to "$mailServer"&lt;br /&gt;	set theUsername to "$user"&lt;br /&gt;	set theFullName to "$fullN"&lt;br /&gt;	set theEmailAddresses to "$email"&lt;br /&gt;	set theSMTPName to "$SMTPName"&lt;br /&gt;	try&lt;br /&gt;		set theAccount to make new imap account with properties {name:theAccountName, user name:theUsername, server name:theMailServer, full name:theFullName, email addresses:theEmailAddresses, uses ssl:true}&lt;br /&gt;		&lt;br /&gt;	end try&lt;br /&gt;	&lt;br /&gt;	set theSMTPServer to make new smtp server with properties {server name:theSMTPName}&lt;br /&gt;	set smtp server of theAccount to theSMTPServer&lt;br /&gt;end tell&lt;br /&gt;EOF&lt;br /&gt;&lt;br /&gt;killall "Mail"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#&lt;br /&gt;#Thunderbird config starts here&lt;br /&gt;#&lt;br /&gt;#server2&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;end='");'&lt;br /&gt;&lt;br /&gt;cat /tmp/thun.txt | ( while read profileName; &lt;br /&gt;     do&lt;br /&gt;prefFile="/Users/${user}/Library/Thunderbird/Profiles/${profileName}/prefs.js"&lt;br /&gt;&lt;br /&gt;cat &lt;&lt;EOF &gt;&gt; $prefFile&lt;br /&gt;user_pref("mail.account.account2.identities", "id1");&lt;br /&gt;user_pref("mail.account.account2.server", "server2");&lt;br /&gt;user_pref("mail.accountmanager.accounts", "account1,account2");&lt;br /&gt;user_pref("mail.accountmanager.defaultaccount", "account2}");&lt;br /&gt;user_pref("mail.identity.id1.doBcc", false);&lt;br /&gt;user_pref("mail.identity.id1.doBccList", "");&lt;br /&gt;user_pref("mail.identity.id1.draft_folder", "mailbox://nobody@Local%20Folders/Drafts");&lt;br /&gt;user_pref("mail.identity.id1.drafts_folder_picker_mode", "0");&lt;br /&gt;user_pref("mail.identity.id1.escapedVCard", "");&lt;br /&gt;user_pref("mail.identity.id1.fcc_folder", "mailbox://nobody@Local%20Folders/Sent");&lt;br /&gt;user_pref("mail.identity.id1.fcc_folder_picker_mode", "0");&lt;br /&gt;user_pref("mail.identity.id1.fullName", "${fullN}");&lt;br /&gt;user_pref("mail.identity.id1.organization", "");&lt;br /&gt;user_pref("mail.identity.id1.reply_to", "");&lt;br /&gt;user_pref("mail.identity.id1.smtpServer", "smtp1");&lt;br /&gt;user_pref("mail.identity.id1.stationery_folder", "mailbox://nobody@Local%20Folders/Templates");&lt;br /&gt;user_pref("mail.identity.id1.tmpl_folder_picker_mode", "0");&lt;br /&gt;user_pref("mail.identity.id1.useremail", "${email}");&lt;br /&gt;user_pref("mail.identity.id1.valid", true);&lt;br /&gt;user_pref("mail.root.imap-rel", "[ProfD]ImapMail");&lt;br /&gt;user_pref("mail.root.none-rel", "[ProfD]Mail");&lt;br /&gt;user_pref("mail.server.server1.directory-rel", "[ProfD]Mail/Local Folders");&lt;br /&gt;user_pref("mail.server.server1.hostname", "Local Folders");&lt;br /&gt;user_pref("mail.server.server1.name", "Local Folders");&lt;br /&gt;user_pref("mail.server.server1.type", "none");&lt;br /&gt;user_pref("mail.server.server1.userName", "nobody");&lt;br /&gt;user_pref("mail.server.server2.capability", 17593141);&lt;br /&gt;user_pref("mail.server.server2.download_on_biff", true);&lt;br /&gt;user_pref("mail.server.server2.hostname", "${mailServer}");&lt;br /&gt;user_pref("mail.server.server2.isSecure", true);&lt;br /&gt;user_pref("mail.server.server2.login_at_startup", true);&lt;br /&gt;user_pref("mail.server.server2.max_cached_connections", 5);&lt;br /&gt;user_pref("mail.server.server2.name", "${AccountName}");&lt;br /&gt;user_pref("mail.server.server2.namespace.personal", "\"\"");&lt;br /&gt;user_pref("mail.server.server2.namespace.public", "\"Shared Folders/\"");&lt;br /&gt;user_pref("mail.server.server2.socketType", 3);&lt;br /&gt;user_pref("mail.server.server2.timeout", 29);&lt;br /&gt;user_pref("mail.server.server2.type", "imap");&lt;br /&gt;user_pref("mail.server.server2.userName", "${user}");&lt;br /&gt;user_pref("mail.smtp.defaultserver", "smtp1");&lt;br /&gt;user_pref("mail.smtpserver.smtp1.auth_method", 1);&lt;br /&gt;user_pref("mail.smtpserver.smtp1.hostname", "${SMTPName}");&lt;br /&gt;user_pref("mail.smtpserver.smtp1.port", 25);&lt;br /&gt;user_pref("mail.smtpserver.smtp1.try_ssl", 0);&lt;br /&gt;user_pref("mail.smtpserver.smtp1.username", "${user}");&lt;br /&gt;user_pref("mail.smtpservers", "smtp1");&lt;br /&gt;EOF&lt;br /&gt;&lt;br /&gt;done)&lt;br /&gt;&lt;br /&gt;rm -dfr /Users/${user}/Library/Preferences/loginwindow.plist&lt;br /&gt;&lt;br /&gt;exit 0;&lt;br /&gt;&lt;br /&gt;#Fix ard issue&lt;br /&gt;osascript -e 'tell app "ARDAgent" to do shell script "chmod 0555 /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/MacOS/ARDAgent"';&lt;br /&gt;&lt;br /&gt;## Script for phoning home&lt;br /&gt;#Set the computername&lt;br /&gt;systemsetup -setcomputername $(/bin/hostname)&lt;br /&gt;&lt;br /&gt;#Phone home&lt;br /&gt;SUBJECT="New Host Added: "&lt;br /&gt;TO="ard@mydomian.com"&lt;br /&gt;&lt;br /&gt;/usr/bin/mail -s "$SUBJECT $(/bin/hostname)" "$TO" &lt;&lt;br /&gt;A new host was imaged today at `date`. Add $(/bin/hostname) to your ARD configuration. It's profile is:&lt;br /&gt;&lt;br /&gt;$(system_profiler | head -n 17)&lt;br /&gt;EOF&lt;br /&gt;&lt;br /&gt;##Implement Filevault on all machines&lt;br /&gt;&lt;br /&gt;Copy /Library/Keychains: FileVaultMaster.cer, and FileVaultMaster.keychain &lt;br /&gt;&lt;br /&gt;#MCX settings for password hint or:&lt;br /&gt;/Library/Keychains: FileVaultMaster.cer, and FileVaultMaster.keychain &lt;br /&gt;&lt;br /&gt;#add blank password hint&lt;br /&gt;sudo defaults write /Library/Preferences/com.apple.loginwindow MasterPasswordHint "" &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;##Postflight script to set time zone and start NTP (Leopard) &lt;br /&gt;&lt;br /&gt;#!/bin/sh&lt;br /&gt;&lt;br /&gt;#Set variables&lt;br /&gt;systemSetupLocation="/usr/sbin/systemsetup"&lt;br /&gt;timeZone="Europe/Dublin"&lt;br /&gt;networkTimeServer="time.euro.apple.com"&lt;br /&gt;&lt;br /&gt;#Set time zone, set time server, start NTP&lt;br /&gt;$systemSetupLocation -settimezone $timeZone&lt;br /&gt;$systemSetupLocation -setnetworktimeserver $networkTimeServer iburst&lt;br /&gt;$systemSetupLocation -setusingnetworktime on&lt;br /&gt;&lt;br /&gt;##Set computer to netboot through ARD&lt;br /&gt;sudo bless --netboot --server bsdp://server.apple.edu&lt;br /&gt;&lt;br /&gt;##Set dns for primary interface&lt;br /&gt;mainInt=$(networksetup -listnetworkserviceorder | \&lt;br /&gt;awk '/\(1\)/ {$1="";sub("^ ","",$0);print}')&lt;br /&gt;networksetup -setdnsservers "$mainInt" 10.0.0.1 10.0.0.2&lt;br /&gt;&lt;br /&gt;##Backup OD to archive&lt;br /&gt;echo "dirserv:backupArchiveParams:archivePassword = mypassword" &gt; /var/root/command.txt&lt;br /&gt;echo "dirserv:backupArchiveParams:archivePath = /path/to/backup/odarchive" &gt;&gt; /var/root/command.txt&lt;br /&gt;echo "dirserv:command = backupArchive" &gt;&gt; /var/root/command.txt&lt;br /&gt;serveradmin command &lt; /var/root/command.txt&lt;br /&gt;rm /var/root/command.txt&lt;br /&gt;&lt;br /&gt;##Hide users with UID under 500&lt;br /&gt;defaults write /Library/Preferences/com.apple.loginwindow Hide500users 1&lt;br /&gt;&lt;br /&gt;##Bind computers to OD and add to computergroups&lt;br /&gt;&lt;br /&gt;I've started using this script to add a computer record to my ODM as part of my 1stRun OD binding script.  It also adds that machine to a ComputerList and a ComputerGroup.  I don't know the details (guessing ComputerLists are for 10.4 and earlier, ComputerGroups for 10.5 and later) but I have to add the computer to both the ComputerList and the ComputerGroup for it to show up in WGM.  (Actually, I didn't try just adding to the ComputerGroup, but when you add a machine to a Computer Group in WGM, it gets added to both the ComputerGroup and the ComputerList in LDAP.)  Here's my script:&lt;br /&gt;&lt;br /&gt;	thisComputerName="$(systemsetup -getcomputername | cut -c 16-)"&lt;br /&gt;	thisLocalSubnetName="$(systemsetup -getlocalsubnetname | cut -c 20-)"&lt;br /&gt;	thisHWAddress="$(ifconfig en0 | awk ' /ether/ { print $2 }')"&lt;br /&gt;	&lt;br /&gt;	# Create a computer record using the LocalSubnetName as the record id&lt;br /&gt;	dscl -u diradmin -P "diradminpass" /LDAPv3/odm.mydomain.net/ -create /Computers/$thisLocalSubnetName macAddress $thisHWAddress&lt;br /&gt;	# note you get a GUID here for free, don't have to set with uuidgen&lt;br /&gt;&lt;br /&gt;	# Add the RealName attribute&lt;br /&gt;	dscl -u diradmin -P "diradminpass" /LDAPv3/odm.mydomain.net/ -append /Computers/$thisLocalSubnetName RealName "$thisComputerName"&lt;br /&gt;&lt;br /&gt;	# Add to the facultylaptops ComputerList&lt;br /&gt;	dscl -u diradmin -P "diradminpass" /LDAPv3/odm.mydomain.net/ -merge "/ComputerLists/facultylaptops" apple-computers "$thisLocalSubnetName"&lt;br /&gt;&lt;br /&gt;	# Add to the facultylaptops ComputerGroup&lt;br /&gt;	thisGUID="$(dscl /LDAPv3/odm.mydomain.net/ -read /Computers/$thisLocalSubnetName GeneratedUID | awk '{ print $2 }')"&lt;br /&gt;	dscl -u diradmin -P "diradminpass" /LDAPv3/odm.mydomain.net/ -merge "/ComputerGroups/facultylaptops" apple-group-memberguid "$thisGUID"&lt;br /&gt;	dscl -u diradmin -P "diradminpass" /LDAPv3/odm.mydomain.net/ -merge "/ComputerGroups/facultylaptops" memberUid "$thisLocalSubnetName"&lt;br /&gt;	&lt;br /&gt;## Remove leopard video and music&lt;br /&gt;However the video is a QuickTime file, located here :&lt;br /&gt;&lt;/System/Library/CoreServices/Setup&lt;br /&gt;Assistant.app/Contents/Resources/TransitionSection.bundle/Contents/Resources/intro.mov&gt;&lt;br /&gt;The music is there :&lt;br /&gt;&lt;/System/Library/CoreServices/Setup&lt;br /&gt;Assistant.app/Contents/Resources/TransitionSection.bundle/Contents/Resources/intro-sound.mp3&gt;&lt;br /&gt;&lt;br /&gt;##To reset the local KDC&lt;br /&gt; #  1. Using Keychain Access, locate the com.apple.kerberos.kdc certificate and key pair in the System keychain.  Delete all three entries.&lt;br /&gt; #  2. Using Terminal, execute this command to remove the local KDC:&lt;br /&gt;      sudo rm -fr /var/db/krb5kdc&lt;br /&gt; #  3. Using Terminal, execute this command to re-generate the local KDC root certificate and key pair:&lt;br /&gt;      sudo /usr/libexec/configureLocalKDC&lt;br /&gt;&lt;br /&gt;##Set sleep/wake&lt;br /&gt;&lt;br /&gt;pmset [displaysleep or disksleep] [number in minutes]&lt;br /&gt;&lt;br /&gt;##OSA Dialog box restart&lt;br /&gt;#Tell user to restart&lt;br /&gt;osascript -e 'tell app "System Events" to display dialog "Please Restart your Computer." buttons "OK" default button 1 with title "Restart Please" with icon stop'&lt;br /&gt;&lt;br /&gt;##Rename the boot drive&lt;br /&gt;&lt;br /&gt;#You can use the following script to rename the boot drive:&lt;br /&gt;&lt;br /&gt;diskutil $(df / | awk '{print $1}') newname&lt;br /&gt;&lt;br /&gt;#or&lt;br /&gt;&lt;br /&gt;tell application "Finder" to set name of startup disk to "MyDiskName"&lt;br /&gt;&lt;br /&gt;#or&lt;br /&gt;&lt;br /&gt;diskutil rename / newname&lt;br /&gt;&lt;br /&gt;##Fix spotlight&lt;br /&gt;&lt;br /&gt;mdimport -d1 /&lt;br /&gt;&lt;br /&gt;##Set mac startup time&lt;br /&gt;&lt;br /&gt;pmset repeat poweron MTWRF 07:40:00&lt;br /&gt;&lt;br /&gt;##Stop Software updates automaticly&lt;br /&gt;&lt;br /&gt;softwareupdate --schedule off&lt;br /&gt;&lt;br /&gt;##Get the hardware model of the machine&lt;br /&gt;&lt;br /&gt;sysctl -n hw.model&lt;br /&gt;&lt;br /&gt;##Reset MCX managment&lt;br /&gt;#10.4&lt;br /&gt;/System/Library/CoreServices/mcxd.app/Contents/MacOS/mcxd -f&lt;br /&gt;#10.5&lt;br /&gt;sudo dscl . -delete /Computers&lt;br /&gt;sudo rm -rf /Library/Managed\ Preferences&lt;br /&gt;&lt;br /&gt;##Curl file suggestions&lt;br /&gt;&lt;br /&gt;curl should be (?) curl -O&lt;br /&gt;installer is installer -pkg &lt;package&gt; -target /&lt;br /&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;##Script to test for the availability of internet and download something&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;#Set loop variable.&lt;br /&gt;viperecho=FALSE&lt;br /&gt;number=0&lt;br /&gt;&lt;br /&gt;if [ "$(id -u)" != "0" ]; then&lt;br /&gt;   echo "This script must be run as root" 1&gt;&amp;2&lt;br /&gt;   exit 1&lt;br /&gt;else&lt;br /&gt;while [ $viperecho = 'FALSE' ];do&lt;br /&gt;	# If block to test internet availability&lt;br /&gt;	if ping -nc 3 &lt;IPADRES&gt; | grep '100%' &gt;/dev/null 2&gt;&amp;1 ; &lt;br /&gt;	then &lt;br /&gt;		/bin/echo $(date) "failed to connect to server" &gt;&gt; &lt;LOGFILE&gt;&lt;br /&gt;		/bin/echo $(date) "Attempt= $number" &gt;&gt; &lt;LOGFILE&gt;&lt;br /&gt;		number=$((number + 1))&lt;br /&gt;		/bin/echo $(date) "sleep for 5 seconds" &gt;&gt; &lt;LOGFILE&gt;&lt;br /&gt;		/bin/sleep 5&lt;br /&gt;		/bin/echo $(date) "looping again" &gt;&gt;&lt;LOGFILE&gt; &lt;br /&gt;		# change the numer to higher count if needed&lt;br /&gt;		while (($number == 10));do&lt;br /&gt;				/bin/echo $(date) "Service not availible, exiting" &gt;&gt;&lt;LOGFILE&gt; &lt;br /&gt;				exit 0&lt;br /&gt;		done	&lt;br /&gt;	else&lt;br /&gt;		/bin/echo $(date) "Downloading file" &gt;&gt; &lt;LOGFILE&gt;&lt;br /&gt;		/usr/bin/curl &lt;URL to location of package&gt; -o /tmp/&lt;packagename&gt;.pkg --stderr &lt;LOGFILE&gt;&lt;br /&gt;		/bin/echo $(date) "Done downloading" &gt;&gt;  &lt;LOGFILE&gt;&lt;br /&gt;		/usr/sbin/installer -pkg /tmp/&lt;packagename&gt;.pkg -target / &gt;&gt;  &lt;LOGFILE&gt;&lt;br /&gt;		/bin/rm /tmp/redirect.pkg&lt;br /&gt;		/bin/echo $(date) "Exiting Redirect Download" &gt;&gt; &lt;LOGFILE&gt;&lt;br /&gt;		viperecho=TRUE&lt;br /&gt;	fi&lt;br /&gt;fi&lt;br /&gt;exit 0&lt;br /&gt;done&lt;br /&gt;&lt;br /&gt;#!/bin/sh&lt;br /&gt;## Script for getting the network service name which holds the default route&lt;br /&gt;# dre@mac.com, 2/14/05  (with some help from mikeash)&lt;br /&gt;&lt;br /&gt;# First we get the generated unique ID of the network service that is currently&lt;br /&gt;# set as the default route. Because scutil doesn't have command line switches&lt;br /&gt;# for quering specific keys, we use echo to send commands to scutil's STDIN,&lt;br /&gt;# as a way of simulating the commands we would type interactively to achieve&lt;br /&gt;# the same result (tr is used to convert ||| into carriage return)&lt;br /&gt;&lt;br /&gt;SERVICE_GUID=`echo "open|||get State:/Network/Global/IPv4|||d.show" | \&lt;br /&gt;tr '|||' '\n' | scutil | grep "PrimaryService" | awk '{print $3}'`&lt;br /&gt;&lt;br /&gt;# next we use SERVICE_GUID to perform another query to scutil, this time to get&lt;br /&gt;# the human-readable name associated with the given network service. This name&lt;br /&gt;# could contain spaces and the like, so we switch awk's field seperator to ": "&lt;br /&gt;# to nab everything after the colon.&lt;br /&gt;&lt;br /&gt;SERVICE_NAME=`echo "open|||get Setup:/Network/Service/$SERVICE_GUID|||d.show" |\&lt;br /&gt;tr '|||' '\n' | scutil | grep "UserDefinedName" | awk -F': ' '{print $2}'`&lt;br /&gt;&lt;br /&gt;echo $SERVICE_NAME&lt;br /&gt;&lt;br /&gt;##Enable dashboard development mode&lt;br /&gt;defaults write com.apple.dashboard devmode YES&lt;br /&gt;&lt;br /&gt;##Netboot Across subnets script&lt;br /&gt;#!/bin/sh&lt;br /&gt;# Name: Robert Henderson&lt;br /&gt;# Date: 2-25-2005&lt;br /&gt;# Description:&lt;br /&gt;# Allows the user to make a choice on which netboot volume they want to boot from.&lt;br /&gt;# Thanks to Mike Bomich for the original code created by NBA.&lt;br /&gt;&lt;br /&gt;### Global Variables ###&lt;br /&gt;server=&lt;enter your NetBootServer’s IP Address here&gt;&lt;br /&gt;sharepoint="NetBootSP0″&lt;br /&gt;&lt;br /&gt;# Determine Arch value and point to proper netboot image&lt;br /&gt;archtech=`arch`&lt;br /&gt;if [ "`arch`" == "ppc" ] ; then&lt;br /&gt;setName="PPCNetboot.nbi"&lt;br /&gt;else&lt;br /&gt;setName="IntelNetboot.nbi"&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;imageName="NetInstall-Restore.dmg"&lt;br /&gt;protocol="nfs"&lt;br /&gt;simple="false"&lt;br /&gt;nextboot=""&lt;br /&gt;&lt;br /&gt;if [ $simple == true ]; then&lt;br /&gt;if [ "`arch`" == "ppc" ]; then&lt;br /&gt;/usr/sbin/nvram boot-device="enet:${server}" boot-args="" boot-file=""&lt;br /&gt;else&lt;br /&gt;/usr/sbin/bless –netboot –server "bsdp://${server}" $nextboot&lt;br /&gt;fi&lt;br /&gt;else&lt;br /&gt;if [ "`arch`" == "ppc" ]; then&lt;br /&gt;/usr/sbin/nvram boot-args="rp=${protocol}:${server}:/private/tftpboot/NetBoot/${sharepoint}:${setName}/${imageName}" boot-file="enet:${server},NetBoot\\${sharepoint}\\${setName}\\mach.macosx" boot-device="enet:${server},NetBoot\\${sharepoint}\\${setName}\\booter"&lt;br /&gt;else&lt;br /&gt;/usr/sbin/bless –netboot –booter "tftp://${server}/NetBoot/${sharepoint}/${setName}/i386/booter" –kernel "tftp://${server}/NetBoot/${sharepoint}/${setName}/i386/mach.macosx" –options "rp=${protocol}:${server}:/private/tftpboot/NetBoot/${sharepoint}:${setName}/${imageName}" $nextboot&lt;br /&gt;fi&lt;br /&gt;fi&lt;br /&gt;reboot&lt;br /&gt;&lt;br /&gt;##Netboot Commands&lt;br /&gt;PPC:&lt;br /&gt;/usr/sbin/nvram boot-args="rp=nfs:146.186.208.248:/private/tftpboot/NetBoot/NetBootSP0:nb_nrset09_4007.nbi/NetInstall-Restore.dmg" boot-file="enet:146.186.208.248,NetBoot\\NetBootSP0\\nb_nrset09_4007.nbi\\mach.macosx" boot-device="enet:146.186.208.248,NetBoot\\NetBootSP0\\nb_nrset09_4007.nbi\\booter"&lt;br /&gt;&lt;br /&gt;Intel:&lt;br /&gt;/usr/sbin/bless –netboot –booter "tftp://146.186.208.248/NetBoot/NetBootSP0/nb_nrset09_4007.nbi/i386/booter" –kernel "tftp://146.186.208.248/NetBoot/NetBootSP0/nb_nrset09_4007.nbi/i386/mach.macosx" –options "rp=nfs:146.186.208.248:/private/tftpboot/NetBoot/NetBootSP0:nb_nrset09_4007.nbi/NetInstall-Restore.dmg" $nextboot&lt;br /&gt;&lt;br /&gt;#!/bin/sh&lt;br /&gt;# Name: Robert Henderson&lt;br /&gt;# Date: 2-25-2005&lt;br /&gt;# Description:&lt;br /&gt;# Allows the user to make a choice on which netboot volume they want to boot from.&lt;br /&gt;# Thanks to Mike Bomich for the original code created by NBA.&lt;br /&gt;&lt;br /&gt;### Global Variables ###&lt;br /&gt;server=146.186.208.248&lt;br /&gt;sharepoint="NetBootSP0"&lt;br /&gt;&lt;br /&gt;# Determine Arch value and point to proper netboot image&lt;br /&gt;archtech=`arch`&lt;br /&gt;if [ "`arch`" == "ppc" ] ; then&lt;br /&gt;setName="nb_nrset09_4007.nbi"&lt;br /&gt;else&lt;br /&gt;setName="nb_nrset09_4007.nbi"&lt;br /&gt;fi&lt;br /&gt;&lt;br /&gt;imageName="NetInstall-Restore.dmg"&lt;br /&gt;protocol="nfs"&lt;br /&gt;simple="false"&lt;br /&gt;nextboot=""&lt;br /&gt;&lt;br /&gt;if [ $simple == true ]; then&lt;br /&gt;if [ "`arch`" == "ppc" ]; then&lt;br /&gt;/usr/sbin/nvram boot-device="enet:${server}" boot-args="" boot-file=""&lt;br /&gt;else&lt;br /&gt;/usr/sbin/bless –netboot –server "bsdp://${server}" $nextboot&lt;br /&gt;fi&lt;br /&gt;else&lt;br /&gt;if [ "`arch`" == "ppc" ]; then&lt;br /&gt;/usr/sbin/nvram boot-args="rp=${protocol}:${server}:/private/tftpboot/NetBoot/${sharepoint}:${setName}/${imageName}" boot-file="enet:${server},NetBoot\\${sharepoint}\\${setName}\\mach.macosx" boot-device="enet:${server},NetBoot\\${sharepoint}\\${setName}\\booter"&lt;br /&gt;else&lt;br /&gt;/usr/sbin/bless –netboot –booter "tftp://${server}/NetBoot/${sharepoint}/${setName}/i386/booter" –kernel "tftp://${server}/NetBoot/${sharepoint}/${setName}/i386/mach.macosx" –options "rp=${protocol}:${server}:/private/tftpboot/NetBoot/${sharepoint}:${setName}/${imageName}" $nextboot&lt;br /&gt;fi&lt;br /&gt;fi&lt;br /&gt;reboot&lt;br /&gt;&lt;br /&gt;##Add a item to the dock.app&lt;br /&gt;&amp;#10;dockadd () {&amp;#10;        defaults write com.apple.dock persistent-apps -array-add &amp;quot;&amp;lt;dict&amp;gt;&amp;lt;key&amp;gt;tile-data&amp;lt;/key&amp;gt;&amp;lt;dict&amp;gt;&amp;lt;key&amp;gt;file-data&amp;lt;/key&amp;gt;&amp;lt;dict&amp;gt;&amp;lt;key&amp;gt;_CFURLString&amp;lt;/key&amp;gt;&amp;lt;string&amp;gt;$1&amp;lt;/string&amp;gt;&amp;lt;key&amp;gt;_CFURLStringType&amp;lt;/key&amp;gt;&amp;lt;integer&amp;gt;0&amp;lt;/integer&amp;gt;&amp;lt;/dict&amp;gt;&amp;lt;/dict&amp;gt;&amp;lt;/dict&amp;gt;&amp;quot;;&amp;#10;        osascript -e &amp;quot;tell application \&amp;quot;Dock\&amp;quot; to quit&amp;quot;&amp;#10;}&amp;#10;&lt;br /&gt;&lt;br /&gt;##If you set the password on a machine, then read it out:&lt;br /&gt;&lt;br /&gt;sudo nvram security-password&lt;br /&gt;security-password	%cd%c9%ce%ca%c6%cb&lt;br /&gt;&lt;br /&gt;#You can then set it on other machines with:&lt;br /&gt;&lt;br /&gt;sudo nvram security-mode=command&lt;br /&gt;sudo nvram security-password=%cd%c9%ce%ca%c6%c&lt;br /&gt;&lt;br /&gt;#clear the password&lt;br /&gt;&lt;br /&gt;sudo nvram security-mode=none&lt;br /&gt;sudo nvram -d security-password&lt;br /&gt;&lt;br /&gt;##Repair disk permissions&lt;br /&gt;diskutil repairPermissions /&lt;br /&gt;&lt;br /&gt;##Delete MCX Cache&lt;br /&gt;dscl . -delete /Config/mcx_cache&lt;br /&gt;&lt;br /&gt;##Remove Smartboard auto launch&lt;br /&gt;defaults delete /Library/Preferences/loginwindow AutoLaunchedApplicationDictionary&lt;br /&gt;&lt;br /&gt;##Get computer serial number&lt;br /&gt;system_profiler SPHardwareDataType | awk -F ': ' '/Serial Number/ {print $2}'&lt;br /&gt;&lt;br /&gt;##Load and start a launchd deamon&lt;br /&gt;#I saw that someone responded with the:&lt;br /&gt;&lt;br /&gt;launchctl load&lt;br /&gt;#or&lt;br /&gt;launchctl load /Library/LaunchDaemons/com.yourbusiness.appname&lt;br /&gt;&lt;br /&gt;#...command.  That loads the LaunchDaemon if it wasn't loaded already.  If you want to start a job, use:&lt;br /&gt;&lt;br /&gt;launchctl start [job label]&lt;br /&gt;&lt;br /&gt;##Make System Preferences Secure&lt;br /&gt;/usr/local/sbin/PlistBuddy -c "set :rights:system.preferences:shared false" /etc/authorization&lt;br /&gt;&lt;br /&gt;##Determine OS version&lt;br /&gt;defaults read "$1"/System/Library/CoreServices/SystemVersion ProductVersion | awk -F. '{print $2}'&lt;br /&gt;#OR&lt;br /&gt;defaults read "$1"/System/Library/CoreServices/SystemVersion ProductVersion&lt;br /&gt;&lt;br /&gt;##Manipulate text file&lt;br /&gt;perl -i~ -pe 's/abc/def/g' filename &lt;br /&gt;&lt;br /&gt;##Backup sql database&lt;br /&gt;mysqldump -ugallery -p -h kb.educ.psu.edu --opt gallery2 &gt; gallery2.sql&lt;br /&gt;&lt;br /&gt;##Cat computernames from txt file&lt;br /&gt;cat Desktop/SAV/SAV\ Clients | awk '{print $3}' | grep rack |sort&lt;br /&gt;cat Desktop/SAV/SAV\ Clients | awk '{print $3}' | grep kell |sort&lt;br /&gt;cat Desktop/SAV/SAV\ Clients | awk '{print $3}' | grep cdr |sort&lt;br /&gt;cat Desktop/SAV/SAV\ Clients | awk '{print $3}' | grep ch |sort&lt;br /&gt;&lt;br /&gt;##Say + Volume&lt;br /&gt;sudo osascript -e "set Volume 10" | say "hello World"&lt;br /&gt;&lt;br /&gt;##Enabled disabled moible home user&lt;br /&gt;#To reset a disabled mobile home user, you can use the command like this on the remote machine:&lt;br /&gt;pwpolicy -a adminusername -u username -n /Local/Default -enableuser&lt;br /&gt;&lt;br /&gt;##Airport command&lt;br /&gt;#help&lt;br /&gt;bash /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -h&lt;br /&gt;&lt;br /&gt;##Mysql Login Error&lt;br /&gt;This may help or not! but this is what i did to create a user (root) password needs to changed to your password.&lt;br /&gt;&lt;br /&gt;mysqladmin -u root password "password"&lt;br /&gt;mysql -u root -p&lt;br /&gt;&lt;br /&gt;Enter password: mypassword&lt;br /&gt;Welcome to the MySQL monitor. Commands end with ; or \g.&lt;br /&gt;Your MySQL connection id is 4 to server version: 5.0.27-standard&lt;br /&gt;&lt;br /&gt;Type 'help;' or '\h' for help. Type '\c' to clear the buffer.&lt;br /&gt;mysql&gt;&lt;br /&gt;mysql&gt; use mysql;&lt;br /&gt;mysql&gt; delete from user where Host like "%";&lt;br /&gt;mysql&gt; grant all privileges on *.* to root@localhost identified by 'password' with grant option;&lt;br /&gt;mysql&gt; flush privileges;&lt;br /&gt;mysql&gt; exit;&lt;br /&gt;&lt;br /&gt;##Check Password expire on Windows for AD user&lt;br /&gt;net user "userID" /domain&lt;br /&gt;&lt;br /&gt;##Determine Password expiration&lt;br /&gt;ldapsearch -LLL -Q -s base -H ldap://146.186.208.239 -b DC=educ,DC=psu,DC=edu maxPwdAge | /usr/bin/awk -F- '/maxPwdAge/ {print $2/10000000}'&lt;br /&gt;&lt;br /&gt;##MCX Manifests&lt;br /&gt;find /Applications -name *.manifest -print&lt;br /&gt;&lt;br /&gt;##remove (hide) the machine from the network browser. It will still be visible va ARD:&lt;br /&gt;defaults write /Library/Preferences/com.apple.RemoteManagement VNCNoRegister -bool yes&lt;br /&gt;&lt;br /&gt;##Set VNC Password&lt;br /&gt;sudo /System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/Resources/kickstart -configure -clientopts -setvnclegacy -vnclegacy yes -setvncpw -vncpw "test"&lt;br /&gt;&lt;br /&gt;##Turn Airport on and off&lt;br /&gt;networksetup -setairportpower off&lt;br /&gt;networksetup -setairportpower on&lt;br /&gt;&lt;br /&gt;##Disable Launchd item&lt;br /&gt;sudo defaults write /Library/LaunchDaemons/com.apple. Disabled true&lt;br /&gt;&lt;br /&gt;##Set or unset dns servers&lt;br /&gt;#remove&lt;br /&gt;networksetup -setdnsservers Ethernet "Empty"&lt;br /&gt;networksetup -setdnsservers Airport "Empty"&lt;br /&gt;#Set&lt;br /&gt;sudo networksetup -setdnsservers Ethernet 12.12.12.12&lt;br /&gt;sudo networksetup -setdnsservers Airport 12.12.12.12&lt;br /&gt;&lt;br /&gt;##Disable Firewall&lt;br /&gt;#Disable&lt;br /&gt;sudo ipfw disable firewall&lt;br /&gt;#Enable&lt;br /&gt;sudo ipfw enable firewall&lt;br /&gt;&lt;br /&gt;##Find hardware model&lt;br /&gt;sysctl -n hw.model&lt;br /&gt;&lt;br /&gt;##Disable ipv6&lt;br /&gt;networksetup -setv6off Ethernet&lt;br /&gt;&lt;br /&gt;##Enable Directory Service Logging at startup&lt;br /&gt;touch /Library/Preferences/DirectoryService/.DSLogAPIAtStart&lt;br /&gt;&lt;br /&gt;##Manually turn loggin on/off&lt;br /&gt;sudo killall -USR1 DirectoryService&lt;br /&gt;&lt;br /&gt;##Restart DirectorySercice&lt;br /&gt;sudo killall DirectoryService&lt;br /&gt;&lt;br /&gt;##Fresh Start with Directory Service&lt;br /&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;rm -R /Library/Preferences/DirectoryService&lt;br /&gt;rm -R /var/db/authserver&lt;br /&gt;rm /Library/Preferences/edu.mit.Kerberos&lt;br /&gt;rm /etc/krb5.keytab&lt;br /&gt;&lt;br /&gt;#restart DS&lt;br /&gt;sudo killall DirectoryService&lt;br /&gt;&lt;br /&gt;##Mount discs before login&lt;br /&gt;#I've never done this, but you might find it a problem, as external drives aren't normally mounted until after login.  You can get around this with a plist file:&lt;br /&gt;sudo defaults write /Library/Preferences/SystemConfiguration/autodiskmount AutomountDisksWithoutUserLogin -bool true&lt;br /&gt;&lt;br /&gt;##Find user if of current user&lt;br /&gt;user=`who | grep console| awk '{print $1}'`&lt;br /&gt;/usr/bin/id -P | awk -F: '{ print $1 }'&lt;br /&gt;&lt;br /&gt;##ldadmin user for printing issue&lt;br /&gt;dseditgroup -o edit -p -a admin -t group _lpadmin&lt;br /&gt;&lt;br /&gt;##The following command would find all files modified within 24 hours: &lt;br /&gt;sudo find / -mtime -1 &lt;br /&gt;&lt;br /&gt;##Some restore from the command line with TSM :&lt;br /&gt;&lt;br /&gt;dsmc res "/was/*" /tmp/was/ -virtualnodename=aixsrv -ina -pick -fromdate=MM/DD/YY&lt;br /&gt;&lt;br /&gt;#Where :&lt;br /&gt;# &lt;br /&gt;# "/was/*" is the files/directories to be restored&lt;br /&gt;# &lt;br /&gt;# /tmp/was/ is the destination (if omitted, the files will be restored to their original location)&lt;br /&gt;# &lt;br /&gt;# -virtualnodename=aixsrv is used when we want to restore files belonging to another node&lt;br /&gt;# &lt;br /&gt;# -pick is used to display an interactive menu with the list of the files before performing the restore &lt;br /&gt;# &lt;br /&gt;# -ina is to list the files that were no longer on the node at the time of the last backup (used with -pick)&lt;br /&gt;# &lt;br /&gt;# -fromdate is used to specify a date from which you want to search for backups (in the same family, -todate, -pitdate, -fromtime ...)&lt;br /&gt;&lt;br /&gt;##Check schedule for tsm&lt;br /&gt;dsmc query schedule&lt;br /&gt;&lt;br /&gt;##my favorite date&lt;br /&gt;date "+%Y%m%d"&lt;br /&gt;&lt;br /&gt;##Convert disk image to compressed-readonly&lt;br /&gt;hdiutil convert "image.dmg" -format UDZO -o "Output.dmg"&lt;br /&gt;&lt;br /&gt;##Get info on the disk image&lt;br /&gt;hdiutil imageinfo "image.dmg"&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-1959448633937715513?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/1959448633937715513/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=1959448633937715513' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/1959448633937715513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/1959448633937715513'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2009/09/command-line-favorites-1.html' title='Command Line Favorites #1'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-7633537800483522653</id><published>2009-01-11T11:05:00.001-08:00</published><updated>2009-01-11T11:05:51.973-08:00</updated><title type='text'>Script to find active internet interface and display IP address</title><content type='html'>Need I say more?&lt;br /&gt;&lt;br /&gt;I used it with &lt;a href="http://www.sveinbjorn.org/platypus"&gt;Platypus&lt;/a&gt; to create a application that I can push out to all the computers I manage. I'm also using with InstaDMG to create new system images.&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&lt;br /&gt;#!/bin/bash&lt;br /&gt;&lt;br /&gt;################################################################################&lt;br /&gt;#Display IP Address and Hostname of Computer&lt;br /&gt;#Written to be used with Platypus - http://www.sveinbjorn.org/platypus&lt;br /&gt;#Written by Rusty Myers - rustymyers@gmail.com&lt;br /&gt;################################################################################&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;################################################################################&lt;br /&gt;#Variables&lt;br /&gt;################################################################################&lt;br /&gt;&lt;br /&gt;computername=`scutil --get ComputerName`&lt;br /&gt;&lt;br /&gt;en0test=`ifconfig en0 | grep -q 'inet ' &amp;amp;&amp;amp; echo en0`&lt;br /&gt;&lt;br /&gt;en1test=`ifconfig en1 | grep -q 'inet ' &amp;amp;&amp;amp; echo en1`&lt;br /&gt;&lt;br /&gt;################################################################################&lt;br /&gt;#Functions&lt;br /&gt;################################################################################&lt;br /&gt;&lt;br /&gt;function testinterface {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if [ "$en0test" == "en0" ]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; activeinterface=en0&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; elif [ "$en1test" == "en1" ]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; activeinterface=en1&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; activeinterface=None&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fi&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function displayip {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if [ "$activeinterface" == "None" ]&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; then&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ipaddress="None"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; else&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ipaddress=`ipconfig getifaddr $activeinterface`&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; fi&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;function displaydialog {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echoserial=`/usr/bin/osascript &amp;lt;&amp;lt; EOT&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; tell app "System Events"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; Activate&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; display dialog "Your IP address is $ipaddress. Your computer name is $computername" buttons "OK" default button 1 with title "IP Address and Computer Name"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; end tell&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; EOT`&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; echo $echoserial&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;################################################################################&lt;br /&gt;#Run the Functions&lt;br /&gt;################################################################################&lt;br /&gt;&lt;br /&gt;testinterface&lt;br /&gt;&lt;br /&gt;displayip&lt;br /&gt;&lt;br /&gt;displaydialog&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-7633537800483522653?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/7633537800483522653/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=7633537800483522653' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/7633537800483522653'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/7633537800483522653'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2009/01/script-to-find-active-internet.html' title='Script to find active internet interface and display IP address'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-6965302132332055002</id><published>2009-01-09T05:35:00.001-08:00</published><updated>2009-01-09T05:35:55.396-08:00</updated><title type='text'>Stop Smartboard from starting at login</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;It's a bit of a pain that SMART buries the startup commands in the /Library/Preferences/loginwindow.plist file. But, thanks to the defaults command, this doesn't have to be hard to fix. Open the Terminal.app and type:&lt;br/&gt;&lt;br/&gt;&lt;code&gt;defaults delete /Library/Preferences/loginwindow AutoLaunchedApplicationDictionary&lt;/code&gt;&lt;br/&gt;&lt;br/&gt;You could also type these commands into the Terminal.app to create a file that is runable with double clicks:&lt;br/&gt;&lt;br/&gt;&lt;code&gt;echo defaults delete /Library/Preferences/loginwindow AutoLaunchedApplicationDictionary&amp;gt;&amp;gt;~/Desktop/"remove smart startup item.command"|chmod 775 ~/Desktop/"remove smart startup item.command"&lt;/code&gt;&lt;br/&gt;&lt;br/&gt;You can then rename the file and distribute it to users.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-6965302132332055002?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/6965302132332055002/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=6965302132332055002' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6965302132332055002'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6965302132332055002'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2009/01/stop-smartboard-from-starting-at-login.html' title='Stop Smartboard from starting at login'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-239517649405225411</id><published>2009-01-05T08:44:00.001-08:00</published><updated>2009-01-05T08:44:56.021-08:00</updated><title type='text'>Binding Macs to OD and AD, Security Requirments</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;While scripting binding to my AD and OD servers, I wanted to increase security of the accounts that are used. Each of the directory servers does this a little differently.&lt;br /&gt;&lt;br /&gt;Bind to OD&lt;br /&gt;&lt;br /&gt;For security purposes, it's not a great idea to script binding with the administrator account. This is what is commonly done with restrictions on the disk image and scripts. This is how I have done it up to this point too. Being overly paranoid and wanting to leave a respectable legacy, I looked into binding with an account that's less than super-admin.&lt;br /&gt;&lt;br /&gt;After testing it out, I can use a simple access account (without administrator privileges) to bind machines to OD. This solves my issues with using a privileged account. I am also changing the passwords monthly.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Bind to AD&lt;br /&gt;&lt;br /&gt;Again, binding to AD has the same issues with using a Domain Administrators account. To solve this, I used this article to create an account that is only allowed to bind/unbind machines.&lt;br /&gt;&lt;br /&gt;http://support.microsoft.com/kb/251335&lt;br /&gt;&lt;br /&gt;Also, this is a nice GUI to binding on first boot:&lt;br /&gt;http://forums.bombich.com/viewtopic.php?p=46346&lt;br /&gt;&lt;br /&gt;Rusty&lt;br /&gt;Thanks to Jody for the AD side!&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-239517649405225411?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/239517649405225411/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=239517649405225411' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/239517649405225411'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/239517649405225411'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2009/01/binding-macs-to-od-and-ad-security.html' title='Binding Macs to OD and AD, Security Requirments'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-2999114160262079134</id><published>2009-01-02T11:37:00.001-08:00</published><updated>2009-01-02T11:38:35.077-08:00</updated><title type='text'>Quantum of Solace and Wii WFC</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I rented Quantum of Solace for the wii over break and have been trying to play online. It took me a bit to figure out what was wrong. After checking the Network Test from Nintendo support, I found out what my problem was. &lt;br /&gt;&lt;br /&gt;My router, Linksys BEFSR41 V3, Had Dynamic Routing turned off. Usually because if I don't know what it does, I turn it off and see what happens. So I probably turned of Transmitting and Recveiveing of RIP a long time ago. I read what it does; &lt;br /&gt;"The Dynamic Routing feature can be used to&lt;br /&gt;automatically adjust to physical changes in the network's layout. The&lt;br /&gt;Router uses the dynamic RIP protocol. It determines the route that the&lt;br /&gt;network packets take based on the fewest number of hops between the&lt;br /&gt;source and the destination. The RIP protocol regularly broadcasts&lt;br /&gt;routing information to other routers on the network.", and turned it back on.&lt;br /&gt;&lt;br /&gt;After that, it worked like a charm! The menu is located under Setup-&amp;gt;Advanced routing on the routers config website. If you find yourself in the same position, give that a try.&lt;br /&gt;&lt;br /&gt;Network Test:&lt;br /&gt;http://www.nintendo.com/consumer/systems/wii/en_na/NetworkTest.jsp&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-2999114160262079134?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/2999114160262079134/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=2999114160262079134' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/2999114160262079134'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/2999114160262079134'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2009/01/quantum-of-solace-and-wii-wfc.html' title='Quantum of Solace and Wii WFC'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-761374449213364496</id><published>2008-11-09T07:15:00.001-08:00</published><updated>2008-11-09T07:15:28.547-08:00</updated><title type='text'>Mini nuclear plants to power 20,000 homes</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;This is freaking awesome! I'd love to have Tyrone buy one of these puppies to power our homes!&lt;br/&gt;&lt;br/&gt;http://www.guardian.co.uk/environment/2008/nov/09/miniature-nuclear-reactors-los-alamos&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-761374449213364496?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/761374449213364496/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=761374449213364496' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/761374449213364496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/761374449213364496'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2008/11/mini-nuclear-plants-to-power-20000.html' title='Mini nuclear plants to power 20,000 homes'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-4709085597011704756</id><published>2008-11-07T17:15:00.001-08:00</published><updated>2008-11-07T17:15:29.177-08:00</updated><title type='text'>The 50 Skills Every Geek Should Have</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;From Gizmodo, check, check, it out!&lt;br/&gt;&lt;br/&gt;Top 50 Skills! How Many Do You Fit Into?&lt;br/&gt;&lt;br/&gt;Me, 36. But thats if you swap out DOS for UNIX on #40.&lt;br/&gt;&lt;br/&gt;Enjoy!&lt;br/&gt;&lt;br/&gt;http://gizmodo.com/5078829/the-50-skills-every-geek-should-have&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-4709085597011704756?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/4709085597011704756/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=4709085597011704756' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4709085597011704756'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4709085597011704756'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2008/11/50-skills-every-geek-should-have.html' title='The 50 Skills Every Geek Should Have'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-3622192700651618055</id><published>2008-06-27T19:06:00.001-07:00</published><updated>2008-06-27T19:06:46.464-07:00</updated><title type='text'>OS X Mail Account Bundles fail</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I have been trying to use Mac Mail Account bundles at PSU to auto-configure Mac Mail on 10.5.3. I found that there is an issue following the documentation at the moment. &lt;br/&gt;&lt;br/&gt;The documentation:&lt;br/&gt;http://developer.apple.com/documentation/MacOSXServer/Conceptual/XServer_ProgrammingGuide/Articles/MailAccountBundles.html#//apple_re/doc/uid/TP40002464&lt;br/&gt;&lt;br/&gt;States that I can locate my MailAccount.plist under a folder following the reverse-ordered ICANN domain name, in this case: "edu.psu.mailaccounts". There are multiple locations where this directory can be stored, &lt;br/&gt;&lt;ul class='ul'&gt;&lt;li class='li'&gt;&lt;p&gt;&lt;code&gt;~/Library/Mail/AccountTypes&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;&lt;li class='li'&gt;&lt;p&gt;&lt;code&gt;/Library/Mail/AccountTypes&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;&lt;li class='li'&gt;&lt;p&gt;&lt;code&gt;/Network/Library/Mail/AccountTypes&lt;br/&gt;&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;I tried the first two and they didn't work. &lt;br/&gt;&lt;br/&gt;I eventually had some interns just add the &amp;lt;dict&amp;gt; with my settings to the com.apple.mailaccounts MailAccounts.plsit file. It worked after that. Here is the plist that I used. I just copied the &amp;lt;dict&amp;gt; sections:&lt;br/&gt;&lt;br/&gt;&lt;small&gt;&lt;small&gt;&amp;lt;?xml version="1.0" encoding="UTF-8"?&amp;gt;&lt;br/&gt;&amp;lt;!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"&amp;gt;&lt;br/&gt;&amp;lt;plist version="1.0"&amp;gt;&lt;br/&gt;&amp;lt;dict&amp;gt;&lt;br/&gt;    &amp;lt;key&amp;gt;Multiple&amp;lt;/key&amp;gt;&lt;br/&gt;    &amp;lt;array&amp;gt;&lt;br/&gt;        &amp;lt;dict&amp;gt;&lt;br/&gt;            &amp;lt;key&amp;gt;Accounts&amp;lt;/key&amp;gt;&lt;br/&gt;            &amp;lt;array&amp;gt;&lt;br/&gt;                &amp;lt;dict&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;AccountID&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;string&amp;gt;5D795DD4-55CB-11D8-A81E-000A957054BE&amp;lt;/string&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;AccountName&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;string&amp;gt;PSU&amp;lt;/string&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;AuthenticationScheme&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;array/&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;DeliveryAccounts&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;array&amp;gt;&lt;br/&gt;                        &amp;lt;string&amp;gt;2C6B8A3E-EF11-41BA-BCA4-0DE050C51D5C&amp;lt;/string&amp;gt;&lt;br/&gt;                    &amp;lt;/array&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;EmailAddressDomain&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;string&amp;gt;@psu.edu&amp;lt;/string&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;PortNumber&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;integer&amp;gt;995&amp;lt;/integer&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;Protocol&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;string&amp;gt;POP&amp;lt;/string&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;SSLEnabled&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;true/&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;SSLEnabledIsEditable&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;false/&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;ServerName&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;array&amp;gt;&lt;br/&gt;                        &amp;lt;string&amp;gt;email.psu.edu&amp;lt;/string&amp;gt;&lt;br/&gt;                    &amp;lt;/array&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;UserNameMatchesEmailAddress&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;true/&amp;gt;&lt;br/&gt;                &amp;lt;/dict&amp;gt;&lt;br/&gt;                &amp;lt;dict&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;AccountID&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;string&amp;gt;2C6B8A3E-EF11-41BA-BCA4-0DE050C51D5C&amp;lt;/string&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;AccountName&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;string&amp;gt;PSU SMTP&amp;lt;/string&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;AuthenticationScheme&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;array&amp;gt;&lt;br/&gt;                        &amp;lt;string&amp;gt;&amp;lt;/string&amp;gt;&lt;br/&gt;                    &amp;lt;/array&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;PortNumber&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;integer&amp;gt;25&amp;lt;/integer&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;Protocol&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;string&amp;gt;SMTP&amp;lt;/string&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;SSLEnabled&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;true/&amp;gt;&lt;br/&gt;                    &amp;lt;key&amp;gt;ServerName&amp;lt;/key&amp;gt;&lt;br/&gt;                    &amp;lt;string&amp;gt;authsmtp.psu.edu&amp;lt;/string&amp;gt;&lt;br/&gt;                &amp;lt;/dict&amp;gt;&lt;br/&gt;            &amp;lt;/array&amp;gt;&lt;br/&gt;            &amp;lt;key&amp;gt;Identifier&amp;lt;/key&amp;gt;&lt;br/&gt;            &amp;lt;string&amp;gt;edu.psu&amp;lt;/string&amp;gt;&lt;br/&gt;            &amp;lt;key&amp;gt;Version&amp;lt;/key&amp;gt;&lt;br/&gt;            &amp;lt;integer&amp;gt;1&amp;lt;/integer&amp;gt;&lt;br/&gt;        &amp;lt;/dict&amp;gt;&lt;br/&gt;    &amp;lt;/array&amp;gt;&lt;br/&gt;&amp;lt;/dict&amp;gt;&lt;br/&gt;&amp;lt;/plist&amp;gt;&lt;/small&gt;&lt;/small&gt;&lt;br/&gt;&lt;br/&gt;Credit goes to Rob Kelly and Dave Williams (Interns) for figuring out that it works in the com.mac.mailaccounts MailAccounts.plist.&lt;br/&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-3622192700651618055?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/3622192700651618055/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=3622192700651618055' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3622192700651618055'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3622192700651618055'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2008/06/os-x-mail-account-bundles-fail.html' title='OS X Mail Account Bundles fail'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-4522433476525304739</id><published>2008-05-29T06:01:00.001-07:00</published><updated>2008-05-29T06:01:51.171-07:00</updated><title type='text'>Mac Mail fails to check pop when too many messages are open.</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I don't really know what happened. My guess is that it has something to do with the .plist file com.apple.mail.plist. I have verified this on 10.5.2 and 10.5.3. If you use mac mail and have at least three accounts to 5 accounts of any variety, try it out. Open about 15 message windows and then check mail. &lt;img width='489' height='475' src='http://lh3.ggpht.com/rustymyers/SD6o8Qb_y3I/AAAAAAAAACw/30PFzkcGSRc/%5BUNSET%5D.png' style='max-width: 800px;'/&gt;See if you can get your pop or other server to fail on checking your password. Guess what the fix is, that's right! Use Flags and not open messages to mark what emails you need to respond to. Then, create a smart folder that shows only flagged messages and you too can leave your inbox empty!&lt;img width='516' height='148' src='http://lh6.ggpht.com/rustymyers/SD6o4Ab_y2I/AAAAAAAAACo/OBhJCi63CEk/%5BUNSET%5D.png' style='max-width: 800px;'/&gt;&lt;div align='center'&gt;&lt;br/&gt;&lt;br/&gt;&lt;/div&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-4522433476525304739?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/4522433476525304739/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=4522433476525304739' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4522433476525304739'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4522433476525304739'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2008/05/mac-mail-fails-to-check-pop-when-too.html' title='Mac Mail fails to check pop when too many messages are open.'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh3.ggpht.com/rustymyers/SD6o8Qb_y3I/AAAAAAAAACw/30PFzkcGSRc/s72-c/%5BUNSET%5D.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-1750148760274166496</id><published>2008-04-17T16:10:00.001-07:00</published><updated>2008-04-17T16:10:25.728-07:00</updated><title type='text'>The new way to manage OS X images: InstaDMG</title><content type='html'>InstaDMG public beta is released. This script will help OS X administrators create images for deployment. Put an image of the installer disc in one folder, updates in another, and any additional packages (such as apps) in another. This script will build your image in a few hours, or schedule it to run nightly. Great integration with other tools too&lt;br/&gt;&lt;br/&gt;&lt;a href='http://www.afp548.com/article.php?story=instadmg-beta'&gt;read more&lt;/a&gt; | &lt;a href='http://digg.com/software/The_new_way_to_manage_OS_X_images_InstaDMG'&gt;digg story&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-1750148760274166496?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/1750148760274166496/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=1750148760274166496' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/1750148760274166496'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/1750148760274166496'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2008/04/new-way-to-manage-os-x-images-instadmg.html' title='The new way to manage OS X images: InstaDMG'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-513802680326050759</id><published>2007-12-18T15:25:00.001-08:00</published><updated>2007-12-18T15:27:42.843-08:00</updated><title type='text'>Time Machine, Thank You...</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;So I was messing with setting up Calendar syncing with an online service, whom will remain nameless. I noticed that my online service had duplicated all of my calendar entries. "Shitty", I thought to myself, "but I can deal". So I decided to delete all the online calendars and re-sync it with my still good iCal. Oh, fine and dandy, until it auto-synced and wiped out all my calendars in iCal! What application integration! "Motherfuckers", I mumbled under my breath. I threw my pen and started to get pissed. Maybe the undo button will work. Well, that brought back one of my calendars, but no data. "Fuck, Fuck, Fuck" I yelled. A co-worker who is quite smart about troubleshooting asked what was wrong. I explained about this crappy sync and how I lost my calendars and how I wanted to kill someone. She asked, "Do you have any backups?". "Fuck Yeah, I do" I yelled. "Thank you Time Machine!" I restored my calendars from one hour ago! One hour! That's great, how many events could be missing from one hour? Well, luckily I'm not that important of a guy and I only lost one event. So, whoo hoo Time Machine, YMTND. &lt;br/&gt;&lt;br/&gt;A side note, I had been using &lt;a href='http://www.icalx.com/html/rustymyers/day.php?cal=Work'&gt;www.icalx.com&lt;/a&gt; to publish and subscribe to mine and my wifes calendars and it has worked great. Don't try to fix something that is not broken.&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p class='poweredbyperformancing'&gt;Powered by &lt;a href='http://scribefire.com/'&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-513802680326050759?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/513802680326050759/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=513802680326050759' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/513802680326050759'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/513802680326050759'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2007/12/time-machine-thank-you_18.html' title='Time Machine, Thank You...'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-8390524260700360654</id><published>2007-12-08T19:00:00.001-08:00</published><updated>2007-12-08T19:00:19.732-08:00</updated><title type='text'>Fun Stuff for geeks</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;Meetup groups on Google Map, who has more supporters?&lt;br/&gt;&lt;br/&gt;&lt;img src='http://img.photobucket.com/albums/v700/twane217/Meet-UpGroupsCompared.gif'/&gt;&lt;br/&gt;&lt;p class='poweredbyperformancing'&gt;Powered by &lt;a href='http://scribefire.com/'&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;br/&gt;&lt;a href='http://img.photobucket.com/albums/v700/twane217/Meet-UpGroupsCompared.gif'&gt;Meet-UpGroupsCompared.gif (GIF Image, 501x358 pixels)&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-8390524260700360654?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/8390524260700360654/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=8390524260700360654' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/8390524260700360654'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/8390524260700360654'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2007/12/fun-stuff-for-geeks_08.html' title='Fun Stuff for geeks'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-4807386722646081271</id><published>2007-12-06T09:25:00.001-08:00</published><updated>2007-12-06T09:25:24.784-08:00</updated><title type='text'>Fun Stuff for geeks</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I would have included &lt;a href='http://thinkgeek.com'&gt;thinkgeek.com&lt;/a&gt;&lt;br/&gt;&lt;a href='http://www.webupon.com/Web-Talk/10-Geeky-Websites-Where-Real-Geeks-Gather.64363/1'&gt;10 Geeky Websites: Where Real Geeks Gather&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;&lt;p class='poweredbyperformancing'&gt;Powered by &lt;a href='http://scribefire.com/'&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-4807386722646081271?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/4807386722646081271/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=4807386722646081271' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4807386722646081271'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/4807386722646081271'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2007/12/fun-stuff-for-geeks.html' title='Fun Stuff for geeks'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-7611167937754999663</id><published>2007-12-01T10:37:00.001-08:00</published><updated>2007-12-01T10:37:52.356-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='bloggig tools'/><title type='text'>Flock Alternative</title><content type='html'>&lt;div xmlns='http://www.w3.org/1999/xhtml'&gt;I'm not a fan of a lot of things Flock does, but what I am a fan of is the easy ability to blog. Well, stupid me, of course Firefox has a add-on to do this:&lt;br/&gt;&lt;br/&gt;&lt;a href='https://addons.mozilla.org/en-US/firefox/addon/1730'&gt;ScribeFire :: Firefox Add-ons&lt;/a&gt;&lt;br/&gt;&lt;br/&gt;Surprise, no more Flock, back to the good old Firefox.&lt;br/&gt;&lt;br/&gt;&lt;small&gt;&lt;small&gt;Blogged with ScribeFire&lt;/small&gt;&lt;/small&gt;&lt;br/&gt;&lt;br/&gt;&lt;br/&gt;&lt;p class='poweredbyperformancing'&gt;Powered by &lt;a href='http://scribefire.com/'&gt;ScribeFire&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-7611167937754999663?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/7611167937754999663/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=7611167937754999663' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/7611167937754999663'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/7611167937754999663'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2007/12/flock-alternative.html' title='Flock Alternative'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-3228980037890297978</id><published>2007-11-28T18:57:00.003-08:00</published><updated>2007-11-28T18:57:45.132-08:00</updated><title type='text'>Make A secret container with a lighter</title><content type='html'>    &lt;br /&gt;   Check out this video and make your own:&lt;br /&gt;&lt;br /&gt;&lt;embed src="http://www.metacafe.com/fplayer/786803/how_to_make_a__secret_container__out_of_a_lighter.swf" wmode="transparent" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" height="345" width="400"&gt;&lt;br /&gt;&lt;font size="1"&gt;&lt;br /&gt;&lt;a href="http://www.metacafe.com/watch/786803/how_to_make_a_secret_container_out_of_a_lighter/"&gt;How To Make A "Secret Container" Out Of A LIGHTER - video powered by Metacafe&lt;/a&gt;&lt;/font&gt;&lt;br /&gt;&lt;p style="text-align: right; font-size: 8px;"&gt;Blogged with &lt;a href="http://www.flock.com/blogged-with-flock" title="Flock" target="_new"&gt;Flock&lt;/a&gt;&lt;/p&gt;&lt;p style="text-align: right; font-size: 8px"&gt;Blogged with &lt;a href="http://www.flock.com/blogged-with-flock" title="Flock" target="_new"&gt;Flock&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-3228980037890297978?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/3228980037890297978/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=3228980037890297978' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3228980037890297978'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3228980037890297978'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2007/11/make-secret-container-with-lighter.html' title='Make A secret container with a lighter'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-5581552399274647647</id><published>2007-11-27T09:39:00.001-08:00</published><updated>2007-11-27T09:39:57.049-08:00</updated><title type='text'>BASH Scripting Guide</title><content type='html'>All of the people that have never tried a unix machine, need to. And after you do that, try some BASH Scripting!&lt;br /&gt;&lt;a href="http://www.bit-tech.net/bits/2007/11/26/bashing_through_scripts/1"&gt;http://www.bit-tech.net/bits/2007/11/26/bashing_through_scripts/1&lt;/a&gt;&lt;p style="text-align: right; font-size: 8px"&gt;Blogged with &lt;a href="http://www.flock.com/blogged-with-flock" title="Flock" target="_new"&gt;Flock&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-5581552399274647647?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/5581552399274647647/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=5581552399274647647' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/5581552399274647647'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/5581552399274647647'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2007/11/bash-scripting-guide.html' title='BASH Scripting Guide'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-6990228491285057491</id><published>2007-11-25T11:37:00.001-08:00</published><updated>2007-11-25T11:37:24.896-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='freestuff'/><title type='text'>Read through a slide show of the 101 Best Free Things on the Web</title><content type='html'>&lt;a href="http://images.businessweek.com/ss/07/11/1121_freestuff/index_01.htm"&gt;To read through a slide show of the 101 Best Free Things on the Web, click here&lt;/a&gt; &lt;br /&gt;Very cool stuff and a few of my favorite websites that I use daily.&lt;br /&gt;&lt;p style="text-align: right; font-size: 8px"&gt;Blogged with &lt;a href="http://www.flock.com/blogged-with-flock" title="Flock" target="_new"&gt;Flock&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-6990228491285057491?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/6990228491285057491/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=6990228491285057491' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6990228491285057491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6990228491285057491'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2007/11/read-through-slide-show-of-101-best.html' title='Read through a slide show of the 101 Best Free Things on the Web'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-6891834987981912177</id><published>2007-11-23T12:02:00.001-08:00</published><updated>2007-11-23T12:02:49.286-08:00</updated><title type='text'>6 Cool Web Sites that will take all the time you have free</title><content type='html'>These sites are sweet, full of fun projects!&lt;a href="http://www.makeuseof.com/tag/6-unique-web-communities-that-you-wont-forget/"&gt;&lt;br /&gt;http://www.makeuseof.com/tag/6-unique-web-communities-that-you-wont-forget/&lt;/a&gt;&lt;br /&gt;   &lt;p style="text-align: right; font-size: 8px"&gt;Blogged with &lt;a href="http://www.flock.com/blogged-with-flock" title="Flock" target="_new"&gt;Flock&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-6891834987981912177?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/6891834987981912177/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=6891834987981912177' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6891834987981912177'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/6891834987981912177'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2007/11/6-cool-web-sites-that-will-take-all.html' title='6 Cool Web Sites that will take all the time you have free'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1361728184873317046.post-3513405411277742782</id><published>2007-11-19T09:22:00.001-08:00</published><updated>2007-11-19T09:22:43.399-08:00</updated><title type='text'>hello world</title><content type='html'>This is my first post the &lt;a href="http://rustyisageek.blogspot.com"&gt;http://rustyisageek.blogspot.com&lt;/a&gt;&lt;br /&gt;   &lt;p style="text-align: right; font-size: 8px"&gt;Blogged with &lt;a href="http://www.flock.com/blogged-with-flock" title="Flock" target="_new"&gt;Flock&lt;/a&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1361728184873317046-3513405411277742782?l=rustyisageek.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://rustyisageek.blogspot.com/feeds/3513405411277742782/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1361728184873317046&amp;postID=3513405411277742782' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3513405411277742782'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1361728184873317046/posts/default/3513405411277742782'/><link rel='alternate' type='text/html' href='http://rustyisageek.blogspot.com/2007/11/hello-world.html' title='hello world'/><author><name>Rusty Myers</name><uri>http://www.blogger.com/profile/06012914840758427861</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='32' src='http://1.bp.blogspot.com/_kBdUBuqi2xk/TUd1F_CIkOI/AAAAAAAAAE0/JDyID-oms2Q/s220/bowtie.jpg'/></author><thr:total>0</thr:total></entry></feed>
