.\" -*- coding: UTF-8 -*- '\" t .\" Copyright 2002, Martin Schulze .\" Copyright, Paul Thompson .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH login 3 "8 فبراير 2026" "صفحات دليل لينكس 6.18" .SH الاسم login, logout \- كتابة مدخلات utmp و wtmp .SH المكتبة مكتبة أدوات النظام (\fIlibutil\fP،\ \fI\-lutil\fP) .SH موجز .nf \fB#include \fP .P \fBvoid login(const struct utmp *\fP\fIut\fP\fB);\fP \fBint logout(const char *\fP\fIut_line\fP\fB);\fP .fi .SH الوصف يسجل ملف \fIutmp\fP من يستخدم النظام حاليًا. ويسجل ملف \fIwtmp\fP جميع عمليات الدخول والخروج. انظر \fButmp\fP(5). .P تأخذ الدالة \fBlogin\fP() البنية \fIstruct utmp\fP المقدمة، \fIut\fP، وتكتبها في كل من ملفي \fIutmp\fP و \fIwtmp\fP. .P تمسح الدالة \fBlogout\fP() المدخل في ملف \fIutmp\fP مرة أخرى. .SS "تفاصيل جنو" بشكل أكثر دقة، تأخذ \fBlogin\fP() وسيط البنية \fIut\fP، وتملأ الحقل \fIut\->ut_type\fP (إن وُجد) بالقيمة \fBUSER_PROCESS\fP، وتملأ الحقل \fIut\->ut_pid\fP (إن وُجد) بمعرف العملية للعملية المستدعية. ثم تحاول ملء الحقل \fIut\->ut_line\fP. تأخذ أول \fIstdin\fP أو \fIstdout\fP أو \fIstderr\fP الذي يكون طرفية، وتخزن اسم المسار المقابل بعد إزالة البادئة المحتملة \fI/dev/\fP في هذا الحقل، ثم تكتب البنية إلى ملف \fIutmp\fP. من ناحية أخرى، إن لم يُعثر على اسم طرفية، يُملأ هذا الحقل بـ "???" ولا تُكتب البنية إلى ملف \fIutmp\fP. بعد ذلك، تُكتب البنية إلى ملف \fIwtmp\fP. .P تبحث الدالة \fBlogout\fP() في ملف \fIutmp\fP عن مدخل يطابق وسيط \fIut_line\fP. إن وُجد سجل، يُحدّث بتصفير الحقلين \fIut_name\fP و \fIut_host\fP، وتحديث حقل الطابع الزمني \fIut_tv\fP، وتعيين \fIut_type\fP (إن وُجد) إلى \fBDEAD_PROCESS\fP. .SH "قيمة الإرجاع" تُرجع الدالة \fBlogout\fP() 1 إن كُتب المدخل بنجاح إلى قاعدة البيانات، أو 0 إن حدث خطأ. .SH الملفات .TP \fI/var/run/utmp\fP قاعدة بيانات محاسبة المستخدم، مُهيأة عبر \fB_PATH_UTMP\fP في \fI\fP .TP \fI/var/log/wtmp\fP ملف سجل محاسبة المستخدم، مُهيأ عبر \fB_PATH_WTMP\fP في \fI\fP .SH السمات للاطلاع على شرح للمصطلحات المستخدمة في هذا القسم، انظر \fBattributes\fP(7). .TS allbox; lb lb lbx l l l. الواجهة السمة القيمة T{ .na .nh \fBlogin\fP(), \fBlogout\fP() T} سلامة الخيوط T{ .na .nh غير آمن للمسارات المتعددة (MT\-Unsafe) سباق:utent إشارة:ALRM مؤقت T} .TE .P في الجدول أعلاه، يشير \fIutent\fP في \fIrace:utent\fP إلى أنه إن استُخدمت أي من الدوال \fBsetutent\fP(3) أو \fBgetutent\fP(3) أو \fBendutent\fP(3) بالتوازي في خيوط مختلفة من برنامج، فقد تحدث سباقات بيانات. تستدعي \fBlogin\fP() و \fBlogout\fP() تلك الدوال، لذا نستخدم race:utent لتذكير المستخدمين. .SH الإصدارات يُسمى العضو \fIut_user\fP من \fIstruct utmp\fP بـ \fIut_name\fP في BSD. لذلك، يُعرف \fIut_name\fP كاسم مستعار لـ \fIut_user\fP في \fI\fP. .SH المعايير BSD. .SH "انظر أيضًا" \fBgetutent\fP(3), \fButmp\fP(5) .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .