Changing the default size of gnome-terminal

Whenever I start gnome-terminal, it opens to 80 columns x 24 rows.  That is too small for my taste.  Henceforth, I want it’s default size to be 80×50.  Install gconf-editor.

sudo apt-get install gconf-editor

Screenshot from 2013-02-19 00:05:02

Start gconf-editor.  In the window on the left, navigate to /apps/gnome-terminal/profiles/Default.  In the window on the right, set default_size_colums to 80 and set default_size_rows to 50.  Be sure to select use_custom_default_size.  You are done.  Close gconf-editor.  Start gnome-terminal and try out its new size.  (ctrl-alt-t, if you are using unity desktop)

Fixing postfix and saslauthd: cannot connect to saslauthd

If you are having issues getting postfix email server to authenticate with saslauthd, your solution might be found in a missing symlink.  Remember that postifx runs in a chroot environment.

I find the following warning message in /var/log/mail.log:

 warning: SASL authentication failure: cannot connect to saslauthd server: No such file or directory

The warning message tells me that saslauthd can’t be located. The real location is /var/spool/postfix/var/run/saslauthd, but postfix is expecting to find it in /var/run/saslauthd.  Create a symlink as described below and see if that fixes your problem.

sudo ln -s /var/spool/postfix/var/run/saslauthd /var/run
sudo chown root:sasl /var/spool/postfix/var/run/saslauthd
sudo usermod -a -G sasl postfix

Be sure to restart postfix and saslauthd.

sudo /etc/init.d/postfix restart
sudo /etc/init.d/saslauthd restart

After restarting saslauthd, you should see some of the following files in /var/spool/postfix/var/run/saslauthd:

cache.flock cache.mmap mux/ mux.accept saslauthd.pid

Test using your smtp client and verify that you no long receive the previous warning message in your mail.log file.  Hopefully this was your quick fix.

How to prevent a Debian or Ubuntu package from being upgraded

Recently, I wanted to hold my virtualbox software at version 4.04 and prevent it from being upgraded.  If you use the gnome update-manager, you can always deselect the virtualbox  package in the GUI each time.  If you don’t like having to do that each time, I will show you two additional methods.  The first method using aptitude and the second method using dpkg/apt-get.  Choose one method or the other, the two methods are independent.

Method 1: Aptitude

Use aptitude to place a hold on a package and this will allow aptitude to upgrade everything else except packages that you have “held back”.

I’ll show you how to place a hold on the virtualbox package (virtualbox-4.0).

Start aptitude.

$ sudo aptitude

Your first action should always be to update your repo cache.  Hit the “u” key.

Next, search for virtualbox.  The “/” key will bring up a search box.  Enter virtualbox and hit enter.

If virtualbox is installed, aptitude should find it.

Hit the “=” key to place a hold on the virtualbox package.

You should see the flags “ih” now associated with the virtualbox package.  This means that virtualbox is installed and there is a hold placed on it.  It won’t be upgraded while it is held back.

Whenever you want to clear the hold flag, search and select the virtualbox package again and hit the “:” key.  That will remove the hold.

To upgrade your server.  Use the arrow keys to go to the top of the list and select the Upgradeable Packages.  Then hit the “g” key.

Hit the “q” key to quit aptitude.

Packages that are held back will still show in the Upgradable Package list whenever there are upgrades available for download.  If you try to upgrade it, it will be skipped.  As shown below.

If you prefer to use the cmdline, this is how to do everything that I just talked about, place a hold on virtualbox and upgrade everything (except virtualbox).

$ sudo aptitude update

$ sudo aptitude hold virtualbox-4.0

$ sudo aptitude safe-upgrade

And when you are ready to remove the “hold” placed previously on virtualbox and upgrade everything

$ sudo aptitude update

$ sudo aptitude keep virtualb0x-4.0

$ sudo aptitude safe-upgrade

Method 2: dpkg/apt-get

To place a hold on virtualbox and upgrade everything (except virtualbox).

$ sudo apt-get update

$ echo “virtualbox-4.0 hold” | sudo dpkg –set-selections

$ echo apt-get upgrade

To remove that hold on virtualbox and upgrade everything.

$ sudo apt-get update

$ echo “virtualbox-4.0 install” | sudo dpkg –set-selections

$ sudo apt-get upgrade

Summary

Whichever method you choose, please remember that each method is independent of the other.  In other words, if you use aptitude to place a hold on a package, then apt-get won’t see that hold.  If you place a hold using dpkg, then aptitude won’t see that hold either.   So remember to be consistent with whichever method you choose.  Yeah, it’s a bit nuts.