Thursday, August 30, 2007

Adventures in Drive Imaging: Part 3 - Restoring the Image

Well, I got Ubuntu 7.04 (Feisty Fawn) installed, and even got Compiz-fusion running (with all the shadows, 3d effects, and stuff like that). But because I still haven't found a good Outlook clone that ties securely into our Exchange server, it is time to get back to business.... Vista Business.

I rebooted with the UBCD4Win in the CD drive, and with the USB drive plugged in that we saved the image to yesterday. Not surprisingly the live version of XP we are running on this disk was unable to properly mount the linux partitions, and therefore considered my USB drive as the "C" drive.

I still fired up Self Image and told it to grab c:\backup\HPdc5750\whateverIcalledTheImage.img.gz and put it on Hard Drive #0

It warned me that sometimes when you wipe a drive clean and put a new image over it, you will loose all of the data on the drive you are wiping clean. (Actually, according to them, it happens 10 times out of 10.)

I figure we really don't need Linux on this machine anymore, and I click OK, and it starts decompressing the image and saving it to the hard drive.

In the time it took me to write all of this, it has gotten to 30%. That's probably because I'm decompressing a 20GB file from a USB drive, and because I type fast.

I would guess that when I save the images to a partition on the internal drive in the future it will go much faster. But hey, it has only been about 5 minutes, so 10 to 15 minutes to restore a computer isn't bad!

---Waiting for the image to finish restoring---

Well, it looks like the blank space was being restored pretty quickly, so it has been 25 minutes and we are now at 75%.

Fortunately I had a few other support tasks to take care of in the meantime, including a triple Americano at the cafe we have here. Mmmmm fresh roasted espresso!

---Still Waiting---

Oops! I ran out to help with a support call and came back and it was done! So I don't know how long it took.

I do know that it took no more than 40 minutes, but it may have been just 30 or 35. Either way, when you factor in getting the USB Drive, CD, and kicking the person off their computer, I can expect about an hour of downtime for the user.

Kind of cool.

--Rebooting--

--Logging into Vista Business!--

It works!! That is AWESOME!

Considering I installed a separate boot manager (GRUB, which came with Ubuntu Linux), changed the partition table dramatically, and have wiped the drive a total of 2 times, and I'm able to flawlessly log back into a fully functional Vista Business Environment, I'm pretty excited!!

Wo0T!

Wednesday, August 29, 2007

Adventures in Drive Imaging: Part 2 - Making a Need for the Image

Well, now that I've got a new drive image, what's the point if the computer is working well?

I could install viruses.. virii... uhm... malware, but I'd rather not, so I won't.

Instead, I'm going to install Linux! Ubuntu 7.04 desktop to be exact. I'm running it on my laptop at home and I really like it. I've been running Ubuntu for a few years now, and it is great for lazy people like me who want to ease into a new area. Now that I'm used to the interface I'm getting more comfortable with the command line. It is like Linux with training wheels, but like any good kids bike, not only is it free if you can run fast, but you can also take the training wheels off when you are comfortable with it.


I popped in the Desktop CD, checked its integrity, and it seems like a pretty stand-up CD so I went into the live CD environment. Everything booted fine, I've got a good 1280x1024 display by default (unlike Windows' 1024x768 default on the same machine) so I went ahead and double-clicked the installer.

I think there were like 6 choices to make, such as what language I speak, and what language keyboard I use, and what time zone I'm in, then it asked me about the drive to install it on. I selected the option that wipes the entire drive and installs Ubuntu on it (since that is the simplest)

It seems to be stuck on the "downloading package list" part, which makes since, since it is plugged into the corporate network which won't let it on the internet until I assign it a static IP.... oops... clicking "skip".

Now it is finishing up the install, which should take another 30 seconds or so. (Pretty quick on this AMD Athlon 64 X2 machine)

I am now restarting into a nice reliable non-networked Ubuntu machine, giving it an IP address, then restarting for grins. Oooh! 78 updates!

The crazy part, after installing them all and restarting, there shouldn't be any more updates after that... they roll them up quite intelligently rather than having me update, reboot, update, reboot, rinse, lather, repeat. Like other operating systems I know. (emphasis on plural... Windows isn't the only non-free popular operating system that has done this to me...)

Anyway, long-story short, I installed Linux. It took about 30 minutes because I wasn't paying attention to the fact that it was trying to download stuff when I had it blocked at the router from seeing the internet. Oops...

Join us tomorrow for the conclusion - Reluctantly Restoring, where we will attempt to go from Linux to Vista in less than an hour.

(It is impressive considering it will have all of the exact preferences, user accounts, passwords, etc. that I set it up with previously. If this all works, we'll be installing XP and making an image of that, since I'm not ready for Vista yet.)

Adventures in Drive Imaging: Part 1 - Making the Image

Somehow I have gotten to this point without ever making an Ultimate Boot CD for Windows. Well, that all changed this morning when I made my first "UBCD4Win". The only customization I did was to update AVG Free Edition with the latest virus definitions. (making this CD obsolete tomorrow, rather than last month)

It looks like I could even have installed Kapersky if I wanted to spend the $$. Cool.

The idea behind UBCD4Win is the same as BartPE, to the extend that I don't know the difference, other than I installed UBCD4Win rather than BartPE, purely by chance.

What's this got to do with imaging? Well, I'd tell you, but I'm too busy getting off topic.

By restarting the computer with my UBCD4Win in the drive I was presented with a weird version of Windows XP that doesn't run off the Hard Drive, instead it runs from the CD and from memory. (So make sure you have enough RAM, or this could potentially be uncomfortably slow!)

I've got 1GB of RAM in this machine, and it worked just fine.

It has Drive Image XML and Self Image in the package, and while I've only used Drive Image XML, I was more curious about Self Image because it also grabs the boot sector, cool!

So step 1 was to make a Drive Image XML copy of each hard drive partition from the computer to an external USB drive. (Since I'm comfortable with Drive Image XML, I felt it would be a safe "backup")

Step 2 was to use Self Image to copy the entire disk (including 2 extra partitions HP made to contain restore software and drivers) using Self Image. Because I wasn't using the hard drive, none of the files were in use, so it was quick and reliable.

Step 3 was to re-do step 2, but this time with an NTFS enabled USB drive, since the final file (for this 75GB Hard Drive) was around 22GB, and FAT 32 only supports around 4GB per file. (boo FAT 32!)

And, that anticlimactically concludes Part 1 of Adventures in Drive Imaging. Visit us next time for Part 2 - Making us need the image, where I will describe how I formatted the whole drive and installed Linux, just to make sure I totally changed the Hard Drive's contents and layout.

Thursday, May 17, 2007

Making my own intranet, Part 1

The General Idea
So I've decided to make my own intranet, eh? (oh wait... I'm not Joe Burns)

I have decided to make my own intranet at work, and have opted against out-of-the-box solutions because I plan on doing some heavy development on little projects here and there that I want to integrate nicely into the intranet.

Since I'm having fun doing this, I thought I'd describe just what I'm doing to make my life a little bit easier.

The Content Management System (CMS) Idea
First off, I wrote my own CMS which is uber-lame. It is a table that looks up the URL in a database and lets the database tell it the title of the page, whether or not the page is available or not, and it gives it a small string which is a path and file prefix for the actual content of the site...

Yeah, I'm horible at describing things, so let's start with an example, if you go to http://ourserver/intranet/myhr/ then it looks up "/intranet/myhr" in the database to find the following data:
title: "My HR"
file: "myhr"
enabled: y

Yay, we have a title and it is enable, things are looking good!

Now it goes to my super top-secret folder that is not accessible via the web and looks for the following files:

myhr.head.php
myhr.content.php
myhr.tail.php

The head is called before anything is displayed on the screen, but right after sessions have been started.

The content is what is displayed in the middle of the page... this should really do nothing more than display what was processed in the head.

The tail is the file included at the bottom of the page, which I doubt I'll use much other than to include javascript calls that need to be made at the end of the document.

The content page is required, but the head and tail are optional. If the content page does not exist, it displays an error page instead... if I were smart, I would send 404 headers in the notfound.head.php file, just to maintain standards.

The Cool Idea(s)

Cool idea 1: tossing the milk when it goes bad

I've also got launch and expiration dates in the page table, so the page only displays during the time it should be displayed... I will probably also write a script to browse the database for pages that are nearing expiration to send me an email reminder, which means I can set a 1 year expiration on every content page if I wanted to, then have it remind me in a year to review the content for accuracy then make changes and extend the expiration date.

Cool idea 2: group-based access
I've always enjoyed user and group-based access levels, and with the magic of Active Directory, LDAP, PHP, and some out of date trail mix I've been able to do just that! (and get a stomach ache)

Basically I've thrown together a short script that authenticates usernames and passwords against LDAP (which is pointed at our Active Directory domain controller) and after authenticating I'm grabbing the "memberof" attribute of the user since I've already got a valid ldap bind.

This means I can take all of the users and groups I'm already managing for file permissions and use those same users and groups to manage permission on the intranet! Wo0t!

Cool idea 3: wiki-style page creation
Quite possibly the second-coolest idea (sorry, but that ldap thing is cool !), adding some code in the page-not-found script to add a "create this page" link if the logged in user is a member of the intranet admin group!

I could also add an "edit this page" link at the bottom of each page, or possibly just assign a shortcut key or something to edit the page.

I would do 99% of my coding in the Zend Development Environment anyway, but man it would be nice to manage user permissions, expiration dates, and things of that nature in a nice GUI other than phpmyadmin!

More to come...

Sunday, April 22, 2007

U7.04 Step 2: Boot and Install

Ubuntu 7.04 Install Step 2:
Boot and Install
On to the fun stuff! After downloading and Burning to CD I booted the live CD on my HPzv6000 laptop and pressed F4 at the boot menu to change the VGA mode to 1024x768 (even though I would later need to up it to 1280x800 to fill the screen). I've just had really good luck using the max resolution on flat-panel monitors because some old hardware doesn't appear to tell the Ubuntu CD what the acceptable resolutions are, so it defaults to 640x480, or something else that isn't supported. Either way, it did the trick!

It booted into the live mode, and of course didn't recognize the wifi card, but thank intellectual property rights and lazy hardware manufacturers for that. I plugged it into one of the free ports on my wireless router and it quickly recognized the internet and got an IP via dhcp. (yay!)

I double-clicked the install, not caring if anything else worked in live mode, because I'd be using a different partition anyway.

Following the steps I kept clicking "forward" until I got to the step that tries to partition my drive for me.

Because I pre-planned when installing windows on it, I had a 30GB partition waiting for Linux. (and another 20GB partition for a FAT 32 system that would share files between Linux and Windows).

After configuring the partitions (a 1024MB SWAP and the rest of the 30GB for an ex3 "/") I clicked next, and it actually showed my two accounts (one for myself and one for my wife) from Windows XP. I chose to migrate both of our Firefox settings and our "My Documents" folder. (photos and music are primarily stored on the machine I'm using to post this, which currently runs XP Pro.)

I set up my account as the default account, gave it a name (penguinshark, since I've got a shark-themed network and I want to distinguish between the windows version "tigershark" and the linux version "penguinshark"... kind of lame, since the rest are real sharks, but hey, the only thing cooler than a penguinshark would be a ninjashark, but we all know ninjas are not fans of open-source, so you take what you can get.), and I even told it I want to participate in some package surveying thing. (had to click "more options" or "advanced" or something to get to that checkbox.)

After reviewing all the settings I clicked "Next" and when it started formatting, partitioning, and installing I realized I should have been documenting it, so here I am, documenting after-the-fact trying to remember as much as possible.

I apologize to you three reading this if I left anything out.

U7.04 Step 1: Download Ubuntu Feisty Fawn

Ubuntu 7.04 Install Step 1:
Download Ubuntu Feisty Fawn
Of course the first step in installing anything is to legally download it. (Store-bought CDs are so 2005).

I chose the torrent file from the Ubuntu 7.04 Feisty Fawn Release Page for a desktop 386 system. (my hp zv6000 laptop, with not a ton of hard drive space, and even less RAM, so we'll see how this works)

Here I am about 15 minutes later with a nice ISO file and no ISO burner... So I head over and download ISO Record v 2 and realize I've already downloaded it. So I'm going to log out, log in as an admin, and install ISO recorder, burn the CD and get ready to install Ubuntu on an empty partition on my laptop!

(No, I am not an admin on my own machine at home, and no, I haven't had a single malware problem since. Run no-script in Firefox and set yourself as a limited user account and you almost couldn't damage your windows machine if you tried... it's almost like running linux with a start-bar, but there are actually vendor-provided drivers... it's crazy I tell you, crazy.)

Friday, March 23, 2007

A Pleasant Purchase exPerience

For the two readers that aren't close-friends or reluctant relatives, I work at a Church. We do all kinds of charity work which gives us some super-cool buyability over at the compu-hut in Redmond.

I won't name names or list prices, but we'll just say the average charity organization pays about 15% the cost of a popular professional version of office-type software.

Now, how does the average charity organization go about doing this? Well, the first step is to see if you are really a charity organization. The best way to do this is to call someone "in the know" and ask "Are we really a charity organization?". Hopefully, the person will know and can tell you.


Next, you take the documents the guy gave you along with the puzzled yet strangely sympathetic look. (I think he considers you "special" because of the silly questions you've been asking of late... but for some reason that doesn't prevent him from handing you copies of legal tax documents. Let's remember not to trust him with important stuff in the future, he is obviously a spotty judge of character.)

You then find an authorized reseller that can sell charity licenses. I found one that we'll just call Computer Distribution on Wheels, or "CDW" for short. (completely random naming, just a variable)

So our guy at "CDW" says he can sell them at price x. I say "cool, if we buy a ton of this, like I'm hoping we will, can I get a couple of gigs of RAM for my laptop thrown in for free, so I can start testing Vista for the company?" He says, "Sure, what kind of laptop do you have?".

After much thought, consideration, and a french press (That's coffee, not an easily escaped wrestling move...) I called our rep back and said, "Actually, could you just try and stay in that budget and throw as many extra licenses of Office for Windows as possible so we can upgrade more computers?"

His response:
"I will still try to get the memory in on this one." (and he linked to the quote)

In the quote, he had added 6 licenses!

I just checked the local megalomart and they are charging just shy of $500 for the same software (retail)!! That means retail I saved $3,000. But for my purposes I saved closer to $500. Either way, that is a lot of money for a Charity organization to save!

Not to mention possibly getting some ram for my laptop so I can test Vista! (Which also saves my company the cost of buying a new vista capable machine for me!)

This was just too cool of a savings to not mention it. If you work for a Charity organization, please please please avoid buying retail or even OEM copies of software. OEM operating systems that come with your PC are perfect if you don't plan on building your own computers in the future, but buying office software as OEM means once your computer breaks, you cannot transfer the license to a new computer!!

Charity licensing is definitely the way to go, and finding a company to handle a majority of your tech purchases can make things much easier, especially when they beat some of the big box stores and are willing to haggle for an even lower price!

Hope this helps, or at least made you smile, or made you want to give me a dollar, which will make me smile.

Saturday, February 24, 2007

del.icio.us bookmarks extension even tastier!

While I try to avoid being too stereotypically geeky, I couldn't help but want to shout w00t! at the top of my lungs when I upgraded to the latest version of the del.icio.us bookmarks extension for Firefox.
(I didn't, of course, but I wanted to.)

My joy comes from the fact that while they have occupied Firefox's bookmark folder since their first release, they have finally retreated to the sidebar or a drop-down list!

WhooHoo!

This means I can drag and drop bookmarks like usual, but still have the full-featured tagging goodness of del.icio.us bookmarks! Sure there's the official del.icio.us firefox addon they try to push on you when you first sign up, but if you've tried the del.icio.us bookmarks extension
(also produced by Yahoo! Inc), then you know there is no comparison.

The cool thing about the bookmarks extension is that you don't just have a couple of bookmarks to add a shortcut or view your del.icio.us account, you actually have access to your del.icio.us bookmarks from within the firefox interface, including incremental searches of tags, page titles, and page descriptions. Seriously guys, w00t!

For some reason, when the extension first came out, they disabled the bookmarks functionality of firefox intending on completely replacing it with your del.icio.us account. Fortunately, they realized some people may not want to bookmark their bank's website in del.icio.us, even if you can mark it as "private". Or that maybe some people want some good old fashioned bookmarks that they can drag and drop to manage when they are in a hurry.

Enter version 1.4.25, the best of both worlds.

It is the klondike bar of del.icio.us extensions, but it doesn't melt when someone tries to hold a conversation with you while you are trying to enjoy its ice-cream-chocolatey-goodness.

So, open up the freezer and grab yourself a del.icio.us klondike bar of bookmark tagging goodness and hit it hard and fast, without the fear of brain freeze.

Tuesday, February 13, 2007

Check out twitter.com/OneSeventeen for my adventures at the microsoft launch event on 2/13/2007

Saturday, February 10, 2007

A Fortunate Series of Unfortunate Events

There, that should avoid any copyright issues, right?

Actually I say "fortunate" because God has definitely provided in all of the events.

Let's start at the beginning of the week when your's truly decides to file taxes early. Apparently we owe more than we've ever owed before. This would normally freak me out, but since God has been providing for everything up till now, I figured why would he stop now?

I check out the KBB value of my car, and for a trade-in it would roughly pay for what I still owe on it and give us enough to cover taxes. Woot! God provides again!

This weekend my wife and I decide to celebrate four years of marriage (another woot! would go great here) by going out of town. I made reservations weeks ago, so I went home early Friday to do some last-minute file management at home. (I'm a little OCD when it comes to record-keeping, and being away from the filing cabinets and file server is a little scary to me.) I hear the rain start outside, which shocks me because of how sunny it has been all day. When I step outside to see how bad the rain is, I notice it isn't raining. Despite the lack of rain, there is water coming down the door to my storage area. The problem: my storage area is covered! I open the door and water is pouring in from 1 or 2 stories above me! Apparently someone's water-heater broke and was flooding the floors below (including mine). As I'm walking through my apartment calling the office every few minutes when I think of one other thing I think they should know, I step into my bedroom and about halfway into the room the carpet is soaked and very squishy. (To the point of squirting water a few inches with each step I took.)

Fortunately, this is all covered by my apartment and they get the above water shut off in a matter of minutes, a new water-heater for the poor guys above me in about 30 minutes, and a flood recovery service in within the hour, all at no cost to me. Praise God! He provides again!

I run out the door to get the oil changed in the car, and they notice some stuff hasn't been done recently that should be done every 3 months or so. (And I haven't had it done at all during the 3 years I've owned the car!) Praise God! He gets it fixed before anything dramatic happens!

I then pick up my wife from her work, we fill up the car with fuel, and head up to the hotel about an hour away. We check in, and the room looks great! Until we notice that the towels haven't been washed and there is trash in the wastebaskets. We go to the front desk, and they fortunately have another room just like it and it looks awesome! They are super friendly about it apologizing all the time. (Considering they only charged me $26/night for a King sized room with desk, internet access, blow dryer, iron, and all that good stuff, I'll let it slide.) Praise God for us still having a place to stay!

The next day (today) we drive back to our church because my wife leads in the Children's Ministry. We planned on leaving around 3:30 in the afternoon, but for no apparent reason around 12:00 we decide to drive to the lunch hall instead of walk (just in case we hang out for a while and need to hurry up and leave). After loading up all the stuff for the Children's Ministry in the car I notice the back tire is low on air, so we figure we'll just head to the nearest town and air it up. We stop by the main office and find out the place we are staying at has an air compressor so we drive over to it and right before I air it up, I find a 1/4" nail in the tread.
Praise God we found this before driving an hour on it!! Plus, if we hadn't found it until 3:30 we wouldn't have made it in time for my wife to help out in the Children's Ministry.

I pull out the spare, check the pressure, and my digital reader tells me it is 30PSI instead of 60! Thank goodness I found that out quickly! So I air it up, but after 50 the reader just reads a bunch of 8's. I decide to just use it as-is instead of over inflating it. We pop on the spare and drive an hour and a half back home (top speed is now 50 instead of 75) and I drop my wife off at the house so she can drive over to the church while I get the tire repaired.

She makes it to the church in plenty of time to get ready, and I head over to my local Sam's Club (because I'm also a very frugal individual). They are awesome and repair the tire for free! We don't need new tires, woohoo!!!

Praise God again for providing a free tire repair (see "tax issue" above).

The repair guy then tells me that whoever inflated the spare last inflated it to 90PSI!!! (I will be throwing the digital reader away as soon as I finish blogging this!)

Praise God we made it over 60 miles on a highly overinflated spare tire!!

Conclusion:

There are two ways to look at this week:
  1. We find out we owe more than ever on taxes, and even owe "estimated taxes" for next year,
  2. we have our apartment flooded and all of our bookshelves ruined,
  3. we get a room that hasn't been cleaned,
  4. we get a flat tire while out of town,
  5. and we over inflate our spare because of a faulty tire pressure gauge.
Or:
  1. God provided exactly what we needed to cover our taxes,
  2. we get free carpet cleaning and mold testing, and potentially free carpet replacement and water-damage repair if it is needed,
  3. we get a new room on a floor with a better view of the mountains,
  4. we get free tire-repair,
  5. and God prevents us from having a spare tire blow out on us.
For the first time in a long time, I've been focusing on the latter, and I can tell you it is so much more calming relying on God rather than relying on the way the world is supposed to work.

The world would say I should be more logical, I should focus on what is happening and react accordingly. Instead, we've been praying and praising God and we have been more open to seeing, recognizing, and accepting His solutions to our problems, rather than trying to solve them ourselves.

I have to say it at least one more time: Praise God!

Thursday, February 01, 2007

Apparently you can Blog from your mobile phone. Expect a lot of tiny posts throughout the next few weeks.