From root  Thu Mar 10 23:33:38 2011
Return-Path: root
Received: from midas64.slackware.wan (localhost [127.0.0.1])
	by midas64.slackware.wan (8.14.4/8.14.4) with ESMTP id p2B5Xc3h001954
	for <root@midas64.slackware.wan>; Thu, 10 Mar 2011 23:33:38 -0600
Received: (from root@localhost)
	by midas64.slackware.wan (8.14.4/8.14.4/Submit) id p2B5XbqC001953
	for root; Thu, 10 Mar 2011 23:33:37 -0600
From: root
Message-Id: <201103110533.p2B5XbqC001953@midas64.slackware.wan>
Date: Thu, 10 Mar 2011 23:33:37 -0600
To: root
Subject: Register with the Linux counter project
User-Agent: Heirloom mailx 12.4 7/29/08
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit


   (Adapted from a question in the Linux-FAQ)

   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 newsgroups 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, people can register as Linux users at the Linux Counter
   project, which has been in existence since 1993.  In August of 2009
   the project counted more than 142,000 users, but that is certainly
   only a small fraction of all users.  The operator of the Linux Counter
   estimated 29 million users at that time.

   To get counted, visit the Web site at:

   http://counter.li.org

   ...and fill in the registration form.

   If you don't want to use the Web, send E-mail to
   linux-counter@uninett.no with a subject line containing the word
   "Linux", such as:

   I use Linux at home
   I use Linux at work
   I use Linux at school

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

From root  Thu Mar 10 23:35:31 2011
Return-Path: root
Received: from midas64.slackware.wan (localhost [127.0.0.1])
	by midas64.slackware.wan (8.14.4/8.14.4) with ESMTP id p2B5ZVq1001959
	for <root@midas64.slackware.wan>; Thu, 10 Mar 2011 23:35:31 -0600
Received: (from root@localhost)
	by midas64.slackware.wan (8.14.4/8.14.4/Submit) id p2B5ZV59001958
	for root; Thu, 10 Mar 2011 23:35:31 -0600
From: root
Message-Id: <201103110535.p2B5ZV59001958@midas64.slackware.wan>
Date: Thu, 10 Mar 2011 23:35:31 -0600
To: root
Subject: Welcome to Linux (Slackware 13.37)!
User-Agent: Heirloom mailx 12.4 7/29/08
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 slackware/ap directory.  A 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.  More advanced settings are available by editing the
/etc/rc.d/rc.inet1.conf config file directly.

   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.  An /etc/X11/xorg.conf config
file is no longer required to run X, but you may still use one if you
wish.  An initial xorg.conf may be generated by running:  X -configure

   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 with CUPS (the Common UNIX Printing System):

  Slackware prints using gs (ghostscript), CUPS (the Common UNIX
Printing System), and printer drivers from gutenprint or hplip.
These drivers are further supported by the foomatic-filters and
cupsddk packages, used to generate and manage PPDs (PostScript
Printer Description files).

  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

  This local "website" may also be reached using the CUPS configuration
menu choice within a desktop environment such as KDE.

  See the extensive docs in /usr/doc/cups for more details.  If you
don't see your exact printer model when adding a new printer, often
one that's "close" will do the trick.

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


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.

  Using the lsmod command, you can see if the psmouse module is loaded.
If so, you're using the psmouse module for a PS/2-like mouse (including
most touchpads).  If you need to adjust the mouse protocol, edit this
file:

  /etc/modprobe.d/psmouse

Sometimes this is needed to make the mouse work correctly with a KVM
switch, or to properly enable tap-to-click with a touchpad.


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, you'll need to install packages from the
N (network) series.  If you aren't sure which ones you'll need, the
easiest thing is to just install them all.  Network services will not
run unless activated by making the startup scripts in /etc/rc.d/
executable, so it doesn't hurt to have them installed.  Your machine
should be configured at least with loopback using the "netconfig"
utility.  If you are using a modem, make sure the serial port your
modem uses is correctly configured, and 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 will be using wireless, you might want to look at wicd in /extra,
which provides a nice GUI tool for connecting to wireless (or wired)
networks.  If you'll be using that, first set up your network for
loopback using the netconfig tool.

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

