First of all, how to configure the keyboard. If you missed this step during installation or have changed your keyboard, you'll have to:
/usr/lib/kbd/keytables/; for
example, it.map selects the Italian keyboard
/etc/sysconfig/keyboard so as it reads:
KEYTABLE="/usr/lib/kbd/keytables/it.map"
/etc/profile or to one of your rc files :
/sbin/kbdrate -s -r 16 -d 500 # or whatever
~# chmod 666 /dev/port
Upon the next reboot, the keyboard will work fine.
IMHO, the first thing to do next is build a kernel that best suits your
system. It's very simple to do but, in any case, refer to the README
file in /usr/src/linux/. Hints:
http://www.linuxhq.com/patch/20-p0591.html;
noblink patch;
If you want to customise the bootup messages, check whether your
/etc/rc.d/rc.local overwrites /etc/issue and
/etc/motd. If so, get your hands on your editor and go.
Issuing the command hostname new_host_name is not enough. Edit
/etc/sysconfig/network and change the hostname therein.
On some systems, sendmail locks the machine at boot time. Make sure your
/etc/hosts contains a line that reads
127.0.0.1 localhost
Devices in /dev (or better, links to the actual device drivers) may
be missing. Check what devices your mouse, modem, and CD-ROM drive
correspond to, then do what follows:
~# cd /dev
/dev# ln -s /dev/cua0 mouse
/dev# ln -s /dev/cua1 modem
/dev# ln -s /dev/hdb cdrom
and, if you want, do chmod 666 to these devices to make them fully
accessible by every user. Tip: in some laptops the mouse device is
/dev/psaux: take this into account also when configuring X11.
In addition, you'll want to make the floppy accessible by non-root users
with chmod 666 /dev/fd*. This is bound to cause security problems,
but I don't know the details. Comments on this are welcome.
gpm mouse services are useful to perform cut and paste in console and
to use the mouse in some apps. Check that you have a file called
/etc/sysconfig/mouse and that it reads:
MOUSETYPE="Microsoft"
XEMU3=yes
Moreover, you must have a file /etc/rc.d/init.d/gpm. Of course,
make sure this configuration is right for your mouse type. Tip: in some
laptops, MOUSETYPE is ``PS/2''.
It's handy to have mount points for the floppy, the CD-ROM, the DOS partition, and other devices. For example, you may do the following:
~# cd /mnt
/# mkdir a: ; mkdir floppy ; mkdir cdrom ; mkdir win ; mkdir zip
This creates mount points for an MS-DOS floppy, an ext2 floppy, the CD-ROM, the DOS partition, and the parallel port Zip drive.
Now edit the file /etc/fstab and add the following entries:
/dev/fd0 /mnt/a: msdos user,noauto 0 1
/dev/fd0 /mnt/floppy ext2 user,noauto 0 1
/dev/cdrom /mnt/cdrom iso9660 ro,user,noauto 0 1
/dev/hda1 /mnt/dos msdos user,noauto 0 1
/dev/sda4 /mnt/zip vfat user,noauto 0 1
Obviously, you must use the correct device in the first field. To access
Win95 long names, use vfat instead of msdos in the last line. This
doesn't (yet) apply to vfat32, though.
Many users want their PC to run both Linux and DOS/Windows, and want to
choose at boot time which os to use. Let's suppose that /dev/hda1
contains DOS/Windows and that /dev/hda2 contains Linux.
Do what follows:
~# fdisk
Using /dev/hda as default device!
Command (m for help):a
Partition number (1-4): 2
Command (m for help):w
~#
This makes the Linux partition bootable; this step ought to be carried out
by activate when running LILO's QuickInst, but it won't work with
my Red Hat.
Write this basic /etc/lilo.conf file:
boot = /dev/hda2
compact
delay = 50
# message = /boot/bootmesg.txt # write your own
root = current
image = /boot/vmlinuz
label = linux
other = /dev/hda1
table = /dev/hda
label = dos
Now issue /sbin/lilo and you're set. Being LILO a crucial part
of your installation, you're strongly advised to read its documentation
anyway.
To boot Linux from DOS without resetting, put LOADLIN.EXE in a
directory (in the DOS partition!) included in the DOS path; then copy your
kernel to, say, C:\DOS\VMLINUZ. The following .BAT file
will boot linux:
rem linux.bat
smartdrv /C
loadlin c:\dos\vmlinuz root=/dev/hda2 r
I you use Windows 95, set the properties of this .BAT so as it starts
in MS-DOS mode.
Red Hat has a fine configuration tool that worked wonderfully for my HP DeskJet 400; if you don't use Red Hat, manual configuration follows.
Let's suppose you have a non-PostScript printer you want to use to print raw text (e.g., C source files) and PostScript files via GhostScript, which is assumed to be already installed.
Setting up the printer involves a few steps:
~# echo "hello, world" > /dev/lp0
~# echo "hello, world" > /dev/lp1
and take note which one works.
~# cd /var/spool/lpd
/var/spool/lpd/# mkdir raw ; mkdir postscript
~# echo "first line" > /dev/lp1 ; echo "second line" > /dev/lp1
if the output is like
first line
second line
then save this file as /var/spool/lpd/raw/filter:
#!/bin/sh
# This filter does away with the "staircase effect"
awk '{print $0, "\r"}'
and make it executable with chmod 755 /var/spool/lpd/raw/filter.
/var/spool/lpd/postscript/filter:
#!/bin/sh
DEVICE=djet500
RESOLUTION=300x300
PAPERSIZE=a4
SENDEOF=
nenscript -TUS -ZB -p- |
if [ "$DEVICE" = "PostScript" ]; then
cat -
else
gs -q -sDEVICE=$DEVICE \
-r$RESOLUTION \
-sPAPERSIZE=$PAPERSIZE \
-dNOPAUSE \
-dSAFER \
-sOutputFile=- -
fi
if [ "$SENDEOF" != "" ]; then
printf "\004"
fi
(in this example an HP DeskJet printer is assumed. Fix it to suit your
printer).
/etc/printcap:
# /etc/printcap
lp|ps|PS|PostScript|djps:\
:sd=/var/spool/lpd/postscript:\
:mx#0:\
:lp=/dev/lp1:\
:if=/var/spool/lpd/postscript/filter:\
:sh:
raw:\
:sd=/var/spool/lpd/raw:\
:mx#0:\
:lp=/dev/lp1:\
:if=/var/spool/lpd/raw/filter:\
:sh:
For more complex or exotic printing configurations, the Printing-HOWTO awaits you.
For Red hat users: be aware that the GSDEVICE chosen by Printtool will work,
but is not necessarily the best for your printer. You may consider fiddling
a bit with the file postscript.cfg; for instance, I changed GSDEVICE
from cdj500 to djet500 and now my prints come out much quicker.