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.

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
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: QuitterCtrl + K: Couper la ligneCtrl + U: CollerCtrl + W: RechercherCtrl + 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: SauvegarderCtrl + Q: QuitterCtrl + C/V/X: Copier/Coller/CouperCtrl + F: RechercherCtrl + Z/Y: Annuler/RefaireCtrl + 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
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
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
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 verticalementflèches: naviguer entre panneauxc: nouvelle fenêtren/p: fenêtre suivante/précédente
zellij - Le multiplexeur moderne
Alternative à : tmux, screen
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 panneauxn: nouveau panneaux: fermerflèches: naviguer
Ctrl + t: mode ongletsn: nouvel ongletr: renommer
Ctrl + o: mode sessionCtrl + 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
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
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/unstagec: commitP: pushp: 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
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
fail2ban - Protection anti-bruteforce
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
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
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
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 :
- Installe le kit de base avec
apt - Teste les alternatives modernes (bat, eza, ripgrep)
- Configure tes aliases dans
~/.bashrcou~/.zshrc - Explore fzf et zoxide pour la navigation
- Si tu administres un VPS, sécurise-le avec ufw et fail2ban
Conseil
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 :


