Un meilleur job mieux payé ?

Deviens chef de projet, développeur, ingénieur, informaticien

Mets à jour ton profil pro

ça m'intéresse

FAQ LinuxConsultez toutes les FAQ

Nombre d'auteurs : 50, nombre de questions : 217, dernière mise à jour : 22 avril 2016  Ajouter une question

 

Cette FAQ a été réalisée à partir des contributions des membres du forum Linux de Developpez.com et de l'équipe de rédaction. Merci à eux !

Nous sommes perpétuellement à l'écoute de vos suggestions et corrections, n'hésitez pas à nous en faire part sur le forum.


SommaireAdministrationSystème (15)
précédent sommaire suivant
 

En principe, seul l'administrateur a le droit d'éteindre ou de rebooter la machine.

Rebooter :

Code bash : Sélectionner tout
1
2
3
$ shutdown -r now 
$ reboot 
$ init 6

Éteindre :
Code bash : Sélectionner tout
1
2
3
4
$ shutdown -h now 
$ halt 
$ poweroff 
$ init 0

Mis à jour le 3 janvier 2014 nyal ok.Idriss

Le programme cron est conçu pour cela.

Cron est un démon Unix. Chaque utilisateur dispose d'un fichier, dit cron table, qui contient les noms des programmes à lancer et leur fréquence d'exécution.

Crontab est le programme qui sert d'interface au démon cron. Il peut être appelé de quatre façons :

Exemple de cron table :

  • crontab nom_de_fichier va définir nom_de_fichier comme cron table de l'utilisateur courant ;
  • crontab -l va afficher le contenu de la cron table de l'utilisateur courant ;
  • crontab -r va supprimer la cron table de l'utilisateur courant ;
  • Enfin, crontab -e va lancer l'éditeur de texte par défaut pour modifier la cron table de l'utilisateur courant (équivalent de vi /etc/crontab, si vi est l'éditeur par défaut).


Code bash : Sélectionner tout
1
2
3
4
5
6
7
8
# chaque minute 
* * * * * * /bin/checkmail 
# chaque jour de la semaine à 8 h 30, sauf en juillet et en août 
30 8 * 1,2,3,4,5,6,9,10,11,12 1-5 /bin/work 
# chaque vendredi à 18h 
0 18 * * 5 /bin/bye 
# et tous les 14 jours à 8 heures (mais pas un jour de week-end) 
0 8 */14 * 1-5 /bin/boss

Mis à jour le 23 octobre 2013 m@ ok.Idriss

La principale source d'erreur est la ligne de commande :

Code : Sélectionner tout
00 01 * * * touch aa
Le système ne sait pas où se trouve touch ou aa...
Mettez donc toujours les chemins entiers pour atteindre les fichiers/exécutables :

Code : Sélectionner tout
00 01 * * * /bin/touch /tmp/aa

Mis à jour le 8 janvier 2014 Katyucha ok.Idriss

Grâce au programme ntpdate qui utilise le protocole NTP pour synchroniser l'horloge du PC sur un serveur de temps distant, en général lui-même synchronisé sur un serveur relié à une horloge de précision atomique.

Une fois le programme installé, la commande est très simple :

Code bash : Sélectionner tout
$ ntpdate serveur.de.temps

Exemple pour la Belgique :

Code bash : Sélectionner tout
$ ntpdate ntp.belnet.be

Mis à jour le 23 octobre 2013 nyal ok.Idriss ovh

Si le programme n'est pas lancé en tâche de fond et que vous avez accès au terminal de lancement, tapez ctrl+c.
Si cela ne fonctionne pas, vous pouvez essayer ctrl+z pour suspendre le programme et ainsi récupérer le shell.
Vous pouvez aussi utiliser un autre terminal et exécuter la commande :

Code bash : Sélectionner tout
$ killall -9 nom_du_programme # ou pkill nom_du_programme

Si la commande échoue :

Code bash : Sélectionner tout
$ kill -9 pid_du_programme

Pour identifier le pid du programme, lancez la commande ps :

Code bash : Sélectionner tout
$ ps -ax | grep nom_du_programme

Le pid du programme est le premier nombre. Sinon, vous pouvez faire :

Code bash : Sélectionner tout
$ kill -9 $(ps -ax | grep nom_du_logiciel  | awk '{ print $1}')

Sous l'environnement graphique X Window la même méthode marche toujours, mais est souvent plus difficile car le nombre de processus est important, et repérer le bon n'est pas toujours évident. Le plus simple est d'utiliser xkill qui est un kill en mode graphique : votre curseur se transforme en croix ou tête de mort et il suffit alors de cliquer sur la fenêtre qui ne répond plus pour tuer aussitôt le processus planté.

Mis à jour le 10 octobre 2013 nyal ok.Idriss ovh

Ce sont des combinaisons de touches qui permettent de passer des ordres directement au noyau.
Elles peuvent être utiles en cas de plantage (écran noir, souris hs, clavier apparemment bloqué...), car elles peuvent vous éviter d'avoir recours au brutal reset.
C'est en effet le noyau qui gère les entrées clavier, et qui transmet les codes correspondants aux différents périphériques.
Certaines combinaisons lui sont réservées : (la touche SysReq est aussi appelée PrintScr ou ImprEcran)

Ces touches ne fonctionneront que si le noyau lui-même n'est pas planté, bien entendu ; mais il faut que l'option correspondante (Kernel Hacking >> Magic SysRq keys) ait été sélectionnée lors de la compilation.
Certaines distributions compilent ainsi leur noyau ; d'autres non.

  • Alt + SysReq + R (Raw) : les codes « brutes » des touches seront transmis (pas de translation).
  • Alt + SysReq + S (Sync) : vide les buffers (ou cache disque).
  • Alt + SysReq + U (Unmount) : démonte les partitions et les remonte en lecture seule.
  • Alt + SysReq + E (tErm) : envoie le signal SIGTERM aux applications pour un arrêt « propre ».
  • Alt + SysReq + I (kIll) : envoie le signal SIGKILL aux applications pour un arrêt forcé.
  • Alt + SysReq + B (reBoot) : redémarre le système.


Il existe une autre combinaison « magique » qui permet, s'il est planté, de « tuer » le serveur X et de revenir à la console : Ctrl+Alt+backspace.

Mis à jour le 8 janvier 2014 ok.Idriss ovh Tifauv'

Il est parfois utile d'ajouter 512 Mo de swap pour quelques jours ou quelques heures pour des logiciels très lourds comme le rendering, blender ou encore le montage de vidéos...

Exemple de création d'un fichier swap de 512 Mo :

Code bash : Sélectionner tout
1
2
3
4
5
dd if=/dev/zero of=/file.swap bs=512M count=1  
sync  
mkswap -c /file.swap  
chmod -v 600 /file.swap  
swapon /file.swap


Mettre hors service le fichier swap :

Code bash : Sélectionner tout
swapoff /file.swap

Ne supprimer pas un fichier swap en service

Mis à jour le 8 janvier 2014 bster ok.Idriss

Si pour une raison ou une autre, vous ne voulez pas créer un fichier d'échange (swap) sous forme d'une partition, sachez qu'il est possible de créer une zone d'échange sous forme de fichier sur votre partition actuelle sans avoir à toucher aux partitions de votre disque dur.

Pour cela :

Code bash : Sélectionner tout
$ dd if=/dev/zero of=/my_swap bs=1024k count=128

Ici :

  • /dev/zero permet de créer un fichier « vide » ;
  • /my_swap représente le nom du fichier d'échange, vous pouvez bien sûr le nommer comme vous voulez et le placer où vous le désirez ;
  • bs=1024k représente la taille du fichier. Ici, un fichier de 128 Mo est créé.


Puis on crée le swap proprement dit :

Code bash : Sélectionner tout
$ mkswap /my_swap

Ici /my_swap est a remplacer par le nom que vous avez donné au fichier précédemment créé.
Enfin, on monte le fichier swap :

Code bash : Sélectionner tout
$ swapon -p2 /my_swap

Si l'on veut automatiser le montage du swap, il faut rajouter la ligne suivante dans le fichier /etc/fstab :

Code : Sélectionner tout
/my_swap	swap		swap	defaults,pri=2	0	0

Mis à jour le 8 janvier 2014 Arnaud F. ok.Idriss

Pour certaines raisons, il arrive que le superblock d'un système de fichiers soit corrompu.

Dans ce cas, exécutez :

Code bash : Sélectionner tout
$ mkfs -n /dev/ma_partition

Cela permettra de simuler un formatage de la partition.

Mkfs va relancer son algorithme pour déterminer les backups du superblock ! Vous aurez ainsi à l'écran les numéros des superbloks, qui vous ont été donnés au moment du vrai formatage.

Vous pouvez ainsi les noter et lancer un fsck en donnant un autre des superblocks pour réparer la partition :

Code bash : Sélectionner tout
$ fsck -b mon_superblock_de_secours /dev/ma_partition

Mis à jour le 23 octobre 2013 Katyucha ok.Idriss

Pour effectuer une vérification de vos clusters défectueux, il existe la commande badblocks :

Code bash : Sélectionner tout
$ badblocks /dev/hdb1

Par défaut, seul un test de lecture non destructif est effectué.

Pour effectuer un test d'écriture en mode destructif, utilisez l'option -w.

Comme son nom l'indique, le mode destructif supprimera l'ensemble des données de la partition !

Pour effectuer un test d'écriture en mode non destructif, préférez l'option -n.

Il existe aussi un protocole appelé S.M.A.R.T. implémenté sur les disques durs.
Installez le package « smartmontools » et lancez la commande :

Code bash : Sélectionner tout
$ smartctl -t long /dev/hdX

Pour voir ensuite le résultat, il faut patienter quelques minutes avant de demander d'afficher le rapport :

Code bash : Sélectionner tout
$ smartctl -l selftest /dev/hdX

Il y a aussi moyen de lancer un « scandisk » par la commande fsck /dev/hda1 par exemple. Le problème c'est que si votre partition est montée (ce qui est forcément le cas) la vérification risque d’entrainer de graves problèmes. L'astuce est donc d'effectuer ce test de disque juste avant de monter la partition, c'est-à-dire lors de la séquence d'initialisation du système. Pour forcer fsck à se lancer au prochain démarrage, il suffit de créer un fichier /forcefsck à la racine du système de fichiers, puis de rebooter. Linux va alors analyser toutes les partitions physiques de type Linux déclarées dans le /etc/fstab et récupérer les erreurs qui peuvent l'être.

Mis à jour le 8 janvier 2014 Katyucha ok.Idriss ovh

Il vous suffit d'installer le logiciel john the ripper. Faites une copie du /etc/shadow dans le répertoire root et lancer john :

Code bash : Sélectionner tout
1
2
3
$ cp /etc/shadow /root/ 
$ cd /root 
$ john shadow

Vous pouvez arrêter le traitement à tout moment via Ctrl+C et le reprendre par :

Code bash : Sélectionner tout
$ john -restore

Le traitement est assez long et prend du temps CPU.

Mis à jour le 23 octobre 2013 Katyucha ok.Idriss

Pour désactiver un compte, il faut modifier deux paramètres à l'utilisateur :

  • la date d'expiration du mot de passe ;
  • le nombre de jours entre la date d'expiration du mot de passe et la désactivation du compte.


La commande usermod vous le permet :

Code bash : Sélectionner tout
$ usermod -e 2005-12-05 -f 3 mon_user

Si le paramètre f est à 0, dès l'expiration du mot de passe, le compte est désactivé (par défaut, il est à -1, pas de désactivation).

Il est important de ne jamais supprimer un compte. L'utilisateur étant référencé pour les droits des fichiers par exemple, dans les groupes...

Mis à jour le 8 janvier 2014 Katyucha ok.Idriss

En utilisant la commande w qui permet de connaitre le nombre de clients connectés à la machine, ainsi que le load average, c'est-à-dire la charge de la machine.

Quand le load average dépasse 3 c'est mauvais signe...
Celui-ci représente le nombre moyen de processus en file d'attente.

Vous avez également les commandes ps, top (et dérivés comme htop) et nmon qui peuvent vous fournir des informations utiles sur la charge (CPU, mémoire, processus gourmands...).

Mis à jour le 23 octobre 2013 hornetbzz ok.Idriss Regnak

Le fichier de configuration par utilisateur s'appelle .nanorc et est présent dans votre dossier utilisateur. Un fichier par défaut (lu lorsque le .nanorc n'est pas présent dans le dossier utilisateur) est disponible dans /etc/ .

Premièrement, copiez le fichier de configuration par défaut dans votre dossier utilisateur :

Code bash : Sélectionner tout
cp /etc/nanorc ~/

Vous pouvez ensuite l'éditer. Pour activer la coloration syntaxique, il suffit de décommenter les lignes se trouvant à la fin du fichier, ressemblant à :
Code : Sélectionner tout
include "/usr/share/nano/c.nanorc"
Sauvegardez et relancez nano, la coloration syntaxique est maintenant activée.

Mis à jour le 7 décembre 2013 LittleWhite

ls propose une multitude d'options dont la coloration des résultats.
Vous pouvez donc obtenir des couleurs avec la ligne suivante :

Code bash : Sélectionner tout
ls --color=auto

À la place de toujours taper cette option, vous pouvez ajouter un alias dans votre fichier .bashrc (fichier chargé au démarrage de la session) afin que ls utilise toujours l'option. Pour ce faire, vous pouvez rajouter la ligne suivante dans le fichier .bashrc de votre dossier utilisateur :
Code bash : Sélectionner tout
alias ls='ls --color=auto'

La coloration ne fonctionne que sur des terminaux compatibles.

Mis à jour le 8 janvier 2014 LittleWhite

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 ça


Réponse à la question

Liens sous la question
précédent sommaire suivant
 

Les 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 © 2017 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.

 
Contacter le responsable de la rubrique Linux