A Sneak Peek at Upcoming Linux Mint 11

Linux Mint, an ubuntu derivative, posted a preview of what’s included in there next release, Linux Mint 11. It sounds like they are positioning themselves as a nice alternative for users who don’t like Unity or the new Gnome interface, and users who can’t run the newfangled UIs.

One of the most noteable features of version 11 will be the retention of GNOME 2.32. It will be the foundation for the same desktop layout users know and love, including Compiz and Metacity.

A Sneak Peek at Upcoming Linux Mint 11


My Desktop is a little “Freer”

But really, what does that get me?

It was with a bit of a smirk that I read about Ubuntu user’s pains in upgrading to Karmic, the latest release. Ubuntu’s previous release upgrade or two had killed my networking, to the point that I had to reinstall the whole OS and I instead switched to Arch Linux. Arch has a rollng release cycle, which means you can get the latest and greatest much quicker than a lot of other Linux distributions, and it tries to “Keep it Simple”

This doesn’t mean its easy to install or configure, just that its straightforward to install and configure pieces to really tailor it to your own preferences.

This also does not mean you are not immune to upgrade headaches, as I found out this weekend. The latest version of X-Server 1.7, does not play well with the latest binary NVidia video card drivers. To the point that X will not load and you’re left at an old school command line terminal. The solution is to switch to the Open Source nouveau drivers for nvidia cards, which don’t have the same incompatibility. I had to also edit my xorg.conf file to get my dual-monitor setup working correctly, which was easy once google found me a working configuration to crib.

An hour later, I have a usable Linux machine again, but honestly, weren’t we supposed to be past this by now? Whatever KDE+Xorg configuration I have does not have the right juju to configure this via KDE’s gui apps for my desktop or screen resolution. According to KDE I do not appear to have a multi monitor setup, but other tools do show the two monitors available. Its just that they don’t all talk to each other as expected or needed in all cases. Too many things have to align for configuration/hardware stuff like this to be painless, so Linux will continue to be challenging to run.


Linux Package management overview

I have to confess that delegating software installation to Debian and Ubuntu’s apt command is what finally converted me to Linux.  I stillhave a bias against .rpms and building from source based on disastrous experiences hunting down obscure .rpms or figuring out why make would not work.  If you’re trying out Ubuntu or another Linux distribution, you should stop and read download squad’s Package management 101

Package management refers to the way your distribution installs and configures (as well as manages and removes) software applications and libraries on your system. When Windows installs an .exe (which is the closest thing in Windows to a package) it usually places it in a single specific place within a directory. Linux installs across a few directories, leaving many new Linux users scratching their heads as to where their .rpm actually went. Most distributions install the executables in /usr/bin, and the libraries in /usr/lib. You may notice related files in /usr/share or /etc.

In short, you’ll want to let your package manager install and upgrade new software for you.  You don’t have to take my word for it, Thank You, Aptitude!

I’ve long believed that the easiest way to install software on a modern operating system is through a well-designed package manager connected to one or more carefully-maintained package repositories.


Connecting to a VPN in Ubuntu

Thanks to Jo, super-sysadmin, who pointed me at two links that finally got me connected to our work VPN after I switched from Debian to Ubuntu.  The trick is not to use the old pptp-config, but instead switch to a new package – network-manager.  Brian Daley wrote up the the actual VPN Connection instructions, and I also had to follow the advice to disable network interfaces in /etc/networking/interfaces so that the new package could manage them.  After fiddling with the VPN configuration settings (disable EAP-Authentication, and disable authenticate peer), I was able to connect.  As you can imagine, I was quite overwhelmed by the excitement.


Browser upgrades – Firefox 2 or IE7

Of course, you know I’m going to tell you to install Firefox 2.0 once its released, and I don’t have a windows XP machine so no trying out the newly released IE7.  By the way, did you see that security vulnerabilities were already found for IE7, less than 24 hours after its release?  I’m using a release candidate of Firefox2, thanks to an ubuntu upgrade. While the Safari-like close button tabs are taking a little more time to get used to, there are some noticeable, if not drastic, usability enhancements.  The search field, in the top right of the UI, is larger giving you more room too see search terms.  I also like the automatic spell-checking in text areas, it already caught one typo as I wrote this post.

Over at the Wall Street Journal, Walt Mossberg has a more thorough comparison of the two browsers.  If you’ve been sitting on the sidelines, you’ll get the IE7 upgrade automatically via windows update in the coming weeks.  If you can’t wait, download Firefox now.

I have been testing IE 7, and I agree with Microsoft that it’s much
improved. If you are a confirmed IE user, upgrading to this new version
makes perfect sense, because it is likely to be more secure and its new
features make Web browsing better. But if you are already using
Firefox, IE’s main competitor, I see nothing in IE 7 that should make
you switch. It’s mostly a catch-up release, adding to IE some features
long present in Firefox and other browsers. The one big feature in IE 7
that wasn’t already in Firefox, a built-in detector that warns against
fraudulent Web sites, is being added to Firefox in version 2.0.


Server Upgrade: OS basics

Debian AMD64 Setup

My Linux distribution of choice is Debian, although for the desktop I’d recommend Ubuntu. The server was first setup using the unofficial debian64 repositories. Since the amd64 architecture is now officially part of Debian, we moved to using an official repository. see Google groups. An unofficial repository contains /debian-amd64/ like so:

#deb sarge main contrib
#deb-src sarge main contrib

Since packages make it to stable at a fairly slow pace, we also want to use the testing branch. This is fairly straightforward, first update your /etc/apt/sources.list to use etch/testing by removing (or commenting out) other repositories and adding the following lines. If you are outside the USA, replace the .us. part with your country code.

deb testing main contrib
deb-src testing main contrib

Next, run apt-get to update the system, first clean the system, then update, and upgrade.

apt-get clean
apt-get update
apt-get dist-upgrade

Follow the onscreen instructions, when in doubt pick the default option or swithc to google and read up. If apt installs a new kernel, you’ll have to restart your server. Finally, to get up to date LAMP packages, you can use the dotdeb repositories by adding the following lines to your sources.list. We will need these later to install Apache2, MySQL, and PHP5.

deb stable all
deb-src stable all

Kernel Parameters

Since our last server crashed because of a very low max open files limit, its worth checking that this setting is not too low on the new server.

cat /proc/sys/fs/file-max

Currently this returns 100905, which should be more than enough open files for our expected traffic. See Debian kernel tuning for more info.

Enabling Hyperthreading

Finally, because the CPU is an Intel P4 with hyperthreading, you can try using an SMP kernel to enable the 2 “virtual” processors. While there seems to be some debate on the benefits of Intel’s hyperthreading, IBM produced some benchmarks on the 2.6.15 kernel which show some gains. You can install a new kernel with:

apt-get install linux-image-2.6.16-2-em64t-p4-smp

Make sure you install the correct one for your CPU, since there are a generic 64-bit kernel, AMD specific kernels, Intel specific kernels, as well as single and multi-processor versions for each.

That’s it for this part, if you restart you should still have a working server (I do). Still to do: basic system security and setting up a LAMP environment