From root  Wed Apr 23 14:16:38 2008
Return-Path: root
Received: from tree.slackware.lan (localhost [127.0.0.1])
	by tree.slackware.lan (8.13.8/8.13.8) with ESMTP id k7GKeq4j011872
	for <root@tree.slackware.lan>; Wed, 23 Apr 2008 14:16:38 -0500
Received: (from root@localhost)
	by tree.slackware.lan (8.13.8/8.13.8/Submit) id k7GKfq6v011871
	for root; Wed, 23 Apr 2008 14:16:38 -0500
From: root
Message-Id: <200706052040.k7GKfq6v011871@tree.slackware.lan>
Date: Wed, 23 Apr 2008 14:16:38 -0500
To: root
Subject: Register with the Linux counter project
User-Agent: nail 11.25 7/29/05
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit


   (Adapted from a question in the Linux-FAQ)

   9.8. How Many People Use Linux?

   Linux is freely available, and no one is required to register with
   any central authority, so it is difficult to know.  Several businesses
   survive solely on selling and supporting Linux.  Linux news groups are
   some of the most heavily read on Usenet.  Accurate numbers are hard to
   come by, but the number is almost certainly in the millions.

   However, one brave soul, Harald T. Alvestrand <Harald at Alvestrand.no>,
   has decided to try, and asks that if you use Linux, you visit this Web
   site to register:

   http://counter.li.org

   If you don't want to use the Web, send E-mail to
   counter@counter.li.org with the subject line, ``I use Linux at home,''
   or ``I use Linux at work.''

   The current count is posted monthly to comp.os.linux.misc, and is
   always available from the Web site.

From root  Wed Apr 23 14:16:39 2008
Return-Path: root
Received: from tree.slackware.lan (localhost [127.0.0.1])
	by tree.slackware.lan (8.13.8/8.13.8) with ESMTP id k7GKhCck011881
	for <root@tree.slackware.lan>; Wed, 23 Apr 2008 14:16:39 -0500
Received: (from root@localhost)
	by tree.slackware.lan (8.13.8/8.13.8/Submit) id k7GKhCFQ011879
	for root; Wed, 23 Apr 2008 14:16:39 -0500
From: "Patrick J. Volkerding" <volkerdi@slackware.com>
Message-Id: <200706052043.k7GKhCck011881@tree.slackware.lan>
Date: Wed, 23 Apr 2008 14:16:39 -0500
To: root
Subject: Welcome to Linux (Slackware 12.1)!
User-Agent: nail 11.25 7/29/05
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit


Welcome!  I'm glad to see you've made it this far! :^)

Here are a few hints to help you navigate through the Linux operating
system a little bit better.

Tools to help configure your system:

   pkgtool:   Remember those screens you saw while each package was 
installing?  You can see all that information (and more) again.  The 
simplest way is to use the 'pkgtool' utility to view the package 
contents.  Another way is to use 'less' or a text editor to read the 
files in /var/log/packages and /var/log/scripts (this is the method I 
use).  The pkgtool script serves as a frontend to the command line 
package tools, so it's a menu based program that will enable you to 
remove, install, or view packages that are currently installed on the 
system.  pkgtool will also allow you to re-run some of the system admin 
scripts that you may have seen during the installation process.

   Slackware's command line package tools:  I use these utilities most 
of the time when I have packages to install, remove, or upgrade.  These 
are the tools:

        installpkg  --  Installs packages
        removepkg   --  Removes installed packages
        upgradepkg  --  Upgrades or downgrades installed packages
        makepkg     --  Used to create your own Slackware Package
        explodepkg  --  Will extract the files from the package without
                        running any install scripts.

   slackpkg:  For those more used to automated package management tools 
you might like to try slackpkg (my favorite due to its simple, 
straightforward approach to keeping a machine up to date).  Slackpkg 
can be found in the extra directory.  A quick search of the web will 
turn up more tools as well.  You should approach these cautiously, as 
Slackware is designed around the idea that the system should be a 
complete installation kept updated with any official patches.  This 
avoids the mess of dependencies that some other Linux based GNU systems 
face.  However, many (if not most) of these tools won't know what to do 
about .new config files, or how to handle upgrading a package that has 
changed to a new name.  Some also think that any package with a larger 
build number is "better", when there have been many instances that a 
new upstream release wasn't working properly and we had to roll back to 
an earlier one, and an automated upgrade tool didn't want to 
"downgrade" the package.  This is something upgradepkg will gladly do, 
as it doesn't (as it should not) take the package's version number to 
mean much of anything.  Regarding automatic upgrades, there have also 
been cases where a library upgrade caused unwanted side effects in 
programs that link with it.  In theory, most libraries used on the 
system try to retain backwards compatibility, but in practice this 
isn't always the case.  While any issued patches should be installed to 
keep your system secure, always remember the old adage "don't fix it if 
it ain't broke" when considering other upgrades and additions, 
especially if they come from unofficial sources.  Again, there's a lot 
of good stuff out there, but there's also some that's not so good.  
It's always a good idea to look packages over before you install them.  
This is as simple as using 'less' to view the contents so you can see 
if they overwrite anything, and maybe using 'tar' or 'explodepkg' to 
extract the archive into a temporary directory to take a closer look.

   netconfig:  netconfig is a menu based program that will help to 
configure your network. You will be asked several questions and given 
an opportunity to review your your settings before the changes are 
committed.  

   pppsetup:  pppsetup is a menu based program that will help you to 
connect to your ISP via a PPP connection.  As with netconfig you are 
asked a series of questions and given a chance to review your settings. 
 KDE also includes a utility for configuring PPP dialup connections.  
This is found in KDE's Internet menu (kppp).

   xwmconfig:  If you have installed the X window system, you can use 
xwmconfig to choose your default window manager.  Running this as root 
will set the system default while running it as a normal user will only 
set the window manager for that user.

   liloconfig:  If you are using the Lilo boot loader to start your 
system you can use liloconfig to setup and install Lilo to the boot 
drive.  There's a simple installation which tries to automatically set 
up LILO to boot Linux (also Windows if found).  For more advanced 
users, the expert option offers more control over the installation 
process.  If you have a lot of partitions, the selection menu in 
'expert' mode may overflow.  You'll likely then want to go to another 
console and find the partition you
want with 'fdisk -l | less', and then go back and enter it (proving 
that you are, indeed, an expert).

   You may need to make some changes to the /etc/rc.d/rc.serial script 
if you're using serial ports other than /dev/ttyS0 or /dev/ttyS1 (com1: 
and com2: under DOS), or if these ports use non-standard IRQs.

I suggest using the section about halfway through that lets you set up 
the ports manually.  Here's an example of how I set up the ports on my 
machine for /dev/ttyS0 and /dev/ttyS2:

# These are the standard COM1 through COM4 devices
#
${SETSERIAL} /dev/ttyS0 uart 16450 port 0x3F8 irq 4
# ${SETSERIAL} /dev/ttyS1 uart 16450 port 0x2F8 irq 3
${SETSERIAL} /dev/ttyS2 uart 16450 port 0x3E8 irq 5
# ${SETSERIAL} /dev/ttyS3 uart 16450 port 0x2E8 irq 3

You'll also need to make rc.serial executable (chmod 755 rc.serial) 
before rc.S will start it.


Other configuration files:

   The majority of system configuration files can be found in and below 
the /etc directory.  Most system configuration is done by editing these 
files with a text editor such as 'vi', "nano", or 'joe'.  If you're not
sure which files you need to edit to configure a given package, use
'less' or 'pkgtool' to see what files are installed by the package
paying special attention to any files placed in /etc or that end with
the suffix .new (these are usually moved into place if there's not
already a configuration file with the same name).  After upgrading a
package, if a .new config file is put in place you'll have to decide
whether to delete the .new, move it over the existing config file
(losing any custom configuration information in the old file), or make
a backup copy of your old config file, move the .new one into place,
and merge any required changes into the new config file with a text
editor.


Hardware, network, and kernel issues:

   If you've got hardware such as a CD-ROM drive or Ethernet card that 
doesn't seem to work with Linux, it's possible that the kernel you're 
using doesn't contain the needed support.  In that case, you can do one 
of two things:

  1.  Load the support with kernel modules.  This is probably the
      simplest way to handle the situation.  Just edit
      /etc/rc.d/rc.modules so that it loads the modules you need.
  2.  Recompile your kernel, including the needed driver(s).

  However, recompiling your kernel is an extreme measure that can be
both difficult and dangerous to the stability of your system.  If you
decide to go that route, either be sure you know the potential pitfalls
or seek guidance from someone experienced with kernel configuration,
compilation, and installation.

  Also note that the vast majority of modules will load themselves
with udev if the hardware is present in the system, unless the modules
are not udev-capable yet, or they are blacklisted in a file in
/etc/modprobe.d/.  If the module for the driver you need is blacklisted,
try commenting out the line in the appropriate file under /etc/modprobe.d/.
If that doesn't fix the issue, check with "lsmod" to make sure that the
module is loading correctly.  If not, try loading it in the rc.modules
file.  

  If you're on a standalone LAN without a nameserver, make sure you 
don't have a nameserver line in /etc/resolv.conf, or you may experience 
delays with many network commands as they attempt to query the bogus 
nameserver.  Most people these days will have a nameserver, or be able 
to access one via their router/gateway.  Most DHCP servers will tell 
dhcpcd what it needs to know in order to set up your /etc/resolv.conf 
automatically.

   Want to run NFS?  You'll need to install the portmap and nfs-utils 
packages.  Then, edit your /etc/exports to allow NFS access. (see 'man 
exports' for examples)  Once you've set up /etc/exports, the NFS 
daemons should run automatically at boot.

   The kernel is now set up with the CONFIG_SCSI_MULTI_LUNS option
to scan for new "SCSI" devices automatically.  However, if that fails
to work after inserting a digital media card, or plugging in a new USB
or IEEE1394 (Firewire) device, you may need to run the following
command before it becomes available as a mountable device:

  rescan-scsi-bus -l

  This command scans the LUNs (or Logical Unit Numbers) of all the
SCSI devices attached to the system, including USB and other devices
that look like SCSI to the kernel.

  If you are running HAL, D-Bus, and a graphical desktop such as KDE
or Xfce, newly inserted devices should become automatically available
to users who are members of the appropriate groups (cdrom, plugdev,
and so forth) in the /etc/group file.

Printing on Slackware:

  The choice is between CUPS and LPRng.  CUPS is installed by default, 
and in my opinion is the way to go.  They are both viable printing 
systems, but CUPS is more actively developed and has more features.

CUPS (highly recommended)

  Slackware prints using gs (ghostscript) and CUPS (the Common UNIX
Printing System).  To set up CUPS, make sure that /etc/rc.d/rc.cups
is executable so that CUPS will start at boot.  Then connect to the
CUPS configuration port using a web browser at this URL:

  http://localhost:631/admin

  See the extensive docs in /usr/doc/cups for more details.  Also, it 
may be possible to configure CUPS using the setup tools included with 
KDE.]  If you use an HP printer, you can also remove the hpijs package 
and replace it with the hplip package from /testing.  If your device 
supports scanning or faxing, those features should be enabled for most 
models, too.  If you don't see your exact model, often one that's 
"close" will do the trick.  In KDE, the HP configuration tool is found 
under the Utilities menu (when HPLIP is installed).  

Users who plan to print (or scan) using hplip need to be members of
the "lp" group.

LPRng

It is still possible to run LPRng, which is based on the old BSD print 
spooling system.  While most systems run CUPS now, there could be some 
good reason that some people would still prefer to run things the old 
fashioned way.  I run CUPS and find it to be a good, reliable printing 
system.  But, if you really want to use LPRng instead, the steps are:

1.  If you have a parallel port connected printer, you must make sure
    you're loading the parallel driver in /etc/rc.d/rc.modules.
    You'll have to uncomment two sections of script to load the parallel
    port driver, and another to load line printer support.
2.  Install the LPD printer software.  This is the lprng package on the
    in the /pasture (where old packages go to "stabilize" ;-).
3.  You'll probably want to have the TCP/IP subsystem installed and
    configured (at least for loopback).  The "tcpip" package is part of
    the N series, and the "netconfig" script is used to do a basic 
    TCP/IP configuration.
4.  Apsfilter uses a variety of other filters that it expects to find
    installed.  You'll want to install the "ghostscript" and the
    "ghostscript-fonts-std" packages on the AP series to add Ghostscript
    if you want the ability to print PostScript documents.  If you want
    to print DVI files, install at least the default teTeX packages from
    the T series.
5.  Install the apsfilter package.  This package is part of the
    /pasture collection along with lprng.  Find the package and
    install it:

      installpkg apsfilter-*.tgz

6.  Change into the /usr/share/apsfilter/ directory, and run the SETUP
    program:

      ./SETUP

    It'll write your /etc/printcap, and you'll be all set to start
    printing.  Once you've got it working, you can also use netatalk and
    Samba to provide print services to Macs and Windows machines on the
    local network with your Linux box.


Mouse support:

   Only very ancient mice will need any special treatment in order to 
get basic support, and with GPM cut and paste on the console.  Most 
will work with the "ps2" or "imps2" protocols.  If you should happen to 
have one of the ancient mice that is not a serial, PS/2, or USB mouse 
then you'll probably have to load a kernel module in order to get it to 
work.  At this point in time, a busmouse is rare.  These days, most 
mice are PS/2 (with a 6 pin round plug) or USB, or occasionally serial 
(with a 9 pin trapezoidal plug).  These kinds of mice don't require any 
special setup as the system should detect and activate them 
automatically.  If you think your mouse might need a special driver (if 
it's not working), read the comments in /etc/rc.d/rc.modules to see 
which one is needed, and edit the file to load it at boot time.  It's 
also possible that the /dev/mouse link may need to be changed to point 
to the proper mouse device.  Or, compile a new kernel with built in 
support for your mouse and install that.


Network support:

   Of course, you're going to want to get your machine online.  If you 
have a router supporting DHCP you're probably already on by now.  
Otherwise, 'netconfig' will give you a simple network connection.  To 
get your machine on the net with a modem and PPP, you need to install 
the "tcpip" and "ppp" packages.  Your machine should be configured at 
least with loopback using the "netconfig" utility.  Also, be sure the 
serial port your modem uses is correctly configured.  If in doubt, take 
a look through /etc/rc.d/rc.serial.  Then, use 'pppsetup' to configure 
the dialup process.  Additional documentation on pppsetup can be found 
in /usr/doc/pppsetup-*/.  DSL/Cable users who need to use PPPoE (PPP 
over Ethernet) should see the docs in /usr/doc/rp-pppoe-3.8/.

If you need to set up your Linux machine as a router for other systems, 
you'll want to set up the interfaces in /etc/rc.d/rc.inet1.conf, and 
set up NAT support with something like this in /etc/rc.d/rc.firewall, 
and then make rc.firewall executable.

# Delete and flush.  Default table is "filter".
# Others like "nat" must be explicitly stated.
iptables --flush
# Flush all the rules in filter and nat tables
iptables --table nat --flush
# Delete all chains that are not in default filter and nat table
iptables --delete-chain
iptables --table nat --delete-chain
# Set up IP FORWARDing and Masquerading
iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --append FORWARD --in-interface eth1 -j ACCEPT
echo "Enabling ip_forwarding..."
echo 1 > /proc/sys/net/ipv4/ip_forward

It's possible to expand (or reduce ;-) this script for just about any 
firewall needed.  See "man iptables" for lots of information.


F: FAQ series, and the HOWTO documentation collection:

   If you installed the F series, you find detailed documentation on 
many common Linux tasks in /usr/doc/Linux-HOWTOs.  Each of these 
instructional files covers a particular Linux task.  They cover most 
system administration tasks in a lot more detail than this little email 
does.

There is also a collection of Linux related FAQs (lists of Frequently 
Asked Questions with answers) /usr/doc/Linux-FAQs.

Please see the CHANGES_AND_HINTS, RELEASE_NOTES and other files
included with the distribution for any last-minute changes.


Have fun!

---
Patrick Volkerding
volkerdi@slackware.com

