Linux Fundamentals: A Complete Guide
Discover the essential concepts of Linux, from basic commands to system administration.
InSkillCoach
Linux Fundamentals: A Complete Guide
Linux is a powerful, flexible open source operating system that powers a large share of the world’s internet infrastructure. Whether you are a beginner or an experienced user, understanding its fundamentals is essential to take advantage of its power.
Understanding Linux
What Is Linux?
Linux is an operating system kernel created by Linus Torvalds in 1991. Combined with the GNU tools and other software, it forms a complete operating system. Linux distributions (such as Ubuntu, Fedora, and Debian) are variants that bundle the Linux kernel with different software selections and configurations.
Why Use Linux?
- Stability and reliability: Linux is known for its robustness and can run for years without a reboot.
- Security: Thanks to its permissions model and its open source nature, Linux offers excellent security.
- Flexibility: From IoT to supercomputers, Linux adapts to almost any use case.
- Free and open source: Linux is free to use, and its source code is accessible to everyone.
Essential Linux Commands
The terminal is at the heart of the Linux experience. Here are the fundamental commands to know:
Navigating the File System
# Afficher le répertoire actuel
pwd
# Lister les fichiers et dossiers
ls -la
# Changer de répertoire
cd /chemin/vers/dossier
cd .. # Remonter d'un niveau
cd ~ # Aller au répertoire personnel
Working with Files
# Créer un fichier vide
touch fichier.txt
# Afficher le contenu d'un fichier
cat fichier.txt
# Copier un fichier
cp source.txt destination.txt
# Déplacer ou renommer
mv ancien.txt nouveau.txt
# Supprimer un fichier
rm fichier.txt
# Créer un répertoire
mkdir nouveau_dossier
Managing Permissions
# Changer les permissions
chmod 755 script.sh # rwx pour propriétaire, r-x pour groupe et autres
# Changer le propriétaire
chown utilisateur:groupe fichier.txt
System Administration
User Management
# Ajouter un utilisateur
sudo adduser nouvel_utilisateur
# Ajouter un utilisateur à un groupe
sudo usermod -aG groupe utilisateur
# Changer de mot de passe
passwd
Processes and Resources
# Afficher les processus en cours
ps aux
# Surveiller les ressources système en temps réel
top
htop # Version améliorée (peut nécessiter une installation)
# Tuer un processus
kill PID
killall nom_processus
Package Management
Depending on your distribution, you will use different package managers:
# Debian/Ubuntu
sudo apt update
sudo apt install nom_paquet
# Fedora/RHEL
sudo dnf install nom_paquet
# Arch Linux
sudo pacman -S nom_paquet
Networking on Linux
Network Configuration
# Afficher les interfaces réseau
ip addr show
# Tester la connectivité
ping google.com
# Afficher les connexions réseau actives
netstat -tuln
ss -tuln # Version moderne
File Transfer
# Copier des fichiers via SSH
scp fichier.txt utilisateur@serveur:/destination/
# Télécharger depuis le web
wget https://exemple.com/fichier
curl -O https://exemple.com/fichier
Bash Scripting
Bash scripting lets you automate repetitive tasks:
#!/bin/bash
# Variables
NOM="Monde"
echo "Bonjour, $NOM!"
# Conditions
if [ -f "/etc/passwd" ]; then
echo "Le fichier passwd existe."
else
echo "Le fichier passwd n'existe pas."
fi
# Boucles
for i in {1..5}; do
echo "Itération $i"
done
Conclusion
Linux offers unmatched power and flexibility to users who take the time to learn its fundamentals. Whether you use it for development, system administration, or simply as your everyday operating system, Linux skills are valuable in today’s tech world.
Don’t hesitate to explore further by consulting the documentation for your favorite Linux distribution and by practicing these commands regularly in a safe environment.
About InSkillCoach
Training and technology expert
Coach specializing in advanced technologies and AI, backed by GNeurone Inc.
Certifications:
- AWS Certified Solutions Architect – Professional
- Google Cloud certifications
- Microsoft Certified: DevOps Engineer Expert
- Certified Kubernetes Administrator (CKA)
- CompTIA Security+
Comments
Comments are powered by GitHub Discussions
Sign in with GitHub to join the discussion