Introduktion till Unix och Linux TDDC66 Datorsystem och programmering Föreläsning (i)
Peter Dalenius Institutionen för datavetenskap 2014-08-22
2
3
Vem riktar sig kursen till? Hjälp! Jag fattar noll! Rädda mig!
Ska man trycka på Enter nu?!
Hur svårt kan det vara?
Hur mycket kan jag om Unix och Linux redan?
4
Jag käkar Linux till frukost. Fråga mig vad som helst!
Hur mycket måste man kunna?
5
Kursens målsättning Kursens syfte är dels att studenterna ska skaffa sig erfarenheter av att använda datorsystem på ett sådant sätt att laborativ verksamhet i framtida kurser underlättas, dels att studenterna ska bygga upp grundläggande erfarenheter inom programmering. Efter avslutad kurs ska studenterna kunna: • obehindrat använda de datorsystem för laborativ verksamhet som institutionen tillhandahåller • utforma och implementera enkla algoritmer i ett programspråk • redogöra för grundläggande begrepp inom programmering
6
Målsättning för datorsystemsdelen • Lära sig vilka datorresurser som finns på Institutionen för datavetenskap (IDA) och på universitetet i stort (Vad finns? Var finns det?) • Kunna använda dessa på ett effektivt sätt i följande kurser (När ska man använda vad? Hur gör man?)
7
Kursens olika delar • Datorsystem • två föreläsningar om Unix och Linux • webbaserade laborationsövningar
till största delen under nollperioden
• avslutande uppgift • prova på-laborationer
• Programmering • föreläsningar och lektioner • laborationsuppgifter • fortsättning i nästa kurs TDDD73 Funktionell och imperativ programmering i Python 8
Laborationsassistenter i datorintroduktionen • D1A: Fredrik Bergstrand • D1B: Torbjörn Lönnemark • D1C: Per Eklund • U1: Simon Delvert
9
Översikt: Vad ska vi göra idag? • Hur ser datorsalarna ut? • Kommandoskal • Kortfattad bakgrund till Unix och Linux • Exempel på kommandon • Webbkursverktyget STONE
10
Våra datorsalar
Hus B: Bottenvåningen
11
Hus B: Andra våningen
Våra datorsalar
12
Våra datorsalar • 15 salar i B-huset som kallas PUL (programutvecklingslaboratorium), kallade SUnn • C:a 150 datorarbetsplatser • 8000 aktiva studentkonton • All utrustning är larmad. • Administreras av TUS-gruppen som nås via
[email protected] • (Även ett mindre antal PUL med PC-datorer i E-huset)
13
Det gamla datorsystemet
14
•
Varje datorarbetsplats är utrustad med en s.k. tunn klient av märket SunRay.
•
Den kopplar upp sig mot en av 18 lastbalanserade servrar i vår datorhall.
•
Operativsystemet heter Solaris och är en variant av Unix från Oracle (f.d. Sun).
•
Mus och tangentbord är ljusa.
Det nya datorsystemet
15
•
Varje datorarbetsplats är utrustad med en liten kompakt dator (svarta lådan till höger).
•
Dessa datorer kör Linux Mint, en Linux-distribution som baserar sig på Debian och Ubuntu.
•
Mus och tangentbord är mörka.
Datorkonto • Samma användarnamn som för LiU-ID (e-post m.m.) • Samma lösenord (så länge man inte byter lokalt) • Registrering ® Aktivering av LiU-ID ® IDA-konto • Särskilda ordningsregler för IDA-konto (se webbkursmaterialet)
16
Två sätt att använda datorn • GUI (Graphical User Interface) – fönstersystem • Varje program körs i ett eller flera fönster som har en grafisk representation. • Man kommunicerar med hjälp av fingrar på skärmen, mus och ibland tangentbord.
• CLI (Command Line Interface) – kommandoskal • Programmen visar enbart text. • Man kommunicerar genom att skriva korta kommandon.
17
Filhantering i fönstersystem
Utforskaren i Microsoft Windows 18
Filhantering i fönstersystem
Filhanteraren i Java Desktop System 19
Filhantering i kommandoskal
20
Exempel zaza8 <1> pwd /home/petjo450/ zaza8 <2> ls ada lisp bin mail exempelfil.txt Mail zaza8 <3> cd pascal zaza8 <4> ls matrix.p perfect.p zaza8 <5>
21
perfect.txt perm.p
old pascal pc
primesum.p untar.pas
pub www-pub
Plus och minus med kommandoskal
22
Fördelar • Man blir mycket mer effektiv när man lärt sig kommando-språket
Nackdelar • Inlärningströskeln är högre jämfört med grafiskt gränssnitt.
• Man kan utföra mer komplexa uppgifter.
• Det kan vara svårt att få överblick eftersom man får hålla saker i huvudet.
Bakgrund till UNIX
23
Bakgrund till UNIX • Nya idéer: Multiuser, interactive, time-sharing operating system • CTSS (1961) från MIT • MULTICS (1962) med MIT, GE, Bell Labs • UNIX (1969) från Bell Labs
24
Tidiga riktlinjer för UNIX 1. Varje program ska utföra en liten väldefinierad uppgift och göra det bra 2. Förutsätt att ett programs utdata kan bli indata till ett annat program 3. Utveckla program som går att testa tidigt Man ville skapa en gemenskap!
25
Vad hände sedan? • UNIX var gratis från början • Många olika versioner utvecklades av företag och universitet • UNIX är varumärket, POSIX är standarden
26
GNU/Linux • GNU-projektet (1984-) • Richard Stallman • General Public License (GPL) • Free Software Foundation (FSF)
• Linux (1991-) • Linus Torvalds • Systemkärnan som GNUprojektet saknade
27
Kommandon i Unix och Linux kommando
argument
ls [-l] [-t] [filnamn ...] växlar
hakparenteser innebär frivillighet
28
punkter innebär att fler får anges
Exempel zaza10 <12> ls foo.txt info.txt zaza10 <13> -rw-rw-rw-rw-r--r--rw-rw-rw-
ls -l 2 student 2 student 4 student
rapport.doc pelle pelle pelle
zaza10 <14> ls –l –t *.txt -rw-r--r-- 2 student pelle -rw-rw-rw- 2 student pelle zaza10 <15>
29
128 3 aug 20.49 foo.txt 4915 1 mar 00.05 info.txt 10482 24 jul 23.09 rapport.doc 4915 128
1 mar 00.05 info.txt 3 aug 20.49 foo.txt
Flytta mellan kataloger /
bin
home
pelle
tmp
30
hejsan
zaza10 <1> pwd /home/pelle zaza10 <2> cd / zaza10 <3> cd bin zaza10 <4> cd .. zaza10 <5> cd ~ zaza10 <6> cat hejsan Hej på dej! Detta är en textfil. zaza10 <7>
Några vanliga kommandon
31
•
ls – visa filer i aktuell katalog
•
cd – byt aktuell katalog
•
pwd – visa aktuell katalog
•
cp – kopierar en eller flera filer
•
mv – flyttar eller byter namn på filer
•
rm – tar bort filer
•
cat – visar innehållet i en fil
•
more – visar innehållet i en fil en sida i taget
Introduktion till STONE • STONE • Simple Tool for Online Education
• Egenutvecklat (och rätt gammalt) system för presentation av kursmaterial på webben • Diagnostiska tester som rättas automatiskt • Innehåll • Unix och Linux, Emacs, universitetets datorresurser, utskrifter, labba hemifrån, m.m.
32
www.liu.se