انتقل إلى المحتوى الرئيسي

الفصل 5.1 - إدارة المستخدمين

أهداف التعلم​

في نهاية هذا الفصل، ستكون قادرًا على:

  • فهم نظام مستخدمي لينكس
  • إنشاء وحذف المستخدمين
  • إدارة المجموعات
  • فهم ملفات التكوين (/etc/passwd, /etc/group)

مقدمة​

لينكس هو نظام متعدد المستخدمين. كل مستخدم لديه حسابه الخاص مع أذونات وموارد محددة.


أنواع المستخدمين​

الجذر (المستخدم الفائق)​

الخصائص:

  • UID: 0 (دائمًا)
  • القدرات: وصول كامل للنظام
  • الخطر: يمكنه تعديل/حذف كل شيء
  • الاستخدام: إدارة النظام فقط

المستخدمون العاديون​

الخصائص:

  • UID: عادةً ≥ 1000
  • القدرات: محدودة بملفاتهم
  • Home: /home/username
  • الاستخدام: المستخدمون العاديون

مستخدمو النظام​

الخصائص:

  • UID: 1-999 (حسب التوزيعة)
  • القدرات: محدودة، للخدمات
  • Home: غالبًا /var/lib/service أو /
  • الاستخدام: خدمات النظام (www-data, mysql, إلخ.)

ملفات التكوين​

/etc/passwd​

يحتوي على معلومات المستخدمين:

# Format: username:password:UID:GID:comment:home:shell
root:x:0:0:root:/root:/bin/bash
user1:x:1000:1000:User One:/home/user1:/bin/bash
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin

الحقول:

  1. Username: اسم المستخدم
  2. Password: x (في /etc/shadow)
  3. UID: معرف المستخدم
  4. GID: معرف المجموعة الرئيسي
  5. Comment: الاسم الكامل، الوصف
  6. Home: دليل المنزل
  7. Shell: القشرة الافتراضية

/etc/shadow​

يحتوي على كلمات المرور المشفرة:

# Format: username:password:last_change:min:max:warn:expire:disable
user1:$6$salt$hash:19000:0:99999:7:::

الأمان:

  • يمكن قراءته فقط بواسطة الجذر
  • كلمات المرور مشفرة
  • سياسات كلمات المرور

/etc/group​

يحتوي على معلومات المجموعات:

# Format: groupname:password:GID:members
root:x:0:
users:x:100:user1,user2
developers:x:1001:user1,user3

إنشاء مستخدم​

useradd​

# مستخدم بسيط
sudo useradd username

# مع خيارات
sudo useradd -m -s /bin/bash -c "Full Name" username
# -m: إنشاء دليل المنزل
# -s: القشرة
# -c: تعليق/وصف

# مع مجموعة رئيسية
sudo useradd -g developers username

# مع مجموعات إضافية
sudo useradd -G sudo,developers username

# UID محدد
sudo useradd -u 2000 username

adduser (أوبونتو/ديبيان)​

واجهة أكثر سهولة:

sudo adduser username
# يطرح أسئلة تفاعلية

تعديل مستخدم​

usermod​

# تغيير القشرة
sudo usermod -s /bin/zsh username

# تغيير دليل المنزل
sudo usermod -d /new/home username
sudo usermod -m -d /new/home username # نقل الملفات

# إضافة إلى مجموعة
sudo usermod -aG sudo username

# تغيير UID
sudo usermod -u 2001 username

# قفل الحساب
sudo usermod -L username

# فتح القفل
sudo usermod -U username

حذف مستخدم​

userdel​

# حذف المستخدم
sudo userdel username

# حذف مع دليل المنزل
sudo userdel -r username

# إجبار (إذا كانت هناك عمليات نشطة)
sudo userdel -f -r username

إدارة المجموعات​

إنشاء مجموعة​

# إنشاء مجموعة
sudo groupadd developers

# مع GID محدد
sudo groupadd -g 2000 developers

تعديل مجموعة​

# تغيير GID
sudo groupmod -g 2001 developers

# إعادة التسمية
sudo groupmod -n newname oldname

حذف مجموعة​

sudo groupdel developers

إضافة/إزالة من مجموعة​

# إضافة مستخدم إلى مجموعة
sudo usermod -aG developers username

# عرض مجموعات المستخدم
groups username
id username

أوامر مفيدة​

# من أنا؟
whoami
id

# تغيير المستخدم
su username
su - username # مع البيئة الكاملة

# تغيير مؤقت
sudo -u username commande

# عرض المستخدمين المتصلين
who
w
users

# عرض سجل الاتصالات
last
lastlog

ملخص​

في هذا الفصل، تعلمت:

الأنواع: الجذر (UID 0)، المستخدمون (UID ≥1000)، النظام (1-999)
الملفات: /etc/passwd, /etc/shadow, /etc/group
الإنشاء: useradd, adduser
التعديل: usermod
الحذف: userdel
المجموعات: groupadd, groupmod, groupdel
الأوامر: whoami, id, su, sudo


الخطوات التالية​

الفصل 5.2: إدارة المجموعات
الفصل 5.3: الأذونات المتقدمة


الفصل تم إنشاؤه في: ديسمبر 2024