Che cosa indica il primo carattere della stringa di modalità UNIX?

22

Ho molta familiarità con i permessi del file linux e con i permessi speciali (sticky bit, suid, guid)

Ma non so cosa significa c ? È un permesso o qualcos'altro? Ho fatto qualche ricerca su google e non riesco a capirlo.

Ecco il file del dispositivo che lo ha.

steven@A215:~$ ls -l /dev/null
crw-rw-rw- 1 root root 1, 3 Dec 29 20:58 /dev/null
    
posta user169254 30.12.2013 - 04:17
fonte

4 risposte

30

Significa che il file è un file speciale di carattere - fondamentalmente un file di dispositivo che fornisce accesso seriale (al contrario di un dispositivo di blocco speciale come un'unità disco) . Ad esempio, i terminali e i dispositivi seriali sono interfacciati tramite file speciali di carattere ( /dev/tty1 , /dev/ttyS0 e così via).

Per una breve introduzione ai file di dispositivo, vedi Linux / UNIX: file di dispositivo [cyberciti.biz]. Per una discussione più dettagliata, consulta questa risposta stackexchange Informazioni su / dev e relativi sottodirectory e file . Per informazioni sulle strutture dati sottostanti, consultare il Capitolo 4 del Manuale di programmazione del modulo Kernel Linux: File di dispositivo dei caratteri [tldp.org]

    
risposta data steeldriver 30.12.2013 - 04:52
fonte
16

Un dispositivo di carattere è contrassegnato con c come prima lettera della stringa di modalità. Allo stesso modo, un dispositivo a blocchi è contrassegnato con b ,

$ ls -l /dev/null
crw-rw-rw- 1 root root 1, 3 Jan 21 21:50 /dev/null
$ ls -l /dev/sda
brw-rw---- 1 root disk 8, 0 Jan 21 21:50 /dev/sda

ci sono più di questi dispositivi speciali (file nel senso che tutto è un file in Linux),

d : directory
s : socket
p : pipe
D : Door
l : symbolic link etc.

Vedi questa pagina wikipedia per ulteriori dettagli.

    
risposta data souravc 30.12.2013 - 05:08
fonte
3

ls -l genera un simbolo di 10 stringa UNIX di informazioni popolarmente conosciuta come stringa di autorizzazione. per es.

-rw-rw-r--  1 userName groupName   13200650 Dec 13 21:23 fileName

Il primo carattere di stringa di autorizzazione o stringa di modalità , noto come descrittore di file , indica il tipo di file e gli altri nove presi in gruppi di tre indicano le autorizzazioni per il file in questione, dove:

  • il primo gruppo di tre caratteri (dopo il primo carattere tra i 10) indica le autorizzazioni del proprietario,
  • il secondo gruppo di tre autorizzazioni designate per il gruppo,
  • l'ultimo gruppo di tre designate autorizzazioni per gli altri (o il mondo).

Qui, nell'esempio sopra il primo carattere / simbolo "-" indica un file normale.

Mentre nei seguenti esempi,

crw-rw-rw- 1 root root 1, 3 Dec 29 20:58 /dev/null
crw-rw-rw- 1 root root 1, 5 Jan 13 20:56 /dev/zero

il primo carattere delle stringhe di autorizzazione è "c" e come detto sopra, è un indicatore di tipo di file che indica un dispositivo di carattere .

Oltre al - , c alcuni altri descrittori di file sono:

  • d - & gt; directory
  • l - & gt; link simbolico
  • s - & gt; Socket Unix
  • b - & gt; dispositivo di blocco
  • p - & gt; conduttura
  • D - & gt; Porta

Riferimenti:

risposta data precise 13.01.2014 - 19:11
fonte
1

Il primo carattere nella prima colonna, cioè "c" in crw-rw-rw- sopra, indica a un utente informato il tipo di file, in questo caso un dispositivo di carattere.

    
risposta data Maythux 30.12.2013 - 19:35
fonte

Leggi altre domande sui tag