الأخبار التكنولوجية والاستعراضات والنصائح!

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار)

يتضمن حذف مستخدم على Linux أكثر مما تعتقد. إذا كنت مسؤول نظام ، فستحتاج إلى إزالة جميع آثار الحساب والوصول إليه من أنظمتك. نعرض لك الخطوات التي يجب اتخاذها.

إذا كنت ترغب فقط في إزالة حساب مستخدم من نظامك ولم تكن مهتمًا بإنهاء أي عمليات قيد التشغيل ومهام تنظيف أخرى ، فاتبع الخطوات الموجودة في قسم “إزالة حساب المستخدم” أدناه. تحتاج إلى الأمر deluser في التوزيعات القائمة على دبيان والأمر userdel في توزيعات Linux الأخرى.

حسابات المستخدمين على Linux

منذ ظهور أنظمة مشاركة الوقت لأول مرة في أوائل الستينيات وأتاحت قدرة العديد من المستخدمين على العمل على جهاز كمبيوتر واحد ، كانت هناك حاجة لعزل وتقسيم الملفات والبيانات لكل مستخدم عن جميع المستخدمين الآخرين. وهكذا ولدت حسابات المستخدمين – وكلمات المرور.

حسابات المستخدمين لها النفقات الإدارية. يجب إنشاؤها عندما يحتاج المستخدم أولاً إلى الوصول إلى الكمبيوتر. يجب إزالتها عندما لم تعد هناك حاجة إلى هذا الوصول. في نظام Linux ، هناك سلسلة من الخطوات التي يجب اتباعها لإزالة المستخدم وملفاته وحسابه بشكل صحيح ومنهجي من جهاز الكمبيوتر.

إذا كنت مسؤول نظام ، فإن المسؤولية تقع على عاتقك. إليك كيفية المضي قدمًا.

السيناريو الخاص بنا

هناك العديد من الأسباب التي قد تدفعك إلى حذف الحساب. قد ينتقل الموظف إلى فريق آخر أو يغادر الشركة تمامًا. ربما تم إنشاء الحساب من أجل تعاون قصير المدى مع زائر من شركة أخرى. تعد مجموعات العمل الجماعي أمرًا شائعًا في الأوساط الأكاديمية ، حيث يمكن أن تمتد المشاريع البحثية إلى الأقسام والجامعات المختلفة وحتى الكيانات التجارية. في نهاية المشروع ، يجب على مسؤول النظام إدارة التدبير المنزلي وإزالة الحسابات غير الضرورية.

السيناريو الأسوأ هو عندما يغادر شخص ما تحت سحابة بسبب جنحة. عادة ما تحدث مثل هذه الأحداث فجأة ، دون سابق إنذار. إنه يمنح مسؤول النظام القليل من الوقت للتخطيط ووقتًا عاجلاً لإغلاق الحساب وإغلاقه وحذفه – مع نسخ ملفات المستخدم احتياطيًا في حالة الحاجة إليها في الطب الشرعي بعد الإغلاق.

في السيناريو الخاص بنا ، سوف نتظاهر بأن المستخدم ، إريك ، قد فعل شيئًا يستدعي إزالته على الفور من المبنى. في هذه اللحظة هو غير مدرك لذلك ، لا يزال يعمل وقام بتسجيل الدخول. بمجرد أن تهز رأسك للأمن ، سيتم اصطحابه من المبنى.

كل شيء واضح. كل العيون عليك.

تحقق من تسجيل الدخول

دعونا نرى ما إذا كان قد قام بالفعل بتسجيل الدخول ، وإذا كان كذلك ، فكم عدد الجلسات التي يعمل معها. سيدرج القائد الجلسات النشطة.

منظمة الصحة العالمية

تم تسجيل دخول إريك مرة واحدة. دعونا نرى ما هي العمليات التي يديرها.

راجع عمليات المستخدم

يمكننا استخدام الأمر ps لسرد العمليات التي يشغلها هذا المستخدم. يسمح لنا الخيار -u (المستخدم) بإخبار ps أن يقصر مخرجاته على العمليات التي تعمل تحت ملكية حساب المستخدم هذا.

ملاحظة – يو إيريك

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 1

يمكننا رؤية نفس العمليات بمزيد من المعلومات باستخدام الأمر العلوي. يحتوي الجزء العلوي أيضًا على خيار -U (مستخدم) لقصر الإخراج على العمليات التي يمتلكها مستخدم واحد. لاحظ أن هذه المرة حرف “U” كبير.

أعلى – U eric

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 2

يمكننا أن نرى استخدام الذاكرة ووحدة المعالجة المركزية لكل مهمة ويمكننا البحث بسرعة عن أي شيء به نشاط مشبوه. نحن على وشك إنهاء جميع عملياته بالقوة ، لذلك من الآمن قضاء بعض الوقت لمراجعة العمليات بسرعة والتحقق والتأكد من عدم إزعاج المستخدمين الآخرين عندما تقتل عمليات حساب المستخدم.

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 3

لا يبدو أنه يفعل الكثير ، فقط يستخدم أقل لعرض ملف. نحن واثقون من الاستمرار. ولكن قبل أن نقتل عملياته ، نقوم بتجميد الحساب عن طريق قفل كلمة المرور.

يقفل الحساب

نحن نغلق الحساب قبل أن نقتل العمليات لأننا عندما نقتل العمليات فإنه سيتم تسجيل خروج المستخدم. إذا قمنا بالفعل بتغيير كلمة المرور الخاصة به ، فلن يتمكن من تسجيل الدخول مرة أخرى.

يتم تخزين كلمات مرور المستخدم المشفرة في ملف / etc / shadow. لن تهتم عادةً بهذه الخطوات التالية ، ولكن حتى تتمكن من رؤية ما يحدث في ملف / etc / shadow عند قفل الحساب ، سنتخذ منعطفًا بسيطًا. يمكننا استخدام الأمر التالي للنظر في أول حقلين من سجل حساب المستخدم eric.

sudo awk -F: ‘/ eric / {print $ 1، $ 2}’ / etc / shadow

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 4

يوزع الأمر awk الحقول من الملفات النصية وربما يعالجها. نستخدم الخيار -F (فاصل المجال) لنخبر awk أن الملف يستخدم نقطتين “:” لفصل الحقول. سنبحث عن سطر يحتوي على نمط “eric” ، ولمطابقة الأسطر ، نقوم بطباعة الحقلين الأول والثاني. هذا هو اسم الحساب وكلمة المرور المشفرة.

يتم طباعة سجل حساب المستخدم eric لنا.

لقفل الحساب ، نستخدم الأمر passwd. نستخدم الخيار -l (القفل) ونمرر اسم حساب المستخدم للقفل.

sudo passwd -l eric

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 5

إذا تحققنا من الملف / etc / passwd مرة أخرى ، فسنرى ما حدث.

sudo awk -F: ‘/ eric / {print $ 1، $ 2}’ / etc / shadow

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 6

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

الآن بعد أن منعنا المستخدم من تسجيل الدخول مرة أخرى ، يمكننا قتل عملياته وتسجيل الخروج منه.

لقتل العمليات

هناك طرق مختلفة لقتل عمليات المستخدم ، لكن الأمر الموضح هنا متاح على نطاق واسع وهو تطبيق أكثر حداثة من بعض البدائل. سيجد الأمر pkill العمليات ويقتلها. نرسل إشارة DEAD ونستخدم الخيار -u (المستخدم).

sudo pkill -kill -u eric

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 7

يتم إرجاعك إلى موجه الأوامر بطريقة مناهضة للذروة. دعنا نتحقق من الشخص مرة أخرى للتأكد من حدوث شيء ما:

منظمة الصحة العالمية

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 8

ذهبت جلسته. لقد تم تسجيل خروجه وتوقفت عملياته. لقد أخرجت من الوضع بعضًا من الإلحاح. الآن يمكننا الاسترخاء قليلاً والاستمرار في بقية عملية المسح بينما يتجول حارس الأمن إلى مكتب إريك.

أرشفة الدليل الرئيسي للمستخدم

لا يُستبعد في مثل هذا السيناريو ، أن الوصول إلى ملفات المستخدم سيكون مطلوبًا في المستقبل. إما كجزء من التحقيق أو ببساطة لأن من يحل محلهم قد يحتاج إلى الرجوع إلى عمل سلفهم. نستخدم الأمر tar لأرشفة الدليل الرئيسي بأكمله.

الخيارات التي نستخدمها هي:

c: إنشاء ملف أرشيف. f: استخدم اسم الملف المحدد لاسم الأرشيف. j: استخدم ضغط bzip2. v: توفير إخراج مطول عند إنشاء الأرشيف.

sudo tar cfjv eric-20200820.tar.bz / home / eric

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 9

سيتم تمرير الكثير من إخراج الشاشة في نافذة المحطة. للتحقق من إنشاء الأرشيف ، استخدم الأمر ls. نستخدم الخيارين -l (التنسيق الطويل) و -h (يمكن للبشر قراءته).

ls -lh eric-20200802.tar.bz

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 10

تم إنشاء ملف بحجم 722 ميغا بايت. يمكن نسخ هذا في مكان آمن لمراجعته لاحقًا.

قم بإزالة وظائف cron

من الأفضل أن نتحقق مما إذا كانت هناك أي وظائف cron مجدولة لحساب المستخدم eric. وظيفة cron هي أمر يتم تشغيله في أوقات أو فترات زمنية محددة. يمكننا التحقق مما إذا كانت هناك أي وظائف cron مجدولة لحساب المستخدم هذا باستخدام ls:

sudo ls -lh / var / spool / cron / crontabs / eric

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 11

إذا كان هناك شيء ما في هذا الموقع ، فهذا يعني أن هناك وظائف cron في قائمة الانتظار لحساب المستخدم هذا. يمكننا إزالتها باستخدام هذا الأمر crontab. يقوم الخيار -r (إزالة) بإزالة الوظائف ، ويخبر الخيار -u (المستخدم) crontab بالوظائف التي يجب إزالتها.

sudo crontab -r -u eric

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 12

تم حذف الوظائف بصمت. لكل ما نعرفه ، إذا كان إريك قد اشتبه في أنه على وشك الطرد ، فربما يكون قد خطط لعمل ضار. هذه الخطوة هي أفضل ممارسة.

احذف مهام الطباعة

ربما كان لدى المستخدم مهام طباعة معلقة؟ فقط لنكون بأمان ، يمكننا مسح قائمة انتظار الطباعة لجميع المهام التي تنتمي إلى حساب المستخدم eric. يقوم الأمر lprm بإزالة المهام من قائمة انتظار الطباعة. يتيح لك الخيار -U (اسم المستخدم) حذف الوظائف المملوكة لحساب المستخدم المحدد:

lprm – U eric

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 13

يتم حذف المهام والعودة إلى سطر الأوامر.

احذف حساب المستخدم

لقد قمنا بالفعل بنسخ الملفات احتياطيًا من الدليل / home / eric / ، حتى نتمكن من المضي قدمًا وحذف حساب المستخدم وحذف الدليل / home / eric / في نفس الوقت.

يعتمد الأمر المراد استخدامه على توزيع Linux الذي تستخدمه. بالنسبة لتوزيعات Linux التي تستند إلى Debian ، يكون الأمر partuser ، وبالنسبة لبقية عالم Linux فهو مستخدم جزئي.

في الواقع ، يتوفر كلا الأمرين في Ubuntu. توقعت أن يكون أحدهما اسمًا مستعارًا للآخر ، لكنهما ثنائيات متميزة.

اكتب المخادع اكتب userdel

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 14

على الرغم من توفر كلاهما ، إلا أن التوصية هي استخدام deluse في التوزيعات المشتقة من دبيان:

“userdel هو أداة منخفضة المستوى لحذف المستخدمين. في دبيان ، يجب أن يستخدم المسؤولون عادةً deluser (8) بدلاً من ذلك. “

هذا واضح بما فيه الكفاية ، لذا فإن الأمر الذي يجب استخدامه على كمبيوتر Ubuntu هذا هو المستخدم. نظرًا لأننا نريد أيضًا إزالة دليل المنزل الخاص بهم ، فإننا نستخدم علامة –remove-home:

sudo deluser – إزالة المنزل eric

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 15

الأمر الذي يجب استخدامه للتوزيعات التي لا تتبع ديبيان هو userdel ، مع العلامة –remove:

sudo userdel – إزالة ملف eric

تم حذف جميع آثار حساب المستخدم eric. يمكننا التحقق من إزالة الدليل / home / eric /:

ls / المنزل

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 16

تمت إزالة مجموعة Eric أيضًا لأن حساب المستخدم eric كان الإدخال الوحيد فيها. يمكننا التحقق من ذلك بسهولة تامة عن طريق تمرير محتويات / etc / group عبر grep:

sudo less / etc / group | أمسك إيريك

كيفية حذف مستخدم على نظام Linux (وحذف كل مسار) 17

انها التفاف

ذهب إريك من أجل خطاياه. لا يزال الأمان يخرجه من المبنى وقد قمت بالفعل بتأمين ملفاته وأرشفتها وحذف حسابه ومسح النظام من أي بقايا طعام.

الدقة تتفوق دائمًا على السرعة. تأكد من مراعاة كل خطوة قبل القيام بها. أنت لا تريد أن يصعد شخص ما إلى مكتبك ويقول ، “لا ، إريك الآخر.”