Welcome to Eric Hameleers (Alien BOB)'s Wiki pages.

If you want to support my work, please consider a small donation:

This is an old revision of the document!

Fixes for annoyances in Slackware

USB scanner and hotplug

When you have a USB scanner attached to your computer when it boots, and the computer uses hotplug to initialize your hardware, you will probably see something similar to the following message:

chown: cannot access `/proc/bus/usb/001/005': No such file or directory
chmod: cannot access `/proc/bus/usb/001/005': No such file or directory

When you plug in your USB scanner after the computer has already booted up, the error does not appear and scanning works for non-root users. It is annoying to have to unplug the scanner before booting in order to be able to scan as a non-root user. Here's a fix.

The problem is due to an error in the /etc/hotplug/usb.rc script, but that can be repaired easily. Look for the following line in /etc/hotplug/usb.rc

devbus=$( ( echo -n 000 ; cat $devlink/../../devnum ) | grep -o ...\$ )

and change that line to

devbus=$( ( echo -n 000`echo $devlink| sed 's/^.*usb\([0-9]\+\)\/.*$/\1/'` ) | grep -o ...\$ )

After this change, either reboot the computer or restart hotplug:

/etc/rc.d/rc.hotplug restart

Now, the correct permissions and ownership are applied to the device file.

Remember to add yourself to the scanner group if you want to use your scanner as a non-root user! You can use the vigr command to add your name to the scanner group, but if you're uncomfortable with directly editing the system files, here is a one-liner to add user 'geek' to group 'scanner' (replace 'geek' with your own account name):

usermod -G $(id -Gn geek | tr ' ' ','),scanner geek

If the group scanner does not exist, simply create it using the command

groupadd scanner

ALSA OSS sequencer not loaded

In Slackware 10.2, the ALSA OSS-compatible sequencer module is not loaded. This results in missing device files /dev/midi and /dev/sequencer.
Edit the file /etc/rc.d/rc.alsa and look for the function

load_alsa_oss_modules() {
  if ! cat /proc/modules | grep -wq snd-pcm-oss ; then
    if ! cat /proc/modules | grep -wq snd_pcm_oss ; then
      echo "Loading OSS compatibility modules for ALSA."
      modprobe snd-pcm-oss
      modprobe snd-mixer-oss

Add the following line after the line modprobe snd-mixer-oss in that function:

      modprobe snd-seq-oss

and restart ALSA.

Using Samba without installing CUPS

In Slackware, CUPS is available as the default printing solution, while the old lprNG remains in the ”/pasture” directory. Some people still prefer the trusted lpr/lpd style of printing and do not install CUPS. However, the Samba package is compiled against the CUPS libraries. Although the necessary CUPS libraries are always installed with the aaa_elflibs package, Samba still periodically complains loudly in the /var/log/messages logfile about the absent CUPS server:

smbd[....]: Unable to connect to CUPS server localhost - Connection refused

The solution (if you don't need a printing facility in Samba) is to disable printing completely. This is what you need to add to the [Global] section of your /etc/samba/smb.conf file:

load printers = no
printing = bsd
printcap name = /dev/null

Where is mkfs.vfat?

FAT32 (also known as vfat) partitions are commonly used on USB sticks, and they are also quite useful when you have a dual-boot system with Windows on a NTFS partition on the “other side”, and want a shared partition where both OS-es can write files.
Now, where did that ”mkfs.vfat” command go, that seems to be available on so many other Linux distributions and is mentioned in lots of Google search results when you try to find out how to format your partition as FAT32 instead of FAT16?

The mkdosfs command aka the mkfs.msdos command (they're the same command, one is symlinked to the other) which by default creates FAT16 (”DOS”) partitions, can create these FAT32 partitions as well!
Run it with the -F32 switch:

mkfs.msdos -F32 /dev/<devicename>

Personal Tools