eRacks Open Source Systems Blog

Making the world safe for Open Source

If you’re a student like I am, you know how important it is to save money. Some students are too busy with their studies to work at all, and those who can are usually only able to do so part-time. And, like books and tuition, software is a significant source of financial burden to the average student. While it’s true that student licensed versions of software are significantly discounted, popular titles such as Microsoft Office will still cost you somewhere in the ballpark of $130. And of course, that’s only if you don’t intend to use the software for anything other than your academic or personal endeavours. If you utilize the same applications on the job, you’ll find that you’re no longer eligible for student licenses, and suddenly you’ll discover that $130 magically turns into $300.

Fortunately, the current digital climate is rife with free software alternatives, which have the potential to save students (or parents!) hundreds of dollars.

The Operating System

Let’s start with the most fundamental bundle of software, the operating system (hereby abbreviated as OS.) The OS is what sits between the hardware and the user’s applications. Some examples are Microsoft Windows and Mac OS X.

For many students, purchasing an OS will be a non-issue, as most computers come with one pre-installed. For those in this category, most of the software mentioned below will run on both Windows and Mac. That being said, there are also a significant number of people who need to include an OS in their financial plans. Perhaps you purchased your computer used and without software. Or, maybe the OS on your machine is old and needs to be upgraded. You could have even assembled your own computer, as many hobbyists do.

It’s true that students can purchase Microsoft Windows at a discount of 30-60% off, but why would you do that when you can get your OS for free? Over the last few years, a veritable cornicopia of easy-to-use free software-based OSes have emerged, the most popular, and in my opinion, the easiest to install and use, being Ubuntu (http://www.ubuntu.com/). For the more technically inclined and perpetually curious, there are a slew of other Linux distributions, as well as the *BSD family of OSes — FreeBSD (http://www.freebsd.org/), NetBSD (http://www.netbsd.org/), OpenBSD (http://www.openbsd.org), PC BSD (http://www.pcbsd.org/) and Dragonfly BSD (http://www.dragonflybsd.org) — and Sun’s OpenSolaris (http://www.opensolaris.org/).

In reality, we do still live in a Windows world, so you may find yourself in a position where you have to use a program that only runs on Windows. Luckily, there’s a very mature and very complete open source implementation of the Windows API that’s been actively developed since 1993 called WINE (http://www.winehq.org/) You simply install WINE through the point-and-click interface provided by your OS and install your Windows applications on top of it. Many will run out of the box, and others will run with a minimal amount of tweaking.

Office Productivity

As mentioned earlier, a student copy of Microsoft Office will cost roughly $130, and in some cases, students won’t even qualify for the student license, making the product much more expensive. So then, simply by installing a single free software replacement, you’ve literally saved hundreds. There’s a fantastic open source alternative called OpenOffice (http://www.openoffice.org/), a spin-off from Sun Microsystems, Inc. The download is a little large (over 100MB), but the price tag is worth it (it’s free), and OpenOffice really is a solid application capable of doing anything Office can. It includes components that replace Word, Excel, Powerpoint and Access, as well as additional components for drawing and for editing HTML documents.

In addition, you’ll find Scribus (http://www.scribus.net/) for desktop publishing and the creation of professional quality PDFs and Dia (http://live.gnome.org/Dia) for drawing diagrams, roughly like Microsoft Visio.

Multimedia

Of course, no college-ready system is complete without the ability to play movies and music! Fortunately, open source has you covered there as well. With Totem (http://projects.gnome.org/totem/) and Xine (http://www.xine-project.org/), playing your videos on Linux is a snap (Windows and Mac users of course have their own respective built-in players and don’t have to worry about this.) As well, there are applications like Banshee (http://www.banshee-project.org/) that do a great job of managing your music (it also plays videos.)

You’ll also more than likely be managing a great deal of pictures. For editing them, you’ll find the GIMP (http://www.gimp.org/), which is very similiar to Adobe’s Photoshop, and for browsing and managing your pictures there’s F-Spot (http://f-spot.org/).

You’ll only run into a couple of hitches when dealing with multimedia on an open source OS. The first is that you won’t be able to play many Windows Media files. Fortunately, this can remedied by purchasing the Fluendo Windows Media Playback Bundle (http://www.fluendo.com/shop/product/windows-media-playback-bundle/). True, it’s not free, but for $20 it’s a small price to pay compared to all the hundreds of dollars you’ll be saving on everything else, and if you can live without Windows Media, you can save yourself the expense. The second is that technically, according to the controversial Digital Millenium Copyright Act (http://www.copyright.gov/legislation/dmca.pdf), you’re in a legal predicament if you install software to decrypt your DVDs. More than likely nobody’s going to care, and the software to do so is readily available and in common widespread use, but if you choose to play your DVDs on an open source OS you should first take the time to thoroughly understand where you stand from a legal perspective. [Ed. note: there are fully licensed DVD players available for Linux, but even so, legal scholars now feel that this area of the DMCA has not yet been fully tested in court, but recent precendents suggest that if it were, in the end, that Fair Use doctrine would win out in the end over the DMCA – Ed.]

A Plethora of Other Goodies

Depending on your field of study, you’ll find many other professional-quality free and open source applications that are outside the scope of this blog that will save you even more money. Just google around. You’ll find all sorts of amazing applications, all of them free.

Conclusion

Fellow students, let loose the shackles of expensive proprietary software and embrace the freedom of open source. Not only will you save hundreds of dollars, you’ll be drawn into a community of users and developers that are passionate about writing and supporting software. Once you get used to using free software alternatives, you’ll wonder how you ever got by without it.

Here at eRacks, we specialize in providing users of all kinds with open source solutions to meet their needs. So contact us today, and ask us how we can help you save money and get even more out of your academic experience!

April 20th, 2009

Posted In: How-To, multimedia, Open Source, Reviews, ubuntu

Tags: , , , ,

Leave a Comment

There may be situations where you’d like to login to a remote machine via SSH and not have to enter a password to do it. Perhaps you have some sort of automated file transfer that makes use of SCP. Or, perhaps you frequently login to the same machine and get tired of having to enter a password each time. Whatever the reason may be, an attractive alternative to using passwords involves making use of cryptographic keys.

To give you a general idea of what’s involved, you’ll first generate a public/private key pair. Your public key is what you would copy to every machine you want to be able to log into. You can think of the public key as the lock on a door to a house. The reason why we call this a public key is that it’s safe to share it with the public, just as the lock on your door is safe to display from the outside. By contrast, your private key can be thought of as the key that fits into the lock. Unlike your public key, you should never copy it to machines that are either untrusted or to machines that you yourself don’t administer — this would be a bit like placing the key to your front door outside your house for strangers to use! Anybody who possesses your private key can access every machine to which you’ve made your public key accessible, so exercise extreme caution and guard your private key with your life.

SSH makes generating your keys very simple. From the command line, you’ll simply enter the following command:

$ssh-keygen

You’ll then be asked a series of questions. Accept all the defaults. If you don’t desire to password protect your key pair (which would require you to enter a password when you use it), hit enter when asked for the password, without typing anything in. At the end of the process, you should discover two new files in ~/.ssh, id_rsa and id_rsa.pub, where ~ stands for your home directory. From here, you’ll copy your public key (id_rsa.pub) to every machine you wish to log into and append its contents to a file called ~/.ssh/authorized_keys, where ~ stands for the home directory of the account you wish to log into.

To test your newly generated key pair, try to connect to one or more of the remote machines you copied your public key to. You’ll find that you’re sent straight to a command prompt, without the need for a password.

Now, there are situations where using keys without passwords can potentially be hazardous, so some significant thought should be given to the circumstances in which your key pair will be used. For example, I will never copy my laptop’s public key to my personal server at home, because if my laptop is ever stolen, the thief (if he knew how to use *NIX) would not only have access to all my local data, but would also have complete SSH access to my network at home, since he would have my laptop’s private key. Thus, I choose to sacrifice convenience for security in that particular situation. As with all things in life, the amount of relative security versus convenience is a trade off, so make sure you choose wisely.

Enjoy!

November 21st, 2008

Posted In: authentication, security, ssh, unix

Tags: , , , , , , ,

Leave a Comment

How to Install FreeBSD 6.2 on an Acer Aspire 3690

First Step: Install a fresh copy of FreeBSD 6.2

1) Getting the sound card to work:

The soundcard uses the snd-hda module, which is not supported by the 6.2 kernel. However, the latest snapshot of the 6.x series kernel does support it, so we must update our kernel. To do so, do the following:

1. Create a CVS sup called supfile file with the following:

*default tag=RELENG_6 #(do NOT use RELENG_6_2, or you won’t get the new kernel)
*default host=ftp.freebsd.org
*default prefix=/usr/local
*default base=/var/db
*default release=cvs delete use-rel-suffix compress
src-sys

2. Now, issue the command ‘cvsup supfile’

3. When the updated kernel source tree is fully downloaded, copy /usr/src/sys/crypto to /usr/local/src/sys/crypto (for some reason, this subdirectory is missing from the more up-to-date version of the kernel source tree, which results in compile-time errors.)

4. Edit the file /usr/local/src/sys/conf/newvers.sh and change ‘RELEASE’ from 6.3 to 6.2 and ‘BRANCH’ from PRERELEASE to RELEASE. This is a rather clumsy hack, but it’s the only way to ensure that the user will continue to be able to download packages for the 6.2 RELEASE version of FreeBSD, since, while the userland is 6.2, the OS’s version is determined by the kernel’s version.

5. Copy /usr/local/src/sys/i386/conf/GENERIC to /usr/local
src/sys/i386/conf/ERACKS

6. Open the ERACKS kernel configuration file and do the following:

– delete all the ‘cpu’ directives at the top except for I686_CPU
– change ‘ident GENERIC’ to ‘ident ERACKS’
– disable unneeded device drivers (be careful to only disable those you know for a fact won’t be used; you can get rid of the serial and parallel port drivers for example, since there are no serial or parallel ports on the laptop)

7. When the source tree is prepared, move /usr/src/sys to /usr/src/sys.old, and move /usr/local/src/sys to usr/src/sys

8. cd to /usr/src and type the command “make buildkernel KERNCONF=ERACKS”

9. If the build was successful, type the command “make installkernel KERNCONF=ERACKS”

10. Reboot the computer and make sure it comes up successfully

Now, the sound card should be working.

2) Getting the wireless to work:

Unfortunately, there are no native FreeBSD drivers for the wireless. However, there is an ndis wrapper in the FreeBSD kernel that will allow us to use Windows drivers for this card.

1. Download the file http://ftp.us.dell.com/network/R94827.EXE. Just in case this link doesn’t work, a copy of this driver will also be kept at eRacks. Even though the laptop is an Acer, trying to use the Acer driver will fail (not sure why.) The Dell driver, while intended for another laptop, supports the same wireless chipset, and will suit our needs.

2. On a Windows machine (or with WINE), run the self extracting archive, and copy bcmwl5.inf and bcmwl5.sys to the FreeBSD laptop (these files will be extracted when you run R94827.EXE.)

3. In the directory where the two above mentioned files are stored, issue the command “ndisgen bcmwl5.inf bcmw5l.sys”. Accept all the defaults, pressing enter for each one, and a resulting .ko kernel object will be built. This is the “FreeBSDized” Windows driver that will support the wireless card.

4. Copy the resulting object file to /boot/modules

5. Edit /boot/loader.conf and add the following line: “bcmwl5_sys_load=”YES”

6. Reboot the machine, and verify the wireless card is working by issuing the command “ifconfig -a.” Observe that there is a device named ndis0.

That’s it! All the other devices are supported out of the box. The only exception is that the graphics adapter is only supported through generic VGA. The Intel 945GVM is supported in FreeBSD 7.0, but that is currently unstable.

March 31st, 2008

Posted In: Laptop cookbooks

Tags: , , ,

4 Comments