Linux: divers trucs et astuces : Différence entre versions

De TechWik
Aller à : navigation, rechercher
m
m
 
(2 révisions intermédiaires par le même utilisateur non affichées)
Ligne 10 : Ligne 10 :
 
   $ find . -type f -iname "$pattern" -printf "%s %p\n" | sort -n  
 
   $ find . -type f -iname "$pattern" -printf "%s %p\n" | sort -n  
 
== ipcalc : verification / calcul netmask/prefix/broadcast d'adresse IPv4/v6  ==
 
== ipcalc : verification / calcul netmask/prefix/broadcast d'adresse IPv4/v6  ==
 +
Exemples:
 +
  $ ipcalc -m 192.168.1.12/28
 +
  NETMASK=255.255.255.240
 +
  $ ipcalc -6 -c 192.168.1.1223
 +
  ipcalc: bad IPv6 address: 192.168.1.1223
 +
 +
== Trouver les fichiers supprimés détenus par des process actifs ==
 +
Par exemple, dans le cas ou df montre un espace libre inférieur à l'occupation supposée d'un FS, il se peut que des fichiers supprimés soient encore liés à un process actif. Dans ce cas, l'espace ne sera vu libre qu'à la terminaison de celui-ci. Lsof peut identifier ces cas:
 +
  $ lsof +aL1 /
 +
  COMMAND    PID  USER  FD  TYPE DEVICE SIZE/OFF NLINK    NODE NAME
 +
  gnome-she  2498 toine  21u  REG  253,2    16384    0 33645923 /tmp/ffiZmkNQX (deleted)
 +
  gnome-ter 29232 toine  16u  REG  253,2  131072    0 33671856 /tmp/#33671856 (deleted)
  
 
= Format du mot de passe dans /etc/shadow =
 
= Format du mot de passe dans /etc/shadow =
Ligne 33 : Ligne 45 :
 
Les  caractères  de  « salt »  et « encrypted » sont tirés de l'ensemble [a–zA–Z0–9./]. Dans les implémentations MD5 et SHA, key est utilisé entièrement (au lieu de seulement les 8 premiers octets dans l'implémentation DES).
 
Les  caractères  de  « salt »  et « encrypted » sont tirés de l'ensemble [a–zA–Z0–9./]. Dans les implémentations MD5 et SHA, key est utilisé entièrement (au lieu de seulement les 8 premiers octets dans l'implémentation DES).
  
== Process, threads, etc... ==
+
= Process, threads, etc... =
=== Trouver l'exécutable correspondant à un PID ===
+
== Trouver l'exécutable correspondant à un PID ==
 
- sous rhel 6, 7, ...
 
- sous rhel 6, 7, ...
 
   readlink /proc/<pid>/exe
 
   readlink /proc/<pid>/exe
  
 
- sinon, lsof -p <pid> montrera l'exécutable dans les premières lignes (#3 en principe).  
 
- sinon, lsof -p <pid> montrera l'exécutable dans les premières lignes (#3 en principe).  
 +
 +
= Magic SYSRQ =
 +
== Tenter des choses quand le système ne répond plus ==
 +
 +
Le système ne répond plus, et on veut seulement rebooter le plus proprement possible, sans utiliser le bouton d'alimentation...
 +
 +
Si le Kernel a été compilé avec CONFIG_MAGIC_SYSRQ=y :
 +
  $ grep SYSRQ /boot/config-$(uname -r)
 +
alors, on peut tenter les combinaisons suivantes pour rebooter la machine en mode panique (les séquences sont traitées par le noyau).
 +
 +
** Alt+SysRq+r: récupérer le contrôle du clavier
 +
** Alt+SysRq+e: signaler SIGTERM à tous process sauf init pour leur laisser une  chance de s’arrêter proprement.
 +
** Alt+SysRq+i: signaler SIGKILL à tous process sauf init
 +
** Alt+SysRq+s: tenter la commande sync sur tous les filesystems montés
 +
** Alt+SysRq+u: remonter tous les filesystems read-only
 +
** Alt+SysRq+b: reboot
 +
** Alt+SysRq+o: shutdown
 +
 +
Phrase mnemo-technique pour ces séquences de touches SysRq key pour un reboot propre: "Reboot Even If System Utterly Broke"
 +
 +
Voir https://en.wikipedia.org/wiki/Magic_SysRq_key
  
 
[[Category:Linux]]
 
[[Category:Linux]]
 
[[Category:Tips&Tricks]]
 
[[Category:Tips&Tricks]]
 
[[Category:Cryptage]]
 
[[Category:Cryptage]]

Version actuelle datée du 16 septembre 2018 à 18:05

Petites et grandes recettes, en ligne de commande principalement.

Enregistrer commandes et sortie écran d'une session interactive

La commande 'script' permet d'enregistrer l'ensemble des actions et sorties dans un fichier. Pratique pour garder mémoire des actions effectuées pour configurer un système, installer des outils, etc... script démarre un sous-shell qu'on termine par exit , ^D, ... Le flag -a (append) permet de poursuivre le log d'une session précédente.

Rechercher et classer les répertoires/fichiers par taille

  • classement des répertoires et fichiers avec du :
 # du -ah /var/* 2>/dev/null | sort -rh | head -n 10
  • classement de fichiers seuls avec find
 $ find . -type f -iname "$pattern" -printf "%s %p\n" | sort -n 

ipcalc : verification / calcul netmask/prefix/broadcast d'adresse IPv4/v6

Exemples:

 $ ipcalc -m 192.168.1.12/28
 NETMASK=255.255.255.240
 $ ipcalc -6 -c 192.168.1.1223
 ipcalc: bad IPv6 address: 192.168.1.1223

Trouver les fichiers supprimés détenus par des process actifs

Par exemple, dans le cas ou df montre un espace libre inférieur à l'occupation supposée d'un FS, il se peut que des fichiers supprimés soient encore liés à un process actif. Dans ce cas, l'espace ne sera vu libre qu'à la terminaison de celui-ci. Lsof peut identifier ces cas:

 $ lsof +aL1 /
 COMMAND     PID  USER   FD   TYPE DEVICE SIZE/OFF NLINK     NODE NAME
 gnome-she  2498 toine   21u   REG  253,2    16384     0 33645923 /tmp/ffiZmkNQX (deleted)
 gnome-ter 29232 toine   16u   REG  253,2   131072     0 33671856 /tmp/#33671856 (deleted)

Format du mot de passe dans /etc/shadow

Tiré de la page man crypt:

"Si salt est une chaîne de caractères commençant par les caractères « $id$ » et suivit par une chaîne se terminant par « $ » :

   $id$salt$encrypted

alors au lieu d'utiliser la machine DES, id indique la méthode de chiffrement utilisée et comment le reste de la chaîne de mot de passe est interprétée. Les valeur suivantes sont prises en charge pour id :

   ID  | Method
    ──────────────────────────────────────────────────────────
       | MD5
   2a  | Blowfish (pas dans la glibc officielle ; ajoutée
       | par certaines distributions Linux)
   5   | SHA-256 (depuis la glibc 2.7)
   6   | SHA-512 (depuis la glibc 2.7)

Ainsi, $5$salt$encrypted est un mot de passe chiffré SHA-256 et $6$salt$encrypted est un mot de passe SHA-512.

« salt » comprend jusqu'à 16 caractères de sel après « $id$ ». La partie encrypted de la chaîne de mot de passe correspond au mot de passe chiffré. La taille de cette chaîne est fixe :

      MD5     | 22 caractères
      SHA-256 | 43 caractères
      SHA-512 | 86 caractères

Les caractères de « salt » et « encrypted » sont tirés de l'ensemble [a–zA–Z0–9./]. Dans les implémentations MD5 et SHA, key est utilisé entièrement (au lieu de seulement les 8 premiers octets dans l'implémentation DES).

Process, threads, etc...

Trouver l'exécutable correspondant à un PID

- sous rhel 6, 7, ...

 readlink /proc/<pid>/exe

- sinon, lsof -p <pid> montrera l'exécutable dans les premières lignes (#3 en principe).

Magic SYSRQ

Tenter des choses quand le système ne répond plus

Le système ne répond plus, et on veut seulement rebooter le plus proprement possible, sans utiliser le bouton d'alimentation...

Si le Kernel a été compilé avec CONFIG_MAGIC_SYSRQ=y :

 $ grep SYSRQ /boot/config-$(uname -r)

alors, on peut tenter les combinaisons suivantes pour rebooter la machine en mode panique (les séquences sont traitées par le noyau).

    • Alt+SysRq+r: récupérer le contrôle du clavier
    • Alt+SysRq+e: signaler SIGTERM à tous process sauf init pour leur laisser une chance de s’arrêter proprement.
    • Alt+SysRq+i: signaler SIGKILL à tous process sauf init
    • Alt+SysRq+s: tenter la commande sync sur tous les filesystems montés
    • Alt+SysRq+u: remonter tous les filesystems read-only
    • Alt+SysRq+b: reboot
    • Alt+SysRq+o: shutdown

Phrase mnemo-technique pour ces séquences de touches SysRq key pour un reboot propre: "Reboot Even If System Utterly Broke"

Voir https://en.wikipedia.org/wiki/Magic_SysRq_key