Mounting a VirtualBox Share on a JeOS Guest

Written on January 28th, 2010 by Shawn Sparks

Tonight I needed to mount a share from my host OS to a VirtualBox virtual machine (vm) running JeOS. To get the job done, I had to mix a few different resources so I figured I would make a nice compact guide here.

  1. Create the VirtualBox share. I believe the virtual machine is supposed to be turned off for this step, but I do not know if it actually matters. I did this using a GUI, but it is my understanding you can do it with this command (JeOS – name of vm, share – name of share, /home/your/shared/folder – path to shared folder, backslash – entire command should be on a single line):

    VBoxManage sharedfolder add “JeOS” -name “share” \
    -hostpath /home/your/shared/folder

  2. Install the necessary tools to compile the kernel modules that are a part of the Guest Additions:

    sudo apt-get install gcc make build-essential linux-headers-`uname -r`

  3. Mount the Guest Additions iso. First, make sure it is set on the vm’s cd device. Then, simply run this command:

    mount /dev/cdrom

  4. Install the Guest Additions. Please note the specific file run may be different depending on whether the guest OS is 32-bit or 64-bit. Here is the command for 64-bit:

    sudo /media/cdrom/VBoxLinuxAdditions-amd64.run

  5. Reboot the system:

    sudo reboot

  6. Make the directory which will be the target of the share mount:

    mkdir /home/your/target/folder

  7. Mount the share (share – name of shared folder):

    sudo mount -t vboxsf share /home/your/target/folder

Voila! The share is now mounted in JeOS. I ran this on an Ubuntu 9.10 Karmic Koala 64-bit host, Ubuntu 9.10 Karmic Koala JeOS guest on VirtualBox v3.1.2. For the purposes of my vm, I did not want a compiler left on the system; thus, I removed everything I installed with this command:

sudo apt-get purge gcc make build-essential linux-headers-`uname -r`

Here is the list of guides I referenced in figuring out the process:

It’s Not Real, And I Don’t Care

Written on January 17th, 2010 by Shawn Sparks

Inspiration: “Brick by Boring Brick” by Paramore

I grew up listening to stories about King Arthur, Davie Crockett, and Paul Bunyan. From there I began reading about Crusades, Roman Legions, Samurai, and World War II platoons. I played Final Fantasy videogames and lived in a world that was all my own. I had an active imagination as most kids do. I became enchanted with the ability to mix history into the stories of our fictional media. It made them seem as if there was a chance they could be real. After all, Medieval stories are full of dragons and demons despite being based on factual events. Is it so hard to believe that such a story as Final Fantasy VI could have truly happened with some slight modifications? I know it did not, but the historical traces laced throughout give it the credence to allow our minds to be encaptured.

Read the rest of this entry »

There Is No Spoon

Written on January 16th, 2010 by Shawn Sparks

Object-Oriented Programming is all about conceptualizing real-world objects in our code. However, I find it helpful to keep in mind that the objects we create are simply abstractions. It is simply a collection of instance variables of various data types and functions. Functions themselves are simply a data type themselves whether or not it is in explicit in your language of choice. This means that an object is nothing more than a hash.The result is, with the proper language, a programmer can make objects and classes in his own manner. It is simply a matter of mapping hash keys to their appropriate instance variables and functions.

If you want to take it further, eventually, each composite data type can be broken down into a scalar value. Then a scalar type really is just a series of bits. Your kitchen spoon is nothing more than ones and zeros in the mind of a programmer.

Warrior Scholar Kings

Written on January 12th, 2010 by Shawn Sparks

Many of the greatest kings remembered in the history books or among the stories of the people are known as warrior scholars. They fought their battles, and when they had an opportunity to rest, they studied. Most focused on topics along the lines of politics, economics, and military strategy. However, there were also those with interests in religion, astrology, astronomy, and agriculture. A man with a talent for battle was a scary sight. A man with a talent for battle and a brain for making the battle easy was something to truly fear.

Lately, I have been associating with this image. I recently graduated college and took a short hiatus to get away from everything. It was a nice break including family, friends, Christmas, snowboarding, and videogames. Yesterday, I returned to the working world. I say return because after three internships and a couple student jobs, I do not feel like it is a wholly new experience. To me, going to work is stepping onto the battlefield. My coworkers are fellow soldiers, and the problems encountered in breaking greater service to the clients is the force opposing us. It is where I employ everything I have learned over the years. It is where all the training comes to the forefront.

Then I go home in the evening. Where medieval kings may have played chest by candle light, I dabble in web development and other programming projects. They are miniature versions of problems I may encounter at work. I begin to expose the forces at play and develop tactics to meet them. I spend time reading books and blogs. I watch enlightening shows on the television. You may think all I do is watch sports, but I argue that football relates to far more of life than the local three-day forecast.

Tonight’s agenda is no different. Tonight, I resume reading The Art of War.