Introduzione a UNIX - Dipartimento di Matematica

Transcript

Introduzione a UNIX - Dipartimento di Matematica
Introduzione all'uso del sistema operativo Ubuntu
Aprire un Terminal.
Osservare il prompt dei comandi
Una shell è pronta ad interpretare ed eseguire i vostri comandi consentendovi
di accedere ai servizi del S.O. La shell si presenta con una riga di comando
dotata di un prompt, ma nelle forme più evolute una shell può presentarsi con
un sistema grafico di icone o di oggetti grafici, oppure con un sistema di
riconoscimento di comandi in forma vocale.
I primi comandi
•
whoami
•
groups
stampa i gruppi cui l’utente appartiene.
date
senza argomenti, stampa la data e l'ora corrente.
cal 2001
stampa il calendario dell'anno specificato
cal 2 2007
stampa il calendario del mese corrente dell'anno specificato.
pwd
mostra il pathname della directory corrente.
•
•
•
•
Impareremo comandi per
- scrivere e visualizzare un file
- copiare, eliminare, spostare e ridenominare files
- creare files, anche vuoti
- creare e distruggere directories
- elencare il contenuto delle directories, anche in modo dettagliato
– gestire spostamenti assoluti, relativi e a ritroso delle directories
Usare Unix a casa o nel Laboratorio Informatico a Matematica
Mac OS, CentOS
Tra le Utilities c'è un Terminal che va avviato.
Windows
All' indirizzo:
http://fdi.labmedinfo.org/FdIIB/lucidi/pratica/cygwininstallazione.p
df trovate le istruzioni per installare Cygwin che è un ambiente
“Linux-like” per Window.
1
FILE SYSTEM
E' la parte del S.O. che si occupa della gestione dei dischi, in quanto
il disco è il dispositivo di memorizzazione permanente (non
volatile) per eccellenza.
Il file system definisce le operazioni possibili e le convenzioni usate
per gestire i dischi. Il file system offre:
- il file come unità per memorizzare al suo interno le informazioni
- la directory (cartella) come file speciale che può contenere altri
files o directories.
LA GERARCHIA DEI FILES E DELLE
DIRECTORIES
/
bin
ci sono eseguibili di base (cat, chmod, cp, date,
echo, ls,,mkdir,rm, rmdir, touch, more, less)
dev
etc
home /
è la home del server
esm
inf
ext /
galbiati
cl234568
cl456789
cl987654
opt
root
usr
tmp
var
C'è directory radice
/
C'è directory home
che è indicabile anche con il simbolo
/home/ext/cognome
~
C’é directory corrente o attiva
C’é directory padre
.
..
Il nome completo di un file si chiama pathname ed inizia dalla radice (/),
altrimenti il nome è relativo alla directory corrente. Nel primo caso il
percorso è assoluto e parte dalla radice, nel secondo caso è relativo e parte
dalla directory corrente.
2
Comandi
Un comando Unix è del tipo:
nome_comando [opzioni]
[argomenti]
Esempio di comandi molto utili:
ls
rm
cp
mv
more
–la
nomefile
file1 file2
file1 file2
nomefile
elenca i file presenti nella vostra cartella
permette di cancellare il file specificato
copia il file1 in un nuovo file di nome file2
rinomina il file1 con il nome file2
visualizza, pagina per pagina, il file specificato
Per scrivere un file di nome nome_file:
basta invocare un editor fornito dal sistema, ad esempio:
•
nano
nome_file
•
gedit
nome_file
Per vedere il contenuto di un file di nome nome_file:
1) cat
nome_file
scrive il contenuto del file sull' output standard (lo schermo)
2) more nome_file
(avanti di una pagina con la barra; per finire q)
3) pg
•
nome_file (avanti di una pagina con return; per finire q)
touch
nome_file
crea un file vuoto con il nome specificato
•
ls
[-al]
elenca (lista) i files della directory corrente, ad eccezione di
quelli nascosti; con l'opzione -l si richiede un elenco completo
delle caratteristiche dei files; con l'opzione -a si richiede di
includere nell'elenco anche i files che iniziano con un punto.
•
pwd
stampa il nome della directory corrente
•
cd nome_dir
cambia directory passando in quella specificata; se nessuna directory
è specificata passa nella directory home.
3
•
mkdir
nome_dir
se si possiede l'accesso in scrittura alla directory padre, il
comando crea, nella directory corrente, una con il nome
specificato.
•
rmdir nome_dir
cancella la directory specificata, che deve essere vuota.
•
rm -ri nome_dir
cancella ricorsivamente l'intero contenuto della directory
specificata, oltre alla directory stessa, chiedendo conferma
interattiva prima di cancellare ogni file.
•
rm [-i] nome_file
elimina il file dal directory [con richiesta interattiva].
•
cp file1 file2
cp file directory
file1 viene copiato in file2;
file viene copiato nella directory, mantenendo il suo nome;
•
mv file1 file2
mv file directory
come sopra ma il primo file sparisce.
•
man
comando
mostra la documentazione del manuale sul comando
Uso di caratteri jolly
•
cp
ff* nome_dir
copia tutti i files il cui nome inizia con ff (ad esempio i files di
nome ff1, ff3, ffchi) nella directory specificata
•
cp
ff&io nome_dir
copia tutti i files il cui nome inizia con ff e termina con io con
un solo carattere in mezzo (ad esempio i files di nome fffio,
ffmio) nella directory specificata
4
FILES
- Tre tipi: ordinary, directory e special files (usati nella comunicazione tra
processi e con le periferiche).
- Il nome completo di un file si chiama pathname ed inizia dalla radice (/),
altrimenti il nome è relativo alla directory corrente.
- Il mode di un file è specificato da vari caratteri:
• il primo carattere appartiene all'insieme [-,d,b,c,p,l] e specifica il tipo
di file: - significa ordinary file, d significa directory, b significa block
special file, c significa character special file, p significa named pipe
special file, l indica un link;
• i successivi 9 caratteri dicono se c'è permesso di lettura(r), scrittura(w),
ed esecuzione(x) del file da parte dell'utente (i primi tre caratteri), da
parte delle persone del gruppo cui l'utente appartiene (i successivi tre) e
da parte di tutti gli utenti del sistema (gli ultimi tre). Il segno - indica
l'assenza del permesso;
• il significato di r w x per un file ordinario è quello ovvio; per una
directory r w x hanno il seguente significato: r indica permesso di
listare il contenuto della directory, w di creare o rimuovere files, x di
usare il nome della directory in pathnames, per accedere a files che si
possono usare.
Pertanto si protegge un file da manomissioni non concedendo il permesso di
scrittura, e da rimozione non concedendo il permesso di scrittura al suo
directory; si protegge l'accesso ad una directory non concedendo la sua
esecuzione.
Cambiare il mode di un file
•
chmod
ooo nomefile
dove le cifre ottali ooo descrivono i permessi per utente, gruppo e gli altri.
Creare una PIPE:
•
ls /usr/bin | more
Il KERNEL contiene
–
scheduler e dispatcher, che amministrano i processi presenti nel sistema
–
memory manager, che gestisce la memoria principale
–
file manager
–
driver di varie periferiche
5