لينكس: كيفية عرض قائمة بجميع المستخدمين

لعرض جميع المستخدمين على نظام لينكس، يُعد الأمر getent هو الأنسب للاستخدام العام getent passwd. أما إذا كنت ترغب فقط في عرض أسماء المستخدمين، فقم بتشغيل الأمر getent getent passwd | cut -d: -f1. عادةً ما يكون هذا الأمر أكثر شمولاً من القراءة /etc/passwdالمباشرة، لأن getent يتبع إعدادات نظام تبديل خدمة الأسماء (NSS) ، وبالتالي يمكنه تضمين الحسابات المُقدمة من خدمات مثل LDAP أو مصادر الهوية الأخرى المُهيأة.

اعرض جميع المستخدمين الذين لديهم getent

افتح نافذة طرفية وقم بتشغيل الأمر التالي:

getent passwd

كل سطر يمثل سجل مستخدم. لعرض أسماء المستخدمين فقط، استخدم:

getent passwd | cut -d: -f1

يمكنك أيضًا فحص حساب واحد معروف دون الحاجة إلى التمرير عبر القائمة الكاملة:

getent passwd alice

passwdتوضح وثائق مكتبة GNU C أن NSS يتحكم في كيفية حل قواعد بيانات النظام، مثل قاعدة البيانات، من خلال /etc/nsswitch.conf. راجع وثائق مكتبة GNU C الخاصة بـ NSS .

طرفية لينكس تعرض أمر getent passwd وسجلات حسابات المستخدمين المتعددة
getent passwdيعرض سجلات الحسابات المتاحة من خلال مصادر قاعدة بيانات المستخدم المُكوّنة.

عرض قائمة المستخدمين المحليين من ملف /etc/passwd

إذا كنت ترغب تحديدًا في تخزين الحسابات في قاعدة بيانات كلمات المرور المحلية، فاقرأ الملف /etc/passwd. يحتوي الملف على سجل واحد مفصول بنقطتين رأسيتين لكل حساب محلي. يتضمن السجل النموذجي اسم المستخدم، ومكان كلمة المرور، وUID، وGID الأساسي، وحقل التعليقات، ودليل المستخدم، وواجهة تسجيل الدخول.

لأسماء المستخدمين فقط:

cut -d: -f1 /etc/passwd

ويمكن الحصول على النتيجة نفسها باستخدام awk:

awk -F: '{print $1}' /etc/passwd

تتضمن هذه القائمة عادةً كلاً من المستخدمين البشريين وحسابات الخدمة مثل root، daemonأو الحسابات التي تم إنشاؤها بواسطة البرامج المثبتة.

طرفية لينكس تعرض عملية استخراج أسماء المستخدمين من ملف /etc/passwd المحلي
يستخرج الأمر cutالحقل الأول فقط، وهو اسم المستخدم.

عرض سجلات الحساب المحلي الكاملة

لمعاينة الملف المحلي بالكامل، استخدم lessالأمر التالي لتتمكن من التمرير بسهولة:

less /etc/passwd

يمكنك أيضًا طباعة الملف مباشرة:

cat /etc/passwd

في أنظمة لينكس الحديثة، يحتوي حقل كلمة المرور عادةً على x. هذا لا يعني أن كلمة المرور تُخزّن كنص عادي في /etc/passwd؛ عادةً ما تُحفظ تجزئات كلمات المرور بشكل منفصل في /etc/shadow، والذي يتمتع بصلاحيات أكثر تقييدًا. يوثّق مشروع صفحات دليل لينكس الحقول السبعة وسلوك كلمة المرور الظلية هذا في passwd(5) .

طرفية لينكس تعرض سجلات كاملة مفصولة بنقطتين رأسيتين من ملف /etc/passwd
يحتوي الإدخال الكامل /etc/passwdعلى اسم المستخدم، ومعرف المستخدم (UID)، ومعرف المجموعة (GID)، ودليل المستخدم الرئيسي، والصدف، وحقول الحساب الأخرى.

اعرض أسماء المستخدمين باستخدام Bash compgen

إذا كنت تستخدم Bash، compgenفيمكنك إنشاء مرشحين لإكمال اسم المستخدم:

compgen -u

للحصول على نتيجة طويلة، تصفحها باستخدام:

compgen -u | less

أو قم بإزالة الأسماء المكررة وفرز الناتج:

compgen -u | sort -u

compgenهي وظيفة مدمجة في Bash، لذا فهي أقل شمولية من getentتلك المستخدمة في البرامج النصية التي يجب أن تعمل عبر مختلف أنواع الصدفات. يوثق دليل GNU Bashcompgen هذه الوظيفة كجزء من إمكانيات الإكمال التلقائي القابلة للبرمجة في Bash.

طرفية لينكس تعرض الأمر compgen -u موجهًا إلى less مع قائمة أسماء المستخدمين مُقسّمة إلى صفحات
في Bash، compgen -u | lessيوفر قائمة بأسماء المستخدمين مُقسّمة إلى صفحات.

كيفية عرض المستخدمين العاديين بدلاً من حسابات الخدمة

لا يوجد حد أدنى مُحدد لمعرف المستخدم (UID) يُناسب جميع توزيعات لينكس أو المؤسسات. تُخصص العديد من الأنظمة معرفات مستخدم منخفضة لحسابات النظام، وتُخصص معرفات للمستخدمين العاديين بناءً على حد أدنى مُحدد، ولكن هذه السياسة قد تختلف. إذا كان نظامك يستخدم معرفات مستخدم مُحددة /etc/login.defs، فيمكنك التحقق من الحد الأدنى المُحدد له باستخدام الأمر التالي:

grep '^UID_MIN' /etc/login.defs

يمكنك أيضًا البحث عن حسابات ذات واجهات تفاعلية كدليل عملي:

getent passwd | awk -F: '$7 !~ /(nologin|false)$/ {print $1}'

هذا مجرد دليل إرشادي: يمكن أن يكون للحساب واجهة تفاعلية دون أن يكون مستخدمًا عاديًا لسطح المكتب، وقد يتبع المستخدمون الذين تتم إدارتهم خارجيًا سياسات UID مختلفة.

حفظ قائمة المستخدمين أو عدّها أو البحث فيها

بمجرد حصولك على القائمة التي تحتاجها، تسهل أدوات سطر الأوامر القياسية إعادة استخدامها:

  • حفظ أسماء المستخدمين: getent passwd | cut -d: -f1 > ~/linux-users.txt
  • عدد الحسابات المُعادة: getent passwd | cut -d: -f1 | wc -l
  • ابحث عن حساب واحد: getent passwd username

أي طريقة يجب أن تستخدم؟

أمرالأفضل لـ
getent passwdأفضل إعداد افتراضي؛ يتبع مصادر مستخدم NSS المُكوّنة
cut -d: -f1 /etc/passwdأسماء المستخدمين المحليين فقط
cat /etc/passwdأوless /etc/passwdفحص سجلات الحسابات المحلية الكاملة
compgen -uعرض سريع لأسماء المستخدمين من Bash

بالنسبة لمعظم المسؤولين ومستخدمي أجهزة الكمبيوتر المكتبية، ابدأ بـ getent passwd | cut -d: -f1. استخدم هذا الخيار /etc/passwdعندما تحتاج عمدًا إلى حسابات محلية فقط.

اترك تعليقاً

كيفية لعب لعبة Don't Starve Together على نظام لينكس

كيفية لعب لعبة Don't Starve Together على نظام لينكس

قم بتثبيت نسخة لينكس من لعبة Don't Starve Together عبر Steam، وابدأ عالمًا جديدًا، أو انضم إلى أصدقائك باتباع خطوات الإعداد واستكشاف الأخطاء وإصلاحها هذه.

كيفية تشغيل لعبة Squad على نظام Linux باستخدام Steam Proton

كيفية تشغيل لعبة Squad على نظام Linux باستخدام Steam Proton

قم بإعداد Squad على نظام Linux باستخدام Steam Play و Proton، ثم قم بتثبيت اللعبة، واختر أداة التوافق، وقم باستكشاف مشكلات مكافحة الغش وإصلاحها.

كيفية تثبيت نظام لينكس منت ديبيان الإصدار الخامس "إلسي" من خلال USB

كيفية تثبيت نظام لينكس منت ديبيان الإصدار الخامس "إلسي" من خلال USB

قم بتنزيل ملف LMDE 5 ISO المؤرشف والتحقق منه، ثم أنشئ قرص USB قابلًا للإقلاع، واختر إعدادات التثبيت الآمنة. انتهى دعم Elsie؛ راجع إصدار LMDE الحالي.

كيفية إنشاء قرص USB قابل للتشغيل لنظام التشغيل Windows 11 على نظام Linux

كيفية إنشاء قرص USB قابل للتشغيل لنظام التشغيل Windows 11 على نظام Linux

قم بإنشاء قرص USB لتثبيت نظام التشغيل Windows 11 على نظام Linux باستخدام Ventoy: احصل على ملف ISO الرسمي، وقم بتثبيت Ventoy بأمان، وانسخ الصورة، وقم بتشغيل جهاز الكمبيوتر المستهدف.

كيفية تشغيل لعبة It Takes Two على نظام لينكس باستخدام Steam Proton

كيفية تشغيل لعبة It Takes Two على نظام لينكس باستخدام Steam Proton

تعلم كيفية تشغيل لعبة It Takes Two على نظام Linux باستخدام Steam Proton، وتثبيت إصدار Steam، وتمكين التوافق، وإعداد وضع اللعب التعاوني، وحل مشاكل التشغيل.

كيفية تثبيت برنامج Wireshark على أنظمة Linux: أوبونتو، فيدورا، آرتش، وغيرها

كيفية تثبيت برنامج Wireshark على أنظمة Linux: أوبونتو، فيدورا، آرتش، وغيرها

قم بتثبيت Wireshark على Ubuntu أو Debian أو Fedora أو Arch أو openSUSE باستخدام أوامر الحزمة الحالية، ثم قم بتكوين التقاط الحزم المباشر بأمان.

كيفية لعب Slay the Spire على نظام Linux: قم بتثبيته وتشغيله باستخدام Steam

كيفية لعب Slay the Spire على نظام Linux: قم بتثبيته وتشغيله باستخدام Steam

قم بتثبيت Steam على نظام Linux، ثم احصل على نسخة Slay the Spire الأصلية لنظام Linux من مكتبتك، وقم بتشغيلها. يتضمن ذلك خطوات عملية لحل مشاكل بدء التشغيل الشائعة.

كيفية تشغيل لعبة DiRT Rally على نظام لينكس: إعداد Steam وإصلاحات Proton

كيفية تشغيل لعبة DiRT Rally على نظام لينكس: إعداد Steam وإصلاحات Proton

تعلم كيفية تشغيل لعبة DiRT Rally على نظام Linux إذا كنت تمتلكها بالفعل على Steam: قم بتثبيت الإصدار الأصلي، وقم بتشغيله، واستخدم Proton فقط كخيار احتياطي.

كيفية تثبيت ديفوان لينكس من قرص USB قابل للإقلاع

كيفية تثبيت ديفوان لينكس من قرص USB قابل للإقلاع

قم بتثبيت Devuan Excalibur من ملف ISO الخاص بنظام التشغيل المباشر على سطح المكتب. تحقق من التنزيل، أنشئ قرص USB قابل للتشغيل، احمِ الأقسام الموجودة، وأكمل التثبيت باستخدام برنامج Refracta Installer.

كيفية تشغيل لعبة The Forest على نظام Linux باستخدام Steam Proton

كيفية تشغيل لعبة The Forest على نظام Linux باستخدام Steam Proton

قم بتثبيت Steam على نظام Linux، وقم بتمكين Steam Play، واستخدم Proton لتنزيل وتشغيل The Forest، مع إعداد توافق لكل لعبة على حدة إذا لم يبدأ تشغيلها.