Linux OS

Linux, a Free Unix Style OS for PCs Started: 3/24/99 (aprox)
Last modified 7/19/2015

Under Construction! I'm far from expert, but have it working...
I can't resist quoating Dan Ridge
"Why Linux?
Uhhh.... We use Linux cause it's like cool and stuff."

This seems more concise than Hilary's "Because its there", and probably more honest than because it is FREE and it WORKS. With a little effort you too can have a very powerful computing environment. Note that Linux will run on machines people ignore these days, like a 386 with 4 Mb of memory and 200 Mb of free disk space.

Current Work

I'm not really the Linux troll you'd imagine reading the rest of this page, but I've left it for historical reasons. As machines and distributions improved I have upgraded to the Slackware 14.1 distribution (which I think is still the most recent) and normally work in an Xwin environment although I almost always have a least one Console window open. I am reading about people doing interesting things by connecting linux boxes to small external boards like the Arduino. I want to get into this in the future. However I recently became interested in the ELM327 OBDII interfaces that one can purchase inexpensively through Amazon or Ebay and have written a Linux ELM327 Interfacing review.

Obtaining a Distribution

The list of links below contains some information for getting started. Personally I find it easiest to buy a CD rom distribution rather than attempting to download from the internet. Most of the bundles include all the utilities you could want and either hard copies of manuals, or at least a good documentation set on the CD. Try Cheapbytes below for the least expensive starter kit I've seen.

Warning, I wrote most of this in 1999 when I first expairmented with the 2.0.x kernels in a Red Had release. To give you a little perspective, this was back when I had no PCI cards and a 4 GB hard disk was really BIG! Most importantly a 56k baud modem was fast! With todays download speeds and thumb drive storage capability you can download and burn a CD distribution image. Even if you don't have a high speed connection your public library probably does.

Periodically I dabble with linux and gcc in text mode, but haven't seriously tried to maintain these pages. Others seem to be doing better documentation, however I leave this here cause the starting links are still good. I'm currently struggling with a USB zip drive, apparently one needs kernel version 2.4.x for USB support and I don't quite have it mastered yet....

Be a little careful as there are differences between the levels of support and the extra's included with the various CDrom vendor's distributions. I recently purchased "Red Hat Linux 5.2" from Cyberian Outpost thinking I would get Red Hat support. Not TRUE, the distribution was made by Macmillan Digital Publishing, it crashes during installion on one of my machines and Macmillansoft's support desk won't even respond to my email pleas for help. Conversely this package included a CDrom with the non-commercial version of Staroffice 4.0 which is sort of neat. It also included two books on Linux in *.pdf format that I found quite useful.

My experience to date is that one needs to do a moderate amount of diddling around to get a fully operational system running. As a newbie I found a few of the HOWTO documents difficult to follow as they assumed I knew more than I did. The support books that are available on Linux and sometimes bundled with Linux distributions can be very helpful for the first time user. The LDP/Guides which can be downloaded in various formats are another good source of overview information and these were not included in either of my CDrom distributions. Most of my experience is with Red Hat 5.2, but as mentioned above its RPM installation failed on one of my machines where as Slackware 3.6 worked fine on the same machine! I'll summarize some of my experience below, maybe it will help someone besides myself. The distributions discussed below were purchased in the spring of 1999.

Here are some other random Unix/Linux things I stumbled across...

return to my home page

My Early Linux Experience, pre 2004

I don't want to duplicate too much of what is out there on the Web and more well written than this document. I want to point out problems or tricks I don't see mentioned in the other documents. Course you will probably have different problems, sigh. Read the LDP (Linux Documentation Project) information from a distribution CD or the link indicated above, then this will probably make sense. Most of the LDP information is available in various formats including HTML, I have not included explicit links to these as you would be best served by finding your nearest mirror site and using it. The current LDP "Installation and Getting Started Guide" is a great starting point, it begins with a comparision of 4 of the major CDrom distributions. The Linux "Installation HOWTO" isn't quite as general but is included on both the CDrom distributions I tried. The Linux "Tips HOWTO" and the following guides will be helpful after you get Linux booted.
    "The Linux System Administrators' Guide"
    "The Linux Network Administrators' Guide"
    "The Linux Users' Guide"

My migration path was from DOS to Windows (all sorts) to Linux. I use Intel hardware because it is cost effective. So below I assume you have DOS available and are running on an Intel system with IDE hard drives (its all I've tested but its a very common configuration). Other routes are available, ie making your boot disks on a Linux system and installing over your network via an NFS mount, but they are better discussed by someone who has done this! Further I assume you are installing off a CDrom distribution cause its easy and what I typically do. Other paths are available here also. One of the strong points of Slackware is that it breaks up the basic packages into sizes such that an installation can be done from floppy disks if you don't have a CDrom on your target machine.

There is one catch that you will find when you start reading the avaiable installation documentation. If you want to install and use the Linux LILO boot program you probably need your Linux /boot partition mounted on one of the 1st two hard disks and below physical cylinder 1023. This is a limitation in a lot of the PC BIOSes (esp for 386 and 486 systems) which are controlling the system at boot. There are various solutions to this and one should read the "Large-Disk" mini-HOWTO if you have this problem. I found I couldn't even install my Red Hat 5.2 distribution on the 2nd half of a 4 Gig disk (presumably due to above, but the error message wasn't real descriptive).

In my case I had purchased a new machine with at big disk on which the manufacturer had kindly installed Win98 after formating it as one huge FAT32 partition. I had no interest in reinstalling Windows, but was able to run the fips.exe program in DOS to repartition the drive non-destructively and free up the last half of the disk for Linux. The simplest solution to this problem is to add a second hard disk, they are cheap these days. Better still if you have an old 40-100 Mb disk from a previous upgrade you can use it as your 2nd drive and put everything you need to boot Linux on it. The majority of the Linux installation can be anywhere, ie above cylinder 1023 on disk 1 because your linux kernel is now in control, not the PC BIOS. My Red Hat installation manual says all you need is a 5 Mb partition so you can mount your Linux /boot below cylinder 1023. I suggest you also put your swap partition on the disk which doesn't contain the rest of Linux for a slight performance increase.

There are lots of other solutions. Probably the most elegant is to get rid of all the Microsoft stuff and just put Linux on the hard drive. I've been too wimpy to do that on most of my systems since people still occassionally pay me to write Windows code. Another is to boot up in DOS and use the Lodlin utility to boot Linux from DOS. This requires you to have a copy of your Linux kernel image on a drive you can reach from DOS but it works.

As I mention in my introduction, I purchased a current Slackware distribution when I had troubles on one machine (out of 4) on which I tried to install Red Hat 5.2. There are other distributions which I have not tried. Neither do I blame the Red Hat distribution itself, but I never did find the problem. However it gave me a little experience with two different distributions. The most interesting thing is that the core distribution seems to be similar. You get all the basics including networking, Xwindows, email, samba, Netscape 4.07, and the GNU compiler suite, but something is significantly different. The sources for Slackware are included with the binaries on one CD whereas the sources for Red Hat are on a second CD. When I figure out what's different I'll mention it, but I haven't missed anything yet in the Slackware distribution! The package directory for Red Hat is twice as large as that for Slackware so there IS a difference.

Slackware 3.6

CDrom1, Distribution cd

This includes everything you need to get Linux Kernel 2.0.35 up and running. From a DOS CDrom based system you create both a boot floppy and a root floppy. Boot the boot floppy which prompts you to insert the root floppy. Now you are runing Linux in a ramdisk, you log in as root and issue Linux commands to partition the hard disk and install packages. The "setup" command is typically issued to install packages on a new system.

Specifically check out:
\Bootdsks.* boot disk images to be created with rawrite
\Rootdsks root disk images to be created with rawrite
\Docs  includes all documentation
    Mat Welsh's "Linux Installation and Getting Started Guide" 
       Contains various gzip and zip formats of install-guide-2.3
       {dvi,pdf,ps,tar,txt}.  This is an older version with more
       Slackware emphasis than the current Guide.
    mini-HOWTO documentation
    HOWTO documentation
\Install DOS utilities for installation, gzip, fpis and rawrite
\Slaktest \usr directory, can be symbolically linked to a minimal Linux
    partition on a hard drive to try Linux with restricted hard disk space.
\Slakware the slakware package repository
\Slakzip  a DOS *.zip archive that will install Linux in a DOS partition
\Source the sources for packages

Red Hat 5.2 (Apollo)

CDrom 1, the Binary Distribution for Intel Systems

This includes everything you need to get Linux Kernel 2.0.38 up and running. From a DOS CDrom based system you create a boot floppy. Then boot this floppy and an interactive program leads one through the remainder of the installation process using RPM to install packages from the CD.

Specifically check out:
\doc\rhmanual  The Red Hat Installation Manual as an HTTP hypertext document
    This leads one through the installation.
    If you buy the "boxed set" distribution you get a paperback
    copy of this which is sort of nice.

\doc\HowTo The Linux HOWTO and mini-HOWTO documentation 

\Images  Linux floppy boot disk images required to get the installation 
        process off the ground if you can't boot the CD directly.

\dosutils  things that run under DOS to help prepare your system.
    gzip - decompress *.gz files
    fips - non-destructive hard disk repartitioning software
    rawrite - create boot floppy from \Images data
    loadlin - boot Linux from DOS

\RedHat\Rpms Red Hat uses their RPM package installation technique for
    installing the software.  The installation boot disk leads one
    through all this with interactive prompts, but if you want to 
    go back and add a package later you might want to know where
    to look for it.  Note if you don't have the Red Hat CDrom, you
    can still get RPM and the associated documentation via the
    link indicated above.

If you have some patience, read the on-line manual(s), and follow the prompts when you run the startup boot disk you should be able to install Linux. One thing I particuarly liked about Red Hat Linux is that it comes with two system configuration utilities. Either can be run after booting Linux to lead us novices through the configuration process. If you read the HOWTO documentation it has you editing all sorts of files in /etc. That's ok if you are an expert, but if you are like me then you don't even know how to use the editor yet. Both utilities are described in the on-line manual, but they are nice enough that if I was doing my first Linux install I might choose Red Hat just to get these:

linuxconf - this is a text based utility that lets you configure most
    aspects of the Linux system.

Control Pannel - this is an X Windows based system which includes a
    few features linuxconf left out.

Samba -- Version 1.9.18p10

Samba is a suite of programs which work together to allow clients to access Unix filespace and printers via the SMB (Session Message Block) protocol.

In practice, this means that you can redirect disks and printers to Unix disks and printers from Lan Manager clients: Windows for Workgroups 3.11 clients, Windows NT clients and OS/2 clients. There is also a Unix client program supplied as part of the suite which allows Unix users to use an ftp-like interface to access filespace and printers on any other SMB servers. My current release ??? with the Linux 2.0 Kernel allows one to mount a remote SMB data share as a local Linux file system.

Samba is good way to get your Windows system talking to Linux. The documentation says Linux with Samba is a good way to emulate a Windows NT server! I was very excited when I first saw this cause it was exactly what I wanted to accomplish. I ran into one snag pretty quickly and recommend you check out the samba documentation in ENCRYPTION.txt. In summary, later versions of Win95, WinNT, and all Win98 versions use an encrypted network password system which didn't work with my default smb.conf file. If you have a simple network where you just want to share data between a few computers change the security level in the [global] section of smb.conf from "user" to "share" (ie: security=share). Alternative options are to turn on password encryption in Samba or turn it off in your version of Windows by changing a registry entry. Its interesting that the Samba documentation tells one how to alter Windows performance, but I've never seen anything about it in Microsoft's documentation!

Check out the http link above for local mirror sites and documentation. Also read the "SMB HOWTO" documentation file. Samba binaries seem to be included in the CDrom collections I've looked at recently but if you download it from the internet I think you have to build the binary from the sources.

ISA PnP utilities

Many of the inexpensive ISA modems and network cards one can purchase these days are Plug and Play. You can normally configure them with a DOS setup utility that writes to their on board CMOS. That means they will remember the io base and irq you want them to use, but if you don't have a good Plug and Play bios (and most 386 and 486 machines didn't) you may need to enable the board during the Linux boot. This is where isapnp comes in, see the link in the list at the top of this document. My Red Hat 5.2 system had isapnp installed and invoked it from /etc/rc.d/rc.sysinit, but the /etc/isapnp.conf file didn't exist so nothing was configured. There was sufficient information in the man pages that I was able to get my modem initialized and working. I redirected the output from pnpdump to a file, edited out the parameters I didn't want and moved it to /etc/isapnp.conf.

Enabling PPP to my Internet Service Provider

This almost worked out of the box with Red Hat 5.2 (probably would have it I hadn't complicated things with a local ethernet). I ran Red Hat's linuxconf (mentioned above) to configure my chat script. The ISP Hookup HOWTO is the place to start (note the above is complete whereas some path descriptions were missing in the versions on my CDrom distributions and at the LDP site(s)). The Linux "PPP HOWTO" is definately worth reading, but its one I found a bit terse for a newbie. I found the "The Linux Network Administrators' Guide", "Networking Overview HOWTO", and "NET-3 HOWTO" easier reading and instructive.

My Red Hat installation has two executable command scripts, ifup and ifdown. They take an interface specification, in my case eth0 for the ethernet and ppp0 for my ppp connection. At boot eth0 is enabled, to get my default route working I have to issue "ifdown eth0" before bringing up the ppp connection with "ifup ppp0". This is probably safest anyway, now the scarey outside world can't get to my network via the ppp link! this apparently handles defaultroute, see pp 145 in NAG....

Subpages (1): elm327_obdII