Ask Klaus!


Klaus Knopper is the creator of Knoppix and co-founder of the LinuxTag expo. He currently works as a teacher, programmer, and consultant. If you have a configuration problem, or if you just want to learn more about how Linux works, send your questions to: klaus@linux-magazine.com

Getting Online

Question:

I'm sorry this is going to be a bit long-winded. You are my last resort before giving up on Linux, waiting for Haiku to come out, and praying that it will do the job.

I have: Elite group GS7610 ultra motherboard, AMD Athlon 3,000MHz CPU, 2GB RAM, and the SIS190 LAN connected to a BT Home Hub, which I cannot change right now. This is a dual-boot Windows XP and Fedora 8 system (if I can solve this problem, I'd love to upgrade to Fedora 10). There is a second PC on the home hub, too.

My problem is that I cannot get onto the Internet fully and cannot find any advice about my problem on the Internet using XP either. Firefox will start up but will not access any websites. It will go to Google, and I can even access my email from Google Mail. But when I do a search and then click on a website or enter a web address, Firefox and all the other web browsers I've tried just hang with the message "waiting for ?... ."

I've previously tried installing Ubuntu, but that collapsed when it tried and failed to get to Ubuntu.com for updates. Debian didn't even find my hard drive. Sabayon had the same issue as Fedora. SUSE would not access the web at all, even though I read that it was a breeze to install and get going. Mandriva took over my PC in the same way Windows does, and I hate that.

I've tried entering the IP addresses by hand and changing various settings as instructed by readers of another magazine, also switching off IPv6 settings and a host of other advice which I've now forgotten.

I'm not a programmer, just a user, and all my favorite software is on Linux, but I can't carry on trying to get updates to it all by using XP and transferring the new programs by USB drive.

Don't get me wrong, if I can get one distro up and running fully, I'd get rid of XP in a flash, but until then I'm stuck with it. Please can you help?

Answer:

The good news is that you are already through the basic network configurations, in that you can retrieve and send email directly or from a web mail server, and your Internet access is working fine, except for one small but unpleasant detail.

The Internet is organized in addresses (IP addresses, at least one for each computer) and network ports, each one representing a service that you can access. For example, WWW is port 80; encrypted WWW is port 443. Apparently, your setup has already managed to get a temporary IP address for your computer as soon as you connect and at least SOME of the destination address/port combinations can be reached directly. Good!

Also, name resolving seems to work (i.e., the computer can find the IP addresses you want to connect to when you type a computer name). Otherwise, the error message would say "cannot resolve hostname" very quickly instead of just dying after awhile.

So, what's missing? The most probable reason (I cannot think of many others except for complicated VPN settings) is that the Internet provider allows DIRECT access only to selected IP addresses and all others are filtered. The reason for this inconvenient behavior might be that the provider has a "whitelist" of Internet addresses that can be contacted directly, and all the rest can be accessed only through a so-called "proxy."

A proxy is a computer on the Internet that runs a service for connection control and web page caching, somewhat speeding up access to web pages and allowing the provider to forbid access to unacceptable content (the provider could be forced by law to fully control web access and have a protocol of everything users try to access in their browser).

Without getting into a political discussion, the technical solution for getting access to websites is just to add the proxy address and port into the Firefox settings, which will give you access to the web via the provider's proxy and also let you exclude sites like Google Mail (which apparently is on the providers whitelist and can be accessed without the proxy).

By the way, you might find the correct proxy address in Internet Explorer's settings. Windows users have reported to me that this setting is located under Tools | Internet Options | LAN settings, and the information there can be entered into the Firefox Settings | Connecting to the Internet setup box.

About various distributions and various levels of hardware support: This story is never-ending. Debian tends to provide well-tested but not very new kernels in its "stable" branch; therefore, SATA hard disk controllers might not be supported out of the box, unless you compile a new kernel on your own. Other distributions can fail because experimental kernels and drivers are too new. I always have to find a good compromise between stability and good hardware support for Knoppix as well.

In theory, any distribution with a recent kernel should support your modem, but the user initiating the dial-out should be in Unix group netdev if you are using network-manager - which is now the default network setup tool in many distributions - to get access to the modem device.

SUSE CD Drive

Question:

I am new to Linux and have just installed SUSE version 11.1 on my Windows XP laptop in a dual-boot setup; however, I am unable to access the CD-ROM drive. Do I need to start an xterm and alter a bit of code, or is there a way to mount the CD drive? I know some commands in Linux (i.e., grep, dev, xfers hal, hda 1, etc.). Any help is appreciated.

Answer:

It might be a permission problem, or just a missing entry in the disk drive configuration file /etc/fstab. Mine looks like the output shown in Listing 1.

Listing 1: /etc/fstab
01 cat /etc/fstab
02 ...
03 # Drive    Location           Filesystem     Options
04 /dev/hdc  /media/cdrom0 udf,iso9660    user,noauto  0  0
05 ...

This output reveals that the Linux device drive is /dev/hdc (the first master drive on the second IDE controller), its content appears at /media/cdrom0 after being mounted, UDF or ISO filesystems are autodetected, and, most important, ANY user (user) is able to mount it, it is just not mounted automatically at boot time (noauto).

With an /etc/fstab entry like this, your file manager (or you, in a shell), can just issue a mount /media/cdrom0 to access the CD-ROM's content at directory /media/cdrom0. If the user is in group plugdev (check with id), the command pmount /dev/hdc will mount the CD under /media/hdc independently from an /etc/fstab entry, provided pmount is installed.

Error Message

Question:

Thanks for all your help in the past. My system is partitioned to Ubuntu (GRUB) Fedora, SUSE, and XP. All was OK the previous evening with a normal shutdown, then SUSE had a kernel upgrade, so I had to go into Ubuntu to edit the menu, except I couldn't get into Ubuntu because of the following error message:

Users $HOME/.dmrd file is being ignored. This prevents the default session and language from being saved. File should be owned by user and have 644 permissions. Users $HOME directory must be owned by user and not writable by others.

I couldn't log in to SUSE in Recovery mode (or whatever it's called) because it wouldn't accept my password. I had a cloned disk for backup so I'm OK, but what happened?

Answer:

The most probable reason (check with ls -ld /home/your_login_name) is that your home directory or files and directories therein do not belong to you anymore. This tends to happen when programs are started as root with graphical sudo programs like gtksu: They try to "fix" insecure permissions because they detect themselves running as root, but being controlled by configuration files belonging to "another user"; therefore, the home directory gets disowned accidentally.

Quick fix: Log in as root in text mode (linux 2 at the boot manager, enter root and root password), then enter:

chown -R your_login_name /home/your_login_name

If /home/your_login_name is a symlink to the real directory in your distribution, use

chown -R your_login_name /home/your_login_name/

instead, with no space before the final slash.

The files in /home/your_login_name should now belong to the correct user again. You might want to find out which program that was called as root in the graphical environment caused the problem, just to avoid this problem happening again at an inconvenient time.

Knoppix MacBook

Question:

I just tried Knoppix 6 on my MacBook Pro. In the GUI mode, the fonts were giant (about 5cm high), and it was impossible to use. I had exactly the same issue with pure:dyne which also now uses LXDE. What should I do to make LXDE usable, bearing in mind that it's hard to use any GUI tools to edit config files because the big fonts make it unusable.

Answer:

I did not find a solution to this yet but tend to think that it is an error in the xorg server, which simply detects and sets the dots-per-inch resolution wrongly. Because I have no Mac for testing, it is kind of difficult to debug, but adding the -dpi 75 option to the startup files has reduced fonts to a readable size in earlier versions.

I will continue to research this.

Old Laptop

Question:

A friend of mine gave me his old HP OmniBook laptop. I've been looking for a distro that would work on it as it has only 64MB of RAM and a 20GB hard drive. It runs Windows 2000 so sluggishly that I decided to try Linux. I tried Xubuntu and it is equally sluggish. Another problem I have is that the CD/DVD player is no longer booting CDs, so I also need your advice on how to install directly from the hard disk. I am thinking of something like the old times when you could install Win95 on top of DOS.

PS: Since my literature has given me no real answer on how to back up my Ubuntu system, a simple answer on your part would suffice, but please let it be a tool that has a simple GUI (no cryptic dd commands), so that I can convince my family and friends to switch to Linux.

Answer:

Running any Linux distro on this notebook could be equally as disappointing as your experience with Windows; therefore, I cannot really make a reliable recommendation.

Because your CD-ROM drive does not seem to be bootable, you would also need a floppy disk with a boot manager (try http://linux.simple.be/tools/sbm) that allows you to switch to the CD in the second stage of the boot process.

Your desired goal of using this old computer kind of contradicts your wish for a GUI because you most likely will need the command line to partition the hard drive for enough swap space before even attempting to start anything with graphics.

With only 64MB of RAM, KDE is out of the question. Although you might get decent speed with the LXDE desktop or something similarly lightweight, you might want to have a first try with Damn Small Linux (http://damnsmalllinux.org/) or Puppy Linux (http://www.puppylinux.org/), the CD-only versions, together with the Smart Boot Manager floppy mentioned above.

For backing up your old system, you might want to use a second hard drive to copy over your own files (not necessarily the entire system, unless you want to keep it), cdbackup if you have a CD writer, or both.

WiFi for Ubuntu

Question:

Do you know of an affordable USB WiFi adapter that has a driver that will work with Ubuntu 8? This is the only thing holding me up from saying goodbye to Windows.

Answer:

Because electronics shop employees don't seem to have the knowledge nowadays, it's unlikely that the salesmen will tell you whether or not a specific chipset is installed in a USB WiFi device. In Linux kernel 2.6.28, many new chipsets are supported, but this does not solve the problem that you never know which chipset is used in a device.

So this is what I would do:

  1. Just buy any cheap USB WiFi adapter.
  1. Plug it in, see if it appears in iwconfig as a wireless device.
  1. Now try to get online via network-manager or the WiFi configuration tool of your distro. Check the output of dmesg: It might or might not tell you that a firmware file is missing. If you see such a message, then you have the choice of trying to get hold of the firmware file and installing it under /lib/hotplug/firmware ... or
  1. Return the WiFi adapter to the store from which you bought it if it does not work and get a refund. You'd do the same thing with Windows hardware that didn't work, wouldn't you?