Vous êtes sur la page 1sur 5

95-799 Linux - Syllabus

Fall 2007 Mini 1: August 28th October 16th Tuesdays 5:30pm 8:30pm Instructor: Dennis Moul Phone: 412-489-1704 E-mail: dmm@city-net.com Class web sites: www.cmu.edu/blackboard http://class-95799.heinz.cmu.edu Description This course covers the Linux operating system and its related applications. The focus of the course is twofold. One component is hands-on technical experience with installing, configuring, and administering Linux systems. This will be done partly through in-class lectures and labs, but a significant amount of the hands-on work will be done by the students outside of class time. The other component of the course is to develop an understanding of how Linux fits into enterprise IT environments, its strengths and weaknesses, and the economic, social, political, and legal forces acting on it. This will be done partly through in-class discussion and partly through outside reading. This is not a general-purpose Unix user or Unix system administrator class; there are many other resources available for that. We will focus on how Linux is different from other systems. Prerequisites A computer on which to run the Lab exercises. Having a laptop in class is best but not required. If you have a non-Windows computer, please see me. You will need at least 3GB of free disk space, preferably 6-10GB. A basic understanding of PC hardware/software architecture/networking (such as BIOS boot order, disk partitions, IP addresses). The ability to download and burn a CD from a .ISO CDROM image file. Some familiarity with any version of Unix (Linux, Solaris, AIX, HPUX, etc) is helpful but not required. Textbook Linux Rute Users Tutorial and Exposition by Paul Sheer. Published by Prentice-Hall, 2002, ISBN 0-13033351-4. Available online in HTML at http://class-95799.heinz.cmu.edu/doc/rute/ or in PDF at http://class95799.heinz.cmu.edu/doc/rute.pdf (4.4 MB). You are not required to purchase the hard copy. Software Each student should have a copy of VMWare in order to run multiple versions of Linux non-destructively on their computer. VMWare is a virtual PC program that emulates a complete separate additional system within your host computer. There are multiple versions of VMWare. The preferred version for this class (the one the labs are tested on) is VMWare Workstation 6. Each student can request a 30-day evaluation of VMWare Workstation from VMware.com by September 18th (to complete Lab 2). If you would prefer to purchase an untimed copy, the academic license is available from programmersparadise.com for $101 (SKU V55 22001A11 ). The program and documentation can be downloaded from vmware.com or locally at http://class-95799.heinz.cmu.edu/vmware/. TA: Evan Wright E-mail: evanw@cmu.edu Phone: TBD Room : TBD

95-799 Linux

Page 1 of 5

There are other versions of VMWare that may be usable for this class, at the students risk. VMWare Server is free and untimed, but has very limited snapshot capability. For Mac users, there is VMWare Fusion. It may also be possible to use Parallels Desktop on a Mac. The versions of Linux used in the class are distributed as .ISO files for burning onto CDROM or using as a VMWare virtual CD, and can be downloaded from http://class-95799.heinz.cmu.edu/cdrom-iso-images/. Schedule In The Beginning: Introduction, Linux background & history. Understanding Open Source. Hands-on: Booting & using the Ubuntu Live-CD. Pieces & Parts: Structure of the operating system. Unix survival guide. Will The One True Linux Please Stand Up: Understanding the major Linux distributions. Open Source licensing GPL and others. Hands-on: Hard-disk installations I Did It My Way: Customizing your Linux environment. Repositories and package management systems for adding software. Hands-on: Adding software, recompiling the kernel. So What Is It Good For?: Common applications for Linux. Software development in a Linux environment. Hands-on: Installing and configuring services (web, ftp, file/print, etc). Barbarians at the Gate: using Linux for network security. Understanding the role of Linux on non-PC platforms. Hands-on: Linux network security tools. The Good, the Bad, and the Ugly: Real-world Linux implementations: Integrating Linux into heterogeneous environments. Justifying Linux projects and overcoming common objections. Prosper or Perish?: Possible futures for Linux. Feel the Power: Advanced Linux system administration. Student interest topics. Lab 0 Due. Bio post Due.

Week 1: Aug 28 Week 2: Sep 4 Week 3: Sep 11

Lab 1 Due.

Week 4: Sep 18

Lab 2 Due. Quiz 1.

Week 5: Sep 25

Lab 3 Due. License Analysis Due. Lab 4 Due. Quiz 2. OSS Contrib Proposal (opt)

Week 6: Oct 2

Week 7: Oct 9

Lab 5 Due.

Week 8: Oct 16

Lab 6 Due. Quiz 3. Open Source Contrib (opt)

95-799 Linux

Page 2 of 5

Assignments: Biographical Post: The first assignment is to make a biographic Blackboard discussion group post with the following information: Your name, how to pronounce it, and any shortened or alternate name that you prefer. A brief description of your school/work history. A quick summary of your level of technical knowledge/experience with PC hardware & software, networks, the Internet, Unix in general, and Linux. The URL of your personal home page, if you have one (optional). Any topics of particular interest that you would like to see covered in this class. You do not need to reveal any information that you are uncomfortable sharing with the other students. This assignment should be two or three paragraphs in length. Value: 1 point. (est time 20 minutes) Open Source License Analysis: There are dozens of different Open Source software licenses, each with their own legal terms and conditions. You will analyze and review an OSS license of your choice (other than GPL, LGPL, BSD, & MIT) and submit it in to the class Blackboard site for other students to learn from. A standardized template will be provided. See the initial Blackboard forum post for details. 10 points. (est time 2 hours) Labs: The bulk of the assignments are the hands-on labs. We will begin them in class, but most of them will not be completed during the class time. Students will continue to work on the labs in their own time until they achieve the intended result. Each lab will have some final step (screen snapshot, email message, etc) demonstrating successful completion, usually submitted to Blackboard via each labs View/Complete Assignment link. 90 points (6 @ 15pts each; est time 1-4 hours each). Quizzes: There are three brief quizzes conducted via Blackboard just before mid-class break. These will address technical architecture topics, the non-technical economic/social/political/legal topics, and lab experiences. They will not cover details of individual installation or configuration steps. Quizzes are closed book no notes, books, online resources, etc are permitted. 39 points (3 @ 13 pts each, est 10-15 minutes ea) Participation: There is a participation grade based on the class discussions and the use of the class forums on Blackboard. You are expected to post your own problems and also assist other students with their technical problems. Non-technical (social/political/economic/legal) posts are encouraged also. Minimum expected activity for the discussion groups, to receive an average grade, is two meaningful posts per week per student. 15 points. Total points: 155. According to Heinz School grading guidelines, the course grade average will be targeted at 3.5. Readings In addition to textbook readings, links to online current Linux-related information may be provided. Since the technical, business, and legal environment relating to Linux is evolving rapidly, students are expected to follow news sources on these topics. Suggested sites for Linux news include: www.linux.org/news/ groklaw.net freshmeat.net linux.eweek.com slashdot.org lwn.net linuxforum.com

A general understanding of the business IT environment is useful as well. A few suggested sites for more general IT news and information include Network World (nwfusion.com), eweek.com, techrepublic.com, informationweek.com, and techweb.com.

95-799 Linux

Page 3 of 5

Collaboration and Original Work Policy Students are welcome to collaborate and share information on lab assignments. Each student must complete and submit each lab themselves, but you may discuss any aspects of the labs (problems, steps, useful tricks, etc.) with others. The license analysis must be your own work. Any direct quotation from another source of more than a few words must be attributed to the source, and the use of direct quotations should be kept to a minimum. Plagiarism will not be tolerated. See your student handbook, your advisor, or the instructor for clarification if you are unclear about this. Students who plagiarize will fail at least the assignment and possibly the whole course, and additional disciplinary actions may apply. Your Open Source contribution is likely to draw on the work of others this is fine, and part of what Open Source is all about. Academic plagiarism and citation rules do not apply. Depending on the nature of your contribution, there may be relatively little original content in those cases the value comes from finding, selecting, organizing, and presenting the information. The quizzes, while conducted online via blackboard, are closed book no notes, books, online resources, etc are permitted. This will be strictly enforced, and any students found cheating will fail at least the assignment and possibly the whole course, and additional disciplinary actions may apply. If you notice fellow students cheating, inform the instructor (anonymously if necessary) they are cheating *you* out of a fair grade. Recording Policy Lectures may be recorded by students for their academic use. Recordings may be shared with other current students of this class only. Recordings are not allowed to be further copied, distributed, published, posted, or otherwise used for any other purpose without the express written consent of the instructor. Resources The course Blackboard site is the main site for course-related materials. The Powerpoint slides used for the lectures are posted here before the start of class. Assignment documents are on Blackboard as well, and submissions are generally done through Blackboards Assignment feature. Large files are hosted on a separate site maintained by the instructor http://class-95799.heinz.cmu.edu. The first weeks files are also available here for students who may not have access to Blackboard yet.

95-799 Linux

Page 4 of 5

Optional Extra Credit Assignment: Open Source Contribution: In keeping with the spirit of sharing and community improvement behind Open Source, each of you may make some meaningful contribution to the Open Source community. There are a number of ways you can do this: 1.Programming: a. Create a new Open Source application and release it to the public; b. Add to the functionality of an existing Open Source application; c. Fix bugs in an existing Open Source application; d. For b. and c., you should work through its existing development process if possible (though forking it to create your own version with improvements is acceptable). 2.Non-programming: a. Create new documentation or add meaningfully to existing documentation for an Open Source application. Some possibilities are: i. An installation guide for a platform or version thats not currently well documented; ii. Updating documentation that is out-of-date; iii. How-tos for specific uses/configurations of the application; iv. Create/update Wiki pages or FAQs for an OSS application; you may be able to look through mailing list(s) and forum(s) to extract out and organize the most useful posts and common questions/answers; b. Create templates, modules, plug-ins, themes, or skins for an OSS application that uses these; c. Software testing finding bugs, submitting bug reports, creating/refining test cases to demonstrate bugs; d. Translate an existing application into a language that it does not currently provide; e. Support provide assistance to users asking questions and posting problems on mailing list(s) and forum(s) for an OSS application. This is the least desirable option since it is a less permanent contribution to the community than the other options. Here is a list of some web sites that may help give you ideas on what you could do for your OSS contribution. Youre not limited to just these; other contributions that meet the above guidelines are OK too: SourceForge.net Help Wanted section: http://sourceforge.net/people/. Ubuntu participation: http://www.ubuntu.com/community/participate. Ubuntu translations: http://wiki.ubuntu.com/TranslatingUbuntu. HowtoForge submission of new HOWTOs: http://www.howtoforge.com/add_howto. The Linux Documentation Project (tldp.org) translations or original content here. Gnome & KDE contributions: http://live.gnome.org/JoinGnome & http://quality.kde.org/. OSS bounty sites: http://www.opensourcexperts.com/bountylist.html and http://bountycounty.org/. Abandoned projects to adopt: http://www.unmaintained-free-software.org http://www.opensourcexperts.com/, sun program If you are interested in doing this optional assignment, see the instructors informational posts in the Blackboard Discussion Board for the Open Source Contribution. 5 points extra credit. (est time minimum 6 hours, max depends on nature of contribution).

95-799 Linux

Page 5 of 5