Linux?
An alternative operating system, Linux is getting better all the time. When you try to set it up you'll find that mostly, if you find the right one, it just works. When it doesn't things can be frustrating. You'll often get a technical explanation and some instructions to type code into a Terminal window or edit a text file. It works sometimes but since you have no idea why it just makes it worse if the solution doesn't fix your machine. With a modern PC I don't expect to be typing code in or editing text files unless I'm programming. Users shouldn't have to do it. It's better to have a GUI, written by a programmer who then uses your responses to configure the software in a manner they know works. That's what I think, anyway. I don't write it though and the people who do are working for free - I'm sure they'll get there eventually. In the interest of balance I'll include the counter-argument, which does make sense. There are many varieties of Linux (a selection is available at http://www.linux.com/download_linux/) and having tried a few the one I like best for a home PC is Kubuntu. Some of that is down to taste, some is down to the large community that you can go to for help when something goes wrong. One reason is that I can set it up the way I want, for example getting rid of the habit Windows has of pointing out that the button you just pressed will cause the computer to do what it says on the button and asking you to confirm it again or otherwise repeatedly stating the glaringly obvious, such as the changing a file extension message.
At least, I was happy with it. Since the adoption of KDE4 I've begun to lose interest. The menu looks like the one from Vista with everything forced to fit inside a given space so you have to go hunting for the thing you want. I don't like the way it looks either and it doesn't seem to have the option to change it. I found the machine awkward and difficult to operate after that so I took it off and put XP back on it. One day when I have the time and inclination I'll try again but there's the ever present trouble. With XP there is a huge range of tools and software to quickly get up and running doing pretty much anything. Linux is a learning curve, something many people don't want or have time for.
At the moment it looks like this (Kubuntu 8):
Does it work?
Kubuntu is finally looking like the OS I could install for non computer people I've been hoping to find. KDE is pretty but Linux can be hard to get working properly. So far I've tried Fedora, Debian, Ubuntu, Mepis & Gentoo. They all seem similar in the end, it's more about whether to use Gnome, KDE, XFCE, etc. and whether you can do what you want with it.
So far in Kubuntu I can:
Surf the web, with Flash and Java working,
Listen to MP3 music and watch DVDs and other films,
Use Open Office, which comes with it and view PDF files.
Have fun with a growing selection of games.In fact, most things I expect from a PC. If it were only a little easier to troubleshoot when there's a problem I wouldn't use anything else on most computers. Then of course there are the recurring issues with Nvidia drivers although that's not Linux's fault.
Debian/Kubuntu:
I was trying Debian 4 (Etch), in the end I gave up and went to Kubuntu, as I mentioned earlier. I can set it up quite nicely so I can do music and video. Internet, E-mail and the like work from the start. I was very impressed when I discovered I can read NTFS with the default installation. The Synaptic Package Manager is easy to use too. Overall I like it. Of course, I'm using it on a box with ATI video. When I originally tried on Nvidia it sucked. The driver was just rubbish. That seems to be working much better now. I also had a lot of trouble with my WLAN with a hidden network name that included unusual characters.
This is as close to using the Terminal window as I like to get. I often find the pages of code people supply as solutions to many problems to be completely useless, however if I'm installing software it's nice to have a quicker way than trawling through the huge list of stuff available to find what you want. In most cases I really don't want to edit config files manually. I want a GUI, as I said. This is the exception, for getting the machine how I want.
Dual Boot:
So I decided (well, I say I decided, really my missus decided we weren't having yet another computer) I wanted to have dual boot. It used to be a bit of a fuss, now you let GRUB do the boot and XP is just an option on the list. In BOOT/GRUB/MENU.LST you can edit the list, don't just wade in or your computer might not start but it's not rocket science.
Installing:
Once the OS is on the machine the first thing to do is update. Use the Adept Manager in the menu.
There are a lot of packages you can add. Check the lists in Add/Remove Programs. It's as simple as ticking a box. If there are things you need to make it work the program will prompt you.
Then in Terminal:
sudo apt-get update
I like these:
sudo apt-get install ksplash-engine-moodin
sudo apt-get install kwin-style-serenity
sudo apt-get install comixcursors
A feature I particularly like is the Cube. You can have four desktops on a 3D cube which you can spin round on the screen. It comes with Compiz, which allows stuff like Wobbly Windows and the Lava Lamp effect. You can get it to the point where the screen effects are so lively it can make you feel ill... Look for Desktop Effects.I had trouble with Flash, the sudo apt-get install flashplugin-nonfree didn't work but downloading the installer from Adobe sorted it out. Unpack the contents and just run the installer.
Playing MP3 requires a bit of fiddling about (the suits have made it difficult). Amarok can fix it, use it to try playing an MP3. If you have trouble, install Mplayer, that's supposed to help.
You may also notice DVDs mess you about (more suits...) - fix it with the terminal window and sudo /usr/share/doc/libdvdread3/./install-css.sh (credit to Mr. Edwards)
Having the machine talk to my Windows boxes was something I found difficult at first but with a little bit of text editing it's simple enough. This worked for me.
Adding a new disc was confusing at first. I'm used to Windows and drive letters. Linux has you create a partition (sudo apt-get install gparted, it's friendly) and format it, then you have to mount the new partition to a folder. Create a folder (I did it in /mnt, it seemed appropriate) and mount the drive. You can do that in System Settings/Advanced on Kubuntu.
A good example of how Ubuntu actually tells you what to do, instead of talking gibberish: https://help.ubuntu.com/community/RestrictedFormats/PlayingDVDs
Hardware:
Basically because I'm cheap, I use a dial up modem to upload to my website. Installing it was tricky but I found this page which got me most of the way there.
The main problem I had at first was that I downloaded a .deb file for my driver install and couldn't get anywhere. Then I found out I needed to use dpkg -i <insert package filename here> in a Terminal window instead of double-clicking it.
Now it dials, my computer and the ISP chat in that 'computer-speak' and KPPP says I'm logged on to the network and starts counting seconds. All good so far - I couldn't get on the internet though. I could PING, so DNS was broken. That turned out to be because the dialup only works if I disconnect the LAN first, then dial. Otherwise the OS uses the LAN first and I can't upload, even if I pull the LAN cable out. Now I have to find out how to switch connections using the software.
Then of course you have to do it all again if you restart, I think because of Knetworkmanager. So far it isn't what I'm looking for.
Getting a Virtual Machine running with Windows XP in it:
I've opted for VMWare, I've used it in Windows and it's fairly easy to deal with. I got the file from their site, unpacked it and ran "./vmware-install.pl", then just used the default answers. The only hitch was when the installer couldn't find the headers. Some poking about led me to "apt-get install linux-headers-$(uname -r)" which gets the right ones for your kernel, which avoids me choosing the wrong one or something - I like that. The uname -r part tells you your kernel. Type that into Terminal and you'll see what kernel you have. Then look for that folder in /usr/src, inside the folder you find there will be an include folder which is what VMWare is looking for. Once you're up and running it works perfectly. If it doesn't lose too much performance, I'll have a Linux box with Windows in a window for when I need it, just as I wanted. Hurrah! Hopefully there isn't too much of a performance hit, there are other options, such as Xen, which may do better. So:
sudo apt-get install gcc
sudo apt-get install linux-headers-$(uname -r)
sudo ./vmware-install.pl(This has to be while you're in the VMWare install folder)
Ubuntu forums - Having upgraded to 7, I found that VMWare stopped working. This post fixed it, I extracted this to the /vmware/vmware-distrib folder then I did sudo ./runme.pl which gets it all to rebuild with the new system.
Upgrading to 8 broke it again. Luckily I found an answer. This is a good example of my only problem with Linux. If you want to be a Power User you have a lot of stuff to learn, I don't really have the time.
Here's a tip - I managed to screw up my network settings, fiddling about with the two NICs in my laptop. sudo /usr/bin/vmware-config.pl fixed it. Thanks alvinswim.
Commands:
(http://sunsite.utk.edu/UNIX-help/quickref.html) ls: list files, rm: remove file, cp: copy file, chmod: change permissions, pwd: display full path, mv: move or rename file
A useful tool for dealing with services: sudo sysv-rc-conf - it's not quite a GUI but it's better than editing text files by hand.
The reverse of apt-get install is apt-get remove.
vi: vi is a command line editing tool. What happens to me regularly is that I follow someone's instructions that are supposed to sort something out like wireless networking and I end up with a system that won't start properly. vi lets you edit files so you can put it back how it was before you changed the configuration file. Learn how to use it while everything works, you'll be glad you did.
If you need to know your kernel version:
uname -r
Games:
Tetris, Minesweeper, etc. are all there. You can "apt-get install wesnoth". It works perfectly, the game reminds me of "back in the day", as they say. Installing Sauerbraten requires SDL. I'm still trying to figure that out. There's more stuff being developed all the time, I recently picked up Alien Arena, it reminds me of Quake 3 - not as much as Open Arena though. I'm trying WINE, from www.winehq.com, the Windows emulator. I'm trying to avoid using it but some software I want just isn't available in Linux and I want to see how things run in it. I'm still learning how to use it though, reading http://www.winehq.com/site/docs/wine-faq/index#HOW-DO-I-CONFIGURE-WINE-TO-RUN-ON-MY-SYSTEM.
Bash Script:
This sounds, at first, like a big deal. It's actually fairly simple. Make a text file, add #!/bin/bash as the first line. Then on successive lines add commands you would type in a Terminal window, such as:
#!/bin/bash
sudo apt-get install gcc
sudo apt-get install linux-headers-$(uname -r)
cd /home/user/vmware
sudo ./vmware-install.plThe only other thing to do is change the extension from TXT to SH and make the file executable on the Permissions tab of properties. Then you can run it with ./script.sh. Useful for making shortcuts to things that require several commands, much like BAT files or scripts in Windows.