# wsl-manage Outil PowerShell interactif de sauvegarde et de restauration des distributions WSL. Il gere aussi les donnees Docker Desktop lorsque la distribution `docker` ou `docker-desktop` est selectionnee. ## Fichiers - `wsl-manage.cmd` : commande a lancer. - `wsl-manage-core.ps1` : implementation PowerShell. Le dossier contenant ces fichiers doit etre dans le `PATH` Windows pour pouvoir lancer `wsl-manage` depuis n'importe quel terminal. ## Prerequis - Windows avec WSL installe et accessible par `wsl.exe`. - PowerShell. - Docker Desktop doit etre completement arrete lorsqu'une sauvegarde ou une restauration Docker est concernee. - Le lecteur de destination doit etre accessible et disposer de suffisamment d'espace libre. L'execution en administrateur n'est normalement pas necessaire. Elle peut etre necessaire pour acceder a certains fichiers VHDX ou effectuer un compactage. ## Sauvegarde Lancer sans argument : ```powershell wsl-manage ``` Le script : 1. Liste les distributions WSL disponibles. 2. Demande de sauvegarder toutes les distributions ou une seule. 3. Demande le lecteur de destination et affiche son espace libre. 4. Demande confirmation. 5. Arrete WSL avec `wsl --shutdown`. 6. Exporte les distributions selectionnees au format `.tar`. 7. Affiche une progression estimee et le temps ecoule. Les sauvegardes sont rangees dans un dossier date sous `WSL-Backup` : ```text D:\WSL-Backup\2026-09-16_20-05-42\ |-- Ubuntu.tar |-- Debian.tar `-- ... ``` Le pourcentage affiche est une estimation basee sur l'espace utilise par la distribution. `wsl.exe --export` ne fournit pas de progression native. ## Donnees Docker Desktop Si `docker` ou `docker-desktop` est selectionne, le script : 1. Verifie que Docker Desktop est arrete. 2. Demande le chemin des donnees Docker. 3. Utilise par defaut : ```text E:\WSL\Docker\desktop-data ``` 4. Verifie la presence des dossiers `disk` et `main`. 5. Copie ces dossiers dans : ```text D:\WSL-Backup\2026-09-16_20-05-42\Docker\ |-- disk\ `-- main\ ``` La distribution `docker-desktop` exportee en `.tar` contient principalement les fichiers systeme. Les images, conteneurs et volumes Docker sont dans les donnees `disk` et `main`. ## Restauration Lancer avec l'argument `restore` : ```powershell wsl-manage restore ``` Le script : 1. Demande le lecteur contenant `WSL-Backup`. 2. Demande la date de sauvegarde. 3. Demande une distribution ou `Toutes les machines`. 4. Demande confirmation apres recapitulatif. 5. Arrete WSL. 6. Importe les distributions sous `WSL-Install\DATE`. 7. Restaure les donnees Docker uniquement si `docker` ou `docker-desktop` est selectionne. Une distribution restauree porte le nom de son fichier sans extension : ```text Ubuntu.tar -> Ubuntu ``` Le dossier d'installation d'une distribution ne doit pas deja exister. ## Conseils - Quitter Docker Desktop depuis son icone de notification avant une operation Docker. - Ne pas interrompre la copie des fichiers VHDX. - Conserver une copie de secours des donnees Docker avant restauration. - Les anciennes sauvegardes ne contenant pas de dossier `Docker` ne permettent pas de restaurer les donnees Docker.