Points clés
1. Accéder à Linux : Plusieurs voies pour débuter
Pour commencer à vous familiariser avec Linux et mettre en pratique vos nouvelles connaissances, il vous faut un accès à un système Linux.
Accès immédiat. Le moyen le plus rapide de plonger dans Linux consiste à utiliser des interfaces en ligne de commande accessibles via un navigateur, comme SimpleShell.com, qui offrent un accès instantané à un serveur Linux sans aucune installation. Ces solutions sont parfaites pour des sessions courtes et pour tester des commandes, mais gardez à l’esprit que vos données y sont temporaires.
Hébergement web. Si vous possédez un site web, il est possible que vous disposiez déjà d’un accès SSH à un serveur Linux. Consultez la documentation de votre hébergeur pour les termes « SSH » ou « accès shell ». L’hébergement mutualisé est une option économique pour bénéficier d’un accès shell permanent. Parmi les fournisseurs populaires, on trouve :
- 1and1.com
- BlueHost.com
- DreamHost.com
- HostGator.com
- Site5.com
Virtualisation. Pour une expérience plus complète, utilisez VirtualBox afin d’exécuter une image Linux préinstallée sur votre ordinateur Windows, Mac ou Linux. Téléchargez VirtualBox ainsi qu’une image CentOS ou Ubuntu depuis virtualboxes.org. Cela vous offre un environnement Linux personnel pour une exploration approfondie.
2. Se connecter à un serveur Linux : SSH et Telnet expliqués
SSH signifie Secure Shell et permet de se connecter à un serveur via un réseau, comme Internet.
Secure Shell (SSH). SSH est le protocole principal pour accéder aux serveurs Linux, garantissant une communication chiffrée pour un accès distant sécurisé. Vous aurez besoin d’un nom d’utilisateur, d’un mot de passe (ou d’une clé SSH), du nom ou de l’adresse IP du serveur, et parfois d’un numéro de port.
Clients SSH. Sous Windows, PuTTY est un client SSH très répandu. Les Mac disposent d’une application Terminal intégrée. La commande SSH basique s’écrit ssh -p numéro_de_port utilisateur@serveur. Si aucun port n’est précisé, le port 22 est utilisé par défaut.
Clés SSH. Les clés SSH permettent une connexion sans mot de passe, renforçant la sécurité. Générez-les avec ssh-keygen (Mac/Linux) ou PuTTYgen (Windows). Transmettez la clé publique à l’administrateur du serveur et conservez la clé privée en lieu sûr.
3. Naviguer dans le shell : votre interface en ligne de commande
Le shell n’est rien d’autre qu’un programme qui reçoit vos commandes et les exécute.
Interface shell. Le shell est votre interface principale pour interagir avec le système Linux. Il interprète vos commandes et les exécute. L’invite de commande affiche généralement votre nom d’utilisateur, le nom du serveur, et indique si vous êtes un utilisateur normal ($) ou superutilisateur (#).
Commandes de base. Les commandes essentielles comprennent :
ls: liste le contenu d’un répertoirecd: change de répertoirepwd: affiche le répertoire courantcat: affiche le contenu d’un fichierecho: affiche des argumentsman: affiche la documentation d’une commande
Apprendre en pratiquant. Utilisez la commande man pour découvrir d’autres commandes. La variable d’environnement PATH liste les répertoires où se trouvent les commandes exécutables. La commande which commande permet de localiser précisément une commande.
4. Comprendre la structure des répertoires Linux : une carte du système
Comprendre la structure des répertoires vous aidera à l’avenir lorsque vous chercherez des composants sur le système.
Répertoire racine. Le répertoire racine (/) est le point de départ de la hiérarchie du système de fichiers. Il n’est pas lié au compte utilisateur root.
Répertoires courants. Les répertoires clés sont :
/bin: binaires essentiels/etc: fichiers de configuration système/home: répertoires personnels des utilisateurs/opt: logiciels optionnels/tmp: fichiers temporaires/usr: programmes liés aux utilisateurs/var: données variables, comme les fichiers journaux
Structure des applications. Les applications suivent souvent une structure similaire dans /opt ou /usr/local, avec des sous-répertoires pour les binaires, la configuration, les bibliothèques et les journaux.
5. Commandes Linux essentielles : votre boîte à outils pour les opérations de base
Sous Linux, les commandes sont sensibles à la casse et sont généralement en minuscules.
Commandes principales. Quelques commandes suffisent pour bien débuter :
ls: lister fichiers et répertoirescd: changer de répertoirepwd: afficher le répertoire courantcat: afficher le contenu d’un fichierecho: afficher du texteman: accéder au manuelexit: terminer la sessionclear: nettoyer l’écran
Navigation dans les répertoires. Utilisez . pour le répertoire courant et .. pour le répertoire parent. La commande cd - vous ramène au répertoire précédent.
Exécution de commandes. Pour exécuter un programme dans le répertoire courant, tapez ./programme.
6. Permissions des fichiers : comprendre et gérer les accès
Le premier caractère de la chaîne de permissions indique le type.
Chaîne de permissions. La commande ls -l affiche une chaîne de permissions comme -rw-r--r--. Le premier caractère indique le type de fichier (par exemple, - pour un fichier, d pour un répertoire, l pour un lien). Les neuf caractères suivants représentent les droits de lecture (r), écriture (w) et exécution (x) pour l’utilisateur, le groupe et les autres.
Catégories d’utilisateurs. Les permissions s’appliquent à l’utilisateur (propriétaire), au groupe et aux autres. La commande groups affiche vos appartenances aux groupes.
Modifier les permissions. Utilisez chmod pour changer les permissions. Le mode symbolique (ex. chmod g+w fichier) ajoute ou retire des droits. Le mode octal (ex. chmod 755 fichier) définit directement les permissions avec des valeurs numériques (4 pour lecture, 2 pour écriture, 1 pour exécution).
7. Trouver des fichiers : localiser ce dont vous avez besoin
Si vous devez localiser un fichier ou un répertoire, utilisez la commande find.
La commande find. find est un outil puissant pour rechercher des fichiers et répertoires selon divers critères. La syntaxe de base est find [chemin...] [expression].
Options courantes. Parmi les options utiles :
-name motif: trouve les fichiers correspondant au motif (sensible à la casse)-iname motif: trouve les fichiers correspondant au motif (insensible à la casse)-ls: effectue unlssur les fichiers trouvés-mtime nb_jours: trouve les fichiers modifiés il y anb_jours-size taille: trouve les fichiers de taille donnée-exec commande {} \;: exécute une commande sur les fichiers trouvés
La commande locate. locate est plus rapide que find car elle interroge une base de données préconstruite, mais cette base peut ne pas être à jour.
8. Visualiser et éditer des fichiers : interagir avec le contenu
Voici quelques commandes simples pour afficher le contenu des fichiers à l’écran.
Visualiser des fichiers. Les commandes pour consulter un fichier sont :
cat: affiche le fichier en entiermore: parcourt un fichier page par pageless: commemore, mais permet de revenir en arrière et de chercherhead: affiche le début d’un fichiertail: affiche la fin d’un fichiertail -f: affiche en temps réel les données ajoutées au fichier
Éditer des fichiers. nano est un éditeur simple et convivial. vi et emacs sont plus puissants mais demandent un apprentissage plus poussé.
La commande file. Utilisez file pour déterminer le type d’un fichier.
9. Gestion des fichiers : manipuler fichiers et répertoires
Vous finirez par en avoir assez de tous ces vieux fichiers qui traînent, encombrant votre répertoire personnel et occupant de l’espace précieux.
Supprimer des fichiers. Utilisez la commande rm pour supprimer des fichiers. Pour supprimer des répertoires et leur contenu, ajoutez l’option -r. Soyez prudent, il n’y a pas de corbeille : les fichiers supprimés sont irrécupérables.
Copier des fichiers. La commande cp copie des fichiers. Avec l’option -r, elle copie récursivement des répertoires.
Déplacer et renommer. La commande mv sert à déplacer ou renommer fichiers et répertoires.
Archivage et compression. Utilisez tar pour créer des archives. gzip compresse les fichiers. Les versions modernes de tar supportent la compression gzip avec l’option -z (ex. tar zcf archive.tar.gz répertoire).
10. Personnaliser votre shell : faites de Linux votre environnement
Comme vous l’avez vu dans le chapitre « Bienvenue dans le shell », les invites par défaut varient selon les systèmes.
Personnaliser l’invite. Modifiez votre invite de commande en configurant la variable d’environnement PS1 (pour bash, ksh, sh) ou prompt (pour csh, tcsh, zsh). Utilisez des chaînes de format comme \u (nom d’utilisateur), \h (nom d’hôte) et \w (répertoire courant).
Créer des alias. Simplifiez vos commandes fréquentes avec alias (ex. alias ll='ls -l'). Ajoutez vos alias dans vos fichiers d’initialisation personnels (ex. .bash_profile, .bashrc) pour qu’ils soient permanents.
Sessions interactives vs non-interactives. Comprenez la différence entre sessions shell interactives et non-interactives. Assurez-vous que votre configuration est chargée dans les deux cas en important .bashrc depuis .bash_profile.
11. Processus et gestion des tâches : maîtriser les programmes en cours
Pour afficher les processus en cours, utilisez la commande ps.
Lister les processus. La commande ps affiche les processus actifs. Les options courantes sont -e (tous les processus), -f (format complet) et -u utilisateur (processus d’un utilisateur spécifique).
Processus au premier plan et en arrière-plan. Lancez une commande en arrière-plan en ajoutant un & à la fin. Utilisez jobs pour lister les tâches en arrière-plan, fg pour ramener une tâche au premier plan, et bg pour reprendre une tâche suspendue en arrière-plan.
Terminer des processus. Utilisez Ctrl-c pour interrompre un processus au premier plan. La commande kill envoie des signaux aux processus, notamment TERM (15) pour une terminaison propre et KILL (9) pour forcer l’arrêt.
12. Automatiser les tâches : planifier avec Cron
Si vous devez répéter une tâche selon un planning, utilisez le service cron.
Service Cron. Cron permet de programmer l’exécution automatique de tâches à des moments précis.
Format du crontab. Les tâches cron sont définies dans des fichiers crontab. Chaque ligne précise la planification (minute, heure, jour du mois, mois, jour de la semaine) et la commande à exécuter.
Commande crontab. Gérez vos tâches cron avec la commande crontab :
crontab -l: liste les tâches croncrontab -e: édite les tâches croncrontab -r: supprime toutes les tâches cron
Résumé des avis
Linux pour les débutants reçoit des avis majoritairement positifs, avec une note moyenne de 4,02 sur 5. Les lecteurs apprécient son approche accessible aux novices, la couverture complète des commandes Linux de base, ainsi que les ressources supplémentaires proposées pour approfondir leurs connaissances. Certains le trouvent utile pour rafraîchir leurs acquis ou découvrir de nouvelles commandes. Toutefois, quelques critiques soulignent un contenu parfois un peu daté, un manque de profondeur dans certains domaines, ainsi qu’une présentation insuffisante des notions de base. Le livre est salué pour son approche pratique et concrète, mais certains estiment qu’il gagnerait à intégrer davantage d’éléments interactifs et à développer plus amplement les explications des concepts abstraits.