Qualcuno può spiegare -rw-rw-r--. 1
e dare alcune informazioni "dettagliate" sul comando ls -lart.
In particolare, cosa fa il numero 1
dopo che i permessi dei file significano?
Perché cambia o perché è diverso per file diversi?
Qualcuno può spiegare -rw-rw-r--. 1
e dare alcune informazioni "dettagliate" sul comando ls -lart.
In particolare, cosa fa il numero 1
dopo che i permessi dei file significano?
Perché cambia o perché è diverso per file diversi?
Risposte:
Qualche esempio:
-rwxrw-r-- 1
è un file con privilegi di lettura, scrittura ed esecuzione per il proprietario. Il gruppo ha letto e scritto e altri hanno solo letto. Non ci sono collegamenti a questi dati.
drwxr-xr-x 10
è una directory con 8 file. I 2 in più sono .
e ..
. Solo il proprietario può creare file in questa directory, altri possono accedere ai file presenti nella directory e leggere i contenuti di tali file se i privilegi lo consentono.
-r-------- 2
è un file che solo il proprietario può leggere, ma non può eseguire o modificare. Ha un link, il che significa che c'è un altro riferimento di file su disco da qualche parte che accede agli stessi dati. Quindi il "contenuto di file" reale sul disco ha 2 "file" che lo fanno riferimento. Questi collegamenti sono spesso creati usando ln
senza fornitura -s
.
Così:
-
o d
indicando il file o la directory. r
ead, w
rito, ed e x
ecuto per il proprietario. Vedi il capitolo Il lungo formato di man ls
.
In breve: È il numero di hard-link al contenuto del file. 1 significa nessun hard link, 2 significa questo e un altro nome di file condividono lo stesso contenuto, ecc.
Per le directory la maggior parte ma non tutti i filesystem riportano un conteggio dei collegamenti di 2 + nr_of_subdirs (per maggiori informazioni leggere Questo )
[max @ localhost ~] $ ll
totale 4
drwxrwxr-x 2 max max 4096 set 25 17:11 zzz
Qui 2 indica il numero del conteggio dei collegamenti
ora creerò 3 directory all'interno di zzz
ora il valore cambia in 5
[max@localhost ~]$ cd zzz [max@localhost zzz]$ mkdir a b c drwxrwxr-x 5 max max 4096 Sep 25 17:16 . drwx------ 5 max max 4096 Sep 25 17:12 .. drwxrwxr-x 2 max max 4096 Sep 25 17:16 a drwxrwxr-x 2 max max 4096 Sep 25 17:16 b drwxrwxr-x 2 max max 4096 Sep 25 17:16 c
[max @ localhost zzz] $ cd
[max @ localhost ~] $ ll
totale 4
drwxrwxr-x 5 max max 4096 set 25 17:16 zzz
Questo perché ora sono presenti 5 directory all'interno di zzz 3 a
b
c
e 2 sono le directory nascoste .
..
se creo il file allora non accadrà nulla per collegare il conteggio
[max@localhost zzz]$ touch 1 2 3 [max@localhost zzz]$ ls -al total 20 drwxrwxr-x 5 max max 4096 Sep 25 17:26 . ------> current directory link count drwx------ 5 max max 4096 Sep 25 17:12 .. ------> parent directory link count -rw-rw-r-- 1 max max 0 Sep 25 17:26 1 -rw-rw-r-- 1 max max 0 Sep 25 17:26 2 -rw-rw-r-- 1 max max 0 Sep 25 17:26 3 drwxrwxr-x 2 max max 4096 Sep 25 17:16 a drwxrwxr-x 2 max max 4096 Sep 25 17:16 b drwxrwxr-x 2 max max 4096 Sep 25 17:16 c [max@localhost zzz]$ cd [max@localhost ~]$ ll total 4 drwxrwxr-x 5 max max 4096 Sep 25 17:26 zzz
ma se cancello qualsiasi directory, il conteggio dei collegamenti cambierà
[max@localhost zzz]$ rmdir b c [max@localhost zzz]$ cd [max@localhost ~]$ ll total 4 drwxrwxr-x 3 max max 4096 Sep 25 17:28 zzz