kyopages/docs/scripts/getInfo.md

204 lines
8.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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:
```shell
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`
```shell
./getInfo
```
```text
_ ___ __
__ _ ___| |_|_ _|_ __ / _| ___
/ _' |/ _ \ __|| || '_ \| |_ / _ \
| (_| | __/ |_ | || | | | _| (_) |
\__, |\___|\__|___|_| |_|_| \___/
|___/
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 le paste sera visible pendant 7 jours en
standard. Après ce délai il sera supprimé.
```text
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](https://kyodev.frama.io/kyopages/trucs/interfaces-nommage-classique/)
* ifconfig [net-tools](https://github.com/giftnuss/net-tools) est un projet abandonné depuis
des années (info): iproute2 [linuxfoundation](https://wiki.linuxfoundation.org/networking/iproute2) 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](getInfo_rapport.md)
## help
```shell
./getInfo -h
```
```text
_ ___ __
__ _ ___| |_|_ _|_ __ / _| ___
/ _' |/ _ \ __|| || '_ \| |_ / _ \
| (_| | __/ |_ | || | | | _| (_) |
\__, |\___|\__|___|_| |_|_| \___/
|___/
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é](getInfo_plus.md)
## sources
sur [framagit](https://framagit.org/kyodev/kyopages/blob/master/scripts/getInfo)
## contact
pour tout problème ou suggestion concernant ce script, n'hésitez pas à ouvrir une issue
[Framagit](https://framagit.org/kyodev/kyopages/issues)
IRC freenode: ##sdeb
## license
* pour le code original: [LPRAB/WTFPL](https://framagit.org/kyodev/kyopages/blob/master/scripts/LICENSE.md)
* pour les parties de codes incluses, se référer aux licenses spécifiques indiquées dans le fichier
[LICENCE](https://framagit.org/kyodev/kyopages/blob/master/scripts/LICENSE.md)
## remerciements
* [kernel.org](https://www.kernel.org/) pour les tags cpu, et les modules à détecter
* [neofetch](https://github.com/dylanaraps/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](https://www.pastery.net/) pour héberger des pastebins avec rendu markdown