L'expression file system fait référence à l'arborescence hiérarchisée du système de fichiers HP-UX. Cette expression peut aussi faire référence à un périphérique de stockage tel qu'une section de disque ou un volume logique.
Les différents types de file system sont:
Le nom et la capacité d'un disque dur est obtenu par la commande :
#/usr/sbin/diskinfo /dev/rdsk/c0t5d0
Le fichier spécial du disque en argument est celui en mode caractère.
La commande /usr/bin/bdf permet de connaître quels sont les systèmes de fichiers reconnus actuellement par le système ainsi que leurs capacités et leurs taux de remplissage. Vous obtenez un affichage du type:
Filesystem | kbytes | used | avail | %used | Mounted on |
/dev/vg00/lvol1 | 345000 | 86250 | 258750 | 25 | / |
A noter que vous pouvez avoir un pourcentage d'occupation du disque supérieur à 100%. En fait dès que les 100% sont atteints vous obtiendrez le message file system full empêchant toute nouvelle création de fichiers sur le disque, seul root pourra alors créer un fichier car en fait le système n'est pas encore tout à fait plein, 10% du disque par exemple sont inaaccessible aux utilisateurs, seul root a le droit d'y accèder. C'est le paramètre minfree du noyau qui configure cette propriété. Pour changer ce paramètre, ou tout simplement l'éditer, aller voir dans SAM.
On peut lancer la commande fuser pour identifier la structure des fichiers ou le fichier utilisé par les processus en cours. La commande suivante répertorie l'ID et le nom de login des processus qui utilisent /dev/dsk/c0t5d0.
#fuser -u /dev/dsk/c0t5d0
La commande suivante stoppe tous les processus qui s'opposent au démontage de l'unité de disque /dev/dsk/c0t5d0, affiche leur ID et nom de login au fur et à mesure qu'il les arrête. Cette commande est particulièrement utile pour démonter un disque en cours d'utilisation (" buzy ").
#fuser -ku /dev/dsk/c0t5d0
La commande '/usr/sbin/mount' (sans options) permet de connaître quels sont les systèmes de fichiers reconnus actuellement par le système. Avec des options, cette commande permet de monter des systèmes de fichiers.
La commande du permet de connaître la taille d'un
répertoire, l'unité étant le bloc (512Ko par
défaut). En
faisant du -s /usr (-s permet de ne pas voir le
détail de la commande), vous obtenez 700000 /usr, ce qui
signifie que /usr prend 350Mo.
L'opération de montage d'un disque consiste à lier l'élément physique et son système de fichier avec un répertoire du système de fichier de la machine sur lequel est connecté physiquement le disque.
Exemple : Je veux monter le disque d'adresse SCSI 2 sur un répertoire /disc2.
Première méthode dite temporaire. Au prochaine démarrage de la machine, il faudra remonter le disque à la main. (option de montage facultatives: lecturen écriture et bit suid autorisé)
#cd /
#mkdir /disc2
#/etc/mount /dev/dsk/c0t2d0 /disc2 -rw,suid
Deuxième méthode. Cette méthode est à préférer car le système, au démarrage, va vérifier l'intégrité du système de fichiers avant de le monter. On modifie le fichier '/etc/fstab' en ajoutant la ligne :
/dev/dsk/c0t2d0 /disc2 hfs rw,suid 0 2# commentaire
Les options de montage sont obligatoires, on peut mettre defaults qui correspond aux deux options "rw" et "suid". Le chiffre à la suite ne sert à rien, le deuxième correspond au nombre de passe de l'utilitaire de réparation des disques fsck en cas de restauration du disque. La modification est prise en compte par reboot ou par la commande :
#/usr/sbin/mount -a
Nota : - Pour plus d'informations sur les options et la syntaxe du fichiers /etc/fstab tapez man fstab.
- Dans le cas de partition LVM (logical Volume) au lieu d'avoir le fichier spécial du disque, on a le fichier spécial du logical volume :
/dev/vg00/lvol9 /usr/local vxfs defaults 0 2#montage sur /usr/local de la partition 9 du volume group 0
Le schéma est identique au disque local sauf que dans le cas présent, le disque est connecté sur une machine du réseau. Pour l'exemple, la machine distante va s'appeler hostdistant.
La ligne à ajouter dans le fichier '/etc/fstab est la suivante :
hostdistant:/disc /disc2 nfs rw,suid 0 0 # commentaire
Sur la machine distante hostdistant n'oubliez pas de spécifier dans le fichier /etc/exports que /disc peut être exporté vers d'autres machines:
/disc
La ligne précédente permet l'exportation de /disc de hostdistant vers toutes les autres machines. Pour que l'exportation soit prise en compte vous devez exécuter la commande suivante:
#/usr/sbin/exportfs -a
Reportez vous au paragraphe concernant les fichiers /etc/exports et /etc/fstab pour de plus amples détails.
Les informations qui se trouvent sur un CD-ROM sont accessibles en lecture uniquement. Vous pouvez monter le monter de manière temporaire sous le répertoire /cdrom avec la commande suivante:
/usr/sbin/mount /dev/dsk/c0t4d0 /cdrom -t cdfs
Une entrée dans le fichier /etc/checklist permet de monter le volume CDFS automatiquement:
/dev/dsk/c0t4d0 /cdrom cdfs ro 0 0 #CD-ROM
Nota : cdfs cdrom file system, option lecture seule (ro) pas de passage de fsck.
La commande appropriée pour démonter un file system du file system root est umount. Pour démonter temporairement le disque /dev/dsk/c0t5d0 monté sur /disc vous pouvant exécutez la commande:
#umount /disc
ou
#umount /dev/dsk/c0t5d0
NOTE: - Si votre disque /dev/dsk/c0t5d0 a une entrée dans /etc/fstab, au prochain reboot le disque sera a nouveau monté. Pour le démonter définitivement, supprimer la ligne le référençant dans le fichier /etc/fstab.
- Si vous débranchez définitivement un disque de la station, n'oubliez pas d'enlever son entrée dans fstab. Sinon au reboot elle va rechercher le disque manquant.
- Dans le cas de logical volume la syntaxe est identique (si /dev/vg00/lvol9 est monté sur /usr/local)
umount /dev/vg00/lvol9
ou
umount /usr/local
ATTENTION: Vous ne pouvez pas démonter un file system
dont l'un des fichiers est ouvert ou dont l'un des répertoires
constitue le répertoire de travail d'un utilisateur (file system
buzy). Vous pouvez lancer la commande fuser pour
identifier la structure de fichiers ou le fichier utilisé par
les processus en cours.
fsck est le principal outil de maintenance de file system disponible sous HP-UX. Cette commande vérifie l'intégrité structurelle des file systems en examinant les données intrinsèquement redondantes. Ces données sont détectées soit directement dans le file system soit par calcul à partir de valeurs connues.
fsck est un programme multi-passes, autrement dit qui scrute le file system à plusieurs reprises, chaque itération correspondant à la vérification d'une caractéristique différente du file system. Chaque passe de fsck est une phase.
Au cours de chaque phase, fsck indique toutes les incohérences constatées au niveau du file system et demande s'il convient d'y remédier. Si la réponse est oui, fsck tente de réparer l'incohérence, sinon le problème est ignoré.
La commande suivante lit les entrées qui référencent les files system spécifiées dans le fichier /etc/fstab pour examiner plusieurs disques. fsck répondra automatiquement 'yes' à toutes les questions qui se posent au cours de l'exécution.
fsck -p -y
Il se peut que des données soient supprimées par suite d'une réponse 'yes' systématique. C'est pourquoi, si vous utilisez cette option, examinez d'abord le file system à l'aide l'option -n de façon à vous faire une idée des conséquences possibles si vous utilisez -y
fsck -p -n
fsck recopie les fichiers à problèmes ou les fichiers sans répertoire parent dans le répertoire lost+found du disque nettoyé. Examinez le contenu de ce répertoire dès que l'exécution de fsck est achevée. Les fichiers qui s'y trouvent devront être replacés dans leur répertoire d'origine. Il peut cependant s'avérer difficile, voire impossible, d'identifier ces fichiers.
ATTENTION: N'exécutez pas un fichier exécutable
se
trouvant dans le répertoire lost+found pour essayez de savoir ce
que c'est. Il se pourrait que ce soit le programme qui a
endommagé le disque.
Avant de pouvoir utiliser un file system, vous devez d'abord le créer, condition préalable avant tout montage. Pour créer un file system vous disposez de la commande newfs, la syntaxe est la suivante newfs (-F type de file system) fichier spécial en mode caractère soit:
newfs /dev/rdsk/c0t2d0
Pour créer un file system sur le disque SCSI d'adresse 2, le type par défaut est définit dans le fichier /etc/default/fs, généralement c'est HFS. Pour le type vous avez le choix entre vxfs et hfs.
Pour créer un file system sur le logical volume lvol5 du volume groupe 0 de type vxfs tapez:
newfs -F vxfs /dev/vg00/rlvol5
Vous pouvez éventuellement saisir des paramètres sur les caractéristiques du disque (taille en bloc, taille d'un bloc, ...), sachez que par défaut la commande newfs cherche pour vous les meilleurs paramètres de fonctionnement du disque.
La commande newfs permet aussi de créer des espaces de swap, exemple:
newfs -F vxfs -R 200 /dev/rdsk/c0t4d0
Cette commande crée un file system sur le disque SCSI d'adresse 4, avec 200Mo de swap.
Pour plus de détail faites un man.
L'espace disque est souvent une priorité absolue. L'administrateur système doit contrôler régulièrement l'espace disque disponible, et prendre toute mesure pour éviter que cet espace ne soit insuffisant. Par exemple, il peut prendre certaines mesures préventives comme surveiller les fichiers dont la taille augmente de façon continue, supprimer les fichiers " core ", réduire les fichiers journaux et supprimer les gros fichiers inutilisés depuis un certain temps.
Le système contient un certain nombre de fichiers de ce type, en particulier les fichiers /etc/wtmp (consigne les tentatives d'ouverture de session qui ont réussi) et /etc/btmp (consigne les tentatives d'ouverture de session qui ont échoué). Il incombe à l'administrateur de les surveiller et de prendre régulièrement les mesures qui s'imposent à leur sujet. La fonction cron est particulièrement adapté pour ce genre de tâches.
Voici une liste (non exhaustive) des fichiers susceptibles de croître de façon démesurée.
Nom du fichier | Contenu écrit par | Contenu lu par |
/var/adm/wtmp | /usr/bin/login | /usr/bin/last |
/sbin/init | ||
/usr/sbin/acct/accton | /usr/sbin/acct/accton | |
/var/adm/btmp | /usr/sbin/login | /usr/bin/lastb |
/var/adm/sulog | /usr/bin/su | |
/var/adm/cron/log | /usr/sbin/cron | |
/var/spool/mqueue/syslog | /usr/sbin/sendmail | /usr/bin/mailq |
/var/spool/mqueue/sendmail.st | ||
/var/spool/uucp/.Admin/* | La plupart des commandes
UUCP |
|
/usr/spool/uucp/.Log/* | Commandes UUCP comme /usr/lbin/uucp/uuxqt ou /usr/lbin/uucp/uucio | |
/var/adm/sw/swinstall.log | /usr/sbin/swinstall | |
/var/adm/sw/swremove.log | /usr/sbin/swremove | |
/var/adm/sw/sw*.log | Toutes les commandes /usr/sbin/sw* | |
/var/spool/lp/log | /usr/sbin/lpsched | /usr/bin/lpstat |
/usr/bin/lp | ||
/var/adm/messages | /var/adm/dmesg | |
Les fichiers " core " peuvent apparaître à n'importe quel endroit du système. Parfois, la création d'un de ces fichiers est flagrante, mais souvent elle reste invisible. Un fichier " core " est une image mémoire d'un processus interrompu qui est créée à la réception de certains signaux. Les causes les plus courantes sont les violations de mémoire, les instructions illégales, les exceptions en virgule flottante, les erreurs de bus et les signaux de sortie du système générés par utilisateur. Le fichier " core " est écrit dans le répertoire courant du processus.
Les fichiers " core " peuvent être utilisés pour déterminer ce que le processus était en train de faire au moment de son interruption. Toutefois ils sont fréquemment laissés de coté et viennent encombrer le file system. C'est pourquoi ils doivent être régulièrement localisés et supprimés. L'une des façons d'effectuer cette opération consiste à utiliser la commande find conjointement avec rm:
find / -name core -exec rm {} \;
Les répertoires '/tmp' et '/var/tmp' doivent être régulièrement nettoyés (fichiers aa* notamment).
L'utilitaire 'sam' permet d'afficher et de remettre à zéro différents fichiers.
lancer 'sam'
Exemple avec sauvegarde sur bande DAT.
Vous pouvez utilisez SAM.
[Retour
page d'accueil FUNIX] |
[Retour haut de la page] |