These are questions people ask me quite often. Hopefully now that
they're answered here that won't be the case.
Most of these questions are old and obsolete, but I leave them in here
because they might give somebody ideas about how to approach similar
problems. Also, you'll notice that several of these aren't even phrased
as questions, but are more like screaming complaints. Hey, I wanted to be
accurate. :^)
At this point (2007), this file is more history than anything else.
Writing a real FAQ remains on the TODO list, mostly because there aren't
many FAQs any more. It seems like every question is different.
Q1: After installation, my ethernet, CD-ROM drive, and/or other hardware
that I thought Linux supported doesn't work. Why?
Q2: Is it possible to install this operating system without a floppy
drive? [It better be, now that floppies won't hold our kernels]
Q3: Now that the N series doesn't fit on floppy disks, how do I get
network support into my laptop?
Q4: Why isn't my Sony CDU-31/33a detected by Linux anymore? It used to
work!
Q5: I can't get the kernel to see a CD-ROM connected to a Soundblaster 16
IDE!
Q6: I can't get the disks made by RAWRITE to boot!
Q7: I was able to install fine, but the installed system won't boot!
Q8: Why do I get "network unreachable" under Slackware?
Q9: Why isn't my UltraStor SCSI detected? It works under DOS!
Q10: If the setup menus for NFS installation don't work, how can I setup
the network manually before starting setup?
Q11: My IBM Thinkpad won't load the rootdisk into a ramdisk correctly, so
I can't install Linux. What can I do?
Q12: My large (> 1/2 gig) IDE drive reports more than 16 heads, and as a
result Linux won't install on it. What can I do?
Q13: How do I make a Slackware bootdisk with this new kernel I made?
Q14: My backspace is acting strangely under X? How can I fix it?
Q15: I just built a new kernel. Now how to I go about replacing my
existing kernel with this new bzImage file?
Q16: Why can't I cut and paste from elvis (vi) in an xterm?
Q17: Why doesn't my bus mouse work? The kernel, selection, the
X server and test-mouse all say "no such device."
Q18: I see my SoundBlaster/Panasonic CD-ROM detected at boot, but I can't
install from it or mount it. What's going on?
Q19: I'm using UMSDOS and would like to use the same swapspace under
Windows and Linux. Can this be done?
Q20: What's the password for root on the install disk?
Q21: How can I install and remove software now that the Slackware Linux
distribution is installed on my machine?
Q22: How do I know what files setup/pkgtool/installpkg is putting where?
Q23: I set my partitions to "Linux native" but Slackware still won't detect
them! What can I do?
Q24: I have a (PS/1 || Valuepoint || Thinkpad), and can't install because
fdisk can't see my hard drive. How can I get around this?
Q25: Why do my /etc/issue and /etc/motd keep resetting themselves at boot
time?
Q26: Emacs dumps core, complains of a missing library, or lacks X11
support!
Q27: Why do my compiles sometimes die with 'signal 11: internal compiler
error'?
Q28: How can I change (or get rid of) the color ls?
Q29: I start X with "startx" and it works OK, but I can't switch virtual
consoles. Why?
Q30: Why can't I use the new ghostscript with X?
Q31: I can't get anything to work at all! What's the deal?
Q32: How do I make a bootdisk that uses a custom kernel?
Q33: When I installed Slackware, the system could see my CD-ROM just
fine. But, when I try to boot using LILO or the bootdisk the system
doesn't find the CD-ROM drive anymore! How can I fix this?
Q34: Can I install using a console on a serial port?
Q35: What does "Bus error" mean?
-----
Q1: After installation, my ethernet, CD-ROM drive, and/or other hardware
that I thought Linux supported doesn't work. Why?
A: Probably because the kernel you're running doesn't contain the
support. To fix the problem, you'll have to install a kernel that
does. There might a suitable kernel in the /kernels directory on the
CD-ROM, or you can compile a custom kernel for your machine. This
isn't too difficult -- see the instructions below about compiling a
new kernel.
You can also try loading the device driver in the form of a kernel
module. There are drivers for nearly all the hardware supported by
Linux in the /modules directory on the CD-ROM, or in your /lib/modules
directory if you've installed the modules.tgz package. Take a look at
your /etc/rc.d/rc.modules file for examples of how to load these.
-----
Q2: Is it possible to install this operating system without a floppy
drive?
A: Yes! And it's not much harder, either.
(NOTE: see rootdisks/install.zip for a new approach to this)
First, you'll need a DOS partition. Install Loadlin in a directory such
as C:\LOADLIN (the Loadlin package is available as a ZIP file in the
kernels/ directory). Once you have Loadlin installed, you'll need to
copy a Linux kernel and a Slackware installer image into the C:\LOADLIN
directory. We'll describe this process next:
You can find many kernels in the kernels/ directory on the CD. The
subdirectories have the same names as the Slackware bootdisks, and
contain the kernel used to make that bootdisk. You might want to refer to
the README files in the bootdisks directory to decide which kernel will
work best for your system. Once you've picked a kernel (bzImage or
bzImage), copy it into the C:\LOADLIN directory. Next, grab the installer
image (named 'initrd.img') from the isolinux directory and copy the file
into your Loadlin directory.
Now, to start the installation process you'll need to boot DOS. If you
run Windows95, restarting the computer in MS-DOS mode is an option on the
Start button menu. (NOTE: If you miss the good-old-days when you got DOS
automatically when you booted your computer and had to type "win" to
actually start Windows, it's easy to fix Windows95 to work that way again.
Edit the file C:\MSDOS.SYS and change where it says BootGUI=1 to read
BootGUI=0)
Once you have DOS started, change into the Loadlin directory and use a
command like this one to start the installation rootdisk:
loadlin zimage rw root=/dev/ram initrd=initrd.img load_ramdisk=1
Usually the installation copies the kernel from the bootdisk, so when you
use this method you'll have to skip that menu, as well as the bootdisk
creation menu. It's also advisable to skip the LILO menu, since the
/vmlinuz will probably not be the one you want. You best bet is to use
Loadlin, since it's gotten you this far. Just edit the LINUX.BAT file to
point to your root Linux partition.
-----
Q3: Now that the N series doesn't fit on floppy disks, how do I get
network support into my laptop?
A: Start by installing the A series. Then, put the tcpip.tgz package
from the N series on a floppy disk. If your kernel doesn't contain
network support, put the netmods.tgz (network kernel modules) package
on another disk. If you need PPP, put the PPP package on there, too.
Then, (after rebooting, not from the setup floppies) run "pkgtool".
Choose the "Install packages from floppy disks" choice, and install
the tcpip1.tgz netmods.tgz, and ppp.tgz packages. Then run netconfig
to set up your network, pppsetup to configure ppp, and edit
/etc/rc.d/rc.modules to load support for your ethernet card. When
you reboot, the machine should be network-capable, and you can proceed
to add more software from there.
-----
Q4: Why isn't my Sony CDU-31/33a detected by Linux anymore? It used to work!
A: From the source code:
+ * WARNING - All autoprobes have been removed from the driver.
+ * You MUST configure the CDU31A via a LILO config
+ * at boot time or in lilo.conf. I have the
+ * following in my lilo.conf:
+ *
+ * append="cdu31a=0x1f88,0,PAS"
+ *
+ * The first number is the I/O base address of the
+ * card. The second is the interrupt (0 means none).
+ * The third should be "PAS" if on a Pro-Audio
+ * spectrum, or nothing if on something else.
You can also use this option with Loadlin:
C:\LOADLIN\LOADLIN C:\LINUX\VMLINUZ root=/dev/hda1 cdu31a=0x1f88,0,PAS
Or, on the bootdisk LILO: prompt. Examples:
LILO: ramdisk cdu31a=0x1f88,0,PAS
LILO: mount root=/dev/sda1 cdu31a=0x1f88,0,PAS ro
-----
Q5: I can't get the kernel to see a CD-ROM connected to a Soundblaster 16 IDE!
A: First, be sure you're using the proper kernel -- the one needed in this
case is the IDE/ATAPI CD-ROM type, not the SBPCD type. Then, if you still
have problems, use the secondary IDE channel (IRQ 15 0x170), and make sure
the drive is set as master (jumper in the back) and not as slave (a common
default).
-----
Q6: I can't get the disks made by RAWRITE to boot!
A: First, check that you're using the right size image. If you use an image
meant for a 1.44 MB floppy on a 1.2 MB floppy (or vice-versa) you'll likely
see the message "LI" and the boot process will hang.
Another possibility is a BIOS problem -- a user has reported to me that
RAWRITE fails on his machine unless he first does "dir a:" on an MS-DOS
floppy. Apparently this is caused by the BIOS improperly initializing
address 0000:0526 (number of sectors) to 11h instead of 12h. Using "dir"
on the device fixes that value. The affected machine in this case was using
"Mr. BIOS" from Unicore Software.
-----
Q7: I was able to install fine, but the installed system won't boot!
A: Slackware uses stripped down kernels to do the actual installation -- in
other words, the kernels don't have any more drivers than needed to control
only the device needed to complete the installation. If you don't install
the bootdisk kernel, it's possible to install with (for example) the bare.i
IDE bootdisk, but install the SCSI kernel from the A series onto your
hard drive. Since this kernel is has many SCSI drivers built-in, this can
lead to hangs at boot time if the kernel misidentifies a piece of hardware
that's unusual or at a non-standard port/IRQ.
When this happens, you need to try a different kernel. First, use the
bootdisk that worked during installation to get your system started. To
do this, boot the disk and enter something like this at the LILO prompt:
mount root=/dev/sda2
(if /dev/sda2 is your root Linux partition, otherwise use the appropriate
device name for your system)
Once you've got the system running, install or compile a different kernel.
Try to include only the device drivers you need for your hardware.
Instructions on compiling the kernel can be found in your kernel source
directory (if you installed the kernel source, that is). The kernel
source is usually found in /usr/src/linux.
Briefly, this is the method for building a new kernel:
cd /usr/src/linux
make menuconfig (then answer the questions about what you need)
make
make modules_install
Your new kernel will be in arch/i386/boot.
If the bzImage is successfully built, see an answer below which explains
how to install it with LILO or Loadlin, or make a new bootdisk from it.
Once you've done that, you might want to clean up /usr/src/linux by cd'ing
into it and doing another 'make clean'.
Good luck! If you can handle this, you're well on your way to becoming a
Linux guru.
-----
Q8: Why do I get "network unreachable" under Slackware?
A: There are a couple of possibilities. For most users, things work right out
of the box. However, if you're running into this problem here are two
workarounds you can try:
1. Reverse the broadcast and netmask arguments (and their variables)
in the call to ifconfig in /etc/rc.d/rc.inet1. Make sure you are
not trying to route your own IP address - you shouldn't have to.
2. Make sure /etc/networks is properly configured.
3. You may want to try the 'netconfig' script.
It's not perfect, but does a pretty good job.
4. Make sure the kernel you're using supports your hardware. Most of the
kernels provided with Slackware include a /boot/config file where you
can look up the compilation options.
-----
Q9: Why the $%#@! isn't my UltraStor SCSI detected? It works under DOS!
A: Set the I/O address to 0x340 instead to 0x330.
For any hardware that doesn't work, a good rule is to try playing around
with the IRQ and I/O settings on it to see what happens. If your system
is up and running and you're having problems with a CD-ROM or tape or
something like this, you can always look around for the driver source in
/usr/src/linux/drivers... really, it won't bite! Often, the source
contains important documentation, such as the default IRQ settings for
that type of device, and the major number for the entry in /dev. Also,
try other bootdisks and see if that helps.
-----
Q10: If the setup menus for NFS installation don't work, how can I setup the
network manually before starting setup?
A: Once your Linux machine is listed in the hosts /etc/exports (if the whole
network is not already), you might need to do these things before running
setup. This is usually only needed if the NFS server is on a different
subnet than your Linux machine:
# Setup the loopback device:
ifconfig lo 127.0.0.1
route add -net 127.0.0.0
# Setup the network:
ifconfig eth0 1.2.3.4 # 1.2.3.4 is the ip number of my machine.
route add -net 1.2.3.0
route add default gw 1.2.3.1 # in this example, the ip address of our NFS
# server is 1.2.31.4 and belongs to a different
# network.
-----
Q11: My IBM Thinkpad won't load the rootdisk into a ramdisk correctly, so I
can't install Linux. What can I do?
A: The disk-changed sensor on some older Thinkpads works a little differently.
This can be worked around -- just specify "floppy=thinkpad" when booting:
boot: ramdisk floppy=thinkpad
... on the bootdisk's LILO prompt.
-----
Q12: My large (> 1/2 gig) IDE drive reports more than 16 heads, and as a
result Linux won't install on it. What can I do?
A: See the file /docs/mini/Large-IDE for instructions on how to make it work.
(Thanks to Bob DiMarco for forwarding this to me, and Patrick LoPresti for
compiling the information in the first place)
Note that newer kernels (> 1.1.40) will do this translation for you
automatically, and thus make the workaround unnecessary.
-----
Q13: How do I make a Slackware bootdisk with this new kernel I made?
A: OK, well you grab an existing one (preferably one of the larger ones
like "scsinet.s"), put it on a floppy, and do this:
mount /dev/fd0 /mnt (this mounts it)
cat bzImage > /mnt/vmlinuz (put the new kernel in place)
rdev -R /mnt/vmlinuz 0 (mount read-write)
rdev /mnt/vmlinuz /dev/fd0u1440 (use that drive, or /dev/fd0h1200)
rdev -r /mnt/vmlinuz 49152 (enable the ramdisk)
lilo -r /mnt (reinstall lilo)
umount /mnt (that's it! you're done! :^)
-----
Q14: My backspace is acting strangely under X? How can I fix it?
A: Well, I've never noticed a real problem, but I occasionally hear
about this. You might want to try adding this to your .Xmodmap in
/usr/X11/lib/X11/xinit or $HOME:
keycode 22 = BackSpace
-----
Q15: I just built a new kernel. Now how to I go about replacing my existing
kernel with this new bzImage file?
A: First, you must prepare the new kernel. If you're using UMSDOS, you'll want
your system to boot read-write. Otherwise, you'll want it to boot read-only
so your filesystems can be safely checked. So, do this:
For UMSDOS:
rdev -R bzImage 0
For any other filesystem type:
rdev -R bzImage 1
Then, you'll need to set the root partition. For example, if your root
Linux partition is /dev/hda2, you'd do this:
rdev bzImage /dev/hda2
Then, you can set a video mode if you like. As an example, this sets normal
80x25 console mode:
rdev -v bzImage -1
Other modes include: -3 = Prompt, -2 = Extended VGA. You might need to
remove a line in your /etc/lilo.conf that forces normal video if you use
LILO and wish to try an extended video mode.
Next, you need to install the kernel. If you boot from a floppy disk, you
can simply stick a formatted floppy into your drive and write the bzImage
to it like this:
cat bzImage > /dev/fd0
If you use lilo, you should copy the bzImage to where your lilo.conf expects
it to be (probably /vmlinuz) and then reinstall lilo. This should work if
you used Slackware's liloconfig script to set up LILO. (this is the script
setup uses)
cp bzImage /vmlinuz ; lilo
You may wish to back up your existing /vmlinuz first.
If you use Loadlin, copy the kernel to your DOS partition where Loadlin can
see it (if you use UMSDOS, you won't need to do this). Then, start Linux
from DOS like this:
c:\loadlin\loadlin.exe c:\linux\vmlinuz root=/dev/hda2
That should do it.
-----
Q16: Why can't I cut and paste from elvis (vi) in an xterm?
A: Later versions of elvis use the mouse for cursor positioning instead. If
you want to cut and paste, hold the left shift key down while you use the
mouse.
-----
Q17: Why doesn't my bus mouse work? The kernel, selection, the
X server and test-mouse all say "no such device."
A: The kernels distributed with Slackware don't have the drivers for
busmice compiled in. Last time I tried to include all of them there
were horrible driver conflicts -- better to leave them out if they
can't coexist. Obviously, it's not feasible for me to provide
versions of every precompiled kernel for each type of busmouse. I
only have a 386. ;^)
(I'm only kidding, As of 3/1999, I'm running a P2-450)
The solution is to load support for your mouse from a kernel module.
Edit /etc/rc.d/rc.modules and uncomment the line for your mouse:
# Mouse support:
#/sbin/modprobe atixlmouse
#/sbin/modprobe busmouse
#/sbin/modprobe msbusmouse
(To uncomment a line in a shell script, you use an editor to remove the
'#' from the start of the line)
-----
Q18: I see my SoundBlaster/Panasonic CD-ROM detected at boot, but I can't
install from it or mount it. What's going on?
A. Try setting to drive's ID to 0. This is expected by the install disks.
There should be a jumper on the back of the drive that selects this --
just move it to the leftmost position.
-----
Q19: I'm using UMSDOS and would like to use the same swapspace under Windows
and Linux. Can this be done?
A: If you want to share a Linux-UMSDOS swapfile with MS-Windows, you can
do the following:
1. Create PERMANENT(!) swap file in MS-Windows with size NNNN kbytes.
2. In /etc/rc.d/rc.local add the following lines:
rm -f /DOS/windows/spart.par
#/sbin/modprobe cdu31a cdu31a_port= cdu31a_irq=
#/sbin/modprobe cm206 cm206=,
#/sbin/modprobe gscd gscd=
#/sbin/modprobe mcd mcd=,
#/sbin/modprobe mcdx mcdx=,
#/sbin/modprobe optcd optcd=
# Below, this last number is "1" for SoundBlaster Pro, or "0" for a clone.
#/sbin/modprobe sbpcd sbpcd=,1
#/sbin/modprobe sonycd535 sonycd535=
#/sbin/modprobe sjcd sjcd=
To use one of these, edit out the '#' in front of the line for your CD-ROM
drive. If you know the I/O address and/or IRQ for your board, fill it in on
the line. For example, you might change the sbpcd line to look like this if
you've got a SoundBlaster CD-ROM at 0x300:
/sbin/modprobe sbpcd sbpcd=0x300,1
If you need to access your CD-ROM drive so that you can get the modules
package installed, use the same bootdisk you installed the system
with to get into your machine. Use a command like this on the LILO prompt,
but replace the root device name with the one you used on your machine:
mount root=/dev/hda1
Once you're logged in, install the modules package:
installpkg /cdrom/slakware/a*/modules.tgz
-----
Q34: Can I install using a console on a serial port?
A: Yes, the bootdisks included with Slackware include support for putting
the system console on a serial port. To do this, you need to use
console=ttyS0 or console=ttyS1 (these examples would be for COM1: and
COM2:) as extra parameters on the bootdisk's boot prompt.
For example, to install using a serial console, you would boot a bootdisk
such as bare.i and wait for it to stop at the boot prompt. Then enter
this to boot the kernel using COM1 as the console:
ramdisk console=ttyS0
To install from a bootable CD-ROM using the serial console, enter the
name of the kernel and serial port to use on the "boot:" prompt:
bare.i console=ttyS0
----
Q35: What does "Bus error" mean?
A: Usually it means your machine has run out of RAM. See if you can set up
some swap space or a swap file -- that should fix the problem.
----
In addition, the LDP people have put out an excellent set of manuals for Linux.
These are available on metalab.unc.edu in /pub/Linux/docs/LDP.
---
Patrick Volkerding
volkerdi@slackware.com