| LOGIN(1) | أوامر المستخدم | LOGIN(1) |
الاسم
login - بدء جلسة على النظام
موجز
login [-p] [-s shell] [-h host] [-H] [[-f] username|UID]
الوصف
يُستخدم login عند الولوج إلى النظام. إذا لم يُعطَ أي وسيط، يسأل login عن اسم المستخدم.
يُطلب من المستخدم بعد ذلك كلمة السر، عند الاقتضاء. يُعطل إظهار الكتابة لمنع كشف كلمة السر. يُسمح فقط بعدد معين من محاولات كلمة السر الفاشلة قبل أن يخرج login ويُقطع رابط الاتصال. راجع LOGIN_RETRIES في قسم CONFIG FILE ITEMS.
إذا تم تفعيل تقادم كلمة السر للحساب، فقد يُطالب المستخدم بكلمة سر جديدة قبل المتابعة. في هذه الحالة، يجب تقديم كلمة السر القديمة وإدخال كلمة السر الجديدة قبل المتابعة. يرجى الرجوع إلى passwd(1) لمزيد من المعلومات.
تُضبط معرفات المستخدم والمجموعة وفقاً لقيمهما في ملف /etc/passwd. هناك استثناء واحد إذا كان معرف المستخدم صفراً؛ في هذه الحالة، يُضبط معرف المجموعة الأساسي للحساب فقط. هذا من شأنه أن يسمح لمدير النظام بتسجيل الدخول حتى في حالة وجود مشاكل في الشبكة. تُضبط قيم متغيرات البيئة لـ $HOME و $USER و $SHELL و $PATH و $LOGNAME و $MAIL وفقاً للحقول المناسبة في مدخلة كلمة السر. تكون قيمة $PATH الـ {default} هي /usr/local/bin:/bin:/usr/bin للمستخدمين العاديين، و /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin للجذر (root)، إذا لم تُضبط بخلاف ذلك.
سيُحافظ على متغير البيئة $TERM إذا وجد، وإلا سيُهيأ إلى نوع الطرفية على tty الخاص بك. سيُحافظ على متغيرات البيئة $COLORTERM و $NO_COLOR إذا كانت موجودة.
يُحافظ على متغيرات البيئة الأخرى إذا أُعطي الخيار -p أو إذا كان LOGIN_ENV_SAFELIST معرفاً في /etc/login.defs (انظر أدناه).
يُحافظ دائماً على متغيرات البيئة المعرفة بواسطة PAM.
بعد ذلك، تبدأ صدفة المستخدم. إذا لم تُحدد صدفة للمستخدم بواسطة -s أو في /etc/passwd، تُستخدم /bin/sh. إذا كانت الصدفة المحددة تحتوي على مسافة، تُعامل على أنها مخطوطة صدفة. إذا لم يكن هناك دليل منزل محدد في /etc/passwd، يُستخدم /، متبوعاً بفحص .hushlogin كما هو موضح أدناه.
إذا وُجد الملف .hushlogin، سيُنفذ ولوج "هادئ". يعطل هذا فحص البريد وطباعة وقت آخر ولوج ورسالة اليوم. وخلاف ذلك، إذا وُجد /var/log/lastlog، يُطبع وقت آخر ولوج، ويُسجل الولوج الحالي.
الخيارات
-p
-f
-h
لاحظ أن الخيار -h له تأثير على اسم خدمة PAM. اسم الخدمة القياسي هو login، ولكن مع الخيار -h، يصبح الاسم remote. من الضروري إنشاء ملفات ضبط PAM مناسبة (على سبيل المثال، /etc/pam.d/login و /etc/pam.d/remote).
-H
-s، --shell الصدفة
-h، --help
-V، --version
عناصر ملف الضبط
يقرأ login ملف الضبط /etc/login.defs (انظر login.defs(5)). لاحظ أن ملف الضبط قد يُوزع مع حزمة أخرى (عادة shadow-utils). عناصر الضبط التالية ذات صلة بـ login:
MOTD_FILE (string)
القيمة المبدئية هي /usr/share/misc/motd:/run/motd:/etc/motd. إذا كان عنصر MOTD_FILE فارغًا أو كان الولوج الهادئ مفعلاً، فلن تُعرض رسالة اليوم. لاحظ أن الوظيفة نفسها توفرها أيضًا وحدة PAM المسماة pam_motd(8).
الأدلة في MOTD_FILE متاحة منذ الإصدار 2.36.
لاحظ أن login لا يطبق أي سلوك لتجاوز أسماء الملفات مثل pam_motd (انظر أيضًا MOTD_FIRSTONLY)، بل يُعرض كامل المحتوى من كافة الملفات. يوصى بإبقاء المنطق الإضافي في مولدات المحتوى واستخدام /run/motd.d بدلاً من الاعتماد على سلوك التجاوز المبرمج بصلابة في أدوات النظام.
MOTD_FIRSTONLY (boolean)
LOGIN_ENV_SAFELIST (string)
LOGIN_PLAIN_PROMPT (boolean)
LOGIN_TIMEOUT (number)
LOGIN_RETRIES (number)
LOGIN_KEEP_USERNAME (منطقي)
FAIL_DELAY (number)
TTYPERM (string)
TTYGROUP (string)
يمكن أن تكون TTYGROUP إما اسم مجموعة أو معرف مجموعة رقمي. انظر أيضًا mesg(1).
HUSHLOGIN_FILE (string)
إذا لم يُحدد مسار كامل، فسيُفعل الوضع الهادئ إذا وُجد الملف في دليل المنزل للمستخدم.
المبدئي هو فحص /etc/hushlogins وإذا لم يكن موجودًا يُفحص ~/.hushlogin.
إذا كان عنصر HUSHLOGIN_FILE فارغًا، فستُعطل جميع عمليات الفحص.
DEFAULT_HOME (boolean)
LASTLOG_UID_MAX (رقم غير موقع)
LOG_UNKFAIL_ENAB (منطقي)
لاحظ أن تسجيل أسماء المستخدمين غير المعروفة قد يمثل مشكلة أمنية إذا أدخل المستخدم كلمة مروره بدلاً من اسم الولوج الخاص به.
ENV_PATH (string)
ENV_ROOTPATH (string), ENV_SUPATH (سلسلة محارف)
LOGIN_SHELL_FALLBACK (منطقي)
الملفات
/var/run/utmp، و /var/log/wtmp، و /var/log/lastlog، و /var/spool/mail/*، و /etc/motd، و /etc/passwd، و /etc/nologin، و /etc/pam.d/login، و /etc/pam.d/remote، و /etc/hushlogins، و $HOME/.hushlogin
بيانات الاعتماد
يدعم login الضبط عبر بيانات اعتماد systemd (راجع https://systemd.io/CREDENTIALS/). يقرأ login بيانات اعتماد systemd التالية:
login.noauth (منطقي)
العلل
خيار BSD -r غير الموثق غير متاح. قد يكون هذا مطلوباً من قبل بعض برامج rlogind(8).
الولوج المتداخل، كما كان ممكناً في الأيام الخوالي، لم يعد يعمل؛ ويُعد su(1) بديلاً كافياً لمعظم الأغراض. في الواقع، ولأسباب أمنية، يُجري login استدعاء نظام vhangup(2) لإزالة أي عمليات تنصت محتملة على الـ tty. يهدف هذا إلى تجنب شم كلمة السر. إذا استُخدم الأمر login، فستُقتل الصدفة المحيطة بواسطة vhangup(2) لأنها لم تعد المالك الحقيقي للـ tty. يمكن تجنب ذلك باستخدام exec login في صدفة عالية المستوى أو xterm.
المؤلفين
اشتق من BSD login 5.40 (5/9/89) بواسطة Michael Glad <glad@daimi.dk> لـ HP-UX. نُقل إلى لينكس 0.12 بواسطة: Peter Orbaek <poe@daimi.aau.dk>. أُعيدت كتابته لنسخة PAM فقط بواسطة Karel Zak <kzak@redhat.com>
انظر أيضاً
mail(1)، و passwd(1)، و passwd(5)، و utmp(5)، و environ(7)، و getty(8)، و init(8)، و lastlog(8)، و shutdown(8)
التبليغ عن الأخطاء
لتقارير العِلل، استخدم مُتتبع المشكلات https://github.com/util-linux/util-linux/issues.
التوفر
الأمر login جزء من حزمة util-linux التي يمكن تنزيلها من أرشيف نواة لينكس https://www.kernel.org/pub/linux/utils/util-linux/.
| 2026-05-18 | util-linux 2.42.1 |