{ "meta": { "title": "Installateur d’utilitaires système | Documentation ProxMenux", "description": "Installateur d’outils CLI pour Proxmox VE, avec 25 paquets dans la liste de référence (htop, btop, iperf3, tmux, ...). Sélection personnalisée, installation complète et groupes prédéfinis (base, développement, compression, multiplexeurs, analyse, réseau). Les groupes peuvent inclure d’autres paquets. Utilise ensure_repositories + install_single_package.", "ogTitle": "Installateur d’utilitaires système | Documentation ProxMenux", "ogDescription": "Installez une sélection d’outils CLI sur Proxmox VE en un clic ou par sélection personnalisée." }, "header": { "title": "Installateur des utilitaires système", "description": "Sélecteur des 25 utilitaires CLI de la liste de référence PROXMENUX_UTILS. Propose une sélection personnalisée, une installation complète, six groupes prédéfinis et une vérification des installations. Les groupes peuvent inclure des outils hors de la liste. Utilise les fonctions communes ensure_repositories() + install_single_package() pour une gestion cohérente des dépôts et des messages par paquet.", "section": "Utilitaires" }, "info": { "title": "Ce que ça fait", "body": "Installe des outils CLI depuis une liste de 25 paquets. Chaque installation suit le même processus : ensure_repositories vérifie que l’hôte dispose d’un dépôt Proxmox utilisable pour sa version majeure de PVE, puis install_single_package installe le paquet et vérifie que sa commande est dans PATH." }, "opening": { "heading": "Ouverture de l'installateur", "intro": "Dans le menu Utilities, choisissez System Utilities Installer. Le menu principal propose neuf options :", "imageAlt": "Menu d’installation des utilitaires système avec sélection personnalisée, ALL, groupes prédéfinis et vérification" }, "actions": { "heading": "Les 9 actions du menu", "headerOption": "Option", "headerBehaviour": "Comportement", "rows": [ { "option": "1. Sélection personnalisée", "behaviourRich": "Liste de sélection des 25 paquets. Utilisez SPACE pour cocher et ENTER pour confirmer ; seuls les paquets sélectionnés sont installés." }, { "option": "2. Installer TOUS les utilitaires", "behaviourRich": "Installe en une fois tous les paquets de PROXMENUX_UTILS. À utiliser après une nouvelle installation Proxmox." }, { "option": "3. Niveau de base", "behaviourRich": "grc, htop, tree, curl, wget" }, { "option": "4. Développement", "behaviourRich": "git, vim, nano" }, { "option": "5. Compression", "behaviourRich": "zip, unzip, rsync" }, { "option": "6. Multiplexeurs terminaux", "behaviourRich": "screen, tmux" }, { "option": "7. Analyse", "behaviourRich": "jq, ncdu, iotop" }, { "option": "8. Réseau", "behaviourRich": "iperf3, nethogs, nmap, tcpdump, lsof" }, { "option": "9. Vérifier les installations", "behaviourRich": "Parcourt chaque entrée de PROXMENUX_UTILS, vérifie la présence de la commande dans PATH et affiche un résumé Disponible / Manquant." } ] }, "packages": { "heading": "Les 25 paquets", "intro": "Définis dans le fichier commun scripts/global/utils-install-functions.sh sous le nom PROXMENUX_UTILS (format : package:verify_command:description). Les autres scripts ProxMenux, notamment les lanceurs réseau iftop / iptraf-ng / iperf3, réutilisent ces entrées pour garder les paquets et leurs commandes de vérification synchronisés.", "headerPackage": "Paquet", "headerVerify": "Commande de vérification", "headerDescription": "Description", "rows": [ { "package": "axel", "verify": "axel", "description": "Accélérateur de téléchargement" }, { "package": "aria2", "verify": "aria2c", "description": "Téléchargeur multisource" }, { "package": "btop", "verify": "btop", "description": "Outil moderne de suivi des ressources" }, { "package": "cabextract", "verify": "cabextract", "description": "Extraire les fichiers CAB" }, { "package": "chntpw", "verify": "chntpw", "description": "Modifier le registre Windows / mots de passe" }, { "package": "dos2unix", "verify": "dos2unix", "description": "Convertir les fichiers texte DOS / Unix" }, { "package": "genisoimage", "verify": "genisoimage", "description": "Créer des images ISO" }, { "package": "grc", "verify": "grc", "description": "Coloriseur de journal générique" }, { "package": "htop", "verify": "htop", "description": "Affichage interactif des processus" }, { "package": "iftop", "verify": "iftop", "description": "Utilisation en temps réel du réseau" }, { "package": "intel-gpu-tools", "verify": "intel_gpu_top", "description": "Outils Intel GPU" }, { "package": "iotop", "verify": "iotop", "description": "Surveillance des entrées/sorties disque" }, { "package": "iperf3", "verify": "iperf3", "description": "Essai de bande passante réseau" }, { "package": "ipset", "verify": "ipset", "description": "Gérer les ensembles IP" }, { "package": "iptraf-ng", "verify": "iptraf-ng", "description": "Outil de surveillance du réseau" }, { "package": "libguestfs-tools", "verify": "virt-filesystems", "description": "Utilitaires de disque VM" }, { "package": "msr-tools", "verify": "rdmsr", "description": "Accès aux MSR du CPU" }, { "package": "net-tools", "verify": "netstat", "description": "Outils de réseautage hérités" }, { "package": "plocate", "verify": "locate", "description": "Localiser les fichiers rapidement" }, { "package": "s-tui", "verify": "s-tui", "description": "Stress-Terminal UI" }, { "package": "sshpass", "verify": "sshpass", "description": "Connexion SSH non interactive" }, { "package": "tmux", "verify": "tmux", "description": "Multiplexeur terminal" }, { "package": "unzip", "verify": "unzip", "description": "Extraire les fichiers ZIP" }, { "package": "wimtools", "verify": "wimlib-imagex", "description": "Gérer les images WIM" }, { "package": "zip", "verify": "zip", "description": "Créer des fichiers ZIP" } ] }, "howItWorks": { "heading": "Comment fonctionne l’installation d’un paquet", "items": [ "ensure_repositories détecte PVE 8 ou 9 et lit les dépôts via l’API Proxmox. Avec un dépôt Proxmox utilisable, rien ne change. Un hôte sans abonnement actif utilisant uniquement Enterprise doit confirmer le passage à no-subscription ; apt-get update s’exécute après le changement accepté.", "install_single_package \"pkg\" \"verify_cmd\" \"description\" exécute apt-get install -y \"$pkg\" avec rétroaction (msg_info / msg_ok / msg_error)." ], "verifyIntro": "Après l’installation, la commande est vérifiée avec command -v \"$verify_cmd\". Trois résultats possibles :", "verifyOutcomes": [ "0 (succès): commande disponible, paquet compté comme Succès.", "1 (échec): apt a échoué, compté comme Échec.", "2 (avertissement) : apt a réussi, mais la commande attendue n’a pas été trouvée dans PATH ; le paquet est compté comme Avec avertissements." ], "summary": "À la fin d’une installation personnalisée ou par groupe, un dialogue affiche les nombres de paquets Réussis / Avec avertissements / En échec." }, "verify": { "heading": "Vérifier les installations", "intro": "L’option 9 est en lecture seule : elle parcourt PROXMENUX_UTILS et exécute command -v pour chaque commande de vérification. Voici la sortie :", "code": "Total: 25\nAvailable: 18\nMissing: 8\n\n✓ axel - Download accelerator\n✓ aria2c - Multi-source downloader\n✓ btop - Modern resource monitor\n✗ cabextract - Extract CAB files\n✓ dos2unix - Convert DOS / Unix text files\n✗ genisoimage - Create ISO images\n✓ grc - Generic log colorizer\n...", "outro": "Utile avant d’exécuter des scripts qui dépendent de ces outils. Par exemple, uup_dump_iso_creator.sh nécessite aria2c + cabextract + wimlib-imagex. S’il manque un outil, installez le groupe correspondant ou sélectionnez les paquets manquants." }, "troubleshoot": { "heading": "Dépannage", "reposTitle": "« Impossible de configurer les dépôts. Installation annulée. »", "reposBody": "La vérification des dépôts a échoué : le passage à no-subscription a été refusé, l’état de l’abonnement est illisible ou une entrée nécessite une intervention. Le message précédent indique la cause. Consultez Node → Updates → Repositories et lancez apt-get update dans une console pour voir l’erreur apt.", "warningsTitle": "Un paquet est signalé \"Avec avertissements\" mais la commande fonctionne après que je ferme le menu", "warningsBody": "Après apt-get install, la fonction exécute hash -r, attend brièvement et vérifie la commande attendue avec command -v. Un avertissement signifie que la vérification échoue encore, sans en identifier la cause. Essayez un nouveau shell, puis vérifiez le paquet installé et PATH si la commande manque toujours.", "hangsTitle": "Une installation apt reste bloquée", "hangsBody": "Il est fort probable que l'invite debconf soit bloquée derrière la sortie silencieuse. Le script enveloppe tous les appels apt avec DEBIAN_FRONTEND=noninteractive, ce qui supprime généralement les invites, mais quelques paquets nécessitent toujours une entrée utilisateur. Annuler avec Ctrl+C, exécuter apt-get install -y <pkg> manuellement à partir d'un shell pour voir l'invite et décider." }, "files": { "heading": "Fichiers concernés", "code": "scripts/utilities/system_utils.sh # this script\nscripts/global/utils-install-functions.sh # PROXMENUX_UTILS, install_single_package\nscripts/global/repository-functions.sh # ensure_repositories\nscripts/global/repository_policy.py # reads and switches repositories through the Proxmox API\n/etc/apt/sources.list.d/proxmox.sources # no-subscription source, written by Proxmox when the switch is accepted" }, "related": { "heading": "Voir aussi", "items": [ { "href": "/docs/utils/system-update", "label": "Mise à jour du système Proxmox", "tailRich": "— pour le apt dist-upgrade réel sur l'hôte." }, { "href": "/docs/network/monitoring", "label": "Outils de surveillance en direct (réseau)", "tailRich": "— utilise iftop / iptraf-ng / iperf3 de cette même liste." }, { "href": "/docs/utils", "label": "Présentation des utilitaires", "tailRich": " — retour à la présentation de la section." } ] } }