فایل سیستم جدید لینوکس که میتواند دادههای خراب را نجات دهد!

تا حالا شده وسط کار با کامپیوتر، فایلتون به شکل عجیبی خراب بشه و دیگه باز نشه؟ دنیای لینوکس قراره زیر و رو بشه! یه توسعهدهنده تازهکار یه فایل سیستم جدید به اسم BeamFS پیشنهاد داده که مدعیه میتونه دادههای خراب رو مثل آب خوردن اصلاح کنه و نذاره اطلاعاتت بپره. جالبتر اینکه کدهای این پروژه با کمک هوش مصنوعی نوشته شده و کلی سر و صدا به پا کرده.
این پیشنهاد جذاب که شامل ۱۸ پچ مختلفه، فرستاده شده روی ایمیللیست Kernel تا توسعهدهندهها روش نظر بدن. طراح این پروژه یعنی Aurelien Desbrieres صراحتاً اعلام کرده که برای نوشتن کدها، ابزارهای بررسی پچ و حتی نامه همراهش، از هوش مصنوعی Claude شرکت انتروپیک استفاده کرده. البته بر اساس قوانین خود لینوکس، مسئولیت نهایی تمام این کدها همچنان به گردن خود انسان توسعهدهنده است.
چطوری دادهها رو درست میکنه؟


فایل سیستمهای دیگهای که میتونن خرابیها رو درست کنن (مثل Btrfs یا ZFS)، معمولاً یه کپی پشتیبان از اطلاعات نگه میدارن تا اگه اصلیه خراب شد، از اون استفاده کنن. اما BeamFS کلک دیگهای تو چنته داره! این سیستم کدهای اصلاح خطای Reed-Solomon رو مستقیماً توی هر Block از دادهها ذخیره میکنه.
یعنی چی؟ یعنی هر بار که سیستم میخواد فایلی رو بخونه، اول اون کدها رو چک میکنه. اگه آسیب کوچکی توی دادهها باشه، همونجا و قبل از اینکه فایل به دست برنامهها برسه، اصلاحش میکنه! اگه هم خرابی اونقدر زیاد باشه که قابل نجات نباشه، سیستم به جای فرستادن اطلاعات غلط و خراب، خیلی شیک ارور میده تا بفهمی یه جای کار میلنگه.
ایده ساخت این فایل سیستم اول از کامپیوترهای ماهوارهای به ذهن خطور کرده؛ جایی که فقط یه دیسک سخت وجود داره و جا برای کپی دوم نیست. اتاقهای رادیوتراپی بیمارستانها هم همین وضعیت رو دارن. پرتوهای نوترونی دستگاههای درمان میتونن بیتهای کامپیوتر رو جابجا کنن و اطلاعات حیاتی بیماران رو به خطر بندازن. اینجا یه بایت غلط کلی خسارت به بار میاره، پس اینکه سیستم بفهمه داده خرابه خیلی بهتر از اینه که دادهی غلط رو به عنوان اطلاعات درست تحویل بده.
البته حواست باشه که BeamFS هنوز توی محیطهای واقعی و پرتوهای اشعه تست نشده! تستهای انجامشده تا الان فقط روی ماشینهای مجازی و فلشمموریها شبیهسازی شدن؛ اونم با دستکاری دستی بیتها.
تو گزارش فنی این پروژه، فایل سیستمهای قدیمیتر مثل ext4 و ext3 دادههای خراب رو بدون هیچ اخطاری به عنوان اطلاعات سالم تحویل دادن! فایل سیستم Btrfs کلاً از خوندن فایل سر باز زد، اما BeamFS به جز یک مورد، همیشه فایل درست رو تحویل داد.
آیا این پروژه به این زودیها وارد لینوکس میشه؟
اصلاً و ابدا! این فقط یه درخواست برای بازخورد یا همون RFC است. سازندهاش هنوز از کسی نخواسته کجها رو Merge کنه، بلکه فقط دو تا سوال مهم از نگهبانان پروژه پرسیده.
سوال اول اینه که آیا این باید یه فایل سیستم کاملاً جدا باشه یا باید به عنوان بخشی از یه سیستم موجود پیشنهاد بشه؟ سوال دوم درباره Journal هست؛ یعنی همون لاگی که بقیه فایل سیستمها برای برگردادن اطلاعات موقع کرش کردن سیستم استفاده میکنن. فایل سیستم BeamFS فعلاً این بخش رو نداره و بعد از خاموشی غیراستاندارد، به ابزار fsck خودش متکیه.
تا اینجای کار، تنها جوابی که توی ایمیللیست به این بحث داده شده، درباره ترتیب الفبای اسمش توی فایل MAINTAINERS بوده!
توکنها و کدهای این پروژه هنوز کاملاً امن نیستن و فایل README خودش صراحتاً هشدار میده که ممکنه باعث از دست رفتن دادهها، ایجاد حفرههای امنیتی یا کرش کردن کل سیستم بشه؛ پس فعلاً به هیچ وجه بهش اعتماد نکنید!


