Corso Linux Base 2. Uso del Sistema Logging In (1) Una volta partito il sistema l’utente esegue la procedura di Login. Se si è installato un ambiente grafico di desktop, la procedura è gestita dall’ambiente stesso Il Login richiede uno username e una password (come in WindowsNT ma non necessariamente in Win98) © 2003 Corso Linux Base - Uso del Sistema 2.2 Logging In (2) Al momento della registrazione, all’utente viene assegnato anche una zona di disco identificata come home directory Alla fine della procedura di Login l’utente “si trova” nella sua home directory cioè in una zona di disco in cui ha tutti i privilegi per creare nuovi files o directories (v. in seguito per esempi) © 2003 Corso Linux Base - Uso del Sistema 2.3 Logging In (3) © 2003 Sono stati preparati degli account : gbX X=1...25 password gbX Es: Username gb7 Password gb7 La password può essere cambiata con il comando passwd (v.dopo) Corso Linux Base - Uso del Sistema 2.4 Uso della Shell (1) In Linux (e in UNIX) si interagisce con il sistema attraverso un programma chiamato shell che viene invocato automaticamente al Login Esistono diverse shell (sh, bash, tcsh, …) – – © 2003 la maggior parte dei comandi ha la stessa sintassi la scelta di una shell è essenzialmente questione di gusti Corso Linux Base - Uso del Sistema 2.5 Uso della Shell (2) In Linux i comandi sono dati sotto la shell che li interpreta, esegue e scrive (se del caso) il risultato su terminale L’attenzione della shell è espressa dal prompt , carattere che può essere deciso dall’utente Esempi di prompt : > % [pccmslb]:~> © 2003 Corso Linux Base - Uso del Sistema 2.6 Uso della Shell (3) I comandi Linux (e UNIX) sono stringhe di caratteri molto sintetiche. In tempi recenti sono state aggiunte interfacce grafiche per facilitare alcune operazioni. Qui trattiamo principalmente la versione testuale. Ogni comando ha un insieme di opzioni che possono essere aggiunte in linea come singole lettere minuscole e/o maiuscole precedute dal segno “-” (vedi in seguito) © 2003 Corso Linux Base - Uso del Sistema 2.7 Comandi di uso comune Il comando di help non si chiama help ! Per avere informazioni su un qualsiasi comando si usa man che mostra l’uso del comando e delle sue opzioni in modo formattato Ovviamente si può avere anche > man man che illustra il funzionamento del comando man © 2003 Corso Linux Base - Uso del Sistema 2.8 Comandi di uso comune: ls Il comando ls mostra la lista di tutti i file contenuti in una directory ls dispone di moltissime opzioni che ne regolano il comportamento Opzioni principali -l mostra alcune informazioni utili su ciascun file -a mostra i file nascosti (col nome che inizia con .) -t ordina la lista di file secondo l’ora dell’ultima modifica © 2003 Corso Linux Base - Uso del Sistema 2.9 Comandi base: ls [pccmslb]:~> ls -al /var/log total 812 drwxr-xr-x 5 root root drwxr-xr-x 16 root root -rw-r--r-1 root root -rw-r--r-1 root root -rw-r--r-1 root root -rw-r--r-1 root root -rw-r--r-1 root root -rw-r--r-1 root root -rw------1 root root -rw------1 root root -rw------1 root root -rw------1 root root -rw------1 root root -rw-r--r-1 root root © 2003 4096 4096 139076 0 14577 7253 9535 14595 49511 38890 36148 15536 24624 3032 Sep Jan Sep Sep Sep Sep Sep Aug Sep Sep Sep Sep Aug Sep Corso Linux Base - Uso del Sistema 16 5 21 16 14 10 3 27 21 16 11 4 28 14 04:02 2001 14:33 04:02 14:10 09:14 12:51 15:58 16:10 04:02 04:02 04:02 04:02 22:20 . .. XFree86.0.log boot.log boot.log.1 boot.log.2 boot.log.3 boot.log.4 cron cron.1 cron.2 cron.3 cron.4 dmesg 2.10 Comandi base: cp Il comando cp serve a copiare uno o più files da una locazione a un’altra La sintassi tipica è > cp <inputFile> <outputPath> Nell’esempio copio il file LinuxBASIC.doc dalla directory corrente cambiando il nome del file © 2003 Corso Linux Base - Uso del Sistema 2.11 Esempio [pccmslb]:~/CorsoLinux/prova> cp LinuxBASIC.doc testo.txt [pccmslb]:~/CorsoLinux/prova> ls -al total 36 drwxr-xr-x 2 barone CMS 4096 Sep 18 17:41 . drwxr-xr-x 3 barone CMS 4096 Sep 18 17:39 .. -rw-r--r-1 barone CMS 28672 Sep 18 17:41 LinuxBASIC.doc -rw-r--r-1 barone CMS 28672 Sep 18 17:47 testo.txt © 2003 Corso Linux Base - Uso del Sistema 2.12 Comandi base: mv,rm Il comando mv (da move) serve a cambiare nome a un file o a una directory > mv <vecchioNome> <nuovoNome> Il comando rm (da remove) serve a cancellare un file o una directory > rm <file> Nel caso di una directory, per protezione bisogna prima “svuotarla” di tutti i file per poterla effettivamente cancellare: rm -r <directory> © 2003 Corso Linux Base - Uso del Sistema 2.13 Esempio [pccmslb]:~/CorsoLinux/prova> [pccmslb]:~/CorsoLinux/prova> total 36 drwxr-xr-x 2 barone CMS drwxr-xr-x 3 barone CMS -rw-r--r-1 barone CMS [pccmslb]:~/CorsoLinux/prova> [pccmslb]:~/CorsoLinux/prova> total 8 drwxr-xr-x 2 barone CMS drwxr-xr-x 3 barone CMS © 2003 mv LinuxBASIC.doc LinuxADVANCED.doc ls -al 4096 Sep 18 17:42 . 4096 Sep 18 17:39 .. 28672 Sep 18 17:42 LinuxADVANCED.doc rm LinuxADVANCED.doc ls -al 4096 Sep 18 17:43 . 4096 Sep 18 17:39 .. Corso Linux Base - Uso del Sistema 2.14 Dov’è lo START Button? © 2003 Gli utenti Windows sono spesso turbati dall’uso della shell, perché abituati ad utilizzare dei menu La shell è un mezzo molto potente, che consente grande efficienza e libertà, ma se si desidera utilizzare il PC in stile Windows, si possono utilizzare i tools grafici dei Window Managers come GNOME e KDE che sono analoghi a quelli di Windows Corso Linux Base - Uso del Sistema 2.15 Come creo il mio programma? (1) Apro un editor per scrivere le istruzioni e alla fine salvo il file con un nome (v.dopo) Devo compilare il programma: il compilatore – – – © 2003 legge le istruzioni da me scritte controlla la sintassi se la sintassi è corretta traduce le istruzioni di alto livello in basso livello (codice oggetto) producendo un nuovo file Corso Linux Base - Uso del Sistema 2.16 Come creo il mio programma? (2) © 2003 Ma compilare non basta... Bisogna “agganciare” (link) le librerie di sistema ... e se necessario (ad es. uso funzioni matematiche) “agganciare” altre librerie Ora il programma è pronto per l’esecuzione Corso Linux Base - Uso del Sistema 2.17 Come si compila ? Avendo editato e salvato un file come myprogram.c uso il comando gcc (o cc) [pccmslb]:~/CorsoLinux/prova> ls -al total 36 drwxr-xr-x 2 barone CMS 4096 Sep drwxr-xr-x 3 barone CMS 4096 Sep -rw-r--r-1 barone CMS 28672 Sep [pccmslb]:~/CorsoLinux/prova> gcc –o myprog.o [pccmslb]:~/CorsoLinux/prova> ls myprog.c myprog.o © 2003 Corso Linux Base - Uso del Sistema 18 17:41 . 18 17:39 .. 18 17:47 myprog.c myprog.c 2.18 ATTENZIONE © 2003 Se non usate l’opzione -o il codice oggetto verrà scritto SEMPRE in a.exe (a.out) L’operazione di link base è svolta automaticamente da gcc Se occorre la libreria matematica si aggiunge l’opzione –lm . Es: gcc –lm –o test.o myprog.c Corso Linux Base - Uso del Sistema 2.19 Esecuzione Per eseguire un programma è sufficiente darne il nome, prefissato da ./ [pccmslb]:~> ./stockbuy.exe Quante azioni? 100 100 Azioni acquistate. End © 2003 Corso Linux Base - Uso del Sistema 2.20 Editor Principali I principali programmi di editor sono: – – – © 2003 vi (sempre presente nella installazione base) emacs nedit (non sempre disponibile nella installazione base, si può scaricare da http://www.nedit.org) Corso Linux Base - Uso del Sistema 2.21