Archive for March, 2008

Creative Labs Outrages Windows Vista Users

Creative Labs is causing a stir among open-source developers and Windows Vista users alike. Apparently there have been a lot of driver issues happening exclusively within Windows Vista with many Sound Blaster cards made by Creative Labs. In response to this, many Vista users have resorted to a user modified (hacked) version of Creative Labs’ set of Vista drivers, which enable and fix many flaws with the company sanctioned drivers.

The sound card manufacturers response to this act has caused an uproar, as it appears they do not want users to modify the drivers in such a way as to make them…what’s the word?….FUNCTIONAL!?

Responses from users have varied…

Here’s a great link if you would like to read more about all this in great detail.

Monday, March 31st, 2008

CCNA Crash Course: Day 4

Today we’re going to learn about the OSI 7-Layer Reference Model. Here’s a great link for reading about it (more links below too). This model exists for the purpose of simplifying the complex task of thinking about how data is transported over a network, and is used to help networking professionals troubleshoot problems. Here are the layers:

7. Application (Programs, such as a web browser, or chat client
6. Presentation (Data Formatting)
5. Session (Distinguishes individual sessions of communication; port numbers)
4. Transport (Splits outbound data into chunks called packets; responsible for end-to-end connectivity)
3. Network (Logical addressing, TCP/IP)
2. Data-Link (MAC addresses, CSMA/CD, LLC, Binary transcoding)
1. Physical (01101101)

Think of the very top layer (the application layer) as the actual programs you use on your computer, and the very bottom layer being the physical means (electricity, light, radiowaves, etc.). The image below helps to demonstrate the encapsulation process that takes place as data passes down through the 7 layers:

Let’s pretend I’m running a piece of chat software and talking to someone else through the Internet (I’m on the left of the above chart, and my chat buddy is System 2 on the right). I type something, press Enter, and what I type begins a journey down the series of layers. From the Application layer, my text passes through the Presentation layer which formats my text into ASCII characters (or whatever the application I’m using prefers) and passes it down to the Session layer. The session layer assigns a number to distinguish this individual (brief) data transmission from others. A small chunk of data is then appended to the front of the containing this session number tag (called a port number).

Layer 4 on down are considered the “lower network layers.” …and to be honest, I’m too lazy to write anymore about it. I’ll be focusing on the lower three layers more closely in the next blog. Use the links at the top for much more useful reading. (By the way, these CCNA posts are more or less for me later when I take the exam, so please excuse the poor quality of my notes).  In the end, the data the is received at the physical layer of system two is sent back up, and layer by layer, each encapsulated chunk is pealed off until finally reaching the top and presenting the text I typed on my computer on System 2’s monitor.

Up next:  A closer look at the Data-Link Layer, where we’ll talk about MAC addresses, the ARP protocol and Half/Full Duplex.

Sunday, March 30th, 2008

Encrypting Your Data With A Nautilus Script

Nautilus is the default file manager in the GNOME environment of Ubuntu (as opposed to Konqueror in the KDE environment). If you’ve ever right clicked on your desktop before, you probably saw this menu appear:

What if you wanted to add a new function to this menu? I’m going to show you how to add a neat, simple file encryption function to this menu. After doing this, you’ll know how to find and add your own scripts in the future. (Data encryption, by the way, is the act of encoding a file with a secure password, making the file impossible to opened without that password. It is useful for situations that require extra security on key files).

Nautilus scripts are abound on the Internet, but a good place to find a bunch is www.gnome-look.org.

Along the left side of their website is a menu full of cool stuff we’ll be taking a look at in future blogs. Cool stuff like splash screens, login window themes… a bunch of stuff. But we’re going to stick with only talking about Nautilus scripts for now. If you click on the Nautilus scripts link, you’ll be taken to an index containing several dozens people have submitted to the site. I prefer to sort the listing with the highest rated shown first, but you can explore if you’d like. Here’s a direct link to the page for the encryption script we’re going to install.

From this page, click the download link and save the file to your desktop.

Once the file is on your desktop, you can minimize or close your browser to get it out of your way.

Now do the following:

  1. Click Places>Home Folder
  2. With your home folder open, hit CTRL-H to reveal hidden files and folders.
  3. Find a folder called “.gnome2” and double click on it. (Note the period at the beginning of the file name. Periods at the beginning of filenames denote hidden files in Linux).
  4. Then double click on “nautilus-scripts” folder.

Now, drag and drop the file you just downloaded (it should still be sitting on your desktop) into the nautilus-scripts folder (you can also use copy and paste). Once you have the downloaded file in your nautilus-scripts folder, right-click on the file and select “Extract here”.

You’re done. No really. You’re really done! The script is now installed.

How to use this encryption script:

To use this particular script, you right-click on a file or group of files, and you’ll see that your menu now has a new “Scripts” section, and select the encrypt/decrypt script.

You’ll be asked to apply a password to your encrypted files so that only you will be able to decrypt them later. The script then encrypts the file and creates a new file with a *.gpg file name extension. This is your encrypted file. To decrypt, you simply right click on the *.gpg file and select the decrypt script, and then enter the same password you typed when you encrypted the file.

There are many more scripts and even collections of scripts available on gnome-looks.org. A majority of them are all installed using the same method described above. You simply have to extract the contents of the zip/tar archive into your ~/.gnome2/nautilus-scripts folder. (Tip for newbies: When you see a file path begin with “~/”, its a shortcut for “home folder of currently logged on user”. For instance, if you opened a terminal window and typed “cd ~/” at any time, you’d be taken to your home folder).

Here’s a collection of scripts you can install right now if you’re looking for a lot of neat bells and whistles. But I encourage you to look around and see what neat tools you can dig up. If you install them, here’s what you’re script menu will look like.

Took me about 30 seconds to download and install all of them. And now you can too!

Later on, we’ll take a closer look at some of the other sections listed on the left-hand menu on gnome-looks.org. Have fun!

Saturday, March 29th, 2008

Automatix Development Discontinued

Automatix, a third-party program used for installing a select few popular software titles and video drivers in Ubuntu, has passed. The developers of this installer, more or less, have decided to go their own separate ways. If you ask me, I think they stopped because the purpose it served has more or less been replaced by official Ubuntu support.

When I first started using Ubuntu about a year ago, I used Automatix to install my nVidia proprietary drivers, Google Earth, Skype, Flash, DVD playback, even VMware-Server, among other things (come to think of it, I even installed Beryl with it). Today, installing all of these things has gotten much much easier. Most of these items can be installed via the Add/Remove applications applet, or Synaptic and if your comfortable with the terminal good old “sudo apt-get install fill in the blank” works great too for most things. Compiz has replaced Beryl and is included with Ubuntu by default now, video card drivers are handled fairly well by the Restricted Drivers manager… There isn’t much out there these days that Automatix can help people out with.

Sorry to see you go, Automatix! But you’re job here is done. Rest in peace. At least I won’t forget you.

Thursday, March 27th, 2008

Nice Day to Skip Class…

It’s 63 degrees outside and I feel like riding my hog.

For the 2 or 3 of you out there who are actually reading this and are keeping up with the horribly short CCNA series, it’ll be back (enjoy the break). I’d rather write about Ubuntu stuff during the weekdays anyways.

If you’re looking for a way to kill time, and have a spare computer in the house, you might consider downloading the Beta release of Ubuntu 8.04…

Tuesday, March 25th, 2008

CCNA Crash Course: Day 3

For some f—ed up reason, Wordpress would give me a 403 error every time I tried to post something about access control lists. That last failed attempt at a post for this CCNA series was caused by the same problem: IOS command syntax in the writing. Really, I think that’s the problem. I can’t prove it for certain, but I can point to another Wordpress bug that would do the same thing to people who wrote posts that included a couple of very common Linux commands.

So, yesterday after losing over half of what I wrote AGAIN, I copied and pasted my text to a word file first before producing that damn 403 error again. I reinstalled my whole blog twice, and the same error was being produced by that specific text. I didn’t have a problem posting other test blogs, or that other super long one I put up yesterday.

Anyway, enough ranting. Without further a due, here’s a link to the word file I wrote my notes into. Topics touched on are Advanced ACL’s and the Cisco Discovery Protocol.

Now….back to the mystery that is my day of trying to remember where I put that f—ing thumb drive!! Don’t you just hate it when you lose tiny stuff like that?

Sunday, March 23rd, 2008

How to Install WinXP after Ubuntu with Gparted

Installing Ubuntu along side an already existing installation of Windows is pretty easy, thanks to the auto partitioning tool and the Grub boot manager that is included with the Ubuntu Install CD. But what if you wanted to install Windows on a computer after you’ve installed Ubuntu? Today you’re going to learn how to do that.

What you’ll need:

  • A blank CD to burn an ISO file onto.
  • A copy of your Ubuntu Live Installation CD.
  • Plenty of free time and a sandwich.

Captain Obvious Waring: “Backup your Data before doing this!!”

First, download a copy of the Gparted Live CD ISO and burn it to a CD. The ISO image can be found here (scroll down and select the latest version. The latest version as of this writing is dated December 17, 2007. Here is a directly download link). To burn an ISO file with Ubuntu, simply right click on it and click “Open with CD/DVD creator”, then click Burn. After burning the ISO to a CD, restart your computer with the CD in the drive. If you have your BIOS boot order configured to boot from CD, the CD should load a menu presenting you with many options, as seen below (if not, do some googling to find out how to change your booting device order within your bios or via a hotkey during POST so it will boot from your CD-Rom drive first):

When the CD boots, you’ll be given a menu like the one shown above. You should go ahead and select the default option that is highlighted at the top of the menu. The other options in the list are for use if you have problems with the your video card, and need to use legacy drivers (try to Force VESA first if you have a video driver problem later). After selecting a menu item and pressing enter, Gparted will begin to load. At some point, this screen will appear:

Simply hit the Enter key to select US English default. Another screen will show up:

If you’re speaking English, then hitting the Enter key at this point will select it for you. Otherwise you’ll need to type the corresponding number to your language first, then press enter.

Once it’s finished loading, you’ll either be looking at a GUI (below), or be stuck at a command prompt with a complaint about your video card. If the latter happens, try again by selecting the Force VESA option from the main Gparted boot menu as mentioned earlier.

The GUI looks like this:

You’ll see the main Gparted application already loaded with a hard drive selected (Note: The hard drive it has selected may not be the one you want selected, if your system has more than one hard drive in it. Fortunately, hard drive size is shown in the hard drive selection button in the upper-right corner, and you can use it to tell different hard drives apart if you know which has what on it).

In the above example, the wide blue border box that contains the device name “/dev/sda1″ is the primary Linux ext3 partition, and all partitions present on the drive are graphically represented here. So we can see that we have a primary ext3 partition which contains Ubuntu, along with an extended swap partition that Ubuntu also needs to keep intact (highlighted with a red border). What we want to do is shrink the size of the primary ext3 partition, and then insert a new NTFS partition in place of the newly unallocated space. There will be cake at the end ;)

Start by clicking on the ext3 partition (either the dark-blue box in this example, or from the partitions table listing just below it), and then click the “Resize/Move” button at the top. A new window will appear:

We see the entire ext3 partition here represented as a box, and in the background, you can see just behind the bottom edge of this new window that the partition we’re dealing with is also highlighted in gray. The used portion of this partition is represented by the yellow area in the box, and the available free space is represented by the white. What we want to do is free some of this white space up. Start by clicking on the arrow-looking handle on the right hand side of the box, and drag it toward the center, like this:

You’ll want to leave a little white left for Ubuntu to use, otherwise you may have free hard drive space problems next time you run it and be required to delete files. The gray area that is revealed on the right is going to become un-allocated space, which we’ll use for a new NTFS partition in just a moment. At this point, click the “Resize/Move” button in the lower right corner. You’ll see the changes you’ve made represented immediately, but this is just for visual reference. A “to-do list” will also appear at the bottom, queuing up changes as you go. They will not actually take effect until you click the Apply button at the top, which we don’t want to do just yet…

Next, we’ll click on the unallocated gray space which we created by shrinking our ext3 partition, and then click the “New” button.

This will show us the unallocated space represented in white. What we need to do here is tell Gparted that we want to create an NTFS partition here, and we can do that by clicking on the Filesystem drop-down menu, and selecting “ntfs” from the list (as shown above). Once this is done, you can click the “Add” button….

…and then click the Apply button at the top of the main Gparted window. It will probably take several minutes for the changes to apply and take effect (go eat a sandwich and watch some TV). Once finished, the system will need to be rebooted. Upon reboot, you’ll not see any difference in your startup on your Ubuntu system, other than your free hard drive space being reduced. Grub will load normally, and you’ll boot into your login screen as usual.

Now that we have an NTFS partition on the hard drive, we can begin to install Windows XP as you normally would by inserting the XP install CD and booting from it. (Here is a guide for installing XP, just for quick reference. Read the rest of this first).

At some point during the Windows XP install, you’ll get to a screen that is somewhat similar to this one:

I need to stress that your screen will look a little different (I couldn’t find a good enough screen shot online so I had to Gimp the one above to be somewhat more accurate to what we’re doing here. I’ll replace it with a better one tonight). This screen appears during the Windows XP install when it’s asking you to select a location for Windows XP to install itself. Chances are, you’ll see one partition on your screen that has the letters “NTFS” next to it. THAT partition is the one you just created after resizing one of the others and it’s where we want to install Windows. The ext3 partitions will also be listed here, but likely be listed as “Unknown” because Windows XP is incapable of reading ext3. DO NOT SELECT ANY OTHER PARTITION than the NTFS partition (there should only be one NTFS partition listed anyway).

You will want to select this NTFS partition and press enter. It will then ask you if you want to format it to FAT32 or NTFS, or make no changes to the partition. Select “Leave file system intact (no changes)”. Proceed with the rest of the install as usual.

After the installation is complete, your system will reboot and you’ll notice that your Grub menu is missing. In fact, you’ll notice you can’t access your Ubuntu system at all. “Oh crap!” you might say. Don’t worry. We’re about to repair the Grub menu, and then modify it so it will have an entry for your newly installed Windows partition as well.

Insert your Ubuntu Live CD and them immediately restart your computer (so as to boot from the Ubuntu CD). Once the Ubuntu Live environment is up and loaded, click Applications>Accessories>Terminal. At the prompt type:

  • sudo grub

This will take you to a grub prompt that looks like this:

  • grub>

At grub>. enter these commands:

  • grub> find /boot/grub/stage1

This will return a location output, that will look something like “(hd0,1)”. Next, THIS IS IMPORTANT, whatever was returned for the find command use it in the next line (you are still at grub>. when you enter the next 3 commands…also be sure to include the parenthesis).

  • grub> root (hd0,1)
  • grub> setup (hd0)
  • grub> quit

What we’ve basically done here is restored grub. Unfortunately, the grub menu doesn’t have a Windows entry in it. You’ll find that when you reboot your computer, Ubuntu will load normally, but grub will not present you with an option to boot into Windows. We have to add that entry manually.

Now in Ubuntu, open another Terminal window like we did before. Now type:

  • sudo fdisk -lu

You’ll get some output that looks like this:

username@username-laptop:~$ sudo fdisk -lu

Disk /dev/sda: 60.0 GB, 60011642880 bytes
255 heads, 63 sectors/track, 7296 cylinders, total 117210240 sectors
Units = sectors of 1 * 512 = 512 bytes
Disk identifier: 0x994a994a

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1              63    89048294    44524116   83  Linux
/dev/sda2        89048295    92952089     1951897+   5  Extended
/dev/sda3   *    92952090   117210239    12129075    7  HPFS/NTFS
/dev/sda5        89048358    92952089     1951866   82  Linux swap / Solaris
username@username-laptop:~$

In the above example, the third partition in the list is the one containing our NTFS partition, and thus, Windows XP. We need to add an entry based upon this information to the grub menu so we can select it for booting. Still within Terminal, type the following:

  • sudo gedit /boot/grub/menu.lst

This will open up your Grub configuration file. Scroll down to the bottom of it, and paste in the following text:

# This entry was added by username for a non-linux OS
# on /dev/sda3
title        Microsoft Windows XP Home Edition
root        (hd0,2)
savedefault
makeactive
chainloader    +1

In the above text, note the “(hd0,2)“. This statement is based upon the NTFS partition being listed as the third on this hard drive. It says “Hard Drive 0, Partition 2″ which in human speak actually means “First hard drive, third partition.” If the fdisk -lu output had shown the NTFS partition listed as the second partition (for example) the notation would be “(hd0,1)”. If you had installed Windows XP on a separate hard drive, say a slave hard drive on the primary IDE/SATA channel, it would be listed as (hd1,0), which means “Second hard drive, first partition” in human speak. Modify your entry in the additional text above accordingly, paste it to the bottom of your menu.lst file in Gnome Text Editor, and then save the file.

When you reboot, Grub should now have a new entry which will list Windows XP as an option. Note that the text displayed for this option is based upon what you typed in the above text. You can modify it if you need to (for example, if you have the Professional version of XP, instead of the Home edition and you want it to say that).

And that’s it! Now get some sleep, we’ve had a long day.

Saturday, March 22nd, 2008

CCNA Crash Course: Day 2

I was going to write a bunch of stuff in here about Access Control Lists and the Cisco IOS image files, but Wordpress deleted all of my draft work I had saved up, and I’m not in the mood to retype it all. You probably weren’t gonna read that Greek nonsense anyway….

Here’s some good reading though:

Saturday, March 22nd, 2008

CCNA Crash Course: Day 1

We start with 3 basic layers:

  1. Physical - (Cables, radio waves, binary 1’s and 0’s, etc).
  2. Data Link - (Switch/Bridge devices/MAC address)
  3. Network - (Routers)

Routers are the devices which are given the most focus. Here is the back of an example router:

The look of a router will vary greatly, but it’s function and purpose is essentially the same: Route IP traffic, as well as other management stuff we’ll discuss later.

Within the router is a Command Line Interface called the Cisco IOS. The traditional method used to access this operating system is to attach a rollover cable to the routers console port and the other end to a serial port on a PC. Then, using a terminal emulator like Hyper Terminal (included with Windows for free) to establish a serial connection. These settings need to be correct in order for the connection to work:

  • Baud - 9600
  • Databits - 8
  • Parity - None
  • Stop Bits - 1

The Aux port on a router can be setup to accept incoming connections from external devices like a phone modem, allowing for remote administration. Virtual Terminal ports can also be configured, allowing the administrator to set up any of the Ethernet ports on the router to accept incoming remote administrator telnet or SSH sessions.

When you establish a console session with a router, you begin in “user mode”, and you are very limited on what commands the router can accept from you. To escalate your privileges, you type “enable” and press enter. A password prompt can be configured later to ask for a password when this command is entered. A password can also be placed over the user mode as well, to prevent access by unauthorized users.

Tab-Completion of commands is supported, as well as ? inquires. If you type “con?” and press enter, the possible commands that begin with “con” will be displayed. If you type “config ?” sub commands that can be sent to config will be shown. This is handy if you forget your commands.

When a router first powers on, it goes through a Power On Self Test by loading a small ROM chip. This mode seeks out an IOS image file, which is the actual OS. The OS is usually stored on Flash memory.

To configure the router, you have to type “enable” to switch into Privlaged mode, then type “config term”. Then you can begin to configure other interfaces (more on that later).

Once you’re done with changing your configuration, you can save it to your startup config file by typing “copy run start”. You can also erase your config by typing “erase start”.

That’s all for now. More on the way.

Friday, March 21st, 2008

Suddenly, I feel like becoming a CCNA.

CCNA stands for Cisco Certified Networking Associate. It serves as a foundation for other higher level certifications, such as the CCNP and CCIE. The school I recently graduated from provided me with all the knowledge I needed to prepare to take and pass the CCNA exam. Sad thing is, I never attempted to take the test, and essentially decided to opt myself out of it. I just didn’t really feel motivated enough. I was actually de-motivating myself a lot, so was my former employer (I hear they lost two major contracts and they laid off 50 people…had something to do with trying to save money on screws, I think. Darn!)

Let me explain a little more. I used to work for a factory that manufactures garage doors. I worked their for nearly 4 years, starting as a temp and working my way up to staff trainer in under 2 years. Then, one day the training department I was in was downsized. They tried to cover up what they were doing by slotting all trainers who were in soon-to-be-eliminated positions into available department lead positions and told them it was only going to be temporary. I was told that I would be in charge of the warehouse. The WAREHOUSE! Telling 10 other forklift operators what to do and cutting off my personal time even more (preventing me from going to school) didn’t sound like something I was just going to casually let them do to me; I didn’t feel like working 50 or 60 hours a week. So I told them I would rather demote myself than work in a position I didn’t feel interested in fulfilling. They obliged, and my pay was cut by about 3 dollars an hour. I had decided at that point I wasn’t going to work in a garage door factory for the rest of my life, and immediately began investigating their tuition reimbursement program…

I graduated from Kaw Area Technical School about 2 months after leaving that place, continuing to work on the weekends for the data center. And for me, that was enough to survive and pay the bills. I have had ambitions about starting my own tech support business, and as such I kinda slacked off when it came to having a desire to pay the 150 some dollars to take the final CCNA exam. I had already gotten a tech job in a good place with a good boss, and was happy basically taking it easy for a while. I partially felt that if I had kept in step with some other classmates after graduation that I might end up charging my way into being employed for more of the same types of people I despised when working at that garage door factory, which would also conflict with my desire to be completely self employed someday. I would tell myself, “If I’m my own boss, who cares what’s on my resume.” Kinda naive of me, but hey, live and let live. I’m only 25; I’ve got some time on my hands….

Recently, I’ve been churning up my desire to nail that CCNA certification to my wall, as well as go beyond it. CCNP is a must and I’ve also become interested in seeing what there is to get out of a CISSP certification. But that’s way down the road.

I am going to crash through the entire CCNA curriculum tonight, tomorrow evening and through the weekend, and report my progress here. I also intend to write a very skeleton sort of description of many concepts learned. I’ll then take the test, pass and post about my success here for you to read. This shouldn’t be very difficult for me, since most of the networking concepts taught are second nature to me these days.

So stay tuned. You’re going to get schooled in computer networking, and learn a few useful things you could use in the future. I’ll try to make it fun for ya too.

Friday, March 21st, 2008