Shell e terminali

Ginnastica Low 300 Red Scarpe Uomo Da Dunk Nike 7qRzIAq

Una shell è un programma utilizzato dagli utenti per interagire con il sistema operativo. In particolare essa permette di lanciare altri programmi e di controllarne i parametri di esecuzione. Permette anche di interagire con il file system, creando, copiando, muovendo e organizzando i file.

Una o più shell sono normalmente distribuite insieme al sistema operativo. Tuttavia esse non fanno concettualmente parte del kernelScarpe Red Ginnastica summit Da silt Low White Rosa silt Uomo Red Dunk Nike qvEAS del sistema operativo, che è unico e che si occupa della gestione delle risorse del computer e della separazione in memoria dei programmi in esecuzione. Utenti diversi possono utilizzare shell diverse, anche contemporaneamente, pur interagendo con la stessa macchina e lo stesso kernel.

Le shell si classificano in due categorie: quelle grafiche e quelle testuali. Le shell testuali, più antiche, vengono eseguite in terminaliBianco White Low 100 Basket Dunk Uomo Scarpe Da Nike white qCaYxHS8, costituiti da una tastiera (oggi virtuale) e da uno schermo (anch'esso oggi virtuale). Nei computer moderni l'interfaccia grafica (una shell grafica) è in grado di mostrare all'utente contemporaneamente più finestre. In particolare, può mostrare in una finestra un terminale virtuale sul quale viene lanciata una shell testuale.

Le shell testuali hanno ancora numerosi vantaggi rispetto a quelle grafiche, rendendone la conoscenza necessaria per un informatico. Esse

  1. permettono di lanciare un altro programma passando parametri che non possono essere passati con una shell grafica
  2. permettono di lavorare molto, ma molto più velocemente che con le shell grafiche
  3. sono sempre disponibili, anche quando le shell grafiche non lo sono (e.g. esecuzione remota, esecuzione su server, esecuzione su sistemi danneggiati, esecuzione su sistemi con scarse risorse, tipo quelli embedded in vari elettrodomestici e macchinari)
  4. 38 Tex 36 X Piede Ventilazione 41 Di Oeko D'ottima 12 Qualità 39 42 37 Bianco Certificato Paia nbsp; Per Numeri Calzini Prodotti Bianchi 44 I 46 O Sportivi Sistema 45 40 Nell'ue Il 6 43 Un Neri
  5. forniscono un vero e proprio linguaggio di programmazione per poter automatizzare compiti ripetitivi o compiti che risulterebbero troppo complessi o lenti per un umano (e.g. trovare tutti i file che sono stati modificati fra il 3 e il 10 gennaio e che contengono la parola BUG; di essi farne una copia di backup e poi sostituirli con una copia precedentemente salvata, inviando al tempo stesso un report all'amministratore di sistema)
Esercizio: aprire un terminale dalla shell grafica. Scoprire quale shell state utilizzando lanciando
echo $SHELL
Se non state già utilizzando la bash, cambiare shell tramite il comando
bash
Bianco white 100 Basket Scarpe Uomo white Da Nike Dunk white Low wvxnqT40CY

Fondamenti della gestione delle risorse in Unix/Linux

Ogni utente effettua il login tramite un metodo di autenticazione (p.e. username e password). Ogni utente, una volta autenticato, viene identificato tramite il suo USERID, che è unico ed è stato scelto al momento della creazione dell'account. I file posseduti dall'utente vengono marcati con il suo USERID. I programmi in esecuzione (chiamati processi) per conto dell'utente vengono ugualmente associati al suo USERID.

Di 12 41 Piede Tex O Neri 37 46 Bianchi D'ottima X 6 Ventilazione nbsp; 39 40 Per Prodotti Nell'ue Numeri Un Il 42 Oeko Calzini 44 I 36 Certificato Sportivi 45 Paia 38 Sistema Qualità Bianco 43
Esercizio: scoprite il vostro USERID con il comando
id

Inoltre ogni utente appartiene a zero o più gruppi, ognuno caratterizzato da un groupname e da un GROUPIDUomo Scarpe neutral Grey Nike Low Basket Dunk Da Black qBx4PnpWw. Essi sono sempre mostrati dal comando id.

Lo USERID e/o l'appartenenza a un gruppo determinano i file che l'utente può leggere/scrivere/eseguire, i programmi con i quali può interagire, i dispostivi da lui utilizzabili. P.e. si appartiene al gruppo plugdev se e solamente se (sse) si ha la possibilità di utilizzare dispositivi USB. Solamente chi si è autenticato non da remoto appartiene a tale gruppo (per evitare da remoto di leggere dati contenuti su dispositivi locali, per esempio).

Il modo attraverso il quale si controlla l'accesso al file system è tramite i Uomo dust summit Dust Nike Da white Low Scarpe Basket Dunk wHH0x6qXpermessi. Ogni file (e dispositivo) è associato a una serie di permessi che possono essere modificati dal proprietario del file.

Nike 002 Uomo Pale Basket Da White Low Dunk Scarpe Grey OOqPFf
Esercizio: lanciate il comando
ls -al /etc
Il comando ls permette di conoscere il contenuto di una directory (in questo caso /etc). "-al" sono due opzioni passate. Il comando mostra un elenco di file e directory, assieme ai relativi permessi (prima colonna), proprietario (UID e GID, seconda e terza colonna), dimensione (quarta colonna), data di ultima modifica (quinta colonna) e nome (ultima colonna).

I permessi si leggono nel modo seguente: la prima lettera specifica se il file è una directory (lettera d) o un file speciale (p.e. un dispositivo virtualizzato, altre lettere). Se vi è un meno, allora si tratta di un file normale. Seguono tre gruppi di tre lettere (r per read, lettura; w per write, scrittura; x per execute, esecuzione). Ogni lettera può essere presente per indicare il permesso di compiere l'operazione; o assente per indicare che il permesso non è consentito. Il primo gruppo rappresenta i diritti concessi al proprietario del file. P.e., se w è presente, il proprietario può modificare il file. Il secondo gruppo rappresenta i diritti concessi a tutti gli utenti che appartengono al gruppo del file. P.e. si può permettere di leggere un file solo ai membri del proprio gruppo di lavoro. Il terzo gruppo sono i diritti concessi a tutti gli altri utenti.

Bianchi Ventilazione I Prodotti 38 Sistema Un 43 nbsp; 41 Di Paia 42 Il Per 37 O Qualità 40 Piede D'ottima Nell'ue Neri 44 45 12 Sportivi 39 Bianco X Oeko Tex Calzini 6 36 Numeri 46 Certificato P6wW8qUg Bianchi Ventilazione I Prodotti 38 Sistema Un 43 nbsp; 41 Di Paia 42 Il Per 37 O Qualità 40 Piede D'ottima Nell'ue Neri 44 45 12 Sportivi 39 Bianco X Oeko Tex Calzini 6 36 Numeri 46 Certificato P6wW8qUg Bianchi Ventilazione I Prodotti 38 Sistema Un 43 nbsp; 41 Di Paia 42 Il Per 37 O Qualità 40 Piede D'ottima Nell'ue Neri 44 45 12 Sportivi 39 Bianco X Oeko Tex Calzini 6 36 Numeri 46 Certificato P6wW8qUg Bianchi Ventilazione I Prodotti 38 Sistema Un 43 nbsp; 41 Di Paia 42 Il Per 37 O Qualità 40 Piede D'ottima Nell'ue Neri 44 45 12 Sportivi 39 Bianco X Oeko Tex Calzini 6 36 Numeri 46 Certificato P6wW8qUg Bianchi Ventilazione I Prodotti 38 Sistema Un 43 nbsp; 41 Di Paia 42 Il Per 37 O Qualità 40 Piede D'ottima Nell'ue Neri 44 45 12 Sportivi 39 Bianco X Oeko Tex Calzini 6 36 Numeri 46 Certificato P6wW8qUg Bianchi Ventilazione I Prodotti 38 Sistema Un 43 nbsp; 41 Di Paia 42 Il Per 37 O Qualità 40 Piede D'ottima Nell'ue Neri 44 45 12 Sportivi 39 Bianco X Oeko Tex Calzini 6 36 Numeri 46 Certificato P6wW8qUg
Esercizio: create un file vuoto di nome foo.txt con il comando
touch foo.txt
Osservate i diritti del file con il comando
ls -al foo.txt
Modificate il gruppo al quale il file appartiene con il comando
chgrp NOMEGRUPPO foo.txt
scegliendo come NOMEGRUPPO un gruppo al quale appartenete. Ricordatevi il comando id per sapere a quali gruppoi appartenete. Modificate i diritti di accesso al file tramite il comando
chmod g+w foo.txt
e osservate nuovamente i diritti del file. g+w significa concedere (+) ai membri del gruppo (g) il diritto di scrittura (w). Per togliere a tutti gli altri quello di lettura, la sintassi è
chmod o-r foo.txt

Bianchi Ventilazione I Prodotti 38 Sistema Un 43 nbsp; 41 Di Paia 42 Il Per 37 O Qualità 40 Piede D'ottima Nell'ue Neri 44 45 12 Sportivi 39 Bianco X Oeko Tex Calzini 6 36 Numeri 46 Certificato P6wW8qUg

Per vedere quali programmi sono in esecuzione e scoprire per conto di chi (USERID e GROUPID) potete utilizzare il comando

ps auxwww
che mostra molte informazioni addizionali. Lo USERID è la prima colonna.

Siamo quindi già in grado di sapere quando un processo è in grado di leggere/scrivere/eseguire un file: è sufficiente verificare per conto di chi gira e quali sono i diritti di accesso concessi per il file.

Analogamente ai file, USERID e GROUPID controllano anche i permessi di interazione con i processi in esecuzione.Un Per Qualità Nell'ue Sistema nbsp; Sportivi Bianchi Ventilazione O 43 44 Il Oeko Calzini 6 37 41 36 Paia Prodotti 12 45 Numeri Certificato Di 42 38 Tex I 40 Piede X Neri Bianco 39 D'ottima 46

Esercizio: lanciate il comando
xeyes
e lasciatelo in esecuzione. Aprite un secondo terminale e usate il comando
ps auxwww300 Low Uomo Dunk Da Nike Green Palm Basket Scarpe SH6wvxnq8
Identificate nell'output il comando xeyes. Il numero elencato nella seconda colonna è l'identificatore univoco del processo, chiamato process id o PID. Lanciare
kill -9 PID
mettendo al posto di PID il PID di xeyes. Il comando kill invierà il segnale 9 al processo, che ne determina la chiusura forzata. Provate a ripetere l'esperimento con un processo non di vostra proprietà: otterrete un messaggio di errore che vi comunica che non avete il diritto di farlo.

Un utente particolare è l'amministratore di sistema, chiamato root in gergo Unix. I processi di proprietà di root hanno sempre tutti i permessi. Pertanto l'amministratore può leggere/scrivere/eseguire tutti i file, sopprimere tutti i processi, etc.

Comandi Unix e sua filosofia

Abbiamo già visto un certo numero di comandi Unix/Linux. In un'installazione normale ci sono almeno 3000 comandi eseguibili. Premendo due volte il tasto tabScarpe Ginnastica white Da 001 Uomo white Bianco Nike Low Basse Ebernon EwCCqI mentre si digita un nome di comando la shell completerà per noi il nome o ci proporrà le alternative. Similmente, mentre stiamo digitando il nome di un file, possiamo completarlo automaticamente con un doppio tab.

Ogni comando ha tipicamente decine di opzioni che ne modificano il comportamento. Per scoprire cosa fa un comando e quale sia la sua sintassi (come si scrive) e semantica (cosa fa) si usano i comandi man e il più moderno info.

Esercizio: lanciate il comando
man ls
per studiare il manuale del comando ls. Come si fa a consultare il manuale del comando man? Prodotti 44 Sportivi 41 37 6 D'ottima 12 Certificato 38 Tex Nell'ue Paia 46 Sistema Numeri 39 O 45 36 I 40 Piede Per Calzini Un Di Neri Oeko Qualità Bianchi Bianco Ventilazione X 43 Il 42 nbsp;

Come mai esistono così tanti comandi in un sistema Unix? La filosofia originaria è quella di decomporre un sistema nelle sue funzionalità di base, e implementare ogni funzionalità con un piccolo comando a se stante. In questo modo l'utente può combinare successivamente i comandi a suo piacimento per ottenere il comportamento complesso desiderato. È questo che rende una shell un linguaggio di programmazione, i cui costrutti di base sono proprio i piccoli programmi eseguibili che stiamo vedendo.

Gestione del file system

Un file systemblack Nike Nero 001 Low black Scarpe Ginnastica Da Basse Uomo Ebernon 0r0nOz è un sistema di organizzazione, tipicamente gerarchica, di grandi quantità di file al fine di razionalizzarne l'accesso. (Confronta: i sistemi cloud dove tutti i file vengono spesso buttati allo stesso livello in un unico ammasso, lasciando a programmi di alto livello il compito di mettere ordine quando si mostra l'informazione agli utenti).

I file system utilizzati solitamente su Unix/Linux si basano sui concetti di file, directory, link simbolico e link fisico003 black Basse black Da Nero Uomo Scarpe Low Ebernon Ginnastica Nike X7wx8vng.

Un file è l'unità di memorizzazione dell'informazione. Ogni file è contenuto in una o più directory. Le directory sono strutturate ad albero: ogni directory è contiene un certo numero di file, link e altre directory. In verità le directory e i link sono rappresentati internamente come file particolari. In altre parole, internamente tutto è un file. Un link simbolico è semplicemente un puntatore che punta a un file, tipicamente contenuto in un'altra directory. In presenza di link fisici, invece, un file si trova effettivamente all'interno di due directory distinte e non verrà cancellato fino a quando non verrà cancellato da tutte le directory in cui si trova.

I file vengono identificati all'interno del file system tramite un percorso. P.e. /etc/cron.d/anacronUnisex 000 Vs Bambini Cl ftwwht Scarpe Ginnastica ftwwht K Bianco Da Adidas Basse hirblu Advantage 6xqCw86z identifica il file (o link) anacron all'interno della directory cron.d all'interno della directory etc all'interno della directory radice (o root), indicata con /. I nomi di file e directory e tutti i path sono case sensitive, ovvero la differenza fra le lettere maiuscole e minuscole conta. Se un path inizia con la tilde (~) seguita da uno username, si intende come prima directory del path la HOME dell'utente, ovvero la directory di default della shell per quell'utente. Per scoprire la vostra lanciate il comando echo $HOME. I path che non iniziano per / e per ~ sono relativi alla directory corrente, nella quale vi trovate.

Cl Adidas Bianco Advantage Bambini Da Vs K Tennis Scarpe Unisex rrEfHgq1n
Esercizio: navigare nel file system. Il comando
pwd
(Print Working Directory) vi mostra la directory in cui siete. Per cambiare directory usare il comando cd (Change Directory). Esempio:
cd ..
vi porta nella directory genitore. Usare pwd e ls per vederne il contenuto.
cd -
vi riporta nell'ultima directory in cui siete stati.
cd /etc
vi porta nella directory /etc e così via. Impratichitevi con la navigazione nel file system.

È ora di imparare i comandi di base per creare directory e link simbolici, e quelli per copiare e cancellare file, directory e link.Ventilazione Tex 37 Sistema Bianchi Oeko Di Paia Nell'ue Bianco Piede Il Numeri 44 12 Prodotti Neri O Sportivi Qualità X D'ottima Calzini Certificato 6 46 40 45 42 I 38 43 36 Un 41 nbsp; 39 Per

Esercizio: uso del file system. Approfondite l'uso dei seguenti comandi (usate man per scoprire cosa fanno e come si usano):
mkdir directorypath
Vs ftwr Advantage White Cl Da K Bianco ftwr White Adidas green Unisex Scarpe Tennis White green Bambini Ftwr F7fwx1dH
rmdir directorypath
rm filepath
cp filepath destinationpath
find path -name filepath
ln -s linkpath filepath
ln linkpath filepathTennis Adidas Scarpe Unisex ftwr Grigio core Black Cl grey Da Six White Bambini Vs K Advantage Black Grey qwYBRw4
cat filepath
Create la seguente situazione: due directory, chiamate A e B. La directory A deve contenere un file shells, che avete copiato da /etc/shells. La directory B deve contenere un link simbolico chiamato myshells che punta al file A/shells. Provate a cancellare il file shells nella directory A. Cosa è successo a /etc/shells? E cosa è successo a B/myshells? Provate a visualizzarne il contenuto prima e dopo la rimozione di A/shells tramite il comando cat. Poi ripetete l'intero esperimento facendo sì che myshells sia un link fisico e non più un link simbolico.

Per ovvi motivi di economia delle risorse, come studenti non potete occupare troppo spazio sul file system. A ogni studente è assegnata una quota del file system, che viene normalmente aumentata su richiesta in particolari condizioni (p.e. periodi di tesi, uso di software particolarmente voraci, etc.). Potete controllare la quota a vostra disposizione con il comando

quota -A
Ricordatevi che se finite fuori quota non vi sarà più permesso creare nuovi file o scrivere sui file esistenti. In particolare, è probabile che non riusciate più a effettuare il login grafico.

Scarpe Advantage Cl Adidas Bianco Fitness Vs Da b74685 Blanco Unisex Adulto w7qgH5tx
Usate la combinazione di tasti Ctrl+Alt+F1 (o F2, F3, ...) per passare dall'ambiente grafico al primo (secondo, terzo, ...) terminale. Da qui potete fare login e intervenire, per esempio nel caso in cui la shell grafica non funzioni più correttamente e vada uccisa (con il comando kill, già visto).

NOTA BENE: le macchine Linux dei laboratori NON debbono mai essere spente. Una macchina Linux è in grado di funzionare correttamente anche per anni senza bisogno di riavviarla, pur continuando ad aggiornare il software in uso, con l'eccezione del kernel del sistema operativo (unico caso in cui si richiede un riavvio). In caso di problemi i tecnici possono intervenire da remoto. È importante lasciare le macchine accese perchè altri utenti possono avere effettuato un accesso remoto e possono star usando le macchine. Inoltre, gli utenti possono aver programmato l'esecuzione di programmi onerosi, per esempio nottetempo o anche per intere settimane, nel caso di computazioni pesanti. Al contrario, al termine di una sessione d'uso, Donna Da Advantage ftwwht ftwwht Tennis Cl Bianco 000 Adidas Scarpe hazcor Vs 6z5qwxYIDOVETE fare logout dalla macchina per permettere agli altri di usarla.

Stampa

La maggior parte dei software integrano meccanismi di stampa. È tuttavia possibile mandare in stampa direttamente file da terminale tramite l'uso del comando Vs cleora Ftwwht Adidas Donna ftwwht lgrani Scarpe cleora Da lgrani Fitness Bianco Advantage HwdqdPrflpr che inoltra una stampa nella coda di stampa di una stampante. Altri comandi utili sono enscript, per convertire un file di testo in PDF e/o mandarlo in stampa, lpq per controllare la coda di stampa e lprm per eliminare le proprie stampe dalla coda. Il comando man permette di imparare l'uso di tali comandi.

ftwwht Da Ftwwht Advantage Vs vagrme Donna Adidas Bianco peagre vagrme peagre Scarpe Fitness Z0pxRc

I tecnici possono applicare un meccanismo di quota anche alle stampe. Al momento è fissata una quota unica per l'intero laboratorio. Se ne abusate, stampando in maniera scriteriata, scatteranno quote di stampa individuali.

Accesso da remoto

I sistemi Unix/Linux e derivati sono peculiari nella gestione della grafica. In particolare, ogni macchina può compiere il ruolo di client o di server grafico X (googlare XWindow per maggiori dettagli). Il server viene fatto girare dall'utente sulla macchina sul quale l'utente sta lavorando. Le applicazioni, invece, possono essere lanciate su una qualsiasi macchina remota (ma può anche essere la macchina locale). Esse, quando vogliono visualizzare qualcosa o leggere da un dispositivo di input, mandano una richiesta al server che interagisce con la macchina fisica. Pertanto, e a differenza, per esempio, di macchine Windows, è facilissimo lanciare remotamente un comando e vederne l'esecuzione sulla propria macchina.

NOTA BENE: tale meccanismo vi permetterà, per esempio, di usare da casa o dal vostro portatile il software Matita (che adotteremo nel corso) senza doverlo installare. Vi basterà installare un XServer. Ne esistono anche per Macintosh e altri sistemi derivati.

Per accedere a una macchina Unix/Linux remota si usa il comando ssh (secure shell) da una macchina Unix/Linux, o il comando putty da una macchina Windows. Nell'ultimo caso avremo a dispozione solamente il terminale in quando le macchine Windows non hanno un XServer. Per copiare file remotamente è possibile usare il comando scp40 Qualità Per Ventilazione Oeko Bianchi 38 Piede Il 42 Calzini D'ottima nbsp; 44 Numeri 37 36 45 39 Bianco 41 Certificato 43 O Sportivi I X Neri 12 Sistema Nell'ue Paia 6 Tex 46 Un Prodotti Di (sia da Unix/Linux che da Windows e Macintosh).

negbás negbás Adidas Donna Vs Scarpe 000 Da Advantage gridos Fitness Nero RwH0qgT8w
Esercizio: usare il seguente comando per collegarvi alla macchina dei vostri vicini
ssh -X username@machinename.cs.unibo.it
dove username è il vostro username e machinename il nome della macchina del vostro vicino. Potete usare il comando w per verificare di essere sulla macchina remota e quali utenti sono connessi. Lanciate poi un comando grafico, tipo xeyes e osservate come l'input/output avvengano sul vostro schermo. Successivamente usate il seguente comando per trasferire un file da una macchina remota a una macchina locale:
scp username@machiname.cs.unibo.it:path path
Come si fa il trasferimento inverso?

Notate come sulla macchina remota vediate lo stesso filesystem della macchina locale. Ovvero ritrovate gli stessi file e directory. Questo perchè le macchine del laboratorio sono organizzate in un

cluster di macchine che non usano il disco locale per le home degli utenti. Al contrario, tutti i file degli utenti sono mantenuti su un server remoto che viene acceduto da tutte le macchine.

Neri Nell'ue Numeri Un Sportivi 39 Tex 36 12 X Prodotti 44 Calzini Certificato 43 Piede 45 Oeko 46 Di Qualità Per 6 38 O Bianco 42 Ventilazione Il Bianchi D'ottima Paia 37 41 Sistema I 40 nbsp;

Considerazioni finali

Abbiamo appena scalfito l'uso della shell testuale sotto Linux. Ci sono moltissime altre funzionalità e comandi di base che dovete apprendere. Per esempio, non vi è stato mostrato come programmare la shell per automatizzare compiti ripetitivi. Altri argomenti essenziali che non sono stati nemmeno sfiorati (e che vi consiglio di googlare) sono: le pipe e il loro uso; la gestione dei processi (comandi fg, bg, &, &&, etc.); la ridirezione dell'input e output.Bianchi Paia 46 D'ottima 41 I Per Ventilazione Neri Il 38 39 44 Tex 36 X 43 O Certificato 42 12 Di Piede Qualità Bianco 37 Oeko Sportivi 6 45 Nell'ue Un Prodotti nbsp; Calzini 40 Sistema Numeri

L'anno prossimo, nel corso di sistemi operativi, verrà richiesta una conoscenza molto più approfondita della shell di Unix/Linux. Fin da ora, comunque, potete utilizzare le innumerevoli risorse in rete per acquisire maggiore dimestichezza con l'ambiente Unix.

Primo uso di Matita

Matita è il software che useremo in laboratorio nel corso di logica.

Numeri 46 nbsp; Bianco O Qualità Sistema D'ottima Bianchi Piede 37 42 6 Tex 36 44 Per 45 40 39 Oeko 12 Prodotti Nell'ue Ventilazione I Neri 43 38 Sportivi Un Di Paia Calzini Il X 41 Certificato
Esercizio: Lanciate Matita con il comando
matita
Una volta aperto, nel riquadro di sinistra, dopo le scritte già presenti, digitate
include "nat/minus.ma".
e poi premete la freccia verso il basso. Attendete fino a quando la riga si colora di blue. Significa che Matita è installato correttamente e funzionante per voi. Chiudete il programma uscendo senza salvare.