kyopages/docs/scripts/getInfo.md

8.6 KiB
Raw Blame History

getInfo

  • script bash qui rassemble un certain nombre d'informations sur la configuration d'un PC
  • un rapport au format markdown est formé
  • ce rapport peut être exporté sur un pastebin (avec rendu markdown) pour partager les informations
  • par défaut le paste sera conservé 7 jours
  • aucune donnée confidentielle n'est contenue dans le rapport (mot de passe ssid, n° de série, adresses MAC)
  • l'installation du script est possible en option. il se mettra alors éventuellement à jour automatiquement
  • l'option -us permet la mise à jour du script en place, sans installation et sans test ultérieur de nouvelle version
  • testé sous debian (développement), ArchLinux, openSuse, Fedora et Gentoo
  • tout est collecté avec les droits utilisateur
    seul le contenu de journalctl (ou dmesg) nécessite des droits administrateur et le mot de passe sera demandé. À défaut de le connaître ou le saisir, les journaux système ne seront pas affichés.

chargement et lancement du script:

wget -nv -O getInfo https://frama.link/getInfo
chmod +x getInfo
  • liens de chargement alternatif wget -nv -O getInfo https://framagit.org/kyodev/kyopages/raw/master/scripts/getInfo
./getInfo
            _   ___        __       
  __ _  ___| |_|_ _|_ __  / _| ___  
 / _' |/ _ \ __|| || '_ \| |_ / _ \ 
| (_| |  __/ |_ | || | | |  _| (_) |
 \__, |\___|\__|___|_| |_|_|  \___/ 
 |___/                              
     version 2.62.0 - 11/12/2017

•ø••••••••••••••◇◇◇••••••

  exporter sur le pastebin par défaut? [o/N] 

  le rapport est disponible en local, fichier: getInfo_rapport.md
  vous pouvez le visualiser ultérieurement avec getInfo -l
  vous pourrez l'exporter ultérieurement avec getInfo -p

  • par défaut, l'export sur un pastebin ne se fera pas (touche <Entrée>)
  • répondre o + <Entrée> permet d'exporter et de récupérer un lien où le paste sera visible pendant 7 jours en standard. Après ce délai il sera supprimé.
  exporter sur le pastebin par défaut? [o/N] o

  
  votre paste:  https://www.pastery.net/abcdef/
  (valide pendant 7 jours)

  le rapport est disponible en local, fichier: getInfo_rapport.md
  vous pouvez le visualiser ultérieurement avec getInfo -l
  vous pourrez l'exporter ultérieurement avec getInfo -p

  • les erreurs/warnings/critiques via journalctl (ou dmesg) ne sont pas rapportées sans saisie de mot de passe superutilisateur. À défaut, les extraits dmesg ne seront pas dans le rapport final.
  • export ou non, le rapport au format markdown est disponible dans le répertoire courant, dans le fichier getInfo_rapport.md
  • ultérieurement, le rapport est consultable avec la commande ./getInfo -l
  • ultérieurement, le rapport peut être (re)exporté avec la commande ./getInfo -p
  • la durée du paste peut être configurée avec l'option supplémentaire -tn (n=nombre de jours), par exemple:
    • .getInfo -p -t14 pour exporter un rapport existant pour une période de 14 jours
    • .getInfo -t21 pour former et exporter un rapport pour une période de 21 jours

alertes / informations

éventuellement selon les détections, les alertes ou informations suivantes sont affichées:

  • analyse boot-systemd
    • des services sont en erreur (alerte) : des services actifs sont dans un état erreur/échec/non trouvé
  • disques
    • température de disque > 50°C (information) {hddtemp requis}
    • fichier /etc/initramfs-tools/conf.d/resume absent (information)
    • l'UUID dans resume ne correspond pas à celui du swap (alerte): erreur hibernation et boot allongé
  • gestionnaire de paquets Apt/dpkg (debian)
    • apt-transport-https inutile si apt>1.5
    • https avec deb.debian si apt>1.5
    • url httpredir obsolètes dans les sources.list (info)
    • fichiers ayant une extension différente de .list dans /etc/apt/sources.list.d/ (info)
    • erreur apt update (alerte)
    • paquets à mettre à jour apt upgrade(info)
    • paquets à mettre à jour avec apt full-upgrade (info)
    • paquets inutiles apt autoremove (info)
    • archives périmées apt autoclean (info)
    • taille du cache des paquets
    • fichiers de configuration de paquets orphelins (^rc) (info)
    • si deborphan, bibliothèques orphelines (info)
  • journaux
    • les journaux ne sont pas persistants (info) : revoir les logs du précédent boot n'est donc pas possible pour investigation (journalctl --no-hostname --boot -1) par exemple
    • détection firmware bug (alerte): voir microde? présence ou absence testé dans la partie système
  • graphisme
    • une carte graphique semble désactivée (alerte): malgré l'utilisation de DRI_PRIME=1 ou optirun, une carte graphique n'apparaît pas dans lspci
    • l'accélération 3D n'est pas activée (info): voir glxinfo
  • locale
    • Network time on: no (info): pas de service NTP actif (synchronisation de l'heure)
    • RTC in local TZ: yes (alerte): Lhorloge matérielle est en heure locale et pas en UTC. Les modifications dheure dété/hiver peuvent être incohérentes."
  • réseau
    • interface wifi en erreur <wlx...> (alerte): l'interface n'est pas reconnue et est donc mal nommée, éventuellement, changer le renommage
    • ifconfig net-tools est un projet abandonné depuis des années (info): iproute2 linuxfoundation le remplace
    • adresses MAC visibles dans les ipv6 SLAAC (info): traçage possible sur les réseaux
  • système
    • microcodes intel|amd64 non installés (info): donc pas de corrections bugs du processeur

exemple de rapport

getInfo_rapport

help

./getInfo -h
            _   ___        __       
  __ _  ___| |_|_ _|_ __  / _| ___  
 / _' |/ _ \ __|| || '_ \| |_ / _ \ 
| (_| |  __/ |_ | || | | |  _| (_) |
 \__, |\___|\__|___|_| |_|_|  \___/ 
 |___/                              
     version 2.62.0 - 11/12/2017

  ./getInfo    : exécution normale, rapport markdown de la configuration
  getInfo      : script installé dans le système

  options:
     -c  : (catégorie)  menu sélection catégorie d'analyse
            -cs : catégorie système      -cs : catégorie configuration
            -cr : catégorie réseau       -ca : catégorie analyse
     -h  : (help)  affichage aide
     -j  : (journaux)  analyse démarrage système, log Xorg, kernel et système, catégorie -ca
     -l  : (list)  afficher le rapport markdown existant
     -p  : (paste) exporte le rapport markdown existant, durée standard du paste 7 jours

       --ip     : affiche ip publique (ipv4/ipv6), pas de rapport markdown
       --mac    : affiche les adresses Mac, pas de rapport markdown
                      pas de rapport markdown,  ROOT requis:
       --serial : affiche n° série disques, batterie et châssis
       --ssid   : affiche configurations ssid, infos confidentielles, NetworkManager requis

          -tn : durée du paste de n jour(s)
     -us      : upgrade spécial du script (pas de mise à jour automatique, maj du script en place)

     -i, --install  : installation du script dans le système, root requis
     -r, --remove   : suppression du script dans le système, root requis
     -u, --upgrade  : upgrade script installé si maj possible
     -v, --version  : version du script, en ligne et en cours d'exécution

  plus d'infos: https://frama.link/doc-getInfo

informations avancées

getInfo avancé

sources

sur framagit

contact

pour tout problème ou suggestion concernant ce script, n'hésitez pas à ouvrir une issue Framagit

IRC freenode: ##sdeb

license

  • pour le code original: LPRAB/WTFPL
  • pour les parties de codes incluses, se référer aux licenses spécifiques indiquées dans le fichier LICENCE

remerciements

  • kernel.org pour les tags cpu, et les modules à détecter
  • neofetch pour du code sur la détection système.
    neofetch est un successeur dynamique de screenfetch avec du code sympa
  • [inxi](* https://github.com/smxi/inxi) pour un longue lecture du code
  • pastery.net pour héberger des pastebins avec rendu markdown