Lecture # 3 - Systems and Network Programming

Linux Overview, Shell environment, Basic commands

House keeping items:

Agenda for Today (1/22/20):

Class Text is free online: The Linux Command Line, Fifth Internet Edition (class) : A Complete Introduction, William Shotts Free (PDF) format available at: linuxcommand.org

Webminal - A free online Linux terminal

After experimenting with Webminal, I've decided I like it, and will use for some aspects of the lectures. It is simple and fast to get an account. It's particularly well organized for explaining, demonstrating, and for allowing the student to exercise and experiment with the commands

  • Instructions for getting an account here: Webminal
  • Note: if you don't have your Linux environment setup, please use Webminal to accomplish H/W # 2
  • Please continue to work on your environment setup (VirtualBox and Mint Linux). You will need to have Mint for the upcoming programming components coming soon

Environment Setup Notes:

  1. Install VirtualBox
  2. Install Linux Mint (based on Ubuntu -- I prefer MATE desktop, but many people like Cinnamon)
    • Desktop Comparisons: MATE versus Cinnamon
    • Install Guest Additions - device drivers and system applications that optimize the guest operating system for better performance and usability.
  3. Enable "Shared Clipboard and Drag'nDrop": Settings -> Advanced
  4. Configure shared folders, then run the following commands..
    1. run: sudo usermod -a -G vboxsf `whoami`
    2. run: sudo chown -R `whoami`:users name-of-mount-point
    3. log out, and log back in

Linux Notes:

  1. Background Material
    1. History - Unix/Linux Timeline
    2. GNU - "GNU is not Unix - collection of "free" softwate (GPL)
    3. Linux Kernel + GNU software = GNU/Linux
    4. Linux Intro/tutorial by Augustine Abaris Summer 2108 (Boston University)
  2. Main Lecture Content (class Text): The Linux Command Line, William Shotts
  3. Previous CSE384 Instructor Notes: YUZHE (RICHARD) TANG
  4. Webminal - discussion, examples, exercises Start Terminal Here

Resources:

  1. LinuxCommang.org - Excellent Linux web resource (class text book here)
  2. Linux Intro/tutorial by Augustine Abaris Fall 2018 (Boston University)
  3. Linux Intro/tutorial by Augustine Abaris Summer 2108 (Boston University)
  4. A good Linux Overview (by Guru99)
  5. Tutorialspoint - deeper look at OS components
  6. Summary of Bash Commands from Dr. Fawcett's notes
  7. Webminal - discussion, examples, exercises Start Terminal Here

Interesting Technologies related to Linux:

  1. Kernel-based Virtual Machine (KVM) - turn Linux into a Hypervisor
  2. Docker (Container Technology)
*** Action Items for Next Class ***
  • H/W # 2 due 01/29
  • Review lecture Resources
  • skim chapter 1-5, Read chapters 5-10
  • complete environment (VirtualBox, Mint) setup