X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=filedir.tex;h=14156497144947ade7ad776d88c5f4f2374f2408;hp=f30fee586d5eae5e4cf092aff4985a53321b89da;hb=250b32a55733b307d2eae8afb50b64af1b7c0bc8;hpb=45633dbe15fd23b17a975eb4d9c231d22a67ac00 diff --git a/filedir.tex b/filedir.tex index f30fee5..1415649 100644 --- a/filedir.tex +++ b/filedir.tex @@ -775,16 +775,16 @@ struttura precedentemente allocata e specificata dall'argomento \param{entry} (anche se non è assicurato che la funzione usi lo spazio fornito dall'utente). I vari campi di \struct{dirent} contengono le informazioni relative alle voci -presenti nella directory; sia BSD che SVr4\footnote{POSIX prevede invece solo - la presenza del campo \var{d\_fileno}, identico \var{d\_ino}, che in Linux è - definito come alias di quest'ultimo. Il campo \var{d\_name} è considerato - dipendente dall'implementazione.} prevedono che siano sempre presenti il -campo \var{d\_name}, che contiene il nome del file nella forma di una stringa -terminata da uno zero,\footnote{lo standard POSIX non specifica una lunghezza, - ma solo un limite \const{NAME\_MAX}; in SVr4 la lunghezza del campo è - definita come \code{NAME\_MAX+1} che di norma porta al valore di 256 byte - usato anche in Linux.} ed il campo \var{d\_ino}, che contiene il numero di -\index{inode} inode cui il file è associato (di solito corrisponde al campo +presenti nella directory; sia BSD che SVr4\footnote{lo standard POSIX prevede + invece solo la presenza del campo \var{d\_fileno}, identico \var{d\_ino}, + che in Linux è definito come alias di quest'ultimo. Il campo \var{d\_name} è + considerato dipendente dall'implementazione.} prevedono che siano sempre +presenti il campo \var{d\_name}, che contiene il nome del file nella forma di +una stringa terminata da uno zero,\footnote{lo standard POSIX non specifica + una lunghezza, ma solo un limite \const{NAME\_MAX}; in SVr4 la lunghezza del + campo è definita come \code{NAME\_MAX+1} che di norma porta al valore di 256 + byte usato anche in Linux.} ed il campo \var{d\_ino}, che contiene il numero +di \index{inode} inode cui il file è associato (di solito corrisponde al campo \var{st\_ino} di \struct{stat}). \begin{figure}[!htb] @@ -1777,7 +1777,7 @@ realizzare. Una delle caratteristiche fondamentali di tutti i sistemi unix-like è quella del controllo di accesso ai file, che viene implementato per qualunque filesystem standard.\footnote{per standard si intende che implementa le - caratteristiche previste dallo standard POSIX. In Linux sono disponibili + caratteristiche previste dallo standard POSIX; in Linux sono disponibili anche una serie di altri filesystem, come quelli di Windows e del Mac, che non supportano queste caratteristiche.} In questa sezione ne esamineremo i concetti essenziali e le funzioni usate per gestirne i vari aspetti. @@ -1791,7 +1791,7 @@ cosiddetto \textit{owner}) ed un gruppo di appartenenza, secondo il meccanismo degli identificatori di utente e gruppo (\acr{uid} e \acr{gid}). Questi valori sono accessibili da programma tramite la funzione \func{stat}, e sono mantenuti nei campi \var{st\_uid} e \var{st\_gid} della struttura -\struct{stat} (si veda sez.~\ref{sec:file_stat}).\footnote{Questo è vero solo +\struct{stat} (si veda sez.~\ref{sec:file_stat}).\footnote{questo è vero solo per filesystem di tipo Unix, ad esempio non è vero per il filesystem vfat di Windows, che non fornisce nessun supporto per l'accesso multiutente, e per il quale i permessi vengono assegnati in maniera fissa con un opzione in @@ -1800,12 +1800,12 @@ mantenuti nei campi \var{st\_uid} e \var{st\_gid} della struttura Il controllo di accesso ai file segue un modello abbastanza semplice che prevede tre permessi fondamentali strutturati su tre livelli di accesso. Esistono varie estensioni a questo modello,\footnote{come le \textit{Access - Control List} che possono essere aggiunte al filesystem standard con - opportune patch, la cui introduzione nei kernel ufficiali è iniziata con la - serie 2.5.x. per arrivare a meccanismi di controllo ancora più sofisticati - come il \textit{mandatory access control} di SE-Linux.} ma nella maggior -parte dei casi il meccanismo standard è più che sufficiente a soddisfare tutte -le necessità più comuni. I tre permessi di base associati ad ogni file sono: + Control List} che sono state aggiunte ai filesystem standard con opportune + estensioni (vedi sez.~\ref{sec:file_ACL}) per arrivare a meccanismi di + controllo ancora più sofisticati come il \textit{mandatory access control} + di SE-Linux.} ma nella maggior parte dei casi il meccanismo standard è più +che sufficiente a soddisfare tutte le necessità più comuni. I tre permessi di +base associati ad ogni file sono: \begin{itemize*} \item il permesso di lettura (indicato con la lettera \texttt{r}, dall'inglese \textit{read}).