Comment installer un fichier .sh sous Linux

Qu’est-ce qu’un fichier .sh ?
Un fichier .sh est un script shell : un fichier texte contenant des commandes interprétées par un shell (bash, sh, zsh, etc.). Il sert souvent à automatiser l’installation, la configuration ou l’exécution d’un programme. Définition rapide : script shell = suite de commandes interprétées par le shell.
Contexte pratique : j’utilise Ubuntu 20.04 LTS et j’illustre l’installation de Xtreme Download Manager (XDM) depuis un fichier .sh téléchargé et extrait au préalable.
Important : tous les fichiers terminés par .sh ne sont pas forcément sûrs ni fonctionnels. Certains peuvent être corrompus ou mal empaquetés. Toujours vérifier le contenu avant d’exécuter.
Préparations et bonnes pratiques
- Téléchargez le fichier depuis le site officiel ou un dépôt de confiance.
- Décompressez les archives (.zip, .tar.gz, .xz) avant d’essayer d’exécuter le .sh.
- Ouvrez un terminal dans le dossier contenant le fichier.
- Regardez le début du script :
head -n 40 nomfichier.sh
Cela permet de repérer des commandes dangereuses (rm -rf, curl|sh sans validation, etc.). Si vous n’êtes pas sûr, demandez à un administrateur ou inspectez le script ligne par ligne.
Méthode 1 — Exécuter en tant que superutilisateur (sudo bash)
- Dans le dossier extrait, faites clic droit et choisissez « Ouvrir dans le terminal ».
- Exécutez la commande :
sudo bash nomfichier.sh
- Entrez votre mot de passe administrateur lorsqu’il est demandé.
- L’installateur décompresse et installe les fichiers.
- Vérifiez le menu applications pour l’entrée installée (exemple : XDM).
Note : ne fermez pas le terminal pendant l’installation ; l’interface peut sembler bloquée alors que des processus s’exécutent en arrière-plan.
Méthode 2 — Utiliser sh (sans sudo) ou sh avec sudo
Cette méthode est utile si le script gère son élévation de privilèges ou si vous voulez tester sans exécuter bash explicitement.
- Ouvrez le terminal dans le dossier contenant le .sh.
- Lancez :
sh nomfichier.sh
- Si des privilèges root sont requis, précédez de sudo :
sudo sh nomfichier.sh
Résultat : le script s’exécute et installe le programme si tout se passe bien.
Méthode 3 — Rendre le fichier exécutable puis lancer (./nomfichier.sh)
C’est la méthode «Unix native» pour exécuter un script local.
- Donnez la permission d’exécution :
chmod +x nomfichier.sh
- Exécutez le script :
./nomfichier.sh
- Si des droits root sont nécessaires :
sudo ./nomfichier.sh
Cette méthode est souvent requise lorsque le script a un shebang (ex. #!/bin/bash) en tête et gère correctement son environnement.
Exécution via l’interface graphique (selon le gestionnaire de fichiers)
Certaines distributions permettent de lancer un .sh sans terminal :
- Clic droit sur le fichier → Propriétés.
- Onglet Permissions → cochez « Autoriser l’exécution du fichier comme un programme ».
- Double-cliquez sur le fichier : selon la configuration, il pourra s’ouvrir avec un terminal ou s’exécuter directement.
Si cela ne fonctionne pas, retournez au terminal et utilisez l’une des méthodes précédentes.
Autres commandes utiles et dépannage rapide
- Forcer l’exécution avec bash (équivalent de sudo bash) :
bash nomfichier.sh
- Exécution directe si exécutable :
./nomfichier.sh
- Rendre exécutable si permission refusée :
chmod +x nomfichier.sh
Si l’exécution échoue :
- Regardez les messages d’erreur dans le terminal.
- Vérifiez la première ligne (shebang) du script :
head -n 1 nomfichier.sh
- Si le fichier est corrompu ou manquant d’éléments, il peut échouer. Re-téléchargez depuis la source officielle.
Sécurité : comment vérifier un .sh avant de l’exécuter
- Inspecter les premières et dernières lignes :
sed -n '1,60p' nomfichier.sh
sed -n '60,120p' nomfichier.sh
- Rechercher comportements risqués : téléchargement et exécution sans vérification, suppression massive, modification de /etc.
- Lancer dans un environnement isolé (conteneur Docker, machine virtuelle, chroot) si vous n’êtes pas sûr.
- Vérifier signatures numériques si le package en fournit (sha256sum, GPG).
Mini-méthodologie rapide (SOP) pour un .sh inconnu :
- Étape 1 : head pour lire l’en-tête.
- Étape 2 : grep pour repérer les commandes sensibles :
grep -E "rm -rf|dd if=|curl .*sh|wget .*sh|chmod 777" nomfichier.sh || true
- Étape 3 : exécuter dans un conteneur Docker pour tester.
Alternatives à l’installation via .sh
- Cherchez un paquet natif (.deb, .rpm) ou un dépôt APT/Flatpak/Snap.
- Utilisez un gestionnaire de paquets : apt, dnf, pacman, snap, flatpak.
- Si le projet fournit un binaire autonome, préférez-le si possible.
Quand éviter un .sh :
- Le script supprime ou modifie des fichiers systèmes sans contre-vérification.
- Il télécharge des binaires non signés depuis des sources non fiables.
Arbre de décision rapide (Mermaid)
flowchart TD
A[Vous avez un fichier .sh] --> B{Connaissez-vous la source ?}
B -- Oui --> C[Inspecter le script 'head/sed']
C --> D{Contient-il des actions risquées ?}
D -- Non --> E[Exécuter avec sudo bash ou chmod +x + ./]
D -- Oui --> F[Tester en VM ou conteneur]
B -- Non --> F
F --> G{Test OK ?}
G -- Oui --> E
G -- Non --> H[Ne pas exécuter ; demander aide]
Liste de vérification selon les rôles
- Utilisateur final : vérifier l’origine, lire les instructions, exécuter en terminal.
- Administrateur système : valider le script, tester en sandbox, vérifier les dépendances.
- Développeur : fournir checksums/signatures, documenter les étapes et les privilèges nécessaires.
FAQ
Qu’est-ce qu’un fichier .sh ?
Un script shell contenant des commandes exécutées par un interpréteur (bash, sh, zsh).
Comment rendre un .sh exécutable ?
Avec :
chmod +x nomfichier.sh
./nomfichier.sh
Dois-je toujours utiliser sudo ?
Non. Utilisez sudo seulement si le script doit modifier des fichiers systèmes ou installer des paquets. Inspectez le script avant.
Résumé
Vous savez maintenant plusieurs façons d’installer un fichier .sh : sudo bash, sh, chmod +x puis ./, ou via l’interface graphique (quand le gestionnaire le permet). Priorisez la sécurité : inspectez le script, vérifiez la source, et testez en environnement isolé si nécessaire.
Remarque finale : si vous avez des questions sur un script précis ou souhaitez un examen rapide d’un .sh, copiez les premières lignes et partagez-les dans les commentaires.
Matériaux similaires

Installer CyanogenMod sur Lenovo P780

Créer une clé USB d'installation Snow Leopard

Yubby — Créez une chaîne vidéo depuis 30 sites

Afficher la barre d'espace libre sous Windows 10

Ajouter des couleurs aux dossiers sous Windows
