CSE 374 17au Homework 0

Due: Friday, Sept. 29, 2017, at 11 pm (you really really don't want to burn up late days on this one!).

The purpose of this assignment is to be sure that you have your Linux environment set up for the quarter and that you can log in and execute shell commands. For this assignment you must use either your account on the klaatu.cs.washington.edu machine or your own copy of the CSE Linux Virtual Machine. It is possible to use another reasonably recent Linux system for many things, but we will use the CSE systems to evaluate submitted work, and you need to verify that everything you submit works correctly there. See the Linux Resources page on the course web site for more information about how to get started.

  1. (Shell) You must be sure that your default shell is bash. Otherwise you will run into strange, baffling problems with shell scripts. Enter the command echo $SHELL. The response should be /bin/bash. If the shell name is different (csh, tcsh, or something else), use the appropriate commands on your system to change your login shell to bash. On many Linux and Unix systems this can be done with the command chsh or ypchsh.

  2. (Commands) Open a shell window and enter the following commands. They should work without errors if typed exactly as shown. (Exception: if you are using klaatu, omit the cd Desktop command. There is no Desktop directory on klaatu accounts.) The script command will capture the terminal session and save it in a file named hw0.script in the current directory.
       cd 
       cd Desktop  # omit if using klaatu
       script hw0.script
       whoami
       echo $SHELL
       pwd
       uname -a
       cat /etc/redhat-release
       gcc --version -std=c11
       exit
    Notes: if the gcc command generates a warning that -std=c11 is not a recognized option, your C compiler and, probably, your Linux version are too old, and you should use the current UW CSE Linux system for this class.

    The cat /etc/redhat-release command should print a message that begins with CentOS Linux release 7.4... . If it does not, or if you get a message that the file is not found, you are not using a properly configured UW CSE Linux machine, and you should repeat the assignment once you fix that.

  3. (Chatting) Go the course discussion board (link on the web site) and post a followup to the Welcome message to introduce yourself, and to get gopost to automatically track new postings for you.

Assessment: Your solution will be evaluated on how well it follows the instructions and produces the desired results. Note: the script command captures everything, including backspaces and other corrections as you are typing input. It's fine if there is some of this in the submitted file, but if there is too much clutter or too many mistakes, it would be best to start over and get a reasonably clean hw0.script file to turn in.

Turn-in Instructions: Use the turn-in drop box link on the main course web page to turn in the hw0.script file created in problem 1. The drop box will allow you to turn in your homework up to two days late, if you choose to use one or two of your late days, but you are strongly advised to save your late days for much later in the quarter when you may really want them.

If you are still trying to register for the course, email the course staff (use the correct cse374-staff email address) to get a klaatu account, and you will be able to run the assignment there and submit using the dropbox.

If you create the hw0.script file on klaatu, you can use scp (winscp on windows) to transfer the file to your local machine so it can be submitted using your local web browser. If you are using the UW CSE Linux virtual machine, you can run a web browser on the VM to submit the files from there.