Etnablog.altervista.org :)

Visitatore: 1311415
Welcome ospite
Menu di accessibilità:
Dimensione carattere:

Home > Linux > Gestire files, cartelle, permessi su Linux
Contenuto della pagina:
25 Maggio 2007

Gestire files, cartelle, permessi su Linux

Guida: Passare da Windows a Linux (Settima parte) 

In tutti i sistemi *nix (Unix, Linux) esiste l'utente "root", che è l'amministratore del sistema, colui che può fare qualsiasi attività sul pc, compreso cancellare files importanti e modificare partizioni.

Alla fine della vostra installazione di ubuntu avete così due utenti: quello che avete impostato voi durante l'installazione e questo utente "root".

Tradizionalmente in Linux per fare tutte le operazioni importanti si effettua il login come utente "root". Su ubuntu questo utente è stato di default disabilitato dal login e non ha password.

Sicchè, gli utenti con i superpoteri sono quelli che fanno parte del gruppo "admin".

Questi utenti "admin" (che può anche essere uno solo, non per forza tanti utenti), quando devono fare operazioni pericolose, devono fare precedere tali comandi da "sudo" (verrà richiederà la password).

Se fate un utente nuovo, dall'apposito pannellino in "Sistema --> Amministrazione --> Utenti e gruppi", potete dare anche a lui la possibilità di usare "sudo", barrando la casellina che gli assegna i privilegi di amministratore.

L'assegnazione ad un gruppo, come "admin" si può fare anche da riga di comando con:
 

adduser nome_utente admin

 
Perchè è importante che lo sappiate fare anche da riga di comando oltre che da pannello? Risposta: Perchè questo potrebbe salvarvi..Fidatevi.

Detto questo, altra questione importante su Linux, è che ogni file ha assegnati dei "permessi".
Ogni file in Linux ha tre parametri di "permessi":

  • Utente proprietario (owner) del file
  • Gruppo del proprietario
  • Altri utenti


Per ogni parametro (ricordiamolo, sono tre), va impostato uno di questi valori:


0 = Nessun permesso-
1 = Esecuzione (x)
2 = Scrittura (w)
3 = Esecuzione + Scrittura (xw)
4 = Lettura (r)
5 = Lettura + Esecuzione (rx , è la somma dei valori 1+4)
6 = Lettura + Scrittura (rw, 2+4)
7 = Lettura + Scrittura + Esecuzione (rwx, 1+2+4)


Per cambiare il permesso ad un file (o ad una cartella) si usa il comando chmod, esempi:

chmod 777 -R cartellaIn questo modo abbiamo impostato il permesso di lettura scrittura ed esecuzione ( 4+2+1 = 7 ) rispettivamente per proprietario, gruppo e utenti.

La -R serve per applicare i permessi anche su tutte le sottocartelle e i files all'interno.
chmod 644 cicciolettura e scrittura ( 4+2 = 6 ) per il proprietario e solo lettura ( 4 ) per gruppo e utenti. Equivalente a chmod u+w file
chmod 400 fileSe vogliamo che possa accedere a un file in lettura solo il proprietario (passare quindi da -r--r--r-- a -r--------). Equivalente a chmod go-r file
chmod 755 cartellaCosì assegni permessi di lettura scrittura esecuzione al proprietario, lettura esecuzione al gruppo,lettura esecuzione agli altri.


Per sapere i permessi dei file in una cartella, usando la shell piazzatevi dentro una cartella (usate il comando "cd" per muovervi fra le cartelle), e date il comando:
 

ls -l

 
Verranno elencati i file presenti nella cartella, ogni riga avrà un aspetto simile a questo:
 

drwxr-xr-x 5 root root 4096 2007-01-05 18:08 home

 

Come potete vedere, quella è la riga della cartella "home", la prima colonna è quella che ci interessa per sapere i permessi.

Il primo carattere (d) indica l'attributo, ("d" vuole dire directory), saltatelo.
I successivi nove caratteri sono i permessi, vanno letti a 3 a 3, ovvero: (rwx) (r-x) (r-x) quindi, in questo caso, è come dire "755" (proprietario, gruppo, altri).

La terza colonna e la quarta (root e root) indicano rispettivamente il "proprietario" e il "gruppo" del file.

Altri comandi utili ed importanti per file e cartelle:


cdIl comando cd serve a spostarsi tra le directory.

Ad esempio, facendo "cd /etc" ci si sposta nella directory "etc". "cd .." : serve invece a spostarsi nella cartella superione a quella in cui vi trovate.
df -hVisualizza lo spazio libero rimasto nelle partizioni. Oppure nel pannello "applicazioni-->accessori" di GNOME c'è un analizzatore dello spazio occupato.
du -s /homeRestituisce la dimensione totale complessiva di una cartella, in questo caso la cartella "home".
freeMemoria di sistema libera
sudo gedit /etc/fstabVi mostra il file in cui vengono indicati i filesystem utilizzati e le directory ad essi associate.
gksudo
kdesu
Vedi "su" e "sudo". Se dovete avviare applicazioni grafiche con i privilegi di root (cioè dell'amministratore del sistema), se usate "sudo" potreste avere qualche problema. Usare invece gksudo per applicazioni Gnome e kdesu per quelle KDE in modo che carichi come root anche le librerie grafiche che servono a quei programmi. Utilizzo tipico: "gksudo nautilus". Facendo così si possono creare e modificare file in cartelle protette senza usare la shell.
ls -als serve per elencare il contenuto di una directory. L'opzione -a serve a vedere anche i file nascosti
mvIl comando mv serve per spostare, o rinominare, file e directory.
rm -r nomecartellaRimuove la cartella con il suo contenuto. Il comando rm viene usato anche per cancellare files.
mkdir nomecartellaCrea una nuova cartella
supassare ad utente di root. Se la password non va reimpostala con "sudo passwd root"
sudosudo (SUperuser DO) è un programma che consente di eseguire dei comandi con i privilegi di amministratore (sempre che vi sia abilitato). Facendo su si diventa a tutti gli effetti root. sudo invece assume i privilegi di root solo per un tempo limitato (15 minuti, di base).
whichMostra il percorso completo di un file


Un'ultima cosa: un file o una cartella, per essere resa invisibile, bisogna semplicemente rinominarla con un puntino davanti. Ad esempio la cartella "prova", invisibile sarà ".prova".

In Windows, e quindi nei file systems FAT e NTFS, esiste un attributo "h" per rendere il file "invisibile". Qui su linux (file systems ext2, ext3 ecc..), non fuziona l'attributo "h" dal momento che per rendere invisibile file o cartelle si usa il sistema "puntino".

Il sistema dei permessi impostati mediante chmod NON funziona nei file system NTFS (quindi Windows), dove tutti i file sono di norma leggibili ed eseguibili da tutti.

Torna al menù principale della "Guida su Linux"

Descrizioni usate nelle foto: 
Postato da: Etnablog in Linux alle 0:40

Permalink | Commenti(9)
Inserisci commento

Commenti:

grazie mille!

raramente si trovano guide così chiare e concise, mi sarei accontentato di copiare ed incollare un comando invece ora ho le idee chiare sul funzionamento dei permessi CHMOD!

 

Postato da: rezza il 18 Giugno 2007 alle 17:56

Molte grazie
finalmento ho capito la storia dei permessi utenti gruppi.

Sarebbe auspicabile una versione stampabile da tenere nella documentazione e come salvagente.

Diego Galli
Via San Gottardo 116
CH-6648 Minusio Svizzera

 

Postato da: Diego Galli il 06 Agosto 2007 alle 21:14

Avatar

Grazie a voi :)

Nei prossimi mesi farò una revisione di tutte le guide, ne aggiornerò qualcosina e preparerò una versione stampabile in pdf :)

State in linea wink.gif

 

Postato da: Etnablog il 08 Agosto 2007 alle 8:51

Complimenti per la guida.
Michele

 

Postato da: Michele il 25 Ottobre 2007 alle 17:05

sono alle prime armi con ubuntu e questa guida è davvero utile per capire il funzionamento dei permssi dei file, sarebbe bello integrare anche la parte dei diritti legati a likewise (join con dominii Active Directory).

comunque molto utile.

grazie

 

Postato da: andrea il 05 Agosto 2009 alle 11:56

accidenti!
allora come faccio a cautelarmi dalla sovrascrittura di (soltanto) certi file di una partizione NTFS mentre uso Linux ?

 

Postato da: pistolinux001 il 19 Settembre 2009 alle 18:54

grazie a questa semplice guida sono riuscito ad ottenere i permessi per le cartelle
grazie

erano giorni che nessuno sapeva come fare sui vari forum

 

Postato da: giammarco il 26 Gennaio 2010 alle 2:09

Semplice guida ma molto utile!! Non conoscevo l'esistenza di alcuni utili comandi, come "du"...

ciao

MC
matteoc appelli.wordpress.com

 

Postato da: Matteo Cappelli il 12 Aprile 2010 alle 12:06

Salve sto installando magento in locale ma purtroppo non mi rende in scritture le seguenti cartelle
Path "/opt/lampp/htdocs/magento/app/etc& quot; must be writable.
Path "/opt/lampp/htdocs/magento/var" ; must be writable.
Path "/opt/lampp/htdocs/magento/media&qu ot; must be writable.
ho provato sia sudo chmod 755 nomecartella
Quando provo adeseguire il comando chmod
mi da il seguente errore
udo: /var/lib/sudo writable by non-owner (040777), should be mode 0700

Sia con sudo chmod -R 777 /var
qualcuno mi potrebbe chiarire dove sbaglio grazie

ma le cartelle sono sempre

 

Postato da: Joshua il 11 Aprile 2012 alle 17:45

Solo gli utenti registrati possono lasciare commenti
*1 user online
Caricamento pagina: 0.02 s