كيفية إعادة تعيين كلمة مرور Ubuntu المنسية عبر Recovery Mode

مشاركة

إذا نسيت كلمة مرور حسابك المحلي في Ubuntu، فلا تحتاج عادةً إلى إعادة تثبيت النظام أو حذف ملفاتك. يمكنك الدخول إلى Recovery Mode من قائمة GRUB، فتح سطر أوامر بصلاحيات root، ثم استخدام الأمر passwd لتعيين كلمة مرور جديدة.

كيفية إعادة تعيين كلمة مرور Ubuntu المنسية عبر Recovery Mode

الخطوة التي تسبب المشكلة لكثير من المستخدمين هي أن نظام الملفات الجذري قد يكون محمّلًا للقراءة فقط Read-only داخل وضع الاسترداد. في هذه الحالة يجب أولًا إعادة تحميله بوضع القراءة والكتابة قبل تنفيذ passwd.

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

ما الذي يحدث عند إعادة تعيين كلمة مرور Ubuntu؟

لا يحتفظ Ubuntu بكلمة مرور حسابك كنص يمكن عرضه واسترجاعه لاحقًا. معلومات المصادقة الخاصة بالحسابات المحلية تُدار عبر نظام كلمات المرور في Linux، وتوضح صفحات Ubuntu الخاصة بالأمر passwd أن المستخدم الجذر يستطيع تعيين كلمة مرور جديدة لحساب من دون معرفة كلمة المرور القديمة.

لذلك ما سنفعله هنا هو Reset وليس استعادة كلمة المرور الأصلية.

يمكن الرجوع إلى توثيق Ubuntu للأمر passwd لمعرفة كيفية عمل تغيير كلمات مرور الحسابات.

قبل البدء: تأكد أنك نسيت كلمة مرور الحساب وليس كلمة مرور القرص

من المهم التمييز بين نوعين مختلفين من كلمات المرور:

  • كلمة مرور مستخدم Ubuntu: تظهر في شاشة تسجيل الدخول وتستخدم أيضًا مع أوامر مثل sudo.
  • كلمة مرور تشفير القرص: قد تظهر قبل وصول Ubuntu إلى شاشة تسجيل الدخول عندما يكون القرص مشفرًا.

الخطوات التالية تعالج النوع الأول فقط.

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

الخطوة 1: افتح قائمة GRUB عند تشغيل Ubuntu

أعد تشغيل الكمبيوتر. أثناء بداية الإقلاع، اضغط مع الاستمرار على مفتاح Shift الأيمن حتى تظهر قائمة GRUB.

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

توضح وثائق Ubuntu الحالية للدخول إلى Recovery Mode التسلسل نفسه: إعادة التشغيل، إظهار GRUB، اختيار الخيارات المتقدمة، ثم الدخول إلى وضع الاسترداد وفتح root shell.

إذا كنت تستخدم أكثر من نظام تشغيل على الجهاز، فإن GRUB هو محمل الإقلاع الذي يسمح باختيار النظام أو خيارات Ubuntu المتقدمة. ويمكنك التعرف على دوره بصورة أوسع ضمن دليل Dual Boot وGRUB.

الخطوة 2: اختر Advanced options for Ubuntu

بعد ظهور قائمة GRUB، استخدم مفاتيح الأسهم وحدد:

Advanced options for Ubuntu

ثم اضغط Enter.

ستظهر غالبًا عدة إصدارات من Linux Kernel المثبتة على الجهاز، وقد تجد لكل إصدار إدخالًا عاديًا وآخر ينتهي بعبارة:

(recovery mode)

اختر Recovery Mode الخاص بأحدث Kernel تستخدمه عادةً، ثم اضغط Enter.

الخطوة 3: افتح root shell من Recovery Menu

انتظر حتى تظهر قائمة Recovery Menu. من الخيارات الموجودة اختر:

root - Drop to root shell prompt

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

root@computer:~#

امتلاك صلاحيات root هو ما يسمح بتغيير كلمة مرور حساب آخر من دون إدخال كلمة المرور القديمة.

خطوات إعادة تعيين كلمة مرور Ubuntu عبر GRUB وRecovery Mode، من اختيار root shell إلى تنفيذ mount وpasswd.
بعد الدخول إلى root shell، يجب جعل القسم الجذري قابلًا للكتابة قبل تنفيذ passwd إذا كان Recovery Mode قد حمّله بوضع Read-only.

الخطوة 4: حل مشكلة Read-only قبل تغيير كلمة المرور

في Recovery Mode قد يكون نظام الملفات الجذري / محمّلًا للقراءة فقط. إذا حاولت تغيير كلمة المرور في هذه الحالة فلن يستطيع النظام حفظ البيانات الجديدة بصورة صحيحة.

أعد تحميل القسم الجذري بوضع القراءة والكتابة:

mount -o remount,rw /

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

هذه الخطوة هي الحل الأساسي عندما تكون المشكلة مرتبطة بحالة Read-only filesystem.

الخطوة 5: حدد اسم المستخدم الصحيح

الأمر passwd يحتاج إلى اسم تسجيل الدخول للحساب، وليس الاسم الكامل الذي قد يظهر في واجهة Ubuntu.

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

إذا نسيته، يمكن أن يساعدك عرض المجلدات الموجودة داخل /home:

ls /home

في تثبيت Ubuntu المعتاد يكون لكل مستخدم محلي مجلد Home يحمل اسم تسجيل الدخول الخاص به. على سبيل المثال، إذا ظهرت:

ahmed

فعادةً يكون اسم المستخدم المطلوب هو ahmed.

الخطوة 6: أعد تعيين كلمة مرور Ubuntu

نفذ الأمر التالي مع استبدال username باسم حسابك الحقيقي:

passwd username

مثال:

passwd ahmed

سيطلب Ubuntu إدخال كلمة المرور الجديدة:

New password:

اكتب كلمة المرور الجديدة ثم اضغط Enter. لن تظهر أحرف أو نجوم أثناء الكتابة، وهذا طبيعي في Terminal ولا يعني أن لوحة المفاتيح لا تعمل.

بعد ذلك سيطلب منك إدخالها مرة ثانية:

Retype new password:

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

الخطوة 7: احفظ التغييرات وأعد تشغيل الجهاز

بعد نجاح passwd يمكنك تنفيذ:

sync
reboot

يقوم sync بطلب كتابة التغييرات المعلقة إلى التخزين، ثم يعيد reboot تشغيل الجهاز.

اترك Ubuntu يبدأ بصورة طبيعية هذه المرة، ثم أدخل كلمة المرور الجديدة في شاشة تسجيل الدخول.

ماذا أفعل إذا ظهر خطأ عند تنفيذ passwd؟

النظام ما زال Read-only

إذا ظهر خطأ يشير إلى أن نظام الملفات للقراءة فقط، فتأكد من تنفيذ:

mount -o remount,rw /

ثم أعد تنفيذ:

passwd username

اسم المستخدم غير موجود

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

يمكنك العودة إلى:

ls /home

للتحقق من أسماء مجلدات المستخدمين المعتادة.

لا أستطيع الكتابة داخل Terminal

عند إدخال كلمة مرور جديدة لا يعرض Terminal الأحرف التي تكتبها ولا حتى رموز *. اكتبها بصورة طبيعية واضغط Enter.

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

ماذا أفعل إذا لم تظهر قائمة GRUB؟

ابدأ بالضغط المستمر على Shift الأيمن أثناء الإقلاع. وإذا لم يعمل ذلك، جرّب الضغط المتكرر على Esc.

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

ولا توجد قاعدة عامة تستلزم تعطيل Secure Boot لمجرد الدخول إلى Recovery Mode؛ لذلك لا تغيّر إعدادات UEFI أو Secure Boot بلا سبب محدد.

ماذا لو لم يظهر خيار Recovery Mode؟

قد لا يظهر خيار Recovery Mode في بعض إعدادات GRUB المخصصة، أو قد تكون إدخالات الاسترداد معطلة من إعدادات محمل الإقلاع.

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

sudo passwd username

أما إذا لم يتوفر حساب إداري ولا Recovery Mode، فيمكن استخدام Ubuntu Live USB للوصول إلى النظام المثبت وإجراء الاسترداد، لكن ذلك يحتاج إلى تحديد أقسام النظام وتركيبها بطريقة صحيحة، ولذلك لا يُنصح بتنفيذ أوامر chroot عشوائية على أقسام لا تعرف وظيفتها.

ماذا يحدث إذا كان قرص Ubuntu مشفرًا؟

إعادة تعيين كلمة مرور المستخدم لا تعني فك تشفير القرص.

في تثبيت يعتمد على تشفير LUKS التقليدي، يجب أولًا امتلاك بيانات فتح القرص حتى يتمكن Ubuntu من الوصول إلى نظام الملفات الذي يحتوي على حسابات المستخدمين.

كما توفر إصدارات Ubuntu الحديثة خيارات أخرى لتشفير القرص، بما فيها التشفير المدعوم بواسطة TPM على الأجهزة المتوافقة. في بعض الحالات قد يطلب النظام Recovery Key قبل السماح بالوصول إلى البيانات.

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

لماذا أصبحت بعض التطبيقات تطلب كلمة مرور Keyring القديمة؟

هناك أثر جانبي مهم قد يظهر بعد إعادة تعيين كلمة مرور Ubuntu من root.

يستخدم Ubuntu Desktop عادةً GNOME Keyring لتخزين أسرار مثل كلمات مرور بعض التطبيقات والاتصالات. عندما تغير كلمة مرورك بالطريقة العادية وأنت تعرف القديمة، يستطيع النظام مزامنة كلمة مرور Login Keyring معها.

لكن عند إعادة تعيين كلمة المرور بصلاحيات root، لا تكون كلمة المرور القديمة متاحة. لذلك قد يبقى Login Keyring محميًا بكلمة المرور السابقة، وتجد بعد تسجيل الدخول أن تطبيقًا يطلب كلمة مرور Keyring القديمة.

إذا كنت تعرف كلمة المرور القديمة للـKeyring، يمكنك تغييرها من تطبيق Passwords and Keys، وتشرح وثائق GNOME طريقة تحديث كلمة مرور Keyring.

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

هل تؤدي إعادة تعيين كلمة المرور إلى حذف الملفات؟

تغيير كلمة مرور حساب محلي باستخدام passwd لا يعيد تثبيت Ubuntu ولا يحذف ملفاتك الموجودة في مجلد Home.

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

لماذا يستطيع Recovery Mode تغيير كلمة المرور دون القديمة؟

لأن Recovery Mode يسمح، في الأنظمة التي تتيح هذا الخيار، بالوصول إلى بيئة إدارية بصلاحيات root. والمستخدم الجذر يملك صلاحية تغيير كلمة مرور الحسابات المحلية.

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

الخلاصة

لإعادة تعيين كلمة مرور حساب Ubuntu محلي نسيتها، افتح GRUB، ثم Advanced options for Ubuntu، واختر Recovery Mode ثم root shell. بعد ذلك اجعل نظام الملفات قابلًا للكتابة:

mount -o remount,rw /

ثم عيّن كلمة المرور الجديدة:

passwd username

وأخيرًا نفذ:

sync
reboot

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

شارك برأيك

لديك إضافة، سؤال أو تجربة مرتبطة بالموضوع؟ اكتبها وشارك بها القراء.