GNU/Linux >> Tutoriels Linux >  >> Linux

Commandes pour en savoir plus sur un système inconnu

une question à double usage ! Un archéologue logiciel ou un pirate maléfique pourrait utiliser les réponses à cette question ! Maintenant, qui suis-je ?

J'ai toujours utilisé ps -ef contre ps -augxww pour savoir sur quoi j'étais. Les boîtes Linux et System V avaient tendance à aimer "-ef" et erreur sur "-augxww", vice versa pour BSD et les anciennes machines SunOS. La sortie de ps peut également vous en dire beaucoup.

Si vous pouvez vous connecter en tant que root et que c'est une machine Linux, vous devez faire lsusb et lspci - cela vous permettra d'atteindre 80 % du chemin vers la connaissance de la situation matérielle. dmesg | more peut vous aider à comprendre les problèmes actuels sur à peu près n'importe quoi.

Il commence à être supprimé, mais fait ifconfig -a peut généralement vous en dire beaucoup sur les interfaces réseau et la mise en réseau. Exécution de mii-tool et/ou ethtool sur les interfaces que vous voyez dans ifconfig une sortie qui ressemble à un câble Ethernet peut également vous donner des informations.

Exécuter ip route ou netstat -r peut être instructif sur le routage du protocole Internet, et peut-être quelque chose sur les interfaces réseau en cours d'utilisation.

Un mount l'invocation peut vous renseigner sur le(s) disque(s) et comment ils sont montés.

Exécution de uptime , puis last | more peut vous dire quelque chose sur l'état actuel de la maintenance. Des temps de disponibilité de plus de 100 jours signifient probablement "il est temps de changer l'huile et les fluides", métaphoriquement parlant. Exécution de who est aussi

En regardant /etc/resolv.conf et /etc/hosts peut vous renseigner sur la configuration DNS de cette machine. Peut-être faire nslookup google.com ou dig bing.com pour voir si le DNS est principalement fonctionnel.

Il vaut toujours la peine de regarder quelles erreurs ("commande introuvable") et quelles variantes de commandes ("ps -ef" vs "ps augxww") fonctionnent pour déterminer sur quelle variante d'Unix ou Linux ou BSD vous venez de vous retrouver.

La présence ou l'absence d'un compilateur C et son emplacement sont importants. Faites which cc ou mieux, which -a cc pour les trouver.


cat /etc/*release* est une commande intéressante pour avoir un aperçu de la distribution en cours d'exécution.


http://bhami.com/rosetta.html pourrait être utile pour passer en revue, sinon je fouille généralement sous /etc (comptes, trucs d'initialisation, allusions à la saveur du système d'exploitation, etc.) et crontab -l et regardez à travers le ps liste des choses à apprendre.

De plus, "en tant que root" est super effrayant, car j'ai dû réparer des systèmes où un administrateur Linux effectuant une telle enquête a défini tous les noms d'hôte Solaris sur -f .

Aussi df est une commande dangereuse, un excellent moyen de bloquer les E/S. Donc, n'exécutez jamais cela tant que vous n'avez pas au moins étudié les montures ou que vous ne savez pas que vous pouvez ouvrir une autre session d'une manière ou d'une autre.

Utilisez des commandes très simples (uname , cd /etc; ls , cat , $PAGER ) jusqu'à ce que vous trouviez ce qu'est l'hôte, et si vous ne le connaissez pas, vérifiez une rosette ou lisez toujours la page de manuel avant de supposer qu'une commande ou un indicateur indique qu'une commande fait ce qu'elle fait sur des systèmes plus populaires.


Linux
  1. En savoir plus sur votre système Linux avec inxi

  2. Que sont vdso et vsyscall ?

  3. Comment apprendre les composants internes du système Linux

  4. Que fait init exactement ?

  5. Noms d'hôte - De quoi s'agit-il ?

Qu'est-ce que Git Bash ? Travailler avec les commandes Git Bash

Tout sur les démons sous Linux

PacVim - Un jeu CLI pour apprendre les commandes Vim

50 commandes Nmap essentielles pour les administrateurs système

Qu'est-ce que le système de fichiers Linux ? Guide facile

SystemD - A quoi sert SystemD ?