محمد نصیری
بنیانگذار انجمن تخصصی فناوری اطلاعات ایران ، هکر کلاه خاکستری ، کارشناس امنیت اطلاعات و ارتباطات

Superblock چیست؟ به زبان ساده

چند وقت پیش یکی از هارد دیسک ها یا بهتر بگوییم یکی از پارتیشن های سیستم عامل لینوکسی که در هاستینگ استفاده می کردیم دچار اختلال شد و دیگر امکان mount کردن و استفاده از محتویات آن برای ما وجود نداشت .

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران
سرفصل های این مطلب
  1. Metadata چیست ؟
  2. superblock چیست ؟

با بررسی ها و تحقیق هایی که انجام دادیم در نهایت توانستیم با ابزارهای خود سیستم عامل لینوکس مشکل مورد نظر را برطرف کنیم و اینجا بود که به واژه جالبی به نام superblock برخوردیم که امروز در ITPRO در این خصوص برای شما توضیحاتی ارائه می کنیم.

اما قبل از اینکه یکراست به سراغ تعریف کردن superblock برویم بهتر است کمی درک ابتدایی راجع به مواردی که در فایل سیستم شما وجود دارد اشاره کنیم.

Metadata چیست ؟

در ابتدا باید مفهوم metadata را بدانید. با توجه به تعاریف ساده ای که در اینترنت وجود دارد در واقع metadata یک data برای سایر data ها است. یعنی اگر شما یک نامه حاوی اطلاعات داشته باشید ، metadata ی شما در واقع ادرس پستی و مواردی است که بر روی پاکت نامه قرار دارند خواهد بود.

Metadata در ساختار پارتیشن ها و دیسک ها حاوی اطلاعاتی در خصوص داده ها می باشد. برای مثال و درک بهتر اگر شما یک ماشین خریده باشید یک سری اطلاعات با کاتالوگ ماشین در اختیار شما قرار می گیرد که بهتر بتوانید از ماشین استفاده کنید که این اطلاعات با خود ماشین همراه نیستند .

اطلاعاتی از قبیل شماره ثبت ماشین ، مدل ، سال تولید ، اطلاعات بیمه و ... از جمله metadata ای هستند که برای یک ماشین سواری به شما می توان ارائه داد. به تمام اینها metadata گفته می شود.

در مفاهیم سیستم عامل لینوکس و یونیکس metadata در لایه های مختلف سیستم عامل وجود دارد از جمله پارتیشن ها و فایل سیستم ها که یکی از این مفاهیم که دارای metadata است به عنوان superblock شناخته می شود.

SuperBlock چیست

superblock چیست ؟

در واقع superblock یک نوع metadata ی بسیار مهم برای فایل سیستم است که اطلاعاتی از قبیل نوع فایل سیستم ، اندازه ، وضعیت ، اطلاعات در خصوص سایر metadata های موجود ، ویژگی های فایل سیستم ، اندازه بلاک های فایل سیستم ، فضاهای خالی ، فضاهای پر شده ، محل قرارگیری جدول inode ها ، اطلاعات استفاده از دیسک و ... را در خودش نگه می دارد.

تصور کنید که superblock شما از سیستم حذف شود !! چه اتفاقی می افتد ! در واقع سیستم دچار خلا ندانستن می شود و اطلاعاتی در خصوص محل داده های خودش نخواهد داشت ، با اینکه داده ها در سر جای خودشان قرار دارند. Superblock بسیار برای سیستم حیاتی است و به همین دلیل در فایل سیستم های قدرتمند این block بصورت خودکار در محل های مختلف دیسک یا پارتیشن شما بصورت خودکار backup گیری می شوند.

Superblock به عنوان یک metadata ی سطح بالا در ساختار فایل سیستم شناخته می شود. برای مثال اگر superblock پارتیشن var// سیستم دچار اختلال بشود ، دیگر شما نمی توانید از این پارتیشن در حالت عادی بصورت mount شده استفاده کنید .

در چنین مواردی است که تجربه ITPRO ی که در ابتدای مقاله گفتیم به شما کمک می کند و با استفاده از دستور fsck شما می توانید از superblock های backup گیری شده ای که در سطح فایل سیستم قرار دارند برای بازگردانی superblock ای که primary است استفاده کنید و مشکل را برطرف کنید.

کپی های backup ای که از superblock ها گرفته می شود در تقریبا سراسر فایل سیستم پخش می شوند اما اولین offset از این داده ها در ابتدایی ترین block پارتیشن شما ذخیره می شود و به همین دلیل این قسمت را primary superblock می نامند. در فرآیند ریکاوری فایل سیستم با استفاده از fsck شما می توانید اطلاعات مربوط به superblock ها را با استفاده از دستور زیر مشاهده کنید :

dumpe2fs /dev/itpro | grep –i

بعد از اینکه با دستور بالا توانستید superblock ها را مشاهده کنید می توانید با استفاده از دستور زیر ساختار superblock را تعمیر کنید ، فرض کنیم که آدرس superblock سالم ما برای ریکاوری عدد 163840 است بنابراین دستور ریکاوری به شکل زیر خواهد شد. توجه کنید که همیشه هم بدست آوردن superblock ها به این سادگی نیست و بعضا نیاز هست که فرمت کردن پارتیشن را شبیه سازی کنیم تا متوجه شویم که superblock ها در کجا قرار دارند :

/sbin/fsck.ext3 -b 163840 -B 1024 //dev/itpro

امیدوارم کمی مفهوم superblock برای شما جا افتاده باشد ، بحث در این خصوص زیاد است و فقط در این حد که متوجه شوید این مفهوم چقدر می تواند در بازسازی یک فایل سیستم به شما کمک کند کافیست ، برخی فایل سیستم ها فاقد superblock می باشند ، برای مثال فایل سیستم msdos ای که در لینوکس و ویندوز مشترک است هیچ superblock ای ندارد که مشکل را بتواند حل کند. Itpro باشید و اینجا را به همه معرفی کنید.


محمد نصیری
محمد نصیری

بنیانگذار انجمن تخصصی فناوری اطلاعات ایران ، هکر کلاه خاکستری ، کارشناس امنیت اطلاعات و ارتباطات

محمد نصیری هستم ، هکر قانونمند و کارشناس امنیت سایبری ، سابقه همکاری با بیش از 50 سازمان دولتی ، خصوصی ، نظامی و انتظامی در قالب مشاور ، مدرس و مدیر پروژه ، مدرس دوره های تخصص شبکه ، امنیت ، هک و نفوذ ، در حال حاضر در ایران دیگه رسما فعالیتی غیر از مشاوره انجام نمیدم و مقیم کشور ترکیه هستم ، عاشق آموزش و تدریس هستم و به همین دلیل دوره های آموزشی که ضبط می کنم در دنیا بی نظیر هستند.

نظرات