Plus de 20 Commandes Essentielles pour Bien Démarrer sous Debian en 2025

Alternative RVB | Guide complet 2025 : découvre les outils Linux modernes indispensables pour Debian/Ubuntu. Du kit de base aux outils DevOps avancés.

21 min de lectureLinux
Plus de 20 Commandes Essentielles pour Bien Démarrer sous Debian en 2025
Guide complet et mis à jour pour 2025 : les outils essentiels pour bien démarrer sous Debian

Tu souhaites préparer un environnement de travail efficace sous Debian ou Ubuntu ? Eh bien, voici une top-list actualisée pour 2025 des paquets indispensables à installer.

Cet article est la version 2.0 du guide publié en 2020. Il reprend les outils toujours d’actualité et intègre les nouveautés majeures apparues ces dernières années : outils Rust ultra-performants, alternatives modernes aux commandes classiques, et une section complète dédiée à l’administration de serveurs VPS.

Le kit de survie 2025

Installation rapide - Les essentiels

Voici la commande d’installation pour démarrer immédiatement avec les outils de base :

sudo apt update && sudo apt install -y \
  neofetch vim git curl wget \
  htop btop tree zip unzip \
  tldr bat ripgrep fd-find fzf \
  tmux zsh
Note importante
Certains outils modernes comme eza, starship ou zoxide nécessitent une installation manuelle via Rust ou des scripts dédiés. Nous verrons comment les installer dans les sections suivantes.

Les indispensables (toujours d’actualité)

Ces outils étaient essentiels en 2020 et le restent en 2025. Voici la liste avec les améliorations récentes.

manpages-fr

Le manuel de référence en français

sudo apt install manpages-fr manpages-fr-extra

Reconfigurer la langue du système :

sudo dpkg-reconfigure locales

Mettre le clavier en français :

setxkbmap fr

neofetch

Outil d’information système avec style

Site officiel : github.com/dylanaraps/neofetch

sudo apt install neofetch

Affiche magnifiquement les informations de ton système (OS, kernel, CPU, RAM, etc.) avec le logo de ta distribution.

Utilisation :

neofetch
Alternative 2025

fastfetch est une alternative plus rapide et moderne : github.com/fastfetch-cli/fastfetch

# Installation via PPA
sudo add-apt-repository ppa:zhangsongcui3371/fastfetch
sudo apt update
sudo apt install fastfetch

nano - L’éditeur pour débuter

Le plus simple pour commencer

Préinstallé sur la plupart des distributions Debian/Ubuntu.

# Si besoin de l'installer
sudo apt install nano

Pourquoi nano pour débuter ?

  • Raccourcis affichés en bas de l’écran (pas besoin de les mémoriser)
  • Fonctionne comme un éditeur classique
  • Parfait pour les modifications rapides de fichiers de config

Utilisation :

# Éditer un fichier
nano fichier.txt

# Avec numéros de ligne
nano -l fichier.txt

Raccourcis essentiels :

  • Ctrl + O : Sauvegarder (Write Out)
  • Ctrl + X : Quitter
  • Ctrl + K : Couper la ligne
  • Ctrl + U : Coller
  • Ctrl + W : Rechercher
  • Ctrl + G : Aide

micro - L’éditeur moderne et intuitif

Un cran au-dessus de nano

Site officiel : micro-editor.github.io

Pourquoi micro plutôt que nano ?

micro combine la simplicité de nano avec des fonctionnalités modernes :

  • Raccourcis standards : Ctrl+C/V/X, Ctrl+S, Ctrl+Z/Y (comme VSCode, Sublime Text)
  • Support souris : sélection, clic, scroll (nano ne le fait pas)
  • Coloration syntaxique : détection automatique du langage (JavaScript, Python, etc.)
  • Multiples curseurs : édition simultanée à plusieurs endroits
  • Plugins : extensions pour étendre les fonctionnalités
  • Plus rapide : écrit en Go, très performant même sur de gros fichiers

Installation :

# Installation rapide via script
curl https://getmic.ro | bash
sudo mv micro /usr/local/bin/

# Ou via apt (version potentiellement plus ancienne)
sudo apt install micro

Utilisation :

# Éditer un fichier
micro fichier.txt

Raccourcis familiers :

  • Ctrl + S : Sauvegarder
  • Ctrl + Q : Quitter
  • Ctrl + C/V/X : Copier/Coller/Couper
  • Ctrl + F : Rechercher
  • Ctrl + Z/Y : Annuler/Refaire
  • Ctrl + E : Ouvrir le menu de commandes

vim / neovim - Pour aller plus loin

L’éditeur légendaire pour les utilisateurs avancés

Site officiel vim : vim.org Site officiel neovim : neovim.io

# Vim classique
sudo apt install vim

# Neovim (version moderne, recommandé en 2025)
sudo apt install neovim

Neovim est devenu le standard en 2025 avec son support natif de LSP (Language Server Protocol), Tree-sitter et Lua.

Pourquoi vim/neovim ?

  • Productivité exceptionnelle une fois maîtrisé
  • Présent sur tous les serveurs Unix/Linux
  • Édition modale ultra-efficace
  • Extensible à l’infini

Pour apprendre :

# Tutoriel interactif intégré (30 min)
vimtutor
Quel éditeur choisir ?

Tu débutes sous Linux ? → Commence par nano (le plus simple)

Tu veux quelque chose de moderne ? → Essaye micro (raccourcis familiers + coloration)

Tu veux investir du temps pour être très productif ? → Apprends vim/neovim avec vimtutor. La courbe d’apprentissage est raide, mais le gain à long terme est énorme.

rename

Renommer des fichiers en masse

sudo apt install rename

Exemple d’utilisation :

# Remplacer tous les espaces par des underscores
rename 's/ /_/g' *.txt

# Changer l'extension
rename 's/\.txt$/.md/' *.txt

tree

Afficher l’arborescence des répertoires

sudo apt install tree

Utilisation :

# Afficher l'arborescence
tree

# Limiter la profondeur
tree -L 2

# Afficher uniquement les répertoires
tree -d

most

Lecteur de manuel en couleur (alternative à less)

Site officiel : jedsoft.org/most

sudo apt install most
sudo update-alternatives --config pager

Sélectionne most dans la liste pour avoir des pages man en couleur.

curl

Transférer des données depuis/vers un serveur

sudo apt install curl

Indispensable pour télécharger des fichiers, tester des APIs, installer des outils modernes.

Exemples :

# Télécharger un fichier
curl -O https://example.com/file.txt

# Tester une API
curl https://api.github.com/users/alternative-rvb

# Voir son IP publique
curl ifconfig.me

lynx

Navigateur web en console

sudo apt install lynx

Pratique pour consulter des sites web sans interface graphique, tester des pages HTML en mode texte.

speedtest-cli

Mesurer la vitesse de connexion Internet

sudo apt install speedtest-cli

Utilisation :

speedtest-cli
Alternative officielle 2025

Speedtest by Ookla propose maintenant un client officiel plus précis : speedtest.net/apps/cli

curl -s https://packagecloud.io/install/repositories/ookla/speedtest-cli/script.deb.sh | sudo bash
sudo apt install speedtest

exfat-utils et exfat-fuse

Support du système de fichiers exFAT

sudo apt install exfat-fuse exfat-utils

Permet de lire/écrire sur des disques formatés en exFAT (clés USB, disques externes).

Note 2025
Sur Ubuntu 22.04+ et Debian 12+, le support exFAT est intégré au kernel. Ces paquets restent utiles pour les versions antérieures.

htop

Gestionnaire de processus interactif

sudo apt install htop

Utilisation :

htop

translate-shell

Traduction en ligne de commande

sudo apt install translate-shell

Utilisation :

# Traduire vers le français
trans :fr "Hello World"

# Traduire de l'anglais vers le français
trans en:fr "Good morning"

# Mode interactif
trans -I

aspell

Correcteur orthographique

sudo apt install aspell aspell-fr

Utilisation :

# Vérifier un fichier
aspell check fichier.txt

# En mode français
aspell -l fr check fichier.txt

shellcheck

Analyseur de scripts Bash

Site officiel : shellcheck.net

sudo apt install shellcheck

Détecte les erreurs et mauvaises pratiques dans tes scripts shell.

Utilisation :

shellcheck mon-script.sh

xclip

Presse-papiers en ligne de commande

sudo apt install xclip

Utilisation :

# Copier dans le presse-papiers
echo "Hello" | xclip -selection clipboard

# Coller depuis le presse-papiers
xclip -selection clipboard -o

# Copier le contenu d'un fichier
cat fichier.txt | xclip -sel clip

zip / unzip

Compression et décompression

sudo apt install zip unzip

Utilisation :

# Compresser
zip archive.zip fichier1.txt fichier2.txt

# Compresser un dossier
zip -r archive.zip mon-dossier/

# Décompresser
unzip archive.zip

# Lister le contenu sans extraire
unzip -l archive.zip

Les remplaçants modernes

Ces nouveaux outils remplacent avantageusement les commandes classiques grâce à des performances accrues et une meilleure ergonomie.

btop - Le htop moderne

Remplace : htop, top

Site officiel : github.com/aristocratos/btop

sudo apt install btop

btop est un moniteur de ressources système magnifique avec :

  • Interface moderne et colorée
  • Graphiques en temps réel (CPU, RAM, réseau, disque)
  • Support GPU
  • Plus rapide et plus léger que htop

Utilisation :

btop

eza - Le ls réinventé

Remplace : ls

Site officiel : eza.rocks

eza (successeur de exa) est une alternative moderne à ls avec :

  • Icônes pour les types de fichiers
  • Intégration Git
  • Affichage en arbre
  • Performances optimales

Installation :

# Via cargo (Rust requis)
cargo install eza

# Ou télécharger le binaire
wget https://github.com/eza-community/eza/releases/latest/download/eza_x86_64-unknown-linux-gnu.tar.gz
tar -xzf eza_x86_64-unknown-linux-gnu.tar.gz
sudo mv eza /usr/local/bin/

Utilisation :

# Liste basique
eza

# Liste détaillée avec Git
eza -l --git

# Arborescence
eza --tree

# Tout afficher
eza -la --git --icons

Alias recommandés :

alias ls='eza --icons'
alias ll='eza -l --icons --git'
alias la='eza -la --icons --git'
alias lt='eza --tree --icons'

bat - Le cat avec super-pouvoirs

Remplace : cat

Site officiel : github.com/sharkdp/bat

sudo apt install bat

bat affiche les fichiers avec :

  • Coloration syntaxique automatique
  • Numérotation des lignes
  • Intégration Git (modifications)
  • Support de pagination
Alias nécessaire

Sur Debian/Ubuntu, la commande s’appelle batcat. Crée un alias :

echo "alias bat='batcat'" >> ~/.bashrc
source ~/.bashrc

Utilisation :

# Afficher un fichier
bat fichier.js

# Afficher plusieurs fichiers
bat *.py

# Pipe depuis une autre commande
curl -s https://example.com | bat --language html

ripgrep - Le grep ultra-rapide

Remplace : grep

Site officiel : github.com/BurntSushi/ripgrep

sudo apt install ripgrep

ripgrep (rg) est jusqu’à 10x plus rapide que grep et :

  • Ignore automatiquement .gitignore
  • Recherche récursive par défaut
  • Supporte les expressions régulières
  • Affichage coloré

Utilisation :

# Recherche simple
rg "fonction"

# Recherche dans un type de fichier
rg "error" -t py

# Insensible à la casse
rg -i "TODO"

# Avec contexte (3 lignes avant/après)
rg -C 3 "import"

fd - Le find simplifié

Remplace : find

Site officiel : github.com/sharkdp/fd

sudo apt install fd-find
Alias nécessaire

Sur Debian/Ubuntu, la commande s’appelle fdfind :

echo "alias fd='fdfind'" >> ~/.bashrc
source ~/.bashrc

Utilisation :

# Rechercher un fichier
fd config

# Rechercher par extension
fd -e js

# Rechercher uniquement des dossiers
fd -t d node_modules

# Exécuter une commande sur les résultats
fd -e jpg -x convert {} {.}.png

zoxide - Navigation intelligente

Remplace : cd

Site officiel : github.com/ajeetdsouza/zoxide

zoxide apprend de tes habitudes de navigation et te permet de sauter directement dans les répertoires fréquents.

Installation :

curl -sS https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | bash

Configuration (ajouter dans ~/.bashrc ou ~/.zshrc) :

eval "$(zoxide init bash)"  # pour bash
# ou
eval "$(zoxide init zsh)"   # pour zsh

Utilisation :

# Première visite classique
cd ~/projects/mon-projet

# Plus tard, tape simplement :
z mon-projet
# zoxide t'amène directement là !

# Lister les répertoires indexés
zoxide query -l

dust - Analyse d’espace disque moderne

Remplace : du

Site officiel : github.com/bootandy/dust

cargo install du-dust

Utilisation :

# Analyser le répertoire courant
dust

# Analyser un répertoire spécifique
dust /var/log

# Limiter la profondeur
dust -d 2

duf - Le df moderne

Remplace : df

Site officiel : github.com/muesli/duf

sudo apt install duf

Affiche l’espace disque avec un rendu moderne et coloré.

Utilisation :

duf

Productivité avancée

fzf - Recherche floue interactive

Site officiel : github.com/junegunn/fzf

sudo apt install fzf

# Ou installation complète avec keybindings
git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/install

fzf transforme ton workflow avec une recherche interactive ultra-rapide.

Utilisation :

Après installation, appuie sur CTRL + R pour rechercher dans l’historique des commandes de manière interactive !

# Ouvrir un fichier avec vim
vim $(fzf)

# Changer de répertoire interactivement
cd $(find . -type d | fzf)

# Changer de branche Git
git checkout $(git branch | fzf)

starship - Prompt moderne et rapide

Site officiel : starship.rs

starship est un prompt shell ultra-rapide, personnalisable et compatible avec bash, zsh, fish…

Installation :

curl -sS https://starship.rs/install.sh | sh

Configuration (ajouter dans ~/.bashrc ou ~/.zshrc) :

eval "$(starship init bash)"  # pour bash
# ou
eval "$(starship init zsh)"   # pour zsh

Fonctionnalités :

  • Affichage du statut Git
  • Indication des versions (Node.js, Python, Rust, Go…)
  • Durée d’exécution des commandes
  • Thèmes personnalisables

tmux - Multiplexeur de terminal

sudo apt install tmux

tmux permet de gérer plusieurs sessions terminal dans une seule fenêtre.

Commandes de base :

# Démarrer une session
tmux

# Session nommée
tmux new -s dev

# Lister les sessions
tmux ls

# Se rattacher
tmux attach -t dev

# Détacher : CTRL + B puis D

Raccourcis essentiels (préfixe CTRL + B) :

  • " : diviser horizontalement
  • % : diviser verticalement
  • flèches : naviguer entre panneaux
  • c : nouvelle fenêtre
  • n/p : fenêtre suivante/précédente

zellij - Le multiplexeur moderne

Alternative à : tmux, screen

Site officiel : zellij.dev

zellij est un multiplexeur de terminal nouvelle génération écrit en Rust, avec une interface beaucoup plus intuitive que tmux.

Avantages de zellij :

  • Interface moderne et visuellement attractive
  • Tutoriel intégré (pas besoin de mémoriser les raccourcis)
  • Configuration en YAML simple
  • Layouts prédéfinis
  • Mode collaboration
  • Pas besoin de préfixe compliqué comme tmux

Installation :

# Via cargo
cargo install --locked zellij

# Ou télécharger le binaire
wget https://github.com/zellij-org/zellij/releases/latest/download/zellij-x86_64-unknown-linux-musl.tar.gz
tar -xzf zellij-x86_64-unknown-linux-musl.tar.gz
sudo mv zellij /usr/local/bin/

Utilisation :

# Démarrer zellij
zellij

# Session nommée
zellij -s dev

# Se rattacher à une session
zellij attach dev

# Lister les sessions
zellij list-sessions

Raccourcis essentiels (affichés en bas de l’écran) :

  • Ctrl + p : mode panneaux
    • n : nouveau panneau
    • x : fermer
    • flèches : naviguer
  • Ctrl + t : mode onglets
    • n : nouvel onglet
    • r : renommer
  • Ctrl + o : mode session
  • Ctrl + q : quitter
Pourquoi choisir zellij ?
  • Plus intuitif : les raccourcis sont affichés en permanence
  • Plus moderne : interface en couleur, rendu fluide
  • Plus simple : pas de fichier de config complexe comme tmux
  • Layouts intelligents : redimensionnement automatique optimal

Configuration optionnelle (~/.config/zellij/config.yaml) :

default_layout: compact
theme: default
pane_frames: true
simplified_ui: false

zsh + Oh My Zsh

# Installer zsh
sudo apt install zsh

# Définir comme shell par défaut
chsh -s $(which zsh)

# Installer Oh My Zsh
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

Plugins recommandés (éditer ~/.zshrc) :

plugins=(
  git
  zsh-autosuggestions
  zsh-syntax-highlighting
  docker
  npm
  sudo
  history
)

Installer les plugins :

# zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

# zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

tldr - Pages man simplifiées

Site officiel : tldr.sh

sudo apt install tldr

# Mise à jour de la base
tldr --update

Utilisation :

# Exemples pour tar
tldr tar

# Exemples pour git
tldr git commit

Développement et DevOps

Docker + Docker Compose

Site officiel : docker.com

Installation officielle :

# Nettoyer les anciennes versions
sudo apt remove docker docker-engine docker.io containerd runc

# Installer les dépendances
sudo apt update
sudo apt install -y ca-certificates curl gnupg lsb-release

# Ajouter la clé GPG Docker
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

# Ajouter le dépôt
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# Installer Docker
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

# Ajouter ton utilisateur au groupe docker
sudo usermod -aG docker $USER
newgrp docker

Vérification :

docker run hello-world

Commandes essentielles :

# Conteneurs
docker ps              # Lister les conteneurs actifs
docker ps -a           # Tous les conteneurs
docker stop <id>       # Arrêter
docker rm <id>         # Supprimer

# Images
docker images          # Lister
docker pull nginx      # Télécharger
docker rmi <id>        # Supprimer

# Docker Compose
docker compose up -d
docker compose down
docker compose logs -f

lazygit - Interface Git TUI

Site officiel : github.com/jesseduffield/lazygit

Installation :

LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | grep -Po '"tag_name": "v\K[^"]*')
curl -Lo lazygit.tar.gz "https://github.com/jesseduffield/lazygit/releases/latest/download/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz"
tar xf lazygit.tar.gz lazygit
sudo install lazygit /usr/local/bin
rm lazygit.tar.gz lazygit

Utilisation :

# Dans un dépôt git
lazygit

Raccourcis clés :

  • espace : stage/unstage
  • c : commit
  • P : push
  • p : pull
  • ? : aide

GitHub CLI (gh)

Site officiel : cli.github.com

Installation :

type -p curl >/dev/null || (sudo apt update && sudo apt install curl -y)
curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg
sudo chmod go+r /usr/share/keyrings/githubcli-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
sudo apt update
sudo apt install gh

Authentification :

gh auth login

Commandes utiles :

gh pr create          # Créer une PR
gh pr list            # Lister les PR
gh repo clone user/repo
gh issue list

nvm - Node Version Manager

Site officiel : github.com/nvm-sh/nvm

Installation :

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
source ~/.bashrc

Utilisation :

nvm install --lts     # Dernière LTS
nvm install 20        # Version spécifique
nvm use 20
nvm alias default 20

pyenv - Python Version Manager

Site officiel : github.com/pyenv/pyenv

Installation :

# Dépendances
sudo apt install -y make build-essential libssl-dev zlib1g-dev \
  libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm \
  libncursesw5-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev \
  libffi-dev liblzma-dev

# Installer pyenv
curl https://pyenv.run | bash

# Configuration
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc
echo 'command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init -)"' >> ~/.bashrc
source ~/.bashrc

Utilisation :

pyenv install 3.12
pyenv global 3.12
pyenv local 3.11      # Pour un projet spécifique

glow - Lecteur Markdown en terminal

Site officiel : github.com/charmbracelet/glow

Installation :

sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://repo.charm.sh/apt/gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/charm.gpg
echo "deb [signed-by=/etc/apt/keyrings/charm.gpg] https://repo.charm.sh/apt/ * *" | sudo tee /etc/apt/sources.list.d/charm.list
sudo apt update
sudo apt install glow

Utilisation :

glow README.md
glow -p fichier.md    # Mode pager

Administration serveur VPS

Cette section est dédiée aux outils essentiels pour administrer un serveur VPS Debian/Ubuntu en 2025.

SSH - Connexion sécurisée

# Client SSH
sudo apt install openssh-client

# Serveur SSH
sudo apt install openssh-server

Générer une clé SSH (méthode moderne 2025) :

# Ed25519 (recommandé)
ssh-keygen -t ed25519 -C "ton.email@example.com"

# RSA 4096 bits (pour compatibilité)
ssh-keygen -t rsa -b 4096 -C "ton.email@example.com"

Copier la clé sur le serveur :

ssh-copy-id -i ~/.ssh/id_ed25519.pub user@serveur

Configuration SSH (~/.ssh/config) :

Host monvps
    HostName 192.168.1.100
    User ubuntu
    Port 22
    IdentityFile ~/.ssh/id_ed25519

Se connecter ensuite simplement avec :

ssh monvps
Guide complet SSH
Pour un guide détaillé sur SSH, consulte l’article : SSH - Connexion Sécurisée à un Serveur VPS : Guide Complet 2025

ufw - Pare-feu simple et efficace

Installation :

sudo apt install ufw

Configuration de base :

# Autoriser SSH AVANT d'activer
sudo ufw allow 22/tcp

# Autoriser HTTP/HTTPS
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# Activer le pare-feu
sudo ufw enable

# Voir le statut
sudo ufw status verbose
Attention
Si tu es connecté en SSH, autorise toujours le port SSH AVANT d’activer UFW !

fail2ban - Protection anti-bruteforce

Site officiel : fail2ban.org

Installation :

sudo apt install fail2ban

Configuration (/etc/fail2ban/jail.local) :

[DEFAULT]
bantime = 86400      # 24h
findtime = 600       # 10 min
maxretry = 3

[sshd]
enabled = true
port = 22
logpath = /var/log/auth.log

Démarrage :

sudo systemctl enable fail2ban
sudo systemctl start fail2ban

# Vérifier
sudo fail2ban-client status sshd

nmap - Scanner réseau

Site officiel : nmap.org

sudo apt install nmap

Utilisation :

# Scanner un hôte
nmap exemple.com

# Scanner un réseau
nmap 192.168.1.0/24

# Scan détaillé avec détection OS
sudo nmap -A exemple.com

# Scanner des ports spécifiques
nmap -p 22,80,443 exemple.com

netstat / ss - Connexions réseau

sudo apt install net-tools

Utilisation :

# Voir toutes les connexions
netstat -tuln

# Avec ss (plus moderne)
ss -tuln

# Voir les processus
sudo netstat -tulnp
sudo ss -tulnp

ncdu - Analyseur d’espace disque interactif

Site officiel : dev.yorhel.nl/ncdu

sudo apt install ncdu

Utilisation :

# Analyser le répertoire courant
ncdu

# Analyser /var/log
ncdu /var/log

Navigation : flèches, d pour supprimer, q pour quitter.

iotop - Moniteur d’I/O disque

sudo apt install iotop

Utilisation :

sudo iotop

Affiche en temps réel les processus qui utilisent le disque.

lsof - Lister les fichiers ouverts

sudo apt install lsof

Utilisation :

# Tous les fichiers ouverts
sudo lsof

# Fichiers ouverts sur un port
sudo lsof -i :80

# Fichiers ouverts par un processus
lsof -p <PID>

# Processus utilisant un fichier
lsof /var/log/syslog

unattended-upgrades - Mises à jour automatiques

sudo apt install unattended-upgrades

Configuration :

sudo dpkg-reconfigure -plow unattended-upgrades

Active les mises à jour de sécurité automatiques.

logrotate - Rotation des logs

Préinstallé sur Debian/Ubuntu. Configuration dans /etc/logrotate.d/.

Exemple de configuration personnalisée (/etc/logrotate.d/mon-app) :

/var/log/mon-app/*.log {
    daily
    rotate 7
    compress
    delaycompress
    missingok
    notifempty
}

rsync - Synchronisation de fichiers

sudo apt install rsync

Utilisation :

# Copier localement
rsync -av source/ destination/

# Copier vers un serveur distant
rsync -avz --progress dossier/ user@serveur:/chemin/

# Sauvegarde avec exclusions
rsync -av --exclude='node_modules' projet/ backup/

nginx ou apache2 - Serveurs web

Nginx (recommandé en 2025) :

sudo apt install nginx
sudo systemctl enable nginx
sudo systemctl start nginx

Apache2 :

sudo apt install apache2
sudo systemctl enable apache2
sudo systemctl start apache2

postgresql / mysql - Bases de données

PostgreSQL (recommandé en 2025) :

sudo apt install postgresql postgresql-contrib
sudo systemctl enable postgresql
sudo systemctl start postgresql

MySQL/MariaDB :

sudo apt install mariadb-server
sudo mysql_secure_installation

Outils optionnels

python3-pip

sudo apt install python3-pip

eg - Exemples de commandes

pip install eg

Utilisation :

eg tar
eg git

bash-completion

sudo apt install bash-completion

Active l’autocomplétion des commandes avec TAB.

imagemagick (convert)

sudo apt install imagemagick

Exemples :

# Redimensionner
convert image.jpg -resize 800x600 sortie.jpg

# Convertir
convert image.png image.jpg

# Rotation
convert image.jpg -rotate 90 sortie.jpg

pandoc - Conversion de documents

Site officiel : pandoc.org

sudo apt install pandoc

Exemples :

# Markdown vers HTML
pandoc fichier.md -o sortie.html

# Markdown vers PDF
pandoc fichier.md -o sortie.pdf

# Word vers Markdown
pandoc document.docx -o sortie.md

ffmpeg - Conversion vidéo/audio

Site officiel : ffmpeg.org

sudo apt install ffmpeg

Exemples :

# Convertir vidéo
ffmpeg -i video.avi video.mp4

# Extraire l'audio
ffmpeg -i video.mp4 audio.mp3

# Réduire la taille
ffmpeg -i input.mp4 -vcodec h264 -acodec aac output.mp4

gnome-tweaks - Personnalisation GNOME

sudo apt install gnome-tweaks

Pour personnaliser l’environnement de bureau GNOME (Ubuntu Desktop).

Configuration recommandée

Aliases utiles (~/.bashrc ou ~/.zshrc)

# Navigation rapide
alias ..='cd ..'
alias ...='cd ../..'
alias ....='cd ../../..'

# Outils modernes
alias ls='eza --icons'
alias ll='eza -l --icons --git'
alias la='eza -la --icons --git'
alias lt='eza --tree --icons'
alias cat='batcat'
alias grep='rg'
alias find='fdfind'

# Git
alias gs='git status'
alias ga='git add'
alias gc='git commit'
alias gp='git push'
alias gl='git log --oneline --graph --decorate'
alias gd='git diff'
alias lg='lazygit'

# Docker
alias dps='docker ps'
alias dpa='docker ps -a'
alias di='docker images'
alias dc='docker compose'
alias dcu='docker compose up -d'
alias dcd='docker compose down'
alias dcl='docker compose logs -f'

# Système
alias update='sudo apt update && sudo apt upgrade -y'
alias cleanup='sudo apt autoremove -y && sudo apt autoclean'
alias ports='sudo netstat -tulanp'

# Utilitaires
alias myip='curl ifconfig.me'
alias weather='curl wttr.in'
alias speedtest='speedtest-cli'

Recharger la configuration :

source ~/.bashrc  # ou ~/.zshrc

Configuration Git

# Identité
git config --global user.name "Ton Nom"
git config --global user.email "ton.email@example.com"

# Éditeur
git config --global core.editor "vim"

# Alias
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.ci commit

# Branche par défaut
git config --global init.defaultBranch main

# Couleurs
git config --global color.ui auto

Script d’installation complet

Voici un script qui installe automatiquement la majorité des outils :

#!/bin/bash

echo "Installation des outils essentiels Debian 2025..."

# Mise à jour
sudo apt update

# Outils de base
echo "Installation des outils de base..."
sudo apt install -y \
  neofetch vim git curl wget \
  htop btop tree zip unzip \
  bat ripgrep fd-find fzf \
  tmux zsh tldr nmap \
  ufw fail2ban net-tools ncdu \
  translate-shell aspell aspell-fr \
  shellcheck xclip rename most \
  speedtest-cli lynx \
  exfat-fuse exfat-utils

# Créer les alias nécessaires
echo "alias bat='batcat'" >> ~/.bashrc
echo "alias fd='fdfind'" >> ~/.bashrc

# Installer Rust (pour outils modernes)
if ! command -v cargo &> /dev/null; then
  echo "Installation de Rust..."
  curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
  source $HOME/.cargo/env
fi

# Installer eza
if ! command -v eza &> /dev/null; then
  echo "Installation de eza..."
  cargo install eza
fi

# Installer zoxide
if ! command -v zoxide &> /dev/null; then
  echo "Installation de zoxide..."
  curl -sS https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | bash
  echo 'eval "$(zoxide init bash)"' >> ~/.bashrc
fi

# Installer starship
if ! command -v starship &> /dev/null; then
  echo "Installation de starship..."
  curl -sS https://starship.rs/install.sh | sh -s -- -y
  echo 'eval "$(starship init bash)"' >> ~/.bashrc
fi

# Installer lazygit
if ! command -v lazygit &> /dev/null; then
  echo "Installation de lazygit..."
  LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | grep -Po '"tag_name": "v\K[^"]*')
  curl -Lo lazygit.tar.gz "https://github.com/jesseduffield/lazygit/releases/latest/download/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz"
  tar xf lazygit.tar.gz lazygit
  sudo install lazygit /usr/local/bin
  rm lazygit.tar.gz lazygit
fi

# Installer GitHub CLI
if ! command -v gh &> /dev/null; then
  echo "Installation de GitHub CLI..."
  curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg
  sudo chmod go+r /usr/share/keyrings/githubcli-archive-keyring.gpg
  echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null
  sudo apt update
  sudo apt install gh -y
fi

# Installer nvm
if [ ! -d "$HOME/.nvm" ]; then
  echo "Installation de nvm..."
  curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
fi

# Installer Oh My Zsh
if [ ! -d "$HOME/.oh-my-zsh" ]; then
  echo "Installation de Oh My Zsh..."
  sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended
fi

# Mise à jour tldr
tldr --update

echo "Installation terminée !"
echo "Redémarre ton terminal ou tape : source ~/.bashrc"
echo ""
echo "N'oublie pas de configurer Git :"
echo "   git config --global user.name \"Ton Nom\""
echo "   git config --global user.email \"ton.email@example.com\""

Utilisation :

chmod +x install-tools.sh
./install-tools.sh

Conclusion

Tu disposes maintenant d’un guide complet et actualisé pour 2025 des outils essentiels sous Debian/Ubuntu.

Les points clés à retenir :

Les classiques restent pertinents : vim, git, curl, htop, fzf sont toujours incontournables

Les outils modernes apportent un vrai gain : eza, bat, ripgrep, btop offrent de meilleures performances et une meilleure expérience utilisateur

La productivité avant tout : zoxide, starship, tmux, zsh transforment ton workflow

Docker est devenu incontournable pour le développement et le déploiement

Sécurité VPS : ufw, fail2ban, SSH bien configuré sont essentiels

Automatisation : utilise le script d’installation pour gagner du temps

Prochaines étapes suggérées :

  1. Installe le kit de base avec apt
  2. Teste les alternatives modernes (bat, eza, ripgrep)
  3. Configure tes aliases dans ~/.bashrc ou ~/.zshrc
  4. Explore fzf et zoxide pour la navigation
  5. Si tu administres un VPS, sécurise-le avec ufw et fail2ban
Conseil
N’installe pas tous les outils d’un coup ! Commence par les essentiels, puis ajoute progressivement les outils modernes en testant ceux qui correspondent à tes besoins.

L’écosystème Linux évolue rapidement. Ces outils représentent le meilleur de 2025, mais reste à l’affût des nouvelles solutions qui émergeront dans les années à venir !


Mots-clés : Linux, Debian, Ubuntu, commandes, terminal, paquets, administration, CLI, outils modernes 2025, Rust, DevOps, VPS, sécurité, productivité

Articles connexes :

Catégories

Commentaires

Partager cet article

Articles connexes

Coming soon