سیستم فایل ZFS یکی از سیستم فایل‌های محبوب در لینوکس است که برای استفاده از آن می‌بایست ابتدا ملزومات آن را نصب کنید. در واقع اگر امنیت و سلامت فایل‌ها و داده‌ها بسیار مهم باشد و به خصوص در امور سازمانی و سرور، استفاده از ZFS‌ بسیار مفید خواهد بود. اما به صورت پیش‌فرض در توزیعات مختلف Linux‌ قابلیت استفاده از ZFS وجود ندارد.

در ادامه به روش نصب و استفاده از سیستم فایلی به اسم ZFS در لینوکس می‌پردازیم. با ما باشید.

سیستم فایل ZFS از نظر روش نصب کردن کمی با دیگر اقسام سیستم فایل متفاوت است و بسته به اینکه از چه روشی اقدام می‌کنید، به اطلاعات بیشتری نیاز دارید. البته برای هر کاربری خاصی نباید از ZFS استفاده کرد.

اگر تاکنون از ZFS استفاده نکرده‌اید یا چیزی در مورد آن نشنیده‌اید، بهتر است از مسیر لینوکس اوبونتو برای آشنایی بیشتر با آن اقدام کنید. در Ubuntu 16.04، کنونیکال استفاده از ZFS را بسیار ساده کرده بود و نصب کردن آن بسیار ساده انجام می‌شد. به خصوص ساخت سیستم فایل ZFS به خوبی در این نسخه‌ی از لینوکس اوبونتو صورت می‌گیرد و قابل‌اعتماد است در حالی که در توزیعات دیگر، احتمال خرابی سیستم فایل ZFS وجود دارد.

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

نصب و راه‌اندازی ZFS

همان‌طور که اشاره کردیم این سیستم فایل به ویژه در سیستم‌هایی با چند حافظه‌ی ذخیره‌سازی عملکرد عالی دارد. ایجاد کردن سیستم فایل ZFS به سادگی استفاده از ابزار پارتیشن‌بندی Gparted نیست بلکه به مراتب پیچیده‌تر است و در عین حال به همان میزان، مفیدتر است.

برای پارتیشن‌بندی با این سیستم فایل، می‌بایست در ترمینال لینوکس از دستور lsblk استفاده کنید تا لیست کامل درایوها نمایان شود.

با بررسی لیست درایوها، هارددرایوی که می‌خواهید برای آرایه‌ی هارددیسک‌ها یا Z-pool استفاده کنید را پیدا کنید و نام آن را به خاطر بسپارید. در این مقاله، نام سه درایوی که برای سیستم فایل ZFS و موازی‌سازی هاردها استفاده می‌شود، /dev/sdb و /dev/sdc و /dev/sdd است.

قدم بعدی این است که تمام درایوها را با نوشتن عدد ۰ در خانه‌های حافظه، پاکسازی کنید. به این ترتیب تمام داده‌ها از بین می‌رود. برای این کار از دستور dd استفاده کنید و در مورد تمام درایوهای موردنظر، این دستور را اجرا کنید. فرآیند صفر کردن نسبتاً طولانی خواهد بود چرا که قرار است تمام فضای هارددیسک انتخاب‌شده، با داده‌ی جدید بازنویسی شود.

بنابراین در دستور زیر به جای حرف X در عبارت /dev/sdX، از شناسه‌ی درایو استفاده کنید و در مورد مثال ما سه مرتبه از حروف c و d و b استفاده می‌شود تا سه درایو موردبحث پاکسازی کامل شود.

پس از تکمیل فرآیند صفر کردن بلوک‌های حافظه با دستور dd، دستور fdisk را اجرا کنید. با اجرای این دستور، اطلاعات کاملی در مورد درایوها نمایش داده می‌شود. به عنوان مثال سیستم فایل هر هارددیسک از جمله اطلاعات کامل است. دقت کنید که هیچ یک از درایوهای موردنظر که پاکسازی کرده‌اید، سیستم فایل نداشته باشد. این مرحله بسیار مهم است چرا که ZFS از ساختار سنتی پارتیشن‌ها استفاده و پشتیبانی نمی‌کند.

اگر وضعیت مطلوب بود، می‌توانید ایجاد مجموعه هارددرایوهایی با سیستم فایل ZFS را آغاز کنید.

برای ستاپ ساده‌ی Z-pool از دستور زیر استفاده کنید و به جای نام سه درایوی که در مثال ما آی‌دی b و c و d دارند، نام درایوهای موردنظر خودتان را قرار بدهید:

ستاپ پایه‌ای Z-pool برای کاربران معمولی کافی و عالی است و نیازی به پیکربندی پیشرفته‌تری ندارد اما اگر اطلاعات ارزشمندی قرار است ذخیره و محافظت شود، منطقی است که آرایه‌ی هارددیسک‌های موازی را با ابزار RaidZ بسازید. اگر از RaidZ به همراه ZFS Pool استفاده کنید، امنیت داده‌ها بیشتر خواهد شد و بکاپ‌های متعددی از یک فایل در موقعیت‌های مختلف آرایه ایجاد می‌شود. برای این کار می‌توانید از دستور زیر استفاده کنید و دقت کنید که نام سه درایو فرضی ما را تغییر بدهید:

برای افزودن فایل‌ها به آرایه‌ی هارددیسک‌های ZFS، اپلیکیشن فایل منیجر لینوکس را اجرا کنید و سراغ فولدر روت بروید. فایل‌ها را در فولدری که ZFS Zpool نامیده‌اید، قرار دهید.

اضافه کردن دیسک‌ها به ZFS Zpool

همان‌طور که اشاره کردیم فولدر ZFS Zpool فولدری برای نگهداری فایل‌های مهم و حیاتی است که در چند هارددیسک مختلف کپی می‌شوند. ممکن است پس از مدتی، فضای دیسک پر شود و به فضای بیشتری نیاز پیدا کنید. با توجه به اینکه سیستم فایل ZFS از مفهومی به اسم پارتیشن‌ها پشتیبانی نمی‌کند، اضافه کردن حافظه‌ی بیشتر به آن، بسیار ساده است!

در مثالی که بررسی می‌کنیم، هدف افزودن دو درایو جدید به Zpool است که نامشان /dev/sde و /dev/sdf است. برای این کار از دستور زیر استفاده کنید و البته اگر RaidZ را در ستاپ ZFS استفاده نکرده‌اید، عبارت RaidZ را از دستور زیر حذف کنید:

دیلیت کردن ZFS Pool

گاهی اوقات یکی از Volume های ZFS خراب و غیرقابل‌استفاده می‌شود. اگر چنین اتفاق بدی افتاده، می‌بایست آرایه‌ی ZFS را دیلیت کنید. برای این کار از دستور zfs destroy استفاده می‌شود:

اجرای فرآیند دیلیت کردن آرایه‌ی ZFS مدتی طول می‌کشد که به حجم اطلاعات بستگی دارد. صبر کنید تا این فرآیند تکمیل شود و ترمینال لینوکس مجدداً آماده‌ی دریافت دستور شود.

چک کردن وضعیت ZFS

یک روش ساده و سریع برای چک کردن وضعیت سیستم فایل و آرایه ZFS این است که از دستور zpool status در ترمینال لینوکس استفاده کنید.

با اجرای این دستور، هارددیسک‌ها بررسی می‌شود و در صورت وجود Error یا خطا، مطلع می‌شوید.