🐧

أساسيات Linux

نظام التشغيل الذي يُشغّل 90% من خوادم العالم. إتقان Linux هو حجر الأساس لكل مهندس DevOps ناجح.

أساسي مفتوح المصدر كل التوزيعات

📖 ما هو Linux؟

نظام تشغيل مفتوح المصدر

Linux هو نواة (Kernel) نظام تشغيل طوره Linus Torvalds عام 1991. يُستخدم في الخوادم والسحابة والأجهزة المدمجة والهواتف (Android). معظم البنية التحتية للإنترنت تعمل على Linux.

التوزيعةالاستخداممبني على
Ubuntuخوادم + سطح مكتبDebian
CentOS / Rockyخوادم المؤسساتRHEL
Debianخوادم مستقرةمستقل
Alpineحاويات Dockerمستقل
Amazon Linuxسحابة AWSRHEL/Fedora

🏗️ هيكلية نظام Linux

🔲

Kernel (النواة)

قلب النظام — يدير المعالج والذاكرة والأجهزة والاتصالات.

🖥️

Shell (صدفة الأوامر)

واجهة سطر الأوامر للتفاعل مع النواة. Bash هو الأشهر.

📁

Filesystem (نظام الملفات)

كل شيء في Linux هو ملف. الهيكل يبدأ من / (الجذر).

⚙️

Daemons (الخدمات)

عمليات تعمل في الخلفية مثل Nginx و SSH و Cron.

📂 هيكل المجلدات الرئيسي

المسارالوصف
/المجلد الجذر (Root)
/homeمجلدات المستخدمين
/etcملفات الإعدادات
/varملفات متغيرة (سجلات، بيانات)
/var/logسجلات النظام والتطبيقات
/usrبرامج ومكتبات المستخدم
/tmpملفات مؤقتة
/optبرامج اختيارية إضافية
/binأوامر أساسية
/sbinأوامر النظام (للأدمن)

👤 إدارة المستخدمين والصلاحيات

Terminal — إدارة المستخدمين
# إنشاء مستخدم جديد useradd -m -s /bin/bash devops # تعيين كلمة مرور passwd devops # إضافة لمجموعة sudo usermod -aG sudo devops # عرض المستخدمين cat /etc/passwd # الصلاحيات (r=4, w=2, x=1) chmod 755 script.sh # rwxr-xr-x chmod 600 config.yml # rw------- chown devops:devops app/ # تغيير المالك
⚠️ لا تستخدم root مباشرة! أنشئ مستخدم عادي وأضفه لـ sudo للأمان.

🔄 إدارة الخدمات (Systemd)

Terminal — أوامر systemctl
# بدء خدمة systemctl start nginx # إيقاف خدمة systemctl stop nginx # إعادة تشغيل systemctl restart nginx # حالة الخدمة systemctl status nginx # تشغيل تلقائي عند الإقلاع systemctl enable nginx # عرض كل الخدمات النشطة systemctl list-units --type=service

📦 إدارة الحزم

الأمرDebian/UbuntuRHEL/CentOS
تثبيتapt install nginxyum install nginx
تحديث القائمةapt updateyum check-update
ترقية الكلapt upgrade -yyum update -y
حذفapt remove nginxyum remove nginx
بحثapt search nginxyum search nginx

🌐 أوامر الشبكات الأساسية

Terminal — تشخيص الشبكة
# عرض عناوين IP ip addr show # فحص الاتصال ping -c 4 google.com # فحص المنافذ المفتوحة ss -tlnp # فحص DNS dig example.com nslookup example.com # تتبع المسار traceroute google.com # فحص المنصاف (بديل netstat) netstat -tlnp

📊 فحص ومراقبة النظام

Terminal — مراقبة الأداء
# استخدام المعالج والذاكرة (مباشر) top htop # نسخة أجمل (تحتاج تثبيت) # معلومات الذاكرة free -h # مساحة الأقراص df -h # حجم المجلدات du -sh /var/log # عرض آخر 50 سطر من سجل tail -n 50 -f /var/log/nginx/access.log # معلومات النظام uname -a lscpu uptime

أفضل الممارسات

🎯 1. لا تعمل كمستخدم root — استخدم sudo فقط عند الحاجة
2. عطّل تسجيل الدخول بكلمة مرور لـ SSH واستخدم المفاتيح
3. فعّل جدار الحماية ufw أو firewalld
4. حدّث النظام بانتظام: apt update && apt upgrade -y
5. راقب السجلات: /var/log/ هو أول مكان للفحص
6. استخدم tmux أو screen للجلسات البعيدة الطويلة
السابق: Bash Scripting التالي: Git & GitHub