Tuesday, October 30, 2007

Ubuntu: sudo woes

Ubuntu's philosophy is to have a privileged "first user" account, created during system setup, which has sudo privileges. There is also a separate user account with username "root", but the password is unknown right after installation. The system administrator is expected to administer the system through the privileged first user account.

To get access to the root account, you can use the command "sudo passwd root" as the privileged user to reset the root password.

Suppose you want to run a package manager as the privileged first user, while logged in as a regular (non-privileged) user in Gutsy Gibbon (Ubuntu 7.10). You cannot use sudo unless the non-privileged user is in the sudoers group. Attempting something like the command "gksudo -u privileged-username package-manager" brings up a root password prompt, but you always get an "incorrect password" error. Using gksu also results in the same problem. However, using su in a terminal rather than gksudo or gksu works.

Fix:

The reason this doesn't work is that gksu's behaviour defaults to gksudo (see gksu man page). A solution:

1. Reset root password using "sudo passwd root" as the privileged user
2. Then "gksu --su-mode package-manager" to run it as root.

I still don't know how to make this work running the package manager as the privileged user rather than root.




Monday, October 22, 2007

Ubuntu Gutsy Gibbon on the T61

Having installed KUbuntu, I was interested in trying out Ubuntu on my T61. I installed it on a separate partition, and I am thrilled with the results. Kubuntu and Ubuntu have their strengths and weaknesses, but Ubuntu seems better on the whole.

I did have a couple of problems during the installation. The Ubuntu GRUB installer got confused and thought the Windows XP Pro partition was another Ubuntu partition... rendering it unbootable. This was fixed easily enough, though, by simply editing the /boot/grub/menu.lst file a bit.

A peculiar problem with both KUbuntu and Ubuntu on the T61 is that the keyboard volume controls don't work the way you'd expect them to. On Kubuntu, there are only two volume levels you can select with the keyboard controls. On Ubuntu, the controls do work... the problem is that they are not integrated with the system software controls. For example, if I press the mute button, the system doesn't seem to realize that it's been muted. Using the volume up and down does change the volume appropriately, and Ubuntu recognizes this and even shows an overlay displaying the volume changing, but this is not reflected in the system volume levels. This confused me a couple of times.

The screen brightness controls on the keyboard (Fn+Home and Fn+End) are recognized. Ubuntu shows an overlay with increasing or decreasing brightness. However, Ubuntu ignores them: it does not respond by changing screen brightness.

Ubuntu has a host of usability hacks that KUbuntu lacks. For example, it automagically recognized the .Xmodmap file I had placed in my home directory (to switch Caps Lock and Ctrl). Compiz works well out of the box on Ubuntu; I couldn't figure out how to enable it on KUbuntu.

One thing I did miss on Ubuntu is Konqueror's multi-functionality. I installed Konqueror, but it was a different version and didn't have the handy "File Size View".

Both Ubuntu and KUbuntu seem to have problems with their "Switch User" functionality. It's a little slow, and one of the sessions crashes a little too often. On Ubuntu, there's a peculiar effect when switching: one of the sessions will slow down a hundredfold, taking several seconds to respond to mouse clicks or draw/move windows etc. Switching back and forth a couple of times solves the problem, but it is an annoyance.


Wednesday, October 17, 2007

KUbuntu Gutsy Gibbon + Lenovo T61 = Freedom!

I just got a new Lenovo T61, with 2.2 GHz core 2 duo, NVIDIA Quadro NVS 140M, 3 gigs of RAM, and a 160 Gig hard drive. As soon as I could, I installed KUbuntu 7.10 Gutsy Gibbon on it, and am impressed with the results. Installation was (almost) a breeze, and (almost) everything works right out of the box. After using SuSE 10.2 for over a year, I can finally breathe! Read on for a review.

Partitioning

The laptop came with the 160 gigs partitioned into two parts: a small recovery partition by Lenovo (about 6 gigs), and a large (~150 gigs) partition with Windows XP Pro (more expensive than Vista Home). I wanted to keep XP along with one "production" Linux system and a "trial" Linux system to play around with. I used the gparted LiveCD (from http://gparted.sourceforge.net/), which made re-partitioning a breeze. I left the recovery partition strictly alone. My final partitioning scheme:


Device Gigs System
/dev/sda1 30.7 HPFS/NTFS (Win XP)
/dev/sda3 79.5 W95 FAT32 (Data)
/dev/sda4 40.2 Extended
/dev/sda5 12.6 Linux (Trial)
/dev/sda6 3.2 Linux (Trial home)
/dev/sda7 15.9 Linux (Production)
/dev/sda8 5.2 Linux (Production home)
/dev/sda9 3.3 Linux swap / Solaris
/dev/sda2 5.8 Compaq diagnostics (Lenovo Recovery)


Initial Hiccups

I initially tried to install KUbuntu 7.04 ("Feisty Fawn") because Gutsy was still in the RC (Release Candidate) stage. When using the standard Live CD, Feisty would boot up and ask for mode of operation, but wouldn't be able to initialize its X Window System (from which you can install). There is some discussion online about setting the SATA setting to "Compatibility" instead of "HCPI" in the T61's BIOS, but that didn't work for me, so I went ahead with the Gutsy Gibbon RC. Gutsy couldn't initialize its usual X Window System, either, but I followed the advice at:

http://www.thinkwiki.org/wiki/Installing_Ubuntu_7.10_%28Gutsy_Gibbon%29_Release_Candidate_on_a_ThinkPad_T61

and simply selected the "Safe Graphics" option and the rest of the installation was a breeze.

Installation

During installation KUbuntu asks for the name of a user and an admin password. This refers to a special user with sudo privileges, so I avoided my usual username and put in something like "sysadmin". I didn't have any other installation issues.

Startup, Logon and Shutdown

Gutsy is the fastest Linux I've ever seen, even giving Win XP a run for its money. Here are the startup (time to display logon screen), logon (time from display of logon screen to delivering a usable cursor and clickable icons after logon) and shutdown (from a session with no windows open) times of XP and Gutsy on this machine:

Win XP: Startup = 40s, Logon = 30s, Shutdown = 28s.
Gutsy: Startup = 49s, Logon = 19s, Shutdown = 20s.

Adding Packages

The installer installs a basic functional system. I wanted to add more packages. I like the package manager synaptic better than the default, adept. So I installed it using the command "apt-get install synaptic" in a terminal window.

Wi-Fi

Worked out of the box. Knetworkmanager stores the authentication information in the KDE wallet.

Sound

Works out of the box, but the volume up/down buttons don't work properly. Mute works.

Brightness

The brightness controls don't work. The night light works.

3D

The restricted NVIDIA driver is required to enable harware 3D acceleration. Enabling it is a breeze.

Fonts & Appearance

This was the biggest surprise. After getting accustomed to fuzzy, ugly fonts, blunt mouse pointers, and a generally shoddy appearance on Linux for ages, I am now happy to state that Gutsy surpasses Win XP in terms of appearance. Everything is crisp and beautiful. Caveat: Enabling the restricted NVIDIA driver actually diminished the appearance somewhat, with some fonts looking too thin.

Hibernate

This doesn't work very well out of the box. When only one session was active, I recovered from a hibernate once and couldn't another time. When I did recover, Gutsy showed some corrupted screens etc. and then a blank screen; it took me a few seconds to realize I had to move the mouse to get a login dialog. When two sessions were active, Gutsy wouldn't hibernate at all. With Gutsy's amazing boot-up speed, this is less of an issue than on SuSE 10.2, but is still a problem when I'm in the middle of several applications and have to move.

The Mini-Dock

I got a mini-dock with the T61. Gutsy works fine on the mini-dock as long as the T61 is turned off when putting it on or taking it off. If I eject it from the dock while Gutsy is running, the T61 screen stays blank, and I have to do a hard reboot.

Overall Experience

The overall experience is great. The most bothersome Linux issues seem to have disappeared in this distribution. And this is just the release candidate!

There are still some bugs, however. Konqueror doesn't remember its settings properly. Integration between the KDE clipboard and applications like kterm and emacs is quite problematic. Some applications and KDE components crash, especially when switching between multiple X sessions. And a few others.