Difference between revisions of "OPS235 Assignment 1 Fall 2013"

From CDOT Wiki
Jump to: navigation, search
(OPS235 Assignment #1 (ASSIGNMENT TOTAL: 85 Marks))
Line 1: Line 1:
{{Admon/note|Assignment Material May Appear on Tests and Exam|Doing your assignment is part of your ongoing learning process. As such you will be tested on this material in future tests and exams. If you have any questions or need help, please consult your instructor in a timely manner. The due date for this assignment will not be extended. As it must be marked in class.
+
= OPS235 Assignment 1 =
This assignment will be marked partially through demonstration and partially through the submission of files.}}
+
Weight: 5% of the overall grade
  
 
+
Due Date: 4th of July at the start of class.
=OPS235 Assignment #1 (ASSIGNMENT TOTAL: 85 Marks)=
 
 
 
'''Weight:''' 5% of the overall grade
 
 
 
'''Due Date:'''  Week after study week. (Check with your Professor for exact date). Due at the start of class.
 
 
 
{{Admon/important|Use the ''Fedora2'' Virtual Machine|Complete all parts of this assignment on your <code>fedora2</code> virtual machine '''except''' for the installation of Linux on a new VM. Before starting your assignment make a backup of your virtual machine following the instructions in lab 2.}}
 
  
 
{{Admon/important|Backup Your Configuration Files|Before making any changes to your system configuration, backup the original configuration files into the <code>/backups</code> directory. The contents of that directory will be considered during marking.}}
 
{{Admon/important|Backup Your Configuration Files|Before making any changes to your system configuration, backup the original configuration files into the <code>/backups</code> directory. The contents of that directory will be considered during marking.}}
  
==Basic Chores (Section Total: 20 Marks)==
+
== Create a new virtual machine ==
 
+
# It doesn't matter whether you use the Live CD or Installation DVD for this.
'''Complete the following tasks on your system (4 points for each completed task).'''
+
# The hostname for the machine must be your learn user ID.
{{Admon/tip|Adding a Virtual Disk|To complete the first task you may need to create an additional virtual disk image for the <code>fedora2</code> virtual machine.}}
+
# The regular user you create during installation must also be your learn user ID.
 
+
# Make sure that LVM is used for your new system, "Use all space" should take care of that.
#Setup your system so that the command <code>mount /a1</code> -- executed by any user -- will attach the logical volume <code>lv_a1</code> from the volume group called <code>ops235</code> (minimum 100 MB) to the mountpoint <code>/a1</code> (The volume should NOT be automatically mounted at boot time)
 
#Setup your system login banner to say '''Free software: Free as in Freedom.''' (the user should see this on text-based virtual consoles before login to the system)
 
#Setup your system login message to say '''Open Source is Changing The Computing World''' (to be displayed on all text-based virtual consoles after a successful login prompt)
 
#Setup your system so that every user has a command alias called <code>deltemp</code> which will delete the contents of a directory called <code>~/tmp</code> ('''NOT''' the main <code>/tmp</code> directory!)
 
#Setup the bash environment for the user '''root''' (and only '''root''') so that the prompt includes the current date.
 
 
 
<!-- ==Finding your way==
 
 
 
'''Research on your Fedora system to come up with sets of commands to accomplish the following tasks :(5 points for each completed task)'''
 
 
 
#Display a list of all the files under the <code>/boot</code> directory and its sub-directories that have been created or modified within the last 4 hours.
 
#Display a list of all the files under the <code>/etc</code> directory and all its sub-directories that have been created or modified today (since mid-night).
 
#Display a list of all the files under the <code>/var</code> directory and all its sub-directories that were last accessed more than 4 days ago
 
 
 
Put each set of commands in a separate file. Name the file for task (1) as ass1-1, task (2) as ass1-2, etc. It must be possible to run these script files simply by typing their name (set the permissions appropriately). -->
 
 
 
==To sudo or not to sudo (Section Total: 12 Marks)==
 
 
 
Sudo is a tool which enables specific users to run specific commands as another user (such as "root").
 
 
 
'''Study the man page for the <code>sudo</code> command and:'''
 
 
 
#Update sudo's configuration file (using the proper program) to allow only your Learn account to run <code>sudo</code> for the following commands as <code>root</code>:  (8 points)
 
#*<code>mount</code>
 
#*<code>fdisk</code>
 
#*<code>passwd</code>
 
#*<code>lsusb</code>
 
#Create a new user called <code>helper</code> and allow only this user to run <code>sudo</code> for the following commands as ''your'' learn account: (4 points)
 
#*<code>vi</code>
 
#*<code>tail</code>
 
 
 
{{Admon/note|Bonus Option|Explain the hidden danger of including "vi" in the sudo command list (above). Submit this at the time of in-class marking as a well-written, typed, one-page paper with your name and LearnID at the top of the page.}}
 
 
 
==Package Management(Section Total: 8 Marks)==
 
 
 
'''Research the <code>rpm</code> and <code>yum</code> commands to:'''
 
 
 
#Verify the integrity of a package using <code>rpm</code> to see if any of its files have been altered since installation. (you will be asked to demonstrate this when your assignment is marked)(4 points)
 
#Add the [http://rpmfusion.org/ rpmfusion.org] repository to the yum configuration. (you will be asked to demonstrate installing a package from the rpmfusion repository when your assignment is marked) (4 points)
 
 
 
==Alternate Software Installation(Section Total: 13 Marks)==
 
 
 
'''Review the <code>yum group*</code> commands and use them to: (5 points)
 
 
 
#Find and install the XFCE dektop environment discussed in the following article: [http://www.osnews.com/story.php/5478/XFce-4--A-Refreshingly-Solid-Desktop XFCE Review]
 
#*You will be asked to demonstrate how to switch to this desktop environment and back again without restarting the X server.
 
 
 
'''Review the procedures for compiling and installing software from source code and use them to: (8 points)'''
 
#Find and install the E3 text editor from source code. The project page for it can be found here: [http://freshmeat.net/projects/e3 E3 Project]
 
#*You will be asked to demonstrate how to create a file using this editor.
 
 
 
==SysAdmin Portion(Section Total: 8 Marks)==
 
 
 
'''Create a bash script called <code>/bin/snapshot</code> to record the following information: (6 points)'''
 
*A list of all recent bad login attempts.
 
*A list of Logical Volumes, Physical Volumes, and Volume Groups.
 
*A report of all mounted filesystems, the amount of space used and the amount of space available.
 
*The information should be appended to the file <code>/var/log/snapshot.txt</code>
 
 
 
'''Research the <code>at</code> command and and schedule your script to execute at 2:00am on Christmas day (Dec 25). (2 points)'''
 
 
 
==Exploring Your Options(Section Total: 4 Marks)==
 
  
'''Research, install, and test one software application for each of the following tasks: (4 points)'''
+
The rest of this lab should be done after the installation is completed successfully.
  
{| style="float: right; margin: 0 0 3em 2em; border: 1px solid black;"
+
== LVM/fstab ==
!style="background: #cccccc" colspan="2"|Assigned 2nd Distros for Winter 2012
+
# Add two more drives to your virtual machine, 1GB each.
|-
+
# Add your new drives to the existing volume group.
|<u>Last Student# digit</u><br/>
+
# Create a new logical volume using all available space in the volume group, call it lv_extra
0 or 1<br/>
+
# Create a directory named "extra" in your home directory.
2<br/>
+
# Make a change to your fstab so that lv_extra can be mounted on that new directory when the command "mount /home/youruser/extra" is issued.
3<br/>
+
# Make sure that the mount command can be issued successfully by your regular user.
4 or 5<br/>
+
# Aso make sure lv_extra is not mounted automatically at boot.
6<br/>
 
7<br/>
 
8<br/>
 
9
 
|<u>Distro</u><br/>
 
OpenSuse<br/>
 
SimplyMepis<br/>
 
Mint<br/>
 
CentOS<br/>
 
Debian<br/>
 
Ubuntu<br/>
 
Kubuntu<br/>
 
Mandriva<br/>
 
|}
 
  
*Desktop Publishing
+
== Package Management ==
*Video Editing
 
*Accounting/Bookkeeping
 
*Real Time Strategy Game
 
  
==Install a second Linux distribution as a Virtual Machine(Section Total: 13 Marks)==
+
Research the <code>rpm</code> and <code>yum</code> commands to:
  
You will be asked to demonstrate booting the 2nd distro in class. To determine which Linux distribution to install, find your student ID number and then use the last digit in your student number to find your matched distribution due for this assignment using the table to the right.
+
# Verify the integrity of a package using <code>rpm</code> to see if any of its files have been altered since installation. (you will be asked to demonstrate this when your assignment is marked)(4 points)
 +
# Add the [http://rpmfusion.org/ rpmfusion.org] repository to the yum configuration. (you will be asked to demonstrate installing a package from the rpmfusion repository when your assignment is marked) (4 points)
  
 +
== Alternate Software Installation ==
  
 +
Review the <code>yum group*</code> commands and use them to:
  
{{Admon/important|Install the second Linux distribution in a new VM on your disk pack|Do NOT install the second Linux distro on <code>fedora2</code> -- create a new VM on your disk pack and install it there.}}
+
# Find and install the XFCE dektop environment discussed in the following article: [http://www.osnews.com/story.php/5478/XFce-4--A-Refreshingly-Solid-Desktop XFCE Review]
 +
# Do the rest of the lab (including the lab submission while running XFCE).
  
==Submitting your assignment (Section Total: 7 Marks)==
+
Review the procedures for compiling and installing software from source code and use them to:
 +
# Download and extract the source code for ISO Master.
 +
# Compile and install it.
 +
# Now run it and have a look at the Help/About dialog box. You will have to change the contents of that box.
 +
# Edit the file about.c in the source you use earlier, and change "An application for editing ISO9660 images based on the bkisofs access library and the GTK2 GUI toolkit." to "An application used by YOURNAME for OPS235 Assignment 1".
 +
# Compile and install the application again, exactly the same way you did the first time. Your change should be simple enough that complicated bugs are unlikely.
  
Please refer to your OPS235 instructor for submitting assignment #1
+
= Old Assignments =
  
* OPS235A: Due March 23 -- Marked in Class. Be prepared!
+
* [[OPS235_Assignment_1/W12]]
  
 
[[Category:OPS235]]
 
[[Category:OPS235]]

Revision as of 22:03, 10 June 2012

OPS235 Assignment 1

Weight: 5% of the overall grade

Due Date: 4th of July at the start of class.

Important.png
Backup Your Configuration Files
Before making any changes to your system configuration, backup the original configuration files into the /backups directory. The contents of that directory will be considered during marking.

Create a new virtual machine

  1. It doesn't matter whether you use the Live CD or Installation DVD for this.
  2. The hostname for the machine must be your learn user ID.
  3. The regular user you create during installation must also be your learn user ID.
  4. Make sure that LVM is used for your new system, "Use all space" should take care of that.

The rest of this lab should be done after the installation is completed successfully.

LVM/fstab

  1. Add two more drives to your virtual machine, 1GB each.
  2. Add your new drives to the existing volume group.
  3. Create a new logical volume using all available space in the volume group, call it lv_extra
  4. Create a directory named "extra" in your home directory.
  5. Make a change to your fstab so that lv_extra can be mounted on that new directory when the command "mount /home/youruser/extra" is issued.
  6. Make sure that the mount command can be issued successfully by your regular user.
  7. Aso make sure lv_extra is not mounted automatically at boot.

Package Management

Research the rpm and yum commands to:

  1. Verify the integrity of a package using rpm to see if any of its files have been altered since installation. (you will be asked to demonstrate this when your assignment is marked)(4 points)
  2. Add the rpmfusion.org repository to the yum configuration. (you will be asked to demonstrate installing a package from the rpmfusion repository when your assignment is marked) (4 points)

Alternate Software Installation

Review the yum group* commands and use them to:

  1. Find and install the XFCE dektop environment discussed in the following article: XFCE Review
  2. Do the rest of the lab (including the lab submission while running XFCE).

Review the procedures for compiling and installing software from source code and use them to:

  1. Download and extract the source code for ISO Master.
  2. Compile and install it.
  3. Now run it and have a look at the Help/About dialog box. You will have to change the contents of that box.
  4. Edit the file about.c in the source you use earlier, and change "An application for editing ISO9660 images based on the bkisofs access library and the GTK2 GUI toolkit." to "An application used by YOURNAME for OPS235 Assignment 1".
  5. Compile and install the application again, exactly the same way you did the first time. Your change should be simple enough that complicated bugs are unlikely.

Old Assignments