8.4. قواعد بيانات المستخدمين والمجموعات
تُخزَّن قائمة المستخدمين عادة في الملف /etc/passwd
، بينما يحوي الملف /etc/shadow
كلمات السر المشفرة. كل من هذين الملفين ملف نصي، وصيغته بسيطة نسبياً، يمكن قراءته وتعديله باستخدام محرر نصوص. يُذكَر كل مستخدم في تلك الملفات في سطر واحد يحوي عدة حقول تفصلها نقطتان (”:
“).
8.4.1. قائمة المستخدمين: /etc/passwd
يحوي الملف /etc/passwd
الحقول التالية:
اسم تسجيل الدخول، مثلاً rhertzog
؛
كلمة السر: كلمة السر مشفّرة بتابع أحادي الاتجاه (crypt
)، يعتمد على DES
، أو MD5
، أو SHA-256
أو SHA-512
. تشير القيمة الخاصة ”x
“ إلى أن الكلمة المشفرة مخزّنة في الملف /etc/shadow
؛
uid
: رقم تعريف فريد للمستخدم (user id)؛
gid
: رقم التعريف الفريد لمجموعة المستخدم الرئيسة (تنشئ دبيان مجموعة خاصة لكل مستخدم افتراضياً)؛
GECOS
: حقل بيانات يحوي اسم المستخدم الكامل عادة؛
مجلد تسجيل الدخول، وهو يُعطى للمستخدم لتخزين ملفاته الشخصية (يشير متغير البيئة $HOME
إلى هذا المجلد عموماً)؛
البرنامج الذي سيُنفَّذ عند تسجيل الدخول. يكون هذا عادة مفسّر أوامر (صَدَفة)، يطلق للمستخدم العنان. إذا وضعت /bin/false
هنا (الذي لا يفعل شيئاً ويعيد التحكم مباشرة)، فلن يتمكن المستخدم من الدخول.
8.4.2. ملف كلمات السر المشفّر والمخفي: /etc/shadow
يحوي ملف /etc/shadow
الحقول التالية:
8.4.3. تعديل حساب سابق أو كلمة السر
يسمح الأمر التالي بتعديل المعلومات المُخزّنة في الحقول الخاصة في قواعد بيانات المستخدمين: يسمح الأمر passwd
للمستخدم العادي بتعديل كلمة سره، حيث يحدث الملف /etc/shadow
؛ أما chfn
(CHange Full Name)، الذي يستطيع استخدامه الجذر (root) فقط، يُعدّل الحقل GECOS
. ويسمح الأمر chsh
(CHange SHell) للمستخدم بتغيير صدفة تسجيل الدخول، لكن الخيارات المتاحة محددة حصراً بالخيارات المذكورة في /etc/shells
؛ أما مدير النظام فلا يخضع لهذا القيد ويستطيع جعل أي برنامج يختاره صدفة تسجيل دخول.
أخيراً، يسمح الأمر chage
(CHange AGE) لمدير النظام بتغيير إعدادات انتهاء صلاحية كلمة السر (يعرض الخيار -l user
الوضع الحالي). يمكنك أيضاً فرض انتهاء صلاحية كلمة سر أحد المستخدمين بالأمر passwd -e user
، الذي سيفرض على المستخدم تغيير كلمة سره في المرة التالية التي يسجل فيها دخوله.
قد تحتاج أحياناً ”لتعطيل حساب“ (منع المستخدم من الدخول)، كإجراء تأديبي، أو للتحقيق، أو ببساطة في حال غياب المستخدم لفترة طويلة أو غيابه نهائياً. تعطيل الحساب يعني منع المستخدم من تسجيل الدخول أو الوصول إلى الجهاز. يبقى الحساب على الجهاز كما هو ولا تحذف أي ملفات أو بيانات؛ لكن ببساطة لا يمكن الوصول إليها. يتم هذا باستخدام الأمر passwd -l user
(للقفل lock). أما إعادة تفعيل الحساب فتتم بطريقة مشابهة، عبر استخدام الخيار -u
(فك القفل unlock).
8.4.5. قائمة المجموعات: /etc/group
تسرد المجموعات في الملف /etc/group
، وهو قاعدة بيانات نصية بسيطة صيغتها تشبه صيغة الملف /etc/passwd
، وتحوي الحقول التالية:
اسم المجموعة؛
كلمة السر (اختياري): تستخدم فقط عند محاولة انضمام مستخدم غير عضو إلى المجموعة (باستخدام الأمر
newgrp
أو الأمر
sg
، انظر الملاحظة الجانبية
أساسيات العمل مع عدة مجموعات)؛
gid
: رقم تعريف فريد للمجموعة (group id)؛
لائحة الأعضاء: قائمة بأسماء المستخدمين أعضاء المجموعة، تفصل أسماؤهم بفواصل (”,“).
The addgroup
and delgroup
commands add or delete a group, respectively. The groupmod
command modifies a group's information (its gid
or identifier). The command gpasswd group
changes the password for the group, while the gpasswd -r group
command deletes it.