جميل بيلوني

الأعضاء
  • المساهمات

    26
  • تاريخ الانضمام

  • تاريخ آخر زيارة

السُّمعة بالموقع

2 Neutral

آخر الزُوّار

256 زيارة للملف الشّخصي
  1. يعتبر هذا الدرس من أهمِّ الدروس التي تتحدث عن تطبيق مستندات جوجل لأنَّه يشرح أهمَّ مزايا هذا التطبيق. سنتحدث اليوم عن أوضاع الكتابة والتعديل على المستند، وسنتعرَّف على طرائق مشاركة المحتوى مع الأشخاص وكيفيَّة التعاون فيما بينهم لكتابة وتعديل مستند، وكيفية إضافة التعليقات وإرسال التنبيهات لمن نشاركهم مستنداتنا. أوضاع العرض يوفر تطبيق مستندات جوجل ثلاثة أوضاع للتعامل مع المستندات نجدها في قائمة عرض ← الوضع أو نجدها في شريط الأدوات أقصى اليسار وهي: وضع الكتابة: هو الوضع الافتراضي لتعديل المستند مباشرةً ودون قيود. وضع الاقتراح: أي تعديل يتم على المستند في هذا الوضع يُسجل ويَظهر بلون مختلف كما تظهر رسالة على الطرف الأيمن توضح التعديلات التي أُجرِيَت وتطلب من صاحب المستند الموافقة عليها أو رفضها مع إمكانيَّة ترك تعليق. سنجد بعد قليل أنَّه يمكن استثمار هذا الوضع بكفاءة عالية مع خيارات المشاركة والعمل الجماعي على المستند. وضع العرض: يُستعمل لقراءة المستند وعرضه وطباعته أو تنزيله فقط دون إمكانيَّة التعديل أو إضافة تعليقات أو أي شيء آخر. مشاركة مستند تُصادفنا حالات كثيرة نحتاج فيها إلى العمل مع أشخاص عدَّة على مستند واحد مثل كتابة حلقة بحث في الجامعة أو كتابة مقالة بين شخصين أو أكثر أو الكتابة في مجلة ما أو حتى الطلب من بعضهم قراءة مستندنا والتعديل عليه أو تنقيحه وتدقيقه أو طلب تغذية راجعة (feedback) من أحدهم ...إلخ. تعال معي لنشاهد هذا السيناريو الذي يحتمل أنَّك مررت به. أُرسِلُ مستندًا عبر البريد الإلكتروني إلى خمسة أشخاص مثلًا وأطلب منهم الكتابة أو التعديل عليه وإضافة مقترحاتهم. يعيدون إليَّ المستند عبر البريد وحينئذٍ يجب علي تتبع تعديلاتهم وإضافاتهم أي العمل على خمسة مستندات وتدقيقها وتجميعها في مستند واحد؛ يحتاج هذا الأمر في الحقيقة الكثير من الوقت والجهد. افترضت أنَّ هذه حالةٌ مثاليةٌ أي لم اذكر تلك المناقشات والسجالات التي تجري بين أعضاء الفريق والتي قد تُختتم بإجراء تعديلٍ على التعديلات أو غيرها من الأمور التي قد تجلب الصداع للرأس. جاء تطبيق مستندات جوجل بحلٍ لهذه المشكلة إذ يوفر خيارات مشاركة المستند مع عدَّة أشخاص ويتيح لهم إمكانيَّة التعديل على مستند واحد وفي الوقت ذاته. المشاركة المغلقة يقصد بالمشاركة المغلقة هي مشاركة المستند مع عدد محدَّد ومعروف من الأشخاص وهؤلاء لديهم حساب على جوجل ويستطيعون استعمال تطبيق مستندات جوجل. سنشارك حلقة بحثٍ سيكتبها شخصان مثلًا وهي بعنوان "جزيئات نفايات البلاستيك تلوث أنهار ألمانيا". نشارك أولًا المستند عبر ملف ← مشاركة أو من أيقونة "مشاركة" أعلى يسار المستند. ستظهر النافذة التالية: نكتب عنوان البريد الإلكتروني للشخص المطلوب ونرفق له رسالة توضح المهام المطلوبة منه ونحدِّد صلاحياته أي نحدِّد أوضاع العرض لديه (تعديل أم تعليق أم عرض). الأشخاص الذين لديهم الإذن بتعديل الملفات المشتركة يمكنهم أيضًا: مشاركة الملف مع الآخرين. إضافة أشخاص محدَّدين أو إزالتهم. نسخ الملف أو طباعته أو تنزيله. عند تحديد إذن "التعليق" للآخرين فإنَّهم يستطيعون التعديل على المستند في وضع الاقتراح أي كل إجراء يقومون به يظهر بلون مختلف، ويتطلَّب موافقة مالك المستند لتثبيت تلك التعديلات. أمَّا إذن "العرض" فإنَّه يقيِّد الآخرين من التعديل على المستند ويتبقَّى لديهم خيار قراءة المستند وتنزيله أو طباعته، وفي حال تقييد خيار التنزيل والطباعة فلا يتبقَّى لهم سوى خيار المشاهدة. يتلقَّى المستلم عند الضغط على إرسال رسالةً على بريده الإلكتروني تحوي رابط المستند ويرفق معها الرسالة المكتوبة. قبل ذلك، دعنا نطَّلع على الإعدادات المتقدمة. نجد في الأعلى الرابط المرفق مع البريد وفي الأسفل خيارين إضافيين يقيدان من صلاحيات الشخص الذي نرغب مشاركته الملف؛ عند تحديد الخيار الأول الذي هو "منع المحررين من تغيير إمكانيَّة الوصول وإضافة أشخاص جدد" نمنع الآخرين من مشاركة ملفاتنا المشتركة؛ عند تحديد الخيار الثاني الذي هو "تعطيل خيارات التنزيل والطباعة والنسخ للمعلقين والمشاهدين" لا نسمح آنذاك للآخرين بتنزيل الملف أو طباعته أو نسخه. بعد تفحُّص جميع الخيارات وتحديد صلاحيات الشخص الذي نريد إضافته بدقَّة نضغط على إرسال. سيتلقى المستلم رسالةً شبيهةً بالرسالة التالية: عندما نفتح المستند سويةً يرى كلانا مؤشر الآخر وما يفعله مباشرةً ويكون مؤشر كل شخص بلون مختلف. تظهر أيقونتان بجانب أيقونة التعليقات تشير إحداهما إلى الأشخاص المتواجدين مع اللون الذي يميِّز مؤشرهم وتشير الأخرى إلى قائمة الدردشة إذ يمكن فتح دردشة مع جميع الأشخاص المتعاونين في تعديل المستند. المشاركة العامة المشاركة العامة هي إتاحة رابط المستند على الويب ونشره في إحدى مواقع التواصل الاجتماعي أو بين عدَّة أشخاص معروفين أو غير معروفين سواءً لديهم حساب جوجل أو لا. إن أردنا مشاركة مستند مع شخص لا يملك حساب جوجل فعند كتابة عنوان بريده والضغط على إرسال تظهر رسالة تخبرك بأنَّ ذلك الشخص لا يملك حساب جوجل وتَعرض عليك خيارات بديلة. الخيار الأول هو إرسال دعوة حيث يتلقى ذلك الشخص رسالة دعوة لتعديل المستند مع رابطه وعند فتحه يتمكن من مشاهدة الملف فقط ويجب عليه إنشاء حساب على جوجل وتسجيل الدخول ليتمكن من التعديل أو التعليق. الجدير بالذكر أنَّه يمكن للمدعو إعادة إرسال الدعوى للآخرين وكل شخص يملك ذلك الرابط ولديه حساب يستطيع الدخول للمستند بالصلاحيات المحدَّدة مع الدعوة. الخيار الثاني هو إرسال رابط عام وتحديد القيود له دون إلزام الشخص المدعو بإنشاء حساب على جوجل إن لم يكن لديه، وفي هذه الحالة يدخل أي شخص لديه الرابط إلى المستند ويعدِّل عليه بحسب القيود المحدَّدة. هنالك طريقة أخرى لمشاركة رابط المستند وتحديد أذوناته وهي الضغط على أيقونة مشاركة ثمَّ اختيار "الحصول على الرابط القابل للمشاركة" أعلى يسار النافذة ويتفعَّل بذلك الرابط وتظهر خيارات الأذونات. الخيار الأول المتاح هو تعطيل الرابط والعودة إلى المشاركة المغلقة، والخيارات التالية هي تحديد وضع العرض عند فتح الآخرين لهذا الرابط. يمكنك نسخ الرابط ومشاركته مع من تثق بهم وكن حذرًا من وقوع الرابط في أيدي الغرباء كي لا تتعرض للسرقة. يوفر التطبيق خيارات مشاركة سريعة للرابط عبر منصات التواصل الاجتماعي؛ بعد اختيار "الحصول على الرابط للمشاركة" اضغط على "متقدمة" في الأسفل وشاركه عبر أي موقع تريد. تنبيه: عند المشاركة العامة للرابط احذر من وقوعه في أيدي الغرباء واللصوص ولا أنصح بهذا النوع من المشاركة إذا كان المستند ذو أهميَّة. راقب دائمًا الأشخاص التي تعدِّل المستند معك إذ تظهر أيقونة تشير إلى عدد الأشخاص الموجودين حتى لو كانوا غرباء. توضح الصورة التالية وجود شخص غريب يعمل على المستند أُطلق عليه اسم عشوائي "آكل نمل". تعديل وإيقاف مشاركة مستند لتعديل خيارات وأذونات مشاركة المستند اضغط على "مشاركة" ثمَّ اضغط على "متقدمة"؛ يمكنك تغيير صلاحيات من لديه حق الدخول للمستند بالضغط على الأيقونة التي بجوار الاسم ثمَّ اختيار الصلاحيات الجديدة المناسبة، ويمكنك هنا أن تمنح أحد الأشخاص حق ملكية المستند. إن أردت إلغاء أحد الأشخاص يمكنك الضغط على إشارة × لحذفه ومنع مشاركة الملف معه. إن شاركت رابطًا بصورة عامة أو مع أحد الأشخاص الذين لا يملكون حسابًا فيمكنك تغيير الإعدادات بالضغط على "تغيير" بجانب خيار "تتوفر إمكانية ... لأي شخص لديه الرابط" وتنتقل إلى النافذة التالية: الخيارات المتاحة هي: تشغيل – عام على الويب: وهو الخيار الأعم إذ يُنشر المستند على الإنترنت ويستطيع أي شخص البحث عنه وفتحه أو الحصول عل الرابط من أي جهة والدخول إليه وتعديله بحسب الإذن الذي تعطيه؛ لا يلزم امتلاك حساب جوجل وتسجيل الدخول. تشغيل – أي شخص لديه الرابط: يتمكن أي أحد يحصل على الرابط من الدخول والتعديل على المستند بحسب الإذن المُعطى، ولا يلزم امتلاك حساب جوجل أو تسجيل الدخول. إيقاف – أشخاص محدَّدون: إيقاف تشغيل المشاركة العامة للرابط والانتقال إلى المشاركة المغلقة أي لن يتمكن أحد من مشاهدة الملف سواك أنت ومن تشاركهم الملف بأسمائهم. يجب امتلاك حساب جوجل وتسجيل الدخول به. حذف مستند مشترك إذا حذفت ملفًا مشتركًا تمتلكه فسيتمكن الأشخاص -اللذين يمكنهم العرض أو التعليق أو التعديل- من إنشاء نسخة من الملف حتى حذفه نهائيًا؛ لحذف الملف نهائيًا، انقر على الملف في المهملات ثمَّ انقر على "الحذف نهائيًا". إذا حذفت ملفًا مشتركًا لا تملكه فسيُزال من حسابك في درايف (google drive)، وسيتمكَّن المتشاركون الآخرون من الوصول إليه. لاسترداد الملف مرةً أخرى، افتح رابط المستند وانقر بعد ذلك على "ملف" ثمَّ "إضافة إلى ملفاتي". إضافة التعليقات وعرضها إضافة تعليق وعرض جميع التعليقات والمناقشات عملية سهلة جدًا. حدِّد النص الذي تريد إضافة تعليق عليه ثمَّ: اختر من قائمة إدراج ← تعليق أو؛ اضغط زر الفأرة الأيمن واختر "تعليق" أو؛ تَظهر أيقونة التعليق على الهامش الأيمن للمستند يمكنك ضغطها وإدراج تعليق بكل بساطة. يظهر صندوق حوار صغير على الهامش الأيمن للمستند وفي أعلاه زر "حل" عند ضغطه يختفي التعليق وتُرسل إشارة مفادها أنَّك حللت الأمر. يمكن الرد على التعليقات ويمكن أيضًا الإشارة إلى أشخاص محدَّدين بكتابة الرمز @ أو + ثمَّ تظهر قائمة بعناوين جهات الاتصال لديك لتحديد بريد الشخص الذي تريد الإشارة إليه في التعليق؛ يتلقى الشخص المشار إليه رسالةً على بريده الإلكتروني تخبره بالتعليق وضرورة مراجعته. الخاتمة وجدنا في هذه المقالة أنَّ تطبيق مستندات جوجل هو الحل الأمثل لمشاركة مستند والتعاون بين فريق على كتابته والتعديل عليه ويتفوق على التطبيقات المشابهة في هذه الأمر إذ وجدنا أنَّه يوفر الكثير من المزايا والخيارات التي تسهِّل وتعزز العمل الجماعي على مستند واحد.
  2. تعرَّفنا في درسنا السابق على خيارات الإدراج التي يوفرها تطبيق مستندات جوجل ومنها المعادلات والكائنات الرسوميَّة؛ سننتقل في درسنا هذا إلى محطة أخرى نتعرَّف فيها على بعض الخصائص التي يوفِّرها التطبيق. نبدأ أولًا بخياري إنشاء نسخة وتاريخ النُسخ ثمَّ سنتعرف بعدها على الإضافات وكيفيَّة تثبيت بعضًا منها وتشغيلها والاستفادة منها وكيفية إلغاء تثبيتها. إنشاء نسخة يُستعمل هذا الخيار لإنشاء نسخة من المستند المفتوح بغرض مشاركتها أو التعديل عليها بشكل منفصل عن النسخة الأصليَّة؛ عند إنشاء نسخة تُمسح جميع التعليقات الموجودة على المستند الأصلي. يمكن إنشاء نسخة عبر القائمة ملف ← إنشاء نسخة وتحديد مكان حفظها. لا تدعم النسخة العربيَّة من مستندات جوجل إدراج القوالب الجاهزة للأسف؛ عند فتح النسخة الإنجليزية يُعرض عليك خيارات عديدة من القوالب والنماذج الجاهزة كما يمكنك البحث ضمن جوجل عن أي نموذج أو قالب وإضافته مباشرةً إلى مستنداتك وهذا غير متوافر في النسخة العربيَّة. الحل هو البحث عن قوالب ونماذج جاهزة ثمَّ تنزيلها إلى حاسوبك وتحميلها وفتحها عبر تطبيق مستندات جوجل، بما أنَّه يدعم صيغ عدَّة، والتعديل عليها. يوفر موقع ورقي مكتبة هائلة من القوالب والتقارير والنماذج الجاهزة والمجانيَّة التي تعمل على تطبيقات مايكروسوفت أوفيس؛ يمكنك أيضًا استعمال قوالب جاهزة من مايكروسوفت حيث يمكنك اختيار القالب المناسب وتحمليه إلى تطبيق مستندات جوجل والتعديل عليه وهي مجانيَّة أيضًا . تاريخ النُسخ يوفر تطبيق مستندات جوجل ميِّزة حفظ نُسخ متعدِّدة من المستند تلقائيًّا أثناء كتابته أو تعديله وذلك للرجوع إليها واستعادتها عند الحاجة إلى ذلك، ولعرضها نختار من قائمة ملف ← تاريخ النسخة ← الإطلاع على سجل النُسخ. عند الضغط على خيار "الإطلاع على سجل النسخ" ينقلك التطبيق إلى صفحة معاينة لعرض النُسخ المحفوظة حيث يمكنك من القائمة الواقعة على اليسار اختيار نُسخة من تاريخ معين أو معاينتها والإطلاع على الاختلافات بينها وبين النسخة الحالية كما يمكنك معرفة الشخص الذي عدَّل على كل نسخة. يمكنك تسمية النسخ بأسماء محدَّدة مما يسهل عليك التمييز بينها عند الرجوع إليها وذلك إما بالضغط على الاسم (٨ أكتوبر، ٢:٠١ م) مثلًا وتغييره أو إضافة اسم جديد لكل إصدار عند فتح المستند عبر الخيار ملف ← تاريخ النسخة ← اختيار اسم للإصدار الحالي. عند الرغبة بالرجوع إلى إصدار سابق حدِّده واضغط على "استعادة هذه النسخة" لتصبح النسخة الحالية، ولا تقلق على النسخة التي كنت تعمل عليها لأنَّها ستُدرج ضمن قائمة النسخ السابقة ويمكنك استعادتها فيما بعد. الإضافات الوظيفة الأساسيَّة للإضافات هي توسيع عمل تطبيق مستندات جوجل وسائر التطبيقات (جداول البيانات والعرض التقديمي والنماذج) وإضافة مزايا جديدة لا يدعمها التطبيق. سنتعرف على الإضافات بشكل عملي إذ سنضيف بعض الإضافات ونشغلها ضمن المستند ونتعرف على المزايا التي وسَّعت من عمل التطبيق، ثمَّ سنزيل الإضافات التي لا حاجة لنا بها. تثبيت الإضافات وتشغيلها سنثبِّت إضافة جديدة عبر إضافات ← الحصول على إضافات فتظهر النافذة التالية: يمكننا البحث عن إضافة محدَّدة بكتابة اسمها في مربع البحث، أو يمكننا تصفية المحتوى بالضغط على "الكل" واختيار فئة معيَّنة. عند وضع مؤشر الفأرة فوق الإضافة يظهر شرح مبسَّط لوظيفتها وفي أسفل ذلك الشرح يوجد زر "مجانًا" لتثبيتها، وللمزيد من المعلومات حول الإضافة اضغط عليها؛ جميع الإضافات وشرحها باللغة الإنجليزية. ألم تلاحظ وجود عدد قليل من الخطوط؟ دعنا نبحث عن إضافة تتيح استعمال المزيد من الخطوط. سنكتب في مربع البحث "fonts" للبحث عن إضافة توفر المزيد من الخطوط. نجد إضافة اسمها "Extensis Fonts"؛ نضغط عليها لمعرفة الخدمات التي تزودنا بها فنجد أنَّها تتيح لنا الوصول إلى ما يزيد عن 1200 خط وهذا كاف. قررنا تثبيتها لذا نضغط على "مجانًا" أعلى يسار النافذة. ننتقل إلى نافذة جديدة يُطلب فيها تحديد اسم الحساب فنحدِّده ثمَّ تظهر رسالة تَطلب منك السماح للإضافة بالوصول إلى بياناتك والتعديل عليها وغيرها من الصلاحيات والأمر عائدٌ لك بالسماح أو الرفض. ثُبِّتت الإضافة بنجاح ولاستعمالها نشغلها عبر الخيار إضافات ← Extensis Fonts ← ‏start. تظهر قائمة في الطرف الأيسر موضحة بالصورة التالية: نحدِّد النص ونختار الخط المناسب من القائمة؛ جميع الخطوط مرتَّبة وفق الترتيب الهجائي لذا يمكن تحديد أي خط تعرف اسمه. نلاحظ تغير قائمة الخطوط ضمن البرنامج لتتوسع أكثر ويصبح بإمكاننا إضافة أي خط من الخيار "مزيد من الخطوط". يمكننا الآن إضافة أي خط وذلك بالبحث عنه بواسطة خطوط جوجل ثمَّ نأخذ اسم الخط المطلوب ونضغط على خيار "مزيد من الخطوط" ثمَّ نكتب اسم الخط ضمن مربع البحث في الأعلى ونضيفه إلى القائمة. إدارة الإضافات يمكن معرفة الإضافات المرتبطة مع المستند عبر الخيار إضافات ← إضافات المستند؛ يمكن فصل تلك الإضافات عبر الخيار إضافات ← إدارة الإضافات ثمَّ نحدِّد الإضافة ونضغط على "إدارة" ونُزِيلُ الإشارة الموجودة بجانب "استخدام في هذا المستند". يمكن إزالة الإضافة من القائمة السابقة نفسها عبر الخيار "إزالة". يوجد عدد هائل من الإضافات التي تلبي أغلب متطلبات المستخدمين لذا إن لزمك أي خدمة غير مدعومة في تطبيق مستندات جوجل فيمكنك البحث عن إضافة تلبي حاجتك. بعض الإضافات المفيدة: Translate: هي إضافة لترجمة الكلمات والجمل المحدَّدة لعدَّة لغات، وهي أداة مصغَّرة شبيهة بتطبيقات وأدوات الترجمة التي توفرها جوجل. Table formatter: إن كنت من مستخدمي تطبيق مايكروسوفت وورد فهذه الإضافة تتيح استعمال تنسيقات الجداول الجاهزة المشابهة لتلك الموجودة في تطبيق وورد. LucidChart Diagrams: تُستعمل لإدراج وإنشاء المخططات والخرائط الذاكريَّة بسرعة وسهولة. كل ما عليك فعله هو اختيار الشكل أو التصميم من بين المئات منها وسحبه إلى المستند. Table of content: تُستخدم لترقيم جميع العناوين والتعديل على جدول المحتوى. الخاتمة تعرَّفنا في هذا الدرس على بعض مزايا تطبيق مستندات جوجل وكان أهمها الإضافات التي توسِّع من الوظائف والخدمات التي يوفرها هذا التطبيق، وتجعله مرنًا ليخدم مختلف أنواع المستخدمين.
  3. سنكمل في هذه السلسلة من الدروس شرح تطبيق مستندات جوجل والتي بَدأت بالتعريف عن التطبيق ومزاياه ثمَّ تطرَّقت إلى كيفيَّة إعداد الصفحة وتنسيق الفقرات وإدراج الجداول وتنسيقها. سنشرح في هذا الدرس كيفية إضافة المعادلات والرموز الخاصَّة ضمن المستند ثمَّ سننتقل إلى إدراج الكائنات الرسوميَّة والتي تنقسم إلى صور وكائنات رسوميَّة أو رسوميات ومخططات بيانيَّة. إدراج المعادلات والرموز الخاصَّة إن كنت تكتب بحثًا ما وصادفتك معادلة تحتاج لإدراجها ضمن بحثك أو انتقلت حديثًا لاستخدام تطبيق مستندات جوجل وتريد التعرُّف على كيفيَّة إدراج معادلة ولديك معرفة مسبقة باستعمال تطبيقات مشابهة مثل مايكروسوفت وورد (Microsoft word) فالأمر بسيطٌ جدًا. سنضيف معادلةً اكتشفها عالم الرياضيات الهندي رامانجن على فرض أنَّنا نريد كتابة بحثٍ حول أهمِّ المعادلات التي اكتشفها. بعد فتح مستند جديد وتسميته وضبط إعدادات صفحاته وإضافة العناوين والفقرات ننتقل إلى إدراج معادلة وذلك من القائمة إدراج ← معادلة يَظهر شريطٌ جديدٌ أسفل شريط القوائم يتيح خيارات عديدة لإضافة رموز وعمليات رياضيَّة وأسهم وكل ما يتعلق بالعلاقات والمعادلات الرياضيَّة. أضف إلى ذلك ظهور مستطيل لإدراج المعادلة ضمنه ولا يمكن إدراجها خارجه إذ تصبح تلك الخيارات السابقة غير مفعَّلة. سيلزمنا في المعادلة التي نريد كتابتها إدراج كسورٍ وهذا ما نجده في خيار "عمليات رياضيَّة" حيث يتوافر ضمنها الكثير من الخيارات مثل عمليات التكامل والنهايات والجمع ...إلخ. كما سيلزمنا إدراج بعض الرموز مثل الرمز π والرمز е أو غيرها مثل ألفا α وغاما γ وهذا ما نجده ضمن قائمة "الأحرف الرومانيَّة". وبذلك نكون قد أدرجنا المعادلة التالية: سأترك لك بقية الخيارات لاستكشافها ومحاولة إدراج بعض المعادلات. هنالك رموزٌ لا تجدها ضمن قائمة "الأحرف الرومانيَّة" أو في حال كنت تكتب بعض النصوص التي تحوي رموزًا خاصَّةً مثل التي ذكرناها فلا تحتاج حينئذٍ إلى إضافة معادلة؛ افتح قائمة الرموز الخاصَّة من إدراج ← رموز خاصَّة ثمَّ حدد فئة الرمز (رمز أو رمز تعبيري أو رقم ...إلخ) ثمَّ النوع، وتوضح الصورة التالية ذلك. يوفِّر التطبيق كمًّا هائلًا من الرموز الخاصَّة لذا توجد أداة بحثٍ متطورةٍ وسريعةٍ ترسم ضمنها الرمز فيظهر لك على الطرف الأيمن أو تكتب اسم الرمز ضمن المستطيل أعلى لوحة الرسم لتسهيل البحث عن الرمز المطلوب. الكائنات الرسوميَّة تُقسم الكائنات الرسوميَّة إلى صور، ورسوميات (أسهم وأشكال مثل المربع والدائرة ...إلخ) وهي غنية عن التعريف، ومخططات بيانيَّة توضح العلاقة المنطقيَّة أو الرياضيَّة بين متغيرين أو أكثر أو ترسم تابع معين. إدراج الصور يوفر تطبيق مستندات جوجل خيارات عدَّة لإدراج الصور قد لا تجدها في تطبيقات مشابهة وهذه من إحدى مزاياه؛ نُدرج صورة من القائمة إدراج ← صورة فتظهر لنا النافذة التالية: سنشرح الخيارات السابقة وهي: تحميل: تُحدِّد الصورة الموجودة في حاسوبك لرفعها وإدراجها ضمن المستند. التقاط لقطة: تُلتقط صورة من الكاميرا الموصولة مع حاسوبك لإدراجها ضمن المستند. قد تظهر رسالة تخبرك أنه لم يُكتشف أية كاميرا وأنت متأكد أنَّ الكاميرا في حاسوبك تعمل لذا تأكد حينئذٍ من الأذونات التي يتيحها المتصفح للموقع ووافق على السماح باستعمال الكاميرا. باستخدام عنوان URL: يُستعمل هذا الخيار لإضافة صورة موجودة على الإنترنت وللقيام بذلك انسخ رابط الصورة وألصقه في المكان المخصَّص له وستظهر معاينة للصورة أسفله. ألبوماتك: تُعرَض الصور المحمَّلة على حسابك في جوجل درايف (google drive) جميعها سواءً صور الملف الشخصي أو الصور التي زامنتها من هاتفك المحمول لتختار منها الصورة التي تريد إدراجها ضمن المستند. Google drive: شبيه بالخيار السابق باستثناء أنَّه أوسع إذ يعرض ملفاتك والملفات التي تمَّت مشاركتها لاختيار الصورة وإدراجها. بحث: يوجد ضمن هذا الخيار ثلاثة محركات للبحث ضمنها واختيار الصورة المناسبة وهي google وصور LIFE وصور المخزون. إدراج الرسوميَّات تعتبر الرسوميات من الأدوات المهمَّة في المستندات خصوصًا إذا كان الهدف من المستند هو الشرح والإيضاح إذ يمكن عبر هذا الخيار إدراج مربعات نصوص وأشكال وأسهم وخطوط سواءً مستقيمة أو متعرِّجة وغيرها بالإضافة إلى الصور. ندرج رسمًا عبر إدراج ← رسم. بعد الانتهاء من إضافة الشكل الذي نريده نضغط على "حفظ وإغلاق" الموجود أعلى يسار النافذة لإدراجه ضمن المستند؛ في حال أردنا التعديل على الشكل ننقر عليه نقرتين لفتح النافذة نفسها من جديد. إدراج المخططات تُستعمل المخططات لتمثيل البيانات بشكل رسومي يجعلها أكثر وضوحًا مما لو بقيت أرقامًا فقط. يوفر تطبيق مستندات جوجل إمكانيَّة إدراج المخططات بكافة أنواعها مع إتاحة الكثير من الخيارات وأنواع المخططات التي قد تذهلك. سنتعلم كيفيَّة إضافة مخطط بشكل بسيط وسطحي ولكن سنتوسع في هذا الموضوع عند شرح تطبيق "جداول البيانات" من جوجل. يجب توافر البيانات أولًا لإضافة مخطط ثمَّ إدخالها ضمن تطبيق جداول البيانات ثمَّ الربط بينها وبين المخطط الموجود في تطبيق المستندات. سنرسم مخطط تدفق نقدي للكلفة الأسبوعيَّة لإنشاء مشروع سكني خلال أربعة أشهر؛ ندرج مخطَّطًا عبر إدراج ← مخطط ثمَّ نحدِّد نوعه وفي حالتنا نختار "خطي". يظهر مخطط عشوائي على شكل صورة ويوجد أعلى يساره خيارات المخطط المرتبط؛ نضغط عليه فيظهر خياران الأول هو "إلغاء الربط" سنتعرف على وظيفته لاحقًا، والثاني هو "معلومات مفتوحة المصدر". نضغط على الخيار الثاني "معلومات مفتوحة المصدر" فننتقل إلى تطبيق "جداول البيانات" حيث يُفتح مستند جديد يحمل اسم المستند الأصلي مع اسم المخطط، وتحتوي الصفحة على بيانات عشوائيَّة موضَّحة في المخطَّط. نحذف البيانات الموجودة وننسخ البيانات من المستند ثمَّ نضيفها إلى الجدول فيصبح لدينا ثلاثة أعمدة وهي التسلسل (رقم الأسبوع التسلسلي) وتاريخ الأسبوع والكلفة الأسبوعيَّة. نريد أن نرسم خطًّا بيانيًّا بين الأسبوع والكلفة لذا ننقر على المخطط نقرتين متتاليتين فتظهر قائمة "محرر المخطط" على الطرف الأيسر. الخيار الأول هو لأنواع المخططات وقد اخترنا سابقًا النوع الخطي ويمكننا تغييره على أي حال إن أردنا ذلك. نضغط على الخيار الثاني "نطاق البيانات" لتحديد البيانات التي نريد تمثيلها؛ نحدِّد بيانات المحور الأفقي (المحور س) ثمَّ نضغط على "إضافة نطاق آخر" لإضافة بيانات المحور الشاقولي (السلاسل) ثمَّ نضغط على "موافق". في حال أردنا رسم المخطط بين رقم الأسبوع التسلسلي والكلفة نحدد عمود التسلسل عوضًا عن الأسبوع. أضف أنَّه يمكن إدراج أكثر سلسلة في المخطط نفسه. إن أردنا تغيير اسم المخطط أو اسم المحور الأفقي أو الشاقولي نحدِّد المخطط ثمَّ نحدِّد الاسم ونغيره. سيكون المخطط النهائي الناتج موضح بالصورة. انتهت مهمتنا في تطبيق "جداول البيانات" لذا ننتقل إلى تطبيق "المستندات". لا تجزع إن وجدت المخطط على حاله أي لم يتغير فيه شيء فكل ما عليك فعله هو الضغط على "تحديث" الذي يظهر بجانب زر الخيارات. وظيفة الخيار "إلغاء الربط" والذي هو إلغاء الربط بين جدول البيانات الذي عدلناه للتو في تطبيق جداول البيانات وبين المخطط الحالي الموجود في تطبيق المستندات ويتحول بعدئذٍ المخطط إلى صورة ولن نتمكن من التعديل عليه مطلقًا. إن كان لديك جدول بيانات سابق أنشأته على تطبيق جداول البيانات أو أنشأته على أي تطبيق آخر مشابه وفتحته باستعمال هذا التطبيق فيمكنك إدراج المخطط مباشرةً من إدراج ← جدول ← من جداول البيانات ثمَّ حدِّد بعدها الملف الذي يحتوي على البيانات المطلوب تمثيلها ضمن المخطط. حسنًا، سنكتفي بهذا القدر من الشرح حول المخططات البيانيَّة ولكن سيكون هنالك شرح أوسع في دروس تطبيق جداول البيانات. الخاتمة تعرَّفنا في هذا الدرس على كافَّة خيارات إدراج المعادلات والرموز الخاصَّة ثمَّ انتقلنا إلى خيارات إدراج الكائنات الرسوميَّة من صور ورسوم ومخططات بيانيَّة. إنَّ التعامل مع الخيارات السابقة سهل ولكنَّها في الوقت ذاته ذات كفاءة ومرونة وتلبي حاجات أغلب المستخدمين وهذه من مزايا تطبيق مستندات جوجل.
  4. كانت الحوسبة السحابيَّة إحدى التقنيات التي ظهرت في أواخر العقد الحالي وأخذت بالانتشار بسرعةٍ كبيرةٍ على المستوى العالمي بعد أن اقتصر استخدامها على مجالاتٍ وتقنياتٍ محدودةٍ؛ وفي المقابل، فإنَّ الحوسبة السحابيَّة باتت محطَّ جدلٍ ونقاشٍ واسعٍ بين الكثيرين، خصوصًا السحابة الهجينة (hybrid cloud) التي تجمع بين عدَّة أنواع من الحوسبة السحابيَّة، قد تنتهي بالحيرة أو عدم الثقة بهذه التقنيَّة. تجيب هذه المقالة على عددٍ من تلك الأسئلة الشائعة حول السحابة الهجينة لتزيل بعضًا من الغموض والالتباس. ما هي السحابة الهجينة؟ السحابة الهجينة هي أحد أنواع الحوسبة السحابيَّة وهي مزيجٌ من البنية التحتيَّة المتواجدة في موقع العمل (on-premise infrastructure)، والسحابة الخاصَّة (private cloud)، والسحابة العامَّة (public cloud). تجمع السحابة الهجينة الخدمات والمزايا التي يمكن أن تقدمها خدمات السحابة العامة والخاصة وتُنسِّق بينها رغم أنَّ كلَّ نوعٍ منهما له كيانه المنفصل والمختلف عن الآخر؛ يعتمد اختيار الخدمات السحابيَّة العامَّة والخاصَّة على عوامل عدَّة منها الأمن، والتكلفة، والمرونة. توفِّر السحابة الهجينة مزايا متطورة مثل التوسع الرأسي والتوسع الأفقي والتي تسمح بتوسعة البنية التحتية للتطبيق عند الحاجة مما يجعل السحابة الهجينة خيارًا رائجًا للخدمات متغيرة المتطلبات؛ التوسع الرأسي هو إمكانيَّة زيادة موارد الحوسبة (الذاكرة والمعالج) لنُسخ (instance) محدَّدة من أنظمة التشغيل، بينما التوسع العرضي هو تزويد نُسخ متعدِّدة بإعداداتٍ متشابهة ونشرها على عقدة (cluter). تُشكِّل البرمجيات مفتوحة المصدر الجزء الرئيسي من الحلول التي تستخدم السحابة الهجينة، مثل تطبيق «OpenStack» الذي صدر أوّل مرة في تشرين الأول من عام 2010 والذي ذاع صيته عالميًا؛ بعضٌ من الأدوات المُضمَّنة فيه توفِّر الخدمات الرئيسيَّة والأساسيَّة للحوسبة السحابيَّة مثل توفير خدمات الحوسبة والشبكات والتخزين وخدمات الاستيثاق (المكوِّن identity)؛ وبذلك تستطيع باستخدام هذا التطبيق إنشاء وإدارة ونشر سحابة هجينة مميزة وذات كفاءة عالية. مكونات السحابة الهجينة تتألف السحابة الهجينة من سحابة خاصَّة، وسحابة عامَّة، وشبكة داخلية تكون جميعها مُتصلة ومُدارة باستخدام أدوات النشر المؤتمتة(orchestration) وأدوات أتمتة المهام الأخرى وإدارة النظام (system management). مكونات السحابة العامَّة تتكون البنية التحتيَّة للسحابة العامة من: البينة التحتيَّة كخدمة (Infrastructure as a Service) اختصارًا (IaaS): هي توفير مصادر الحوسبة مثل التخزين، والشبكات، والجدر النارية، وخدمات منع التطفل (IPS) وغيرها من الموارد؛ تُدار هذه الخدمات عبر واجهة المستخدم الرسومية (GUI) أو واجهة سطر الأوامر (CLI). يستفيد المستخدمون من هذه الخدمات بالدفع حسب استخدامهم وبذلك يوفرون شراء ودفع كامل تكاليف إنشاء وإعداد بنية تحتيَّة مخصَّصة بهم. منصة عمل كخدمة (Platform as a Service) اختصارًا (PaaS): تسمح هذه الخدمة للمستخدمين بتشغيل التطبيقات والخوادم وفحصها وتطويرها وهذا يتضمن أنظمة التشغيل والتطبيقات الوسيطة (middleware) وخواديم الويب وقواعد البيانات وغيرها. تُعرَّف هذه الخدمات على شكل نماذج مُعدَّة مسبقًا وجاهزة للعمل والاستخدام من قبل المستخدمين وقابلة للنسخ والتكرار بسهولة ويسر بدلًا من ضبطها وتهيئتها للعمل على البنية التحتيَّة يدويًا. البرمجيات كخدمة (Software as a Service) اختصارًا (SaaS): وهي خدمةٌ تتيح توفير تطبيقات عبر الإنترنت التي يمكن أن يستفيد منها المستخدمون عبر دفع رسوم اشتراك أو إنشاء حساب يتضمن مستويات متعدِّدة يدفع عبره المستخدمون بقدر حاجتهم، أو تحت رخصة ما. المزايا التي توفِّرها البرمجيات كخدمة كثيرة منها الكلفة المنخفضة، تقليل عمليات صيانة وتحديث التطبيقات، عدم الحاجة لشراء عتاد أو تطبيقات جديدة أو ترقيته لاستمرار الدعم في ظل التطور التقني المتسارع. مكونات السحابة الخاصَّة تتكون بنيتها التحتيَّة من: بنية تحتيَّة كخدمة (IaaS) ومنصة عمل كخدمة (PaaS) خاصَّة: يتواجد هذان المكونان ضمن مراكز بيانات (data centers) منعزلة كما يدمجان مع سحابة عامَّة مما يتيح لهما استخدام البنية التحتية التي توفرها مراكز البيانات البعيدة؛ ويمكِّن ذلك أيضًا مالك السحابة الخاصَّة الاستفادة من البنية التحتيَّة للسحابة العامة لتوسيع التطبيقات واستخدام مواردها وشبكاتها ومساحات تخزينها ...إلخ. على نطاق عالمي. البرمجيات كخدمة (SaaS): يديرها ويتحكم بها مزودو السحابة العامة بشكل كامل؛ تبقى هذه الخدمة محصورة غالبًا ضمن السحابة العامة ولا تتشاركها مع السحابة الخاصة. أدوات النشر المؤتمتة وأدوات أتمتة المهام الأخرى تفيد هذه الأدوات في التخطيط والتنسيق بين نسخ السحابة العامَّة والخاصَّة؛ يجب أن تمتلك هذه الأدوات القدرة على تبسيط وتنظيم عمليات المعالجة وأتمتة المهام المتكررة. تكون مسؤوليَّة أداة الأتمتة المدمجة هي التوسع الرأسي والتوسع الأفقي تلقائيًّا عندما يصل استهلاك الموارد والخدمات إلى حدٍ معيّن، بالإضافة إلى محاولة الإصلاح الذاتي عند حدوث أي عطل مهما كان ضئيلًا أو عند التوقف عن العمل. أدوات إدارة النظام والإعدادات مهمة هذه الأدوات في السحابة الهجينة هي إدارة كاملة لدورات حياة (lifecycles) الأجهزة الافتراضيَّة الموجودة في مراكز بيانات السحابة العامَّة والخاصَّة مثل الأداة «Foreman»؛ تؤمِّن هذه الأدوات لمدراء الأنظمة القدرة على التحكم بالمستخدمين وأدوارهم، والنشر، والترقية، وبنسخ الأنظمة التي تعمل على السحابة ...إلخ. بالإضافة إلى تطبيق الترقيعات (patches)، وإصلاح الأخطاء، وإجراء التحسينات دوريًا. إن وجود الأداة «Puppet» ضمن «Foreman» يعطي مدراء الأنظمة القدرة على إدارة الإعدادات وتعريف كامل الوضع النهائي لجميع المضيفين المضبوطين لاستخدام هذه الخدمة. مزايا السحابة الهجينة تشكِّل السحابة الهجينة خيارًا ممتازًا لأغلبية المنظمات لما تحمله من مزايا رئيسية ومنها: قابلية التوسع: تتشارك نسخ السحابة العامَّة والسحابة الخاصَّة المدمجة في السحابة الهجينة مجموعةٌ من موارد الحوسبة لكل جهاز افتراضي موجود، أي أنَّ كلَّ نسخة (instance) قادرة على التوسع رأسيًا أو أفقيًا في أي وقت عند الحاجة لذلك. سرعة في الاستجابة: تكمن مرونة السحابة الهجينة في دعمها سرعة استجابة كبيرة للأجهزة الافتراضيَّة في السحابة العامَّة عندما تتجاوز موارد السحابة الخاصَّة حدَّها المسموح، ولهذه الخاصيَّة فائدة كبيرة عندما يصل الطلب على تطبيق ما إلى أعلى مستوياته مما يؤدي إلى ازدياد الحمل عليه بدرجات متفاوتة؛ من الأمثلة على ذلك زيادة الطلب على المتاجر الإلكترونيَّة للتسوق خلال مواسم العطل. الوثوقيَّة: يمكن للمنظَّمات اختيار مزوِّد السحابة العامَّة بما يناسب احتياجاتهم اعتمادًا على السعر، والكفاءة، والأمان، وسرعة نقل البيانات ...إلخ؛ أضف إلى ذلك أنَّ بإمكان المنظَّمات في السحابة الهجينة اختيار مكان تخزين البيانات الحسَّاسة إما ضمن نسخ السحابة الخاصَّة وإما عبر توسعة البنية التحتيَّة العامَّة الخاصة بها؛ يمكن أيضًا تخزين البيانات والخدمات بتوزيعها على مواقع متعدِّدة (كنسخٍ احتياطيَّةٍ) وذلك للتأكد من توافرها دومًا والقدرة على استعادتها عند حدوث كارثة ما. الإدارة: إنَّ إدارة الشبكات والتخزين والأجهزة الافتراضيَّة والبيانات قد يكون مضجرًا في بيئات السحابة غير المدمجة. أدوات النشر المؤتمتة التقليدية بسيطةٌ جدًا، بالموازنة مع الأدوات في السحابة الهجينة، وبالتالي فهي محدودة القدرة على اتخاذ القرار وأتمتة كامل المهام والعمليات؛ تطبيقات الإدارة الفعَّالة في السحابة الهجينة تستطيع أن تتتبع المكونات والمهام كلها وتحسينها بانتظام مهما زاد حجمها وعددها وهذا قد يقلل من التكاليف السنويَّة. الأمن: يعتبر الأمن والخصوصيَّة من أهمِّ الأمور الحرجة التي تشغل بال الجميع عند اختيار موقع تخزين البيانات والتطبيقات في السحابة. يجب على قسم تكنولوجيا المعلومات (IT) التحقق دومًا من مطابقة الشروط المطلوبة وسياسات النشر. يمكن في السحابة الهجينة تخزين البيانات المهمَّة في سحابة خاصَّة بينما تخزن البيانات الاعتياديَّة أو الأقل أهمية في السحابة العامَّة ويجدر بالذكر أنَّ الأمان فيها آخذٌ في التحسن والتطور بشكل دائم. السعر: يعتمد السعر في السحابة عادةً على حجم البنية التحتيَّة والخدمات المطلوبة؛ يستطيع المستخدمون في السحابة الهجينة الموازنة بين الكلفة المدفوعة والموارد الحاسوبيَّة (المعالج والذاكرة) والسعة التخزينيَّة وسرعة نقل البيانات والشبكات وعنوان IP العام ...إلخ. بما يحتاجون له. تُدفع الكلفة شهريًا أو سنويًا أو ساعيًّا ويمكن أن تحسب بالثانية وقد تكون قيمة ثابتة أو متغيرة (السعر حسب الاستخدام) وهكذا يمكن للمستخدمين اختيار مزود السحاب الذي يقدم أفضل سعر. ما هو موقع السحابة الهجينة هذه الأيام من بين الأنواع الأخرى هنالك طلب واسع ومتزايد على السحابة العامَّة كما أنَّ شركات كثيرة بدأت بنقل أنظمتها ومواردها إليها؛ مع ذلك، إنهم ما زالوا قلقين جدًا من فقدان السيطرة على بياناتهم وتطبيقاتهم أو من عمليات الاختراق والسرقة التي تتعرض لها البنية التحتيَّة العامَّة؛ يكمن الحل هنا في اللجوء إلى السحابة الهجينة التي تقلل من خطر حدوث مثل تلك المشكلات. أين سيكون موقع السحابة الهجينة بعد خمس سنوات من الآن؟ أتوقع أن تنتشر السحابة على المستوى العالمي في غضون بضع سنواتٍ، وستندر الحالات التي لا يعتمد فيها على خدمات السحاب؛ سأورد بعض النقاط التي أظن أننا سنراها مستقبلًا وهي: سيكون هنالك تعاونٌ متزايدٌ بين الشركات ومزودي السحابة العامَّة لتحسين درجة الأمن للحد من هجمات الاختراق والتطبيقات الخبيثة وتسرُّب البيانات وسرقتها ...إلخ. سنشاهد ازديادًا كبيرًا في أداء وسرعة النُسخ السحابيَّة. سيزداد ذكاء وتطور أدوات النشر المؤتمتة وأدوات أتمتة المهام الأخرى (مثل الأداة Ansible) وستعلب دورًا مهمًا في حل المشاكل المعقدة. سينتشر المفهوم "الدفع بحسب الاستخدام" بين جميع المستخدمين ويكون أكثر وضوحًا، وستتوفر أدواتٍ تمكِّن المستخدم من اختيار النُسخ بأفضل سعر أو تساعدهم على اختيار نسخة جديدة وحذف النسخة الحالية بشكل آمن حتى يحصل المستخدم على أرخص سعر متوافر. مالذي تتوقعه حول السحابة الهجينة خصوصًا والحوسبة السحابيَّة عمومًا خلال السنوات الخمس القادمة؟ شاركنا رأيك في التعليقات. ترجمة -وبتصرف- للمقال What you need to know about hybrid cloud لصاحبه Amit Das. حقوق الصورة البارزة محفوظة لـ Freepik
  5. قد ينتهي المطاف بمعظمنا إلى كتابة مراجعة عن موقع إلكتروني بحكم خبرتنا في المجال الرقمي وعالم الإنترنت؛ عندما نريد القيام بذلك فإنَّنا بحاجة إلى التعمق والنبش عن بعض التفاصيل عوضًا عن أخذ الأمور بسطحية. لقد أدركت، مثل حال أغلب زملائي، أنَّني كنت أتناول موضوع مراجعات المواقع بطريقة خاطئة تمامًا لذا سأشارك في هذه المقالة تجربتي عن مراجعات المواقع والطريق الذي يؤدي إلى كتابة مراجعة جيدة وذات تأثير كبير. هل يحوي المنهج الذي تتَّبعه في مراجعات المواقع خللًا؟ يُفترض أن تضم مراجعات المواقع قائمة بأعطال الموقع، ومشاكل الأداء، والجوانب التقنيَّة، وسهولة الاستعمال، وجمالية المظهر، والمحتوى، وغيرها من الأخطاء؛ تبدو وكأنَّها أوسع بكثير من أن تحوي أسماء مواقع التواصل الاجتماعي ومحركات البحث وعناوينها. يجب أن تسلِّط مراجعات المواقع الضوء على المشكلات بدقة متناهية مستعينة ببعض أنظمة التقييم ثمَّ تقترح الحلول المتوافرة لها، كما توصي بإجراء التحسينات للأداء. حسنًا، هذا يبدو مفيدًا جدًا ولكنَّه للأسف نادر الوجود في الواقع. قد تتطرق مراجعات المواقع في الحقيقة إلى تلك المواضيع بسطحية وتحاول إصلاح بعض الأمور التي تحسِّن من الموقع باقتضاب دون أن تُحدث فرقًا شاسعًا مع مرور الوقت. بعبارة أخرى، إنَّها تحاول معالجة أعراض تلك الحالات دون التمحيص في مسبِّباتها. هل تركِّز على على الأعراض وتتجاهل المرض؟ هل يعقل أن يركِّز طبيب على أعراض سرطان الرئة مثلًا دون مناقشة المريض في السبب الذي أدى إلى المرض وهو عدد مرات تدخينه التي تصل إلى أربعين مرة يوميًّا؟! هكذا تفعل أغلب المراجعات حيث تضع لزقة جرح على أعطال حسَّاسة ومهمَّة دون التطرق للأسباب التي أدت إلى حدوثها، وهذا الفشل في معالجة جذور المشكلة هو سبب نفوري من مراجعات المواقع؛ أعلمُ أن المسؤول الأول عن تلك المشكلة هو الفريق الرقمي (digital team)، وهو الفريق المسؤول عن تطوير وتجريب وتنفيذ الاستراتيجيات اللازمة لتحقيق الأهداف وجذب الجمهور عبر الوسائل التقنية مثل الويب، والذي أنشأ تلك المراجعات ولكن بحسب الخبرة التي اكتسبتها فإنَّ ذلك قلَّما يكون مصدر المشكلة. لنأخذ مثالًا عن هندسة المعلومات (information architecture) لموقع ما حيث أغلب المواقع التي راجعتها تكون هيكلة ومعمارية المعلومات فيها مرعبة والتي لا تعكس رؤية وتطلعات المستخدمين. من جهة أخرى، إن كانت جميع مراجعات الويب التي أكتبها تشير إلى هذه المشكلة وتقترح حلًا لها فأنا حقيقةً لا أقدم شيئًا ذو قيمة إذ يَعرف أغلبية الفريق المسؤول عن الموقع مسبقًا طريقة هيكلة وهندسة المعلومات بما يتوافق مع حاجة المستخدم؛ أي أنَّني أخبرهم في النهاية بما يعرفونه وأعطيهم لائحة أوامر لتوجيههم وهذا قد يعطي انطباعًا بأنَّهم حمقى لعدم إصلاحهم تلك المشكلة، وهذا المثال ينطبق على جميع المجالات. يَعرف معظم الفريق المسؤول عن الموقع حق المعرفة أنَّه يجب أن يكون الموقع سريعًا، وسهل الوصول إليه، وسهل الاستخدام، ويظهر في أعلى نتائج البحث ...إلخ. كما أنَّهم يمضون كل ساعة من عملهم في فحص الموقع وسيكتشفون بالتأكيد جميع ما أشرتُ إليه ويحتمل أنَّهم يعرفون الحل أيضًا ولا تظنَّنَّ أنَّهم لم يفكروا بتلك المشكلات قط. ما هي الأشياء المفيدة التي يفترض أن تقدمها مراجعات المواقع؟ إن كان الفريق المسؤول عن الموقع يعلم الجواب مسبقًا فهذا يدعنا أمام السؤالين التاليين: ما هي الأشياء المفيدة التي يجب أن تقدمها مراجعات الويب؟ ولماذا لم يعمل الفريق على إصلاح المشكلات إن كان يعرفها ويعرف الحلول المقابلة لها مسبقًا؟ لم يسبق لي أن قابلت فريقًا يتكاسل عن إصلاح المشكلات التي تعترض مواقعهم أو يغض الطرف عنها؛ يُعزى السبب دائمًا لبعض الأمور الخارجية التي تحد من قدرتهم والتي لا يمكنهم التغلب عليها. عندما انظر إلى موقعٍ فلا أرى التصميم والكود والمحتوى فقط بل ألاحظ وجود القيود التي تعترض الشركة أو التي تتصف بها، وأرى كيف تقيِّم وتتفهم الشركة العالم الرقمي، وأرى كيف تبدو من الداخل وكيف لا تعي حاجات المستخدم. الموقع الإلكتروني هو كنافذة يطل على جوهر الأعمال، كما يكشف كل عيوبها ونقاط ضعفها للعالم. ركز على قصور الأعمال لا على فريق الموقع يجب أن تركز المراجعة الجيدة على النقائص والعيوب في الموقع لا على الأشياء الجمالية والظاهرية فقط، ويجب أن تركز أيضًا على ضعف الأعمال لا على فريق الموقع بالإضافة إلى لفت الانتباه للمشاكل الأخرى مثل تلك المتعلقة بهندسة المعلومات. يجب أن يُذكر فيها أنَّه يجب البدء بحل تلك المشكلات حتى يكون الموقع سهل الاستخدام. ربما تودُّ الإشارة إلى ضعف الأداء، عند الحديث عن الأداء، والذي قد يكون بسبب انشغال الفريق بمشاريع أخرى. عندما تواجه مشكلة مثل الافتقار إلى سهولة الاستخدام فلا تشير إلى المشكلة وحلها فحسب بل حاول شرح الحاجة لإنشاء معايير ثابتة لفحص سهولة الاستخدام، وأشر إلى القيود والأشياء التي يُسبِّب وجودها تلك المشكلة. بعبارة أخرى، لا تصف المشكلة والحل فقط بل سلِّط الضوء على الأشياء الرئيسيَّة التي أدت إلى حدوثها. تحديد المشكلات الأساسيَّة والمهمَّة ربما لا تستطيع تحديد درجة أهمية المشكلات وأولويتها دومًا لذا استعن بأحد مصممي الويب فهو يستطيع مساعدتك وقد يحدِّد لك سبب وجود تلك المشكلات التي تحتاج إلى ذكرها. مع مرور الوقت يمكنك أن تخمن الجواب دون سؤال أحد عنه؛ لقد رأيت الكثير من المشكلات التي لها المسببات ذاتها مرات عديدة بدءًا من واجهة سيئة التصميم أنشأها أحد المختصين بمجالات أخرى مثل الطباعة وحتى كتابة المحتوى من قبل شخص ليس لديه أي خبرة بالكتابة في مواقع الويب، لذا أستطيع الآن معرفتها بسهولة بمجرد النظر إلى أي موقع. رأيت مرارًا وتكرارًا مشكلات مثل نقص الاستثمار وضعف القيادة والعداء بين أعضاء الإدارة وغيرها والتي يجب تحديدها ضمن المراجعة. الدور الحقيقي لمراجعات المواقع قد تحوي بعض مراجعات المواقع على لهجة غير ودودة وأنا أتفهم سبب ذلك. على أي حال، إن كان لدي الخيار بين كتابة مراجعة أو إجراء اختبار مع المستخدمين للموقع فسأختار الخيار الثاني دومًا، ومع ذلك فأنا أعتقد أنَّ المراجعة إن كتبت بشكل صحيح مع أخذ الملاحظات السابقة بعين الاعتبار فسيكون لها تأثير كبير مشابه للخيار الأخير. سيساعدك اختبار سهولة الاستخدام على تحديد المشكلات وإصلاح بعض الأشياء السطحية ولكنَّها نادرًا ما تُظهر ما هي مسببات المشكلة. من المفيد الحصول على وجهة نظر خارجيَّة إن كان المراجع (الناقد) سيلقي نظرة عميقة نحو الجذور مبتعدًا عن القشور السطحية. ترجمة -وبتصرف- للمقال Website Reviews: Why they suck and how to make them better لصاحبه Paul Boag. حقوق الصورة البارزة محفوظة لـ Freepik
  6. أعتقد أنَّه من المهم كلَّما تحدثنا عن بعض المفاهيم البرمجيَّة التأني قليلًا والتراجع بضعة خطوات بعيدًا عن تفاصيل النقاش والنظر إلى الصورة كاملة. تطرَّقت سابقًا باختصار إلى فكرة التأثيرات الجانبية في البرمجة ولكنَّني توسَّعت فيها عندما تحدثت عن استخدام معايير PSR والتي يجب أن يفهمها من يهتم بأخذ فكرة عامة عن بعض نواحي البرمجة. أذكِّرك بتعريف التأثيرات الجانبية كما ذكر في معيار PSR-1 وهو: يجب على الملف أن ينشئ بنى برمجية جديدة مثل الأصناف والدوال والثوابت ...إلخ. ودون أن يسبب أي "تأثير جانبي"، أو يجب أن ينفِّذ الخطوات المنطقيَّة التي تؤدي إلى "تأثيرات جانبية" ولكن لا يسمح أن ينفِّذ كلا الأمرين. أنا لست هنا بصدد مناقشة المنطق الذي يؤدي إلى التأثيرات الجانبية لأنَّه ستحدث تأثيرات جانبية في بعض الأحيان، ولكن أنا مهتم جدًا بفهم التأثيرات الجانبيَّة في البرمجة (ما هي وكيف أتجنبها ...إلخ). التحدث عن التأثيرات الجانبية في أحد السياقات قد لا يختلف عن سياقات أخرى بينما في البرمجة قد يعني شيئًا آخر. التأثيرات الجانبيَّة للبرمجة فكرة «التأثيرات الجانبية» عمومًا أو التعريف العام لها بسيط جدًا وهو: تأثير اعتيادي أو ثانوي غير مرغوب به لدواء أو علاج طبي. إن أغفلت جانب العلاج بأكمله فسيبقى لديك التأثيرات الثانوية غير المرغوب بها وهنا يكمن الجزء الذي يحتمل أن يكون مربكًا وهو: نختار أن نضمِّن ملفًا؛ نعلم ما يفعله هذا الملف؛ وبذلك، إن كنا نعلم ما الذي أدرجناه وما الذي يفعله فكيف يستطيع أن يضيف شيئًا غير مرغوب فيه؟ هكذا أُسأل غالبًا عندما تميل دفة الحديث تجاه موضوع التأثيرات الجانبيَّة. لقد عمَّمتُ مفهوم التأثيرات الجانبيَّة دومًا في البرمجة على أنّه «أي شيء» يغير حالة البرنامج. التأثيرات الجانبيَّة في ووردبريس لنفترض أنَّك تعمل على ووردبريس ولديك ملفًا مسؤولًا عن إضافة قائمة فرعيَّة إلى قائمة موجودة في أعلى مستوى. يمكن أن يكون ذلك الصنف (class) بسيطًا إذ يتلخص عمله باستدعاء جزء من الواجهة البرمجية لورردبريس (WordPress API)؛ وستُنفَّذ إحدى الدوال عند وقوع حدث معيّن مرتبط بخطَّاف (hook) ثمَّ ستُضاف بعدئذٍ القائمة الفرعية. لكن ماذا لو أدى ذلك الصنف أو دالة فيه أو تضمين ملف ما إلى إضافة بعض شيفرات JavaScript أو دالة تؤدي إلى تغيير حالة القائمة الفرعية مثل أن تسلك السلوك نفسه الذي تبديه عندما يُضغط عليها إذا مرَّر المستخدم الفأرة فوقها أو أي سلوكٍ آخر لم يقصده المستخدم ولا البرنامج. يمكننا أن ندعو ما سبق بالتأثير الجانبي الذي يغير من حالة البرنامج. ما الذي يجب أن تفعله الوحدة (Module)؟ يجب على الصنف القيام بشيء واحد بحسب مبدأ المسؤولية الواحدة (single responsibility principle) وهو: إن مبدأ المسؤولية الواحدة هو مبدأ برمجي ينص على أنَّه يجب على كل وحدة أو صنف أن يتحمل مسؤولية جزء واحد من الوظيفة التي يقدمها التطبيق، ويجب على ذلك الصنف أن يغطي تلك المسؤولية كاملةً. لكن عندما نضيف أمرًا جديدًا إلى الصنف ليزيد من وظائفه أو نغيّر جزءًا جوهريًا فيه فهذا يمثِّل تأثيرًا جانبيًا. تذكر أنَّ إضافة مسؤوليات جديدة إلى الصنف ليست أمرًا سيئًا بالمطلق (فالأمر لا يماثل التأثيرات الجانبيَّة التي تحدَّث عنها معيار PSR-1) ولكن من المهم معرفة متى يجوز ذلك ومتى يكون من المستحسن تجنبه. كيف نضيف وظيفةً أخرى للبرنامج؟ أعتقد أنَّ السؤال الذي يجب أن نسأله أنفسنا هو كيف نضيف وظيفة تغير من حالة برنامج وإن أضفناها فهل هي خطأ يا ترى؟ لا، ليست خطأً، فضع ببالك أنَّ للبرامج حالاتٌ كثيرة تختلف اعتمادًا على عدِّة أشياء، فقد تُفعَّلُ إحدى تلك الحالات عندما يُكتَبُ شيءٌ ما إلى القرص الصلب أو إلى قاعدة البيانات، وقد تُفعَّل عندما يضغط المستخدم على أحد عناصر الواجهة الرسومية، وهكذا. لكن التأثيرات الجانبيَّة تظهر عند حدوث إحدى حالات البرنامج. لنعد إلى مثال القائمة الفرعيَّة حيث من المفترض أن تنفِّذ شيئًا واحدًا، ولا يجب أن تغير شيئًا آخرًا سوى ما نراه على الشاشة أي يجب ألَّا تضيف شيئًا إلى قاعدة البيانات وألَّا تغير طريقة عرض أي من العناصر الأخرى خارج النطاق المحدِّد لها ...إلخ. طريقة إضافة وظيفة تعمل بالطريقة نفسها وهي: تعريف أصناف تكون مسؤولة عن أداء غرض محدَّد ثم ترك تلك الأصناف لتنفِّذ ما هي مسؤولةٌ عنه. عندما تعمل هذه المكونات جنبًا إلى جنب مع مكون آخر يصبح لديك برنامجًا يعمل بشكل صحيح تكون كل وحدة فيه (صنف أو دالة أو غيرهما) تعمل ضمن المسار المحدَّد لها. الخلاصة أنا متأكد أنَّ أغلب من يقرأ هذه المقالة قد تبنَّى لنفسه تعريفًا لماهية التأثيرات الجانبيَّة، وأنا فعلت ذلك أيضًا. فكر في ماهية التأثيرات الجانبيَّة من هذه الناحية وهي: إذا استدعيت دالة وأعادت قيمةً ما، ثم استدعيتها مرة أخرى بنفس المعطيات، فيجب أن تعيد القيمة نفسها. إذًا هكذا تتأكد أنَّ الدالة أو الصنف أو الوحدة لا تحوي تأثيرات جانبيَّة. على أي حال، أنا ارتكبتُ مثل تلك الأخطاء وأتوقع أنني سأستمر بارتكابها، ولكن غايتنا هي محاولة تقليل التأثيرات الجانبية ما استطعنا، وبعد فترة سيصبح ذلك أمرًا بدهيًا لك. ترجمة -وبتصرف- للمقال What Are Programming Side Effects, Anyway?‎‎ لصاحبه Tom McFarlin. حقوق الصورة البارزة محفوظة لـ Freepik
  7. يحتوي لينكس على عددٍ هائلٍ من الأدوات التي تلبي كافَّة احتياجات المستخدم؛ إن كانت استخداماتك في مجال التطوير أو الحماية أو إدارة الأنظمة …إلخ. فنظام لينكس هو أفضل خيارٍ من بين أنظمة التشغيل. إنَّ الأمر «netstat» هو أحد الأوامر المستخدمة بكثرة في لينكس لإظهار معلومات تفصيليَّة عن الشبكة وكيفية اتصال حاسوبك مع الحواسيب أو الشبكات الأخرى؛ فمن مهامه عرض اتصالات وحالة الشبكة وجداول التوجيه وغيرها من البيانات والمعلومات الإحصائيَّة. ظهر الأمر «ss» باعتباره إصدارًا جديدًا للأمر «netstat» ولكن سرعان ما حلَّ مكانه وأصبح بديلًا له في لينكس نظرًا لما يوفِّره من مزايا مثل السرعة وعرض معلومات أوسع وأكثر تفصيلًا بالإضافة إلى سهولته وبساطته، ويمكنك التأكد من ذلك بتصفح صفحة الدليل لكلا الأمرين. يستطيع الأمر «ss» عرض معلومات عن الرزم (packet)، والبروتوكولات TCP و UDP و DCCP و RAW، بالإضافة إلى جميع مقابس الشبكة؛ يمكنه أيضًا الحصول على معلومات تفصيليَّة حول كيفيَّة اتصال حاسوبك مع الحواسيب الأخرى، وإظهار بيانات إحصائيَّة حول بروتوكولات الشبكة والمقابس المتَّصلة؛ إنَّ الحصول على هذا الكم من المعلومات يساعدنا بالتأكيد على حلِّ مختلف مشاكل وأعطال الشبكة، وبالتالي تعتبر هذه الأداة من أهمِّ الأدوات في حقيبة الإسعافات الأوليَّة لمديري الأنظمة. الاستخدامات الأساسيَّة يُستخدم الأمر «ss» كغيره من الأوامر التي تعمل على لينكس وذلك بكتابته في سطر الأوامر وإتباعه بخياراته، ويمكن أخذ لمحة أوليّة عن الأمر «ss» وخياراته بقراءة صفحة الدليل لهذا الأمر وذلك باستخدام الأمر «man ss»؛ قد تجد للوهلة الأولى، بعد الاطلاع على صفحة الدليل لكلا الأمرين، أنَّ الأمر «netstat» يحوي كثيرًا من الخيارات خلافًا للأمر «ss» وتظنُّ أنَّ الأول أفضل وأكثر كفاءة من الثاني، والحقيقة خلاف ذلك. إن نفذت الأمر «ss» دون أي خيارات فستحصل على معلومات عن الاتصالات لمقابس TCP كما موضح بالصورة. يمكن حفظ المعلومات التي حصلت عليها للتو في ملف خارجي لاطلاع عليها لاحقًا باستخدام الأمر: ss > ss_output قد لا يكون الأمر «ss» كافيًا بعض الأحيان، فإذا أردت الحصول على قائمة بالمقابس التي تستمع للاتصالات. استخدم الخيار ‎-l مع الأمر السابق. ss -l يمكن أيضًا استخدام خيارات أخرى مثل الخيار ‎-t لعرض اتصالات TCP، والخيار ‎-u لعرض اتصالات UDP، والخيار ‎-x لعرض مقابس يونكس. توضح الصورة التالية ناتج تنفيذ الأمر ss -x. استخدام الخيارات السابقة سيعطي قائمةً بالاتصالات الحالية وإذا أردنا معرفة الاتصالات المنصتة فنضيف الخيار ‎-a كما يلي: ss -t -a وسيُظهر هذا الأمر جميع مقابس TCP التي تنصت للاتصالات كما تبيِّن الصورة؛ لاحظ أنَّ الخيار الأخير هو خدمة SSH وهي تنصت للاتصالات. إن جرَّبت الأداة «netstat» للحصول على المعلومات السابقة فستظهر حقول أخرى مثل اسم العملية PID، واسم الأمر المسؤول عن هذه الاتصالات وهذا ما يصعِّب من قراءتها. بإمكانك الآن معرفة عناوين IP والمنافذ المستخدمة في إنشاء الاتصال بين حاسوبك والحواسيب والشبكات الأخرى والتي ستساعدك لتتمكن من تحليل المشاكل والأعطال وإصلاحها، ولكن مازال هنالك بعضًا من المعلومات تنقصك يجب عليك معرفتها. تصفية النتائج باستخدام حالات اتصال TCP تصفية نتائج الأمر «ss» واحد من أكثر الخيارات فائدة؛ تعتمد عملية التصفية على حالات TCP التي تصف مراحل حياة الاتصال، إذ يمر أي جهازان قبل إنشاء اتصال بينهما وحتى إنهائه بمراحل عدَّة، وذلك لحصر المعلومات التي نريد الحصول عليها في مجال ضيق ومحدود. من حالات الاتصال TCP التي يمكن استخدام عملية التصفية معها هي: الحالة شرح الحالة closed “غير مُنشأ” هي الحالة الافتراضيَّة التي يكون فيها الجهاز قبل بدء عملية تأسيس الاتصال، أي أنَّ الجهاز غير متصل مع أحد. listening “استماع” يكون الجهاز (غالبًا الخادم) في هذه الحالة بانتظار استلام رسالة تزامن (SYN اختصارًا للعبارة synchronize) من العميل. syn-sent “’طلب التزامن” يرسل في هذه الحالة أحد الجهازين (غالبًا العميل) رسالة تزامن (SYN) إلى الجهاز الذي يريد بدء وتأسيس اتصال معه، وينتظر منه بالمقابل الرد برسالة تزامن أخرى. sys-recv “تأكيد التزامن” أرسل كلا الجهازين في هذه الحالة رسالة تزامن وينتظران تقرير الاستلام لهذه الرسائل لإنهاء إعداد وتهيئة الاتصال بينهما. established “مُنشأ” وهي الحالة الثابتة والمستقرة للاتصال بين جهازين، ويمكن بدء تبادل البيانات بينهما متى دخل كلا الجهازين في هذه الحالة وذلك بعد أن يكون كلٌّ منها قد أرسل رسالة تزامنٍ واستلم تقرير التوصيل من الآخر. close-wait “بدء إنهاء الاتصال” استلم في هذه الحالة أحد الجهازين رسالةً لإنهاء الاتصال (FIN)، اختصارًا للعبارة (finish)، من الآخر وهو بانتظار تأكيد هذه الرسالة لإنهاء الاتصال معه. fin-wait-1 “انتظار إنهاء الاتصال-1” يكون الجهاز -الذي يريد قطع الاتصال- في هذه الحالة بانتظار تقرير استلام رسالة إنهاء الاتصال (FIN) أو قطع الاتصال التي أرسلها للجهاز المقابل. fin-wait-2 “انتظار إنهاء الاتصال-2” يدخل الجهاز في هذه الحالة بعد استلام تقريرٍ عن توصيل رسالة إنهاء الاتصال التي أرسلها للجهاز الآخر وهو بانتظار رسالة (FIN) لتأكيد إنهاء الاتصال منه. closing “تأكيد إنهاء الاتصال” يدخل بها الجهاز بعد استلام رسالة إنهاء الاتصال (FIN) وإرسال تقرير باستلامها إلى الجهاز الآخر الذي يريد قطع الاتصال. last-ack “تقرير الاستلام الأخير” أرسل أحد الجهازين تقريرًا باستلام رسالة (FIN) من الجهاز الآخر الذي يريد قطع الاتصال ثم أعاد إرسال الرسالة (FIN) له لتأكيد قطع الاتصال وهو الآن بانتظار آخر تقرير يؤكد استلام هذه الرسالة. time-wait “مهلة إنهاء الاتصال” هو الوقت الذي ينتظره الجهاز بعد إرسال تقريره الأخير (last-ack) للتأكد من أنَّ الجهاز المقابل قد استلمه، وبعد انتهاء المهلة تصبح حالة هذا الجهاز “غير متصل” (closed). هنالك أيضًا حالات متاحة يمكن استعمالها مع الأمر «ss» وهي: all: اختيار جميع الحالات السابقة. connected: جميع الحالات السابقة باستثناء حالتي الاتصال “غير مُنشأ” (closed) و “استماع” (listening). synchronized: جميع حالات الخيار السابق باستثناء حالة إرسال رسالة التزامن (sys-sent). bucket: تشمل الحالتان sys-recv و time-wait. big: عكس الخيار السابق. إن وجدت نفسك تائهًا في دوامة تلك الحالات، أعد قراءتها بهدوء. طريقة كتابة الأمر «ss» وتصفية النتائج سهلة، وهي للعنوان Ipv4: ss -4 state FILTER أما للعنوان IPv6 فهو: ss -6 state FILTER غير العبارة “FILTER” إلى واحدة من الحالات السابقة. ومثال على ذلك استخدام الأمر التالي لعرض المقابس في حالة الاستماع: ss -4 state listening والنتائج التي ستحصل عليها هي كما مبيَّنة في الصورة. عرض المقابس المتصلة بعناوين محدَّدة توفِّر الأداة «ss» وسيلة للحصول على معلومات عن الاتصالات التي تنشأ مع عناوين IP محدَّدة؛ إن أردت معرفة فيما إذا كان الجهاز ذو العنوان 192.168.1.139 على سبيل المثال متصلًا بخادمك، فنفذ الأمر التالي: ss dst 192.168.1.139 ستحصل على معلوماتٍ شبيهةٍ بتلك الموجودة في الصورة التالية: حان دورك الآن عرضنا في هذا المقال بعضًا من الخيارات الأساسيَّة للأمر «ss» التي يفترض الإلمام بها والتي ستساعدك في تحليل وإصلاح المشاكل التي قد يتعرض لها خادمك أو شبكتك أثناء عملهم؛ توجَّه مباشرة بعد الانتهاء من هذه المقالة نحو صفحة الدليل للأمر «ss» للتعرُّف على المزيد من المهام والخيارات. ترجمة -وبتصرف- للمقال an introduction to the ss command لصاحبه Jack Wallen.
  8. إنَّ لغة البرمجة Ruby هي إحدى لغات البرمجة الديناميكيِّة التي تُستخدم في أغلب مجالات البرمجة بدءًا من كتابة أكواد البرامج البسيطة وحتى الألعاب وتطبيقات الويب. كان أول إصدار لهذه اللغة عام 1993 في اليابان ولكنها لم تكتسب شهرتها حتى عام 2005 إذ استُخدمت على نطاقٍ واسعٍ في برمجة وتطوير الويب. بالرغم من أنَّها سهلة الاستخدام ومناسبة جدًا لحديثي العهد في مجال البرمجة إلا أنَّها قوية بما يكفي لإنشاء البرامج والأنظمة المعقَّدة. بعبارة أخرى، هذه اللغة هي أفضل خيار للمبتدئين والمحترفين في الوقت ذاته. توجد طرائق عدَّة لتثبيت Ruby على نظام التشغيل ويندوز 10 إلَّا أنَّ مايكروسوفت تنصح باستخدام “نظام لينكس الفرعي في ويندوز” (Windows Subsystem for Linux)، ويدعى اختصارًا WSL، وهي إحدى مزايا ويندوز 10 التي تسمح للمطورين والمبرمجين بالعمل ضمن بيئة لينكس وتشغيل سطر الأوامر (bash) والاستفادة من أدواته وتطبيقاته المختلفة بينما هم في ويندوز ودون الحاجة للجوء إلى البيئة الافتراضيَّة (virtual machine). بما أنَّ معظم المكتبات المتعلقة بهذه اللغة صُمِّمت للعمل ضمن بيئة لينكس فإنَّ تشغيلها على ويندوز يؤدي إلى حدوث الكثير من الأخطاء، لذا اشتركت مايكروسوفت مع Canonical وتوزيعات أخرى من لينكس في مشروع لتفعيل الصدفة (Shell) ودعم أدوات سطر أوامر لينكس على ويندوز الأمر الذي ساعد في حل المشكلات السابقة، ويمكن حينها تشغيل Ruby وجميع الأدوات والمكتبات المرتبطة بها على ويندوز دون أخطاء. إن كان نظام التشغيل على حاسوبك هو ويندوز 10 مع إمكانيَّة استخدام صلاحيات المستخدم المسؤول كما ثبتَّ عليه مؤخرًا آخر التحديثات، وكنت تبحث عن طريقةٍ لتثبيت أحدث إصدار من Ruby وكل ما يتعلق بها فقد اخترت المقال المناسب ليرشدك لذلك. الخطوة الأولى: تثبيت الصدفة على ويندوز تحتاج لتثبيت Ruby والعمل على هذه اللغة إلى استخدام سطر الأوامر؛ إن لم تسمع بهذا المصطلح من قبل فهذا يعني أنك حديث عهد بمجال البرمجة. سطر الأوامر هو بيئة غير رسوميَّة أي لا دور للفأرة والأيقونات فيها وبدلًا من ذلك تستطيع التحكم بالحاسوب وأداء المهام الروتينيَّة بكتابة مجموعة من الأوامر (نصوص) ضمن سطر الأوامر يفهمها الحاسوب لأداء مهمَّة ما ثمَّ تظهر لك النتيجة على شكل نص أيضًا؛ لا يستطيع مطورو البرامج الاستغناء عن سطر الأوامر فهو من الأدوات الأساسيَّة لديهم. يحوي نظام التشغيل ويندوز على نوعين من سطر الأوامر وهما: موجه الأوامر (command prompt) والصدفة (powerShell)؛ قد يشبهان بعضهما ظاهريًا ولكنها يختلفان كثيرًا عمليًا إلى درجة انعدام التشابه؛ موجه الأوامر قديم جدًا فهو من مخلفات نظام التشغيل MS-DOS إذ لم يعد يلبي كافة الاحتياجات فأصبح محدودًا بينما ظهرت الصدفة (powerShell) مع ويندوز 7 لتوفر بيئة جديدة ومتطورة في ويندوز، وهي معقَّدة بعض الشيء ولكنَّها ذات كفاءة عالية جدًا. سنثبِّت على ويندوز الصدفة ذات النوع (bash) وهي الأكثر شهرة والمتواجدة في نظامي التشغيل لينكس و macOS؛ للبدء بذلك يجب تفعيل “وضع المطور” (developer mode) -تأكد قبل ذلك أنَّ نظام التشغيل هو 64 بت- عبر الذهاب إلى خيار “التحديث والأمان” (Update & Security) الموجود في الإعدادات (settings) ثمَّ اختيار “للمطورين” (For developers) الموجود ضمن القائمة الجانبيَّة وتفعيل خيار “وضع المطور” ثمَّ حفظ الإعدادات. الخطوة التالية هي الذهاب إلى “لوحة التحكم” (control panel) ثم اختيار “البرامج” (programs) وبعدها اختيار “تشغيل ميزات ويندوز أو إيقاف تشغيلها” (Turn Windows features on or off) وتفعيل الخيار “Windows Subsystem For Linux (Beta)” من القائمة ثمَّ الضغط على “موافق” والانتظار حتى الانتهاء من تثبيت العناصر الإضافية؛ سيظهر بعد ذلك خيار يطالبك بإعادة تشغيل الحاسوب؛ بعد إعادة التشغيل، افتح موجه الأوامر واكتب ما يلي: C:\Users\Sammy> bash ستظهر لك رسالة تخبرك بالحاجة لتثبيت bash من متجر ويندوز لذا اضغط “y” لإتمام هذه العملية. This will install Ubuntu on Windows, distributed by Canonical and licensed under its terms available here: https://aka.ms/uowterms Press "y" to continue: y Downloading from the Windows Store... 100% Extracting filesystem, this will take a few minutes.… سيُطلب منك بعد إنهاء عملية التثبيت إنشاء مستخدم جديد. Please create a default UNIX user account. The username does not need to match your Windows username. For more information visit: https://aka.ms.wslusers Enter new UNIX username: Sammy Enter new UNIX password: أدخل اسم المستخدم وكلمة المرور؛ لا تقلق إذا لم يظهر أي شيء ضمن خيار إدخال كلمة المرور بينما أنت تضغط على المفاتيح إذ ذلك من دواعي الأمان وستعتاد عليه لاحقًا. ستعمل بعد ذلك الصدفة (bash) وسيظهر اسم المستخدم الذي أدخلته للتو ضمن المحث كما هو موضح. sammy@yourmachine:/mnt/c/Users/Sammy$ ملاحظة: تكون الملفات المتعلقة بنظام لينكس الفرعي في ويندوز WSL مخفية ولا يدعم ويندوز إمكانية الوصول إليها مطلقًا وقد تتلف هذه الملفات إن حاولت الوصول إليها باستخدام برنامج أو مدير ملفات أو غيرهما؛ خلافًا لذلك، من الممكن الوصول إلى الملفات الموجودة على النظام بوساطة الصدفة (bash) فمثلًا يمكن الوصول إلى محتويات القرص C بكتابة المسار ‎/mnt/c في سطر الأوامر. الخطوة الثانية: تثبيت مدير إصدارات Ruby‏ (RVM) يعتبر مدير إصدارات Ruby‏ (Ruby Version Manager)، ويدعى اختصارًا RVM، بأنَّه المسؤول عن تثبيت لغة البرمجة Ruby وإعدادها، وإدارتها، وضبط البيئة البرمجية المرتبطة بها؛ ويعمل على نظام التشغيل لينكس و macOS. نستخدم أولًا الأمر gpg لطلب الحصول على المفتاح العام المخصَّص لمشروع RVM من خادوم المفتاح العام (public key server) الذي يُستعمل لتوقيع جميع إصدارات RVM وذلك للتحقق من إصدار RVM الذي ننوي تنزيله. $ gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB الخطوة التالية هي تثبيت الحزمة gnupg2 التي ستستخدمها أثناء تثبيت RVM للتحقق من الإصدار وذلك بكتابة الأمر التالي: $ sudo apt-get install gnupg2 سيظهر لك محث يطالبك بإدخال كلمة المرور؛ أدخل كلمة المرور المخصصة للمستخدم الذي أنشأته منذ قليل أثناء تثبيت الصدفة (bash). استخدم بعدها الأمر curl لتنزيل سكربت تثبيت RVM من موقعه. $ \curl -sSL https://get.rvm.io -o rvm.sh يساعدنا الخط المائل العكسي الذي استخدمناه في بداية الأمر على التأكد من استخدام الإصدار المستقر من curl بدلًا من الإصدارات المعدَّلة؛ الخيارات التي استخدمناها مع الأمر السابق هي: ‎-s أو ‎–silent: يخفي نسبة اكتمال عملية التنزيل. -S أو ‎–show-error: يظهر رسالة بالخطأ إن فشلت عملية التنزيل. -L أو ‎–location: في حال تغيير موقع الصفحة المطلوبة إلى موقع آخر فإنَّ هذا الأمر يساعد في إعادة تنفيذ الأمر من جديد للموقع الجديد الذي يرسله الخادم. يمكن التحقق من محتوى السكربت الذي نزلته من الموقع بفتحه عبر less وذلك بكتابة الأمر التالي: $ less rvm.sh بعد أن تطمئن من محتواه، اضغط “q” للخروج من المحرر والعودة إلى المحث ثمَّ شغل هذا السكربت لتنزيل أحدث إصدار من RVM عبر الأمر: $ cat rvm.sh | bash -s stable سينشئ السكربت مجلدًا جديدًا باسم ‎.rvm في مجلد المنزل للمستخدم الذي أنشأته لوضع جميع ملفات Ruby و RVM وما يتعلق بهما؛ سيعدِّل أيضًا ملف البدء ‎.bashrc لإضافة المجلد ‎.rvm/bin إلى قائمة المجلدات التي ستبحث فيها الصدفة عند تنفيذ أحد الأوامر مما يعرِّف الصدفة على مكان الملفات التنفيذيَّة عند استخدام الأمر rvm بسهولة. على أي حال، إنَّ الملف ‎.bashrc لا يُقرأ إلَّا في بداية الجلسة لذا لن تُفعَّل التغييرات التي أجريت عليه إلا بعد بدء جلسة طرفية جديدة، أي لن تتمكن من الوصول إلى الأمر rvm في الجلسة الحالية لذا نفذ الأمر التالي لتخطي هذه المشكلة: $ source ~/.rvm/scripts/rvm الخطوة الثالثة: تثبيت Ruby يمكن الآن استخدام الأمر rvm لتثبيت أحدث إصدار من Ruby وكل ما يتعلق بها وتعيينه الإصدار الافتراضي الذي سيستخدمه نظام التشغيل وبذلك لن يحدث أي تضارب إن كان هنالك إصدار آخر مثبت على النظام؛ نفذ الأمر التالي: $ rvm install ruby –default ستبدأ العملية أولًا بتنزيل أحدث إصدار من Ruby. Searching for binary rubies, this might take some time. Found remote file https://rvm_io.global.ssl.fastly.net/binaries/ubuntu/16.04/x86_64/ruby-2.4.0.tar.bz2 هنالك بعض الحزم اللازمة لعمل Ruby فإن كانت غير موجودة على النظام فستثبَّت تلقائيًّا. Checking requirements for ubuntu. Installing requirements for ubuntu. Updating system.... Installing required packages: gawk, libssl-dev, zlib1g-dev, libyaml-dev, libsqlite3-dev, sqlite3, autoconf, libgmp-dev, libgdbm-dev, libncurses5-dev, automake, libtool, bison, libffi-dev, libgmp-dev, libreadline6-dev.................. Requirements installation successful. سيُطلب منك إدخال كلمة المرور لبدء عملة التنزيل والتثبيت؛ بعد الانتهاء من تثبيت الحزم السابقة ستبدأ عملية تنزيل وتثبيت Ruby. ruby-2.4.0 - #configure ruby-2.4.0 - #download % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 16.4M 100 16.4M 0 0 4828k 0 0:00:03 0:00:03 --:--:-- 4829k ruby-2.4.0 - #validate archive ruby-2.4.0 - #extract ruby-2.4.0 - #validate binary ruby-2.4.0 - #setup ruby-2.4.0 - #gemset created /home/brian/.rvm/gems/ruby-2.4.0@global ruby-2.4.0 - #importing gemset /home/brian/.rvm/gemsets/global.gems.............................. ruby-2.4.0 - #generating global wrappers........ ruby-2.4.0 - #gemset created /home/brian/.rvm/gems/ruby-2.4.0 ruby-2.4.0 - #importing gemsetfile /home/brian/.rvm/gemsets/default.gems evaluated to empty gem list ruby-2.4.0 - #generating default wrappers.....… بعد الانتهاء من العملية السابقة، ستكون لغة البرمجة Ruby بأحدث إصدار لها قد ثُبِّتت على حاسوبك بالإضافة إلى بعض الأدوات المرتبطة بها مثل الأداء irb وهي الطرفية التفاعلية في Ruby، والأداة rake التي تستطيع بوساطتها تشغيل السكربتات تلقائيًّا، والأداة gem لتثبيت وتحديث المكتبات. استخدم الأمر التالي لمعرفة رقم الإصدار الذي ثُبِّت للتو: $ ruby -v وستظهر لك نتيجة شبيه بالنتيجة التالية: ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux] انتهينا من تثبيت لغة البرمجة Ruby؛ في كل مرة تريد استخدامها افتح موجه الأوامر ثمَّ سجل الدخول إلى الصدفة بكتابة الأمر (bash -l)؛ إن لم يعمل مدير إصدارات Ruby ‏(RVM) عند بدء جلسة جديدة تلقائيًّا فتأكد من تعديل ملف البدء ‏‎.bashrc الذي تحدثنا عنه سابقًا أو ستضطر لتنفيذ الأمر التالي كل مرة تسجل فيها الدخول إلى الصدفة. $ source ~/.rvm/scripts/rvm الخطوة الرابعة: إنشاء برنامج بسيط سننشئ في هذه الخطوة برنامجًا بسيطًا جدًا يظهر الرسالة “Hello, world” للتأكد من بيئة العمل وأنَّ كلَّ شيء يعمل بشكل صحيح. سننشئ أولًا ملف باسم hello.rb باستخدام المحرر النصي nano. $ nano hello.rb اكتب النص التالي داخل الملف: puts "Hello, World!" اضغط Ctrl+X للخروج من المحرر، وسيسألك إن كنت تريد حفظ التغييرات فاضغط Y للموافقة والخروج. شغل البرنامج بكل بساطة باستخدام الأمر التالي: $ ruby hello.rb سيُنفذ البرنامج الذي كتبته للتو وستظهر على الشاشة الرسالة: Hello, world! نتأكد بذلك أنَّ كل شيء على ما يرام. الخلاصة أصبحت الآن لغة البرمجة Ruby جاهزة للعمل على حاسوبك ذي النظام ويندوز 10؛ انطلق الآن لبدء استخدام لغة البرمجة Ruby واستكشافها لإنشاء البرامج وكتابة الأكواد وتطوير التطبيقات أو الويب. ترجمة -وبتصرّف- للمقال How To Install Ruby and Set Up a Local Programming Environment on Windows 10 لصاحبه Brian Hogan
  9. تحتاج لوضع خطَّة صيانة شهريَّة لمواقعك على ووردبريس إلى تنظيم المهام التي تنجزها يوميًّا وأسبوعيًّا وشهريًّا وحتى سنويًّا وتقسيمها إلى بضعة فئات رئيسيَّة وهي: النسخ الاحتياطي والتحديثات الأساسيَّة لووردبريس وصيانة الإضافات (Plugin) وصيانة القوالب وسلامة الموقع بالكامل وسلامة المحتوى. يجب الإشارة إلى أنَّ هذا الدرس هو نموذج أساسي لإنشاء خطَّة صيانة شهرية خاصَّة بك؛ يمكنك تعديلها بحسب خبرتك بالمهام التي تنجزها بانتظام لوحدك أو مع فريقك، باعتبارك مطورًا لووردبريس. النسخ الاحتياطي في ووردبريس يجب إجراء النسخ الاحتياطي على ووردبريس في فترات منتظمة ويفضل أن تكون يوميَّة؛ النسخ الاحتياطي كل أسبوع لا بأس به ولكن النسخ الاحتياطي كل شهر هو أطول فترة وغير مفضل. يسمح لك الموقع «ManageWP» بتزويد العملاء بخدمة النسخ الاحتياطي التراكمي اليومي دون الحاجة إلى النسخ الاحتياطي للموقع الذي تديره يدويًّا. الخيارات المقترحة لإجراء النسخ الاحتياطي هي: • يوميًّا • أسبوعيًّا • شهريًّا التحديثات الأساسيَّة لووردبريس من الصعب جدولة عملية التحديثات (خصوصًا التحديثات الأساسيَّة لووردبريس) ضمن مخطط زمني ثابت إذ لا تصدر التحديثات في فترات منتظمة. على أي حال، نجد خلال العامين الماضيين أنَّ التحديثات أصبحت تتكرر بشكل كبير لذا أنصحك باختيار يوم ما في كل شهر تتفقد فيه التحديثات وتثبِّتها على جميع المواقع التي تديرها. يمكن أن نستثني من هذه القاعدة حالة تثبيت التحديثات الأساسيَّة لووردبريس عند صدورها مباشرةً بناءً على طلبك أو طلب شركتك. الخيارات المقترحة للتحقق من التحديثات وتثبيتها هي: • فور صدورها مباشرةً • شهريًّا صيانة الإضافات تتكون صيانة الإضافات في ووردبريس من عنصرين هما: • تحديث الإضافات • فحص الإضافات تحديث الإضافات تقترح ووردبريس التأكد من وجود تحديثات للإضافات كل 3 إلى 6 أشهر؛ إن كنت مطورًا لووردبريس فستدرك مدى ضعف هذه النصيحة لمواقع وردبريس التي من المفترض أن تعمل يوميًا بصورة صحيحة، وستسعفك حينئذٍ خبرتك في تحديد موعد لهذه التحديثات في مخططك الزمني. قد لا تتوافر التحديثات الأساسيَّة لووردبريس دومًا لذا يمكن التحقق من تحديثات الإضافات أيضًا في اليوم نفسه أي الجمع بينها في يوم واحد. الخيارات المقترحة للتحقق من تحديثات الإضافات وتثبيتها هي: • شهريًّا فحص الإضافات تختلف مهمة الصيانة هذه قليلًا عن المهمة السابقة التي تقتصر على التحقق من وجود تحديثات ثمَّ تثبيتها، كما أنَّها غير قابلة للجدولة أي لا تضاف إلى مخططك الزمني لتنفِّذها كلَّ شهر. أول أمر تتطلبه هذه المهمة هو التأكُّد من عدم وجود إضافات مثبَّتة ومفعَّلة في المواقع التي تديرها ولكنَّها غير مستخدمة، فقد يستمتع بعض العملاء بتجريب مزايا جديدة عبر تثبيت إضافات جديدة دون إذنك وينسَون بعدئذٍ إلغاء تفعيلها وحذفها. يجب أن تعرف الإضافات التي يتوافر لها تحديثات من تلك التي لا يوجد لها تحديثات، فمن المحتمل أن يُرفع الدعم عن الأخيرة وتصبح بذلك غير آمنة؛ إن صادفت وجود إضافة غير مدعومة فساعد عميلك على اختيار البديل المناسب. يجب عليك أيضًا أن تراقب جودة الإضافات وأداءها وتبحث دومًا عن وجود بديل أفضل من تلك التي تستخدمها إن شعرت أن أدائها آخذ في التدنِّي. لنأخذ مثلًا الإضافة Disqus الرسميَّة التي بدأت تكسب سمعة سيئة إذ أصبحت مشوبة بالأخطاء ومعطلة تمامًا؛ أخذ أحد المطورين على عاتقه تطويرها ليصدرها باسم Disqus Conditional Load وهي مشابهة للإضافة السابقة لكنَّها خالية نسبيًّا من الأخطاء وتُستخدم بكثرة حاليًّا. الجزء الأخير من هذه المهمة يتضمن استعراض مجلد الإضافات للتأكد من حذف كامل الإضافات التي أَلغيت أنت أو عميلك تثبيتها. الخيارات المقترحة لهذه المهمَّة هي: • 3 أشهر • 6 أشهر • سنة صيانة القوالب تُقسم هذه المهمة إلى جزأين وهما: تحديث القوالب يجب أن يكون جدول مواعيد المهام المتعلقة بتحديث القوالب مطابق لمواعيد للمهام التي تنجزها لتحديث الإضافات؛ بعبارة أخرى، حدِّد موعدًا واحدًا لمهمَّة تحديث القوالب ومهمَّة تحديث الإضافات لتنجزهما سويةً في الوقت ذاته، على فرض أنَّك تستخدم قوالب غير رسمية. الخيارات المقترحة لتحديث القوالب: • شهريًّا فحص القالب ستفيدك هنا خبرتك كثيرًا لتحديد المهام المتعلِّقة بفحص القوالب التي يجب أن تُنفِّذها وكم تحتاج من الوقت لتكرارها. بصورة مشابه لفحص الإضافات، تتضمن هذه المهمة التأكد من عدم وجود قوالب غير مستخدمة مثبَّتة في الموقع وأنَّ قالبًا واحدًا على الأقل موجودٌ باعتباره القالب الرئيسي والافتراضي في الموقع. إن كنت تستخدم قالبًا خاصًّا بك فأضف إلى هذه المهمة فحص ملفات وأنماط قالبك للتأكد من أنَّ كلَّ شي مرتبٌ ومنظمٌ والكود الذي كتبته ما يزال صالحًا. إن كنت تستخدم قالبًا خارجيًا فتأكد أنَّ المطور ما يزال يعمل على الكود ويقدم الدعم للقالب. الخيارات المقترحة لفحص القالب: • 3 أشهر • 6 أشهر • سنة إن كنت مرتاحًا بالعمل وفق مخططك الزمني الذي وضعته لقالبك أو نمطك المخصص بك على المواقع التي تديرها فاستمر بذلك. سلامة كامل الموقع يحوي الموقع «ManageWP» على مزيَّة التحديثات الأمنيَّة (Vulnerability Updates) التي تنبِّهك بوجود إضافات وقوالب وملفات ووردبريس أساسيَّة ومهمَّة، كما تسمح لك بعرض أداء الموقع. الخيارات المقترحة لتصفح التحديثات الأمنيَّة: • يوميًّا يوفِّر الموقع «ManageWP» أيضًا مزيَّة الفحص الأمني (Security Check) التي تفحص كامل موقعك بحثًا عن برمجيات خبيثة في أي وقت تريد، كما تستطيع تفعيل وضع مراقبة الأمن 24/7 الذي يوفِّره الإصدار المدفوع. الخيارات المقترحة لمراقبة أمن الموقع: • مرة يوميًّا • عدة مرات يوميًّا • 24/7 الأمر الأخير الذي أودُّ ذكره ضمن هذا الموضوع هو الأداء الكلي للموقع أي فترة تحميل صفحاته وحجمها ورفع أدائه وغيرها. يحوي الموقع «ManageWP» مزيَّة أخرى وهي فحص الأداء (Performance Scan) التي تعطيك لمحة عن أداء موقعك وما هي المشكلات التي يعاني منها وماذا يحدث فيه. الخيارات المقترحة لفحص أداء الموقع: • شهريًّا سلامة المحتوى قد تتطلب هذه المهمة منك العمل مع عميلك أغلب الوقت خلافًا للمهام السابقة؛ تتضمن هذه المهام التحقق من الأخطاء 404 أو الروابط المعطلة وتحسينها. الخيارات المقترحة لأداء هذه المهمة: • شهريًّا يجب عليك أيضًا العمل مع عميلك للبحث عن أي مقاطع فيديو أو صوت لم يعد يستخدمها أو للبحث عن مدونات منشورة يستطيع دمجها مع بعضها أو منشورات ذات محتوى قديم، وهذا ما يدعى “تدقيق المحتوى”. عليك أيضًا أن تراقب تصنيفات SEO لعملائك إذ إنَّ نجاحهم هو في النهاية نجاحك؛ للمزيد اقرأ هذه المقالة. الخيارات المتاحة لدقيق المحتوى: • 6 أشهر • سنة دورك الآن غطَّت هذه المقالة مهام الصيانة عمومًا التي قد تختلف عن المهام التي تنجزها أنت أو فريقك؛ ما هي المهام الأخرى التي تضيفها لجدولك الزمني؟ وما هي المهام التي تتركها؟ شاركنا رأيك بالتعليقات. ترجمة -وبتصرف- للمقال How to Create a Monthly Maintenance Plan for Your WordPress Sites لصاحبه Brenda Barron. حقوق الصورة البارزة محفوظة لـ Freepik
  10. من الضروري على أي مطور أو مهندس تعلُّم بعض أوامر إدارة النظام الأساسيَّة خصوصًا في ظل غزو أدوات جديدة وبيئات متطورة ومتنوعة عالمنا بشكل دائم؛ يمكن لأوامر وحزم معيَّنة أن تساعد المطورين على تنظيم وإدارة واستكشاف أخطاء التطبيقات ومحاولة إصلاحها، كما تزودهم بمعلومات مفيدة عن حالة النظام والتطبيقات. سواءً كنت مطورًا جديدًا أو تريد إدارة تطبيقاتك فحسب فإنَّ الأوامر العشرون التي يشرحها هذا الدليل ، ستساعدك على فهمٍ أفضلٍ لتطبيقاتك، أو تعطيك القدرة على وصف المشاكل التي تعترضك في العمل لمديري الأنظمة لإصلاحها، مثلًا لماذا يعمل التطبيق محليًا ولكنه ليس على المضيف البعيد؟ تطبَّق هذه الأوامر ضمن بيئة لينكس والنظام الحاسوبي الذي يحوي أنظمة وهمية مثبتة عليه مباشرة (bare metal environment) والحاويات. 1. curl إنَّ curl هو أداةٌ لنقل الملفات باستخدام رابط URL عبر سطر الأوامر؛ يُستخدم هذا الأمر أيضًا لفحص اتصال التطبيقات مع خدمة ما، أي بمعنى آخر تحديد فيما إذا كان تطبيقك يستطيع الوصول إلى خدمة معينة مثل قاعدة بيانات، أو التحقق إن كانت الخدمة بحد ذاتها تعمل بشكل صحيح. لنفترض مثلًا أن تطبيقك يُظهر الخطأ HTTP 500 الذي يشير إلى عدم قدرته الوصول إلى قاعدة البيانات MongoDB. $ curl -I -s myapplication:5000 HTTP/1.0 500 INTERNAL SERVER ERROR الخيار ‎-I (أو ‎–head) يُظهر معلومات ترويسة http فقط، والخيار ‎-s (أو ‎–silent) يُخفي تفاصيل تقدم العملية أو رسائل الخطأ. يمكنك في هذه الحالة تفقُّد نقطة النهاية لقاعدة بياناتك من حاسوبك المحلي كما يلي: $ curl -I -s database:27017 HTTP/1.0 200 OK لا توجد مشكلة، إذا أين تكمن المشكلة؟! تأكد إن كان تطبيقك يستطيع الوصول إلى أماكن أخرى بالإضافة إلى قاعدة البيانات من تطبيق المضيف. $ curl -I -s https://opensource.com HTTP/1.1 200 OK لا مشكلة أيضًا؛ حاول الآن الوصول إلى قاعدة البيانات من تطبيق المضيف؛ يَستخدم تطبيقك اسم مضيف قاعدة البيانات لذا جرِّبه أولًا. $ curl database:27017 curl: (6) Couldn't resolve host 'database' يشير ذلك إلى أنَّ تطبيقك لا يستطيع أن يستبين عنوان خادوم قاعدة البيانات إذ إمَّا أن يكون غير متوافر أو أنَّ المضيف (الحاوية أو الجهاز الافتراضي) لا يملك اسم خادوم ليستبين عن اسم المضيف. 2. python -m json.tool / jq بعد تنفيذ الأمر curl ستجد أن ناتجه صعب القراءة. تحتاج أحيانًا إلى طباعة المخرجات بصيغة جميلة ومنسَّقة وقابلة للقراءة للبحث عن مدخلات معيَّنة وهذا ما توفره صيغة البيانات JSON، التي هي صيغة سلسة وسهلة القراءة والفهم وتُستخدم لنقل البيانات بين لغات البرمجة أو بين تطبيقات الويب والخادوم؛ توجد مكتبة JSON مدمجة في بايثون يمكن أن تساعدنا في هذه العملية عبر استعمال الأمر python -m json.tool بعد تحويل المخرجات إليه. $ cat test.json {"title":"Person","type":"object","properties":{"firstName":{"type":"string"},"lastName":{"type":"string"},"age":{"description":"Age in years","type":"integer","minimum":0}},"required":["firstName","lastName"]} هل فهمت شيئًا من المخرجات السابقة؟ سنستخدم صيغة JSON في الأمر التالي بإرسال المخرجات السابقة إلى بايثون. $ cat test.json | python -m json.tool { "properties": { "age": { "description": "Age in years", "minimum": 0, "type": "integer" }, "firstName": { "type": "string" }, "lastName": { "type": "string" } }, "required": [ "firstName", "lastName" ], "title": "Person", "type": "object" } هل لاحظت الفرق؟! يمكن إظهار المخرجات أيضًا بطريقة متقدمة تشبه استخدام الأمر السابق وهو بتحويل المخرجات إلى الأداة jq والتي تحوي خيارات عدَّة للحصول على قيم محدَّدة من مدخلات صيغة JSON؛ يمكنك تثبيت jd من هذا الرابط. $ cat test.json | jq { "title": "Person", "type": "object", "properties": { "firstName": { "type": "string" }, "lastName": { "type": "string" }, "age": { "description": "Age in years", "type": "integer", "minimum": 0 } }, "required": [ "firstName", "lastName" ] } 3. ls يُستعمل الأمر ls لإظهار قائمة بالملفات الموجودة ضمن مجلد، ويستخدمه مديرو الأنظمة والمطورون بكثرة؛ يمكن أيضًا باستخدام هذا الأمر لإيجاد ملف معين ما بالإضافة إلى عرض أذوناته. حاولنا في المثال التالي تشغيل الملف myapp ولكنَّنا لم نستطع بسبب مشكلة الأذونات؛ عندما تفحصنا الأذونات عبر الأمر ls -l وجدنا أن الملف صالح للقراءة والكتابة فقط. $ ./myapp bash: ./myapp: Permission denied $ ls -l myapp -rw-r--r--. 1 root root 33 Jul 21 18:36 myapp 4. tail يُظهر الأمر tail الجزء الأخير من الملف؛ لا تحتاج غالبًا إلى قراءة جميع أسطر الملف أو السجل أثناء البحث ضمنهم عن مشكلة أو عطل ما ولكن قد تكون البيانات الأخيرة (الأحدث) هي الأهم. تستطيع مثلًا استعمال الأمر tail لفحص ومعرفة ما ذا يحدث في السجلات عندما تنشئ طلبية HTTP. [root@localhost ~]# tail -f /var/log/httpd/access_log ::1 - - [21/Jul/2017:18:46:58 +0000] “GET / HTTP/1.1” 403 4897 “-” “curl/7.29.0” ::1 - - [21/Jul/2017:18:47:00 +0000] “GET / HTTP/1.1” 403 4897 “-” “curl/7.29.0” ::1 - - [21/Jul/2017:18:47:02 +0000] “GET / HTTP/1.1” 403 4897 “-” “curl/7.29.0” ::1 - - [21/Jul/2017:18:47:04 +0000] “GET / HTTP/1.1” 403 4897 “-” “curl/7.29.0” ::1 - - [21/Jul/2017:18:47:06 +0000] “GET / HTTP/1.1” 403 4897 “-” “curl/7.29.0” ::1 - - [21/Jul/2017:18:47:08 +0000] “GET / HTTP/1.1” 403 4897 “-” “curl/7.29.0” ::1 - - [21/Jul/2017:18:47:10 +0000] “GET / HTTP/1.1” 403 4897 “-” “curl/7.29.0” ::1 - - [21/Jul/2017:18:47:12 +0000] “GET / HTTP/1.1” 403 4897 “-” “curl/7.29.0” ::1 - - [21/Jul/2017:18:47:14 +0000] “GET / HTTP/1.1” 403 4897 “-” “curl/7.29.0” ::1 - - [21/Jul/2017:18:47:16 +0000] “GET / HTTP/1.1” 403 4897 “-” “curl/7.29.0” الخيار ‎-f (أو ‎–follow) يُظهر أسطر السجل أو الملف التي تُضاف إليه حديثًا، وهذا واضح من المثال السابق. يمكن إظهار عدد محدَّد من الأسطر عوضًا عن تتبع تحديثات الملف وإظهارها مثل إظهار آخر 100 سطر من الملف عبر الخيار ‎-n. $ tail -n 100 /var/log/httpd/access_log 5. cat يعمل هذا الأمر على دمج الملفات أو طباعتها إلى مجرى الخرج القياسي كما يُستخدم للتحقق من محتويات الملفات. نتأكد في المثال التالي إن كان إطار العمل Flask، وهو إطار عمل مصغَّر لتطوير تطبيقات ويب صغيرة ومتوسطة، مُدرجًا ضمن القائمة التي يعتمد عليها التطبيق Python Flask. $ cat requirements.txt flask flask_pymongo 6. grep الأداة grep هي أداةٌ قويةٌ في مطابقة أنماط نصيَّة داخل الملفات؛ إن كنت تبحث عن نمط نصي معين داخل ملف أو في مخرجات أمرٍ آخر فيمكن استخدام هذه الأداة للبحث عن هذا النمط وتحديد مكان وجوده. لنفترض مثلًا أنَّك تريد التأكد من عمل الخادوم Apache Tomcat، ستعجز عن قراءة الكثير من الأسطر للبحث عنه لذا يمكن إرسال المخرجات إلى الأمر grep لعزل الأسطر التي تشير إليه. $ cat tomcat.log | grep org.apache.catalina.startup.Catalina.start 01-Jul-2017 18:03:47.542 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 681 ms 7. ps يُظهر الأمر ps حالة العمليات التي تعمل حاليًا في النظام؛ يُستعمل لتحديد التطبيقات التي تعمل أو للتأكد من عملية ما، فإذا أردت التحقق من عمل خادوم الويب Tomcat، استعمل الأمر ps مع الخيارات التالية للحصول على رقم العملية لهذا الخادوم. $ ps -ef UID PID PPID C STIME TTY TIME CMD root 1 0 2 18:55 ? 00:00:02 /docker-java-home/jre/bi root 59 0 0 18:55 pts/0 00:00:00 /bin/sh root 75 59 0 18:57 pts/0 00:00:00 ps -ef ولتجنب قراءة الكثير من الأسطر والعمليات، أرسل المخرجات السابقة إلى الأداة grep كما يلي: $ ps -ef | grep tomcat root 1 0 1 18:55 ? 00:00:02 /docker-java-home/jre/bi 8. env يتيح الأمر env عرض متغيرات البيئة التي ضُبطت لجلسة طرفيَّة معيَّنة؛ قد يكون من المفيد في أثناء البحث عن المشاكل والأعطال التأكد من عدم وجود متغير خاطئ يمنع تطبيقك من البدء. سنستخدم الأمر env في المثال التالي للتحقق من متغيرات البيئة المضبوطة للتطبيقات. $ env PYTHON_PIP_VERSION=9.0.1 HOME=/root DB_NAME=test PATH=/usr/local/bin:/usr/local/sbin LANG=C.UTF-8 PYTHON_VERSION=3.4.6 PWD=/ DB_URI=mongodb://database:27017/test لاحظ أن التطبيق يستخدم “بايثون 3” ويحوي متغيرًا للبيئة للاتصال بقاعدة البيانات MongoDB. 9. top يطبع الأمر top قائمة بالعمليات التي تجري في النظام بطريقة أكثر تفاعلية من الأمر ps كما يرتِّب العمليات حسب نشاطها ويحدِّث القائمة كلَّ ثلاث ثوانٍ؛ يمكن باستخدام هذه الأداة تحديد كمية الذاكرة والمعالج التي تستهلكها كلُّ عملية على حدة. قد تحدث حالة شائعة عند تشغيل تطبيق وهي توقفه عن العمل ثمَّ جموده، فيجب أولًا في هذه الحالة التحقق من الخطأ الذي يظهره التطبيق والذي قد يكون خطأ في الذاكرة. $ tail myapp.log Traceback (most recent call last): MemoryError هل حقًا الذاكرة لا تكفي أو يوجد خطأ فيها؟ للتثبُّت من ذلك نستخدم الأمر top لمعرفة كمية الذاكرة والمعالج التي يستهلكها التطبيق؛ عند تنفيذ الأمر نلاحظ أنَّ التطبيق “بايثون” يستخدم نسبة كبيرة من المعالج والذاكرة، وما توقعناه كان صحيحًا. أثناء تشغيل الأداة top اضغط على C لرؤية موقع الأمر كاملًا وربط كل عملية مع تطبيق محدد. تبيَّن أنَّ التطبيق “memeater.py” يستهلك أغلب الذاكرة. عندما تنفد الذاكرة نتيجة استهلاكها من أحد التطبيقات فإنَّ النظام ينهي (يقتل kill) هذا التطبيق أو العملية ويرسل خطأ نفاد الذاكرة (out-of-memory) اختصارًا (OOM). 10. netstat إنَّ وظيفة الأمر netstat هي عرض حالة الشبكة والمنافذ المستخدمة والاتصالات الواردة عبرها. هذه الأداء لا تكون مدمجة في لينكس لذا تحتاج إلى تثبيتها عبر الحزمة net-tools. من المحتمل أن تصادف خطأ -إن كنت مطورًا- يشير إلى أن المنفذ محجوز أو العنوان مستخدم حاليًا …إلخ. فيمكن استعمال الأمر netstat لتحليل وفحص الأعطال لمحاولة إصلاحها. يوضح المثال التالي أنَّ أباتشي يستخدم المنفذ 80 على الجهاز عند تنفيذ الأمر التالي: حيث يشير الخيار t إلىTCP والخيار u إلى UDP و l إلى listening (حالة الاستماع) و n إلى numeric. 11. ip address يعمل الأمر ip address على عرض الواجهات وعناوين IP لتطبيقات المضيف أو التحقق من عنوان IP للحاوية؛ إن لم يكن الأمر موجودًا أو لم يعمل فيمكنك تثبيته عبر الحزمة iproute2. إن كانت حاويتك متصلة مثلًا مع شبكتين فإنَّ الأمر ip address يبين الواجهة المتصلة مع كل شبكة؛ يمكن أيضًا استخدام هذا الأمر للحصول على عنوان IP للجهاز المضيف. يوضح المثال التالي أنَّ عنوان IP لحاوية الويب على الواجهة eth0 هو 172.17.0.2: 12. lsof يُستخدم الخيار lsof لسرد قائمة بالملفات المفتوحة (list open files) وربطها مع التطبيقات؛ قد لا يتواجد هذا الأمر في بعض توزيعات لينكس لذا ثبِّت الحزمة lsof. هنالك مقولة مشهورة وهي: "يُعامَل أي تفاعل مع النظام في لينكس على أنَّه ملف"، وبذلك إن كان هنالك تطبيق يكتب على ملف أو ينشئ اتصالًا على الشبكة فإنَّ الأمر lsof سيعتبره ملفًا. يُستخدم أيضًا هذا الأمر بصورة مشابهة للأمر netstat وذلك في عرض المنافذ المنصتة. إن أردت مثلًا التحقق من كون المنفذ 80 مستخدم حاليًا أو لا، فاستعمل الأمر lsof مع الخيار ‎-i الذي يعطي قائمة بالملفات المفتوحة المرتبطة باتصال عبر الشبكة الموافقة لما بعد الخيار. توضح الصورة التالية خادوم أباتشي (httpd) يستمع على المنفذ 80؛ يمكن إعادة استخدام الأمر نفسه بإضافة الخيار ‎-p مع رقم العملية لتحديد الاسم الأصلي للعملية ومكان وجودها على الجهاز وهذا مفيد خصوصًا مع أباتشي. 13. df يُستعمل الأمر df لإظهار مساحة القرص المستخدمة والمتوافرة لإصلاح المشاكل المرتبطة بالتخزين. عند تشغيل تطبيق على حاوية قد تظهر رسالة خطأ تشير إلى انخفاض المساحة المتوافرة عليها، وحينئذٍ يمكن استخدام الأمر df للتأكد من صحة هذا الخطأ وأنَّه حقًا لم تعد هنالك مساحة متوافرة إذ إن مدير النظام هو المسؤول عن إدارة وتحسين مساحة القرص. توضح الصورة مساحة القرص لجميع أنظمة الملفات الموجودة. الخيار ‎-h (أو ‎--human-readable) هو لإظهار الحجم بصيغة مقروءة. 14. du يُستخدم الأمر du للحصول على معلومات تفصيليَّة عن حجم الملفات الموجودة داخل مجلد. إن أردت معرفة حجم السجلات الموجودة في المجلد ‎/var/log، على سبيل المثال، وأيُّ السجلات حجمه أكبر نفذ الأمر du مع الخيار ‎-h لتسهيل قراءة حجم الملفات والخيار ‎-s لعرض الحجم الكلي. $ du -sh /var/log/* 1.8M /var/log/anaconda 384K /var/log/audit 4.0K /var/log/boot.log 0 /var/log/chrony 4.0K /var/log/cron 4.0K /var/log/maillog 64K /var/log/messages نجد أنَّ المجلد anaconda هو الأكبر حجمًا من بين المجلدات الموجودة في ‎/var/log. يمكن استخدام هذا الأمر بالتزامن مع الأمر df لمعرفة كيفيَّة توزيع المساحة المستخدمة على الملفات وما هي الملفات ذات الحجم الكبير. 15. id مهمَّة الأمر id هي عرض معلومات عن هوية مستخدم ومجموعة محدَّدة أو المستخدم الحالي والمجموعة التي ينتمي إليها. استخدمنا في المثال التالي الأداة Vagrant -وهي أداة للعمل ضمن بيئة افتراضيَّة- لاختبار التطبيق وعزله في بيئة تطويرية؛ بعد الدخول إلى صندوق Vagrant (البيئة الافتراضيَّة)، حاولنا تثبيت خادوم أباتشي ولكن النظام لم يسمح بتنفيذ الأمر لأنَّ تنفيذه يتطلب صلاحيات المستخدم الجذر (root)، لذا نستخدم الأمر id لمعرف هوية المستخدم الحالي. $ yum -y install httpd Loaded plugins: fastestmirror You need to be root to perform this command. $ id uid=1000(vagrant) gid=1000(vagrant) groups=1000(vagrant) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 ولتنفيذ الأمر السابق يجب اختيار مستخدم ذو صلاحيات أعلى. 16. chmod قد تُصادف أحيانًا عند تشغيل تطبيق لأول مرة على حاسوبك رسالة الخطأ "الإذن مرفوض " (permission denied) لذا تأكد من الأذونات باستخدام الأمر ls. $ ls -l total 4 -rw-rw-r--. 1 vagrant vagrant 34 Jul 11 02:17 test.sh نلاحظ من المثال أنَّ المستخدم لا يملك إذن التنفيذ (عدم وجود x) لتشغيل التطبيق؛ نلجأ حينها إلى الأمر chmod لتغيير الأذونات وتمكين المستخدم من تشغيل التطبيق وذلك بكتابة الأمر التالي: $ chmod +x test.sh [vagrant@localhost ~]$ ls -l total 4 -rwxrwxr-x. 1 vagrant vagrant 34 Jul 11 02:17 test.sh لاحظ وجود إذن التنفيذ (وجود x) ضمن أذونات الملف وإن جربنا الآن تشغيله فلن تظهر رسالة الخطأ السابقة. 17. dig / nslookup يساعد نظام أسماء النطاقات DNS على تحويل العنوان URL إلى عنوان IP، وإن لم يُحوَّل هذا العنوان فستحدث مشكلة في الاتصال. لنفترض أنَّك تريد الوصول إلى قاعدة بياناتك (mydatabase) من تطبيقك ولكنَّّك لا تستطيع إذ تظهر رسالة خطأ "لا يمكن استبيان العنوان" (cannot resolve)؛ جرب استخدام الأداة dig للبحث عن أسماء النطاقات DNS أو الأداة nslookup للاستعلام عن خواديم أسماء النطاقات لحل هذه المشكلة ومعرفة سبب عدم تمكن التطبيق من استبيان اسم نطاق قاعدة البيانات. $ nslookup mydatabase Server: 10.0.2.3 Address: 10.0.2.3#53 ** server can't find mydatabase: NXDOMAIN جربنا استعمال الأمر nslookup ولكن ظهرت رسالة بالخطأ نفسه أي لم يجد عنوانًا لاسم نطاق قاعدة البيانات. إن جربت الأمر dig فستحصل على النتيجة نفسها. $ dig mydatabase ; <<>> DiG 9.9.4-RedHat-9.9.4-50.el7_3.1 <<>> mydatabase ;; global options: +cmd ;; connection timed out; no servers could be reached هنالك احتمالات كثيرة تفسر سبب حدوث هذا الخطأ ليست ضمن موضوع هذه المقالة؛ تواصل مع مدير النظام المسؤول إن لم تستطع حل المشكلة ليساعدك بالبحث عن سبب المشكلة وحلها. إن لم يكن هذان الأمران موجودان على حاسوبك، فثبت الحزمة BIND Utilities. 18. iptables إنَّ iptables هو جدار ناري موجود في أغلبية توزيعات لينكس ووظيفته هي سماح أو حجب حركة مرور البيانات الشبكيَّة؛ قد يمنع الجدار الناري تطبيقات معيَّنة من استلام أو نقل البيانات عبر الشبكة؛ إن كان أحد التطبيقات لديك يواجه صعوبةً في الوصول إلى خدمة أو موقع معيَّن فقد يكون هذا الجدار الناري هو السبب في منع حركة البيانات من الوصول إلى تلك الخدمة أو الموقع. لنفترض مثلًا أنَّ التطبيقات لا تتمكن من الوصول إلى الموقع opensource.com، نتأكد أولًا من الاتصال عبر الأداة curl: $ curl -vvv opensource.com * About to connect() to opensource.com port 80 (#0) * Trying 54.204.39.132... * Connection timed out * Failed connect to opensource.com:80; Connection timed out * Closing connection 0 curl: (7) Failed connect to opensource.com:80; Connection timed out فشِل الاتصال مع الموقع بعد انقضاء المهلة؛ قد يكون هنالك ما يمنع من الاتصال مع ذلك الموقع لذا نستعمل الأمر iptables مع الخيار ‎-S لعرض قواعد الجدار الناري. $ iptables -S -P INPUT DROP -P FORWARD DROP -P OUTPUT DROP -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT -A INPUT -i eth0 -p udp -m udp --sport 53 -j ACCEPT -A OUTPUT -p tcp -m tcp --sport 22 -j ACCEPT -A OUTPUT -o eth0 -p udp -m udp --dport 53 -j ACCEPT من الواضح أنَّ الضبط الافتراضي للقواعد الثلاث الأولى هي "تجاهل" (drop) البيانات الشبكيَّة المرسلة والمستقبلة والموجَّهة، أما القواعد الأخرى فهي "السماح" (accept) بمرور البيانات عبر خادوم SSH و DNS. استشر في هذه الحالة مدير الأنظمة إذا كان هنالك حاجة لإضافة أو تعديل قاعدة للسماح بحركة البيانات للموقع السابق. إن كان المضيف الذي تستخدمه هو بيئة محليَّة أو للاختبار المحلي فاستخدم iptables للسماح بمرور البيانات غير الضارة. 19. sestatus توجد آلية للتحكم في الوصول على بعض توزيعات لينكس تدعى "التأمين المعزَّز في لينكس" (Security Enhanced Linux)، أو تدعى اختصارًا (SELinux)، ومفعلة عليه (الوضع enforcing)؛ توفِّر هذه الآلية إمكانية الوصول للعمليات المشغلة حاليًا بأدنى الصلاحيات إذ يحتمل أنَّ بعض تلك العمليات ضارٌ وبذلك تُمنع من الوصول إلى الملفات المهمَّة على النظام. قد يحتاج أحد التطبيقات أحيانًا الوصول إلى ملف ما ولكنَّه لا يستطيع فتظهر رسالة خطأ بذلك؛ يجب التأكد إن كان SELinux يمنع هذا التطبيق من الوصول باستعمال الأمر tail مع grep للبحث عن الرسالة "denied" في السجل ‎/var/log/audit. قد لا يكون SELinux مفعَّلًا منذ البداية لذا من المفيد التحقق أولًا من ذلك عبر الأمر sestatus. $ sestatus SELinux status: enabled SELinuxfs mount: /sys/fs/selinux SELinux root directory: /etc/selinux Loaded policy name: targeted Current mode: enforcing Mode from config file: enforcing Policy MLS status: enabled Policy deny_unknown status: allowed Max kernel policy version: 28 نجد من الرسالة السابقة أنَّ SELinux مفعَّل؛ يستطيع مدير النظام مساعدتك في هذا الشأن وتحديد إن كان التطبيق يستحق الوصول إلى الملفات التي يحتاجها. أَضف إلى ذلك أنَّه من المفيد تحديث SELinux دومًا على بيئتك التطويرية المحليَّة ليصبح أكثر تساهلًا. 20. history ختامًا، وبعد تنفيذ الكثير من الأوامر سواءً للتجريب أو لإصلاح بعض المشاكل، لابد أن نشير إلى الأمر history الذي لا تكاد تخلو صدفة (shell) منه؛ مهمَّة هذا الأمر هي طبع جميع الأوامر التي استخدمتها منذ بدء استخدامك للصدفة. تكمن فائدته بتسجيل الأوامر المستخدمة لإصلاح مشكلة ما وإعادة تذكرها أو تنفيذها. إن نفذنا هذا الأمر فستظهر جميع الأوامر التي تعلمتها وجربتها خلال هذه المقالة: $ history 1 clear 2 df -h 3 du إن أردت تنفيذ أحد هذه الأوامر السابقة فلن تحتاج لإعادة كتابته، فقط استخدم الرمز ! وأتبعه برقم الأمر الذي تود تنفيذه مجددًا. الخاتمة تعرَّفت على مجموعة من الأوامر الأساسيَّة التي ستزيد من خبرتك في تحليل الأعطال وإصلاحها، والتي يستخدمها الكثير من مديري الأنظمة لحل وإصلاح المشاكل التي تواجههم. التمرس على هذه الأوامر وفهمها يمنحك القدرة على التواصل مع مديري الأنظمة لحل المشاكل التي ستواجهك في المستقبل. ترجمة -وبتصرف- للمقال 20‎ Linux commands every sysadmin should know لصاحبه Rosemary Wang.
  11. عرضنا في الدرس السابق الأعطال المتعلقة باللوحة الأم والمعالج وذاكرة الوصول العشوائي، وسنكمل في هذا الدرس ما بدأناه لنشمل القرص الصلب ووحدة التغذية. مشاكل وأعطال القرص الصلب قد لا يكون ثمن القرص الصلب مرتفعًا بالمقارنة مع اللوحة الأم أو المعالج ولا تُوقف أخطاؤه عمل الحاسوب إلا أنَّ قيمته بالنسبة للمستخدم بقدر قيمة المعلومات التي فيه. تحتوي الأقراص الصلبة لبعض الشركات على معلومات وبيانات قيِّمة يمكنها أن تدفع الملايين لاستعادتها إن فُقدت. بما أنَّ القرص الصلب يحوي أجزاءً متحركة مثل المحركات والذراع والأقراص فاحتمال حدوث أعطال فيه أمرٌ وارد؛ بعض علامات تضرر القرص الصلب وتعطله هي: أخطاء في القراءة والكتابة من وإلى القرص الصلب بشكل دائم أو بعد عمل الحاسوب بفترة أو بطء شديد أثناء القراءة والكتابة. ظهور الشاشة الزرقاء (شاشة الموت) في نظام التشغيل ويندوز. بطء عملية الإقلاع والدخول إلى النظام. اختفاء الملفات. عدم اكتشاف وجود قرص صلب أثناء عملية الإقلاع. صدور أصوات مرتفعة غير مألوفة من القرص الصلب عند تشغيل الحاسوب. رائحة حريق صادرة عن القرص الصلب ويكون ذلك غالبًا بعد وصله بطريقة خاطئة أو تضرر وحدة التغذية. في حال بدأت الأعراض من 1 وحتى 4 بالظهور فيجب أخذ نسخ احتياطية للملفات مباشرةً فقد تتفاقم المشكلة وتفشل بالدخول إليه مجددًا؛ احتمال كبير أن يكون السبب في ظهور هذه الأعراض هي الفيروسات أو أخطاء في نظام التشغيل لذا قبل الإشارة بإصبع الاتهام نحو القرص الصلب يجب التأكد من أنَّ الفيروسات أو نظام التشغيل لا علاقة لهما بالمشكلة. إلغاء تجزئة الملفات يؤدي غالبًا إلى تسريع عملية القراءة والكتابة على نحو ملحوظ لذا جرِّب هذه الأداة إن كانت سرعة القراءة والكتابة منخفضة أو يعاني النظام ككل من بطء وانخفاض في الأداء. إن وُجد خطأ أثناء القراءة والكتابة مثل تضرر ملف كان يعمل أو لم تعد تتمكن فجأة من الدخول إلى نظام التشغيل نتيجة تلف أحد ملفات النظام فقد يكون السبب هو تلف وتضرر بعض القطاعات sectors؛ سبب حدوث ذلك هو انقطاع التيار الكهربائي فجأةً عن الحاسوب أو تحرُّك الحاسوب أثناء عمله وتعرُّضه للصدمات، وكل ذلك يؤدي إلى خدش رأس القراءة والكتابة سطح القرص ليُحدِث ضررًا فيزيائيًّا في القطاعات في ذلك الموقع وتتلف بذلك البيانات التي تخزَّن فيها؛ نلجأ في هذه الحالة إلى بعض التطبيقات التي تفحص القرص الصلب لإصلاح هذه القطاعات إصلاحًا ليس فيزيائيًّا وإنما بعزلها ومنع استعمالها للتخزين؛ أي تمنع النظام من استخدامها للقراءة والكتابة وهذا يؤدي بدوره إلى إنقاص سعة القرص الصلب. التطبيق HDD regenerator هو أحد التطبيقات الجيدة في إصلاح القطاعات التالفة وتتوافر منه نسخة إقلاعية. تتواجد الكثير من تطبيقات استكشاف الأخطاء المتعلقة بالقرص الصلب منها: Dell Hard Drive Diagnostics إن كان حاسوبك من شركة Dell. Sea tools من شركة Seagate. Samsung HUTIL من شركة Samsung. Western Digital Data Lifeguard Diagnostic من شركة Western Digital. معظم هذه التطبيقات متوافرة بنسخ إقلاعية. توجد في نظام ويندوز أداة مدمجة للبحث عن أخطاء القرص الصلب وأخطاء نظام الملفات وإصلاحها ويمكن تشغيلها بكتابة الأمر "chkdsk /f" أو "chkdsk /scan /r" في سطر الأوامر. صُنعت الأجزاء الميكانيكية للقرص الصلب من المعدن ومعروف أنَّه يتمدد بالحرارة، وعليك أن تتخيل ماذا سيحدث لو ارتفعت حرارة القرص الصلب وتمدَّدت الذراع مثلًا أجزاءً من الميليمتر؟! ستحدث أخطاء في القراءة والكتابة ولن تزول المشكلة حتى انخفاض الحرارة وعودة رؤوس القراءة والكتابة إلى مكانها لذا يجب مراقبة درجة حرارة القرص الصلب واتخاذ التدابير الوقائية مثل إضافة مروحة أو مشتت حراري للقرص الصلب أو تحسين كفاءة نظام التبريد؛ معدَّل حدوث هذه المشكلة في الحواسيب المحمولة أكثر من الحواسيب المكتبية. في حال لم يُكتشف وجود القرص الصلب أثناء عملية الإقلاع فيجب التأكد من وصله بطريقة صحيحة فإن لم تحل المشكلة فتغيير الوصلات أو مكان المنفذ على اللوحة الأم قد يحلها مع أنَّ تعطل المنفذ أمرٌ نادر الحدوث. صدور أصوات غريبة من القرص الصلب سببه فشل أحد الأجزاء الميكانيكية بعد سقوطه أو تعرضه لصدمة أو بسبب خلل في الجهود الواصلة للقرص الصلب؛ شراء وحدة تغذية رديئة تتسبب في تعطل القرص الصلب، وإن تعطل القرص الصلب أو صدرت رائحة حريق منه فتأكد أن وحدة التغذية ليست السبب قبل تركيب واحد جديد. عملية استعادة البيانات من القرص الصلب عند عدم عمله هو أكثر شيء يَشغل بال المستخدم؛ إن كان العطل في الدارة الإلكترونيَّة للقرص الصلب وكانت البيانات مهمة للغاية فيمكن استشارة مختصٍّ في مجال الإلكترونيات لمحاولة إصلاحها أو يمكن شراء قرص صلب جديد من النوع نفسه وفك لوحته الإلكترونيَّة ثمَّ تركيبها مكان الدارة المتعطلة؛ أمَّا إن كان العطل في الأجزاء الميكانيكية داخل القرص فيمكن أخذه إلى مختصٍّ لديه المعدات اللازمة مثل حجرة مُفرغة من الهواء لفكه دون تضرر الأقراص، ويمكنه استعادة البيانات إن سلمت الأقراص من الضرر الفيزيائي. مشاكل وأعطال وحدة التغذية تُزوِّد وحدة التغذية جميع عناصر الحاسوب المتصلة باللوحة الأم بالطاقة، ويؤدي تعطلها إلى توقف الحاسوب عن العمل في أبسط الأحوال أو تضرر بعض العناصر الأخرى معها في أحيانٍ أخرى، وهي من أكثر العناصر التي تتعطل. بِدَاءةً، يجب التنبيه إلى أنَّ فك وحدة التغذية يتطلب الحذر الشديد ولا ينصح بفكها إن لم تكن لديك خبرة بالتعامل مع العناصر الكهربائية خصوصًا بوجود مكثفات ذات جهد مرتفع تحتفظ بالشحنة الكهربائيَّة حتى عند عدم وصلها بالتيار. الأعراض الظاهرة لتعطل وحدة التغذية هي: عدم عمل الحاسوب مطلقًا. عمل الحاسوب بعد محاولاتٍ عديدة لتشغيله. عمل الحاسوب وظهور الشاشة السوداء، وأحيانًا لا يعمل القرص الصلب أو المراوح بسبب انقطاع الجهد 12 فولط أو غيره. توقف عمل الحاسوب بعد إضافة عناصر جديدة أو استبدال عناصر حديثة بتلك القديمة. إعادة التشغيل أو توقف عمل الحاسوب فجأةً عن العمل. انبعاث رائحة حريق أو دخان من وحدة التغذية. إذا لم يعمل الحاسوب نبدأ أولًا بفحص وحدة التغذية وذلك بفصلها عن اللوحة الأم ووصل السلك الأسود مع السلك الأخضر لتشغيلها يدويًا (راجع درس وحدة التغذية)؛ إن عملت وحدة التغذية نفحص جهودها بمقياس للجهد وذلك بوصل أحد مجساته مع السلك الأسود والثاني مع اللون الذي نريد التأكد من قيمة جهده ويمكن السماح بتغير يصل إلى 5% من قيمة الجهد المُقاس؛ وإن كانت لا تعمل فنستبدل وحدة تغذية جديدة بها. إن لم تعمل وحدة التغذية مطلقًا أو عملت ولكن بعد محاولاتٍ متكررة لتشغيلها فأغلب الظنِّ أنَّ السبب هو المكثِّفات التي داخلها (غالبًا أكبر مكثِّفين هما السبب) وقد تلاحظ تشوه المكثِّف أو تسرُّب السائل منه عند فكها مباشرةً، واستبدالها يحل هذه المشكلة؛ إن لم يُعرف سبب العطل يمكن الاستعانة بخبير في مجال الإلكترونيات لفحصها أو استبدالها مباشرةً إن كانت قديمة. تسرب المادة الكيميائية للمكثفات وانتفاخها. مصدر الصورة تكون وحدة التغذية أحيانًا هي السبب الخفي خلف أعطال العناصر الأخرى إذ قد تشير جميع الأدلة تجاه عنصر ما وعند استبداله لا تُحل المشكلة ويتبين بعد ذلك أنَّ وحدة التغذية هي المسبب لتلك المشكلة. كان هنالك حاسوب يُصدر صوت صفير مستمر عند تشغيله وذلك يشير إلى عدم عمل الذاكرة، وبعد البحث عن السبب وُجد أنَّ وحدة التغذية لا تزوِّد الذاكرة بالجهد المطلوب لعملها وبالتالي يجب التأكد من سلامة وحدة التغذية قبل أي شيء. وحدة التغذية لها استطاعة محدودة ويؤدي تجاوزها إلى توقفها عن العمل؛ إضافة عناصر جديدة أو استبدال عناصر أحدث بالعناصر القديمة قد يؤدي إلى زيادة الاستطاعة المسحوبة من وحدة التغذية وتعطلها. قد تتعطل وحدة التغذية جزئيًّا مثل أن تتوقف بعض الجهود أو لا تعمل وهذا يؤدي إلى توقف بعض العناصر عن العمل، والحل هو استبدالها. الخلاصة تعرفنا في هذين المقالين على أعطال كثيرة للعناصر الأساسيَّة في الحاسوب مع كيفية حلها؛ موضوع استكشاف الأخطاء وإصلاحها يُكتسب بالممارسة والخبرة العملية ولا يقتصر على الأعطال سابقة الذكر الأكثر شيوعًا بل مجاله أوسع من ذلك، ويجب التركيز أيضًا على طريقة التعامل مع المشكلة وإعطائها بعض الاهتمام لأنَّها السبيل للوصول إلى الحل.
  12. بعد أن تعرَّفنا على جميع عناصر الحاسوب مع كيفيَّة عملها، سنبدأ في درسنا هذا تحليل الأعطال لتلك لعناصر ومعرفة كيفية إصلاحها؛ إن كنت تعمل في مجال الحاسوب أو الدعم الفني فلا بدَّ أن تواجه المشاكل والأعطال المتعلقة بعناصره ثمَّ يُطلب منك البحث عن العطل والمشكلة التي أدت لتوقف ذلك العنصر عن العمل وإصلاحها. سنناقش في هذا الدرس أهمَّ الأعطال الشائعة لثلاثة عناصر وهي: اللوحة الأم، وذاكرة الوصول العشوائي، والمعالج مع ذكر طريقة صيانتها. مشاكل وأعطال اللوحة الأم اللوحة الأم هي العنصر الرئيسي في الحاسوب التي تتصل بها جميع العناصر الأخرى لذا ستجد أنَّ احتمالية تعطلها كبيرة ويؤدي ذلك إلى توقف الحاسوب عن العمل، وهذا الأمر يعقِّد عملية إصلاحها ويصعِّبها أيضًا لعدم التمكن من معرفة العطل مباشرةً. توجد دائمًا أمارات وعلامات تحذر بالمشكلة قبل وقوعها فإن انتبه لها المستخدم فيمكن حينئذٍ إصلاح العطل قبل تفاقمه وإن لم ينتبه لها أدى ذلك إلى مشكلة أكبر وضرر أوسع، ومن علامات تعطل اللوحة الأم: عدم التعرُّف على الأجهزة المحيطية الموصولة باللوحة الأم أو عدم إظهارها مثل عدم تعرُّف نظام التشغيل على القرص الصلب أو بطاقة الصوت. بطء عملية الإقلاع يشير إلى حالة سيئة للوحة الأم وقد يشير إلى تعطل عنصر آخر أيضًا. عدم تعرُّف الحاسوب على الأجهزة التي توصل بالمنافذ الخلفية. ظهور خطوط غريبة على الشاشة (إن كانت بطاقة العرض مدمجة مع اللوحة الأم). عدم بدء عملية الاختبار الذاتي للعناصر POST أي عمل الحاسوب والمراوح دون ظهور شيء على الشاشة (ظهور شاشة سوداء فقط). رائحة حريق أو علامات تدل على احتراق عنصر أو تغيُّر لونه نتيجة حرارة زائدة في مكان ما على اللوحة الأم. قِدَمُ اللوحة الأم إذ تُقيَّد بعض العناصر إلكترونيَّة بعمر تشغيلي محدَّد مثل تعطل المكثفات بعد فترة من العمل. انتفاخ أحد المكثفات أو تسرُّب مادته الكيميائيَّة. عمل الحاسوب بعد محاولات عدَّة لتشغيله. التوقف عن العمل أو إعادة التشغيل على نحو مفاجئ. يجب أن نميز مرحلتين عند تحليل عطل اللوحة الأم وهما: المرحلة الأولى هي مرحلة تجاوز عملية الاختبار الذاتي للعناصر POST، والثانية هي عدم بدء تلك العملية أو عدم ظهور شيء على الشاشة. في المرحلة الأولى، إن كان الحاسوب يتخطى عملية الاختبار الذاتي POST ويدخل إلى نظام التشغيل ثمَّ تظهر المشكلة فيجب فحص عناصر أخرى مثل القرص الصلب أو الذاكرة أو وحدة التغذية أو نظام التبريد ...إلخ. والتأكد من أنَّها سليمة؛ إن لم تُعرف المشكلة فيجب فحص اللوحة الأم. تُقسم المرحلة الثانية إلى قسمين: الأول هو ظهور الشاشة السوداء مع عمل الحاسوب وسماع صوت صفير يصدره مكبر الصوت speaker الموجود داخل اللوحة الأم، وفي هذه الحالة تكون اللوحة الأم سليمة ويجب تمييز نوع الصفير لتحديد العطل؛ صدور صوت صفير يدل على أن البيوس بدأت بعملية الاختبار الذاتي POST بإرسال الإشارات إلى جميع العناصر للتأكد من سلامتها وعملها بالتتالي مثل البدء بفحص المعالج ثمَّ الذاكرة ثمَّ بطاقة العرض ثمَّ لوحة المفاتيح ...إلخ. إلى أن تفحص جميع العتاد، فإن وُجدت مشكلةٌ بأحد العتاد تتوقف العملية ويُرسل رمزٌ بالخطأ ويُصدر مكبر الصوت صوت صفير ذي طول وعدد محدَّد يشير إلى العطل مثل صدور صوت صفير مستمر وطويل يشير إلى عطل في الذاكرة فإمَّا أنَّها غير موجودة أو مركبة ولكن لا تعمل؛ تختلف رموز الخطأ وأصوات الصفير بحسب نوع الشركة المصنِّعة للبيوس. القسم الثاني هو ظهور الشاشة السوداء دون سماع صوت صفير؛ نتأكد في هذه الحالة من عمل مكبر الصوت فقد لا يكون موجودًا أو لا يعمل؛ إن كان يعمل ولم يصدر أي صوت فالمشكلة هنا تكون في اللوحة الأم أو البيوس؛ مشكلة البيوس تُحل غالبًا بإعادة برمجتها أو تحديث محتواها، أمَّا اللوحة الأم فيجب فحص عناصرها الإلكترونيَّة (ظاهريًا على الأقل) والتأكد من عمل وحدة التغذية والمعالج والجسر الشمالي؛ طريقة فحص المعالج والجسر الشمالي أو أي دارة مدمجة هي بتشغيل الحاسوب فترةً من الزمن، ولنفترض 5 دقائق، ثمَّ نطفئه ونلمس سطح المعالج بعد إزالة المروحة عنه فإن كان ساخنًا أو حتى دافئًا بعض الشيء فهو يعمل، ونفعل الأمر ذاته مع الجسر الشمالي والدارات المتبقيَّة؛ إن كان الجسر الشمالي باردًا ولا توجد أي حرارة به فمن الممكن أنَّه انفصلت إحدى أرجله عن ناقلات اللوحة الأم بسبب الحرارة الشديدة ولإعادة وصلها نستخدم المحطة الحرارية. قبل تعقيد الأمور وذهاب مخيلتنا إلى مشكلة خفية صعبة، نبدأ بأبسط الاختبارات للوحة الأم وهي نزع الذاكرة وتشغيل الحاسوب للتأكد من ظهور صوت الصفير، أو ننزع جميع العناصر عن اللوحة الأم مثل الذاكرة وبطاقة الشاشة والمعالج ونحاول إزالة الغبار عنها ثمَّ إعادة تركيبها، ويفضَّل استخدام بخاخ يحوي سائلًا مخصَّصًا لتنظيف العناصر الإلكترونيَّة، أو نعيد ضبط البيوس إلى إعداداتها الافتراضية بإزالة بطارية CMOS ووصل الناقلين أسفلها مع بعضهما وضغط زر التشغيل بضعة ثوانٍ؛ احتمال كبير أن تُحل المشكلة وتُعرف بأداء تلك الأمور فقد حُلَّت معي الكثير من المشاكل وعادت اللوحة الأم إلى العمل بإزالة العناصر وتنظيفها ثمَّ إعادة تركيبها بينما كان المستخدم يعتقد بوجود مشكلة كبيرة. الفحص الظاهري للوحة الأم مهم جدًا للتأكد من أن المراوح تعمل أو للبحث عن عنصر تغيَّر لونه أو شكله مثل أنَّه قد احترق أو انفجر، والتأكد أيضًا من عدم وجود رائحة حريق والنظر لجميع العناصر بحثًا عن أرجل فُصلت عن نواقل اللوحة الأم ظاهريًا. في اللوحات الأم الحديثة، تُرسل البيوس رسالة واضحة بالمشكلة إن كانت الشاشة تعمل مثل إظهار رسالة بأنَّ بطارية CMOS فارغة أو لوحة المفاتيح أو إحدى المراوح لا تعمل أو غير موصولة. كلما تعقدت المشكلة ولم تحل زاد التأكد أنَّ المسبب هو أحد العناصر الإلكترونيَّة وحينئذٍ يجب الاستعانة بخبير في مجال الإلكترونيات لفحص اللوحة الأم؛ أغلب الأحيان لا تُصلَّح اللوحات الأم في مثل هذه الحالة مما يضطرنا لشراء واحدة جديدة. نضيف أحيانًا عنصرًا جديدًا إلى اللوحة الأم ولكنه لا يظهر مطلقًا وكأنَّك لم تُركب شيئًا أو تحدث مشاكل أخرى بإضافته مثل توقف اللوحة الأم عن العمل أو ظهور الشاشة السوداء بعد تركيبه والسبب هو عدم التعرف عليه أو عدم التوافق مع اللوحة الأم؛ تظهر هذه المشكلة بكثرة كلما أصبحت اللوحة الأم قديمة ولحلها نعيد برمجة نظام البيوس (راجع درس اللوحة الأم: الجزء الثاني). بطاقة فحص الأعطال هي بطاقة توضع في أحد شقوق التوسعة وتؤدي مهام عدَّة لاكتشاف الأعطال مثل قياس الجهود والترددات للوحة الأم ومتابعة العملية POST لقراءة رمز الخطأ وإظهاره، وبالبحث عنه في دليل الاستخدام لهذه البطاقة يمكن إيجاد المشكلة بسهولة. مشاكل وأعطال ذاكرة الوصول العشوائي أعطال الذاكرة قليلة الحدوث وهي غير شائعة بالموازنة مع العناصر الأخرى نظرًا لأنَّها لا تحوي أجزاءً ميكانيكية؛ أعراض تعطل الذاكرة هي: ظهور الشاشة الزرقاء أو شاشة الموت -كما يسميها مستخدمو نظام التشغيل ويندوز- فجأة ثمَّ إعادة تشغيل الحاسوب؛ قد تكون الشاشة الزرقاء علامة على تعطل عنصر آخر غير الذاكرة. إعادة تشغيل الحاسوب أو جمود الحاسوب فجأة. انخفاض أداء الحاسوب تدريجيًا بعد تشغيله إذ يكون الأداء جيدًا في البداية ثمَّ يتهاوى تدريجيًا. فشل عملية تثبيت تطبيق جديد أو نظام تشغيل على الحاسوب لسبب مجهول. صدور صوت صفير مستمر أو متقطع ومستمر. عمل الحاسوب مع ظهور شاشة سوداء، وهذه العلامة تسبقها غالبًا إضافة ذاكرة جديدة. يجب تمييز مرحلتين عند التعامل مع مشاكل الذاكرة؛ الأولى هي وجود مشكلة في الذاكرة مع استمرار عمل الحاسوب والدخول إلى نظام التشغيل وهذا يتمثل في الأعراض من 1 إلى 4؛ في هذه الحالة، لا يمكن الجزم بأنَّ المشكلة هي في الذاكرة إذ يُحتمل أن تكون الفيروسات أو نظام التشغيل سبب ذلك، لذا نفحص الذاكرة باستخدام برامج فحص وتحليل الذاكرة مثل البرنامج memtest86 أو memtest86+‎ أو Windows Memory Diagnostics الذي توفره شركة مايكروسوفت على أنظمتها ويمكن بدء هذا البرنامج بفتح مربع الحوار "تشغيل" (run) عبر الاختصار "Ctrl+R" وكتابة "mdsched.exe" حيث تبدأ عملية فحص الذاكرة بعد إعادة تشغيل الحاسوب، وتتواجد نسخ إقلاعية من البرامج السابقة لا تتطلب نظام تشغيل. الحالة الثانية هي عدم عمل إكمال العملية POST وإصدار صوت صفير أو عدم إصداره، ويكون السبب غالبًا هو إضافة ذاكرة إلى الحاسوب لم تتوافق مع الذاكرة الموجودة أو لم تتعرف عليها البيوس؛ نتأكد في هذه الحالة من توافق ترددات الذاكرات أو نغير مكانها بأن نضع كلتا الذاكرتين على شقي توسعة من اللون ذاته؛ يمكن أن لا تدعم لوحة الأم هذه الذاكرة لذا نلجأ إلى تحديث نظام البيوس. إن لم تُحل المشكلة، نتأكد من عمل مقبس الذاكرة بإعادة تركيب الذاكرة على مقبس آخر أو تنظيف نواقل الذاكرة والمقبس ببخاخ لإزالة الغبار وهذه الحالة كثيرة الحدوث. وجود عطل في إحدى خلايا الذاكرة يضطرنا إلى استبدالها لذا نجد أن الحل الوحيد لإصلاح الذاكرة هي استبدالها. في حال كان الحاسوب يحوي أكثر من ذاكرة واحدة فنزيلهم جميعًا ونركب واحدة تلو الأخرى لفحصها؛ إن كانت جميعها لا تعمل فقد يكون المقبس هو السبب لذا نجرب الذاكرة على لوحة أخرى للتأكد من أن العطل ليس منه وتعطل المقبس نادر الحدوث. إذا تكرر العطل عشوائيًّا فاحتمال أن تكون المشكلة في نظام التبريد أو وحدة التغذية، أمَّا إذا تكررت المشكلة بانتظام فالأغلب أنَّ العطل في الذاكرة؛ إن كان لديك نظاما تشغيل وكانت المشكلة تظهر في أحدهما دون الآخر فالمشكلة ليست في الذاكرة. مشاكل وأعطال المعالج إن كانت أعطال الذاكرة قليلة الحدوث فإن أعطال المعالج شبه نادرة، وإذا كان المعالج لا يعمل فلا خيار سوى استبداله. مشكلة المعالج الشائعة هي الحرارة بالإضافة إلى العطل أو الضرر الفيزيائي للمعالج مثل أن تنكسر إحدى أرجله إن كان من نوع "PGA" نتيجة تركيبه على المقبس بطرقة خاطئة أو سقوطه أثناء حمله. الحرارة الزائدة هي السبب الرئيسي التي تؤثر سلبًا على أداء المعالج و تقلل من عمره وتوقفه عن العمل فجأةً إن تجاوزت الحدود المسموحة؛ من أعراض ارتفاع الحرارة أثناء العمل هي إعادة التشغيل أو توقف الحاسوب عن العمل على نحو مفاجئ؛ يجب في هذه الحالة مراقبة حرارة المعالج عبر البرامج مثل برنامج "CPU-Z" أو عبر الدخول إلى إعدادات البيوس، وتوفر شركة Intel أداة لتحليل أعطال معالجاتها وهي "Processor Diagnostic Tool" التي توفر الكثير من المزايا لفحص المعالج، بالإضافة إلى توافر نسخة إقلاعية منها لاستخدامها إن كان النظام لا يعمل. قد تكون المروحة هي السبب في ارتفاع الحرارة مثل انخفاض أدائها نتيجة تكتل الغبار والأوساخ عليها، أو عدم عمل نظام التبريد ككل بكفاءة أو ترقية المعالج أو كسر سرعته دون تغيير المروحة أو زيادة سرعتها؛ توفر بعض صناديق الحاسوب فتحات لتركيب مراوح إضافية يمكن استغلالها. يعتقد بعض المستخدمين أنَّ فتح غطاء صندوق الحاسوب يزيد من كفاءة التبريد، ولكنَّ ذلك خاطئ إذ يُعطل نظام التبريد بدلًا من زيادة كفاءته؛ مكان وضع صندوق الحاسوب قد يؤدي إلى زيادة الحرارة مثل وضعه في مكان تُغلق فيه بعض فتحات التهوية خصوصًا الخلفية منها. في حال عمل الحاسوب مع ظهور الشاشة السوداء ودون صدور صوت صفير، نترك الحاسوب يعمل فترة من الزمن ثمَّ نطفئه ونلمس سطح المعالج للتأكد من وجود حرارة؛ إن لم توجد حرارة نحاول تجريب هذا المعالج على لوحة أخرى للجزم بعمله أو تعطله، وإن كان هو السبب نستبدل به معالجًا جديدًا.
  13. سنناقش في هذا الدرس موضوع الحاسوب المحمول Laptop من نواحي عدَّة؛ سنتعرَّف على خصائصه ومزاياه وعناصره التي تختلف عن الحاسوب المكتبي Desktop بعض الشيء. لا يكاد يخلو منزل أو مكتب من وجود حاسوب محمول فيه، كما أنَّ بعض المستخدمين يفضلونه دائمًا على الحاسوب المكتبي ظنًّا منهم أنَّه الأفضل من ناحية الأداء والمواصفات وغيرها من الأمور؛ سيتبادر حينئذٍ السؤال: ما هي الفروقات الجوهرية بينهما؟ الفارق بين الحاسوب المحمول والحاسوب المكتبي صحيح أنَّ كلا الحاسوبين متشابهان تقريبًا في أداء الأمور الاعتيادية وإنجاز المهام المطلوبة إلا أنَّهما يختلفان ببعض الأمور مثل السعر، والأداء، ومقاس الشاشة، وقابلية الترقية والتحديث، وأمور الصيانة؛ والتي سنستعرضها جميعها. الحاسوب المتحرك والحاسوب الثابت الاختلاف الأول يتَّضح من اسمهما وهي أنَّ الحاسوب المحمول يمكن حمله لأي مكان ووضعه على أي سطح نظرًا لحجمه الصغير وإمكانية حمله في الحقيبة، بينما لا نستطيع فعل ذلك مع الحاسوب المكتبي لكبر حجمه ووجود جهاز عرض منفصل. الكلفة توجد خيارات كثيرة لشراء الحاسوب المكتبي واختيار عناصره التي تتحكم بسعره وبذلك يمكن الحصول على الأداء والمواصفات والسعر المطلوب بحسب رغبة المستخدم. أمَّا الحاسوب المحمول، فالخيارات المتاحة محدودة إذ تتعلق المواصفات بالشركة المصنِّعة والموديل؛ يكون الحاسوب المكتبي عمومًا أرخص من نظيره المحمول. المعالج حجم معالجات الحواسيب المكتبية أكبر من معالجات الحواسيب المحمولة وهذا يميزها من ناحية الأداء؛ مشكلة التبريد في الحواسيب الحمولة وارتفاع الحرارة تحدُّ من أدائها بالموازنة مع معالج مشابه تمامًا لحاسوب مكتبي. مقاس شاشة العرض يمكن في الحواسيب المكتبية استخدام مقاسات كبيرة للشاشات تبدأ من 15 بوصة إذ يمكن استخدام أي نوع من الشاشات بالمقاس المطلوب. في الحواسيب المحمولة، يتراوح مقاس الشاشة من 10 إلى 17 بوصة، ويبقى خيار وصله إلى شاشة خارجية أمرًا متاحًا. التحديث والترقية تستطيع ترقية وتحديث أي عنصر من عناصر الحاسوب المكتبي (المعالج أو الذاكرة أو القرص الصلب أو بطاقة العرض …إلخ) بفكه واستبدال عنصر أحدث به، بينما لا يمكن فعل ذلك مع عناصر الحاسوب المحمول باستثناء القرص الصلب والذاكرة والسبب هو إمَّا أن تكون تلك العناصر مدمجة ضمن اللوحة أو غير قابلة لاستبدال، ولترقيته آنذاك يجب عليك شراء حاسوب جديد؛ هذا الأمر مهم ويؤخذ كثيرًا في الحسبان عند المفاضلة بين الحاسوبين. الألعاب إن كنت تريد شراء حاسوب بهدف اللعب فأنصحك باختيار الحاسوب المكتبي دون جدال؛ تستطيع الحواسيب المكتبية تصريف الحرارة بكفاءة عالية نظرًا لوجود مساحة تساعد على ذلك؛ تلك المساحة غير متوافرة في الحواسيب المحمولة مما يجعل الحرارة هي المسبب الرئيسي لأغلب أعطاله. في الحواسيب المكتبية، يمكن إضافة بطاقتي عرض أو أكثر، وتستطيع وحدة التغذية تزويده باستطاعة كبيرة تزيد عن 1000 واط وذلك قد لا تدعمه الحواسيب المحمولة. الصيانة إصلاح أعطال الحاسوب المكتبي أسهل لإمكانية فك واستبدال جميع القطع والعناصر بالإضافة إلى توافرها في السوق؛ أمَّا عناصر الحاسوب المحمول فلا تتوافر في السوق الأمر الذي يؤدي إلى اللجوء إلى الشركة المصنِّعة لإصلاحه، وهنالك بعض الأعطال قد لا يمكن إصلاحها. يتضح أنَّ الحاسوب المكتبي أفضل من ناحية الأداء من الحاسوب المحمول، وهذا الأخير يتصف أيضًا بمزايا يتفوق بها على الأول، ويعود الأمر في النهاية إلى متطلبات واحتياجات المستخدم. فك الحاسوب المحمول لكي نستطيع الوصول إلى اللوحة الرئيسية للحاسوب المحمول، يجب فك الغلاف وإزالة كمية كبيرة من البراغي؛ أظن أنَّك لن تجازف في هذه العملية لفك حاسوبك الذي أمامك الآن إن كان محمولًا؛ الأمر سهل وبسيط كما أنَّه يتطلب قلبًا قويًا والقليل من الانتباه كما اتفقنا في بداية السلسلة عند التعامل مع العتاد. إن لم تخض تجربة فك حاسوب محمول نهائيًا فيجب قبل فكه أن تكون على دراية بأماكن توضع القطع والبراغي وذلك بالبحث عبر “اليوتيوب” عن مقطع فيديو لفك حاسوب محمول مشابه للذي ترغب بفكه؛ لنفترض أنَّ الحاسوب الذي تريد فكه هو Asus موديل X550CC؛ نكتب في متصفح الويب العبارة “Disassemble asus x550cc” أي “فك الحاسوب asus x550cc” فتظهر هذه النتيجة؛ أصبحت لديك بعد مشاهدة مقطع الفيديو معرفة بكيفية فك هذا النوع. أكثر شيء مزعج أثناء فك الحاسوب المحمول هو كثرة البراغي مما يؤدي إلى زيادة أو إنقاص بعض منها أثناء إعادة التركيب أو عدم معرفة أماكنها لذا يمكنك استخدام “مخطط البراغي” برسم أماكن البراغي على ورقة ولصق كل واحد عليها بعد فكه، وهكذا ستتمكن من إعادتها كما كانت؛ ستجد بعد الممارسة أنَّك لن تضطر لاستخدام هذا المخطط، وكن حذرًا أثناء الفك ولا تستخدم العنف أو القوة مطلقًا. عناصر الحاسوب المحمول تعرفنا في دروس سابقة على جميع عناصر الحاسوب بتفاصيلها؛ لا تختلف عناصر الحاسوب المحمول عنها سوى بحجمها واستهلاكها المنخفض للطاقة الذي بدوره قد يخفِّض من أدائها؛ تأخذ اللوحة الأم فيه شكل الغلاف وتختلف من موديل إلى آخر إذ لا يمكن استبدالها مطلقًا، وتضم جميع القطع والعناصر. تظهر الصورة أدناه اللوحة الرئيسية لحاسوب Sony VAIO. نشرت الصورة برخصة CC BY-Sa لصاحبها Sebastian Klein شاشة العرض أغلب أنواع الشاشات المستخدمة حديثًا مع الحواسيب المحمولة هي LCD/LED نظرًا لاستهلاكها المنخفض للطاقة، ويتراوح مقاسها بين 10 و 17 بوصة وبدقة 1280×800 (16:10) أو 1366×768 (16:9) بكسل؛ يمكن أيضًا وصل شاشة عرض خارجية. إن كانت شاشة الحاسوب المحمول من نوع LCD ذات الإضاءة CCFL فإنَّها تتألف من ثلاثة عناصر وهي: الشاشة، وعناصر الإضاءة الخلفية التي تتوضع غالبًا على أطراف الشاشة (راجع درس أنواع أجهزة العرض)، ودارة تحويل التيار (LCD inverter board) التي تحوِّل التيار المستمر DC ذو الجهد المنخفض إلى تيار متردد AC بجهد مرتفع لتزويد عناصر الإضاءة الخلفية بالطاقة اللازمة؛ وهذه العناصر الثلاثة يمكن استبدالها؛ أمَّا إن كانت الإضاءة من نوع LED فلا توجد دارة تحويل. مصدر الصورة: PCHub.com تظهر دارة تحويل التيار لشاشة LCD في الوسط، وكبل الإضاءة الخلفية على اليمين، وكبل الشاشة على اليسار. وحدة المعالجة المركزية كانت معالجات الحواسيب المحمولة قديمًا هي نفسها التي تستخدم في الحواسيب المكتبية ولكن ذلك لم يعد ينفع بسبب الفارق الكبير في طريقة التبريد لذا انقرضت تلك المعالجات بحلول عام 2013؛ بدأت الشركات بصنع معالجات مخصَّصة للحواسيب المحمولة تتصف بتوفيرها الكبير للطاقة وقلَّة إصدارها للحرارة. بالنسبة لكسر سرعة المعالج، يعتبر هذا الأمر مستحيلًا لأنَّ المعالج يعمل بطاقته العظمى كما أنَّ نظام التبريد لا يساعد على ذلك. أغلب الحواسيب المحمولة الحديثة تكون معالجاتها ملحومةً مع اللوحة الأم، أي لا يمكن استبدالها؛ كانت قبل ذلك تركَّب على مقبس مثل معالجات الحواسيب المكتبية ولكن بحجم أصغر. وحدة معالجة الرسوميات تكون وحدة معالجة الرسوميات GPU‏ (Graphical Processing Unit) في معظم الحواسيب المحمولة مدمجةً مع المعالج لتقليل المساحة وتخفيض استهلاك الطاقة؛ تحتوي الحواسيب مرتفعة الثمن التي تُستخدم للرسم الاحترافي ثلاثي الأبعاد أو للألعاب أو للتصميم بمعونة الحاسوب CAD على وحدة معالجة رسوميات منفصلة عن المعالج مما يزيد من كفاءة وجودة معالجة الرسوميات. بما أنَّ وحدة معالجة الرسوميات المنفصلة تستهلك كمية كبيرة من الطاقة بينما لا تستهلك المدمجة ذلك القدر، لجأت الشركات المصنِّعة إلى وضعهما ضمن الحاسوب مع إمكانية التبديل بينهما؛ أي عند تشغيل تطبيقات الرسم أو التصميم أو الألعاب …إلخ. فإنَّ وحدة المعالجة المنفصلة تبدأ بالعمل، وفي حال استخدام التطبيقات الاعتيادية مثل تصفح الإنترنت أو استخدام التطبيقات المكتبية أو الاستماع للصوت أو مشاهدة فيديو …إلخ. فإنَّ وحدة معالجة الرسوميات المدمجة هي التي تعمل توفيرًا للطاقة؛ يمكن للمستخدم التحكم بإعدادات استخدام هاتين الوحدتين. الذاكرة يمكن الوصول عادةً إلى الذاكرة عبر نزع غطاء واحد أسفل الحاسوب لسهولة ترقيتها أو استبدالها؛ عامل الشكل المستخدم في الحواسيب المحمولة هو SO-DIMM (راجع درس أنواع الذاكرة). تحتوي أغلب الحواسيب على شقي ذاكرة فقط أمَّا الحواسيب المخصَّصة للألعاب أو للاستخدامات الهندسية المتطورة فَيَصل عددها إلى أربعة؛ نوع الذاكرة المستخدمة DDR3 أو DDR4 وتتراوح السعة المستخدمة من 4 إلى 8 غيغابايت وسطيًا؛ في بعض الحواسيب المحمولة، تُلحم الذاكرة مع اللوحة الأم لتوفير المساحة وحينئذٍ لا يمكن ترقيتها أو استبدالها. وحدة التخزين الداخلية تَستخدم الحواسيب المحمولة القرص الصلب HDD لتخزين بيانات وملفات المستخدم بصورة دائمة؛ يكون عامل الشكل المستخدم هو 2.5 أو 1.8 بوصة بحسب المساحة المتوافرة؛ من مزايا هذا القرص الصلب عن القرص الصلب ذو 3.5 بوصة المستخدم في الحواسيب المكتبية أنَّ حجمه صغير، ويصدر حرارة أقل، ويستهلك طاقة منخفضة؛ ومن عيوبه أنَّ سعته قليلة، ومعدَّل سرعة نقل البيانات منخفض. بما أنَّ الحاسوب المحمول كثير الحركة والتنقل فسيعاني القرص الصلب من كثرة الأخطاء وتلف البيانات الناتج عن تضرر القطاعات وذلك بسبب احتكاك رأس القراءة والكتابة بالأقراص أثناء تحريك الحاسوب أو تعرضه للصدمات وهو يعمل لذا ينصح بعدم تحريك الحاسوب أثناء عمله. تحوي الحواسيب ذات مقاس الشاشة 17 بوصة أو أكبر نوعان من أجهزة التخزين وهي: القرص HDD‏ بسعة كبيرة لتخزين الملفات، والقرص SSD بسعة قليلة لوضع نظام التشغيل عليه مما يزيد من أدائه وسرعته؛ راجع درس القرص الصلب لمعرفتهما بشكل أوسع؛ تَستخدم بعض الحواسيب التي لا تحوي مساحةً كبيرة القرص SSD فقط لتشغيل النظام وتعتمد على خدمات التخزين السحابي لتخزين ملفات المستخدم مثل الحاسوب المحمول Chromebook، ويمكن أيضًا الاعتماد على وحدات التخزين الخارجية لتخزين الملفات. قارئ الأقراص الليزرية تستطيع قارئات الأقراص قراءة الأقراص من نوع CD و DVD وأحيانًا Blu-ray، وتتواجد في الحواسيب ذات مقاس الشاشة 15 بوصة أو أكبر بينما لا تتواجد في الحواسيب الصغيرة أو النحيفة. يمكن فك واستبدال هذه القارئات، ويمكن أيضًا في بعض الحواسيب إزالتها ووضع قرص صلب إضافي مكانها مع استخدام قطعة ثانية لملء الفراغ المتبقي. شقوق التوسعة تُستخدم شقوق التوسعة في الحواسيب المحمولة لإضافة المزيد من المزايا للحاسوب وتوسيع دائرة عمله وتدعى”PCMCIA” وأغلب بطاقات التوسعة هي من نوع “Mini PCIe” ذات الحجم الصغير؛ بعد ظهور المنفذ USB 3.0 أصبح استخدامها نادرًا لإمكانية إضافة أو إزالة أي عنصر بسهولة عبر منافذ USB. عناصر الإدخال يحتوي الحاسوب المحمول على عناصر إدخال متعدِّدة مثل لوحة اللمس Touchpad، ولوحة المفاتيح، والكاميرا، والمِكروفون، وقارئ الذواكر، وغيرها. البطارية ومزود الطاقة منذ بداية العام 2016، بدأت الشركات باستخدام تقنية “شوارد الليثيوم” (Lithium ion) أو صفائح “الليثيوم البوليميرية” (Flatter lithium polymer) في تصنيع بطاريات الحواسيب المحمولة بدلًا من تقنية “هيدريد النيكل المعدني” (Nickel metal-hydride) التي أصبحت قديمة. تتعلق مدَّة استخدام البطارية بحسب نوعها، واستهلاك العتاد للطاقة الذي يعتمد على نوع العمل والتطبيقات المستخدمة وتتراوح من ساعة إلى يوم تقريبًا؛ يتناقص أداء البطارية تدريجيًا مع الزمن ويتعلق بطريقة الشحن والتفريغ ويتراوح عمر البطارية من سنة إلى ثلاثة سنوات إن كان استخدامها منتظمًا. تَستخدم أغلب الحواسيب الحديثة البطاريات الذكية وهي بطارية مع نظام لإدارتها BMS‏ (Battery Management System) مدمج داخليًا يقيس الجهد والتيار ويتنبَّأ بمستوى الشحن وحالة سلامة البطارية بالإضافة إلى حالة الخلايا. تُشحن البطارية بوساطة مزود طاقة خارجي يحول الجهد الكهربائي للمدينة من متردد AC إلى مستمر DC بقيمة جهد تتراوح من 7.2 إلى 24 فولط. عند وصله مع الحاسوب يشحن البطارية ويزوده بالطاقة في الوقت ذاته وعند اكتمال شحن البطارية تُفصل عن الطاقة ولا تُستخدم، ويستمد الحاسوب كامل طاقته منه. نظام التبريد يعتمد نظام التبريد في الحواسيب المحمولة على المشتتات الحرارية، والمراوح، والأنابيب الحرارية؛ توجد غالبًا مروحة واحدة موصولة بأنابيب حرارية إلى المعالج والعناصر المراد تبريدها، وتعمل على سحب الهواء من أسفل الحاسوب وطرحه من أحد الجوانب؛ في حال ارتفاع درجة الحرارة كثيرًا داخل الحاسوب فإنَّه يتوقف عن العمل مباشرةً وذلك ينتج عن انسداد أحد فتحات التهوية أو توقف المروحة عن العمل. المنافذ الخارجية توجد عادة في الحواسيب المحمولة المنافذ الخارجية التالية: منفذ USB أو أكثر، ومنفذ لوصل شاشة عرض خارجية من نوع VGA أو DVI أو HDMI، ومنفذ لوصل سماعات الصوت، ومنفذ شبكة إيثرنت؛ تَستخدم بعض حواسيب Apple منفذًا واحدًا من نوع USB Type-C عوضًا عن استخدام المنافذ السابقة إذ يُشحن الحاسوب وتُوصل مختلف الأجهزة الأخرى عبر ذلك المنفذ. محطة التثبيت تعتبر محطة التثبيت Docking station أحد قطع العتاد التي تعمل على تأمين منافذ إضافية للحاسوب المحمول وتثبيته في مكان محدَّد وهذه المنافذ هي: منافذ USB، ومنافذ شاشة عرض خارجية، ومنافذ متوازية لوصل الطابعات (قديمًا)، ومنفذ للشحن، وقارئ أقراص ليزرية …إلخ. تُستخدم بكثرة في المكاتب والشركات إذ تبقى ثابتة في مكانها وتوصل جميع الأجهزة الخارجية معها مثل الطابعة، وشاشة العرض، والفأرة؛ وعند الوصول للمكتب ليس على المستخدم سوى وصل المحطة مع الحاسوب بدلًا من إعادة وصل الطابعة والشاحن وكابل الشبكة وغيرها، وبذلك يصبح شبيهًا بالحاسوب المكتبي. حماية الحاسوب المحمول إنَّ وجود الحاسوب المحمول في مكان عام خطر جدًا لسهولة سرقته وإخفائه لذا توجد طريقة لقفل الحاسوب وهي باستخدام كبل من الفولاذ يحتوي في نهايته على قفل؛ يُربط الكبل في مكان ثابت مثل الطاولة ويركب القفل على الحاسوب المحمول وبذلك لا يمكن أخذه إلا بفتح القفل؛ صحيح أنَّ اللص المحترف لا يعيقه شيء إلا أنَّ هذه الطريقة تحمي الحاسوب من عامَّة اللصوص. الخلاصة تعلمنا في هذا الدرس الاختلاف بين الحاسوب المحمول والحاسوب المكتبي وكيف نفاضل بينهما، تعرفنا أيضًا على طريقة فكه، وأهمِّ عناصره مع إظهار الفارق بينها وبين عناصر الحاسوب المكتبي. لا يكمن بالتأكيد أن نشمل موضوع الحاسوب المحمول بدرس واحد، ولكنَّ هذه المقالة كافية لاحتوائها أهم الأمور الواجب معرفتها، وتبقى الممارسة هي التي تزيد من معرفتك وخبرتك.
  14. بعد التعرُّف على طريقة التواصل بين الأجهزة في الشبكة في الدرس السابق، سنكمل في هذا الدرس موضوع “أساسيات الشبكات”؛ سنناقش العناصر المستخدمة في إنشاء شبكة محليَّة ونتعرف على مخططاتها المستخدمة. يجب عليك معرفة المكونات الشبكيَّة ووظائفها كي تتمكن من إنشاء شبكة محليَّة تخدم الغرض الذي أنشأتها لأجله. المكونات الاعتيادية هي: الحواسيب الشخصيَّة التي تمثل النهايات الشبكيَّة، والخواديم، والأجهزة التي توفر قابلية الاتصال في الشبكة مثل الموزِّعات Hubs، والمبدِّلات Switches، والموجِّهات Routers؛ لدينا أيضًا البطاقات الشبكيَّة والأكبال التي تشكل جزءًا من الشبكة المحليَّة. بطاقة الشبكة لكي يتمكن الحاسوب من الاتصال بالشبكة يجب أن يمتلك “بطاقة شبكة” NIC‏ (Network Interface Card)؛ توضع هذه البطاقة ضمن شقوق التوسعة أو تكون مدمجةً مع اللوحة الأم غالبًا ويتصل كبل الشبكة بها، وتمتلك كلُّ بطاقة عنوان MAC مميزا. مهمَّة بطاقة الشبكة هي تحضير البيانات (رزم البيانات أو الإطارات) أثناء إرسالها أو استلامها، والتحكم بتدفق البيانات بين الحاسوب والشبكة. تعمل بطاقة الشبكة ضمن الطبقة الفيزيائية في نموذج OSI والتي ترسل وتستقبل البيانات على شكل بتات bits عبر الشبكة. الموزِّع يعتبر الموزِّع من أبسط الأجهزة المستخدمة في ربط الشبكات ويُستخدم في إنشاء الشبكات الصغيرة. توصل الحواسيب عبر الأكبال إلى الموزع الذي يعمل على استلام الإشارة من أحد الحواسيب ثمَّ يعيد إرسالها إلى جميع منافذه، أي يستلم الموزع البيانات من أحد الحواسيب ثمَّ يرسلها إلى جميع الحواسيب المتصلة؛ يقبل الحاسوب الوجهة تلك البيانات التي تحمل عنوانه بينما تهملها الحواسيب الأخرى. هذه الطريقة غير فعالة لأنَّ البيانات تُرسل غالبًا إلى حاسوب واحد وعملية إعادة توجيهها إلى جميع الحواسيب تسبب بطئًا في الشبكة لذا تحولت الأنظار نحو المبدِّل. المبدِّل نشرت الصورة برخصة المشاع الإبداعي BY-SA لصاحبها Geek2003. يشبه المبدِّل الموزِّع كثيرًا إلا أنَّه يحمل مزيدًا من المزايا؛ لا يرسل المبدِّل البيانات إلى جميع الحواسيب بل يستطيع قراءة العنوان الفيزيائي MAC للرسائل التي تصله ثمَّ يقارنها مع عناوين الحواسيب المتصلة بمنافذه ويرسلها إلى وجهتها مباشرةً، وبذلك تقل التصادمات في الشبكة وتصبح أسرع؛ أي أنَّ الموزع يعمل ضمن الطبقة الثانية في نموذج OSI. يُستخدم المبدِّل كثيرًا في إنشاء الشبكات وهو أغلى ثمنًا من الموزِّع ولكنَّه أفضل أداءً إذ يعمل على زيادة السرعة في الشبكة. الجسر يشبه عمل الجسر Bridge المبدِّل إلا أنَّ وظيفته هي ربط شبكتين مع بعضهما أو تجزئة شبكة كبيرة إلى جزأين لتخفيف التصادمات فيها وزيادة أدائها. عندما يريد أحد الأجهزة من الشبكة الأولى الاتصال مع حاسوب من الشبكة الثانية، يسمح الجسر بمرور تلك البيانات عبره لأنَّه يعرف عناوين MAC لكامل الحواسيب المتصلة بالشبكة؛ أمَّا غير ذلك مثل اتصال جهاز مع آخر ضمن الشبكة نفسها فلا يسمح للإشارات بالعبور. الموجِّه يعمل الموجه على وصل الشبكات المحليَّة المختلفة مع بعضها وتوجيه رزم البيانات عبرها، فإن أردنا توصيل الشبكة المحلِّية إلى الإنترنت أو أردنا مشاركة الإنترنت مع مجموعةٍ من الحواسيب أو توصيل شبكات عدَّة مع بعضها فإننا نستخدم الموجِّه. تستطيع الموجهات تمييز العنوان IP للشبكات والحواسيب والرزم المرسلة، أي أنَّها تعمل ضمن الطبقة الثالثة في نموذج OSI، وتخزِّن تلك العناوين ضمن جدول يدعى “جدول التوجيه” مع تبيان عنوان الطريق أو الجهاز التالي الذي سيفضي إلى تلك الشبكة أو الحاسوب. عندما يستلم الموجِّه رزم البيانات فإنَّه يزيل تغليفها (راجع درس مدخل إلى شبكات الحواسيب) ويقرأ عنوان الجهاز الوجهة ثمَّ يقارنه مع العناوين الموجودة في جدول التوجيه ويختار أفضل طريق لإيصال الرزم نحو وجهتها ثمَّ يعيد تغليف الرزمة مع وضع عنوان المبدِّل أو الموجِّه التالي وهكذا تتكرر الخطوات حتى تصل الرزم إلى المبدِّل الذي يرسلها بدوره إلى وجهتها. توضح الصورة عملية إرسال البيانات من أحد الحواسيب المتواجد ضمن الشبكة الأولى إلى حاسوب ضمن الشبكة الثانية وقد اختار الموجَّه الطريق الأقصر الذي يمر عبر الموجِّه الثاني مع وجود طريق آخر يمر عبر الموجِّه الثالث. تتضمن بعض الموجهات مبدِّلًا أيضًا وبذلك يمكن استخدامه لأداء وظيفتين في الوقت ذاته ويمكن الاستغناء به عن شراء مبدِّل وموجِّه منفصلين؛ نستخدمه إن كانت الشبكة التي نريد إنشاءها لشركة صغيرة أو ضمن المنزل؛ وقد يدمج أيضًا مع الموجِّه نقطة وصول لاسلكية، ويعتمد اختياره على طبيعة المكان والسرعة والكلفة. نقطة الوصول اللاسلكيَّة نشرت الصورة برخصة المشاع الإبداعي BY-SA لصاحبها Macic7. تعمل نقطة الوصول اللاسلكيَّة Wireless access point، وتدعى اختصارًا WAP، على وصل الأجهزة اللاسلكيَّة مثل الهواتف المحمولة أو الحواسيب المحمولة أو حتى الحواسيب المكتبية التي تحوي بطاقة شبكةٍ لاسلكيَّة إلى شبكة سلكيَّة؛ تشبه في عملها المبدِّل ولكن دون وجود أكبال تربط الأجهزة، وترتبط غالبًا بموجِّه عبر كبل. تُستخدم بكثرة في الفنادق والمطارات والمدارس والشركات …إلخ. وأحيانًا تُدمج ضمن الموجِّه. أكبال التوصيل إنَّ أكبال التوصيل هي إحدى مكونات الشبكة المهمَّة التي تُستخدم للربط بين مختلف عناصرها؛ تنتقل البيانات والإشارات من جهاز إلى آخر بشكل بتات (0 و 1) إذ تعمل الأكبال ضمن الطبقة الأولى في نموذج OSI. توجد ثلاثة أنواع رئيسية للأكبال وهي الكبل المحوري Coaxial cable، والكبل المجدول Twisted pair cable، وكبل الليف الضوئي Optical fiber cable. الكبل المحوري نشرت الصورة برخصة المشاع الإبداعي BY-SA لصاحبها Apolkhanov. يتألف الكبل المحوري من ناقل داخلي محاط بعازل أنبوبي ثمَّ يلي طبقة العزل ناقل آخر يحيط بها، ويُغلَّف الكبل بطبقة من البلاستيك قد تحوي طبقةً عازلة معها. ينقل هذا الكبل الإشارات الإلكترومغناطيسية منخفضة التردد؛ وهو شائع الاستخدام في التلفاز، والراديو، والصوت، والشبكات؛ واستُخدم في مجال الشبكات المحليَّة قديمًا في ثمانينات القرن الماضي وله نوعان هما: النوع الثخين والنوع الرفيع إلى أن استبدل به الكبل المجدول. الكبل المجدول هو كبل يتألف من أربعة أزواج من الأسلاك أي ثمانية أسلاك نحاسية مغطاة بمادة عازلة، وتحاط جميعها بغلاف خارجي؛ الهدف من جدل الأسلاك في ثنائيات هو التقليل من التشويش الإلكترومغناطيسي. أول ما استخدم هذا الكبل في الشبكات كان بسرعة 10 Mb/s والذي يعرف بالتصنيف 3 (cat3 أو category 3) ثمَّ تلته إصدارات محسَّنة تختلف عن بعضها بنوع العزل وغيرها من الأمور ومنها cat5 و cat5e و cat6 التي تصل سرعتها إلى 100 Mb/s وحتى cat8.2 التي تصل سرعته إلى 40 Gb/s. يوجد للكبل المجدول نوعان رئيسيان وهما: الكبل المجدول غير المعزول Unshielded twisted-pair والمعروف باسم UTP، والكبل المجدول المعزول Shielded twisted-pair والمعروف باسم STP؛ يُستخدم الكبل المجدول غير المعزول بكثرة في شبكات إيثرنت، والهواتف الأرضية لرخص ثمنه عن بقية الأنواع، ومرونته، وأدائه الجيد؛ أمَّا الكبل المجدول المعزول فيتميز بجودة نقل الإشارات ومنع التشويش الإلكترومغناطيسي، وله أنواع متعدِّدة تختلف بطريقة العزل إذ إمَّا أن يكون العزل على كامل الكبل فقط مثل F/UTP و S/UTP و SF/UTP أو لكلِّ زوج من الأسلاك مثل U/FTP أو كليهما مثل F/FTP و S/FTP و SF/FTP؛ يشير الحرف F إلى الكلمة “Foil shielding” وهي الرقاقة المعدنية العازلة، والحرف S إلى “Braided shielding” وهي الأسلاك المجدولة العازلة. كبل معزول من نوع S/FTP التصنيف 7. نشرت الصورة برخصة CC BY SA لصاحبها Ru wiki. تنتهي الأكبال المجدولة بوصلة من نوع RJ45؛ يشير RJ إلى “المقبس المسجل” اختصارًا للعبارة (Registered Jack) ذو الرقم 45 الذي يشير إلى موديل معين من الوصلة فيها ثمانية ناقلات. تركب الأسلاك ضمن الوصلة في أماكنها المحدَّدة وترقم من 1 إلى 8 بدءًا من اليسار؛ يوجد معياران لتركيب الأسلاك وترتيبها وهما: EIA/TIA T568A وEIA/TIA T568B؛ توضح الصورة الآتية هذين المعيارين. وجود المعيارين السابقين يجعلنا نحصل على نوعين من الأكبال عند تهيئتها وهي: الأكبال المباشرة straight-through cables: يكون ترتيب الأسلاك في نهايتي الكبل متماثلًا أي ترتيب الأسلاك وفق معيار واحد لكلا النهايتين؛ تُستخدم عادةً لوصل أنواع مختلفة من الأجهزة مثل ربط الحاسوب أو الخادم إلى المبدلات أو الربط بين مبدِّل ٍ وموجِّه. الأكبال المتشابكة crossover cables: ترتيب الأسلاك في نهايتي الكبل مختلفة إذ يكون ترتيب الأسلاك لإحدى نهايتي الكبل وفق المعيار T568A والنهاية الأخرى وفق المعيار T568B؛ تُستعمل لربط العناصر الشبكيَّة من النوع نفسه مثل الربط بين المبدلات، والموجهات، وحتى بين الحواسيب، والخواديم فيما بينهما. كبل الليف الضوئي هو كبل يَستخدم ليفًا ضوئيًا أو أكثر في عملية النقل؛ هذا الليف مصنوع من الزجاج أو البلاستيك ويُغلَّف بطبقة بلاستيكية عازلة لحمايته من التشويش. توجد أنواع مختلفة منه بحسب الغرض المطلوب مثل سرعة النقل أو المسافة، وأهمُّها: الكبل ذو الألياف المتعدِّدة multi-mode fiber أو الكبل أحادي الليف single-mode fiber؛ يُستخدم الأول للمسافات القصيرة والشبكات المحلية، والثاني للمسافات الكبيرة. مخططات الشبكة الفيزيائية عملية ربط عناصر الشبكة مع بعضها ليست عشوائية؛ هنالك طرائق عدَّة لإنشاء الشبكة وربط عناصرها والتي تحدِّد التوصيل الشبكي، ونوع الاتصال الفيزيائي، وخصائص تلك الاتصالات. يتعلق المخطَّط المختار بعدد الأجهزة والعناصر المتوافرة، والخصائص المطلوبة من تلك الشبكة مثل السرعة، والأداء، والوثوقية، والكلفة. المخطط التسلسلي (Bus) توصل الأجهزة في المخطط التسلسلي إلى كبل وحيد وهو كبلٌ محوري؛ ينقل الكبل الإشارات والبيانات إلى جميع الأجهزة والتي يستقبلها الجهاز الهدف بينما تهملها الأجهزة الأخرى. إنهاء الكبل أمر مهم لمنع الإشارات من العودة والتسبب في أخطاء شبكية ناتجة عن التصادمات. أيُّ خللٍ في الكبل يؤدي إلى خروج الشبكة عن الخدمة. المخطط النجمي (Star) يوجد في المخطط النجمي جهاز مركزي لوصل جميع الأجهزة إذ تمر جميع الإشارات والبيانات المنقولة عبره؛ يكون هذا الجهاز في الشبكات المحليَّة الاعتيادية موزِّعًا أو مبدِّلًا أو موجِّهًا؛ إنَّ هذا المخطط يحسِّن من وثوقية الشبكة لأنَّ حدوث خلل في إحدى الوصلات سيؤثر على الجهاز الموصول بتلك الوصلة فقط، ولا علاقة لبقية الشبكة بتلك المشكلة؛ ولكن إن حدث عطل في المبدِّل فسيؤثر ذلك على كامل الشبكة. تتمتع الشبكة المصمَّمة وفق هذا المخطط بسهولة إضافة أجهزة جديدة، وهي من أكثر الشبكات استخدامًا. المخطط الحلقي (Ring) يتصل كلُّ جهاز في المخطط الحلقي مع الجهاز الذي قبله وبعده لتشكل جميعها حلقة؛ قد يبدو أنَّه يشبه المخطط التسلسلي ولكن الأجهزة ليست متصلة إلى كبل واحد، والأكبال مختلفة هنا. تنتقل الإشارات من جهاز إلى آخر باتجاه واحد والذي يعيد إرسالها إلى الجهاز التالي حتى تصل إلى وجهتها؛ حدوث خلل في أحد تلك الأجهزة أو الأكبال سيؤثر على كامل الحلقة مما يمثِّل نقطة ضعف، ولزيادة التوفر والوثوقية يمكن استخدام المخطط الحلقي المزدوج وهكذا يمكن نقل البيانات باتجاهين. المخطط الترابطي التام (Full-Mesh) تتصل جميع الأجهزة مع بعضها بعضًا في هذا المخطط، مما يؤدي إلى مستويات عالية من تلافي الأخطاء فلا توجد نقطة ضعف تؤدي إلى تعطل الشبكة. إنشاء شبكة بهذا المخطط يكلِّف كثيرًا، ونلاحظ استخدامه في الشبكات الواسعة WAN للوصل بين المكاتب الفرعية والمركز الرئيسي. نلجأ أحيانًا بسبب التكلفة الباهظة إلى خيارات أخرى تتضمن مخططًا ترابطيًّا جزئيًّا (partial-mesh) والذي يكون حلًا وسطًا بين ضمان عدم انقطاع الاتصالات وبين التكلفة؛ في هذا المخطط، تُربط الفروع الشبكيَّة أو أهم الأجهزة ارتباطًا تامًّا بينما تُربط العقد الأقل أهمية إلى عقدة أخرى فقط. الخلاصة أصبحت في جعبتك الآن مقدمة جيدة حول الشبكات تمكنك من فهم الشبكات المحليَّة مثل طريقة التواصل بين الأجهزة، ومعرفة بعض البروتوكولات المستعملة، والعناصر المستخدمة في إنشائها.
  15. سنناقش في هذا الدرس أهمَّ المفاهيم الأساسيَّة حول شبكات الحواسيب؛ سنستعرض أهمَّ المصطلحات، ونتعرَّف على آلية التواصل بين الأجهزة بفهم طبقات الشبكة ونستعرض البروتوكولات شائعة الاستخدام. مصطلحات يجب - قبل خوض غمار عالم الشبكات - البدء بتعريف بعض المصطلحات التي ستجدها في طريقك كلما توسعت في هذا المجال سواء في شهادة CompTIA A+‎ أو إن أكملت طريقك نحو عالم الشبكات. وهذه المصطلحات والتعاريف هي: الشبكة: هي مجموعة من الأجهزة المتصلة مع بعضها بهدف تبادل ومشاركة الملفات والمعلومات. الاتصال: هو مجموعة العمليات والإجراءات اللازمة لنقل البيانات بين جهازين متصلين عبر الشبكة وعند الانتهاء من عملية النقل يُقطع الاتصال بينهما. شبكة المنطقة المحليَّة LAN: يشير الاختصار LAN إلى العبارة "Local Area Network" وهي شبكة صغيرة موجودة ضمن مكان محدود أو جزء من شبكة غير كبيرة، ومثالٌ عليها الشبكة في المنزل أو ضمن المكتب أو الشركة. شبكة المدينة MAN: يشير الاختصار MAN إلى "Metropolitan Area Network" وهي الشبكة التي تصل بين الأجهزة الموجودة في منطقة جغرافية واحدة فهي أكبر من شبكة المنطقة المحليَّة مثل الشبكة التي تربط أجزاء المدينة مع بعضها. الشبكة الواسعة WAN: يشير الاختصار WAN إلى "Wide Area Network" وهي الشبكة الأكبر من النوعين السابقين، أي تشير إلى الشبكات الكبيرة التي تربط بين الدول والقارات ومثال عليها شبكة الإنترنت. الرزم Packets: تُجزَّأ البيانات عند نقلها عبر الشبكة إلى أجزاء متعدِّدة بحسب حجمها، وتدعى هذه الأجزاء بالرزم؛ أي هي وحدات المعلومات التي تنتقل عبر الشبكة. لكلِّ رزمة هيكل مؤلف من ترويسة وتذييل وجسم، توضع معلومات الرزمة مثل عنوان المصدر والوجهة والوقت وطول الرزمة وغيرها في الترويسة والتذييل وتوضع البيانات في جسم الرزمة. واجهة الشبكة Network Interface: تشير واجهة الشبكة إلى عتاد الشبكة الصلب، فإذا كان أحد الحواسيب يحتوي على بطاقتي شبكة فيمكن التحكم بكل شبكة وضبطها على حدة باستخدام واجهة الشبكة. المضيف Host: هو الحاسوب المتصل بالشبكة أو الإنترنت. الخادوم Server: هو حاسوب يتمتع بقدرات ومزايا عالية يعمل على إدارة الشبكة وتأمين جميع الخدمات للمضيفين، ويعمل بنظام تشغيل مختلف عن أنظمة التشغيل العادية مثل Windows server 2012. شبكة الند للندPeer to peer network: هي شبكة تتألف من حاسوبين أو أكثر تتصل مع بعضها دون وجود خادوم. كلُّ جهاز في هذه الشبكة مسؤولٌ عن نفسه ويتشارك موارده مع الآخرين ويستخدم مواردهم أيضًا. مستوى الحماية فيها منخفض وهي غير مكلفة ويمكن إنشاؤها ضمن المنزل أو المكتب أو المدرسة بحيث لا يكون عدد الأجهزة كبيرًا. شبكة الخادوم والعميلClient/server network: هي شبكة تحتوي على خادوم مركزي يعمل على إدارة وتنظيم الشبكة بين العملاء. توفِّر هذه الشبكة مستوى عاليًّا من الحماية وهي أكثر تنظيمًا من النوع السابق وأكثر كلفةً أيضًا وتحتاج إلى أشخاص ذوي خبرة لإدارتها، وتستعمل عند وجود عدد كبير من الأجهزة المتصلة بالشبكة. البروتوكول: هو مجموعة من القواعد والعمليات التي تستخدمها الأجهزة للاتصال والتخاطب فيما بينها. يوجد عدد واسع من البروتوكولات مثل بروتوكول TCP وبروتوكول HTTP والتي سنناقشها لاحقًا. المنفذ Port: هو بنية منطقية يشير إلى عملية أو خدمة محدَّدة ضمن الشبكة حيث يكون آخر عقدة في عملية الاتصال ويكمل عنوان الرزم لتوجيهها إلى الموقع المطلوب. لكلِّ منفذ رقم مميز لا يتكرر يشير إلى تلك الخدمة، ويوضع رقم المنفذ ضمن معلومات الرزم في الترويسة. الجدار الناري Firewall: هو تطبيق يملك الصلاحيات بالسماح للبيانات بالمرور أو منعها بحسب القواعد والقوانين التي بُني عليها هذا التطبيق. كما يعمل الجدار الناري على إيقاف المنافذ غير المستخدمة للحماية من القراصنة والمتطفلين. هذه المصطلحات ليست شاملة بل يوجد الكثير منها والتي ستتعرف عليها كلما توسعت في مجال الشبكات. فهم طريقة التواصل بين الأجهزة في الشبكة (طبقات الشبكة) تحتوي الشبكات على أجهزة مختلفة غير متشابهة بالعتاد ولا بأنظمة التشغيل وهنا يتبادر إلى أذهاننا السؤال: كيف تتواصل تلك الأجهزة مع بعضها عبر الشبكة؟ إن عملية الاتصال ونقل البيانات عبر الشبكة قد تكون بضغطة زر ولكن العمليات التي تُجرى لأداء ذلك معقدةٌ بعض الشيء لذا سنحتاج في هذه الأثناء إلى تقسيم عناصر ومكونات الشبكة إلى طبقات لفهم هذه العملية. نموذج الشبكة الطبقي OSI Model ابتكرت هذه الطريقة المنظمة العالمية للمعايير القياسية ISO في عام 1984 لشرح كيفية الاتصال الشبكي، ويقسم هذا النموذج OSI‏ (Open Systems Interconnection) عملية التواصل الشبكي إلى سبعة طبقات وهي: التطبيق Application: هي أقرب طبقة إلى المستخدم وفيها تتفاعل تطبيقات المستخدم والمستخدمين مع بعضهم؛ وأمثلة عن هذه الطبقة هي: البريد الإلكتروني، ونقل الملفات، والاتصال الهاتفي ...إلخ. العرض Presentation: تعمل هذه الطبقة على تنسيق البيانات وتهيئتها للانتقال عبر الشبكة، وفي هذه الطبقة تُضغَط البيانات وتُشفَّر. الجلسة Session: تتحكم هذه الطبقة بعملية الاتصال إذ تعمل على إنشاء وإدارة وإنهاء الاتصال بين المستخدمين. النقل Transport: هي أول طبقة تتعامل مع النقل الفعلي للبيانات فهي تمثل حدًّا فاصلًا عن الطبقات السابقة التي هي أقرب للمستخدم، وهي مسؤولة عن إنشاء اتصال آمن وموثوق، والتأكد من نقل البيانات وتسليمها دون حدوث أي خطأ وفي حال حدوثه يعاد إرسال البيانات، ومسؤولة أيضًا عن تجزئة البيانات كبيرة الحجم إلى أجزاء صغيرة. الشبكة Network: تعمل هذه الطبقة على توجيه الرزم بين مختلف العقد في الشبكة واختيار أفضل طريق لتوصيل البيانات، وتستخدم العناوين المنطقية (عنوان IP) للإشارة إلى عنوان الجهاز المصدر والوجهة. وصل البيانات Data link: تُعرِّف هذه الطبقة طُرقًا موثوقة للوصل بين مختلف العقد أو الأجهزة على الشبكة باستخدام العناوين الفيزيائية (عنوان MAC). بروتوكول إيثرنت Ethernet مثال على البروتوكول المستخدم في هذه الطبقة. الفيزيائية Physical: هي الطبقة المسؤولة عن تسليم الرزم إلى الأجهزة والوسائط الفيزيائية المُستخدَمة للاتصال بين الأجهزة، ومن هذه الأجهزة والوسائط هي الأكبال والوصلات وبطاقة الشبكة ...إلخ. تنتقل البيانات رأسيًا عبر الطبقات إذ تضيف كلُّ طبقة بعض المعلومات المتعلقة بها كترويسة أو تذييل وهذه العملية تدعى "تحزيم" أو "تغليف" (Encapsulation) البيانات وهنا تتشكل لدينا الرزم، أما القطع والإطارات في مشابهة للرزم ولكن بتسميات مختلفة بحسب الطبقات. أمثلة عن المعلومات المغلَّفة هي: صيغة البيانات (فيديو أو نصوص ...إلخ) في طبقة العرض، والعنوان المنطقي IP في طبقة الشبكة. عندما يستلم المستقبل البيانات تبدأ عملية إزالة التغليف وهي عملية معاكسة للعملية السابقة فتبدأ في كلِّ طبقة إزالة التغليف وقراءة معلومات الترويسة والتذييل واتخاذ الإجراءات المناسبة ثمَّ الانتقال إلى الطبقة الأعلى. تشبه هذه العملية إرسال رسالة في البريد العادي؛ يكتب أحمد رسالة ويضعها في ظرف ويكتب في الترويسة الاسم والعنوان ثمَّ يرسلها إلى البريد الذي يغلف تلك الرسالة بظرف أكبر ويضيف إليها عنوان البلد أو المدينة أو أي معلومات يفهمها العاملون في البريد لإيصال الرسالة إلى المستلم. نموذج بروتوكول TCP/IP Model يعرف أيضًا باسم "تجميعة بروتوكول IP"‏ (Internet protocol suite)، طوِّر في أثناء فترة تطوير نموذج OSI وهو أبسط منه وانتشر على نطاق واسع إلى أن أصبح الطريقة المبدئية للتواصل والاتصال بالإنترنت. تقسم عملية التواصل الشبكي في هذا النموذج إلى أربعة طبقات وظيفتها مشابهة لنموذج OSI وهي: التطبيقات: تدمج الطبقات من 5 إلى 7 في نموذج OSI ضمن هذه الطبقة. النقل: مشابهة لطبقة النقل في نموذج OSI كما أنها توفر اتصالاتٍ ذات وثوقية جيدة أو لا توفر ذلك اعتمادًا على نوع البروتوكول المستخدم. الإنترنت: تتعامل مع التوجيه واختيار الطريق وإضافة العناوين المنطقية (عناوين IP). الوصول للشبكة Network access: تتعامل مع الوصول الفيزيائي إلى الأجهزة والوسائط بالإضافة إلى طريقة الوصول إليها وإرسال البيانات مع إضافة العناوين الفيزيائية. البروتوكولات سبق تعريف البروتوكول بأنَّه مجموعة القواعد التي تتخاطب بها الأجهزة مع بعضها، وسنستعرض بعضًا من البروتوكولات المستخدمة في عملية التواصل. Media Access Control العنوان الفيزيائي MAC هو أحد بروتوكولات الاتصال التي تُستخدم لتمييز الأجهزة؛ يُعطى كلُّ جهاز عنوانًا من قبل الشركة الصانعة أثناء تصنعيه والتي تميزه عن غيره من الأجهزة أثناء الاتصال إلى الشبكة. يبقى هذا العنوان ثابتًا لا يمكن تغييره حتى لو تغير اسم الجهاز عبر نظام التشغيل أو أي عملية لذا يمكن الإشارة إلى هذا الجهاز تحديدًا دون غيره بمعرفة عنوانه الفيزيائي MAC. يتألف العنوان الفيزيائي من سلسلة من 48 بت وينقسم إلى جزأين؛ الجزء الأول 24 بت ويُعطى من قبل معهد مهندسي الكهرباء والإلكترون IEEE للشركة الصانعة أي أنَّ كلَّ شركة تُزوَّد بعنوان ثابت، والجزء الثاني 24 بت تُزوِّده الشركة الصانعة للجهاز وهي مسؤولة عنه. 4A AF 23 CC A0 00 24 بت 24 بت Internet Protocol بروتوكول IP هو من أهمِّ البروتوكولات الأساسيَّة لعمل الإنترنت، وهو عنوان منطقي فريد تُعنون به جميع الشبكات والأجهزة المتصلة بها. يُزوَّد هذا العنوان في طبقة الإنترنت ضمن نموذج بروتوكول TCP/IP. يمكن بمعرفة هذا العنوان توجيه البيانات عبر الشبكة لكي تصل إلى وجهتها وعن طريقه يحدَّد الطريق الأفضل للجهاز المستلم واختياره. يتألف عنوان IP من سلسلة من 32 بتًا أي 0 و 1 مقسَّمة إلى أربعة بايتات (كل بايت هو ثمانية بتات) يفصل بينها بنقطة ويحوَّل كلُّ بايت إلى الصيغة العشرية. مثالٌ على عنوان IP هو "192.168.1.19". تُقسم العناوين إلى فئات (A و B و C) حيث تُحدِّد الفئة عدد البتات المخصَّصة لمعرِّف الشبكة وعدد البتات المخصَّصة لمعرِّف المضيف. تحجز فئة العناوين A أول ثمانية بتات لمعرِّف الشبكة ويكون أول بت فيها 0 في أول ثمانية، والبتات الثمانية الثانية والثالثة والرابعة لمعرِّف المضيف. تناسب هذه الفئة عددًا قليلًا من الشبكات وعددًا كبيرًا من المضيفين. تُعرَف عناوين الفئة B بوجود واحد وصفر في أول بتَّين من أول ثمانية؛ ويُحجز أول بايتين للشبكة وآخر بايتين للمضيف. تبدأ الفئة C أول ثمانية بتات بالسلسلة 110 ويُحجز أول ثلاثة بايتات للشبكة، والبايت الأخير للمضيف. يوضح الجدول التالي قيمة الثمانية الأولى التي تُصنِّف فئات الشبكات بالصيغة العشرية لأنَّه لا يمكن بالطبع حفظ أو تذكر القيمة الثنائية. فئة عناوين IP قيمة الثمانية الأولى بالصيغة العشرية قيمة الثمانية الأولى بالصيغة الثنائية العدد الأعظمي للمضيفين الفئة A 1-126 00000001 إلى 01111110 16777214 الفئة B 128-191 10000000 إلى 10111111 65534 الفئة C 192-223 11000000 إلى 11011111 254 إنَّ عنوان IP السابق الذي شرحناه هو للإصدار الرابع IPv4 وهو المستخدم حاليًا، وبسبب وجود عددٍ هائلٍ من الأجهزة في الشبكة العامة فلم يعد 32 بتًا كافيًا، لذا طُور الإصدار السادس منه IPv6 والذي بدأ بالانتشار والاستخدام. ICMP إنَّ بروتوكول ICMP هو اختصارًا للعبارة (Internet Control Message Protocol)؛ يُستخدم هذا البروتوكول لإرسال رسائل بين الأجهزة للتأكد من توافرها على الشبكة أو عدم اتصالها. يُستخدم هذا البروتوكول في برامج فحص وتشخيص الشبكة مثل الأمر "ping" والأمر "traceroute". TCP يُحدَّد بروتوكول TCP‏ (Transmission Control Protocol) في طبقة النقل ضمن نموذج بروتوكول TCP/IP، ويستطيع تأمين اتصالاتٍ موثوقة. يعمل بروتوكول TCP على تغليف البيانات ضمن رزمٍ ونقلها عبر الطبقات الأدنى، ثمَّ التأكد من أنَّ البيانات قد استُلِمت دون أخطاءٍ عبر انتظار تقريرٍ من المستلم. يعتبر هذا البروتوكول هو الأشهر والأكثر استخدامًا في الإنترنت. UDP إنَّ بروتوكول UDP‏ (User Datagram Protocol) مشابه لبروتوكول TCP ويُحدَّد ضمن طبقة النقل أيضًا؛ الفرق بينهما هو أنَّ بروتوكول UDP يؤمِّن اتصالاتٍ غير موثوقة فلا يعمل على التأكد من تسليم البيانات دون أخطاءٍ إلى وجهتها لذا يتميز هذا البروتوكول بسرعة نقلٍ كبيرة. HTTP يُستخدم بروتوكول نقل النصوص الفائقة HTTP‏ (Hypertext Transfer Protocol) في طبقة التطبيقات وهو الأساس في عملية التواصل على الويب إذ يعمل على نقل وتبادل النصوص. يستخدم هذا البروتوكول رقم المنفذ 80. FTP يُحدَّد بروتوكول نقل الملفات FTP‏ (File Transfer Protocol) ضمن طبقة النقل، ويعمل على نقل الملفات من مضيف إلى آخر عبر الشبكة. هذا البروتوكول غير آمن لذا يستخدم في عملية تنزيل الملفات العامة فقط. يستخدم هذا البروتوكول رقم المنفذ 21. DNS يُستخدم بروتوكول DNS‏ (Domain Name System) في طبقة التطبيقات ويعمل على تحويل أسماء المضيفين إلى عناوين IP. فإذا أردت الاتصال بأحد المواقع فليس عليك تذكر عنوان IP له وما عليك سوى كتابة عنوان URL في متصفحك، مثل academy.hsoub.com، وسيبحث جهازك على خادم DNS في الشبكة ويطلب منه تحويل الاسم إلى عنوان IP، ثمَّ يستخدم العنوان الذي حصل عليه في عملية الاتصال. يستخدم هذا البروتوكول رقم المنفذ 53. SSH يُستخدم بروتوكول SSH‏ (Secure Shell) في طبقة التطبيقات، وهو بروتوكول مشفَّر وآمن يستطيع الاتصال بالخادم البعيد والتحكم به. يستخدم هذا البروتوكول رقم المنفذ 22. توجد الكثير من البروتوكولات لم تُشمل في هذا الدرس وهي مساوية في الأهمية للبروتوكولات السابقة، ولكنَّّ ذلك كافٍ لتتشكل لديك نظرة عامة حول التقنيات الأساسيَّة المستخدمة في الشبكات والإنترنت. الخلاصة بعد هذا الدرس، يُفترض أنَّك قد أحطت ببعض مصطلحات الشبكة الأساسيَّة، وتعرفت على آلية التواصل بين مختلف المكونات مع بعضها. سيساعدك هذا الدرس على فهم الدروس الأخرى المتعلقة بمجال الشبكات. يمكنك التوسع في هذا المجال بقراءة سلسلة دروسٍ حول شهادة CCNA من CISCO.