Pagina 1 di 1

Chiarimenti sui Flag dei file "s" e "t"

Inviato: martedì 24 agosto 2010, 18:08
da Insidioso93
Salve a tutti,
sto leggendo una guida di Unix (abbastanza vecchia ma pertinente) che indica gli elementi principali del sistema Unix nonchè il suo funzionamento...

Ero nella sezione " File system" dove si parlava delle varie directory e dell'organizzazione gerarchica....nonchè dei flag di permission di direttori e file.
Oltre ai classi rwx.... il testo parlava di altri due tipi di flag:

"s" : utilizzato per gli eseguibili sta per "sostitute user-id on execution" ...diceva che permetteva ad un normale utente, durante la sola fase di esecuzione del file, di ricevere particolari permission del proprietario del file...

"t": riguardava il caricamento in memoria centrale di eseguibili. Il flag t permette, nel caso in cui l'eseguibile abbia area dati e area testo separati, di mantenere temporaneamente in memoria di swap il testo per rendere più veloce il caricamento in memoria centrale.

oltre a non aver capito bene il funzionamento del secondo tag..mi chiedevo se esistono ancora questi tag perchè ho controllato nel mio sistema Ubuntu nella cartella /bin (per gli eseguibili) e non ho trovato nessun file con tali flag...


è solo a scoopo informativo.....


tanti saluti


Insidioso93

Re: Chiarimenti sui Flag dei file "s" e "t"

Inviato: martedì 24 agosto 2010, 18:18
da kiroken_
si esistono tutti e due e ne esiste anche un altro che è come il primo ma per il gruppo.
Per il primo:

Codice: Seleziona tutto

ls -l /usr/bin/passwd 
-rwsr-xr-x 1 root root 19720 May 28 03:22 /usr/bin/passwd
Per il secondo devi sapere cosa sono l'area testo e l'area dati di un eseguibile.
Per renderla semplice l'area testo è quella che contiene il codice del programma e mantenendola in RAM (swap) si può rendere il caricamento del programma più rapido perchè non deve accedere al disco per procurarsela ma la ha già bella pronta li.
edit: Un esempio è gcc usare il flag t permette di rendere il suo caricamento più rapido cosa particolarmente utile durante lunghe operazioni di compilazione dei programmi.

Re: Chiarimenti sui Flag dei file "s" e "t"

Inviato: martedì 24 agosto 2010, 18:29
da Insidioso93
Aspetta...ma lo swap non è la partizione su disco fisso?
Quindi significa che, se mantengo la parte di testo dell'eseguibile sempre in menoria di swap questo mi consente di caricare più velocemente in memoria centrale il resto del programma...

giusto?


Nel caso da te riferito di passwd il flag "s" serve per poter ottenere momentaneamente i privilegi del proprietario (root) per modificare il file passwd giusto?

Re: Chiarimenti sui Flag dei file "s" e "t"

Inviato: martedì 24 agosto 2010, 18:45
da kiroken_
in effetti rileggendo l'ho scritto male. Il flag t fa rimanere l'area testo caricata in memoria (o meglio è più che altro un indicazione che non è detto venga assecondata dal kernel) quindi potrebbe trovarsi in RAM o nell'area di swap.
Insidioso93 ha scritto: Nel caso da te riferito di passwd il flag "s" serve per poter ottenere momentaneamente i privilegi del proprietario (root) per modificare il file passwd giusto?
Si altrimenti senza quel flag un comune utente avrebbe bisogno di strumenti per far ottenere a passwd i privilegi di root (in genere non è in possesso di simili strumenti quindi avrebbe bisogno dell'amministratore del sistema semplicemente per cambiare la sua password).

Re: Chiarimenti sui Flag dei file "s" e "t"

Inviato: martedì 24 agosto 2010, 20:02
da gdivito
Il flag "s" sarebbe set-uid e ti è stato già detto.

Il flag "t" sarebbe "sticky" ma su GNU/Linux non ha quel significato: http://it.wikipedia.org/wiki/Sticky_bit

Re: Chiarimenti sui Flag dei file "s" e "t"

Inviato: martedì 24 agosto 2010, 20:21
da Insidioso93
Capito...quindi, originariamente, il flag "t" permetteva che il codice oggetto di un programma venisse mantenuto swap in modo tale da rendere in seguito più veloce il suo caricamento...
mentre nei GNU/Linux indica cartelle temporanee con determinati permessi...

grazie a tutti per le risposte

Re: Chiarimenti sui Flag dei file "s" e "t"

Inviato: giovedì 9 settembre 2010, 14:15
da Insidioso93
Scusate se riapro la discussione ma il flag "l" cosa indica? lo trovato esplorando il sistema in particolare nella cartella /etc/init.d quella che contiene gli script per l'avviamento dei programmi all'avviamento del sistema.

grazie ancora

saluti

P.S

ho guardato il tipo di file....(mi è venuta l'idea solo dopo aver scritto il post) si tratta di un Link simbolico giusto?

Re: Chiarimenti sui Flag dei file "s" e "t"

Inviato: giovedì 9 settembre 2010, 14:21
da KabaL_ScarS
Insidioso93 ha scritto: Scusate se riapro la discussione ma il flag "l" cosa indica? lo trovato esplorando il sistema in particolare nella cartella /etc/init.d quella che contiene gli script per l'avviamento dei programmi all'avviamento del sistema.

grazie ancora

saluti

P.S

ho guardato il tipo di file....(mi è venuta l'idea solo dopo aver scritto il post) si tratta di un Link simbolico giusto?

Giusto  ;) ;)