مميزات FreeBSD 15 للخوادم ولماذا قد تفضله على لينكس
اكتشف لماذا يعتبر FreeBSD 15 خياراً متفوقاً لإدارة الخوادم بفضل نظام ZFS وتقنية Jails. تعرف على ميزة pkgbase الجديدة التي تتيح تحديث النظام الأساسي كحزم برمجية مستقلة.
ما هو FreeBSD 15 في فقرة واحدة
FreeBSD هو نظام تشغيل خادم متكامل، وليس مجرد نواة مع توزيعة مبنية فوقها. الأشخاص الذين يكتبون النواة هم أنفسهم من يكتبون أدوات المستخدم الأساسية، والوثائق، ويصدرون النسخة، حيث يطرحونها جميعاً كوحدة واحدة ذات إصدار محدد. FreeBSD 15 هو أحدث إصدار رئيسي من هذا النظام. إذا كنت قد استخدمت Linux فقط، فالفكرة الوحيدة التي يجب أن تستوعبها هي: في FreeBSD، النظام الأساسي هو مشروع واحد، والحزم التي تضيفها توضع بوضوح فوقه. هذا الخيار التصميمي يفسر معظم ما يعجب الناس في هذا النظام.
أنا أستخدم Linux في معظم أعمالي، وSSD Nodes هي مزود استضافة VPS لنظام Linux. ومع ذلك، يظل FreeBSD نظام تشغيل الخادم المفضل لدي للعمل عليه، وهذا المنشور يتناول الأسباب. ملاحظة صريحة: نحن لا نوفر خطط VPS لنظام FreeBSD لأن الطلب عليه محدود. فالأشخاص الذين يحبون FreeBSD عادة ما يشغلونه على أجهزتهم الخاصة بدلاً من استئجار خوادم، لذا يظل سوق الـVPS الخاص به صغيراً.
ما الجديد في FreeBSD 15
التغيير الرئيسي في FreeBSD 15.0، الذي صدر في ديسمبر 2025، هو pkgbase: أصبح النظام الأساسي نفسه يُثبَّت ويُحدَّث كـ pkg حزم. يوفر المثبّت هذا الخيار، كما تستخدم صور VM والصور السحابية الرسمية، وهي ما تحصل عليه في أي VPS، نظام pkgbase افتراضياً. لا تزال أداة freebsd-update القديمة تعمل في فرع 15، لكنها ومجموعات التوزيع التي تعتمد عليها مُدرجة ضمن قائمة الإزالة في FreeBSD 16، لذا فإن pkgbase هو المسار المعتمد للمستقبل، وليس مجرد تجربة.
النظام الأساسي مقابل نموذج توزيعات Linux
إذا كان هناك فرق واحد يفسر ماهية FreeBSD، فهو هذا الفرق، ومعظم الفروقات الأخرى تنبع منه. في خادم Linux، أنت تشغّل توزيعة. يأتي النواة (kernel) من مشروع، ومكتبة C من مشروع آخر، والأوامر الأساسية من مشروع ثالث، ثم يقوم مسؤولو التوزيعة بتجميع هذه الأجزاء واختيار إصدارات متوافقة. يتطلب هذا تنسيقاً كبيراً، وهو يعمل بالفعل، لكن الفواصل بين المكونات حقيقية: فقد يؤدي التحديث إلى نقل بعض الأجزاء دون غيرها.
ترسم FreeBSD الخط الفاصل في مكان مختلف. فالنواة، والأوامر القياسية، ومكتبة C، وجدار الحماية، ومحمل الإقلاع (boot loader) كلها تأتي من شجرة مصدر واحدة برقم إصدار واحد. أنت ترقّي النظام الأساسي كوحدة واحدة: باستخدام freebsd-update في التثبيتات القديمة، أو باستخدام pkg نفسه في تثبيتات pkgbase التي تستخدمها صور السحابة في FreeBSD 15 افتراضياً. أما كل شيء آخر، مثل خادم الويب، وقاعدة البيانات، وبيئات تشغيل اللغات، فيأتي من حزم pkg التي توضع فوق النظام الأساسي بدلاً من دمجها فيه. حتى مع pkgbase، حيث تقوم أداة واحدة الآن بتحديث الطبقتين، يظل "نظام التشغيل" و"البرامج التي ثبّتها" طبقتين متميزتين يمكنك التعامل مع كل منهما على حدة.
نظام ZFS كمكوّن أساسي
يُعد ZFS نظام الملفات الذي يجذب معظم المستخدمين إلى FreeBSD، وفي إصدار FreeBSD 15 أصبح جزءاً أساسياً من النظام بدلاً من كونه إضافة خارجية. يدمج ZFS بين نظام الملفات ومدير وحدات التخزين في كيان واحد، مما يمنحك بيانات ذات مجموع اختباري (checksum) تكتشف التلف الصامت للبيانات بدلاً من الوثوق المطلق بالقرص، بالإضافة إلى لقطات (snapshots) فورية، واستنساخ منخفض التكلفة، وzfs send وzfs receive لنقل نظام الملفات إلى جهاز آخر بايت مقابل بايت.
بالنسبة للخادم، هذا الأمر مهم بشكل ملموس. يمكنك أخذ لقطة لمجموعة بيانات (dataset) قبل إجراء ترقية:
zfs snapshot zroot/ROOT/default@before-upgradeوإذا فشلت الترقية، يمكنك العودة مباشرة إلى تلك الحالة بدقة. يفهم مُحمّل الإقلاع في FreeBSD بيئات إقلاع ZFS، لذا يمكنك إعادة نظام التشغيل بالكامل إلى لقطة أُخذت قبل إجراء أي تعديلات. يعمل ZFS أيضاً على Linux عبر OpenZFS، ويعمل بشكل جيد. الفرق هو أنه في FreeBSD، تم دمج ZFS في برنامج التثبيت، ومُحمّل الإقلاع، وأدوات التحديث منذ البداية.
Jails: الحاويات قبل أن تصبح شائعة
الـ Jail هي بيئة معزولة وخفيفة الوزن تشترك في نواة المضيف ولكنها تمتلك نظام ملفات ومستخدمين وشبكة وعرض عمليات خاصاً بها. إذا كان هذا الوصف يبدو مألوفاً كحاوية، فهو كذلك بالفعل، حيث سبقت الـ Jails تقنية Docker بعقد من الزمن تقريباً. وتستمر FreeBSD 15 في تطويرها وتحسينها.
النموذج الذهني لها أبسط من مكدس الحاويات الكامل. الـ Jail عبارة عن شجرة أدلة بالإضافة إلى إعدادات بسيطة، وتقوم بتشغيل بيئة مستخدم FreeBSD حقيقية مقابل نواة المضيف. لا تحتاج إلى سجل صور (image registry) أو خادم خلفي (daemon) للحصول على العزل. بالنسبة لخادم يستضيف عدة خدمات منفصلة، تمنحك الـ Jails فصلاً قوياً مع حد أدنى من العبء التشغيلي، وتجعل أدوات مثل bastille إدارتها أمراً سهلاً. هذا هو نفس المنطق الكامن وراء تشغيل كل خدمة في حاوية Docker خاصة بها، ولكن تم الوصول إليه من اتجاه مختلف. إذا كنت تختار بينهما لخدمة معينة، فإن الفرق الجوهري بين الـ Jails وحاويات Docker يكمن في كيفية إدخال البرمجيات، ومكان تخزين الحالة، وكيفية ربط الشبكات.
pf، جدار الحماية الذي ستستمتع بكتابة قواعده
يُحظى مرشح الحزم في FreeBSD، والمعروف بـ pf، بشعبية واسعة لسبب واحد: صياغة قواعده تُقرأ كجمل عادية. مجموعة القواعد هي ملف يمكنك قراءته من الأعلى إلى الأسفل وفهمه فعلياً. مقارنة بكتابة قواعد iptables/nftables يدوياً على Linux، يبدو pf وكأنه صُمم ليتمكن البشر من صيانته. إذا كنت قد عانيت سابقاً مع جدار من أسطر iptables، فإن pf سيمنحك شعوراً بالراحة.
أين يتناسب FreeBSD وأين لا يتناسب
يُعد FreeBSD خياراً قوياً لخوادم التخزين بفضل نظام الملفات ZFS، ولجدران الحماية والموجهات بفضل pf، ولأي خادم تهمّ فيه القاعدة البرمجية المستقرة والمتماسكة والترقيات النظيفة أكثر من ملاحقة أحدث ميزات النواة. توثيقه، المسمى FreeBSD Handbook، هو أحد أفضل الأدلة في عالم المصادر المفتوحة، وقراءته هي أسرع وسيلة لتعلم النظام.
إنه ليس الخيار المناسب لكل شيء. نظام الحاويات فيه أصغر ويركز على Linux، لذا إذا كان سير عملك بالكامل يعتمد على صور Docker وKubernetes، فستواجه صعوبات في التوافق. بعض التعريفات الاحتكارية وأدوات الموردين مخصصة لـ Linux فقط. كما أن معظم دروس الاستضافة الذاتية، بما في ذلك العديد منها على هذا الموقع، تفترض استخدام توزيعة Linux. للحصول على صورة واسعة لما يمكن تشغيله على خادم منزلي أو خادم لمشروع جانبي، كُتبت نظرة عامة على الاستضافة الذاتية لـ Linux ولكن الأفكار قابلة للتطبيق عبر الأنظمة. للحصول على مقارنة مباشرة بين الميزات، اقرأ Linux مقابل FreeBSD للخوادم.
للحصول على مقارنة مختلفة، توازن Linux مقابل Windows Server بين منصة الخوادم الكبيرة الأخرى وLinux.
FAQ
هل يُعد FreeBSD 15 خياراً جيداً للخادم؟
نعم، للمهام المناسبة. يُعد FreeBSD 15 نظام تشغيل خادم مستقراً ومتماسكاً، حيث يتضمن ZFS وjails وpf ضمن النظام الأساسي، بالإضافة إلى توثيق من الدرجة الأولى، وترقيات نظيفة ومنظمة كوحدة واحدة. هو قوي بشكل خاص لمهام التخزين، وجدران الحماية، والخدمات طويلة الأمد التي تُقدّر فيها القدرة على التنبؤ أكثر من الحصول على أحدث ميزات النواة. وهو خيار أقل ملاءمة إذا كان سير عملك مبنياً حول منظومة الحاويات (containers) المخصصة لنظام Linux.
ما الفرق بين نظام FreeBSD الأساسي وLinux؟
في Linux، تأتي النواة ومساحة المستخدم من مشاريع منفصلة تجمعها التوزيعة. أما في FreeBSD، فإن النواة والأوامر الأساسية ومكتبة C وجدار الحماية ومحمل الإقلاع تأتي من شجرة مصدر واحدة بإصدار واحد، وتُرقّى كوحدة واحدة عبر freebsd-update، أو في تثبيتات pkgbase عبر pkg، بينما يظل كل ما تثبته لاحقاً طبقة منفصلة من الحزم فوق النظام. هذا الفصل بين النظام الأساسي والحزم هو الفرق الهيكلي الجوهري.
هل يمكنني تشغيل FreeBSD على خادم افتراضي خاص (VPS)؟
يمكنك تشغيل FreeBSD على خادم افتراضي خاص من المضيفين الذين يوفرونه، رغم أن الخيارات المتاحة أقل مقارنة بـ Linux. لا توفر SSD Nodes خططاً لـ FreeBSD لأن الطلب عليه محدود؛ فالمستخدمون الذين يشغلون FreeBSD يميلون إلى استخدام أجهزتهم الخاصة بدلاً من الخوادم الافتراضية. العديد من خوادم FreeBSD هي أجهزة فيزيائية يتحكم فيها المالك مباشرة.
هل أحتاج إلى معرفة Linux قبل تجربة FreeBSD؟
لا، ولكن المعرفة المسبقة تساعدك. ستبدو الصدفة (shell) وSSH ومعظم الأوامر اليومية مألوفة إذا كنت قد استخدمت Linux من قبل. الأشياء الرئيسية التي تحتاج لتعلمها من جديد هي الفصل بين النظام الأساسي والحزم، وpkg للبرمجيات (وفي تثبيتات FreeBSD 15 pkgbase، للنظام الأساسي أيضاً، مع التوجه لإيقاف freebsd-update)، وpf لجدار الحماية. يرشدك دليل FreeBSD (FreeBSD Handbook) خلال كل ذلك.