Contatti
Categorie
Search For Blogs, Submit Blogs, The Ultimate Blog Directory
BlogItalia.it - La directory italiana dei blog
Iscritto su Aggregatore.com
Aggregato su SocialBlog

Chmod, guida rapida a uno dei principali comandi Linux

Oggi voglio parlarvi di chmod, change mode, che come si può intuire dal nome, ci permette di cambiare i permessi (modalità) di file e cartelle. Chmod è uno dei comandi basilari dei sistemi Linux, tanto da essere già prsente nella prima versione Unix di AT&T. Insomma, è fondamentale che tutti gli utenti Linux lo sappiano usare. A differenza dei comandi che ho presentato fin ora, chmod è un pelino meno intuitivo, ma vedrete che, una volta imparato il meccanismo, usarlo sarà veramente un gioco da ragazzi. Eccone le basi:
I permessi sono:

r - lettura
w - scrittura
x - esecuzione

I tre permessi vanno applicati a seconda di chi utilizza il file e cioè:

u - proprietario
g - utenti del gruppo
o - tutti gli altri utenti
title Chmod, guida rapida a uno dei principali comandi LinuxLockFolder Chmod, guida rapida a uno dei principali comandi Linux

Al posto di queste sigle è convenzione usare gli ottali, numeri che ci permettono di impostare i permessi. Di solito si opta per i valori ottali, perchè sono più comodi.

1 = abilità esecuzione
2 = abilità scrittura
4 = abilità lettura

Questi numeri vanno sommati, a seconda dei permessi che vogliamo dare. Se vogliamo abilitarli tutti e trè dovremo scrivere 7. Con il comando chmod possiamo usare tre cifre, la prima è la somma dei permessi per il proprietario u, la seconda per i gruppi g, la terza per gli altri o. In realtà le cifre sarebbero quattro, perchè ci sono anche i modi speciali, in tal caso quella dei permessi speciali sarebbe la prima cifra. I modi speciali sono:

1 = sticky bit = Se applicato ad una directory, ogni file in essa contenuto può essere modificato o cancellato solo dal rispettivo proprietario, o dal proprietario della cartella o da root. Se non attivo, tutti gli utenti con accesso in scrittura alla cartella possono modificare e cancellare file, indipendentemente da chi ne sia il proprietario. Questo bit è comunemente applicato a directory come /tmp, che devono essere accessibili in scrittura da tutti gli utenti, ma deve essere ugualmente impedita l’interferenza fra i diversi utenti.

2 = SGID bit = Se applicato ad una directory, i file in essa creati appartengono al gruppo del proprietario della directory, piuttosto che al gruppo di default dell’utente che li crea; se applicato ad un file, quando eseguito esso gira con i permessi del gruppo del proprietario del file, piuttosto che con quelli del gruppo dell’utente che lo sta eseguendo. Questo bit risulta utile se applicato ad una directory nella quale lavora un gruppo di diversi utenti: tutti i file in essa creati avranno il GID (Group identifier) del gruppo, anziché quelli dei gruppi di default di ogni singolo utente (che sono potenzialmente diversi l’uno dall’altro).

4 = SUID bit = Se applicato ad una directory, i file in essa creati appartengono al proprietario della directory, piuttosto che all’utente che li crea; se applicato ad un file, quando eseguito esso gira con i permessi del proprietario del file, piuttosto che con quelli dell’utente che lo sta eseguendo. Questa funzionalità è utile per permettere delle operazioni eccezionali, che richiedono i privilegi di root, ai comuni utenti di un sistema (come cambiare la propria password o fare un ping): contemporaneamente, però, comporta dei rischi per la sicurezza se usata in maniera inappropriata.

Le tre definizioni dei modi speciali le ho copiate pari pari da Wikipedia.

lock files Chmod, guida rapida a uno dei principali comandi Linux

Ma ora passiamo agli esempi che chiariranno ulteriormente le idee:
ugo
sudo chmod 666 file.txt scrittura e lettura a tutti
sudo chmod 644 /cartella scrittura e lettura al proprietario, solo lettura agli altri
sudo chmod ug+x aggiunge esecuzione al proprietario e ai gruppi
sudo chmod ug-x toglie il permesso di esecuzione al proprietario e ai gruppi
sudo chmod u=rw,go= scrittura e lettura al proprietario, nessuno agli altri due

Con anche i modi speciali

sudo chmod 0777 i tre permessi a tutti, e nessun modo speciale (lo zero può anche non essere scritto)
Sudo chmod 1777 gli stessi permessi del comando di prima, con le caratteristiche dello Stiky beat.

Insomma, questo è il funzionamento di chmod, spero di venire in contro a chi all’inizio si trova spiazzato di fronte a questo comando composto di lettere e numeri. Come vedete, una volta capito il meccanismo è veramente facile da usare. Sono inoltre sicuro che una ripassatina faccia bene a tutti.

Questa è la pagina in italiano di Wikipedia, dove potrete trovare anche un accenno alle principali opzioni (modificatori)

Condividi articolo:
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • Diggita
  • E-mail this story to a friend!
  • Fai.Info
  • OKNotizie
  • Segnalo
  • Technorati
  • Wikio

3 Commenti a “Chmod, guida rapida a uno dei principali comandi Linux”

Lascia un Commento

Sottoscrizione via Mail

Enter your email address:

Delivered by FeedBurner

Seguimi su Twitter
Licenza
Creative Commons License
Questo/a opera è pubblicato sotto una Licenza Creative Commons.