Tout est considéré comme fichier sous Unix.
Les différents types de fichiers, représentés par le premier caractère de la ligne donnée par
'ls -l'.
Standard (-)
Données, binaire, programme, data, shell,...
Répertoires (d)
Entrée de répertoire.
Blocs (b)
Périphériques.
Caractères (c)
Périphériques(Les mêmes que pour les fichiers 'blocs').
Quelques fichiers décrits :
/unix : Le noyau du système d'exploitation. C'est lui qui sert au démarrage de la machine. Ne jamais toucher à ce fichier.
/etc/passwd : Fichier contenant tous les utilisateurs ayant le droit de se connecter. Sans ce fichier plus personne ne peut se connecter(y compris 'root'), ce qui nécessite le rechargement d'un système par cartouche.
N'est modifié que par 'smit'.
/etc/group : Fichier contenant tous les groupes du système :
/dev/rmt0 : Fichier d'accès au lecteur de cartouche ou DAT.
/dev/fd0 : Fichier d'accès au lecteur de disquettes.
/dev/null : Fichier poubelle ou 'trou noir'.
/dev/hd6 : Fichier d'accès à une partition du disque. Ne jamais toucher à ces fichiers, sous peine de détruire les informations se trouvant sur la partition.
/dev/tbsS.dbf : Fichier d'accès en mode 'RAW' Oracle à une partie de la base de données. Ne jamais toucher à ces fichiers.
Les droits d'accès à un fichier (Programme, périphérique, écran,...) sont définis pour :
- Le propriétaire,
- Le groupe,
- Les autres(Ni le propriétaire, ni du groupe).
Par la commande 'ls -l', on affiche les caractéristiques des fichiers et/ou répertoires présents dans le répertoire courant. La ligne se présente sous la forme : '-rwxr-x-wx ...'.
Le premier caractère indique le type de fichier.
Les trois caractères suivants représentent les droits pour le propriétaire du fichier. On retrouve le droit de lecture(r), d'écriture(w) et d'exécution(x). Si c'est le propriétaire du fichier qui cherche à faire certaines opérations sur le fichier, ce sera ces trois caractères qui seront testés.)
Les trois caractères qui suivent concernent le groupe auquel appartient le fichier.
Les trois derniers donnent les droits pour tous les autres(Qui n'appartiennent pas au groupe et qui ne sont pas propriétaire).
Un répertoire doit posséder le droit d'exécution pour permettre à un utilisateur d'y entrer.
La commande 'chmod' permet de remettre les bons droits sur un ou plusieurs fichiers.
Le droit 'r' est associé à 4, 'w' à 2 et 'x' à 1.
Pour donner des droits, on fait la somme de ces droits pour chacun des trois ensembles : Propriétaire, groupe et les autres. Ex : chmod 752 donne 'rwxr-x-w-' au fichier spécifié.
Il est également possible de sélectionner l'ensemble à atteindre. Ex : 'chmod g+w' ajoute le droit d'écriture au groupe d'appartenance du fichier.
Il est possible de spécifier : u(User:Propriétaire), g(Group:Groupe), o(Other: Autre)
Vidage d’un fichier.
Pour vider un fichier qui devient trop volumineux( Journaux sous /var/adm/ras), il est possible de vider le fichier sans avoir à le recréer ni savoir quels sont les droits à lui affecter.
Pour cela et en ayant les droits d’écriture sur le fichier, il suffit d’utiliser la commande ‘> nom_fichier’. Cette commande a pour but de réinitialiser le contenu du fichier. Cela revient presque à faire un ‘echo > nom_fichier’, à la différence que la commande ‘echo’ rajoute une ligne dans le fichier.
Création d’un fichier.
Si le fichier à été détruit, il est possible de le recréer vide en utilisant la commande ‘touch nom_fichier’. Cela a pour but de recréer un fichier avec les droits de celui qui lance la commande.
Cette chaîne de commande est intéressante pour vérifier les droits d ‘écriture d’un utilisateur dans un répertoire.