Update README.md
This commit is contained in:
107
README.md
107
README.md
@@ -1 +1,106 @@
|
||||
# Plex-postinst
|
||||
# 📘 README — Sauvegarde et restauration du script Plex `postinst` corrigé
|
||||
|
||||
## 📂️ Objectif
|
||||
|
||||
Ce fichier décrit :
|
||||
|
||||
* ✅ Comment **sauvegarder** le script corrigé (`postinst`) de `plexmediaserver`
|
||||
* ♻️ Comment le **restaurer automatiquement** si Plex est à nouveau cassé après un `apt upgrade`
|
||||
|
||||
### ⚠️ Pourquoi Plex est cassé ?
|
||||
|
||||
Le paquet `.deb` officiel de Plex comporte un script `postinst` mal conçu :
|
||||
|
||||
* Il fait des comparaisons `-eq`, `-gt`, `=` sur des variables non initialisées
|
||||
* Il échoue silencieusement avec des erreurs comme `[: -eq: unary operator expected]` ou `usermod: user '' does not exist`
|
||||
* Il termine par `exit 255` même après une installation réussie
|
||||
|
||||
Ce README documente le correctif appliqué pour rendre l’installation fonctionnelle malgré ces défauts.
|
||||
|
||||
---
|
||||
|
||||
## ✅ 1. Sauvegarde du script `postinst` corrigé
|
||||
|
||||
Après avoir patché et validé l'installation de Plex, il est **essentiel de sauvegarder la version fonctionnelle du script** :
|
||||
|
||||
```bash
|
||||
cp /var/lib/dpkg/info/plexmediaserver.postinst /root/plexmediaserver.postinst.patched
|
||||
```
|
||||
|
||||
Ce fichier servira de référence propre pour toutes restaurations futures.
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ 2. Script de restauration automatique
|
||||
|
||||
Un script est placé dans :
|
||||
|
||||
```bash
|
||||
/home/scripts/repatch-plex.sh
|
||||
```
|
||||
|
||||
Ce script permet de **restaurer automatiquement le script corrigé** et de relancer la configuration de Plex.
|
||||
|
||||
### 📄 Contenu du script
|
||||
|
||||
```bash
|
||||
#!/bin/bash
|
||||
|
||||
PATCHED="/root/plexmediaserver.postinst.patched"
|
||||
TARGET="/var/lib/dpkg/info/plexmediaserver.postinst"
|
||||
|
||||
echo "🔍 Vérification des fichiers..."
|
||||
if [ ! -f "$PATCHED" ]; then
|
||||
echo "❌ Patch introuvable : $PATCHED"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "🩹 Restauration du script postinst corrigé..."
|
||||
cp "$PATCHED" "$TARGET"
|
||||
chmod 755 "$TARGET"
|
||||
|
||||
echo "🚀 Reconfiguration du paquet plexmediaserver..."
|
||||
dpkg --configure plexmediaserver
|
||||
|
||||
echo "✅ Script postinst restauré et Plex reconfiguré."
|
||||
```
|
||||
|
||||
### ✅ Rendre le script exécutable
|
||||
|
||||
```bash
|
||||
chmod +x /home/scripts/repatch-plex.sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ♻️ 3. En cas de mise à jour future cassée
|
||||
|
||||
Si `apt upgrade` brise de nouveau Plex (`exit 255`, erreurs de script, etc.) :
|
||||
|
||||
```bash
|
||||
bash /home/scripts/repatch-plex.sh
|
||||
```
|
||||
|
||||
Cela restaure immédiatement un `plexmediaserver` fonctionnel sans perte de données ni réinstallation.
|
||||
|
||||
---
|
||||
|
||||
## 🔒 4. Protection recommandée
|
||||
|
||||
Pour éviter qu’APT ne casse à nouveau Plex automatiquement :
|
||||
|
||||
```bash
|
||||
apt-mark hold plexmediaserver
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📦 Fichiers en jeu
|
||||
|
||||
| Fichier | Rôle |
|
||||
| --------------------------------------------- | ------------------------------------------------------------ |
|
||||
| `/var/lib/dpkg/info/plexmediaserver.postinst` | Script original utilisé à chaque installation ou mise à jour |
|
||||
| `/root/plexmediaserver.postinst.patched` | Version corrigée et fonctionnelle |
|
||||
| `/home/scripts/repatch-plex.sh` | Script de restauration automatique |
|
||||
|
||||
---
|
||||
|
||||
Reference in New Issue
Block a user