informatique:linux:commandes_linux
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
informatique:linux:commandes_linux [2021/03/16 17:32] – [route] routes persistantes pteu | informatique:linux:commandes_linux [2024/03/15 05:58] – auditd pteu | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | {{tag> | ||
- | |||
====== Commandes Linux ====== | ====== Commandes Linux ====== | ||
Cet article présente des commandes système sous Linux. En général on obtient de l'aide sur une commande en tapant '' | Cet article présente des commandes système sous Linux. En général on obtient de l'aide sur une commande en tapant '' | ||
- | Les commandes réseaux sont décrites ici : [[linux | + | Les commandes réseaux sont décrites ici : [[informatique: |
Line 67: | Line 65: | ||
+ | =====arping===== | ||
+ | |||
+ | Détecter une adresse IP usurpée / duplicate : | ||
+ | <code bash> | ||
+ | arping -D -q -I eth0 -c 2 192.168.0.5 | ||
+ | </ | ||
=====aspell===== | =====aspell===== | ||
Vérificateur d' | Vérificateur d' | ||
Line 117: | Line 121: | ||
On peut utiliser les fichier ''/ | On peut utiliser les fichier ''/ | ||
+ | On peut consulter les journaux d' | ||
+ | <code bash> | ||
+ | Jul 19 02:30:00 bast2 atd[221981]: | ||
+ | </ | ||
+ | |||
+ | =====auditd===== | ||
+ | |||
+ | Permet d' | ||
+ | <code bash> | ||
+ | apt install auditd | ||
+ | |||
+ | # mise en place de l' | ||
+ | auditctl -a exit,always -F arch=b64 -F a0=2 -F a1\&=2 -S socket -k SOCKET | ||
+ | # lister les logs de l' | ||
+ | ausearch -i -ts today -k SOCKET | ||
+ | # supprimer l' | ||
+ | auditctl -d exit,always -F arch=b64 -F a0=2 -F a1\&=2 -S socket -k SOCKET | ||
+ | </ | ||
+ | src: [[https:// | ||
=====awk===== | =====awk===== | ||
Line 450: | Line 473: | ||
# afficher la date dans 5 mois et 4 jours (regarde, on peut même faire des fautes, c'est pris en compte !) : | # afficher la date dans 5 mois et 4 jours (regarde, on peut même faire des fautes, c'est pris en compte !) : | ||
date --date=' | date --date=' | ||
+ | # afficher la date, 89 jours après le 26 mai 2022 : | ||
+ | date -d "26 may 2022 +89 days" | ||
+ | Tue Aug 23 00:00:00 UTC 2022 | ||
# mettre à jour la date et l' | # mettre à jour la date et l' | ||
Line 555: | Line 581: | ||
dig mx pteu.fr | dig mx pteu.fr | ||
dig pteu.fr @9.9.9.9 | dig pteu.fr @9.9.9.9 | ||
+ | dig pteu.fr @127.0.0.1 -p5353 | ||
dig +noall +answer pteu.fr | dig +noall +answer pteu.fr | ||
</ | </ | ||
Line 783: | Line 810: | ||
* '' | * '' | ||
* '' | * '' | ||
+ | * '' | ||
* '' | * '' | ||
* '' | * '' | ||
Line 841: | Line 869: | ||
# on peut additionner les conditions de recherches avec -a (AND) et -o (OR) | # on peut additionner les conditions de recherches avec -a (AND) et -o (OR) | ||
find . \( -name ' | find . \( -name ' | ||
- | </ | ||
+ | Pour trier les résultats par date de modification : | ||
+ | find . \( -name ' | ||
+ | </ | ||
=====flock===== | =====flock===== | ||
Line 1824: | Line 1854: | ||
# -z = on n' | # -z = on n' | ||
# -v = mode verbeux | # -v = mode verbeux | ||
+ | # -t = TCP (-u pour UDP) | ||
# 80: numéro de port à tester | # 80: numéro de port à tester | ||
- | $ nc -zv 10.0.0.1 80 | + | $ nc -zvt 10.0.0.1 80 |
Connection to 10.0.0.1 80 port [tcp/ssh] succeeded! | Connection to 10.0.0.1 80 port [tcp/ssh] succeeded! | ||
Line 2077: | Line 2108: | ||
</ | </ | ||
+ | =====printf===== | ||
+ | |||
+ | Comme [[informatique: | ||
+ | <code bash> | ||
+ | a=12; b=34; c=' | ||
+ | printf 'a=%i, b=%i, c=%s\n' | ||
+ | a=12, b=34, c=toto | ||
+ | </ | ||
+ | '' | ||
+ | |||
+ | Pour formater l' | ||
+ | <code bash> | ||
+ | a=12; b=34; c=' | ||
+ | # on aligne $a et $b à droite sur 5 colonnes, et $c à gauche sur 20 colonnes | ||
+ | printf ' | ||
+ | a= 12, b= 34, c=toto | ||
+ | </ | ||
+ | |||
+ | ====Afficher x fois le même caractère==== | ||
+ | |||
+ | Pour afficher 10 fois le caractère " | ||
+ | <code bash> | ||
+ | printf ' | ||
+ | ========== | ||
+ | </ | ||
=====ps===== | =====ps===== | ||
Line 2101: | Line 2157: | ||
</ | </ | ||
+ | Afficher les processus les plus consommateurs de mémoire/de CPU : | ||
+ | <code bash> | ||
+ | ps -eo pmem, | ||
+ | ps -eo pmem, | ||
+ | </ | ||
=====pstree===== | =====pstree===== | ||
Line 2396: | Line 2457: | ||
ls --color=y | sed ' | ls --color=y | sed ' | ||
</ | </ | ||
+ | |||
+ | ====Supprimer les lignes paires==== | ||
+ | |||
+ | <code bash> | ||
+ | sed ' | ||
+ | </ | ||
+ | (en commençant à la ligne 2, puis toutes les 2 lignes ('' | ||
+ | |||
+ | Équivalent : en partant de la première ligne, puis toutes les 2 lignes ('' | ||
+ | <code bash> | ||
+ | sed -n ' | ||
+ | </ | ||
+ | |||
+ | Autres équivalents : | ||
+ | <code bash> | ||
+ | sed -n ' | ||
+ | sed -n ' | ||
+ | </ | ||
+ | |||
====Liens utiles==== | ====Liens utiles==== | ||
Line 2649: | Line 2729: | ||
=====tar===== | =====tar===== | ||
- | Un outil d' | + | Un outil d' |
<code bash> | <code bash> | ||
# pour archiver le répertoire ./toto/ et tout son contenu (répertoires et fichiers normaux). | # pour archiver le répertoire ./toto/ et tout son contenu (répertoires et fichiers normaux). | ||
# (toto.tar désigne le nom de l' | # (toto.tar désigne le nom de l' | ||
- | tar cvf toto.tar ./toto | + | tar cf toto.tar ./toto |
# archiver ET compresser le fichier grâce à gunzip (-z) ou bunzip (-y) : | # archiver ET compresser le fichier grâce à gunzip (-z) ou bunzip (-y) : | ||
- | # -c pour compresser, -v pour un affichage verbeux, -f pour préciser le fichier | + | # -c pour compresser, -v pour un affichage verbeux, -f pour préciser le fichier |
- | tar czvf toto.tar.gz ./toto | + | tar cvzf toto.tar.gz ./toto |
# extraire (-x) le contenu d'une archive gunzip (-z) : | # extraire (-x) le contenu d'une archive gunzip (-z) : | ||
tar zxf toto.tar | tar zxf toto.tar | ||
+ | |||
+ | # exclure le répertoire " | ||
+ | tar cfz toto.tar --exclude=./ | ||
+ | |||
+ | # équivalent en listant les fichiers à exclure dans un fichier externe | ||
+ | cat exclude-fic.txt | ||
+ | ./ | ||
+ | ./toto/dir | ||
+ | |||
+ | tar cfz toto.tar --exclude-from exclude-fic.txt ./toto | ||
</ | </ | ||
Line 2730: | Line 2820: | ||
Connection closed by foreign host. | Connection closed by foreign host. | ||
</ | </ | ||
+ | |||
+ | Pour fermer une connexion telnet qui ne répond plus ou dont on n' | ||
+ | |||
=====time===== | =====time===== | ||
Line 2745: | Line 2838: | ||
<code bash> | <code bash> | ||
time -f " | time -f " | ||
- | </ | + | </ |
+ | |||
+ | |||
+ | =====timeout===== | ||
+ | |||
+ | **timeout** permet de lancer une commande et de la killer si elle n'est pas terminée dans le laps de temps indiqué. Syntaxe : '' | ||
+ | |||
+ | <code bash> | ||
+ | timeout 10s ping google.fr | ||
+ | </ | ||
=====top===== | =====top===== | ||
Line 2767: | Line 2870: | ||
</ | </ | ||
=====traceroute===== | =====traceroute===== | ||
- | [[http:// | ||
- | L' | ||
- | Certains routeurs ne communiquent pas d'informations | + | [[http:// |
+ | L' | ||
+ | |||
+ | Certains routeurs ne communiquent pas d'information | ||
<code bash> | <code bash> | ||
traceroute google.fr | traceroute google.fr | ||
Line 2789: | Line 2893: | ||
</ | </ | ||
+ | Par défaut le protocole UDP/33434-5 est utilisé mais il peut être filtré. On peut donc demander au traceroute de changer de port ('' | ||
=====trap===== | =====trap===== | ||
**trap** permet d' | **trap** permet d' | ||
- | * '' | + | * '' |
+ | <code bash> | ||
+ | 1) SIGHUP | ||
+ | 6) SIGABRT | ||
+ | 11) SIGSEGV | ||
+ | 16) SIGSTKFLT | ||
+ | 21) SIGTTIN | ||
+ | 26) SIGVTALRM | ||
+ | 31) SIGSYS | ||
+ | 38) SIGRTMIN+4 | ||
+ | 43) SIGRTMIN+9 | ||
+ | 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12 | ||
+ | 53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 | ||
+ | 58) SIGRTMAX-6 | ||
+ | 63) SIGRTMAX-1 | ||
+ | </ | ||
+ | Le code '' | ||
* '' | * '' | ||
- | Par exemple, pour afficher un message lors d'une erreur ainsi que la ligne qui la génère : | + | Par exemple, pour afficher un message lors d'une erreur |
<code bash> | <code bash> | ||
- | trap "echo Erreur à la ligne $LINENO" | + | trap "echo Erreur à la ligne $LINENO" |
</ | </ | ||
+ | C'est utile pour effacer les fichiers temporaires en cas d' | ||
+ | <code bash> | ||
+ | trap "rm -f $TMPFIC1 $TMPFIC2 $TMPFIC3" | ||
+ | </ | ||
=====type===== | =====type===== | ||
- | **type** est une commande interne de bash qui permet de savoir à quoi correspond un " | + | **type** est une commande interne de bash qui permet de savoir à quoi correspond un " |
<code bash> | <code bash> | ||
type -t ls | type -t ls | ||
| | ||
+ | |||
type -t l | type -t l | ||
alias | alias | ||
+ | |||
type l | type l | ||
l is aliased to 'ls -p --color' | l is aliased to 'ls -p --color' | ||
Line 3060: | Line 3187: | ||
Affiche les utilisateurs connectés à la machine, et depuis quand. | Affiche les utilisateurs connectés à la machine, et depuis quand. | ||
- | | + | <code bash> |
- | | + | who |
- | + | | |
- | Permet aussi d' | + | dude |
- | | + | toto |
- | run-level 3 May 31 11:36 | + | |
+ | # afficher le runlevel précédent et courant (comme la commande '' | ||
+ | who -r | ||
+ | | ||
+ | # afficher uniquement l' | ||
+ | who -m | ||
+ | | ||
+ | </ | ||
=====xargs===== | =====xargs===== | ||
informatique/linux/commandes_linux.txt · Last modified: 2024/04/05 06:58 by pteu