GNU/Linux >> Tutoriels Linux >  >> Linux

Quelques outils utiles pour les administrateurs système Linux

Ce guide fournit une liste d'outils utiles pour les administrateurs système Linux. Cette liste n'inclut aucun programme complexe (comme Ansible, Puppet) qui nécessite une courbe d'apprentissage abrupte pour être configuré et utilisé en production. La plupart des outils donnés ici ne sont que des scripts et sont très faciles à installer et à utiliser en temps réel. Si vous êtes un administrateur système Linux/Unix en herbe qui a une expérience limitée, utilisez ces programmes pour faire le travail facilement et rapidement. Ces outils ne sont peut-être pas toujours utiles, mais certains d'entre eux peuvent être utiles.

À propos de Sysadmin-util

Sysadmin-util est une collection de scripts qui aide les administrateurs système et les utilisateurs novices à effectuer diverses tâches.

Sysadmin-util se compose des scripts suivants :

  1. il y a
  2. chronique
  3. cidr2ip
  4. réduire
  5. dupes
  6. répertoire-vide
  7. expand-ipv6
  8. pare-feu affleurant
  9. graphite_send
  10. ipaddr
  11. peut-être
  12. mk-passwd-hash
  13. multi-ping
  14. mysql-slave-check
  15. pyhttpd
  16. randpass
  17. depuis
  18. afficher
  19. ssh-auth-types
  20. test ssh
  21. ssl-expiration-date
  22. délai d'expiration
  23. jusqu'à l'erreur
  24. jusqu'au succès
  25. en panne
  26. quand-up
  27. quel-coque
  28. avec cadenas

Voyons comment installer et utiliser certains de ces outils avec des exemples.

Installer sysadmin-util sur Linux

Comme je l'ai déjà dit, l'installation de tous les outils répertoriés ici est triviale. En fait, il n'y a pas besoin d'installer. Clonez simplement son référentiel et commencez à utiliser les outils en un rien de temps.

$ git clone https://github.com/skx/sysadmin-util.git

La commande ci-dessus clonera tout le contenu du référentiel Sysadmin-util dans le répertoire actuel. Cd dans ce répertoire et exécutez tous les outils de votre choix. C'est aussi simple que ça !

Sysadmin-util Fournit les outils utiles suivants pour les administrateurs système Linux

Il y a

Cet outil vous aide à savoir depuis combien de temps un fichier ou un répertoire a été modifié dans un format lisible par l'homme.

Assurez-vous d'être dans le répertoire sysadmin-util :

$ cd sysadmin-util

Pour savoir quand un fichier ou un répertoire a été modifié, il suffit de mentionner son chemin comme ci-dessous.

$ ./ago <path-to-file/directory>

Exemples :

$ ./ago /home/sk/sysadmin-util/
/home/sk/sysadmin-util/ 23 hours ago
$ ./ago /etc/
/etc/ 3 days ago

Comme vous pouvez le voir, /home/sk/sysadmin-util a été modifié il y a 23 heures et /etc/ répertoire a été modifié il y a 3 jours .

Lire connexe :

  • Comment surveiller les modifications de fichiers à l'aide de fswatch sous Linux
  • Rechercher et trier des fichiers en fonction de l'accès, de la date et de l'heure de modification sous Linux

Chronique

L'outil chronique exécute une commande silencieusement sauf si elle échoue, c'est-à-dire qu'il exécute une commande et masque STDOUT et STDERR s'il se termine avec succès. Il est utile pour les tâches cron . Au lieu d'essayer de garder la commande silencieuse et d'avoir à gérer des e-mails contenant une sortie accidentelle lorsqu'elle réussit, et une sortie pas assez détaillée en cas d'échec, vous pouvez simplement l'exécuter de manière verbeuse toujours et utiliser chronic pour masquer la sortie réussie.

Exemple :

Lors de la création d'une nouvelle tâche cron, au lieu d'utiliser la ligne suivante ;

0 1 * * * backup >/dev/null 2>&1

vous pouvez utiliser :

0 1 * * * chronic backup

Cidr2ip

Il convertit les blocs CIDR en leurs adresses IP constitutives.

Exemple :

$ ./cidr2ip 192.168.225.0/24
192.168.225.0
192.168.225.1
192.168.225.2
192.168.225.3
192.168.225.4
192.168.225.5
[...]

Réduire

L'outil de réduction supprime les lignes vides et les lignes contenant des espaces blancs du ou des fichiers donnés.

Exemple :

$ echo -e "Linux is not an OS.\n It is a Kernel. \n\nGnu/Linux is the OS.\n\n\n\n" | ./collapse
Linux is not an OS.
It is a Kernel. 
Gnu/Linux is the OS.

Dupes

L'outil de dupes signalera les fichiers qui sont identiques. Il vous aide à trouver des fichiers en double contenant le même contenu de manière récursive via le hachage SHA1.

Exemple :

$ ./dupes 
./.git/logs/HEAD
./.git/logs/refs/remotes/origin/HEAD
./.git/logs/refs/heads/master

Lire connexe :

  • Comment rechercher et supprimer des fichiers en double sous Linux

Répertoire vide

Cet outil testera si le répertoire donné est vide ou non.

Exemple :

L'exemple suivant montre si le répertoire donné /home/sk/ostechnix est vide ou non.

$ if ./empty-dir /home/sk/ostechnix; then echo "It is empty" ; fi
It is empty

Si le répertoire n'est pas vide, vous ne verrez aucune sortie.

Développer-ipv6

Cet outil étend les adresses IPv6 abrégées/compressées données à leur forme complète. Cela peut être utile lors de la configuration des entrées DNS.

Exemple :

$ ./expand-ipv6 fe80::a00:27ff:feff:d2e0
fe80:0000:0000:0a00:27ff:feff:d2e0

Multi-ping

Il s'agit d'un wrapper ping multi-protocole. Il est utilisé pour tester la connectivité d'un hôte distant, qu'il s'agisse d'un hôte IPv6 ou IPv4. Signification - si la télécommande utilise IPv4, elle invoque la commande 'ping' pour tester la connectivité. Si l'hôte distant utilise IPv6, il appellera alors la commande 'ping6'.

L'utilitaire multi-ping nécessite Net::DNS module perle. Si vous ne l'avez pas encore installé, consultez le guide suivant.

  • Comment installer des modules Perl sous Linux

Maintenant, envoyez un ping à n'importe quel domaine à l'aide de l'outil multi-ping, comme indiqué ci-dessous.

Exemple :

$ ./multi-ping google.com
Host google.com - 216.239.36.117 - alive
Host google.com - 216.239.32.117 - alive
Host google.com - 216.239.38.117 - alive
Host google.com - 216.239.34.117 - alive
Host google.com - 2001:4860:4802:34:0:0:0:75 - alive

Lire connexe :

  • Comment envoyer un ping à plusieurs hôtes à la fois sous Linux
  • Pingez plusieurs serveurs et affichez la sortie dans l'interface utilisateur textuelle supérieure
  • Prettyping - Rendre la sortie de la commande Ping plus jolie et plus facile à lire

Pyhttpd

Il s'agit d'un simple serveur HTTP Python qui vous permet de configurer instantanément un serveur de fichiers de base.

Exemples :

 $ ./pyhttpd 8080
 Serving HTTP on 0.0.0.0 port 8080 ...

Si vous souhaitez autoriser le serveur à être lié à localhost uniquement, plutôt que d'écouter sur toutes les interfaces, exécutez :

 $ ./pyhttpd 127.0.0.1:8080
 Serving HTTP on 127.0.0.1 port 8080 ...

Lire connexe :

  • Comment configurer un serveur de fichiers de base à l'aide de simpleHTTPserver

Randpass

Comme son nom l'indique, l'utilitaire randpass est utilisé pour générer un mot de passe aléatoire à partir de la ligne de commande.

Exemples :

$ ./randpass 
Gb39KTBu

Pour générer un mot de passe avec une longueur spécifique, utilisez -n drapeau.

$ ./randpass -n 15
Xa7ZMA38tfOt7O2

Lire connexe :

  • Différentes façons de générer un mot de passe fort sous Linux

Depuis

Il affiche tout nouveau contenu depuis la dernière lecture d'un fichier. Il est utile pour suivre les fichiers journaux.

Exemple :

Supprimez le contenu du fichier apt history.log :

$ ./since /var/log/apt/history.log >/dev/null

Maintenant, installez ou supprimez toutes les applications. Je supprime l'éditeur Vim :

$ sudo apt remove vim

Vérifiez maintenant le contenu du fichier history.log :

$ ./since /var/log/apt/history.log

Start-Date: 2020-01-28 11:52:59
Commandline: apt remove vim
Requested-By: sk (1000)
Remove: ubuntu-server:amd64 (1.417.3), vim:amd64 (2:8.0.1453-1ubuntu1.1)
End-Date: 2020-01-28 11:53:05

L'outil 'depuis' n'affichera que le contenu nouvellement ajouté dans un fichier depuis la dernière fois qu'il a été exécuté. S'il n'y a pas de contenu ajouté, ce script se termine silencieusement et vous ne verrez aucune sortie.

Ssl-expiration-date

Il affiche la date d'expiration du certificat SSL du domaine ou de l'hébergeur donné.

Exemples :

$ ./ssl-expiry-date google.com
google.com
    Expires: Mar 31 15:47:12 2020 GMT
    Days: 63

Vous pouvez également spécifier plusieurs domaines séparés par des espaces :

$ ./ssl-expiry-date google.com ostechnix.com
google.com
    Expires: Mar 31 15:47:12 2020 GMT
    Days: 63
ostechnix.com
    Expires: Oct  9 12:00:00 2020 GMT
    Days: 254

Pour afficher uniquement le nombre de jours restants sur le certificat, utilisez -d choix :

$ ./ssl-expiry-date -d google.com ostechnix.com
google.com: 63
ostechnix.com: 254

Délai d'expiration

Il permet à l'utilisateur d'exécuter une commande pendant un intervalle spécifique et de la tuer.

Exemple :

$ ./timeout -t 10 top

Comme vous pouvez le voir, la commande ci-dessus tue la commande 'top' après 10 secondes.

Tuez une commande après 10 minutes et 10 secondes :

$ ./timeout -t 10:10 top

Tuez une commande après 10 heures, 10 minutes et 10 secondes :

$ ./timeout -t 10:10:10 top

Veuillez noter que l'utilitaire timeout est également disponible par défaut dans le cadre de GNU coreutils emballer. Donc, vous n'aurez probablement pas besoin du programme timeout du paquet sysadmin-uti.

Lire connexe :

  • Comment exécuter une commande pendant une durée spécifique sous Linux
  • Comment trouver le temps d'exécution d'une commande ou d'un processus sous Linux
  • Comment exécuter une commande Linux toutes les X secondes pour toujours
  • Comment ajouter des commandes Linux à la file d'attente et les exécuter une par une

Il existe quelques autres outils disponibles, tels que Jusqu'à l'erreur & Jusqu'au succès - répéter les commandes jusqu'à ce qu'elles échouent/réussissent, lorsqu'elles sont arrêtées &quand-up - attend qu'un hôte soit down/up, mysql-slave-check - trouver si l'hôte actuel est esclave ou non, quel-shell - trouver le shell sous lequel nous courons, etc.

Consultez la page GitHub du projet pour en savoir plus sur tous les outils.

  • Dépôt GitHub de Sysadmin-util

Autres outils utiles pour les administrateurs système Linux et les noobs

Outre Sysadmin-util, il existe de nombreux autres outils disponibles qui pourraient être utiles aux administrateurs système Linux/Unix ainsi qu'aux débutants. Nous en avons déjà couvert certains.

1. Cockpit - Outil de surveillance du système basé sur le Web

Poste de pilotage est un outil d'administration de serveur gratuit et open source qui vous permet de surveiller et d'administrer facilement des serveurs Linux (uniques ou multiples) via un navigateur Web. Il aide les administrateurs système à effectuer des tâches d'administration simples, telles que le démarrage des conteneurs, l'administration du stockage, la configuration du réseau, l'inspection des journaux, etc. Consultez le lien suivant pour installer et utiliser Cockpit sous Linux.

  • Cockpit – Surveiller et administrer les serveurs Linux via un navigateur Web

2. Netutils-linux - Outils de dépannage réseau et de réglage des performances pour Linux

Netutils-linux est une collection d'utilitaires utiles écrits en Python qui peuvent être utilisés pour simplifier le dépannage du réseau Linux et le réglage des performances. Pour en savoir plus sur ces outils, consultez le guide suivant.

  • Une collection d'utilitaires pour simplifier le dépannage du réseau Linux et le réglage des performances

3. Moreutils - utilitaires Unix plus utiles

Si vous êtes un administrateur système Linux, vous aurez certainement entendu parler des utilitaires de base GNU . Il est pré-installé dans toutes les distributions Linux. Mais qu'en est-il de Moreutils ? Moreutils est une collection d'utilitaires Unix utiles qui ne sont pas inclus par défaut dans les systèmes d'exploitation de type Unix. Ces utilitaires sont souvent utiles pour effectuer facilement et rapidement diverses opérations sur votre serveur Linux. Plus de détails peuvent être trouvés dans le lien ci-dessous.

  • Moreutils – Une collection d'utilitaires Unix plus utiles

4. Bash-Snippets - Scripts BASH utiles pour les gros utilisateurs de la ligne de commande

extraits bash est une collection de scripts BASH utiles pour les gros utilisateurs de ligne de commande qui vivent dans Terminal toute la journée. Vous voulez vérifier la météo d'un endroit où vous habitez? Il y a un script pour le vérifier rapidement. Vous vous demandez quel est le prix d'une action spécifique ? Il y a aussi un script pour ça. Je m'ennuie? Vous pouvez regarder des vidéos YouTube. Tout à partir de la ligne de commande !! Vous n'avez pas besoin d'installer d'applications graphiques lourdes et gourmandes en ressources. Cliquez sur le lien suivant pour savoir comment utiliser ces scripts.

  • Une collection de scripts BASH utiles pour les gros utilisateurs de la ligne de commande

5. Debian-goodies - Outils en ligne de commande pour Debian et ses dérivés

Les bonus de Debian est encore une autre collection d'utilitaires utiles pour les systèmes basés sur DEB. Comme moreutils, Debian-goodies fournit également quelques commandes utiles supplémentaires qui ne sont pas disponibles par défaut. À l'aide de ces outils, les administrateurs système peuvent effectuer un certain nombre de tâches, telles que :

  • quels programmes consomment le plus d'espace disque,
  • quels services doivent être redémarrés après la mise à jour du système,
  • rechercher un fichier correspondant à un motif dans un package,
  • répertorier les packages installés en fonction de la chaîne de recherche et bien plus encore.

Consultez le lien suivant pour en savoir plus sur ces goodies.

  • Debian-goodies :un ensemble d'utilitaires utiles pour les utilisateurs de Debian et d'Ubuntu

6. Quelques bonnes alternatives aux pages de manuel

Les pages de manuel sont géniales ! Il n'y aucun doute à propos de ça. Mais, de nombreuses pages de manuel sont complètes et manquent d'exemples utiles. Vous devrez peut-être parcourir toute la page de manuel pour trouver le détail d'une certaine option ou d'un drapeau. Cette tâche prend beaucoup de temps lorsque vous souhaitez apprendre un exemple pratique d'une commande Unix spécifique à l'aide de pages de manuel. Pas plus! Je connais quelques bonnes alternatives aux pages de manuel qui se concentrent principalement sur des exemples, en sautant toutes les autres parties de texte complètes. Lisez le lien ci-dessous pour en savoir plus.

  • Bonnes alternatives aux pages de manuel que chaque utilisateur Linux doit connaître

7. Cli-fyi - Un outil de ligne de commande pour récupérer des informations sur l'adresse IP, l'e-mail, le domaine et plus encore

Cli.Pour info est un outil de requête en ligne de commande pour récupérer des informations sur les adresses IP, les e-mails, les domaines, les devises cryptographiques, les médias/url, la date/heure UTC, le pays et le langage de programmation, etc. Vous pouvez récupérer tous ces détails à partir de la ligne de commande ou du navigateur comme décrit ci-dessous. lien.

  • Cli.Fyi – Un outil CLI pour récupérer des informations sur les adresses IP, les e-mails, les domaines et bien plus encore

8. ExplainShell - Un outil Web qui explique chaque argument d'une commande Linux

ExplainShell est une excellente ressource pour ceux qui souhaitent apprendre rapidement et facilement les arguments et les options de la ligne de commande Linux, sans avoir à consulter les pages de manuel. Il décompose la commande donnée et explique ce que fait chaque partie d'une commande Linux. Tout ce que vous avez à faire est de copier et coller une commande Linux sur le site Web ExplainShell, et il affichera instantanément la signification de chaque partie d'une commande Linux.

  • ExplainShell – Découvrez ce que fait chaque partie d'une commande Linux

9. Kmdr - Obtenez l'explication des commandes CLI dans votre terminal

Kmdr est similaire à ExplainShell mais avec quelques fonctionnalités supplémentaires. L'ExpliqueShell vous aide à apprendre uniquement les commandes Linux. Mais que se passe-t-il si vous souhaitez apprendre d'autres commandes CLI, par exemple Python ? Vous ne trouverez pas d'explication des commandes Python dans ExplainShell. C'est là que Kmdr vient à la rescousse. Kmdr fournit des explications pour de nombreuses commandes CLI, y compris ansible , conda , menu fixe , git , allez , kubectl , mongo , mysql , npm , gemmes de rubis , vagabond et des centaines d'autres programmes tels que ceux intégrés à bash . Ça a l'air bien? Génial! Consultez le lien suivant pour apprendre à utiliser Kmdr.

  • Kmdr - Afficher l'explication des commandes CLI dans le terminal

Comme je l'ai déjà dit, tous les outils susmentionnés peuvent ne pas être utiles tout le temps. Essayez-en un à la fois et découvrez si cela vous aide d'une manière ou d'une autre dans votre travail quotidien.

Ces outils ne sont pas seulement destinés aux administrateurs système, mais à tous ceux qui souhaitent améliorer leurs compétences en ligne de commande Linux en général. Je continuerai à ajouter des outils et des applications plus utiles dans cette liste. Si vous pensez qu'un autre outil devrait être ajouté à cette liste, n'hésitez pas à me le faire savoir dans la section des commentaires ci-dessous. Je vérifierai et mettrai à jour la liste en conséquence.


Linux
  1. Les meilleurs outils Linux pour les écrivains

  2. 8 conseils pour une automatisation fiable du système Linux

  3. 80 outils de surveillance Linux pour les administrateurs système

  4. 3 commandes Linux utiles pour les administrateurs système

  5. Outils d'overclocking sous Linux

Top 10 des meilleurs outils de sélection de couleurs pour le système Linux

Top 10 des meilleurs outils d'analyse pour le système Linux

Top 10 des meilleurs outils météo pour le système Linux

Les 10 outils de navigation de fichiers open source pour le système Linux

Les 10 meilleurs outils de notification de courrier pour le système Linux

Les 15 meilleurs outils de chiffrement de courrier électronique pour le système Linux