Linux at Rancho Santiago College
Roughly twice a year, I find myself combing the Unix job ads in the LA Times. Luckily, this does not mean I am frequently unemployed. In fact, in addition to my full-time job integrating, supporting and teaching Unix, I am also a part-time instructor at Rancho Santiago, a community college in Santa Ana, California. For the first hour of the first class of every semester, the parking lots are a jungle, and students are struggling to find the right buildings and classrooms. I use this hour to discuss the recent Unix job ads and “buzz words”. I cover what students will learn in my class and what additional skills employers list most often in these ads. In January 97, employers most often wanted Unix plus C programming or Unix plus Windows NT (networking). Rarely do ads mention a specific Unix operating system type such as HP, Sun or Linux.
I use Linux extensively in my classes. I also use the free version of SCO Unix. I teach a series of three full-semester Unix classes available at Rancho:
CMPR 141: Unix Operating System
CMPR 241: Unix System Administration
CMPR 242: Advanced Unix Shell Scripts
In each of these classes, I give my car radio analogy. There are many different styles of car radios, each with a slightly different placement of knobs and controls; yet when most people get into a strange car, they can turn on the radio, adjust the volume, change the station and maybe set their favorite stations. In the same way, Unix on different computer platforms has variations in the basic commands, e.g., how you log off or how you display a file one page at a time. There is no need to become disoriented when you face a strange car radio, oops ... I mean when you face a new variant of Unix, especially if you are on the Internet, using TELNET to access one host or another. While Linux has peculiarities that you don't find on other flavors of Unix, it is not alone. Every Unix has some peculiarities. For me, the important issue is that Linux supports all the standard Unix commands and shell features.
When I first started teaching at Rancho, my biggest problem was the fact that students had no access to Unix outside of my three-hour once-per-week class. The school has a computer lab, but none of the systems there had access to Unix. I considered several alternatives before deciding on Linux. There are packages that allow you to run Unix utilities under MS-DOS. I decided against using these, because the problems that arose were not really Unix issues, such as MS-DOS not supporting upper and lower case file names or Unix permissions. There was another flavor of Unix that could be loaded from floppy, but that company is no longer in business. The free version of SCO was not available at the time and, since it is only a 2-user version, it must be installed at each station which is difficult in a lab situation.
I also considered freeBSD. However, I eventually chose to use Linux in my classroom for the following reasons:
Linux acts like a standard version of Unix and the problems that arise are true Unix issues (not MS-DOS issues).
Linux has a large body of documentation and HOWTOs that allow me to customize the package as needed.
Linux licensing allows me to make the software freely available to students.
Linux evolves continuously, supporting new hardware as it becomes available.
Internet ISPs use Linux as e-mail and/or domain name servers.
Linux is strongly represented in the technical book stores under both the Unix and Internet categories.
There are a number of different Linux distributions, fostering healthy competition and adding value.
All of the above show that Linux is a thriving variant of Unix, worth studying in its own right, as well as a useful teaching tool.
On the other hand, I also warn my students that Linux is not yet fully accepted as a commercial grade of Unix by all employers. I also use the free SCO Unix in my classroom so that students can see variations in Unix side-by-side, and so they can list SCO Unix as well as Linux in their resumes.
For my students, I have created a distribution of Linux which I call Floppy-Based Linux. It runs completely from floppy and never accesses the hard disk, yet it supports all the standard Unix commands and man pages. It can also use TELNET and FTP to access the Linux server running in the classroom and can print to network printers in the classroom and the computer lab. Of course, this is slower than running from hard disk, but it provides a number of advantages in my environment. My students are often computer neophytes. I need a bullet-proof environment where they can freely make mistakes. Thus, I ruled out any distributions that would require them to load software onto the hard disk, even the UMSDOS file system. I want my students to be able to work on Unix at home, at work or in the school computer lab since I believe that accessing Unix hands-on is essential to learning Unix. At the same time, I could not take a chance that a mistake on their part might alter or corrupt their home computer, work computer or lab computer.
My students can run Floppy-Based Linux on any PC with 8MB of RAM and a 3.5-inch floppy drive. The floppy diskettes are write-protected when in use, so they cannot be corrupted. The Linux kernel has been rebuilt, so that it has no drivers for IDE or SCSI hard disks to ensure that a student cannot alter the hard disk. At first, I started with the Slackware 3.0 boot diskettes and RAM disk, but I found that these are not in ELF format so I could not add some of the commands I wanted. Following the boot disk HOWTO, I created my own boot diskette and 3MB RAM disk. After loading the RAM disk, an rc script prompts the student to insert a “Supplement” diskette, which loads more files into the root file system in memory. Students then mount a “Utils” diskette which gives them access to many more Unix commands and man pages.
Students can use Floppy-Based Linux for homework assignments outside of the classroom. Inside the classroom, there are 18 Windows PCs, one Linux Server and one free SCO Unix system. Students bring up Floppy-Based Linux on the Windows PCs and then download new homework assignments from the Linux server using FTP. They also upload their completed homework to the Linux server. They can print to a network printer in the classroom. I have also used variants of Floppy-Based Linux to debug network problems and to make image backups of a Windows hard-disk partition using dd (device-to-device copy) “piped” to rsh (remote shell) to save the data on another system in the network or its tape drive. (Hard disk access was enabled in order to do this.)
|Designing Electronics with Linux||May 22, 2013|
|Dynamic DNS—an Object Lesson in Problem Solving||May 21, 2013|
|Using Salt Stack and Vagrant for Drupal Development||May 20, 2013|
|Making Linux and Android Get Along (It's Not as Hard as It Sounds)||May 16, 2013|
|Drupal Is a Framework: Why Everyone Needs to Understand This||May 15, 2013|
|Home, My Backup Data Center||May 13, 2013|
- New Products
- Linux Systems Administrator
- Senior Perl Developer
- Technical Support Rep
- UX Designer
- Designing Electronics with Linux
- Dynamic DNS—an Object Lesson in Problem Solving
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- Using Salt Stack and Vagrant for Drupal Development
- Nice article, thanks for the
8 hours 8 min ago
- I once had a better way I
13 hours 54 min ago
- Not only you I too assumed
14 hours 12 min ago
- another very interesting
16 hours 5 min ago
- Reply to comment | Linux Journal
17 hours 58 min ago
- Reply to comment | Linux Journal
1 day 52 min ago
- Reply to comment | Linux Journal
1 day 1 hour ago
- Favorite (and easily brute-forced) pw's
1 day 3 hours ago
- Have you tried Boxen? It's a
1 day 8 hours ago
- seo services in india
1 day 13 hours ago
Enter to Win an Adafruit Pi Cobbler Breakout Kit for Raspberry Pi
It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Pi Cobbler Breakout Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- 5-21-13, Prototyping Pi Plate Kit: Philip Kirby
- Next winner announced on 5-27-13!
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?