SISTEMI UNIX


I sistemi operativi UNIX, nati all'Università di Berkeley, sono ormai diffusi in tutto il mondo e sono disponibili su vari tipi di macchine. Sono sistemi operativi multi-utente a partizione di tempo e girano su macchine che, a differenza dei PC, necessitano di un gestore di sistema che si deve occupare sia della ripartizione dello spazio disponibile agli utenti, che di eventuali problemi di mal funzionamento del sistema. Ogni utente comunica col calcolatore attraverso una "Shell" che interpreta i comandi e attiva dei programmi ("processi") che possono essere eseguiti anche in parallelo (ma ne compare al piu` uno per terminale). Le Shell più comunemente usate sono "csh" e "sh". Ogni sistema dispone di programmi predefiniti con varie funzionalita`: per produrre documenti, sviluppare programmi (es. in Pascal, C), utilizzare la posta elettronica, ecc. 

Accesso al sistema e prime operazioni


Per potersi collegare a un sistema UNIX è necessario essere in possesso di un "account" (nome utente) e di una "password" (codice di riconoscimento). Ricordarsi, come regola generale, che dopo avere scritto una risposta a una richiesta del calcolatore bisogna battere il tast RETURN (quindi lo ometteremo di qui in avanti). A questo punto compaiono i messaggi del giorno e poi il "prompt" (simbolo di disponibilità) che può essere formato da un numero seguito da > oppure da [nome_macchina:~], ecc.. La macchina è quindi pronta a ricevere nuovi comandi. Un comando non viene interpretato fino a quando non si batte il tasto RETURN quindi in presenza di errori di battitura si può cancellare l'ultimo simbolo scritto premendo il tasto DELETE o BACKSPACE (dipende dal terminale). Altre operazioni si eseguono tenendo premuto il tasto CONTROL (o CTRL o ^). Per uscire dalla shell corrente occorre dare il comando "logout" o "^D", per uscire dalla sessione occorre battere "exit" e deve ricomparire la "login:": attenzione, non basta spegnere il video!!! Se non si riesce ad uscire vuol dire che ci sono dei programmi, la cui esecuzione è stata "sospesa" dall'utente, che vanno prima terminati.

Gestione della memoria permanente


I dati permanenti sono organizzati in un sistema di archiviazione chiamato "file system" che ha una struttura gerarchica ad albero: la radice "root" (chiamata "/" o "slash") è uguale per tutti gli utenti; le foglie sono "files" cioe' oggetti che contengono i programmi e i dati degli utenti; i nodi interni sono invece "directory", cioe' collezioni di file o di altre directory. Directory diverse possono contenere file con lo stesso nome, quindi per ritrovare l'informazione è necessario definire un cammino nell'albero: il "pathname". Il pathname è definito scrivendo la sequenza di directory che si incontrano, divise da /. Ogni utente ha la propria "working directory" e che inizialmente è la "home directory". Il pathname può essere "relativo", cioe' a partire dalla directory in cui ci si trova, o "assoluto", cioe' a partire dalla radice. Ad esempio l'utente Rossi ha una home che contine la directory lavori e casa. La directory casa contine una directory famiglia che a sua volta contiene il file piero. Per accedere al file piero dalla home directory il sig. Rossi dovrà seguire il pathname: casa/famiglia .

Diritti d'accesso

ogni file è posseduto da almeno un propietario ("owner"), ed ha una serie di diritti d'accesso (lettura "r", scrittura "w", esecuzione "x") rispetto a diversi gruppi di utenti: l'utente ("user") "u", il gruppo ("group") g a cui u appartiene e tutti gli altri utenti ("others") "o". "a" ("all") invece comprende "u", "g" e "o".
Il file system di Unix può in realtà essere visto come un grafo in quanto è possibile collegare fra loro vari file attraverso un "link". Uno stesso file è cosi' inserito in più directory contemporaneamente attraverso un "hard link" o un "soft link". I due link differiscono in quanto se un file con degli hard link viene cancellato in una directory, resta accessibile dalle altre directory, se il link invece era soft, il file non è più accessibile. 

Informazioni sul sistema

Come ci si può collegare da una macchina all'altra?

Il modo più sicuro è usare SSH, in alternativa (ma non fatelo!!!) si può usare TELNET.

Come si possono trasferire i file da una macchina all'altra?

Il modo più sicuro è usare SFTP, in alternativa (ma non fatelo!!!) si può usare FTP.

scp nomefile login@indirizzo:/home/login/.

permette di scaricare file in modo "SICURO" sulla macchina definita da indirizzo. Ad esempio collegandosi a biologia si potrà usare il comando scp nomefile bic99@biostud02.bio.univ.trieste.it:/home/bic99/. per scaricare nella proprio home di biologia il file nomefile. Dopo aver dato il comando comparirà la richiesta di password e bisognerà dargli quella della macchina a cui ci si è collegati (ad es. quella di biologia).

scp login@indirizzo:/home/login/nomefile .

permette di caricare file in modo "SICURO" dalla macchina definita da indirizzo in locale. Ad esempio collegandosi a biologia si potrà usare il comando scp bic99@biostud02.bio.univ.trieste.it:/home/bic99/nomefile . per scaricare nella proprio home locale il file nomefile. Dopo aver dato il comando comparirà la richiesta di password e bisognerà dargli quella della macchina a cui ci si è collegati (ad es. quella di biologia).

Come si possono caricare e scaricare file su dischetto?

I dischetti devono essere formattati DOS. Meglio se ad alta densità.

Il computer è impazzito

I comandi vanno avanti da soli. Mi si è bloccato tutto! Cosa faccio? Prima di tutto provate a uccidere la finestra. Poi provate a usare:

Come si esce dal sistema?

Prima di tutto si uccidono le varie finestre scrivendo exit o cliccando sulla x in alto a destra. Poi si esegue uno dei seguenti comandi:
Si cerca nell'icona in basso a sinistra la voce ESCI oppure EXIT oppure FINE SESSIONE oppure LOGOUT, si apre e si seguono tutti i passi. Alla fine, se tutto è stato fatto correttamente deve comparire la finestra iniziale dove si chiedono login e password. Se non compare chiedete aiuto!!! Poi spegnete SOLO il video.