|
1 | | -# Linux-System-Inventory-Tool |
| 1 | +# LSIT - Linux System Inventory Tool 🐧🔍 |
| 2 | + |
| 3 | +LSIT est un outil d'inventaire et de cartographie d'infrastructure système développé en Python. Il permet d'auditer rapidement une machine Linux, d'extraire ses métriques vitales et de générer un rapport structuré. |
| 4 | + |
| 5 | +Ce projet met en pratique les concepts d'Infrastructure as Code (IaC) et de développement d'outils d'administration en ligne de commande (CLI). |
| 6 | + |
| 7 | +## 🚀 Fonctionnalités (V1.0) |
| 8 | + |
| 9 | +- **Auto-détection** : Récupération du nom d'hôte, de la RAM totale et du modèle de CPU. |
| 10 | +- **Audit d'activité** : Capture des processus actifs et cartographie de l'arborescence. |
| 11 | +- **Interopérabilité** : Exportation des rapports au format texte brut (`.txt`) ou structuré (`.json`). |
| 12 | +- **Horodatage** : Traçabilité précise de l'heure de l'audit. |
| 13 | + |
| 14 | +## 🛠️ Prérequis |
| 15 | + |
| 16 | +Pour déployer le laboratoire d'environnement isolé, vous devez avoir installé sur votre machine hôte : |
| 17 | + |
| 18 | +- [Vagrant](https://developer.hashicorp.com/vagrant) |
| 19 | +- [VirtualBox](https://www.virtualbox.org/) |
| 20 | +- Git |
| 21 | + |
| 22 | +## 📦 Installation et Déploiement |
| 23 | + |
| 24 | +L'environnement est entièrement automatisé. L'outil s'installe globalement sur la machine cible lors du provisionnement. |
| 25 | + |
| 26 | +1. Clonez ce dépôt : |
| 27 | + |
| 28 | + ```bash |
| 29 | + git clone <URL_DU_DEPOT> |
| 30 | + cd Linux-System-Inventory-Tool |
| 31 | + ``` |
| 32 | + |
| 33 | +2. Démarrez l'infrastructure (Debian 12) : |
| 34 | + |
| 35 | + ```bash |
| 36 | + vagrant up |
| 37 | + ``` |
| 38 | + |
| 39 | +3. Connectez-vous au serveur : |
| 40 | + |
| 41 | + ```bash |
| 42 | + vagrant ssh |
| 43 | + ``` |
| 44 | + |
| 45 | +## 💻 Utilisation |
| 46 | + |
| 47 | +Une fois connecté en SSH, la commande `lsit` est disponible globalement sur le système. |
| 48 | + |
| 49 | +```bash |
| 50 | +# Afficher l'aide |
| 51 | +lsit --help |
| 52 | + |
| 53 | +# Générer un rapport texte (défaut) |
| 54 | +lsit |
| 55 | + |
| 56 | +# Générer un rapport JSON structuré |
| 57 | +lsit --format json |
| 58 | + |
| 59 | +# Afficher la version |
| 60 | +lsit -v |
| 61 | +``` |
| 62 | + |
| 63 | +## 📄 Format des rapports |
| 64 | + |
| 65 | +### TXT (`rapport_lsit.txt`) |
| 66 | + |
| 67 | +```text |
| 68 | +=== Audit LSIT - 2024-01-15 10:30:00 === |
| 69 | +Hostname : debian-vm |
| 70 | +RAM totale : MemTotal: 2048000 kB |
| 71 | +CPU : Intel(R) Core(TM) i7-... |
| 72 | +--- Processus actifs --- |
| 73 | +... |
| 74 | +--- Arborescence /home/vagrant --- |
| 75 | +... |
| 76 | +``` |
| 77 | + |
| 78 | +### JSON (`rapport_lsit.json`) |
| 79 | + |
| 80 | +```json |
| 81 | +{ |
| 82 | + "date": "2024-01-15 10:30:00", |
| 83 | + "hostname": "debian-vm", |
| 84 | + "ram": "MemTotal: 2048000 kB", |
| 85 | + "cpu": "Intel(R) Core(TM) i7-...", |
| 86 | + "processus": "...", |
| 87 | + "arborescence": "..." |
| 88 | +} |
| 89 | +``` |
| 90 | + |
| 91 | +## 🗂️ Structure du projet |
| 92 | + |
| 93 | +```text |
| 94 | +Linux-System-Inventory-Tool/ |
| 95 | +├── lsit.py # Script principal |
| 96 | +├── Vagrantfile # Configuration de la VM Debian 12 |
| 97 | +└── .gitignore |
| 98 | +``` |
0 commit comments