Master: Amministratore Linux - Livello Base
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Slide riferite alla terza lezione del corso. Trattano dell'utilizzo della shell in generale e dei comandi in essa utilizzabili. Si parlerà anche delle soluzioni ad eventuali problemi di configurazione del sistema ed inoltre delle più comuni tecniche di virtualizzazione ed emulazione o l'utilizzo di wine.
Master: Amministratore Linux - Livello Avanzato
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Linux Capabilities: Un miglior root di SUID root.
Traduzione in lingua italiana delle diapositive presentate alla conferenza organizzata dalla Linux Foundation LinuxCon2014, Düsseldorf, 15 ottobre 2014.
Master: Amministratore Linux - Livello Base
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Cosa è Gnu/Linux - Breve storia - Concetti fondamentaliFulvio Corno
Master: Amministratore Linux - Livello Base
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Slide riferite alla terza lezione del corso. Trattano dell'utilizzo della shell in generale e dei comandi in essa utilizzabili. Si parlerà anche delle soluzioni ad eventuali problemi di configurazione del sistema ed inoltre delle più comuni tecniche di virtualizzazione ed emulazione o l'utilizzo di wine.
Master: Amministratore Linux - Livello Avanzato
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Linux Capabilities: Un miglior root di SUID root.
Traduzione in lingua italiana delle diapositive presentate alla conferenza organizzata dalla Linux Foundation LinuxCon2014, Düsseldorf, 15 ottobre 2014.
Master: Amministratore Linux - Livello Base
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Cosa è Gnu/Linux - Breve storia - Concetti fondamentaliFulvio Corno
Master: Amministratore Linux - Livello Base
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Pool di macchine Condor con utilizzo di Checkpoint ServerDavide Ciambelli
Installare un pool di macchine Condor (almeno 3) che utilizzino lo standard Universe e un checkpoint server e verificare che, sotto opportune condizioni (es.: l'owner ricomincia a utilizzare la macchina), i job vengono sospesi e migrati e che venga utilizzato il checkpoint server. Verificare inoltre il supporto di Condor per delegare l'amministrazione ad utenti che non siano root e le restrizioni applicabili.
Master: Amministratore Linux - Livello Base
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Master: Amministratore Linux - Livello Base
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Graphs: Cycles
Teaching material for the course of "Tecniche di Programmazione" at Politecnico di Torino in year 2012/2013. More information: http://bit.ly/tecn-progr
Introduction to JDBC and database access in web applicationsFulvio Corno
Introduction to the JDBC standard and best practices for database access from Web Applications.
Materiale realizzato per il corso di Sistemi Informativi Aziendali del Politecnico di Torino - http://bit.ly/sistinfo
Topics:
- About and History
- Basic concepts
- Minimal JavaFX Application
- Application structure
- The Scene Graph
- Events
- Model-View-Controller
- The Controller in FXML
Teaching material for the course of "Tecniche di Programmazione" at Politecnico di Torino in year 2013/2014. More information: http://bit.ly/tecn-progr
Tecnologie per la disabilita' nella formazione ingegneristica di baseFulvio Corno
Presentazione dell'articolo "Tecnologie per la disabilità nella formazione ingegneristica di base" presso il convegno Didamatica 2011, tenutosi a Torino il 04/05/2011
Introduction to Graphs
Topics:
Definition: Graph
Related Definitions
Applications
Teaching material for the course of "Tecniche di Programmazione" at Politecnico di Torino in year 2012/2013. More information: http://bit.ly/tecn-progr
Approcci ed applicazioni per l’Ambient IntelligenceFulvio Corno
Presentazione tenuta il 28/10/2014 da Fulvio Corno presso il workshop "La rivoluzione dell’Internet of Things: come cambia domotica" del congresso Home and Building 2014.
Presentation given at the seminar "Humans - Eperiences toward the metadesign dimension" at Politecnico di Torino, on 2016-01-08.
For more info about the seminar: http://www.politocomunica.polito.it/events/appuntamenti/(id_news)/7137?fb_action_ids=1040619222668718
For info about the Ambient Intelligence course: http://bit.ly/polito-ami
For info about the e-Lite research group: http://elite.polito.it/
Presentation video (in Italian): https://youtu.be/cBkJK6q3wC4
Introduzione ai Web Information SystemsFulvio Corno
Introduzione ai Web Information Systems (sistemi informativi aziendali basati su tecnologie web).
Materiale realizzato per il corso di Sistemi Informativi Aziendali del Politecnico di Torino - http://bit.ly/sistinfo
Tecnologie e applicazioni domotiche: potenzialità ed approcci industriali a c...Fulvio Corno
Presentazione di Fulvio Corno presso il seminario "L’innovazione tecnologica nella domotica" tenutosi il 29/10/2013 ed organizzato dalla Agenzia per il Trasferimento Tecnologico e l'Internazionalizzazione in Valle d'Aosta (ATTIVA) della Camera di Commercio di Aosta.
Informazione sul seminario: http://www.ao.camcom.it/l-innovazione-tecnologica-nella-domotica.aspx
Pool di macchine Condor con utilizzo di Checkpoint ServerDavide Ciambelli
Installare un pool di macchine Condor (almeno 3) che utilizzino lo standard Universe e un checkpoint server e verificare che, sotto opportune condizioni (es.: l'owner ricomincia a utilizzare la macchina), i job vengono sospesi e migrati e che venga utilizzato il checkpoint server. Verificare inoltre il supporto di Condor per delegare l'amministrazione ad utenti che non siano root e le restrizioni applicabili.
Master: Amministratore Linux - Livello Base
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Master: Amministratore Linux - Livello Base
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Graphs: Cycles
Teaching material for the course of "Tecniche di Programmazione" at Politecnico di Torino in year 2012/2013. More information: http://bit.ly/tecn-progr
Introduction to JDBC and database access in web applicationsFulvio Corno
Introduction to the JDBC standard and best practices for database access from Web Applications.
Materiale realizzato per il corso di Sistemi Informativi Aziendali del Politecnico di Torino - http://bit.ly/sistinfo
Topics:
- About and History
- Basic concepts
- Minimal JavaFX Application
- Application structure
- The Scene Graph
- Events
- Model-View-Controller
- The Controller in FXML
Teaching material for the course of "Tecniche di Programmazione" at Politecnico di Torino in year 2013/2014. More information: http://bit.ly/tecn-progr
Tecnologie per la disabilita' nella formazione ingegneristica di baseFulvio Corno
Presentazione dell'articolo "Tecnologie per la disabilità nella formazione ingegneristica di base" presso il convegno Didamatica 2011, tenutosi a Torino il 04/05/2011
Introduction to Graphs
Topics:
Definition: Graph
Related Definitions
Applications
Teaching material for the course of "Tecniche di Programmazione" at Politecnico di Torino in year 2012/2013. More information: http://bit.ly/tecn-progr
Approcci ed applicazioni per l’Ambient IntelligenceFulvio Corno
Presentazione tenuta il 28/10/2014 da Fulvio Corno presso il workshop "La rivoluzione dell’Internet of Things: come cambia domotica" del congresso Home and Building 2014.
Presentation given at the seminar "Humans - Eperiences toward the metadesign dimension" at Politecnico di Torino, on 2016-01-08.
For more info about the seminar: http://www.politocomunica.polito.it/events/appuntamenti/(id_news)/7137?fb_action_ids=1040619222668718
For info about the Ambient Intelligence course: http://bit.ly/polito-ami
For info about the e-Lite research group: http://elite.polito.it/
Presentation video (in Italian): https://youtu.be/cBkJK6q3wC4
Introduzione ai Web Information SystemsFulvio Corno
Introduzione ai Web Information Systems (sistemi informativi aziendali basati su tecnologie web).
Materiale realizzato per il corso di Sistemi Informativi Aziendali del Politecnico di Torino - http://bit.ly/sistinfo
Tecnologie e applicazioni domotiche: potenzialità ed approcci industriali a c...Fulvio Corno
Presentazione di Fulvio Corno presso il seminario "L’innovazione tecnologica nella domotica" tenutosi il 29/10/2013 ed organizzato dalla Agenzia per il Trasferimento Tecnologico e l'Internazionalizzazione in Valle d'Aosta (ATTIVA) della Camera di Commercio di Aosta.
Informazione sul seminario: http://www.ao.camcom.it/l-innovazione-tecnologica-nella-domotica.aspx
Il sistema percettivo umano e le sue implicazioni nel caso di persone con disabilità.
Materiale relativo al corso di Tecnologie per la Disabilità del Politecnico di Torino (http://bit.ly/tecndisab)
Master: Amministratore Linux - Livello Base
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Introduction to the Java Collections Framework.
Topics:
<a>
<b>
<c>
Teaching material for the course of "Tecniche di Programmazione" at Politecnico di Torino in year 2012/2013. More information: http://bit.ly/tecn-progr
Introduction to the JavaFX 2.0 framework.
Topics:
About and History
Basic concepts
Minimal JavaFX Application
Teaching material for the course of "Tecniche di Programmazione" at Politecnico di Torino in year 2012/2013. More information: http://bit.ly/tecn-progr
Esercizi di programmazione in C (v. 2.01)Fulvio Corno
Raccolta di esercizi e soluzioni di Programmazione in linguaggio C. Materiale relativo al corso di Informatica del Politecnico di Torino, anno accademico 2010/2011.
Programmazione in C (corso 12BHD Informatica)Fulvio Corno
Raccolta di slide per la parte di Programmazione in C del corso di Informatica (codice 12BHD) al Politecnico di Torino, valide per l'anno accademico 2010/2011.
Ulteriori informazioni alla pagina http://bit.ly/informatica-corno
Condivisione di dischi - NFS - Reti miste Windows/Linux - SMB e NetBIOS - Sam...Fulvio Corno
Master: Amministratore Linux - Livello Avanzato
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Log files - Approcci al TroubleshootingFulvio Corno
Master: Amministratore Linux - Livello Base
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Intro a Linux tenuta all'università degli studi di Napoli Federico II. Speaker: Gabriele Previtera - https://www.linkedin.com/in/gabriele-previtera-6657648b/
Chi ha paura della command-line? - WordCamp Roma 2018Marco Chiesi
Negli ultimi decenni le interfacce uomo-macchina dei sistemi informatici si sono evolute incessantemente con l’obiettivo di rendere l’interazione con gli utenti sempre più semplice e intuitiva.
Ci sono però ambiti specifici in cui l’interfaccia a “riga di comando” si dimostra tutt’oggi uno strumento insostituibile. Ne è la dimostrazione il crescente successo del progetto WP-CLI, supportato ufficialmente da WordPress.
Non è indispensabile essere programmatori o sistemisti per trarre un vantaggio diretto e tangibile dall’utilizzo di strumenti basati su riga di comando. Questo talk, dopo una rapida introduzione sull’argomento, presenterà una carrellata di esempi pratici e di semplice applicazione, in cui l’uso della command-line può far risparmiare tantissimo tempo.
SSH base - Configurazione di sistema da terminaleFulvio Corno
Master: Amministratore Linux - Livello Base
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
Richiami su Linux - Webmin - Reti di calcolatoriFulvio Corno
Master: Amministratore Linux - Livello Avanzato
Nel contesto della formazione professionale rivolta ad aziende ed enti pubblici, sono stati preparati ed erogati dei corsi di Amministratore di sistemi Linux, al livello base ed al livello avanzato.
Il contenuto del corso è allineato con alcuni moduli della certificazione LPIC (Linux Professional Institute Certification), a cavallo tra i livelli 1 e 2. Tutto il materiale didattico è disponibile liberamente con licenza Creative Commons BY-NC-SA.
I docenti del corso sono i proff. Giovanni Squillero, Bartolomeo Montrucchio e Fulvio Corno.
Maggiori informazioni: http://elite.polito.it/index.php/teaching/current-courses/255-master-linux-admin
6. Lavorare con la Console (inizio)
•Control+Alt+F1
•Usare l’applicazione «Terminale»
Percorso 5
Bash
6
7. Lavorare con la Console (fine)
•Alt+F7
•Comando «Exit»
•Control+D
•Chiudere il terminale
Percorso 5
Bash
7
8. Convenzioni
•Alcuni comandi richiedono argomenti
cd NOME_CARETELLA
•Il comportamento di (quasi) tutti i programmi può essere modificato attraverso opzioni
cat -n foo.txt
•Opzioni corte vs. opzioni lunghe
cat -ns foo.txt
cat --number --squeeze-blank foo.txt
Percorso 5
Bash
8
10. Aiuto / Informazioni Aggiuntive
•Documentazione in /usr/share/doc
–E.g.: less /usr/share/doc/bash/INTRO.gz
Percorso 5
Bash
10
11. Aiuto / Informazioni Aggiuntive
•Informazioni su di un comando
comando --help (oppure: comando -h)
man comando (e.g.: man man)
whatis comando
apropos comando
type [-a] comando
which comando
info [ comando/opzioni ]
Percorso 5
Bash
11
12. Il Prompt
•Il prompt standard mostra
–nome utente «@» nome macchina «:» cartella corrente «$»
(ovvero «#» se l’utente è l’amministratore, ed è possibile fare molti danni)
Percorso 5
Bash
12
13. Cartelle speciali
•Punto «.»
–la cartella corrente
•Punti-punto «..»
–la cartella padre della corrente
•Tilde «~»
–la propria cartella home (di solito /home/utente)
•Tilde + nome «~foo»
–la cartella home di foo (di solito /home/foo)
Percorso 5
Bash
13
14. Edit della linea di comando
•Bash permette di usare le frecce del cursore, e combinazioni di tasti usate da Emacs
–Control+A, Control+E, Meta+f, Meta+b, …
•«Freccia su»/«Freccia giù» permettono di muoversi fra i comandi precedenti
Percorso 5
Bash
14
16. Control
•Control+C
–Invia SIGINT al processo corrente
•Control+D
–End Of File
–Equivalente a Control+Z in MS-DOS/Windows
Percorso 5
Bash
16
17. Variabili
•La shell permette di definire «variabili»
•Dollaro «$» per usare le variabili definite
•Doppi apici vs. apice singolo
Percorso 5
Bash
17
18. Variabili
•Il comportamento e le opzioni di default della shell e di numerosi comandi sono definiti attraverso variabili
•L’insieme delle variabili è detto «ambiente» (environment)
•Usare il comando «set» per visualizzare le circa 50 variabili definite nell’ambiente corrente
Percorso 5
Bash
18
19. $PATH
•I comandi esterni vengono cercati nelle cartelle specificate nella variabile PATH
•È possibile specificare in modo esplicito il path dei comandi (relativo o assoluto)
Percorso 5
Bash
19
20. Alias
•È possibile creare «alias» ai comandi (e.g., per memorizzare le opzioni usate sempre)
•«alias» senza parametri mostra tutti gli alias
Percorso 5
Bash
20
21. Nomi dei file
•I sistemi POSIX mettono poche restrizioni ai nomi dei file, tuttavia è meglio evitare:
•spazi, tab e «a capo»
•caratteri che hanno significati convenzionali
/ “ ' * ; ? [ ] ( ) ~ ! $ { } < > # @ & |
•lettere al di fuori dal set ASCII base
e.g.: ω è ë ê æ …
Percorso 5
Bash
21
22. Nomi dei file
•I nomi che contengono spazi devo essere racchiusi da apici o doppi apici
Percorso 5
Bash
22
23. Esercizio
•A cosa servono i comandi «basename» e «dirname»?
–usare il manuale
–fare alcune prove
Percorso 5
Bash
23
24. Contenuto delle cartelle
ls [-laAs] [ f1 … fN ]
–mostra contenuto di una cartella
–Nota: in Ubuntu 12.04 il comando ha 44 opzioni diverse
Percorso 5
Bash
24
25. Significato del «formato lungo»
Percorso 5
Bash
25
tipo
permessi user group world
numero link
possessore
gruppo
dimensione
ultima modifica
nome
anche i colori aiutano a distinguere i vari tipi
26. Tipo dei file
file f1 [ … fN ]
–determina il tipo di file utilizzando vari metodi: informazioni del filesystem; magia; riconoscimento elementi tipici dei linguaggi
–man magic per maggiori informazioni sulla magia (e sui magic number)
Percorso 5
Bash
26
28. Comandi precedenti
history
–mostra i comandi precedenti
•Nota: è possibile usare e modificare i vecchi comandi con sequenze che iniziano con «!» e «^»
–E.g.: !-2:s/foo/bar/g
–man history
Percorso 5
Bash
28
29. Navigazione
cd [dir]
–cambia cartella
pwd
–mostra la cartella corrente
Percorso 5
Bash
29
30. Esempio
/
/tmp/
/tmp/dir1/
/tmp/dir1/file.txt
/tmp/dir2/
/tmp/dir2/file.txt
Percorso 5
Bash
30
/$ cd /tmp/dir1
31. Esempio
/
/tmp/
/tmp/dir1/
/tmp/dir1/file.txt
/tmp/dir2/
/tmp/dir2/file.txt
Percorso 5
Bash
31
/$ cd ../dir2
32. Esempio
/
/tmp/
/tmp/dir1/
/tmp/dir1/file.txt
/tmp/dir2/
/tmp/dir2/file.txt
Percorso 5
Bash
32
/$ cd ../..
33. Esempio
/
/tmp/
/tmp/dir1/
/tmp/dir1/file.txt
/tmp/dir2/
/tmp/dir2/file.txt
Percorso 5
Bash
33
/$ cd /tmp/dir1/./../dir2/..
34. Creazione
touch f1 [ … fN ]
–tocca (crea o aggiorna l’istante dell’ultima modifica)
mkdir [-p] dir
–crea una direcory
Percorso 5
Bash
34
35. Copia/Collegamento
cp [-pr] f1 f2
cp [-pr] f1 [ … fN ] dir
–copia file
ln [-s] f1 [ f2 ]
ln [-s] f1 [ … fN ] dir
–crea un collegamento
–nessun hard link a cartella, o fra filesystem diversi
–i dati sono cancellati se non più linkati da nessun file
Percorso 5
Bash
35
36. Cancellazione
rm [-rf] f1 [ … fN ]
–rimuove file
–alias comune: « alias rm='rm -I' »
rmdir dir
–rimuove una cartella vuota
Percorso 5
Bash
36
37. Esercizi
•Creare un file ~/foo/uno.txt
–creare un link simbolico ~/bar/due.txt
–creare un link ~/baz/tre.txt
•Modificare uno dei file ed osservare i cambianti negli altri due
•Rimuovere uno.txt
–cosa succede a due.txt e tre.txt
Percorso 5
Bash
37
39. Visualizzare
cat [-ns] [ f1 … fN ]
–concatena e mostra file
less [ f1 … fN ]
–mostra file (interattivo)
–usare «h» per un aiuto su comandi ed opzioni dentro less
reset
–(re-)inizializza il terminale
Percorso 5
Bash
39
40. Visualizzare
head f1 [ … fN ]
–mostra le prime 10 righe dei file
tail f1 [ … fN ]
–mostra le ultime 10 righe dei file
sort [-nu] [ f1 … fN ]
–visualizza i file dopo aver ordinato le righe
Percorso 5
Bash
40
41. Esercizi
•Quali sono i tipi di filesystem disponibili sul vostro sistema?
–Tip: esamina il file filesystems in /proc
•Quali sono le caratteristiche della CPU?
–Tip: esamina il file cpuinfo e meminfo in /proc
•Quali sono gli utenti?
–Tip: ogni utente ha una cartella in /home
Percorso 5
Bash
41
42. Output base
echo [-n] [ testo ]
–stampa il testo a video
clear
–cancella lo schermo
–equivalente a «Control+L»
Percorso 5
Bash
42
43. Informazione sull’utente
who [am I]
–chi sono gli utenti attivi nel sistema
–chi sono io?
groups
–gruppi a cui appartiene l’utente
Percorso 5
Bash
43
44. Modificare permessi
chmod [-R] modo [ f1 … fn ]
–cambia permessi
–chi: u g o a
–modifica: + - =
–permessi: r w x X
–speciali: s S t
Percorso 5
Bash
44
45. Modificare permessi
chown utente[:gruppo] f1 [ … fn ]
–cambia owner
chgrp gruppo f1 [ … fn ]
–cambia gruppo
Percorso 5
Bash
45
46. Root
•L’utente root è l’amministratore del sistema
–Nessuna limitazione
–Potenzialmente molto rischioso
sudo comando
–esegue il singolo comando con i privilegi di root
Percorso 5
Bash
46
Courtesy XKCD.com
47. sudo
Percorso 5
Bash
47
“With great power there must also come great responsibility” — Stan Lee
Immagine di JuliusC1224 (http://juliusc1224.deviantart.com/art/Spider-Man-331969812)
48. Informazioni
uname [-a]
–informazioni sul sistema
lsb_release [-a]
–informazioni sulla release
•File e cartelle in /proc
Percorso 5
Bash
48
49. Dimensione
wc[f1 … fN]
–dimensione dei file in righe, parole, caratteri
du[dir]
–dimensione dei file di una cartella
Percorso 5
Bash
49
50. Mountpoint
mount
–visualizza i filesystem montati
–per montare nuovi occorrono i privilegi di root
Percorso 5
Bash
50
51. Eseguire comandi
•Quando si esegue un comando la shell
–crea un nuovo processo (fork) in cui esegue il comando
–attende finché il nuovo processo non termina
•specificando «exec comando» il comando viene eseguito nel processo corrente
–quando il comando termina, la shell ormai non esiste più
–«exec echo addio» è un modo per terminare la shell
Percorso 5
Bash
51
52. Sleep/Date
sleep sec
–interrompe l’esecuzione fino all’istante ora corrente + sec secondi
date
–mostra la data e l’ora corrente
Percorso 5
Bash
52
53. Eseguire comandi
•Più comandi possono essere specificati sulla stessa linea separati con «;»
Percorso 5
Bash
53
54. Eseguire comandi
•Comandi racchiusi fra parentesi tonde «( )» sono eseguiti in una subshell (sotto-shell)
–la subshell eredita l’environment della shell madre
–ma le modifiche sono locali
Percorso 5
Bash
54
55. Processi e Job
•Ogni processo ha un numero
–PID
•Ogni processo è collegato ad un utente
–UID
Percorso 5
Bash
55
57. Gentilezza
nice num cmd
–esegue un comando in modo più gentile
renice num proc
–rende un processo più gentile
Percorso 5
Bash
57
58. Controllo processi
ps [-lA] [-f f]
–mostra informazioni sui processi
kill [-9] proc1 [ … procN ]
–termina i processi
top
htop
–mostra informazioni sui processi (interattivo)
Percorso 5
Bash
58
59. ps -l
Percorso 5
Bash
59
stato
flag
PID del padre
utilizzo processore
priorità
valore di nice
funzione del kernel
terminale
tempo
comando
dimensione
PID
utente
61. Controllo job
jobs
–mostra informazioni sui job in esecuzioni o sospesi
fg [%j]
bg [%j]
–riprende l’esecuzione del job in primo/secondo piano
kill [-9] %j1 [ … %jN ]
–termina i job
Percorso 5
Bash
61
62. Sospendere l’esecuzione
•L’esecuzione di un comando può essere sospesa con «Control+Z»
•L’esecuzione può essere ripresa
–In primo piano con «fg»
–In secondo piano (background) con «bg»
Percorso 5
Bash
62
63. Sospendere l’esecuzione
•L’esecuzione di un comando può essere sospesa con «Control+Z»
•L’esecuzione può essere ripresa
–In primo piano con «fg»
–In secondo piano (background) con «bg»
Percorso 5
Bash
63
numero del job
74. Esercizio
•Elencare tutti i file presenti in una directory in ordine di dimensione
–usando le opzioni di ls (man)
–usando il comando «sort»
Percorso 5
Bash script
74
75. Redirezione
tee [-a] file
–duplica lo stdin salvandone una copia in file
–utile per salvare una copia di quello che viene visualizzato o trasmesso nella pipe
Percorso 5
Bash
75
76. Archivi (tarball)
•È comune distribuire materiale sotto forma di archivio (come Zip o Tar in windows)
•Tradizionalmente nei sistemi UN*X si usano due programmi in pipe:
–uno per trasformare più file in un unico file (tar)
–uno per comprimere (gzip, bzip2, o xzip)
Percorso 5
Bash
76
77. Archivi (tar)
tar op archivio f1 … fN
–operazione: c x t f [v]
–se il nome dell’archivio è meno «-» usa lo stdout
Percorso 5
Bash
77
78. Archivi (compressione)
prog [-9vd] [f1 … fN]
prog [-9vd] -c
–comprime/decomprime file, modifica l’estensione in modo opportuno
–con l’opzione -c comprime/decomprime lo stdin e scrive sullo stdout
–i programmi sono: bzip2 (molto diffuso); gzip (minime risorse); xz (nuovo)
Percorso 5
Bash
78
80. Archivi (tar)
•È possibile specificare la compressione direttamente nei parametri di tar
–z per usare gzip
–j per usare bzip2
–J per usare xz
Percorso 5
Bash
80
81. Archivi (solo decompressione)
prog [-v] [f1 … fN]
prog [-v] -c
–decomprime file, modifica l’estensione in modo opportuno
–con l’opzione -c decomprime lo stdin sullo stdout
–i programmi sono: bunzip2; gunzip; unxz
Percorso 5
Bash
81
82. Cercare file
find [-xdev] dir [e1 … eN]
–cerca nell’albero del filesystem a partire da dir
–applica espressioni e1 … eN
–con xdev non esce dal filesystem radice
Percorso 5
Bash
82
84. Cercare file
grep [-iv] pattern [f1 … fN]
–filtra le righe che contengono un pattern
Percorso 5
Bash
84
85. Esercizio
•Cercare tutti i file di proprietà dell’utente corrente
–Tip: l’opzione non è stata spiegata, usare «man find»
Percorso 5
Bash script
85
86. Regex
•Una espressione regolare (regular expression, regexp, regex, RE) è una stringa che identifica un insieme di stringhe
•Operazioni di patten matching
•Slang: “la stringa meccia la regex”
Percorso 5
Bash
86
88. Regex: simboli base
•Cappello «^» e dollaro «$»
–rispettivamente, inizio e fine stringa
Percorso 5
Bash
88
^ma..a$
oh mamma mia!
mamma
89. Regex: simboli base
•Asterisco «*»
–un numero qualsiasi di volte, anche zero
•Più «+»
–una o più volte
•Punto interrogativo «?»
–zero o una volta
Percorso 5
Bash
89
ma?m+z*ak?
oh mamma mia!
mamma
90. Regex: simboli base
•Parentesi quadre «[ … ]»
–uno qualsiasi dei caratteri specificati
–se x-y, allora uno qualsiasi dei caratteri fra x e y
–se il primo carattere dopo «[» è «^», allora un qualsiasi carattere non specificato
Percorso 5
Bash
90
^[A-Z]a?o?[mn]+a$
Mamma
Nonna
93. These slides are licensed under a Creative Commons
Attribution Non Commercial Share Alike 4.0 International
To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/4.0/
Versione in Italiano:
https://creativecommons.org/licenses/by-nc-sa/4.0/deed.it