كيفية إصلاح خطأ GPG: تعذر التحقق من التوقيعات التالية في أوبونتو

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

على سبيل المثال، لنفترض أن sudo apt updateالتقارير NO_PUBKEYالخاصة بمستودع أحد موردي المتصفحات لا تعمل، بينما يتم تحديث سطور الأرشيف الخاصة بنظام أوبونتو بنجاح. الحل المحتمل هو تثبيت مفتاح التوقيع المنشور حاليًا من قِبل ذلك المورد وتحديد نطاقه لهذا المستودع. لن يؤدي إعادة تثبيت سلسلة مفاتيح الأرشيف الخاصة بنظام أوبونتو إلى حل مشكلة مفتاح الطرف الثالث. الأوامر أدناه هي نماذج: استبدل تفاصيل المستودع في المثال بالقيم الواردة في التعليمات الرسمية لناشر البرنامج.

اقرأ الخطأ بدقة قبل تغيير المفاتيح

قم بتشغيل أمر التحديث ولاحظ عنوان URL للمستودع ورمز الخطأ في نفس سطور الإخراج:

sudo apt update

يُحدد نظام إدارة الحزم المتقدمة (APT) عادةً المصدر من خلال عنوان URL الخاص به ومجموعة الإصدارات، مثل noble. jammyفي حال تم تكوين أكثر من مصدر، فقد يُظهر النظام عدة أخطاء. لذا، يُرجى مطابقة كل رسالة مع مستودعها الخاص قبل إجراء أي تغيير. تشير هذه التوقيعات الشائعة إلى أسباب مختلفة:

رسالة أو دليلالمعنى المحتملالإجراء الأول
NO_PUBKEYمفتاح التوقيع العام المطلوب لهذا المستودع غير متاح لـ APT، أو أن المصدر لا يشير إلى ملف المفتاح.حدد مالك المستودع واحصل على مفتاحه الحالي من تعليمات الناشر الرسمية.
EXPKEYSIGانتهت صلاحية المفتاح المستخدم للتوقيع، أو أن إعدادات التوقيع الخاصة بالمستودع تحتاج إلى تحديث.تحقق من إشعار تدوير المفاتيح الحالي للناشر؛ لا تستمر في إعادة تثبيت المفتاح المنتهي الصلاحية.
BADSIGالتوقيع لا يتطابق مع البيانات الوصفية التي استلمها برنامج APT. قد يكون السبب وجود خادم مرآة قديم، أو خادم وكيل، أو تنزيل جزئي، أو مشكلة من جانب المستودع.أعد المحاولة بعد التحقق من المصدر ومسار الشبكة وملفات الفهرس المخزنة مؤقتًا.
Release file is not valid yetأو صيغة زمنية مماثلةقد يكون توقيت النظام متأخراً عن الطابع الزمني الموقع للمستودع.تحقق من تاريخ النظام والمنطقة الزمنية ومزامنة الوقت.
المفتاح موجود، لكن المصدر لا يزال يشير إلى مفتاح غير معروفقد يشير المصدر إلى سلسلة مفاتيح مختلفة، أو مسار خاطئ، أو ملف مفتاح غير قابل للقراءة بواسطة APT.افحص إعدادات المصدر Signed-Byوأذونات سلسلة المفاتيح.

تحقق من ساعة النظام أولاً عندما يذكر الخطأ الوقت

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

timedatectl status

تأكد من دقة التاريخ والوقت المعروضين، وأن مزامنة الوقت مُفعّلة. إذا كان الوقت غير صحيح، فصحّح خدمة الوقت على الجهاز أو فعّل طريقة مزامنة الوقت الشبكية المُهيأة، ثم أعد المحاولة sudo apt update. تجنّب ضبط تاريخ تقريبي يدويًا، إذ يجب أن يعكس الوقت الفعلي. لن يُصلح تصحيح الوقت مفتاح مستودع مفقودًا أو منتهي الصلاحية، لذا إذا استمر ظهور رسالة NO_PUBKEYالخطأ EXPKEYSIG، فتابع خطوات المفتاح ذات الصلة.

إصلاح مفتاح مستودع تابع لجهة خارجية مفقود أو منتهي الصلاحية

توصي إرشادات أوبونتو الحالية بتخزين مفاتيح الجهات الخارجية في سلسلة مفاتيح مخصصة، والإشارة إلى هذا المفتاح من المصدر المطابق Signed-By. هذا يحد من المفاتيح التي يمكنها التحقق من صحة هذا المستودع. تشرح أوبونتو هذا النهج في دليل مستودعات الجهات الخارجية، وتوثق APT كيفية Signed-Byالتحقق من النطاقات في دليل sources.list .

1. ابحث عن المصدر الذي تسبب في الخطأ

اعرض قائمة إدخالات المستودع وابحث عن المضيف الموضح في مخرجات APT:

grep -RniE '^[[:space:]]*(deb|URIs:)' /etc/apt/sources.list /etc/apt/sources.list.d/ 2>/dev/null

تستخدم إصدارات أوبونتو 24.04 والإصدارات الأحدث عادةً ملفات deb822 التي تنتهي بـ .deb822 .sources؛ بينما تستخدم الإصدارات الأقدم عادةً ملفات من سطر واحد تنتهي بـ .deb822 .list. توضح وثائق إدارة حزم أوبونتو هذه التنسيقات المصدرية. لا تقم بتعديل مدخل أرشيف أوبونتو لإصلاح مستودع مورد غير ذي صلة.

2. الحصول على مفتاح الناشر الحالي والتحقق منه

افتح صفحة إعداد مستودع البرنامج الرسمية وتأكد من أنها تتضمن عنوان URL للمستودع، وإصدار أوبونتو المدعوم، وموقع تنزيل مفتاح التوقيع، وبصمة المفتاح الكاملة. نزّل المفتاح فقط من مصدر معتمد من قِبل الناشر. قارن البصمة الكاملة، وليس فقط المعرّف السداسي العشري المختصر الظاهر بعد الفاصلة NO_PUBKEY. يؤكد دليل أمان التهديدات المتقدمة المستمرة (APT) على أهمية الحصول على المفاتيح من خلال قناة موثوقة؛ فالوثوق بمفتاح خاطئ يُضعف عملية التحقق من المستودع.

يستخدم المثال التالي مفتاحًا محميًا بنظام ASCII. استبدل عنوان URL واسم الملف في المثال بالقيم الرسمية للناشر:

curl -fsSLo /tmp/vendor-archive.asc https://packages.vendor.example/ubuntu/archive-key.asc
gpg --show-keys --with-fingerprint /tmp/vendor-archive.asc

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

sudo install -d -m 0755 /etc/apt/keyrings
gpg --dearmor --output /tmp/vendor-archive.gpg /tmp/vendor-archive.asc
sudo install -m 0644 /tmp/vendor-archive.gpg /etc/apt/keyrings/vendor-archive-keyring.gpg

النطاق المذكور هو مثال توضيحي ولن يقوم بتنزيل مفتاح بائع حقيقي. استخدم عنوان URL الخاص بالمفتاح المُتحقق منه والمُقدم من ناشر البرنامج الفعلي. لا تستخدم نتائج البحث في خادم المفاتيح كبديل لتأكيد ملكية المفتاح.

3. تحديد نطاق المفتاح في مصدر المستودع

بالنسبة لإدخال من سطر واحد .list، يكون النمط كالتالي:

deb [signed-by=/etc/apt/keyrings/vendor-archive-keyring.gpg] https://packages.vendor.example/ubuntu noble main

بالنسبة لملف deb822 .sources، تبدو الحقول المقابلة كما يلي:

Types: deb
URIs: https://packages.vendor.example/ubuntu
Suites: noble
Components: main
Signed-By: /etc/apt/keyrings/vendor-archive-keyring.gpg

هذه قوالب، وليست مدخلات مصدر صالحة عالميًا. احتفظ بمعرف الموارد الموحد (URI) ومجموعة البرامج والمكونات من تعليمات الإعداد الرسمية للمورد؛ فقد يتسبب اسم رمز أوبونتو خاطئ في حدوث تعارضات في الحزم حتى لو كان المفتاح صالحًا. تأكد من أن مسار سلسلة المفاتيح يطابق الملف الذي قمت بتثبيته. يجب أن تكون سلسلة المفاتيح قابلة للقراءة بواسطة _aptمستخدم APT غير المميز، ولهذا السبب يقوم المثال بتثبيتها باستخدام الوضع 0644. قم بإزالة أو تصحيح الإدخالات المكررة لنفس المستودع حتى لا يستمر إدخال قديم غير محدد النطاق في إنتاج التحذير.

تم إيقاف استخدام أمر APT apt-keyفي إعداد المستودعات العادية. تجنب الأدلة التي تضيف مفاتيح جهات خارجية بشكل عام apt-key advأو تضع جميع مفاتيح الموردين في سلسلة مفاتيح موثوقة مشتركة. Signed-Byيُسهّل إدخال نطاق محدد فهم علاقة الثقة ويقلل من تأثير الثقة في مفتاح مستودع واحد.

إذا كان التحذير خاصًا بأرشيف أوبونتو نفسه

تحقق أولاً من تطابق مجموعة المستودعات مع إصدار أوبونتو المُثبّت لديك، ومن صحة ساعة النظام. تُوفّر الحزمة مفاتيح توقيع أرشيف أوبونتو ubuntu-keyring. إذا كانت سلسلة المفاتيح المُثبّتة تالفة أو قديمة، وكان بإمكان APT تنزيل الحزم والتحقق منها من مصدر أوبونتو مُهيّأ بشكل صحيح، فأعد تثبيتها باستخدام الأمر التالي:

sudo apt install --reinstall ubuntu-keyring

ثم أعد المحاولة sudo apt update. إذا كان المصدر الوحيد الذي به عطل هو أرشيف إصدار قديم أو نسخة احتياطية تعرض بيانات وصفية غير متناسقة، فقد لا يُجدي إعادة تثبيت سلسلة المفاتيح نفعًا. تحقق من دعم إصدارات أوبونتو وإعدادات المستودع قبل تغيير المفاتيح. لا تستبدل مفتاح أرشيف أوبونتو بمفتاح تم تنزيله من موقع غير ذي صلة، ولا تُعطّل التحقق لفرض التحديث.

قم بمسح الفهارس المخزنة مؤقتًا فقط في حالة عدم تطابق البيانات الوصفية.

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

sudo rm -rf /var/lib/apt/lists/*
sudo apt update

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

تأكد من إتمام عملية الإصلاح، وحافظ على تفعيل الحماية.

أعد تشغيل البرنامج sudo apt updateوتأكد من اكتمال عملية التحقق من المستودع المتأثر دون ظهور NO_PUBKEYأي EXPKEYSIGتحذيرات BADSIGتتعلق بالتحقق من التوقيع. ثم تحقق من حزمة من هذا المصدر باستخدام الأمر `fm` apt-cache policy package-name، مع استبدال الاسم باسم الحزمة الفعلية. تأكد من أن إصدارها المرشح يأتي من المستودع المتوقع قبل تثبيتها أو ترقيتها.

لا تستخدم trusted=yesالخيارات المشابهة كحل allow-insecure=yesدائم --allow-unauthenticated. يتحقق نظام APT من توقيع بيانات تعريف المستودع باستخدام مفتاح موثوق به؛ تعطيل هذه الميزة يعني أن APT لن يتمكن من إجراء هذا التحقق من سلامة البيانات. يشرح دليل APT الآمن سلسلة مصادقة الأرشيف وحدودها. إذا سحب الناشر مستودعًا، أو توقف عن توقيع بيانات التعريف، أو لم يقدم بصمة مفتاح قابلة للتحقق، فقم بإزالة هذا المصدر أو تعطيله بدلًا من تجاوز عملية التحقق.

تمت مراجعة الوثائق في 6 أكتوبر 2026. قد تختلف تنسيقات مستودعات أوبونتو وتوصيات إدارة المفاتيح حسب الإصدار؛ استخدم وثائق إصدار أوبونتو المثبت لديك والتعليمات الحالية لناشر المستودع.

اترك تعليقاً

كيفية لعب لعبة 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، مع إعداد توافق لكل لعبة على حدة إذا لم يبدأ تشغيلها.