Guida all`utilizzo di base di Linux
Transcript
Guida all`utilizzo di base di Linux
I.S. “Sobrero” Dipartimento di Informatica Utilizzo install.linux@home 16/02/2007 install.linux@home Marco Marchisotti 1 La shell La shell di Linux è a linea di comando. Appare obsoleta e difficile da usare, ma in realtà è molto più potente e versatile di qualunque interfaccia grafica Per imparare ad utilizzare i vari comandi possiamo ricorrere alla consultazione dei manuali in linea con il comando man man comando permette di visualizzare le pagine del manuale per “comando” 16/02/2007 install.linux@home Marco Marchisotti 2 Multiutenza Il sistema operativo Linux è multiutente, più utenti possono contemporaneamente utilizzare lo stesso computer. 16/02/2007 install.linux@home Marco Marchisotti 3 Caratteristiche degli utenti Ogni utente (user) è identificato da: Username: nome dell'utente; Password: parola chiave di accesso; UID: un numero identificatore univoco; Gruppo: gruppo di utenti a cui appartiene; Home: percorso della directory personale. Ad ogni utente che possiede un account sul sistema viene associata una directory personale che l'utente può utilizzare a sua discrezione. Questa directory è chiamata home. È possibile riferirsi a tale directory con il carattere ~. ~ indica la home dell'utente corrente ~marco indica la home dell'utente marco 16/02/2007 install.linux@home Marco Marchisotti 4 Caratteristiche degli utenti - L'utente root In Linux/Unix è l'amministratore del sistema. root può fare qualsiasi cosa all'interno del sistema, anche distruggerlo. Tutti gli altri utenti hanno permessi limitati sul sistema. Servono per la quotidianità: elaborazione testi, fogli di calcolo, scrittura di programmi, .... Non hanno alcun permesso di amministrazione Buona norma di utilizzo: Non utilizzare root per l'utilizzo quotidiano del sistema. 16/02/2007 install.linux@home Marco Marchisotti 5 Caratteristiche degli utenti - Gruppi di utenti Gli utenti vengono organizzati dal sistema in gruppi. Ogni gruppo presenta le seguenti caratteristiche: Groupname: è il nome del gruppo; GID: un numero identificatore univoco del gruppo; Users: gli username degli utenti che compongono il gruppo. Le informazioni sui gruppi vengono mantenute nel file /etc/group 16/02/2007 install.linux@home Marco Marchisotti 6 Caratteristiche degli utenti - Gli altri Quando lavoriamo siamo connessi al sistema con il nostro username che appartiene ad uno o più gruppi di utenti. Sul sistema possono lavorare diversi altri utenti, alcuni appartenenti al nostro stesso gruppo, altri appartenenti a gruppi diversi. Gli utenti che non appartengono al nostro gruppo sono detti others. 16/02/2007 install.linux@home Marco Marchisotti 7 Caratteristiche degli utenti – Gestione utenti Creazione utenti con il comando: useradd giovanni useradd -G studenti, barbara Cancellazione utenti con il comando: userdel giovanni Modifica della password con il comando: passwd Modifica delle proprietà dell'utente con il comando: usermod -G studenti giovanni Aggiunta di gruppi con il comando: groupadd studenti Cancellazione di gruppi con il comando: groupdel studenti 16/02/2007 install.linux@home Marco Marchisotti 8 Caratteristiche degli utenti – Gestione utenti Esempio di file /etc/passwd: root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync marco:x:1000:1000:marco,,,:/home/marco:/bin/bash mario:x:1001:1002:mario,,,:/home/mario:/bin/bash camilla:x:1002:1002:camilla,,,:/home/camilla:/bin/bash rosetta:x:1003:1003:rosetta,,,:/home/rosetta:/bin/bash groupID userID username 16/02/2007 shell home directory commento install.linux@home Marco Marchisotti 9 Caratteristiche degli utenti – Gestione utenti Con Ubuntu molto più semplice utilizzare lo strumento grafico: 16/02/2007 install.linux@home Marco Marchisotti 10 Caratteristiche degli utenti – Gestione utenti Nell'installazione di default, l'account root è disabilitato. Invece l'account che viene creato nel processo di installazione è usato con il comando sudo per accedere alle facility di amministrazione. Il comando sudo è usato per acquisire temporaneamente i privilegi di root quando questi sono necessari. Per riabilitare l'account root si deve eseguire il comando: sudo passwd root Verrà chiesto di inserire la password dello user creato nel processo di installazione. Poi di inserire una nuova password quindi di verificare la nuova password. Per disabilitare nuovamente l'account root: sudo passwd – l root 16/02/2007 install.linux@home Marco Marchisotti 11 I permessi Il sistema deve garantire la sicurezza da accessi indesiderati ai dati. Ogni utente deve poter decidere quali operazioni possono compiere altri utenti sui propri file. Nei sistemi Linux/Unix vi sono tre tipi di permessi: Lettura (r) Scrittura (s) Esecuzione (x) 16/02/2007 install.linux@home Marco Marchisotti 12 I permessi Sui file normali: Lettura: permette di leggerne il contenuto; Scrittura: permette di modificarne il contenuto (anche di cancellare); Esecuzione: permette di eseguirlo. Per le directory: Lettura: permette di conoscere l'elenco dei file in esse contenuti: Scrittura: permette di creare, eliminare e rinominare dei file; Esecuzione: permette di accedere ad una directory e di avere una lista dettagliata di una directory (ma deve anche esserci il permesso di lettura). 16/02/2007 install.linux@home Marco Marchisotti 13 I permessi rwx-rwx-rwx owner-group-others Ogni file ha i seguenti 3 tipi di permessi: Owner: sono i permessi che ha il proprietario del file; Group: i permessi che hanno gli utenti che appartengono al gruppo del proprietario del file; Others: i permessi che hanno tutti gli altri utenti. 16/02/2007 install.linux@home Marco Marchisotti 14 I permessi Esempio: Il file documento.txt è di proprietà dell'utente mario del gruppo studenti. Il file documento.txt ha i seguenti permessi: rwxr-xr-Ho tre utenti che vogliono accedere al file: mario, il possessore, camilla, altro utente facente parte del gruppo studenti, rosetta, altro utente non appartenente al gruppo studenti Il significato dei permessi è il seguente: mario può leggere, scrivere/modificare ed eseguire il file, camilla può leggere ed eseguire ma non scrivere il file, rosetta può solo leggere il file. 16/02/2007 install.linux@home Marco Marchisotti 15 I permessi Con il comando chmod posso modificare i permessi ai file ed alle directory. Sintassi: chmod tipoutente opzione permesso pathname tipoutente: u per user, g per group, o per others, a per all opzione: + per aggiungere, - per togliere, = per sostituire permesso: r per read, w per write, x per execute Esempio: chmod u=rx *.prg chmod +r archivio In notazione ottale: rwx rw- r-x corrisponde a 111 110 101 quindi 765 r-x r-- r-- corrisponde a 101 100 100 quindi a 544 Esempio: chmod 777 cosa significa? 16/02/2007 install.linux@home Marco Marchisotti 16 Il filesystem In Unix il filesystem rappresenta l'intera memoria di massa a disposizione I file vengono organizzati in modo gerarchico, quindi rappresentazione ad albero / usr bin firefox 16/02/2007 home lib pine etc mario camilla prova.c foto.jpg install.linux@home Marco Marchisotti fstab 17 Il filesystem È la cartella radice del filesystem ed è detta root / home mario etc Per working o current directory si intende la directory su cui si sta lavorando. camilla Per parent directory si intende la directory superiore alla working directory 16/02/2007 install.linux@home Marco Marchisotti 18 Il filesystem / home mario 16/02/2007 . (punto) indica la current directory .. (punto punto) indica la parent directory etc camilla Se mario fosse la current directory allora . riferirebbe /home/mario .. riferirebbe /home install.linux@home Marco Marchisotti 19 Il filesystem / home mario 16/02/2007 etc camilla fstab Percorso: assoluto: specifico il path partendo dalla radice relativo: specifico il path partendo dalla working directory Se mario fosse la current directory e volessi riferire il file fstab allora /etc/fstab (assoluto) ../../etc/fstab (relativo) install.linux@home Marco Marchisotti 20 Il filesystem /bin applicazioni /boot file di configurazione utilizzati durante il boot, kernel /dev file dei device (dispositivi) in Unix tutte le periferiche vengono considerate come file contenuti in questa directory /etc file di configurazione del sistema /home directory home (personali) degli utenti del sistema /lib librerie di sistema /media dispositivi rimovibili (media) montati: CD, fotocamere ... /mnt mount point dei dischi rimovibili, filesystem montati /proc directory speciale e dinamica dove vengono mantente le informazioni riguardanti lo stato del sistema, inclusi i processi attualmente in esecuzione 16/02/2007 install.linux@home Marco Marchisotti 21 Il filesystem /root /sbin /sys /tmp /usr /var home directory dell'utente root programmi binari di sistema file di sistema file temporanei unix system resources, file e applicazioni che sono disponibili a tutti gli utenti file variabili come log, cache e database 16/02/2007 install.linux@home Marco Marchisotti 22 Il filesystem Ci sono vari tipi di filesystems: ext2, second extended filesystem ext3, come ext2 + journaling reiserfs, filesystem dotato di journaling, ha struttura particolare iso9660, filesystem standard per i CD-ROM msdos, filesystem FAT dei sistemi operativi MS-DOS vfat, come il precedente ma supporta i nomi lunghi nfs, network file system ma ve ne sono anche altri... Journaling significa che l'integrità dei dati è garantita in modo più efficiente utilizzando anche un diario (journal) 16/02/2007 install.linux@home Marco Marchisotti 23 Processo di mounting Con il termine mounting si intende il “montaggio” di una nuova porzione di filesystem (un disco o partizione di disco) Quando inserisco un CD per poter accedere ai suoi file devo prima effettuare il montaggio del CD Root filesystem mount point Root filesystem mount Nuovo filesystem 16/02/2007 install.linux@home Marco Marchisotti 24 Processo di mounting Ogni operazione di mount estende la struttura ad albero del filesystem radice, collegando la radice del nuovo filesystem ad una directory terminale (foglia) del root filesystem Il montaggio di un disco si effettua con il comando mount la cui sintassi è: mount disco puntodimontaggio Esempio CD: mount /dev/hdc /mnt/cdrom Esempio floppy: mount /dev/fd0 /mnt/floppy Le informazioni sui mount points vengono mantenute all'interno del file /etc/fstab I mount effettivamente attivi vengono mantenuti all'interno del file /etc/mtab Per formattare un floppy: fdformat /dev/fd0 16/02/2007 install.linux@home Marco Marchisotti 25 Riepilogo di alcuni comandi ls [opzioni] [directory] elenca i file contenuti in directory Se directory non viene specificata elenca la directory corrente Con l'opzione -l vengono visualizzati i dettagli dei file Con l'opzione -a vengono visualizzati tutti i file cd directory Cambia la directory corrente in directory cat file Visualizza il contenuto di file more file Come cat ma in più permette di scorrere a pagine l'output 16/02/2007 install.linux@home Marco Marchisotti 26 Riepilogo di alcuni comandi pwd Stampa la directory corrente cp orig dest Copia il contenuto del file orig sul file dest, funziona solo sui file cp -R orig dest Copia ricorsivamente il contenuto di orig in dest, funziona sulle directory rm file Cancella file, attenzione in Unix non esiste il cestino! rm -R directory Cancella una directory e tutto il suo contenuto, quindi mai fare rm -R /*.*, cancellate l'intero filesystem! 16/02/2007 install.linux@home Marco Marchisotti 27