Votre première semaine sur un serveur Linux — 35+ commandes essentielles
Mots-clés : Référence rapide avant de commencer
Avant de commencer, voici les termes que vous verrez tout au long de ce guide. Vous n’avez pas besoin de les mémoriser — sachez simplement qu’ils existent, et le contexte vous les rendra clairs.
| Terme | Signification |
|---|---|
| Terminal 💻 | L’interface textuelle où vous tapez des commandes |
| Shell 🐚 | Le programme (généralement Bash) qui interprète vos commandes |
| Bash ⚙️ | Le shell le plus courant ; le « langage » que votre terminal parle |
| Sudo 🔑 | Une commande qui vous permet d’exécuter d’autres commandes avec les privilèges d’administrateur |
| Gestionnaire de paquets 📦 | Un outil (comme apt) qui installe et met à jour les logiciels pour vous |
| Daemon / Service 👻 | Un programme d’arrière-plan qui s’exécute en continu (comme un serveur web) |
| Permissions 🔒 | Des règles qui contrôlent qui peut lire, écrire ou exécuter un fichier |
| Root 👑 | Le compte administrateur système tout-puissant |
Avec ces termes en poche, vous êtes prêt. Commençons.
Introduction : Commencer le voyage sur serveur
Vous venez de vous connecter à votre nouveau serveur. Peut-être l’avez-vous provisionné auprès d’un fournisseur comme AlexHost, qui propose un déploiement Ubuntu instantané en un seul clic. Vous ouvrez votre terminal, tapez : ssh root@your-server-ip , et appuyez sur Entrée. L’écran s’efface. Un curseur clignotant vous regarde depuis une ligne qui ressemble à quelque chose comme root@vps:~#
Et maintenant ?

Le terminal n’est pas une relique. C’est le moyen le plus direct, composable et fiable de dire à un ordinateur quoi faire. Il n’y a pas de surcharge graphique, pas de menus à naviguer, pas d’attente pour qu’une interface se charge. Vous tapez une commande, quelque chose se produit, et vous enchaînez la commande suivante. Sur SSH, cela fonctionne de manière identique que votre serveur soit dans la pièce d’à côté ou de l’autre côté de l’océan.
Cet article ne vous remettra pas une liste de mémorisation. Au lieu de cela, vous allez vivre un vrai parcours de 7 jours sur un VPS Linux fraîchement provisionné — la même progression que vous suivriez si vous vous asseyiez réellement avec un nouveau serveur aujourd’hui. À la fin, vous ne connaîtrez pas seulement les commandes. Vous saurez quand utiliser chacune d’elles.
Jour 1 : Se connecter et explorer
Vous venez de vous connecter à votre serveur. Le terminal affiche quelque chose comme root@vps:~#. Vous êtes connecté — mais où êtes-vous ? Qu’y a-t-il ici ? Découvrez-le.

Étape 1 : Se connecter avec « ssh »
Tout commence par ssh — Secure Shell. C’est la commande passerelle qui vous fait passer de votre machine locale au serveur distant.
ssh username@server-ip
Sur la plupart des fournisseurs VPS, vous utiliserez l’adresse IP de votre tableau de bord d’hébergement et le nom d’utilisateur qu’ils vous attribuent (souvent root ou ubuntu). Si c’est la première fois que vous vous connectez, on vous demandera de confirmer l’empreinte du serveur — tapez yes et appuyez sur Entrée.
✅ Vous êtes maintenant connecté à votre serveur.
Étape 2 : Confirmez votre identité avec « whoami »
Avant de faire quoi que ce soit, vérifiez quel utilisateur vous êtes connecté.
whoami
Si vous voyez root, vous opérez en tant qu’administrateur tout-puissant. C’est courant sur un VPS neuf, mais cela signifie aussi que chaque commande que vous tapez a un accès complet au système — alors soyez attentif.
✅ Vous savez qui vous êtes sur ce système.
Étape 3 : Trouvez votre localisation avec : « pwd »
La commande pwd — Print Working Directory — vous indique exactement où vous êtes dans le système de fichiers.
pwdSur un VPS neuf connecté en tant que root, vous atterrirez généralement dans /root. Si vous utilisez un compte utilisateur régulier, vous verrez /home/username à la place. Pensez à cela comme votre « base d’accueil » — le point de départ de tout ce que vous ferez.
✅ Vous savez où vous êtes.
Étape 4 : Voyez ce qui est présent avec « ls »
Maintenant, regardons autour du serveur. La commande ls liste les fichiers et répertoires dans votre emplacement actuel.
lsUne sortie vide signifie qu’il n’y a rien ici pour le moment — ce qui est normal pour un serveur neuf. Mais la véritable puissance vient des drapeaux. Essayez :
ls -laCela vous permet de voir tout, y compris les fichiers cachés (ceux commençant par un point) et les informations détaillées :
Le drapeau -l vous donne le format long (permissions, propriétaire, taille, date), et -a affiche tous les fichiers y compris les cachés. Vous utiliserez ls -la constamment.
✅ Vous pouvez voir tout dans votre répertoire actuel.
Étape 5 : Naviguez avec « cd »
La commande cd — Change Directory — est la façon de naviguer dans le système de fichiers.
cd /var/log
#Check new dir location
pwd
/var/logTrois variations que vous utiliserez constamment :
cd .. # Go up one directory level
cd ~ # Go back to your home directory
cd - # Go back to the previous directory you were inL’astuce « cd – » est particulièrement utile — c’est comme un « annuler » pour votre dernier changement de répertoire.
✅ Vous pouvez vous déplacer n’importe où dans le système de fichiers.
Étape 6 : Nettoyez avec « clear »
Après avoir exécuté plusieurs commandes, votre terminal devient encombré. La commande clear efface l’écran et vous donne un nouveau départ.
clearConseil de pro : vous pouvez aussi appuyer sur Ctrl+L pour le même effet — c’est plus rapide une fois que cela devient un réflexe.
✅ Votre terminal est propre et prêt pour la commande suivante.
Étape 7 : Consultez avec « man »
Vous n’avez pas besoin de mémoriser chaque drapeau pour chaque commande. La commande man — Manual — ouvre la documentation intégrée pour n’importe quelle commande.
man lsCela ouvre la page de manuel complète pour ls, montrant chaque drapeau disponible, ce qu’il fait, et des exemples. Naviguez avec les touches fléchées ou la barre d’espace, et appuyez sur q pour quitter.
Pensez à man comme votre filet de sécurité. Quand vous n’êtes pas sûr de ce qu’une commande fait ou quelles options elle supporte, man a la réponse.
✅ Vous avez accès à la documentation intégrée pour chaque commande.
Étape 8 : Consultez votre historique avec « history »
La commande history affiche chaque commande que vous avez tapée dans cette session.
history
1 whoami
2 pwd
3 ls -la
4 cd /var/log
5 clear
6 historyVoici la partie utile : vous pouvez réexécuter n’importe quelle commande en tapant « ! » suivi de son numéro.
!3Cela réexécute la commande numéro 3 (ls -la). Cela vous évite de retaper les longues commandes — et de faire des erreurs de frappe quand vous êtes pressé.
✅ Vous pouvez consulter et réexécuter n’importe quelle commande précédente.
Jour 2 : Créer et gérer votre espace de travail

Étape 1 : Créer des répertoires avec “mkdir”
La commande mkdir — Make Directory — crée de nouveaux dossiers.
mkdir projects
# Check dir
ls
projects
Mais la vraie vedette est mkdir -p, qui crée des répertoires imbriqués en une seule commande — y compris tous les répertoires parents qui n’existent pas encore.
mkdir -p projects/myapp/logs
Sans -p, vous devriez créer projects, puis projects/myapp, puis projects/myapp/logs séparément. Avec lui, une seule commande fait tout.
✅ Vous avez créé une structure de répertoires pour votre projet.
Étape 2 : Créer des fichiers vides avec “touch”
La commande touch crée un fichier vide instantanément.
touch projects/myapp/notes.txtVérifier le nouveau fichier :
ls projects/myapp/
# logs notes.txtSi le fichier existe déjà, touch met à jour son horodatage à la place. C’est un moyen rapide de créer des fichiers d’espace réservé ou de marquer que vous avez travaillé sur quelque chose.
✅ Vous avez créé votre premier fichier sur le serveur.
Étape 3 : Copier des fichiers avec “cp”
La commande cp — Copy — duplique les fichiers et les répertoires.
cp projects/myapp/notes.txt projects/myapp/notes-backup.txt
Pour les répertoires, vous avez besoin du drapeau -r (récursif), qui copie tout ce qui se trouve dans le répertoire aussi :
cp -r projects/myapp projects/myapp-backup
✅ Vous pouvez dupliquer des fichiers et des arbres de répertoires entiers.
Étape 4 : Déplacer ou renommer des fichiers avec “mv”
La commande mv fait deux choses : elle déplace les fichiers et les renomme. Même commande, contexte différent.
mv projects/myapp/notes.txt projects/myapp/readme.txt
Cela renomme notes.txt en readme.txt dans le même répertoire. Pour déplacer réellement un fichier vers un emplacement différent :
mv projects/myapp/readme.txt projects/
✅ Vous pouvez déplacer et renommer des fichiers avec une seule commande.
Étape 5 : Supprimer des fichiers avec “rm”
La commande rm — Remove — supprime les fichiers définitivement.
rm projects/myapp-backup/readme.txt
Pour les répertoires, utilisez -r (récursif) :
rm -r projects/myapp-backup
⚠️ AVERTISSEMENT : rm -rf est l’option nucléaire. Le drapeau -f force la suppression sans demander de confirmation, et combiné avec -r, il supprimera silencieusement des arbres de répertoires entiers. Il n’y a pas d’annulation. Vérifiez deux fois le chemin avant d’appuyer sur Entrée. Ne lancez jamais rm -rf / — cela tentera de supprimer votre système de fichiers entier.
✅ Vous pouvez supprimer les fichiers et répertoires dont vous n’avez plus besoin.
Étape 6 : Imprimer et écrire du texte avec “echo”
La commande echo imprime du texte dans le terminal — mais sa véritable puissance vient lorsqu’elle est combinée avec des opérateurs de redirection.
echo "Hello, server"
Hello, serverMaintenant, redirigez cette sortie dans un fichier en utilisant “>” (remplacer) ou “>>” (ajouter) :
echo "Server setup started" > projects/myapp/notes.txt
echo "Added a log entry" >> projects/myapp/notes.txt
L’opérateur > crée le fichier ou le remplace s’il existe. L’opérateur >> ajoute à la fin sans toucher au contenu existant. C’est votre premier aperçu de la redirection — l’une des superpuissances de Linux.
✅ Vous pouvez écrire du texte dans des fichiers directement depuis la ligne de commande.
Étape 7 : Lire des fichiers avec “cat”
La commande cat — Concatenate — affiche le contenu des fichiers dans le terminal.
cat projects/myapp/notes.txt
Pour les petits fichiers, cat est le moyen le plus rapide d’inspecter le contenu. Pour les fichiers plus volumineux, vous voudrez less (qui vous permet de faire défiler), mais cat est votre incontournable pour les vérifications rapides.
✅ Vous pouvez lire le contenu des fichiers sans ouvrir un éditeur.
Étape 8 : Éditer des fichiers avec “nano”
Quand vous avez besoin de modifier réellement un fichier, nano est l’éditeur de terminal le plus convivial pour les débutants.
nano projects/myapp/notes.txt
Nano ouvre le fichier dans votre terminal avec une interface simple. Les raccourcis clavier sont affichés au bas de l’écran.
💡 CONSEIL : Les raccourcis essentiels de Nano : Ctrl+O pour enregistrer (puis Entrée pour confirmer), Ctrl+X pour quitter, Ctrl+W pour rechercher du texte. C’est tout ce dont vous avez besoin pour commencer à éditer.
Vous entendrez aussi parler de vim — c’est plus puissant mais a une courbe d’apprentissage notoire. Restez avec nano pour l’instant. Vous pouvez explorer vim plus tard quand vous serez à l’aise avec le terminal.
✅ Vous pouvez éditer des fichiers directement sur le serveur.
Jour 3 : Trouver ce dont vous avez besoin

Étape 1 : Rechercher des fichiers avec “find”
La commande find recherche des fichiers par nom, type, taille, et plus encore.
find ./projects -name "*.txt"
Cela recherche tout sous /home pour les fichiers se terminant par .txt. Vous pouvez aussi rechercher par type — find / -type f -name “config” trouve tous les fichiers nommés “config” sur tout le système.
find est complet mais peut être lent sur les grands systèmes de fichiers. Pour les recherches quotidiennes, c’est votre outil le plus fiable.
✅ Vous pouvez localiser n’importe quel fichier sur le système par nom ou type.
Étape 2 : Rechercher à l’intérieur des fichiers avec “grep”
Si find localise les fichiers, grep localise le contenu à l’intérieur. C’est le détective de la ligne de commande.
grep "error" /var/log/syslog
Apr 10 12:15:03 server kernel: [error] disk I/O timeout
Apr 10 12:18:22 server nginx: [error] connection refusedVoici où grep devient encore plus puissant — combinez-le avec d’autres commandes en utilisant l’opérateur pipe “|”. Le pipe prend la sortie d’une commande et l’utilise comme entrée pour la suivante.
cat /var/log/syslog | grep "error"Cela fait la même chose que l’exemple précédent, mais le modèle pipe vous permet de chaîner les commandes ensemble. Vous utiliserez les pipes constamment une fois que vous les comprendrez. Par exemple, pour rechercher des erreurs dans les entrées de journal d’aujourd’hui :
cat /var/log/syslog | grep "Apr 15" | grep "error"
Chaque pipe affine davantage les résultats. Cette composabilité est ce qui rend la ligne de commande Linux si puissante.
✅ Vous pouvez rechercher n’importe quel motif de texte dans n’importe quel fichier.
Étape 3 : Trouver les emplacements exécutables avec “which”
La commande which vous indique où se trouve le fichier exécutable d’une commande sur le système.
which python3
/usr/bin/python3C’est utile quand vous avez besoin de savoir quelle version d’un programme vous exécutez, ou quand un script a besoin du chemin complet vers un exécutable.
✅ Vous savez exactement où se trouve l’exécutable de n’importe quelle commande.
Étape 4 : Trouver plus avec “whereis”
La commande whereis va plus loin que which — elle trouve le binaire, le code source (s’il est installé), et la page de manuel.
whereis python3
python3: /usr/bin/python3 /usr/lib/python3 /etc/python3 /usr/share/man/man1/python3.1.gzOù which vous donne un chemin, whereis vous donne l’image complète. Utilisez which quand vous avez juste besoin de l’exécutable. Utilisez whereis quand vous voulez voir tout ce qui est lié à une commande.
✅ Vous pouvez localiser chaque composant d’une commande sur le système.
Étape 5 : Obtenir une description rapide avec “whatis”
La commande whatis vous donne une description d’une ligne de n’importe quelle commande.
whatis grep
grep (1) - print lines that match patternsC’est le moyen le plus rapide de vous rappeler ce qu’une commande fait sans ouvrir la page man complète. Pensez-y comme une recherche rapide de glossaire.
✅ Vous pouvez obtenir un résumé d’une ligne du but de n’importe quelle commande.
Ready
to make it happen?
Pick what fits your project
VPS
Dedicated
Jour 4 : Comprendre votre machine
Avant d’installer quoi que ce soit, vous devez savoir avec quoi vous travaillez. Combien d’espace disque avez-vous ? Combien de RAM ? Qu’est-ce qui fonctionne déjà ?
Étape 1 : Vérifier les informations système avec “uname”
La commande uname — Unix Name — affiche les informations système.
uname -a
Linux alexserver 6.8.0-110-generic #110-Ubuntu SMP PREEMPT_DYNAMIC Thu Mar 19 15:09:20 UTC 2026 x86_64 x86_64 x86_64 GNU/LinuxLe drapeau -a affiche tout : le nom du kernel, le nom d’hôte, la version du kernel, l’architecture et le système d’exploitation. Sur un VPS, cela vous indique exactement quel kernel vous exécutez et si vous êtes sur un système 64 bits (vous l’êtes presque certainement).
✅ Vous connaissez votre version de kernel et l’architecture de votre système.
Étape 2 : Vérifier l’espace disque avec “df”
La commande df — Disk Free — affiche la quantité de stockage que vous avez et la quantité utilisée.
df -h
Le drapeau -h signifie « lisible par l’homme » — il affiche les tailles en GB et MB au lieu d’octets bruts. Faites attention à la ligne de partition racine “/”. Avec 7% utilisés, ce serveur a beaucoup de place. Si vous voyez jamais ce nombre dépasser 80%, il est temps de nettoyer.
✅ Vous savez exactement combien d’espace disque est disponible.
Étape 3 : Vérifier la mémoire avec “free”
La commande free affiche votre utilisation de RAM.
free -h
Encore une fois, -h vous donne une sortie lisible par l’homme. La colonne clé ici est « available » — c’est la mémoire réellement libre pour les nouvelles applications. « Used » inclut la mémoire que le kernel utilise pour la mise en cache, qui peut être libérée si nécessaire. Sur un VPS neuf avec 4GB de RAM, voir 3.3GB disponibles est exactement ce que vous voulez.
✅ Vous savez combien de mémoire votre serveur a et combien est libre.
Étape 4 : Surveiller les processus avec “top”
La commande top affiche la surveillance des processus en temps réel — une vue en direct de ce qui s’exécute et des ressources que chaque processus consomme.
top
top se met à jour toutes les quelques secondes. Les colonnes les plus importantes sont PID (ID de processus), %CPU, %MEM et COMMAND. Si votre serveur se sent lent, top est le premier endroit à regarder.
💡 CONSEIL : Appuyez sur q pour quitter top. Si top s’exécute et que vous ne savez pas comment l’arrêter, c’est la réponse.
✅ Vous pouvez surveiller les processus en cours d’exécution en temps réel.
Étape 5 : Snapshot des processus avec “ps”
La commande ps — Process Status — vous donne un snapshot statique des processus en cours d’exécution.
ps aux
Les drapeaux aux affichent tous les processus de tous les utilisateurs avec des informations détaillées. Les colonnes clés : USER (qui possède le processus), PID (l’ID de processus que vous utiliseriez avec kill), %CPU et %MEM (utilisation des ressources) et COMMAND (ce qui s’exécute). Utilisez ps quand vous avez besoin d’un snapshot rapide plutôt qu’une vue en direct.
✅ Vous pouvez prendre un snapshot de chaque processus en cours d’exécution.
Étape 6 : Vérifier le calendrier avec “cal”
La commande cal affiche un calendrier simple.
cal April 2026
Su Mo Tu We Th Fr Sa
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30Ce n’est pas essentiel, mais c’est un bon rappel que le terminal peut faire plus que simplement gérer les serveurs. C’est aussi un moyen rapide de vérifier la date sans quitter votre session.
✅ Vous pouvez afficher un calendrier directement dans votre terminal.
Étape 7 : Vérifier la date avec “date”
La commande date affiche la date et l’heure système actuelles.
date
Wed Apr 15 14:32:01 UTC 2026Cela a plus d’importance que vous ne le pensez. De nombreux services — en particulier les certificats SSL, la rotation des journaux et les tâches planifiées — dépendent d’une heure système précise. Si la date semble incorrecte, vous voudrez la corriger avant d’installer quoi que ce soit.
✅ Vous connaissez la date et l’heure actuelles de votre serveur.
Jour 5 : Installation et exécution de services
Votre serveur est en cours d’exécution, vous connaissez ses spécifications, et il est maintenant temps de le rendre utile. Installons des logiciels et mettons en place des services.
Étape 1 : Mettre à jour les listes de paquets avec « apt update »
Avant d’installer quoi que ce soit, actualisez vos listes de référentiels de paquets.
sudo apt updateRésultat :Hit:1 http://archive.ubuntu.com/ubuntu jammy InRelease
Get:2 http://archive.ubuntu.com/ubuntu jammy-updates InRelease [128 kB]
Get:3 http://security.ubuntu.com/ubuntu jammy-security InRelease [129 kB]
Fetched 257 kB in 2s (134 kB/s)
Reading package lists... Done
Building dependency tree... DoneDistinction importante : apt update actualise la liste des paquets disponibles — cela n’installe rien. apt upgrade télécharge et installe réellement les versions plus récentes des paquets que vous avez déjà. Ils vont presque toujours ensemble :
sudo apt update && sudo apt upgrade -ySur les systèmes basés sur Red Hat comme CentOS ou Fedora, les commandes équivalentes sont yum update ou dnf update.
✅ Votre liste de paquets est à jour et prête pour les installations.
Étape 2 : Installer des logiciels avec « apt install »
Maintenant, installons quelque chose. Nginx est un serveur web populaire — un bon premier service à mettre en place.
sudo apt install nginx -yRésultat :Reading package lists... Done
Building dependency tree... Done
The following NEW packages will be installed:
nginx nginx-common nginx-core
0 upgraded, 3 newly installed, 0 to remove and 0 not upgraded.
Need to get 582 kB of archives.
Setting up nginx (1.18.0-6ubuntu14.4) ...C’est ici que votre serveur commence à faire quelque chose de réel. Le drapeau -y confirme automatiquement l’installation afin que vous n’ayez pas à taper yes. Nginx s’installera et commencera généralement à s’exécuter immédiatement.
✅ Vous avez installé votre premier service sur le serveur.
Étape 3 : Gérer les services avec « systemctl »
La commande systemctl — System Control — est la façon dont vous démarrez, arrêtez et gérez les services.
systemctl status nginxRésultat :● nginx.service - A high performance web server and a reverse proxy server
Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
Active: active (running) since Wed 2026-04-15 14:35:00 UTC; 2min ago
Main PID: 1234 (nginx)
Tasks: 2 (limit: 4915)
Memory: 3.2M
CGroup: /system.slice/nginx.serviceLa ligne clé est Active: active (running) — cela signifie que Nginx est opérationnel et fonctionne. Trois commandes systemctl que vous utiliserez constamment :
sudo systemctl start nginx # Start the service now
sudo systemctl stop nginx # Stop the service
sudo systemctl enable nginx # Start automatically on every boot
La commande enable est celle que les débutants oublient. start exécute le service maintenant. enable garantit qu’il démarre à chaque redémarrage du serveur. Pour un serveur web, vous voulez presque toujours les deux.
✅ Vous pouvez contrôler n’importe quel service sur votre serveur.
Étape 4 : Arrêter les processus avec « kill »
Parfois, vous devez terminer un processus manuellement. La commande kill le fait par PID.
kill 1234Cela envoie un signal de terminaison au processus 1234, lui demandant de s’arrêter correctement. S’il ne répond pas, vous pouvez le forcer :
kill -9 1234
⚠️ AVERTISSEMENT : kill -9 est un arrêt forcé. Il ne permet pas au processus de nettoyer — pas de sauvegarde d’état, pas de fermeture correcte des connexions. Utilisez-le uniquement quand un kill normal ne fonctionne pas.
Trouvez le PID en utilisant ps aux ou top, puis tuez-le.
✅ Vous pouvez terminer n’importe quel processus par son ID.
Étape 5 : Tuer par nom avec « pkill »
Trouver d’abord le PID est parfois inutile. La commande pkill tue les processus par nom.
pkill nginx
Cela trouve tous les processus correspondant à « nginx » et les termine. C’est plus rapide que de chercher le PID avec ps puis d’exécuter kill. Utilisez pkill quand vous connaissez le nom du processus et que vous voulez une terminaison rapide.
✅ Vous pouvez tuer des processus sans connaître leur PID.
Étape 6 : Télécharger des fichiers avec « wget »
La commande wget — Web Get — télécharge des fichiers depuis Internet.
wget https://example.com/file.zipExemple de résultat :--2026-04-15 14:40:00-- https://example.com/file.zip
Resolving example.com (example.com)... 93.184.216.34
Connecting to example.com (example.com)|93.184.216.34|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1048576 (1.0M) [application/zip]
Saving to: 'file.zip'
file.zip 100%[===================>] 1.00M 2.34MB/s in 0.4s
2026-04-15 14:40:01 (2.34 MB/s) - 'file.zip' saved [1048576/1048576]wget est simple : donnez-lui une URL, il télécharge le fichier dans votre répertoire courant. Il supporte également la reprise des téléchargements interrompus avec wget -c.
✅ Vous pouvez télécharger des fichiers directement sur votre serveur.
Étape 7 : Transférer des données avec « curl »
La commande curl — Client URL — est plus polyvalente que wget. Elle gère les téléchargements, les requêtes API et les transferts de données avec des en-têtes personnalisés.
curl -O https://example.com/file.zipLe drapeau -O enregistre le fichier avec son nom d’origine (tout comme wget). Mais curl peut faire beaucoup plus :
curl -s https://api.example.com/data
Le drapeau -s s’exécute silencieusement, ce qui rend curl parfait pour les scripts et les appels API. Tandis que wget est excellent pour les téléchargements simples, curl est l’outil auquel vous ferez appel quand vous avez besoin d’interagir avec des services web, de tester des API ou d’envoyer des en-têtes HTTP personnalisés.
✅ Vous pouvez transférer des données depuis n’importe quelle URL — fichiers, API et bien plus.
Jour 6 : Sécuriser les choses

📝 NOTE: Votre utilisateur a besoin des permissions sudo pour que ces commandes fonctionnent. Sur la plupart des fournisseurs VPS, l’utilisateur par défaut est déjà configuré avec l’accès sudo. Si vous avez créé un nouvel utilisateur, vous devrez d’abord l’ajouter au groupe sudo.
Étape 1 : Exécuter les commandes en toute sécurité avec « sudo »
La commande sudo — Superuser Do — vous permet d’exécuter des commandes avec des privilèges élevés.
sudo apt update
Vous serez invité à entrer votre mot de passe la première fois que vous utilisez sudo dans une session. Après cela, il s’en souvient pendant quelques minutes. La raison pour laquelle sudo existe est simple : exécuter en tant que root tout le temps est dangereux. Une seule faute de frappe avec les privilèges root peut effacer votre système. sudo vous force à escalader consciemment les privilèges pour chaque commande — c’est un mécanisme de sécurité, pas seulement un escaladeur de privilèges.
✅ Vous pouvez exécuter des commandes d’administration sans vous connecter en tant que root.
Étape 2 : Modifier les permissions de fichier avec « chmod »
La commande chmod — Change Mode — contrôle qui peut lire, écrire ou exécuter un fichier.
chmod 755 script.sh
Les nombres représentent les permissions pour trois groupes : propriétaire, groupe et tous les autres. Chaque chiffre est une somme de lecture (4), écriture (2) et exécution (1) :
- 755 signifie : le propriétaire peut tout faire (4+2+1=7), le groupe peut lire et exécuter (4+1=5), tous les autres peuvent lire et exécuter (4+1=5). C’est standard pour les scripts et les répertoires.
- 644 signifie : le propriétaire peut lire et écrire (4+2=6), le groupe peut lire (4), tous les autres peuvent lire (4). C’est standard pour les fichiers de configuration et les documents.
chmod 644 config.txt
Si un script ne s’exécute pas, c’est presque toujours un problème de permissions. chmod +x script.sh est un moyen rapide de rendre n’importe quel fichier exécutable sans mémoriser les nombres.
✅ Vous contrôlez exactement qui peut accéder à chaque fichier.
Étape 3 : Modifier la propriété du fichier avec « chown »
La commande chown — Change Owner — définit qui possède un fichier.
sudo chown www-data:www-data /var/www/html/index.html
Cela change le propriétaire en www-data et le groupe en www-data. C’est couramment utilisé lors de la configuration de serveurs web — le processus du serveur web doit posséder les fichiers qu’il sert. Le format est utilisateur:groupe, et vous aurez presque toujours besoin de sudo pour modifier la propriété.
✅ Vous pouvez attribuer la propriété du fichier à n’importe quel utilisateur ou groupe.
Étape 4 : Modifier les mots de passe avec « passwd »
La commande passwd met à jour les mots de passe des utilisateurs.
passwd usernameSur un VPS neuf, modifier le mot de passe par défaut devrait être l’une de vos premières actions. Si vous êtes connecté en tant que l’utilisateur dont vous souhaitez modifier le mot de passe, exécutez simplement passwd sans nom d’utilisateur.
✅ Vous pouvez mettre à jour les mots de passe pour n’importe quel utilisateur du système.
Étape 5 : Créer de nouveaux utilisateurs avec « useradd »
La commande useradd crée un nouveau compte utilisateur.
sudo useradd -m newuserLe drapeau -m est critique — il crée un répertoire personnel à /home/newuser. Sans lui, l’utilisateur existe mais n’a pas de répertoire personnel, ce qui cause des problèmes avec SSH et diverses applications. Après avoir créé l’utilisateur, définissez son mot de passe :
sudo passwd newuser
✅ Vous pouvez créer de nouveaux comptes utilisateur avec des répertoires personnels.
Étape 6 : Changer d’utilisateur avec « su »
La commande su — Switch User — vous permet de vous connecter en tant qu’un autre utilisateur.
su - newuser
whoami
newuserLe drapeau « – » (ou –login) est important — il charge l’environnement du nouvel utilisateur, y compris son chemin et sa configuration de shell. Sans lui, vous changeriez d’utilisateur mais conserveriez l’environnement de l’ancien utilisateur, ce qui entraîne un comportement déroutant.
✅ Vous pouvez basculer entre les comptes utilisateur sur le serveur.
Étape 7 : Configurer le pare-feu avec « ufw »
La commande ufw — Uncomplicated Firewall — est le moyen le plus simple de gérer le pare-feu de votre serveur sur Ubuntu.
D’abord, définissez la politique par défaut pour refuser toutes les connexions entrantes :
sudo ufw default deny incoming Ensuite, autorisez explicitement le trafic SSH. Cette étape est critique.
sudo ufw allow 22/tcp⚠️ AVERTISSEMENT CRITIQUE : Exécutez toujours sudo ufw allow 22/tcp avant sudo ufw enable. Si vous activez le pare-feu sans autoriser SSH, vous vous enfermerez hors du serveur. Votre seule option serait d’accéder au serveur via la console de votre fournisseur d’hébergement — ce qui peut ne pas être disponible sur tous les plans.
Maintenant, il est sûr d’activer le pare-feu :
sudo ufw enable
Command may disrupt existing SSH connections. Proceed with operation (y|n)? y
Firewall is active and enabled on system startupVous pouvez vérifier l’état à tout moment :
sudo ufw status
Status: active
To Action From
-- ------ ----
22/tcp ALLOW AnywhereVotre serveur n’accepte désormais que les connexions SSH entrantes sur le port 22. Tout le reste est bloqué. Lorsque vous installerez Nginx plus tard, vous ajouterez une autre règle : sudo ufw allow 80/tcp pour HTTP et sudo ufw allow 443/tcp pour HTTPS.
✅ Votre serveur est protégé par un pare-feu.
Jour 7 : Vérifications réseau et conclusion
Votre serveur est configuré, sécurisé et en cours d’exécution. Avant de déclarer que c’est terminé, vérifions que tout fonctionne de l’extérieur et apprenez comment arrêter correctement.
Étape 1 : Testez la connectivité avec « ping »
La commande ping teste si votre serveur peut atteindre d’autres machines sur le réseau.
ping -c 4 8.8.8.8Le flag -c 4 limite le ping à 4 paquets. Sans lui, ping s’exécute indéfiniment jusqu’à ce que vous appuyiez sur Ctrl+C. Les statistiques à la fin vous disent tout : 4 paquets envoyés, 4 reçus, 0% de perte. La connectivité réseau de votre serveur fonctionne.
✅ Vous avez confirmé que votre serveur dispose d’une connectivité réseau fonctionnelle.
Étape 2 : Vérifiez les interfaces réseau avec « ip »
La commande ip affiche la configuration réseau de votre serveur.
ip addrLa commande ip remplace l’interface ifconfig obsolète. La sortie affiche votre interface de bouclage (lo, toujours 127.0.0.1) et votre interface réseau principale (eth0 dans ce cas). La ligne inet affiche l’adresse IP de votre serveur — c’est l’adresse que vous utiliseriez pour SSH ou pour accéder à votre serveur web.
✅ Vous pouvez voir les adresses IP et les interfaces réseau de votre serveur.
Étape 3 : Créez des liens de fichiers avec « ln »
La commande ln crée des liens entre fichiers — essentiellement des raccourcis.
ln -s /var/www/html /home/user/webrootCela crée un lien symbolique à /home/user/webroot qui pointe vers /var/www/html. Lorsque vous accédez au lien, vous accédez en réalité au répertoire cible. Les liens symboliques sont utiles pour créer des chemins d’accès pratiques sans dupliquer les fichiers.
✅ Vous pouvez créer des raccourcis vers des fichiers et des répertoires n’importe où sur le système.
Étape 4 : Arrêtez correctement avec « shutdown »
La commande shutdown éteint votre serveur de manière contrôlée.
sudo shutdown -h now
Le flag -h signifie « halt » — arrêtez tout et éteignez. now signifie immédiatement. Mais vous pouvez également planifier un arrêt :
sudo shutdown -h +5
Cela vous donne 5 minutes avant l’arrêt — suffisant pour enregistrer le travail, notifier les utilisateurs ou changer d’avis. Pour annuler un arrêt planifié :
sudo shutdown -c
Le flag -c annule tout arrêt en attente. C’est un petit filet de sécurité qui peut vous sauver d’une mise hors tension accidentelle.
✅ Vous pouvez arrêter le serveur en toute sécurité, immédiatement ou selon un calendrier.
Étape 5 : Redémarrez avec « reboot »
La commande reboot redémarre votre serveur.
sudo reboot
Ceci est équivalent à shutdown -r now — le flag -r signifie « redémarrer » au lieu d’« arrêter ». Vous l’utiliserez après les mises à jour du noyau ou les modifications de configuration qui nécessitent un redémarrage.
✅ Vous pouvez redémarrer le serveur avec une seule commande.
Et ensuite
Il y a sept jours, vous fixiez un terminal vide après vous être connecté en SSH à un serveur que vous ne saviez pas utiliser. Maintenant, vous pouvez naviguer dans le système de fichiers, créer et gérer des fichiers, rechercher n’importe quoi sur le système, vérifier la santé de votre serveur, installer des logiciels, exécuter des services, sécuriser les accès et gérer le cycle de vie du serveur du démarrage à l’arrêt.
La véritable compétence n’est pas de mémoriser ces commandes. C’est de savoir laquelle utiliser quand un problème apparaît. Cela vient de leur utilisation — pas de les lire.
Ouvrez un terminal aujourd’hui. Exécutez ls, cd, et pwd jusqu’à ce qu’ils vous semblent naturels. Ajoutez une nouvelle commande par jour. Dans une semaine, le terminal ne vous semblera plus être une interface étrangère. Ce sera la ligne directe vers votre serveur qu’il est.
Si vous êtes prêt à mettre ces commandes en pratique sur votre propre serveur, AlexHost propose des plans VPS Linux abordables avec configuration instantanée et support 24/7 — un excellent endroit pour pratiquer sans risque.
Antisèche : Toutes les commandes en un coup d’œil
Voici chaque commande de ce guide en un seul endroit. Marquez cette page.
| Commande | Signification | Ce qu’elle fait |
|---|---|---|
| Secure Shell | Se connecter à un serveur distant de manière sécurisée |
| Who Am I | Afficher le nom d’utilisateur actuel |
| Print Working Directory | Afficher le chemin du répertoire actuel |
| List | Lister les fichiers et répertoires |
| Change Directory | Naviguer entre les répertoires |
| Clear | Effacer l’écran du terminal |
| Manual | Ouvrir la page de manuel pour n’importe quelle commande |
| History | Afficher les commandes précédemment exécutées |
| Make Directory | Créer de nouveaux répertoires |
| Touch | Créer des fichiers vides ou mettre à jour les horodatages |
| Copy | Copier des fichiers et des répertoires |
| Move | Déplacer ou renommer des fichiers et des répertoires |
| Remove | Supprimer des fichiers et des répertoires |
| Echo | Imprimer du texte ou écrire dans des fichiers |
| Concatenate | Afficher le contenu des fichiers |
| Nano | Éditeur de texte basé sur le terminal |
| Find | Rechercher des fichiers par nom, type ou attributs |
| Global Regular Expression Print | Rechercher des motifs de texte dans les fichiers |
| Which | Localiser le chemin exécutable d’une commande |
| Where Is | Localiser le binaire, la source et le manuel d’une commande |
| What Is | Obtenir une description d’une ligne d’une commande |
| Unix Name | Afficher les informations système |
| Disk Free | Afficher l’utilisation de l’espace disque |
| Free | Afficher l’utilisation de la mémoire/RAM |
| Top | Surveillance des processus en temps réel |
| Process Status | Aperçu des processus en cours d’exécution |
| Calendar | Afficher un calendrier |
| Date | Afficher ou définir la date et l’heure du système |
| APT Update | Actualiser les listes de dépôts de paquets |
| APT Install | Installer des paquets logiciels |
| System Control | Démarrer, arrêter et gérer les services |
| Kill | Terminer un processus par PID |
| Process Kill | Terminer les processus par nom |
| Web Get | Télécharger des fichiers depuis Internet |
| Client URL | Transférer des données à partir d’URL |
| Superuser Do | Exécuter des commandes avec des privilèges élevés |
| Change Mode | Modifier les permissions des fichiers |
| Change Owner | Modifier la propriété des fichiers |
| Password | Modifier les mots de passe des utilisateurs |
| User Add | Créer un nouveau compte utilisateur |
| Switch User | Basculer vers un autre utilisateur |
| Uncomplicated Firewall | Gérer le pare-feu du serveur |
| Ping | Tester la connectivité réseau |
| IP | Afficher les interfaces réseau et les adresses |
| Link | Créer des liens de fichiers (symboliques ou physiques) |
| Shutdown | Arrêter le serveur en toute sécurité |
| Reboot | Redémarrer le serveur |
sur tous les services d'hébergement