FAQ BSDConsultez toutes les FAQ
Nombre d'auteurs : 6, nombre de questions : 127, dernière mise à jour : 20 novembre 2007 Ajouter une question
Cette FAQ a été réalisée à partir des contributions des membres du forum Unix de developpez.com et de l'équipe de rédaction.
Organisation : cette FAQ se compose de deux grandes parties. Une première, Questions générales, qui regroupe toutes les questions qui trouvent une réponse, commune ou non, pour l'ensemble des systèmes BSD. La deuxième est découpée en autant de sous-parties qu'il y a de systèmes BSD soit parce que la question est spécialisée soit parce que la réponse est incomplète pour qu'elle concerne chacun de ces systèmes.
Participer : nous sommes perpétuellement à l'écoute de vos suggestions et corrections, aussi mineures soient-elles. N'hésitez pas à nous en faire part par l'intermédiaire de la discussion prévue à cet effet .
Note : l'exactitude des informations figurant dans la présente FAQ sont autant que possible vérifiée avant intégration. Cependant, nous ne pouvons garantir l'absence de toute erreur, c'est pourquoi les auteurs ne pourront en aucun cas être tenus pour responsables.
- FreeBSD : le système de base fournit sh et tcsh (vous vous apercevrez en comparant les inodes que csh désigne en réalité tcsh) mais vous pourrez en trouver d'autres dans les ports (catégorie shells) dont les plus connus bash, zsh, ksh, ...
- NetBSD et OpenBSD : de base, vous disposerez des interpréteurs csh, sh et ksh mais le système de logiciels portés ou paquetages vous permettra d'en installer d'autres (catégorie shells également).
Il est recommandé de ne pas affecter un shell qui n'est pas situé sur la partition racine à l'utilisateur root car les autres partitions ne sont pas montées en cas de passage en mode mono-utilisateur. |
Il est toujours agréable de lister le contenu d'un répertoire avec la commande ls en y ajoutant une pointe de couleur. Cela permet de bien distinguer les différents types de fichiers.
La première étape consiste à créer un petit fichier qui va contenir le type du fichier et la couleur qui lui est affectée. Nous allons appeler ce fichier dir_colors. Voici ci-dessous un exemple de son contenu :
Code : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | NORMAL 00 # global default FILE 00 # normal file DIR 01;34 # directory LINK 01;36 # symbolic link FIFO 40;33 # pipe SOCK 01;35 # socket DOOR 01;35 # door BLK 40;33;01 # block device driver CHR 40;33;01 # character device driver ORPHAN 40;31;01 # symlink to nonexistent file .sh 01;32 .conf 01;33 .tar 01;31 .jpg 01;35 .mp3 40;45 |
La commande ls du système ne permet pas de gérer ce type de procédé. Nous allons pour cela installer le paquetage gnuls (GNU colorized ls) soit avec le paquetage précompilé :
Code linux : | Sélectionner tout |
pkg_add (-r) gnuls
Code linux : | Sélectionner tout |
1 2 3 4 5 6 7 8 | # FreeBSD et OpenBSD cd /usr/ports/misc/gnuls/ && make install clean # NetBSD cd /usr/pkgsrc/misc/gnuls && make install clean # DragonFlyBSD >= 1.4 cd /usr/pkgsrc/misc/gnuls && bmake install clean |
- zsh : ~/.zshrc
- ksh : ~/.profile
- bash : ~/.bahrc
- (t)csh : ~/.(t)cshrc
Editez-le et ajoutez la ligne suivante :
Code linux : | Sélectionner tout |
1 2 3 4 | # FreeBSD eval `dircolors /etc/dir_colors` # NetBSD, OpenBSD, DragonFlyBSD eval `gdircolors /etc/dir_colors` |
Code linux : | Sélectionner tout |
1 2 3 4 5 6 7 8 9 10 11 | # (ba|k|z)sh # FreeBSD alias ls='gnuls --color=auto' # NetBSD, OpenBSD, DragonFlyBSD alias ls='gls --color=auto' # (t)csh # FreeBSD alias ls gnuls --color=auto # NetBSD, OpenBSD, DragonFlyBSD alias ls gls --color=auto |
- Trouver les fichiers n'appartenant pas à un certain utilisateur ou qui ne sont associés à aucun utilisateur système connu :
Code linux : Sélectionner tout find $HOME \( \( ! -user $USER \) -or -nouser \) -print
- Trouver tous les programmes dont les bits set-uid ou set-gid sont positionnés :
Code linux : Sélectionner tout find / \( -perm -2000 -or -perm -4000 \) -print
- Trouver les fichiers d'une hiérarchie qui ne possèdent pas le chflag immuable (schg) :
Code linux : Sélectionner tout find /bin ! -flags schg -type f -print
- Trouver et supprimer tous les fichiers temporaires qui n'ont pas été modifiés depuis plus de dix jours :
Code linux : Sélectionner tout find /tmp -mtime +10 -type f -exec rm -i {} \;
- Rediriger les erreurs (uniquement) vers un fichier :
- sh, ksh, bash : commande 2> erreurs.log
- csh, tcsh : (commande > /dev/tty) >& erreurs.log
- Rediriger la sortie standard et les erreurs vers un même fichier :
- sh, ksh, bash : commande > sortie.log 2>&1
- csh, tcsh : commande >& sortie.log
- Rediriger la sortie standard et les erreurs vers deux fichiers distincts :
- sh, ksh, bash : commande > sortie.log 2> erreurs.log
- csh, tcsh : (commande > sortie.log) >& erreurs.log
- Rediriger la sortie standard et les erreurs vers une commande (tube) :
- sh, ksh, bash : commande 2>&1 | less
- csh, tcsh : commande |& less
Proposer une nouvelle réponse sur la FAQ
Ce n'est pas l'endroit pour poser des questions, allez plutôt sur le forum de la rubrique pour çaLes sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2024 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.