![]() |
Introduction
to Linux/Unix David Morgan U. C. L. A. Extension - X417.31 see syllabus for email address |
|
||||||||||||||||||||||||||
Administrative
links
Shell scripting: Shell programming: Filesystems: |
FALL
2018 This Website (http://uclaextension.dmorgan.us/morgan_david/unex.html) will be used extensively to communicate with you. Announcements, grade reports, and assignments will be posted here. The site can be viewed from an internet-connected browser anywhere. You are responsible for awareness of the information posted here. Course outline - with topic coverage by week. All corresponing readings, , homework assignments, and in-class slides I will use are here. You can preview or review the slide lessons at any time, or view them while I am presenting them in class.
Syllabus - containing my email
address, specification of required textbook, recommendation of other
useful books, and some policy information. Thank you - for your interest in linux and this course. I enjoyed our time together. (12/10) Related linux/unix classes - that may interest you (and that I teach). This class qualifies you for any of them. System
Administration - continuation of my introductory course with system administration focus Schedule: the courses tend to be
offered every other quarter. There may be variations but this is the
general expectation. If you are
interested please "stay tuned" to the class schedule as UCLA
Extension publishes it. Or if you email me I can let you know what we are
putting in the pipeline. None of these is scheduled for Winter, but I
expect one or more in Spring. An "important" utility - the GNU hello program. (3/19) "make" utility's logic in shellscript form - as a point of interest. I came across it recently. makecmd() { # # read the Makefile's rule, storing the target and dependency list separately # check each dependency for greater recency than the target # till you find one that's newer, if any # if you do, go through the list of commands executing each, # then truncate the dependency comparisions (to rebuild, you only need to do so once) # read target colon sources for src in $sources; do if [ $src -nt $target ]; then while read cmd; do eval ${cmd#\t} done break fi done } from Learning the bash shell, Newham and Rosenblatt, O'Reilly, p. 183 (12/10) Final
- is a take-home exam. It is multiple-choice. Submit your answers to all the questions
following these
preparation and submittal instructions (you will use ftp to deposit
your answer file in your "assignments" subdirectory on
"unexgate.dmorgan.us" machine;
create it if it isn't already there; here's
how. See posting entitled "Remote Unix system" at the
bottom of this page.). Please name your file "final.txt". I will
grade these using an automated script, so the format of the answer is
critical to intelligibility, as is the case (lower) of the filename. -due on
unexgate.dmorgan.us by end-of-day Monday, December 17 (one week after last
class meeting). Final - will be a take-home exam., multiple-choice. Will be posted soon, and due one week after the last class meeting. (12/3) Homework - Our xfs filesystem discovery in Winter 2016 class - we learned that the classroom machines (CentOS image) had the xfs filesystem, not ext2, on their root partitions. And that the inode of the root directory is not necessarily number 2, as in ext2. Instead we observed that ls reported 128. Is that meaningful? If you insert a USB flash drive formatted with vfat (i.e., fat32), ls will report inode numbers for the drive's root directory and other files. vfat however, unlike, ext2, does not have/record/implement/know inodes. Are those reported inode numbers meaningful? How seriously should we take the reported inode numbers for filesystems other than ext? Here's some information about xfs. (11/20) And here's my dangerous script for successively creating vfat, ext2, and xfs filesystems on a flash drive, mounting it, and querying what the inode number is for the created filesystem's root directory. mkfs has a -t option to specify the type of filesystem it should make. For example, you could give it " -t ext2 " or " -t fat ". According the your choice, there are specialized binaries that make the filesystem and mkfs calls the right one for the job, for example mkfs.ext2 or mkfs.fat. Get a rough idea of what filesystems mkfs can create for you, by looking for such specialized binaries with the command locate mkfs | grep bin (11/26) DETER homework - Remaining meetings - Grades - have been published at the link entitled "Grade reports," at left. Includes the two shell scripts. (11/12)
Homework -
Next topic: gcc fork1.c -o fork1 and then to run" ./fork1 The summary of the point of these programs is:
(11/5) Grades - have been published at the link entitled "Grade reports," at left. Includes the tech support request assignment. (10/29) Grades - have been published at the link entitled "Grade reports," at left. Includes the permissions assignment. (10/22) Homework -
A pretty good linux book that was brought to my attention by a former student. (10/15)
Homework -
Homework - systemd's Windows equivalents - Different platform, same concept. In Windows also, you can launch and terminate a service whenever you want, what systemctl calls "start" and "stop," and you can set one to launch or not as part of system boot, what systemctl calls "enable" and "disable". (10/1) Data dump program category - in class you will see me use xxd sometimes, to legibly display the bytes from some source in all their precise binary glory-- maybe a master boot record I obtained from the hard disk using the dd command, or a data stream snatched from the network interface card by Wireshark or tcpdump for example. Another such command is od. Here is some information about od and other data dump utilities. They can be useful; you should be able to use them at basic level and understand their output. (10/1)
Nuts and bolts - some tidbits worth more
than their weight Take-away from presentation on bootup, initialization, and service management:
How to access your individual account on the class Remote Unix system. Handout - explaining use of the computers in our classroom. Dump of a GPT header, part of the GUID partition scheme. This newer technology contrasts with the old, original, MBR-based scheme. Devices, etc. - understanding distinctions among these entities is fundamental to understanding what you are partitioning when you partition, what you are formatting when you format, what you are mounting when you mount, what you are encrypting when you encrypt. People often confuse them. Western Digital manufactures hard disks Apple's launchd - the inspiration for systemd. You can see the strong parallels between this article's description of launchd and our discussion of systemd. FreeBSD startup - I logged in. Note the greeting I got. This reflects operation of the SysV system initialization method in FreeBSD. Homework - see course outline, topic 1. Do the reading and homework shown there, except let's defer the "Linux commands" portion of the homework till next week pending explanation of basic commands, and the assignment, in class. You may wish nevertheless to read over "Linux commands" in anticipation. Replacing BIOS - including replacement for the MBR disk scheme. Necessitated to enable support of drives over 2TB. Dubbed "extensible firmware interface." Here's a relevant article. Information sources about linux - see the latter several slides in the presentation at the link "Intro/installation" Sobell textbook author Mark Sobell has a website. Cheat sheet - for the bash shell, compiled by a student from the bash man page (help file). 1985
roundtable discussion
- will Unix become the next MS-DOS? Request - please don't change the passwords on the "root" or "student" accounts of the classroom workstations. Using ssh (secure shell). ssh is an important tool you will use for interacting with remote computers. For that you will need an ssh client. There are a number of ssh client alternatives. Running linux at home. |
Milestones in the history of computation Colossus - 1944
|
||||||||||||||||||||||||||