Homework 1 - Description

Title

Date Posted

Date Due

Homework 1: Getting to Know U(buntu)

1 / 23 / 18

2 / 9 / 18

This assignment will serve as a gentle introduction into some of the fundamentals of the Linux FS, its integral components, and some useful bash operations.

Consider it your first steps in becoming those obnoxious computer scientists who boast an unsettling amount of knowledge about Linux systems and will share this encyclopedic knowledge at the drop of a hat (at the drop of a... Fedora, perhaps?).



Specifications

[25 Points]

Since we only have the time (and patience) to review some bash commands in class, you'll now get the opportunity to examine some others on your own.

Choose 10 commands from the following list, and for each:

  1. Give a brief definition of the command's purpose and functionality

  2. Provide an example of it in use

  3. Give a description of what your example is meant to accomplish.

Options to choose from:

fg, bg, jobs, cat, more, less, ping, traceroute, tcpdump, ssh, scp, telnet,
cut, paste, tail, nano, pico, ed, uptime, date, env, export, time, uname,
top, kill, killall, du, df, hexdump, dd, od, which, locate, chgrp, chown,
users, groups, netstat, arp, nc, find, whoami, open, who, wc, sort, awk,
rev, dig, nslookup, diff, patch, nice, make, tar, split, crontab, xargs,
screen, sudo, script, ssh-keygen, clear

[25 Points]

Bash reserves certain names and symbols for specific purposes, some of which we've already seen.

Choose 10 names / symbols from the following list and simply define what they represent and their intended purpose.

Options to choose from:

$, PATH, SHELL, TERM, USER, HOME, LANG, /dev/null, /dev/zero, <<, >>, .., !, !!, *, ?

[25 Points]

Since we've been talking about the Unix FS, let's take a look at some of its organizational structure!

Choose 5 children of the root directory, and for each, briefly describe its contents and purpose.

Options to choose from:

bin, boot, dev, etc, home, lib, media, mnt, opt, proc, root, run, sbin, srv, sys, tmp, usr, var

Choose 3 dotfiles in your home directory, and for each, briefly describe its contents and purpose.


[25 Points]

Finally, let's itch that info-literacy flag that this course is meant to scratch!

Read (ok, skim) through the Basics of the Unix Philosophy:
Basics of the Unix Philosophy

Write a short paragraph arguing how one of the Bash mechanics we've learned about demonstrates one or more of the Unix Philosophy rules.


...and that's it! Future homework will be more programmatic as we dive deeper into OS concepts (I promise!).



Submission

What

Submit a single .txt or .pdf containing your answers to the above.


How

We will (unfortunately) be using Brightspace to submit this assignment, though you should always be using version control to organize your assignments (even text)!

To submit your assignment:

  1. Find this classwork listing on Brightspace.

  2. Upload the .txt / .pdf file containing your submission.

  3. Make sure to click "submit" after the upload is complete!



  PDF / Print