Intro to Unix-1-2014

Total Page:16

File Type:pdf, Size:1020Kb

Intro to Unix-1-2014 Unix Introduction Getting started with the Unix Operating System What is an Operating System? A computer Operating System, or “OS” What is a computer operating system? Where? What does an OS provide? Insulation from hardware Allocation of resources Utility Functions (often blurring the line between OS and applications) The problem There are numerous past, present, and future storage technologies Each of these requires unique procedures for getting data to and from the device. But, it is unreasonable to expect each application to understand each device. The solution The OS provides simple "abstract devices” for storage: Random access (disks, solid state) Sequential access (tapes) Applications talk to the abstract devices, the OS translates and talks to the actual devices. The OS provides a layer of insulation from these details. Beyond storage Insulation roles of the OS extends to most aspects of computer hardware, including User interface devices Network and communications Memory Expansion busses … OS-Hardware pairing OS is necessarily closely tied to particular hardware. OS used to always be supplied by the hardware vendor. What does an OS provide? Insulation from hardware Allocation of resources Utility About that “disk” abstraction… The disk abstraction represents a disk as quantity of storage. An application is insulated from the hardware details of exactly how the data are stored. An application can read or write from any location in that quantity of storage. The problem The disk abstraction provides no structure for data stored in the disk. If multiple applications want to use the same disk, they must agree on a way to structure data. The disk abstraction is a like file cabinet without file folders. The solution An OS provides higher level abstractions than just devices. For data storage: File — a named container for data Directory — a named container for files Files and directories An application manages data inside a file however it likes. Things an application can do with a file: create, open, seek, read, write, close, rename, remove. The OS manages the storage of files on the disk for all applications. Beyond storage The OS arbitrates application access to all system resources. CPUs Memory Input and output devices … What does an OS provide? Insulation from hardware Allocation of resources Utility Gray areas at the edge Insulation from hardware and allocation of resources are core OS features, but alone don’t make for a useful system. This does not provide for a user interface. Practicality leads real-world OS's beyond the core functions. The boundary between operating systems and applications is open to interpretation. What does an OS provide? Insulation from hardware Allocation of resources Utility Layers of software OS and other software are often depicted as functional layers. Software in one layer can only use services provided by the immediately lower layer. Graphic from The Design of the Unix operating System by Maurice J. Bach, Prentice-Hall, 1986 Introduction to Unix Logging In • Unix is a multi-user operating system. If you want to use its resources, you must first identify yourself to the system by logging in. This is called authentication. Logging In ! The server we will be using for most of this class is accessible through the network by the name of iris. We use the full DNS name to distinguish it from any other server that may be named "iris". More on DNS later. iris.ils.indiana.edu Logging In • You can login to a Unix system from any location in the world using any client that supports the network protocol "ssh". The secure shell (ssh) is a protocol that is used to create a secure channel over an insecure network. • Invoking the ssh command will knock on a particular server door which in turn will prompt for a username and password. Once you successfully authenticate you have access to the system resources via this secure channel. Logging In Practice • We will now use ssh to connect to our host, iris. • Every modern operating system (Mac/Linux/Windows) has the capability of running a ssh client. Linux and Mac OS X are just different distributions of Unix and therefore have native support for this type of connectivity. Windows users can download one of the many free ssh clients. For OSX/Linux users, just launch the "Terminal" application and use the ssh command. Logging In Practice • In a Windows environment, launch your ssh client and enter the DNS name of our server: iris.ils.indiana.edu • In an OS X or Linux environment, once you launch the terminal application type the command line below. $ ssh [email protected] Kerberos Authentication • You will be asked for your kerberos password, which should be the same password you used to log in at this lab. • Kerberos is used campus-wide as a secure way to authenticate across an insecure network. You and the computer you connect to prove that you are who you say you are without actually sending passwords across the network. Logging In • Once successfully logged in, a Unix system typically tells you when you logged in last and from where, shows you any implemented disk quota, gives you some arbitrary text written by the system administrator, provides you with a command shell prompt, and then waits for your commands. Logging In • Example: Last login: Mon Aug 4 15:20:54 2008 from chionofuji.ils.indiana.edu Disk quotas for stevecox (uid 2238): Filesystem usage quota limit timeleft files quota limit timeleft |-----------------------------------------------------------------| | This system is for the use of authorized users only. | | Individuals using this computer system without authority, or in | | excess of their authority, are subject to having all of their | | activities on this system monitored and recorded by system | | personnel. | | | | In the course of monitoring individuals improperly using this | | system, or in the course of system maintenance, the activities | | of authorized users may also be monitored. | | | | Anyone using this system expressly consents to such monitoring | | and is advised that if such monitoring reveals possible | | evidence of criminal activity, system personnel may provide the | | evidence of such monitoring to law enforcement officials. | | | |SLIS computing accounts expire: | |See: http://www.slis.indiana.edu/technology/help/ for details | |-----------------------------------------------------------------| stevecox@iris:~ $ Logging In • You are left with a prompt at the bottom of your login screen. • A command prompt generally ends with either a dollar sign ($) or a percent sign (%). There are two main types of command shells; those based on a Bourne shell (i.e. sh and bash) and those based on a C shell (i.e. csh and tcsh). Logging In • To keep you straight on which you are using, the two shells traditionally use different prompts: $ for Bourne shells % for C shells. • Your account on iris uses a Bourne shell derivative (bash to be specific). Installing your Practice Directory • During this module you will be using a practice directory structure complete with practice files and directories. • You will now install this into your home directory on iris. Getting your Practice Directory • Make sure you are logged into iris and type these commands: $ cd (press return) $ tar -xvf /tmp/Unix_class.tar • You will see a list of filenames and directories scroll by. You will learn more about the command you just used on your last day of this module. Unix Commands • Now you are logged into the system, but you need to know how to talk to the system or issue your commands. Unix Commands • There are a number of commands which you need to know in order to tell the system to do various things (show you directories, move files, copy files, search for files, etc.). Unix Commands • Unix commands generally have three parts or syntactic elements: command_name Example: $ ls • Tells the system to show you a list of files Unix Commands • Unix Commands generally have three parts: command_name [options] Example: $ ls -l • List files, in “long format” form (gives more information about the files) Unix Commands command_name [options] Note: In some texts and web links, options can also be referred to as “flags”. Unix Commands • Unix Commands generally have three parts: command_name [options][operands] Example: $ ls -l Unix_class • List files, in “long format” form, in the directory called ‘Unix_class’ Unix Commands • Unix Commands generally have three parts: command_name [options][operands] Note: In some texts and web links, operands can also be referred to as “arguments” Unix Commands • Not all commands will need all three parts. In fact, some will only need the command_name. However, others may require two [operands] Unix Commands Important to Remember: • Unix is case-sensitive; old.files is different from Old.Files. • The spaces between the command_name, the [option] and the [operand] are VERY important. who - Practice • One simple Unix command is used to find out who is currently logged in. At the shell prompt (the $), type who. $ who who - Practice • Example Output $ who herring pts/12 Jun 17 15:36 (herring.slis.indiana.edu) mnapier pts/4 Jun 14 21:29 (12-222-70-96.client.insightbb.com) mnapier pts/8 Jun 17 07:39 (dmitrii.slis.indiana.edu) jfieber pts/5 Jun 17 15:56 (d-1-1.dhcp-149-159.indiana.edu) htripath pts/3 Jun 17 11:10 (lair4.slis.indiana.edu) mnapier pts/9 Jun 16 09:00 (12-222-70-96.client.insightbb.com) stevecox pts/10 Jun 17 16:51 (wireless-73-28.wireless.indiana.edu) stevecox pts/13 Jun 17 16:34 (chionofuji.slis.indiana.edu) $ Unix Directories Directories • The information stored in the Unix system is hierarchical. • Like the “folders” on a Mac or Windows operating system, Unix works with “directories.” Directories • A directory can contain either files or more directories (often called subdirectories).
Recommended publications
  • Administering Unidata on UNIX Platforms
    C:\Program Files\Adobe\FrameMaker8\UniData 7.2\7.2rebranded\ADMINUNIX\ADMINUNIXTITLE.fm March 5, 2010 1:34 pm Beta Beta Beta Beta Beta Beta Beta Beta Beta Beta Beta Beta Beta Beta Beta Beta UniData Administering UniData on UNIX Platforms UDT-720-ADMU-1 C:\Program Files\Adobe\FrameMaker8\UniData 7.2\7.2rebranded\ADMINUNIX\ADMINUNIXTITLE.fm March 5, 2010 1:34 pm Beta Beta Beta Beta Beta Beta Beta Beta Beta Beta Beta Beta Beta Notices Edition Publication date: July, 2008 Book number: UDT-720-ADMU-1 Product version: UniData 7.2 Copyright © Rocket Software, Inc. 1988-2010. All Rights Reserved. Trademarks The following trademarks appear in this publication: Trademark Trademark Owner Rocket Software™ Rocket Software, Inc. Dynamic Connect® Rocket Software, Inc. RedBack® Rocket Software, Inc. SystemBuilder™ Rocket Software, Inc. UniData® Rocket Software, Inc. UniVerse™ Rocket Software, Inc. U2™ Rocket Software, Inc. U2.NET™ Rocket Software, Inc. U2 Web Development Environment™ Rocket Software, Inc. wIntegrate® Rocket Software, Inc. Microsoft® .NET Microsoft Corporation Microsoft® Office Excel®, Outlook®, Word Microsoft Corporation Windows® Microsoft Corporation Windows® 7 Microsoft Corporation Windows Vista® Microsoft Corporation Java™ and all Java-based trademarks and logos Sun Microsystems, Inc. UNIX® X/Open Company Limited ii SB/XA Getting Started The above trademarks are property of the specified companies in the United States, other countries, or both. All other products or services mentioned in this document may be covered by the trademarks, service marks, or product names as designated by the companies who own or market them. License agreement This software and the associated documentation are proprietary and confidential to Rocket Software, Inc., are furnished under license, and may be used and copied only in accordance with the terms of such license and with the inclusion of the copyright notice.
    [Show full text]
  • Types and Programming Languages by Benjamin C
    < Free Open Study > . .Types and Programming Languages by Benjamin C. Pierce ISBN:0262162091 The MIT Press © 2002 (623 pages) This thorough type-systems reference examines theory, pragmatics, implementation, and more Table of Contents Types and Programming Languages Preface Chapter 1 - Introduction Chapter 2 - Mathematical Preliminaries Part I - Untyped Systems Chapter 3 - Untyped Arithmetic Expressions Chapter 4 - An ML Implementation of Arithmetic Expressions Chapter 5 - The Untyped Lambda-Calculus Chapter 6 - Nameless Representation of Terms Chapter 7 - An ML Implementation of the Lambda-Calculus Part II - Simple Types Chapter 8 - Typed Arithmetic Expressions Chapter 9 - Simply Typed Lambda-Calculus Chapter 10 - An ML Implementation of Simple Types Chapter 11 - Simple Extensions Chapter 12 - Normalization Chapter 13 - References Chapter 14 - Exceptions Part III - Subtyping Chapter 15 - Subtyping Chapter 16 - Metatheory of Subtyping Chapter 17 - An ML Implementation of Subtyping Chapter 18 - Case Study: Imperative Objects Chapter 19 - Case Study: Featherweight Java Part IV - Recursive Types Chapter 20 - Recursive Types Chapter 21 - Metatheory of Recursive Types Part V - Polymorphism Chapter 22 - Type Reconstruction Chapter 23 - Universal Types Chapter 24 - Existential Types Chapter 25 - An ML Implementation of System F Chapter 26 - Bounded Quantification Chapter 27 - Case Study: Imperative Objects, Redux Chapter 28 - Metatheory of Bounded Quantification Part VI - Higher-Order Systems Chapter 29 - Type Operators and Kinding Chapter 30 - Higher-Order Polymorphism Chapter 31 - Higher-Order Subtyping Chapter 32 - Case Study: Purely Functional Objects Part VII - Appendices Appendix A - Solutions to Selected Exercises Appendix B - Notational Conventions References Index List of Figures < Free Open Study > < Free Open Study > Back Cover A type system is a syntactic method for automatically checking the absence of certain erroneous behaviors by classifying program phrases according to the kinds of values they compute.
    [Show full text]
  • UNIX Workshop Series: Quick-Start Objectives
    Part I UNIX Workshop Series: Quick-Start Objectives Overview – Connecting with ssh Command Window Anatomy Command Structure Command Examples Getting Help Files and Directories Wildcards, Redirection and Pipe Create and edit files Overview Connecting with ssh Open a Terminal program Mac: Applications > Utilities > Terminal ssh –Y [email protected] Linux: In local shell ssh –Y [email protected] Windows: Start Xming and PuTTY Create a saved session for the remote host name centos.css.udel.edu using username Connecting with ssh First time you connect Unix Basics Multi-user Case-sensitive Bash shell, command-line Commands Command Window Anatomy Title bar Click in the title bar to bring the window to the front and make it active. Command Window Anatomy Login banner Appears as the first line of a login shell. Command Window Anatomy Prompts Appears at the beginning of a line and usually ends in $. Command Window Anatomy Command input Place to type commands, which may have options and/or arguments. Command Window Anatomy Command output Place for command response, which may be many lines long. Command Window Anatomy Input cursor Typed text will appear at the cursor location. Command Window Anatomy Scroll Bar Will appear as needed when there are more lines than fit in the window. Command Window Anatomy Resize Handle Use the mouse to change the window size from the default 80x24. Command Structure command [arguments] Commands are made up of the actual command and its arguments. command -options [arguments] The arguments are further broken down into the command options which are single letters prefixed by a “-” and other arguments that identify data for the command.
    [Show full text]
  • System Log Commands
    System Log Commands • system set-log , on page 2 • show system logging-level, on page 3 • show log, on page 4 System Log Commands 1 System Log Commands system set-log system set-log To set the log level and log type of messages, use the system set-log command in privileged EXEC mode. system set-log level {debug | info | warning | error | critical} logtype {configuration | operational | all} Syntax Description level Specifies the log level. debug Logs all messages. info Logs all messages that have info and higher severity level. warning Logs all messages that have warning and higher severity level. error Logs all messages that have error and higher severity level. critical Logs all messages that have critical severity level. logtype Specifies the log type. configuration Configuration log messages are recorded. operational Operational log messages are recorded. all All types of log messages are recorded. Command Default For the configuration log, info is the default level. For the operational log, warning is the default level. Command Modes Privileged EXEC (#) Command History Release Modification 3.5.1 This command was introduced. Usage Guidelines After a system reboot, the modified logging configuration is reset to the default level, that is, info for the configuration log and warning for the operational log. Example The following example shows how to configure a log level: nfvis# system set-log level error logtype all System Log Commands 2 System Log Commands show system logging-level show system logging-level To view the log level and log type settings, use the show system logging-level command in privileged EXEC mode.
    [Show full text]
  • The /Proc File System
    09 0430 CH07 5/22/01 10:30 AM Page 147 7 The /proc File System TRY INVOKING THE mount COMMAND WITHOUT ARGUMENTS—this displays the file systems currently mounted on your GNU/Linux computer.You’ll see one line that looks like this: none on /proc type proc (rw) This is the special /proc file system. Notice that the first field, none, indicates that this file system isn’t associated with a hardware device such as a disk drive. Instead, /proc is a window into the running Linux kernel. Files in the /proc file system don’t corre- spond to actual files on a physical device. Instead, they are magic objects that behave like files but provide access to parameters, data structures, and statistics in the kernel. The “contents” of these files are not always fixed blocks of data, as ordinary file con- tents are. Instead, they are generated on the fly by the Linux kernel when you read from the file.You can also change the configuration of the running kernel by writing to certain files in the /proc file system. Let’s look at an example: % ls -l /proc/version -r--r--r-- 1 root root 0 Jan 17 18:09 /proc/version Note that the file size is zero; because the file’s contents are generated by the kernel, the concept of file size is not applicable.Also, if you try this command yourself, you’ll notice that the modification time on the file is the current time. 09 0430 CH07 5/22/01 10:30 AM Page 148 148 Chapter 7 The /proc File System What’s in this file? The contents of /proc/version consist of a string describing the Linux kernel version number.
    [Show full text]
  • Dell EMC Powerstore CLI Guide
    Dell EMC PowerStore CLI Guide May 2020 Rev. A01 Notes, cautions, and warnings NOTE: A NOTE indicates important information that helps you make better use of your product. CAUTION: A CAUTION indicates either potential damage to hardware or loss of data and tells you how to avoid the problem. WARNING: A WARNING indicates a potential for property damage, personal injury, or death. © 2020 Dell Inc. or its subsidiaries. All rights reserved. Dell, EMC, and other trademarks are trademarks of Dell Inc. or its subsidiaries. Other trademarks may be trademarks of their respective owners. Contents Additional Resources.......................................................................................................................4 Chapter 1: Introduction................................................................................................................... 5 Overview.................................................................................................................................................................................5 Use PowerStore CLI in scripts.......................................................................................................................................5 Set up the PowerStore CLI client........................................................................................................................................5 Install the PowerStore CLI client..................................................................................................................................
    [Show full text]
  • Epmp Command Line Interface User Guide
    USER GUIDE ePMP Command Line Interface ePMP Command Line Interface User Manual Table of Contents 1 Introduction ...................................................................................................................................... 3 1.1 Purpose ................................................................................................................................ 3 1.2 Command Line Access ........................................................................................................ 3 1.3 Command usage syntax ...................................................................................................... 3 1.4 Basic information ................................................................................................................. 3 1.4.1 Context sensitive help .......................................................................................................... 3 1.4.2 Auto-completion ................................................................................................................... 3 1.4.3 Movement keys .................................................................................................................... 3 1.4.4 Deletion keys ....................................................................................................................... 4 1.4.5 Escape sequences .............................................................................................................. 4 2 Command Line Interface Overview ..............................................................................................
    [Show full text]
  • A.5.1. Linux Programming and the GNU Toolchain
    Making the Transition to Linux A Guide to the Linux Command Line Interface for Students Joshua Glatt Making the Transition to Linux: A Guide to the Linux Command Line Interface for Students Joshua Glatt Copyright © 2008 Joshua Glatt Revision History Revision 1.31 14 Sept 2008 jg Various small but useful changes, preparing to revise section on vi Revision 1.30 10 Sept 2008 jg Revised further reading and suggestions, other revisions Revision 1.20 27 Aug 2008 jg Revised first chapter, other revisions Revision 1.10 20 Aug 2008 jg First major revision Revision 1.00 11 Aug 2008 jg First official release (w00t) Revision 0.95 06 Aug 2008 jg Second beta release Revision 0.90 01 Aug 2008 jg First beta release License This document is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License [http:// creativecommons.org/licenses/by-nc-sa/3.0/us/]. Legal Notice This document is distributed in the hope that it will be useful, but it is provided “as is” without express or implied warranty of any kind; without even the implied warranties of merchantability or fitness for a particular purpose. Although the author makes every effort to make this document as complete and as accurate as possible, the author assumes no responsibility for errors or omissions, nor does the author assume any liability whatsoever for incidental or consequential damages in connection with or arising out of the use of the information contained in this document. The author provides links to external websites for informational purposes only and is not responsible for the content of those websites.
    [Show full text]
  • Powerview Command Reference
    PowerView Command Reference TRACE32 Online Help TRACE32 Directory TRACE32 Index TRACE32 Documents ...................................................................................................................... PowerView User Interface ............................................................................................................ PowerView Command Reference .............................................................................................1 History ...................................................................................................................................... 12 ABORT ...................................................................................................................................... 13 ABORT Abort driver program 13 AREA ........................................................................................................................................ 14 AREA Message windows 14 AREA.CLEAR Clear area 15 AREA.CLOSE Close output file 15 AREA.Create Create or modify message area 16 AREA.Delete Delete message area 17 AREA.List Display a detailed list off all message areas 18 AREA.OPEN Open output file 20 AREA.PIPE Redirect area to stdout 21 AREA.RESet Reset areas 21 AREA.SAVE Save AREA window contents to file 21 AREA.Select Select area 22 AREA.STDERR Redirect area to stderr 23 AREA.STDOUT Redirect area to stdout 23 AREA.view Display message area in AREA window 24 AutoSTOre ..............................................................................................................................
    [Show full text]
  • Unix: Beyond the Basics
    Unix: Beyond the Basics BaRC Hot Topics – September, 2018 Bioinformatics and Research Computing Whitehead Institute http://barc.wi.mit.edu/hot_topics/ Logging in to our Unix server • Our main server is called tak4 • Request a tak4 account: http://iona.wi.mit.edu/bio/software/unix/bioinfoaccount.php • Logging in from Windows Ø PuTTY for ssh Ø Xming for graphical display [optional] • Logging in from Mac ØAccess the Terminal: Go è Utilities è Terminal ØXQuartz needed for X-windows for newer OS X. 2 Log in using secure shell ssh –Y user@tak4 PuTTY on Windows Terminal on Macs Command prompt user@tak4 ~$ 3 Hot Topics website: http://barc.wi.mit.edu/education/hot_topics/ • Create a directory for the exercises and use it as your working directory $ cd /nfs/BaRC_training $ mkdir john_doe $ cd john_doe • Copy all files into your working directory $ cp -r /nfs/BaRC_training/UnixII/* . • You should have the files below in your working directory: – foo.txt, sample1.txt, exercise.txt, datasets folder – You can check they’re there with the ‘ls’ command 4 Unix Review: Commands Ø command [arg1 arg2 … ] [input1 input2 … ] $ sort -k2,3nr foo.tab -n or -g: -n is recommended, except for scientific notation or start end a leading '+' -r: reverse order $ cut -f1,5 foo.tab $ cut -f1-5 foo.tab -f: select only these fields -f1,5: select 1st and 5th fields -f1-5: select 1st, 2nd, 3rd, 4th, and 5th fields $ wc -l foo.txt How many lines are in this file? 5 Unix Review: Common Mistakes • Case sensitive cd /nfs/Barc_Public vs cd /nfs/BaRC_Public -bash: cd: /nfs/Barc_Public:
    [Show full text]
  • Regular Expressions and Sed &
    Regular expressions and sed & awk Regular expressions • Key to powerful, efficient, and flexible text processing by allowing for variable information in the search patterns • Defined as a string composed of letters, numbers, and special symbols, that defines one or more strings • You have already used them in selecting files when you used asterisk (*) and question mark characters to select filenames • Used by several Unix utilities such as ed, vi, emacs, grep, sed, and awk to search for and replace strings – Checking the author, subject, and date of each message in a given mail folder egrep "ˆ(From|Subject|Date): " <folder> – The quotes above are not a part of the regular expression but are needed by the command shell – The metacharacter | (or) is a convenient one to combine multiple expressions into a single expression to match any of the individual expressions contained therein ∗ The subexpressions are known as alternatives • A regular expression is composed of characters, delimiters, simple strings, special characters, and other metacharacters defined below • Characters – A character is any character on the keyboard except the newline character ’\n’ – Most characters represent themselves within a regular expression – All the characters that represent themselves are called literals – A special character is one that does not represent itself (such as a metacharacter) and needs to be quoted ∗ The metacharacters in the example above (with egrep) are ", ˆ, (, |, and ) – We can treat the regular expressions as a language in which the literal characters
    [Show full text]
  • User's Guide for Linux and UNIX
    Centrify Server Suite User’s Guide for Linux and UNIX July 2021 (release 2021) Centrify Corporation • • • • • • Legal Notice This document and the software described in this document are furnished under and are subject to the terms of a license agreement or a non-disclosure agreement. Except as expressly set forth in such license agreement or non-disclosure agreement, Centrify Corporation provides this document and the software described in this document “as is” without warranty of any kind, either express or implied, including, but not limited to, the implied warranties of merchantability or fitness for a particular purpose. Some states do not allow disclaimers of express or implied warranties in certain transactions; therefore, this statement may not apply to you. This document and the software described in this document may not be lent, sold, or given away without the prior written permission of Centrify Corporation, except as otherwise permitted by law. Except as expressly set forth in such license agreement or non-disclosure agreement, no part of this document or the software described in this document may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, electronic, mechanical, or otherwise, without the prior written consent of Centrify Corporation. Some companies, names, and data in this document are used for illustration purposes and may not represent real companies, individuals, or data. This document could include technical inaccuracies or typographical errors. Changes are periodically made to the information herein. These changes may be incorporated in new editions of this document. Centrify Corporation may make improvements in or changes to the software described in this document at any time.
    [Show full text]