Меню сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Vi auguro tanti successi!!!
Home

Регистрация

Вход
Приветствую Вас Гость | RSS


Ciao! :)


I permessi sui file

I file e le directory sono protetti da operazioni non autorizzate di altri utenti. Gli attributi di protezione riguardano la lettura, la scrittura e l'esecuzione dei file.

/s -/: I valori correnti dei permessi. All’inizio di ogni riga della lista viene prodotta sul video, per ogni file, una sequenza di 10 caratteri che possono avere, per esempio, la seguente configurazione:

  • drwx------ : una directory per la quale sono concessi tutti i permessi per l'utente (owner) e nessun permesso per gli altri utenti.
  • -rw-r--r--: il file può essere letto e modificato dal proprietario e soltanto letto dai membri del gruppo cui il proprietario appartiene e da tutti gli altri utenti.

Dove:

  1. d indica una directory,
  2.  - (segno meno) indica un file ordinario,
  3. I successivi 9 caratteri sono tre terne di permessi:
  1. la prima terna riguarda l'utente proprietario del file,
  2. la seconda i membri del gruppo,
  3. la terza tutti gli altri utenti.
  1. r, w, x:  i permessi di lettura, scrittura ed esecuzione.

I comandi più importanti per la gestione dei permessi sui file sono chmod e umask.

  • chmod: modifica gli attributi di un file o di una directory per i permessi in lettura, scrittura ed esecuzione (rwx). Ci sono diverse forme per il chmod.

1.Un primo formato, sintassi: chmod tipoutente opzione permesso pathname

Dove tipoutente può essere uno dei caratteri:

  • u per user (cioè il proprietario del file o della directory)
  • g per group
  • o per others
  • a per all (è il tipo utente di default).

L'opzione può essere:

  • + per aggiungere un permesso
  • - per togliere un permesso
  • = per sostituire i permessi esistenti con i nuovi.

Il permesso è indicato con le seguenti lettere:

  • r (read) per un file consente la lettura del suo contenuto; per una directory consente solo di listare i nomi dei file e delle directory in essa contenuti,
  • w (write) per un file consente la modifica di un file; per una directory consente l’aggiunta di nuovi file nella directory e la cancellazione di file in essa presenti,
  • x (execute) per un file lo rende eseguibile; per una directory consente una lista dettagliata dei file; i file in essa contenuti possono essere letti e modificati in accordo con i permessi sui singoli file.

Esempi:

  • chmod u=rx *.prg: il comando consente all'utente proprietario di tutti i file, con estensione prg dopo il punto, di leggere ed eseguire i file. Il permesso di scrittura esistente viene eliminato; non vengono cambiati i permessi esistenti per gli altri utenti e il cambiamento non riguarda gli altri file presenti nella directory.
  • chmod +r archi: attribuisce a tutti il permesso di lettura sul file archi; gli eventuali altri permessi esistenti non vengono cambiati. La lettura del file da parte di altri utenti deve essere resa possibile assegnando il permesso x alla directory che contiene il file.
  • chmod +rx .: concede a tutti gli utenti il permesso di lettura e ricerca all'intemo della directory corrente, indicata con il punto.
  • chmod g-w arch2: toglie ai membri del gruppo la possibilità di modificare il file arch2.

Is -I consente di verificare i cambiamenti apportati.

2.Il comando chmod con la notazione ottale:

  • 111 di bit in ottale vale 7; lettura, scrittura, esecuzione;
  • 110 di bit in ottale 6; lettura, scrittura,
  • 100 di bit in ottale 4; lettura.
  1. chmod 777 archi : 111 111 111; rwx rwx rwx; tutti i permessi per tutti gli utenti del file archi
  2. chmod 764 archi: 111 110 100; rwx rw- r--; tutti i permessi al proprietario, r w al gruppo e r la sola lettura agli altri del file archi.
  3. chmod 444 archi: 100 100 100; r-- r-- r--; permessi di sola lettura per tutti gli utenti del file archi
  4. chmod 644 archi: 110 100 100; chmod u+w; archi: il permesso di lettura scrittura per il proprietario, lettura per tutti utenti
  • umask: stabilisce o modifica la maschera predefinita dei permessi per i file.

Quando si crea un nuovo file, esso appartiene all'utente proprietario (cioè l’utente che lo crea) e al gruppo dell’utente stesso. Esso acquista i permessi in base a una maschera predefinita (umask):

  • per i file la maschera predefinita è di solito 666 che corrisponde ai permessi rw-rw-rw-,
  • per le directory la maschera predefinita è 777 che corrisponde ai permessi rwx rwx rwx

Questa maschera predefinita può essere modificata con il comando umask :

  • se la maschera predefinita è 666 umask 022 sottrae il valore 2 ai permessi del gruppo e degli altri utenti, modificando la maschera predefinita in 644 (rw-r--r--)
  • se il comando umask, usato senza parametro, fornisce il valore corrente da sottrarre, a partire dalla maschera predefinita presente nella configurazione definita con il file /etc/profile.

6 Programmi di utilità per la scrivania

I programmi di utilità del sistema Linux è un insieme di strumenti software i quali gestiscono in modo automatizzato alcuni oggetti e attività tipiche del lavoro di ufficio:

  • i comandi date e cal che servono a produrre sul video rispettivamente la data odierna e il calendario.
  • altri tre strumenti: la calcolatrice, la comunicazione con gli altri utenti e la posta elettronica.

1.La calcolatrice.

  • bc: attiva la calcolatrice interattiva.
  1. Per ottenere il risultato di un calcolo basta premere il tasto di Invio.
  2. I segni delle quattro operazioni sono: + - * /.
  3. Il resto della divisione si ottiene con il simbolo %.
  4. A indica l'elevamento a potenza.
  5. L'ordine delle operazioni modifica l’uso le parentesi tonde.
  6. quit o Ctrl+D fa terminare l'uso della calcolatrice.

 

bc

18 % 4

2

2A5

32

(5 + 6 ) * 2

22

quit

bc -1: attiva la calcolatrice con le librerie delle funzioni matematiche; con questa opzione si può calcolare il logaritmo(l), l'esponenziale(e), il seno(s), coseno (c)e arcotangente(a).

1(2): indica il calcolo del logaritmo di 2;

 

e(3): indica il calcolo dell’esponenziale di 3.

 

 

2.Inviare un messaggio al computer di un altro utente.

write: manda un messaggio direttamente sul terminale di un altro utente. Il comando deve essere seguito dal nome dell'utente al quale il messaggio è diretto.

who: per conoscere il nome degli utenti collegati basta dare il comando

  1. write user2: viene attivata una linea di comunicazione diretta con il terminale dell'utente user2. Sul video dell'utente destinatario compare un messaggio: Message from user1 tty01, dove
  • user1 indica l'utente che invia il messaggio;
  • tty01 indica la linea alla quale il terminale del mittente è collegato.

Da questo momento ogni riga che viene inserita da tastiera viene visualizzata su entrambi i terminali, quello del mittente e quello del destinatario.

  • Ctrl+D interrompe l'invio di righe di messaggio
  • write userl: Se il destinatario vuole rispondere in modo interattivo al messaggio;
  • mesg n: Se un utente non desidera essere disturbato dall'arrivo di messaggi inviati;
  • mesg y: con di ripristinare la possibilità della  ricezione di messaggi;

3.Inviare un messaggio di posta elettronica.

mail effettua la gestione della posta elettronica tra gli utenti del sistema.

I mittenti e i destinatari dei messaggi vengono identificati con i nomi degli utenti, usati nella fase di connessione con login.

mail user1: Quando si vuole inviare un messaggio all'utente user1. In risposta il sistema propone la richiesta dell'oggetto del messaggio, con la scritta Subject. Il testo del messaggio che è un insieme di righe di testo. La fine dell'inserimento del messaggio viene segnalata dall'utente attraverso la combinazione dei tasti Ctrl+D.

La richiesta denominata Cc di mail standard di Linux: che sta per Carbon copy, cioè copia per conoscenza, per indicare gli eventuali nomi degli altri utenti ai quali si vuole inviare copia del messaggio indirizzato al primo utente user1.

Il messaggio così creato viene registrato nella casella postale elettronica dell'utente user1, cioè in un file dell'apposita sottodirectory /usr/mail oppure /var/mail a seconda della distribuzione Linux. Quando l'utente user1 si collega al sistema, sul video compare per esso il messaggio con il quale viene segnalato all'utente che nella sua casella postale ci sono messaggi da leggere. Con il comando mali (senza parametri) viene visualizzata una lista delle intestazioni dei messaggi. Ogni intestazione contiene:

  • il nome del mittente,
  • la data у l'ora in cui il messaggio è stato spedito,
  • il numero di linee e di caratteri di cui si compone il messaggio
  • l'oggetto del messaggio (quello che il mittente ha scritto alla richiesta di Subject:).

A questo punto si può scegliere tra diverse opzioni da inserire tramite tastiera:

  • n numero del messaggio che si vuole selezionare
  • t (text) per vedere il testo del messaggio selezionato
  • h (header) per rileggere la lista dei messaggi presenti nella casella
  • s (save) per salvare il messaggio in un file della directory corrente
  • d (delete) per cancellare il messaggio dopo averlo letto
  • n (next) per passare al messaggio successivo della lista
  • r (reply) per inviare un messaggio di risposta al mittente che lo ha spedito
  • Ctrl+D per terminare l'inserimento del testo
  • q (quit) per uscire dal programma di posta elettronica.
  • help per richiedere il significato le opzioni del comando mail.

7 La ridirezlone di input e output

shell opera:

  • leggendo i dati dalla tastiera, denominata come standard input, cioè l'unità standard dalla quale vengono acquisiti i dati,
  • scrivendo i risultati sul video, indicato come standard output, cioè l'unità del sistema alla quale vengono inviati i risultati dell'elaborazione.
  • Il video serve anche per produrre verso l'esterno i messaggi di diagnostica del sistema in caso di errore e per questo motivo viene indicato come l'unità che funziona da standard error.

Ridirezione è operazione che modifica assegnazioni standard per l'input, l'output e l'error indicando il nome del file alternativo poiché dal punto di vista del sistema i tre standard sono considerati file.

Essa viene rappresentata con i seguenti caratteri speciali (metacaratteri):

  • < considera il file indicato come lo standard input
  • > invia lo standard output al file indicato
  • » appende l'output in coda al file indicato
  • 2> ridirige lo standard error nel file indicato:
  1. 2 indica lo standard error,
  2. 0 indica lo standard input
  3. 1 lo standard output
  • >& (oppure &>) ridirige standard output e standard error nel file indicato.

who > lista: se si vuole conservare lista degli utenti collegati scritta sullo standard output; in un file di nome lista,

who » lista: Se il file lista non esiste viene creato, se esiste già, l'output del comando who rimpiazza il contenuto del file lista-, se invece si vogliono conservare i dati già esistenti nel file lista, si devono aggiungere i nuovi dati in coda con il comando nel formato.

>& si indica la ridirezione dello standard errar: per intercettare i messaggi di errore durante l’esecuzione del comando.

 

Supponiamo che il file lista esista e il file abc non esista nella directory corrente:

  • rm lista abc: elimina il file lista e poi produce un messaggio di file non esistente per il secondo file.
  • rm lista abc >& errori: produce lo stesso effetto, ma elimina dal video i messaggi di errore scrivendoli in un file errori.
  • rm-: la richiesta di conferma dell'eliminazione dei file viene reindirizzata sul file sospesa finché non si inserisce da tastiera il carattere y o n.
  •  (pwd; ls -1) > elenco: scrive il pathname della directory corrente e, di seguito, la lista dei file, in essa presenti, in un unico file di nome elenco.

Output ed errori possono essere ridiretti anche su un file fittizio, indicato con /dev/null : quando si vogliono fare ridirezioni senza registrare alcun file su disco:

rm lista abc >& /dev/null: elimina la visualizzazione degli messaggi di errore e non li registra su un file fisico.

Il device /dev/null può essere utile anche quando si esegue in background un programma o uno script che richiedono lunghi tempi di esecuzione: ridirigendo l'output su /dev/null, l'utente può continuare a svolgere altre attività con il computer, senza essere disturbato dai messaggi prodotti sul video durante l'esecuzione del programma.

Si supponga di avere un file di log (per esempio visite.bg) che registra gli accessi al sistema nel tempo: questo tipo di file aumenta velocemente nelle dimensioni, per cui esiste la necessità di svuotare il file periodicamente; il file, però, non deve essere eliminato e si devono mantenere i permessi, le date di creazione e di modifica. Per risolvere il problema si usa:

cat /dev/null > visite.log: il file visite.log riceve il contenuto del device /dev/null che corrisponde a un file vuoto.

La ridirezione dell'input consente di fornire a un comando i dati di input acquisendoli da un file invece che dalla tastiera come avviene normalmente.

mail userl < testo: il messaggio può essere preparato in precedenza usando un editor e salvato in un file di nome testo. Il comando mail in questo caso preleva dal file testo il contenuto del messaggio da inviare.

8 Le pipeline

La pipeline è il modo più conveniente per utilizzare l'output di un comando come input di un altro comando senza creare file intermedi. È una linea di comandi separati dal segno I (barra verticale che si trova sotto il tasto Esc).

Se si vuole inviare la lista dei file presenti nella propria directory all'utente user2, si possono usare i due comandi

ls -1 > lista

mail user2 < lista

Usando una pipeline si ha il vantaggio di ottenere lo stesso risultato con una sola riga di comandi: ls -1 | mail user2

La pipeline può essere formata anche da più di due comandi successivi separati dai segni di pipe.

ls -1 | lpr:  produce sul video la lista dei file della working directory corrente, cioè la lista diventa l'input per il comando lpr.

  • tee: salva nelle pipeline il flusso di dati che passa da un comando a un altro memorizzandolo in un file. Il comando cattura, copiandolo su file, il flusso di dati della pipeline senza compromettere il flusso stesso.

Per capire la funzione del comando tee si osservi la differenza tra questi due comandi:

ls > listato : la lista dei nomi dei file presenti nella directory corrente viene registrato sul file listato e sul video non compare nulla.

ls | tee listato viene creato il file listato, ma il comando tee non interrompe il flusso dei dati quindi la lista dei file compare anche sul video.

ls -1 *.dat | tee listarchivi | lpr: la lista dei nomi dei file con estensione .dat viene mandata in stampa nella coda di spool; l’output del comando ls viene anche copiato dal comando tee in un file di nome listarchivi.

  • time esegue una pipeline e visualizza :
  1. di un riassunto del tempo complessivo impiegato per eseguirla (reai),
  2. tempo della CPU dedicato al processo dell’utente (user) e ai processi del sistema (sys).

La sintassi generale è: time pipeline

time ls -1 | lpr

9 I filtri sui file

Il filtro un comando che prende i dati da un file, opera su di essi delle semplici trasformazioni e scrive il risultato su standard output.

I principali comandi filtro del sistema operativo Linux sono:

more: visualizza il contenuto di un file 24 righe per volta. Sinassi: more nomefile

II comando manda al video le righe del file, facendo una pausa quando il video è stato riempito, e indicando nella parte bassa del video la parola Ancora (more);

  • per continuare con la videata successiva si deve premere la barra spaziatrice,
  • per continuare riga per riga si usa invece il tasto di Invio;
  • per uscire senza vedere il resto si preme il tasto q.

Il comando more viene spesso usato, all'interno di una pipeline, con i comandi che producono lunghe liste in output. ls -1 | more

cat archi | more

_______________________________________________________________________________________________

pr: visualizza il contenuto di un file in forma impaginata mettendo per ogni pagina il nome del file, la data odierna e l’ora, oltre alla numerazione di pagina. Sintassi: pr nomefile

_______________________________________________________________________________________________

diff: confronta il contenuto di due file. La sintassi: diff primo secondo

Produce su standard output una lista delle righe che devono essere cambiate per rendere il primo file uguale nel contenuto al secondo:

  1. con la lettera c indicate,
  2. aggiunte (lettera a)
  3. cancellate (lettera d).
  • Le righe del primo file sono precedute dal carattere <,
  • le righe del secondo file sono precedute dal carattere >.

diff -iw primo secondo:  Aggiungendo le opzioni -iw il comando richiede che nel confronto vengano ignorate le differenze dovute a lettere maiuscole e minuscole oppure al numero di spazi bianchi.

______________________________________________________________________________________________

wc: conta righe, parole e caratteri di un file. I sintassi: wc nomefile

Restituisce tre numeri che nell'ordine indicano il numero delle linee, il numero delle parole e il numero di caratteri del file specificato.

 
   

 

Вход на сайт

Поиск

Календарь
«  Июнь 2025  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
30

Друзья сайта
  • Создать сайт
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz

  • Copyright MyCorp © 2025 Создать бесплатный сайт с uCoz