Project 2: Basic Systems Administration
(c) 1997, Howard E. Motteler
Assigned Wed Feb 26; Due Wed Mar 5; 20 pts
Project Goals
The goals of this project are to learn some basics of systems
administration, and to make sure everyone has access to a Minix
system so we can proceed to more interesting projects.
Project Groups
If you have installed Minix on your own machine you can work
individually or in groups of up to three. Students working in the
circuits lab (room 237) should form groups of two or (preferably)
three. Each lab group should choose a "main" machine, and perhaps
an alternate machine as well; you will be making accounts for
yourselves on each of these machines. Because there are only ten
machines in the lab groups may have to share machines.
The Project
You are to set up a Minix account and compile a trivial C program.
As a group, you should
- Boot up your machine to run minix. I will leave some extra
boot floppies in the cupboard in the left-rear corner of the lab,
and you may want to make your own boot disk, as well
- Think of a name for your group, preferably of not more than
about eight letters
- Create an entry for your group in /etc/group. Be sure to
choose a group number different from existing group numbers. If you
set up accounts on more than one machine, use the same group name
and number on each
- Create a directory /usr/home, for user home directories.
- Format a floppy disk, with mkfs, that you will turn in as a
group
Each user in the group should
- Make an entry in /etc/password. Use your gl username and assign
unique numbers to the users. Each user should be a member of the
group you created in /etc/group. If set up accounts on more than
one machine, use the same user-name and number on each. You may
want to to make /usr/bin/ash your default shell; it has many of the
features of bash and ksh, including command-line edting.
Unfortunately, there is no csh or tcsh.
- Make a directory in /usr/home, using your gl username
- Change ownership of your home directory to yourself
- Copy the startup file "/.profile" to your home directory. You
should add the statement "umask 022" (or whatever you'd like it to be)
to your .profile, and you may want to customize your environment
further.
- Make a directory "floppy" in your home directory, where you can
mount a floppy-disk filesystem, to save work you want to keep
with you
- Mount the floppy (preferably in the directory you just created)
that you will turn in as a group
- Make a directory in the top level of the floppy, cd to this
directory, and write a simple C program "hello.c" to print your
name, SSN, and user-id
- Compile your program to produce a binary "hello"
- Unmount the floppy and give it to the next group member, until
everyone in the group has created a directory and their own "hello"
program
You should also copy the /etc/passwd and /etc/group files to the floppy,
after all your accounts are created.
What to turn in
Each group should turn in a single floppy. Students with user-ids
jbob4, fnord2, and squick1 in the borg group would create a floppy
with directories jbob4, fnord2, and squick1 at the top-level, with
their respective files hello.c and hello in their subdirectories.
Each user's files and directories should be owned by themselves, and
all files and directories (in this example) should be in the borg
group.
The floppy should be clearly labeled with the group and user
names, and machine number.
Grading
Ten points are for getting the floppy right, and ten for setting up
your accounts in good order. Except for cases of gross negligence
or excessive weirdness, everyone in a group will receive the same
grade.
Since you will need to turn in a floppy disk rather than using the
submit program, there are slightly different rules for early and
late projects. The project is due Wednesday by 6:30 pm. If you
turn in your project Monday by 6:30 pm, you get a 10% bonus; if you
turn it in after Wednesday 6:30 but before next Monday at 6:30 there
is a 15% penalty; and in general, if we say a "checkpoint" is 6:30
pm on days the class meets, then there is a 15% penalty for each
checkpoint you miss.
Note that since 15% of 20 points is only 3 points, it's not that big
a deal, for this project, if you are little late.