This FAQ (Frequently Asked Questions) list covers
questions often asked in
#slackware on the freenode.net
IRC network.
My reason for writing this FAQ was that a lot of identical questions get
asked in the channel, and
while we try to be a friendly and helpfull place for both new and
experienced Slackware
users, answering the same questions over and over can
get a bit tedious. So I desided to put together this FAQ to give new
users a single place to look
for answers to common questions, as well as providing the more
experienced people with a
place to refer users who ask often answered questions.
The topics covered in this document are mostly Slackware related, but
some cover general Linux
issues as well. Some of the questions answered are very basic and some
are about more advanced topics.
Common for all of them is that they are often asked in #slackware.
I don't currently divide the FAQ into parts, but as the document grows
I'll probably group the
questions into categories to make it easier to find a specific question.
But for now it's just a
single list of all the questions.
I plan to maintain this FAQ and add new information to it as time goes
by in the hope that it will
turn out to be a usefull resource and a good repository of information. I
hope this will turn out to
be one of the first places people will look for answers before asking
questions in the channel.
Unless explicitly noted in a particular answer, the questions and
answers deal with Slackware version 9.
If you know of any other frequently asked questions that this FAQ currently does not contain an answer for, then feel free to contact me with information on the question and the answer and I'll be happy to add it to the document. I can usually be found in the channel using the nickname "juhl". I'm usually in channel for at least a few hours each day, but if I'm not there you can leave a message for me with MemoServ.
Besides this FAQ you are encouraged to take a look at the officialish #slackware rules page so you know what behaviour is expected in channel, thechannel statistics page to see when the channel is most active, and ofcourse the freenode.net Channel Guidelines.
Now let's get on with the FAQ itself.
1) What is Slackware?
Slackware is a Linux
distribution. It is the oldest commercial Linux distribution still in
existance and is primarily maintained by Patrick Volkerding. The
homepage of Slackware Linux is http://www.slackware.com/
where you can find a lot of information on Slackware.
Some of the things that differenciate Slackware from other distributions
is its focus on stability and its non-reliance on automatic tools to
handle administration tasks.
2) Where can I download a specific Slackware
package?
You can download all the individual packages that make up Slackware from
one of the Slackware mirrors listed at http://www.slackware.com/getslack/.
Please use a mirror site close to where you are located to reduce the
bandwith usage on the internet as a whole.
3) Where can I download ISO images for Slackware?
Not all of the mirror sites listed at http://www.slackware.com/getslack/
carry the ISO image. Either look through a few of the mirrors untill
you find one that does carry the ISO or visit http://www.unixfool.com/slack9isolist.shtml
for a list of mirror sites that carry the ISO
maintained by Ron Sinclair.
4) Where can I buy Slackware?
If you want to purchase the official 4CD set of Slackware Linux you
should visit http://store.slackware.com/.
When purchasing the 4CD set you will get
the following CD's :
The downloadable ISO image of Slackware contains only the installation
disk and, due to size constraints, does not include the kernel source
and extra KDE languages (these can be
downloaded ofcourse).
Purchasing the CD set is a great way to support the development of
Slackware and will save you a lot of download time, and the Live CD is
really great both as a rescue disk and as an easy way
of showing off Slackware to your friends.
5) Why can't my PC boot the install CD?
There can be two reasons for this. Either you have an older PC that does
not support booting from CD-ROM. Or maybe your hardware does not agree
with the SYSLINUX/ISOLINUX bootloader used on the
CD. For more info on SYSLINUX go to http://syslinux.zytor.com/
where you can read about common problems and hardware compatibility
issues with
SYSLINUX.
You can also try using the sbootmgr.dsk floppy disk
image. It can be found in the rootdisks/ directory.
Write it to a floppy like you would any disk image (see question
6) and boot it - you'll be given a menu where you can then
select the CD-ROM drive as your boot device. That works for some people
who can't boot the CD directly, and it will save you
the trouble of creating 3 floppy disks for a floppy install.
Even if your system cannot boot the CD-ROM at all, you can still install
Slackware by using 3 floppy disks to start the installation program -
see question
6 for more info on this.
6) How can I start the install using floppies
To start the Slackware Linux installation using floppy disks you'll need
to obtain one boot disk image and two root disk images (this is
for Slackware 9.0, other Slackware versions use a
different number of root disks. Check the documentation included in the
root directory of your Slackware CD-ROM for information on what disks to
use).
First you need to choose what bootdisk to use. The default one to use is
the bare.i bootdisk - this is a bootdisk suitable for
systems that use IDE disk drives. For systems with SCSI
disks you want to choose one of the SCSI boot disks, common choices are scsi.s,
scsi2.s or adaptec.s depending on what
SCSI controller you have. There are also boot
disks for low-memory machines and machines that require the use of
special filesystems or use RAID controllers - most people will be using
the bare.i bootdisk. A detailed description of all the
bootdisks, along with the disk images
themselves, can be found in the README.TXT file inside the bootdisks/
directory on the Slackware CD-ROM (or in the bootdisks/
directory on a slackware mirror site - see question
2). The floppy images you need for the root disks can be
found in the rootdisks/ directory on the Slackware CD and on
Slackware mirror sites. The names of the two root disk images
you need are install.1 and install.2.
Soo, now you have the disk images you need, but how do you write them to
actual floppy disks so you can use them? Well, that's a fairly simple
procedure but it is different depending on what
Operating System you are currently using. If you are running Windows,
then you should use the RAWRITE.EXE program from a DOS prompt - RAWRITE
will prompt you for the disk image you want to
write and ask you what floppy drive to write it to (experience has shown
that doing a normal format of the floppy disk first to ensure that it
is OK is usually a good idea). If you are using
Linux to create the floppy disks, then you can use the dd
program to create the disks - a command such as dd if=bare.i
of=/dev/fd0 bs=512 will create the bare.i bootdisk.
Repeat the procedure for the install disks.
When you have all 3 disk images written to sepperate floppies, reboot
the machine with the bootdisk in the floppy drive. After loading the
kernel you will be prompted to insert the first root
disk, insert the install.1 disk and press ENTER, after
a little while you'll be prompter for the second disk, insert the
insert the install.2 disk and press ENTER, after
the install.2 disk is loaded you are presented with an login:
prompt and instructions on how to continue the install. From this point
on the install procedure is identical to if you
had booted from the install CD-ROM.
7) The kernel source is not included on the
downloadable ISO image. Where can I get it?
The kernel source package is not included on the downloadable Slackware
ISO (it is included on the purchased CD's though).
This is not a big problem
since the kernel source package can be downloaded from any Slackware
mirror site - it can be found in the k/ sub-directory of
the slackware/ directory. See question
2 for info on where to find mirror sites.
Once you have downloaded the package you can install it with Slackwares installpkg
tool like this: installpkg kernel-source-2.4.20-noarch-5.tgz
(note: the package
name may be different if upgrades or the package are released).
8) The international language packages for KDE
are not included on the downloadable ISO image. Where can I get them?
The KDE
language support packages for languages besides English are not
included on the downloadable Slackware ISO (they are
included on the purchased CD's though). This is not a big
problem
since they can be downloaded from any Slackware mirror site - they can
be found in the kdei/ sub-directory of the slackware/
directory. See question
2 for info on where to find mirror sites.
Once you have downloaded the package for the language of your choice,
you can install it with Slackwares installpkg tool like
this: installpkg kde-i18n-da-3.1-noarch-1.tgz (note:
the package
name will be different depending on what language you choose).
9) How do I install a Slackware package?
The most common way to install a Slackware package is to use the installpkg
script provided with Slackware. installpkg will extract
the package to the correct location and
write a log entry in /var/log/packages/ on your system
that you can later refer to for details on the what the package
contained. To install a package named
kernel-source-2.4.20-noarch-5.tgz you'd simply enter installpkg
kernel-source-2.4.20-noarch-5.tgz at a shell prompt as the root
user. Another option is to use the pkgtool script
which is a menu driven interface. More information on Slackwares package
tools can be found in the man pages - simply type man
installpkg in a shell to read the manual for
installpkg. You can also read more on package tools at http://www.slackware.com/book/index.php?source=c3984.html
and http://www.userlocal.com/articles/slackwaretools.php.
Refer to questions 10,
11,
12,
13
and 15
for further details on package management.
10) How do I uninstall a Slackware package?
You normally use the removepkg script provided by
Slackware. To remove the kernel-source-2.4.20-noarch-5.tgz
for example, you'd enter the command removepkg
kernel-source-2.4.20-noarch-5 as the root
user. This will remove all traces of the package from your system,
except for files that overlap with other packages, such files will be
retained and will only be removed when the last package they are shared
between is removed. The pkgtool script provides an
alternative interface for package removal.
Refer to questions 9,
11,
12,
13
and 15
for further details on package management.
11) How do I upgrade an already installed
package with a newer one?
To upgrade already installed packages you use Slackwares upgradepkg
script. The most common usage is to simply specify the name of the new
package on the commandline and
upgradepkg will then locate the older version of the
package and upgrade it. As an example, let's say that a package by the
name of sendmail-8.12.8-i386-1 is currently installed,
and a new
package by the name sendmail-8.12.9-i386-1 has been made
available. To upgrade the old sendmail package you'd download the new
and updated sendmail-8.12.9-i386-1.tgz package
file and then run the command upgradepkg
sendmail-8.12.9-i386-1.tgz as root. If a
package you wish to upgrade does not follow the standard slackware
package naming scheeme,
then you can explicitly specify what currently installed package to
upgrade with what explicitly named file - to do that you run upgradepkg
like this: upgradepkg
oldpackagename%newpackagename as the root user.
Refer to question
8 and question
10 for further information on the package tools.
Refer to questions 9,
10,
12,
13
and 15
for further details on package management.
12) How can I see what packages are installed on
my system?
Details on all installed packages are kept in the /var/log/packages/
directory. You can simply use the ls command to view
the list of files in that directory - there's one
file for each package and the file is named the same as the installed
package and each file contains a description of the package and a list
of all files in that package. Another option is to
use pkgtool which provides a menu based system to view
details on packages (it does this by reading the files in /var/log/packages/
for you).
13) How can I see what files are contained in a
package and how can I find the package that installed a certain file?
The easiest way is to use the grep command to look for
the name of the file in question inside the package logs in the /var/log/packages/
directory. As an example, if you
wanted to find the package that installed the /sbin/fdisk
file, then running a command like grep "sbin/fdisk"
/var/log/packages/* would quickly tell you that that file came
from the util-linux-2.11z-i386-1 package.
14) Are all downloadable .tgz files Slackware
packages?
No. Allthough Slackware uses files created by the tar
program, compresses them with gzip and names the
resulting file with a .tgz extension, that does not
mean
that all files with that extension are Slackware packages. .tgz
files (often also named .tar.gz) are
simply archive files that can in theory contain anything.
Slackware packages are simple tar archives that in
addition to the files to be installed also contain a few scripts to
re-create symbolic links, do post-installation configuration and
similar things, but most .tgz files you find on the
internet will not be slackware packages. Most likely most files
with that extension you find on the internet will be
archives of source code for programs that needs to be compiled before
they can be used. The safest assumption you can make is that unless
explicitly noted, a .tgz file is most likely
not a Slackware package unless it came from a Slackware mirror
site (see question
2) or from a site like http://www.linuxpackages.net/
that creates Slackware packages of a wide range of programs and makes
them available for download.
15) I've downloaded the source code for a
program. How can I create a Slackware package from it?
First of all you'll need to compile the program according to the
instructions that the author of the program supplied. This will be
different from program to program, so no detaild instructions
can be given here, but most likely you'll find a README or INSTALL file
packaged with the source code that will tell you what to do.
Once you have compiled the program you can use either Slackwares default
makepkg script to create a package or a tools such as checkinstall
that can be found in the
extra/ directory on a Slackware mirror site (see question
2) or downloaded from http://asic-linux.com.mx/~izto/checkinstall/.
I would recommend you to try checkinstall since most
people find it a lot easier
to use than makepkg. Detailed instructions on how to use
makepkg can be found at the sites linked to in question
9 or in the man page for the
program. Detailed instructions on the usage of checkinstall
can be found in the README
file supplied with the program.
16) What partitions do I need to create for
Slackware before starting the setup program?
Before starting the setup program in order to install
Slackware you need to create the partitions for it with either fdisk
or cfdisk. Slackware can get by with just a
single partition (of partition type 83), but most people
create at least two partitions; one for the system itself and one to use
as a swap partition (of partition type
82).
You can create as many additional partitions as you like (using a
combination of primary and extended partitions), and each sepperate
partition can be assigned to hold a specific part of the
directory tree during the install procedure.
17) What filesystem type should I choose when
formating my Slackware partitions?
What filesystem you choose is up to you. Slackware can be installed on
ext3, ReiserFS, xfs and jfs (the last two requireing the use of
special bootdisks if you boot from floppy).
Each of these filesystems have different characteristics; some support
larger files than others, some have better performance for lots of small
files than others, and there are lots of other
differences as well - they can all function as a basic Linux filesystem
though.
Which one you choose depends
on what features you need from your filesystem. Since you are reading
this FAQ entry I assume that you are not familliar with the different
filesystems and would therefor like a recommandation
on what the "safe" choices are. My recommendation would be that you use
either the ext3 filesystem or the ReiserFS filesystem - both are well
known filesystems, so you'll be able to
get help from a lot of people if you run into trouble. Of those two I
would personally lean towards recommending the ext3 filesystem sice it
is based on the older ext2 filesystem which is an
old workhorse in the land of Linux filesystems. Ext3 is a very stable fs
with good support tools, so it's definately a safe choice. ReiserFS
also has a good reputation, but I do not have enough
experience with it to say much about it. XFS and JFS are releatively new
filesystems in the Linux world and as such they are not as well known
by people as ext3 and ReiserFS.
If you just want a safe choice, go with ext3 or ReiserFS. If you want to
experiment with some of the features of XFS or JFS then use those, but I
recommend you read up on the features and
drawbacks of each of the filesystems before trying anything but ext3 or
ReiserFS.
18) Can I use a swap file with slackware instead
of a swap partition?
Yes, you can use a swap file (or several files) instead of one or more
swap partitions, but the setup program will only set up
the use of a swap partition during the installation, so
if you wish to use swap files you need to configure that manually after
the install is complete. You can even use a swap partition and add
additional swap space in the form of swap files at a
later time (swap partitions are generally prefered over swap
files since they are slightly faster - this is scheduled to change with
the 2.6.x Linux kernel though, and at that time both
should be equally fast).
So, how do you create and use a swap file? Well, it is actually not very
difficult. First you need to create a new file of the appropriate size,
you can use the dd program for this. To
create a file of roughly 128MB size for use as a swap file, run a
command like this: dd if=/dev/zero of=/swapfile bs=1024
count=128000 this creates a new 128MB file filled with
zeroes named swapfile located in the root (/)
of the filesystem. To prepare this file for use as a swap file you need
to run the mkswap program on it like this:
mkswap /swapfile
You now have a properly prepared swap file that can be activated by
running swapon /swapfile and deactivated by running swapoff
/swapfile that was not so difficult, was
it?
Since you probably don't want to have to activate and deactivate your
swap space manually every time you start and stop your computer, the
final step is to tell Slackware to do that for you.
It makes sense to activate the swap file as early on in the boot process
as possible so it will be available to any programs started dduring
bootup that might need it. The very first user
editable script that runs when the system boots is /etc/rc.d/rc.S,
so activating our swap file in that file seems like a good choice. When
you look inside the /etc/rc.d/rc.S
file you'll see that this is also where any swap partitions are
activated. The swap partitions are activated by a line in rc.S
that reads /sbin/swapon -a (you need to
use the full path to any programs you run in rc files
since no default PATH has been established yet). To activate
your swap file at boot, simply add a line that reads
/sbin/swapon /swapfile right after the line that
activates the swap partitions.
Now your swap partition is activated every time you boot, but what about
when you shut the system down, what happens then? Wel, it turns out
that the scripts that run at system shutdown and
reboot (/etc/rc.d/rc.0 and /etc/rc.d/rc.6)
already contain the appropriate command to turn off any swap - both
swap partitions and any active swap files, so you
don't need to deal with that explicitly. The command that is run from
the shutdown scripts is /sbin/swapoff -a.
19) How much swap space should I use for my
Slackware Linux system?
How much swap you need largely depends on how much physical RAM you have
in your machine and what programs you are planning to run, so it's hard
to give a definate answer to this question. A
few general guidelines can be provided though.
First of all you should always have some swap space availabel,
since the Linux kernel may sometimes want to swap out bits and pieces
that are not much used, even if there is still memory
available. Secondly, the more RAM you have the less swap you probably
need. A good rule of thumb is to create somewhere in the range of 1.0 -
2.5 times your physical RAM size as swap. As an
absolutely bare minimum you must have at least
16MB total memory (RAM + Swap) available, but most newer machines
easily meet this requirement. I would personally say
that if you have less than or equal to 64MB of RAM you should create
enough swap to give you more than or equal to 128MB total.
To give you a real life example, my desktop machine at home has 512MB
RAM and 768MB swap space. It rarely uses the swap, but sometimes if I'm
rebuilding the kernel and rebuilding KDE from CVS
and at the same time doing some web surfing and listening to music while
also having lots of other programs open (and this is not an uncommon
case for me), then quite a large amount of that
swap does get used.
I would not recommend creating less swap than you have physical RAM
unless you know exactely what programs you are going to run and what
your memory requirements are, or unless you have a good
understanding of how Linux uses virtual memory (but then you
probably wouldn't be reading this question anyway, and would know
exactely how much swap you wanted and why).
20) Can I dualboot Slackware and Windows (or
Slackware and another Linux distribution), and how?
Yes, you can. The bootloader (LILO)
that slackware uses has no problem dealing with several installed
Operating Systems. To configure dualbooting you can either use the
Expert LILO Setup during installation
to tell LILO about your other Operating Systems. You can also use the liloconfig
script that Slackware provides if you wish to configure dualbooting or
change your LILO config at a later date, or you can simply
edit LILO's /etc/lilo.conf configuration file manually with
your favorite text editor - if you edit the configuration manually then
remember to run /sbin/lilo after you've made your changes in
order
to activate them.
This is a rather long section, but please read through all of it before
modifying your LILO configuration, some options you may want to use are
mentioned at the end, and several important bits of info are mentioned
throughout the answer - read it all even if you think your
answer has been answered by the first few sections.
To set up dualbooting with LILO there are a few things you should know
beforehand. First of all you should know what partitions hold your root (/)
linux filesystem and if you use a sepperate partition for
/boot then you also need to know what partition this is. For
your Windows installation you need to know what partition holds the main
Windows install (the partition that is your Windows C: drive).
I will now give you an example of how to configure dualboot between a
Windows installation and a Slackware installation, first using liloconfig
and then I'll show an example of what the
/etc/lilo.config file looks like for this setup. Finally I'll
tell you a few additional tricks that may be needed on some systems with
unusual setups or older hardware.
To start the menu based LILO configuration, enter liloconfig in a shell as the root user. You will be asked if you want to use the "simple" or "expert" setup option. If you choose to use the simple option then you'll only be asked the most basic questions and the script will attempt to guess the rest - since this will only attempt to setup LILO for booting your Slackware system and will not create a dualboot configuration we want to use the expert option.
After selecting the expert option you are given a list of options to
choose from - the first thing you do is to select the "Begin" option to
start a
brand new LILO configuration. When selecting Begin you are first asked
if you want to pass any additional parameters to the Linux kernel at
boot time. For most people no parameters are needed and you can simply
press
Enter on a blank line. If you use things like IDE CD writers,
certain Network Interface Cards, older IBM Thinkpads with non-standard
floppy drives and some other things, then you may need to pass some
options
for those to work properly, but a description of all possible boot
options is outside the scope of this FAQ entry.
After entering needed kernel parameters (or simply pressing Enter.
You are then asked if you want to use the framebuffer console for high
resolution graphics in the standard text mode console - if you are not
sure your hardware
supports this (most machines do), then select the "standard" option
otherwhise choose a the graphical resolution you'd like to use. Only
choose resolutions you are 100% sure your system can support, if you
select an unsupported resolution you won't be able to read your screen
next time you boot. If you are unsure, select the safe standard option
and experiment with the framebuffer console at a later point when you
have a
known good configuration you can fall back on.
Next you are asked where to install the LILO bootloader. Your 3 options
are "Root" (to install to the superblock), "Floppy" (to
use a floppy disk to boot from) or
"MBR" (to install LILO to the Master Boot Record). Most
people will want to select the MBR option and thus install LILO as their
primary and only bootloader (if you are worried by the fact that
the MBR option is listed as "possibly unsafe", then read question
42 for more information on that and the reasons why you probably
don't need to worry). I'll assume you choose the MBR
option.
You are then asked to confirm the location that LILO will be installed
to. The proper location is the disk that your BIOS will boot when you
turn on your computer - for most IDE based systems this will be
/dev/hda and for most SCSI based systems it will be /dev/sda.
If you know yor machine boots a different disk and this is not the one
auto detected by liloconfig then correct the listed
device.
Finally you need to specify the timeout you want LILO to use before
automatically booting your primary OS (primary OS being defined
as the first OS you tell LILO about later). Since we are setting
up a
dualboot system we don't want to use the "None" option since we then
wouldn't have time to select between our different operating systems. We
want LILO to present a menu either for a short while (5 or 30
seconds) or indefinately untill we make a choice (to do
this
select the "Forever" option). Once you've made your timeout
selection you are returned to the main menu of the expert lilo
configuration.
Now we are almost done, we only need to tell LILO about the different
Operating Systems we want to be able to choose from. One important fact
to note is that the first OS you add will be LILO's default - this is
the OS
that will be listed first in the boot menu and the one that will be
booted after the timeout (if any) expires. I'll assume
that you want Linux as your default OS, so select the "Linux" option
from the menu.
When you select the Linux option from the menu, liloconfig
presents you with a list of known Linux partitions on your system. If
you have more than one (either because you have several different
Linux
distributions installeed or because you simply have several partitions
for various directories) you need to choose the one that holds
the root filesystem (/) for the Linux installation you wish to
boot.
Enter the name of the partition into the input box (an example
could be /dev/hda2 for an IDE system or /dev/sda3 for a
SCSI system, but it will ofcourse depend on how you have partitioned
your
disk). Next you need to select a name for this boot option. The
name needs to be a single word - names such as "Slackware" or "Linux"
would be good choices.
Back in the main menu again you now need to tell LILO about your Windows
installation. You do this by selecting the "DOS" option (LILO
makes no distinction between Windows and DOS and can boot both in
the same way).
After selecting the DOS option you are presented with a list of possible
DOS/Windows partitions to boot. Simply type in the name of the correct
one just like you did with the Linux partition(s).
The new Windows boot option also needs a descriptive name, just like the
Linux option did. Enter some descriptive single-word label like
"Windows" or anything else you find suitable.
You should now be back in the main expert menu, and the only thing left to do (unless you wish to add additional boot options) is to select the "Install" menu option. Selecting Install installs the LILO loader with the configuration options you have just made, and assuming no errors occured you are then returned to the root prompt of your system and should now be able to reboot the machine and see a boot menu that lets you select either Linux or Windows as boot options. Enjoy your dualboot system.
Ofcourse the menu based interface for configuring LILO does not suit
everyone. First of all you may have a setup that can not be adequately
represented through the available menu options in liloconfig or
you
may have some old or troublesome hardware that requires specific options
to LILO in order to boot correctly. These are the situations where you
want to edit /etc/lilo.conf manually to give a detailed
description of your setup and add extra options to LILO that are needed
for your system to boot.
First I'll show you an example config file generated by liloconfig.
This config uses the standard text mode and boots one Linux and one
Windows partition and installs LILO to the MBR(I have removed
comments and blank lines to save
space, and depending on whether your initial config came from a
different liloconfig version than mine or was initially created
with the "simple" option it may contain a few other lines as well)
:
boot = /dev/hda prompt timeout = 300 vga = normal image = /boot/vmlinuz root = /dev/hda2 label = Linux read-only other = /dev/hda1 label = Windows table = /dev/hda
The most common changes I've helped people make to this default
configuration when they where having trouble with LILO are: fist ensure
that LILO installs to the MBR by verifying the boot = line
refers to a
disk (as it does above with /dev/hda) and not a partition such
as /dev/hda2 or similar which would cause LILO to go to the
superblock (see question
42).
I usually also tell people to add a line reading lba32 to the
very top of the file, since this is needed on older machines to boot
Linux partitions where the kernel is located at cylinder 1024 or higher
and it does no harm for other machines so it's a safe foolproof addition
(well, if your system is pre-1998, then you may have to use
other options such as "geometric" or "linear", but that's
outsidde the scope of this FAQ entry - "lba32" is usually the best bet
if your system can't find the kernel or you get weird errors or strange
lines of 010101, or lilo stops at LI or similar).
If you are in a situation where Windows is not installed on the first
disk on your system, then you most likely need to tell LILO to swap your
drives around when booting Windows. This is becourse Windows expects to
be
installed on the C: drive, and if it is on some other drive
than the first one then it will not be on C: (yes, I
find this behaviour a bit silly as well). Luckily it is quite
easy to
accomodate this Windows excentricity in LILO, simply use the "map-drive"
feature of LILO to tell it what drives to swap when booting the Windows
option. Let's say we have windows installed on the first
partition of the second IDE disk in the system (/dev/hdb1
in Linux terms) and Linux on the first partition of the first
disk (/dev/hda1), then we want to swap the first
two drives in the system when booting Windows. To do that, add these few
lines to the Windows section of your /etc/lilo.conf file :
map-drive=0x80 to=0x81 map-drive=0x81 to=0x80
And remember to change the table = line in the Windows section to point to the proper disk. You probably also want to make sure you have a set of lines like these :
change-rules reset
to prevent lilo from using a default set of rules that may make changes
to your partition table (the "simple" lilo setup adds those by default,
but "expert" does not.
The entire file could end up looking like this :
lba32
boot = /dev/hda
prompt
timeout = 300
change-rules
reset
vga = normal
image = /boot/vmlinuz
root = /dev/hda1
label = Linux
read-only
other = /dev/hdb1
label = Windows
table = /dev/hdb
map-drive=0x80
to=0x81
map-drive=0x81
to=0x80
Now all you need to do is run /sbin/lilo to install the
bootloader with the modified config file.
Since modifying your bootloader could result in an unbootable system I
urge you to read up on any configuration options you plan to use (the
man pages for lilo and lilo.conf contain
lots of valuable information, and so does the LILO README file in /usr/doc/lilo-22.4.1/).
Also make sure you have an emergency boot disk available for all
Operating Systems
installed on your machine. And as always make sure you have backups of
important data before modifying system configurations - especially
things that deal with your bootloader and partition layout etc.
It is also important to note that some Operating Systems will not
work correctly with LILO as the primary bootloader - WindowsNT 4.0 is
the most prominent example of this (I have personally set up
Linux/Windows dualbooting with LILO in the MBR with the following
Windows versions, so those should not usually be a problem: Windows98,
WindowsME, Windows2000, WindowsXP). For OS's such as WinNT4 that
don't
like LILO taking over the MBR there are other options involving keeping
LILO in the superblock of the root linux filesystem and then having the
NT loader boot that, or by using the LOADLIN.EXE program. That procedure
is quite well described in the Dual
Booting section of Slackware Linux Essentials, so I won't repeat it
here.
Questions 39,
40,
41,
42
and 43
contain additional information you will probably find relevant.
21) How do I configure my NIC (Network
Interface Card) in Slackware?
The standard way to do this is to run the netconfig script. netconfig
will ask you several questions regarding your network configuration,
such as your host/domain-name, whether you want to use DHCP (Dynamic
Host
Configuration Protocol) to automatically get an IP address,
gateway etc assigned from a DHCP server (many routers typically
used with SDSL or ADSL internet connections can act as DHCP servers)
or
if you'd rather use a static IP address. If you choose a static address
you'll then be prompted for information on what subnet mask to use, the
default gateway, nameservers to use etc. At the end of the process
netconfig will let you select a driver for your card or it can
attempt to auto-detect it by attempting to load all available drivers
untill one loads successfully. In most cases with newer NIC's, probing
for the
card works fine, but some (especially older) cards will require you to
select the driver manually. The end result of running netconfig
is that it writes an init script file for you that will then configure
your
NIC at boot time, and another to load the proper driver - the files it
creates are /etc/rc.d/rc.inet1 and /etc/rc.d/rc.netdevice.
Be careful if you have already manually tweaked these files, since
running netconfig will overwrite them.
If you prefer to configure networking manually instead of using netconfig,
then you can simply edit /etc/rc.d/rc.inet1 and /etc/rc.d/rc.netdevice
by hand using your favorite text editor. The
files contain lots of comments and are resonably self explanatory. An
example is also provided for adding additional NIC's - something that
netconfig won't do for you.
After either running netconfig or manually editing /etc/rc.d/rc.netdevice
and /etc/rc.d/rc.inet1 you will need to run the scripts in
order for your new network settings to be active. To run
the scripts simply do sh /etc/rc.d/rc.netdevice ; sh
/etc/rc.d/rc.inet1 . If you manually edited the files you should
then also remember to mark them executable so they will automatically
run at boot time. To make the scripts executable
use a command such as chmod +x /etc/rc.d/rc.inet1
/etc/rc.d/rc.netdevice
All changes to the network setup needs to be performed as the root user.
22) How do I configure several NIC's in
Slackware?
You need to manually edit /etc/rc.d/rc.netdevice and /etc/rc.d/rc.inet1
and add the driver(s) and settings for your additional NIC's. The exact
details can be found as part of the answer for question
21.
23) How can I create a firewall script that
Slackware will run at boot?
Slackwares init scripts are by default set up to run a script called /etc/rc.d/rc.firewall
if one exists and is executable. To create a new empty, executable file
you can start adding iptables rules to you can
use this command line touch /etc/rc.d/rc.firewall && chmod
+x /etc/rc.d/rc.firewall
What rules to add and the general usage of the iptables
firewall is outside the scope of this FAQ entry.
24) Does Slackware use SysV init or BSD init,
and where are the init scripts?
Slackware uses a BSD init setup, and all the init scripts are kept in
the /etc/rc.d/ directory. This is different to the SysV init
setup that most other distributions use with a sepperate rc[0-6].d
directory
for each runlevel and a sepperate Start and Kill script for each
service. Slackware can support SysV init scripts should you care to use
them. Simply create the proper directories /etc/rc.d/init.d and
/etc/rc.d/rc0.d through /etc/rc.d/rc6.d and make the /etc/rc.d/rc.sysvinit
script executable, then place your SysV init scripts in the appropriate
directories and then will get run properly by
rc.sysvinit.
25) I just booted Slackware and it starts in
text/console mode. How can I make it start X by default?
This is a matter of changing the default system runlevel from 3 to 4.
Slackware by default starts up in runlevel 3 (console based multiuser
mode). Runlevel 4 (X11 with KDM/GDM/XDM (session managers)) can be set
as the
default runlevel if you prefer your system to start X by default and
provide a graphical login. To change the default system runlevel edit
the file /etc/inittab - in there you'll find a line that looks
like
id:3:initdefault: simply change that to read id:4:initdefault:
and the next time you boot you will see a graphical login. Make sure to
test your X setup first before changing the default
runlevel.
If you just want to test runlevel 4 before switching to it, then enter
the command telinit 4 to tell the system that it should
temporarily change runlevel to 4 - then you can see what would happen if
you made
it the default runlevel - to get back to the previous runlevel 3, open
up a console in X and run telinit 3.
26) I want to change the Desktop Environment /
Window Manager that runs when I type startx. How do I do
that?
Simply run the xwmconfig script and select the Window Manager /
Desktop Environment you wish to use.
If you prefer to edit configuration files directly, then you want to
take a look in the /etc/X11/xinit/ directory. The file
governing what environment starts after the X server itself is loaded is
called
xinitrc. /etc/X11/xinit/xinitrc is, in the default
Slackware installation, a symbolic link pointing to an environment
specific file in the same directory. The job that xwmconfig
does for you
is simply to update the symlink to point to the proper file. In case you
install a new Window Manager from source or otherwhise that xwmconfig
does not know about, then simply create a proper file inside
/etc/X11/xinit/ and point the /etc/X11/xinit/xinitrc
symlink at it.
27) I want to change the graphical login manager
used by Slackware when booting runlevel 4. How do I do that?
You need to edit the file /etc/rc.d/rc.4 since this is the file
that starts the graphical login manager for X. The script by default
contains code to load either gdm (GNOME's login manager),
kdm (KDE's login manager) and xdm (the default XFree86
login manager). The code in the scripts checks for the presense of each
of the login managers and uses the first one it finds, so to change the
one your system uses, either re-arrange the order of the checks to put
your prefered login manager first or simply uninstall or rename the
login managers you don't want or remove the code that checks for the
unwanted
program(s).
28) I have an NVidia graphics card and want to
use NVidias binary drivers. How can I install them on Slackware?
To install NVidias
Linux driver for their graphics cards (which provides vastly
improved performance over the default XFree86 driver) then you
simply need to download
the driver installer from NVidias
driver download page, run the installer as root (make sure
you are not running X while doing this), then edit your XFree86
configuration file /etc/X11/XF86Config as per the instructions
NVidia kindly supplies in their README file. The biggest pitfall is
probably that the NVidia driver does not ship with a pre-build kernel
module
for the Slackware kernel, so it needs to build one when you run the
installer. The installer takes care of this all by itself, but it needs a
few tools available (the GCC compiler and the make utility) as
well as the Linux kernel source (which does not ship
on the downloadable Slackware ISO image). So, before attempting to run
NVidias driver installer you should download and install the Slackware
kernel source package (see questions 2
& 7
for info on this) and make sure you have the gcc
compiler installed.
29) I have an old version of Slackware
installed, how do I upgrade it?
Detailed upgrade instructions are provided in the UPGRADE.TXT
document that you can find in the root directory of your Slackware
CD-ROM or on a Slackware mirror site. Upgrading is possible, but it's a
manual
procedure and can be a bit tricky for new users - so read the
instructions carefully and make sure you have up-to-date backups of any
important files. Many people prefer to simply backup their data (or keep
their user
data on a sepperate partition) and re-format and re-install. No matter
if you upgrade or reinstall, make sure you have backups of important
files in case something goes wrong.
30) There are no Slackware packages of
OpenOffice available, how can I install it in Slackware?
No, OpenOffice.org
does not ship as a Slackware package, but the setup program
included in the downloadable OpenOffice distribution works just
fine for
installing and removing the program on a Slackware system. It won't show
up in pkgtool, but appart from that little detail it works
perfectly. If you really want to you should be able to create a a
slackware
package yourself with makepkg after the install, then remove
the program and re-installing it with your package, or you could try
using checkinstall to monitor the installation and generate a
pacckage.
But there really is no great need.
31) I am trying to run Samba but it refuses to
start and complains about the port already being in use - why?
You are probably trying to run Samba both as a standalone daemon started
from /etc/rc.d/rc.samba and through inetd
by having it enabled in /etc/inetd.conf. You can
only run Samba standalone (fastest way to run it, good for many clients)
or from inetd (lower resource usage, but slower, good
for rare uses but bad for a real server) - you can't do
both at the same time.
If you want to run Samba standalone (probably what you want), then make
sure the following two lines are commented out (start with a "#"
character) in /etc/inetd.conf :
netbios-ssn stream tcp nowait root /usr/sbin/smbd smbd netbios-ns dgram udp wait root /usr/sbin/nmbd nmbd
After commenting out those two lines, restart inetd by
running killall -HUP inetd as root.
If what you want is to run from inetd, then make sure
the two lines in /etc/inetd.conf are not commented out
(that is they do look like above), and again restart
inetd. Then make sure the rc.sambascript
does not run at boot by executing chmod -x /etc/rc.d/rc.samba
as root.
32) I don't like hand editing config files. Are
there any graphical administration programs for Slackware?
No. Appart from the few scripts to configure networking (netconfig,
PPP connections to the internet (pppsetup) and the package
management tool (pkgtool) Slackware does not use graphical
administration tools (and most people like it that way).
If you are hell-bend on using a GUI to manage your Slackware system then
you could try to see if Webmin
(a web
based administration tool) fits your needs.
33) I've changed the hostname of my computer
using the hostname program, but when I reboot it's
reset. How do I change that?
When your Slackware system boots, the hostname gets set by the /etc/rc.d/rc.M
init script. rc.M sets the hostname based on the value
of the file /etc/HOSTNAME, so to
permanently change the hostname of your system you need to edit /etc/HOSTNAME.
34) When I shutdown my computer using halt
or shutdown -h it does not turn off automatically. How
do I change that?
Most newer machines can power off automatically when you shut them down.
This is typically accomplished through APM (Advanced Power Management).
By default Slackware does not load the apm kernel module, and this
prevents the machine from shutting down through APM. To enable the apm
kernel module you simply have to edit the file /etc/rc.d/rc.modules
and make sure the /sbin/modprobe apm line is uncommented
(by default the line is commented out by being prefixed with a
'#' - remove the # and save the file). If you enable the apm
module in this way then the next time you reboot your machine should be
able to power
down when you issue the halt or shutdown -h now or
similar commands (or shut down through your GUI).
35) How can I verify that a Slackware package or
the ISO image I download is not corrupt before installing?
In the slackware/ directory on the install CD or on your local
slackware mirror site you can find a file called CHECKSUMS.md5 -
in that file you'll find MD5 checksum strings for each of the
downloadable Slackware packages. If you've downloaded a package file and
want to verify it's integrity you can run the md5sum program
on the downloaded file and compare the checksum returned with the one
published in the CHECKSUMS.md5 file. For the ISO image the
checksum can be found in the file slackware-9.0-install.iso.md5
in the same directory as the ISO image itself. As an example, if I
wanted to
verify the integrity of the Apache webserver before installing it, then I
would check the Apache package on the CD (or the one I
downloaded if that's what I did) like this:
md5sum apache-1.3.27-i386-2.tgz this should return a MD5
checksum like this: 6970b9e97b7dc84ee3ef8f54d0b12431 - I can
now verify that string against the one listed in CHECKSUMS.md5
and if
they are identical (as they are in this case) then I know
the package is not corrupt and I can safely install it knowing that
it's a valid unmodified Slackware package.
Getting in the habbit of always verifying the checksum on official
packages before install/upgrade is a good thing and will help you
prevent damages to your system due to corrupted downloads or bad
CD-ROM's - learn how
to use md5sum (as you can see it's really easy)
and use it on every package you install or upgrade, as well as on the
ISO image before writing it to a CD-ROM.
36) Where can I change the default PATH used by
slackware?
The default PATH is defined in the file /etc/profile
along with a lot of other environment variables. By default sepperate
PATH's are set for the root user and everyone else. To change the
default PATH
for all users or root, simply edit /etc/profile with
your favorite editor and change the PATH values. If you only want to
modyfy a single users PATH, then you can set the desired PATH in the
.bash_profile file in the users homedir (I say ˜/.bash_profile
based on the fact that bash is the default Slackware shell,
other shells use different files - read the man page for your
shell
if it is not bash).
37) What hardware is supported by Slackware?
What you really should be asking is "what hardware is supported by the
Linux kernel?". Slackware will usually support any hardware that the stock
Linux kernel will support.
The most noteable exception is that Slackware does not run on all the
hardware platforms that Linux supports - Slackware runs on the x86
platform, that means it will run on Intel 386, 486, Pentium
I/MMX/Pro/II/Celeron/III/IV, AMD 386/486/
K5/K6/K6-2/K6-III/Athlon/Athlon-XP, Via C3, Cyrix 386/486/5x86/6x86/M-II
and other compatible CPUs, but it will not run on machines using CPUs
such as Sparc, Alpha, Mips,
PowerPC etc (some time back ports for Sparc and Alpha based
systems where attempted and did progress quite far, although these
versions of Slack never reached release quality, are unsupported and are
based on older software than
Slack 9 you may be able to use them if you can get your hands on them - I
currently don't know if work on these ports is still going on or has
halted completely).
Apart from what the Linux kernel itself supports, Slackware will also
work with most vendor supplied drivers for various bits of hardware
unless only binary drivers are supplied for some specific patched kernel
from
another distribution.. In most cases vendor supplied drivers will work
fine (especially if they ship completely or partially as source code).
38) What boot disk should I use when installing
Slackware from floppy (or what kernel from the install CD should I use
for a CD install)?
The default slackware kernel is bare.i which contains support
for most hardware that anyone would wish to use - it is what you should
use if possible. The most common reason for choosing another kernel is
that
you have SCSI devices that you wish to use - bare.i contains no
SCSI support, so people with SCSI based systems will need to choose one
of the SCSI kernels. There are several SCSI kernels available with
support
for a wide variety of different controllers - you should read the
descriptions of the various available kernels that can be found in the
README.TXT file inside the bootdisks/ directory. Most SCSI
based systems
will work with either the scsi.s kernel, the scsi2.s
kernel or the adaptec.s kernel, but read the description to
find the right kernel for your hardware. Another common option for
choosing a
different kernel is if you are using a low memory machine or want to use
the JFS or XFS filesystems.
39) How can I use the install CD as a rescue
disk to boot my installed Slackware system?
That is quite easy to do. Simply boot the install CD as you would if you
wanted to do a new install, but instead of pressing Enter at
the very first prompt you type in the name of the kernel from the CD you
wish to use for booting the system as well as additional parameters for
the kernel to tell it about your root partition (the one containing /)
and whether or not you wish to run in single-user (rescue) mode. The
only things you need to know
in order to do this is the location of your root partition and the name
of a kernel that will boot your system (the bare.i
kernel works for most people with IDE based systems, SCSI people should
probably try
scsi.s, scsi2.s or adaptec.s).
To boot an installed system that has /dev/hda1 as its root
partition you would use a command such as this at the first prompt
presented to you by the install CD (read the notes on-screen for further
information
and a list of other available kernels) :
bare.i root=/dev/hda1 noinitrd
This will buut the system using the bare.i kernel with /dev/hda1 as the root fs and will not use the initial ramdisk (the initial ramdisk holds the minimal setup environment, and that's not what we want to boot). If something is wrong with your system so you can't boot it normally with the command above (maybe some init script is hanging and preventing normal system startup or you need to perform a manual fsck on a failed filesystem or similar), then you can try booting in single-user mode by adding the word "single" to the boot command shown above - booting in single user mode will prevent remote network logins and won't start a lot of network related services (it's a maintenance mode). If you still can't start the system you can try passing "init=/bin/bash" to have the kernel not start the normal init process, thereby skipping all init scripts and dropping you directly to a root shell after the kernel proper has finished loading. The command that does this (which is what most people with really broken systems are looking for) would be :
bare.i root=/dev/hda1 noinitrd single init=/bin/bash
ofcourse you need to modify the above to use a different kernel if your
system can't boot with bare.i and specify the correct root
partition.
Additionally see questions 20,
40,
4,
42
and 43
for more boot related info.
40) How can I create a boot floppy for
Slackware?
You can either choose to create one during the configuration part of the
installation procedure or you can run the Slackware makebootdisk
script as root at any point in time.
makebootdisk provides options for 3 different types of
bootdisks. The syslinux or lilo bootdisks should work for most people,
but a simple bootdisk created by simply dumping the kernel directly to
floppy is
provided as an option as well. Creating (and testing) a bootdisk is a
good idea so you always have an alternative method for booting your
system should anything happen to the on-disk bootloader (such as
installing Windows and thereby getting a MBR installed LILO overwritten).
Questions 20,
39,
41,
42
and 43
provide more info related to booting.
41) I (re)installed Windows and it removed my
LILO bootloader, how do I get LILO back so I can boot Slackware?
Well, you've been bitten by a little nasty detail of the Windows
installer. Windows assumes it's the only Operating System on your
machine and happily installs its own bootloader to the Master Boot
Record (MBR) of your
harddrive without any regard for what may already be there (such as
LILO), so after (re)installing Windows that will be the only OS you can
boot.
The way to fix this situation is to either modify Windows' bootloader to
boot Linux, or use LOADLIN.EXE to load Linux from DOS/Windows or boot
your Linux system with a bootfloppy/boot-CD and restore LILO to the MBR
with
an additional entry to have it also boot Windows - see question
20 for more details on dualbooting.
Questions 39,
40,
42
and 43
provide more information related to booting in general.
42) Should I install LILO to the MBR or
SuperBlock of the root partition and what difference does it make?
For a system that will have Slackware Linux as its only Operating System
you probably want to use the MBR as this has the best chance of working
correctly no matter what your partition layout is. Installing to the
superblock of the root Linux filesystem will only work if the root fs is
on the first partition on the disk and that partition is marked
bootable in fdisk or cfdisk or if it gets a helping
hand from
some other bootloader installed in the MBR.
When installing Slackware and configuring LILO you will see the MBR
option listed as "possibly unsafe". The reason for this is that if you
install to the MBR then LILO will overwrite any previous bootloader
(typically Windows') that previously occupied that
location. The result of overwriting the previous bootloader is that the
previously installed Operating System that used that bootloader will no
longer be
able to boot. This can usually be solved by simply telling LILO about
the other Operating System and use LILO to boot both. That is usually a
lot less trouble than configuring the system to boot with LILO installed
to
the superblock.
Whatever location you choose for LILO it is recommended to be in
possession of bootdisks (or boot-CD's or some other bootable
media) that will let you boot any installed OS on your machine.
If you have
bootdisks available for all OS's then you can always use one of those to
boot your system and repair it in case it becomes unbootable (the
Slackware install CD can be used as an emergency boot media for your
Slackware
installation).
You should take the time to read through questions 20,
39,
40,
41
and 43
if you are still unsure of what to do. They provide many more details
on the boot process and information on alternatives.
43) I have just installed Slackware, but my
computer does not boot it - why?
One possible answer is that you did not install LILO (the LInux LOader).
Without a bootloader your newly installed Slackware Linux Operating
System will not either not boot (if your system had no previous
bootloader installed) or will continue to boot (or at least
attempt to boot) your previously installed Operating System.
Another possibility is that you installed LILO incorrectly during the
installation procedure. This is probably the most likely reason, and the
usual problem seems to be that people either choose the "simple"
LILO setup option or choose the "expert" option but install LILO to the
superblock instead of to the MBR. If LILO is installed in the superblock
it will only work if it either gets some help from the
bootloader already in the MBR (such as WindowsNT's or
Windows2000's bootloader) or if your root Linux partition is the
first partition on the disk and it is marked active/bootable in fdisk
or
cfdisk. If all you want to boot is Linux, then just write LILO
to the MBR and all will probably work smoothly. If you are setting up a
dual boot system you should check out question
20 for
more information.
The following questions provide more info on booting and Slackwares
bootloader: 20,
39,
40,
41
and 42.
44) I can only play sound as root, not as a
normal user. How do I fix this?
By default the sound device files in /dev/ are owned by root
and only writeable by root. This has the effect that only root can
write data to the sound card. If you want ordinary users to be able to
play sound you have a few options.
You can either change the permissions of the device files related to
sound so that any arbitrary user can write to them. That may be a
good approach for single user systems. To do that, run a command such as
chmod 0666 /dev/dsp* /dev/audio* /dev/sound*
If you have remote users logging into your machine, then it may not be
desireable to let every user be able to play sound (it can
be pretty annoying if some remotely logged in user desides it would be
fun to torture you by playing random noice etc.), so you
may want to limit sound device access to a select group of users.
Luckily this is also quite easy to do. Simply create a new unique group
for the people who should be able to play sound, make this new group the
group-owner of the sound device files, make sure all members of
the group can write to the device, and then add all users who should be
allowed to play sound to that group. That will let you give sound
playing capabillity to local users, and deny it to remote
users. Here's an example of how this group (I'll call it sound)
can be added, the propper permissions set, and the users foo
and bar be
added to it. To accomplish this run the following commands as root :
groupadd sound chgrp sound /dev/dsp* /dev/audio* /dev/sound* chmod g+w /dev/dsp* /dev/audio* /dev/sound* chmod g+r /dev/dsp* /dev/audio* /dev/sound* usermod -G sound foo usermod -G sound bar
If your users so far have only been members of a primary group and no supplementary groups, then the above works fine, but if your users are already members of one or more supplementary groups then the above usermod commands will make sound their only supplementary group and remove them from all other groups they are currently members of. In most cases you want to preserve the current group membership and only add the sound group as an additional supplementary group. To do this use these usermod commands instead :
usermod -G sound,`groups foo | awk -F ": " {'print $2'} | sed y/' '/','/` foo
usermod -G sound,`groups bar | awk -F ": " {'print $2'} | sed y/' '/','/` bar
Make sure you enter the command exactely as shown above - using backticks and spaces exactely as shown, otherwhise the result will not be what you want.
45) I can't mount any devices (CD-ROM / floppy)
as a normal user, only as root. How do I change that?
By default only root is allowed to mount and unmount devices. This is
sensible from a security point of view, but can be annoying when the
machine is being used as a desktop computer. Luckily there are ways to
change this (several ways infact, like most things in the
UNIX/Linux world).
If you just want every user on your system to be able to mount and
unmount a certain filesystems without further restrictions and controll
over
who mounts and unmounts it (like on your own personal PC where
you (and perhaps your significant other) are the only user),
then you can
achieve this by simply editing the file /etc/fstab (fstab
holds information on filesystems; in case you didn't
know) and adding the option users to the list of
options applied to that filesystem. Here's an example of what lines you
might see for a CD-ROM and floppy drive before editing the file :
/dev/cdrom /mnt/cdrom iso9660 noauto,owner,ro 0 0 /dev/fd0 /mnt/floppy auto noauto,owner 0 0
and this is what they should be changed to in order to let everyone mount and umount them as they see fit :
/dev/cdrom /mnt/cdrom iso9660 noauto,owner,users,ro 0 0 /dev/fd0 /mnt/floppy auto noauto,owner,users 0 0
There is a minor detail attached to the users option, it will let one user mount the filesystem and then let another one umount it - this may or may not be what you want. Sometimes it is desirable to only let the specific user who mounted a filesystem umount it again - to do this use the option user (without the "s") instead of the users option.
Ok, that's all well and good for many prople, but what if you want a little more control over who mounts and umounts filesystems? What if you only want to give a select few of your users that ability and deny it to everyone else, what do you do? The answer is you use sudo. sudo (short for SuperUser DO) is a very powerfull tool that lets you specify individual or groups of users who are allowed to run specific commands as root - in this case mount and umount. A complete description of sudo is outside the scope of this FAQ, you can find all the details you could wish for at the sudo homepage.
46) Why does the MySQL server fail to start?
The most likely cause for MySQL to fail is a permission problem. The
Slackware MySQL package is build to run as the user "mysql&mysql;
and the data directory
/var/lib/mysql should be owned by this user and the associated mysql
group.
The problem most users run into is that they run the mysql_install_dbroot
user, this causes incorrect permissions to be set on the MySQL data dir
and as a result
the server can't start since it cannot read its database files. The
proper way to run the mysql_install_db script is to run it as
the mysql user. If
you have already run the script as root, then simply run the
command chown -R mysql:mysql /var/lib/mysql to reset the
permissions. Then su
mysql to become the proper user and re-run the script. Now you
should be able to start the MySQL server by running safe_mysqld
--user=mysql as root.
The sites and books listed above is only a short list of available material and is provided only as a starting point. You can find many more websites through search engines such as Google, and you should try browsing through a few bookstores for more books. There are lots of additional information to be found both for beginners and experts.
This FAQ was brought to you by Jesper Juhl (nickname juhl
in #slackware @ irc.freenode.net)
Thanks go to mesa for providing web space for this document - thanks.