فایل‌سیستم


فایل‌سیستم چیست؟

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

فایل‌سیستم لیارا

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

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

دایرکتوری tmp/

با وجود ReadOnly بودن فایل سیستم برنامه‌های لیارا، دایرکتوری tmp/ از این قاعده مستثنی است. می‌توانید از این دایرکتوری که در همه پلن‌ها ارائه شده است و فضایی برابر 100 مگابایت دارد، برای ذخیره سازی لاگ‌ها، فایل‌های آپلودی موقتی و غیره استفاده کنید. در نظر داشته باشید که خود برنامه و ماژول‌های مختلف درون آن، فایل‌های موقتی خود را درون این دایرکتوری، ذخیره خواهند کرد.

برای افزایش فضای این دایرکتوری، شما می‌توانید طبق مستندات ساخت دیسک، یک دیسک با فضای دلخواه ایجاد کنید؛ سپس، طبق مستندات تعریف مسیر برای یک دیسک، دیسک خود را به مسیر tmp/ متصل کنید.

استفاده از دیسک‌ها

اگر که دایرکتوری tmp/ پاسخ‌گوی نیاز شما نبود، چاره کار استفاده از دیسک‌ها در برنامه‌تان می‌باشد. به طور مثال قصد ذخیره فایل‌های کاربران را دارید و نمی‌خواهید به هیچ وجه این فایل‌ها را حذف کنید. در این شرایط به قسمت دیسک‌ها در برنامه‌تان مراجعه کنید و اقدام به ایجاد دیسک کنید.

همچنین بخوانید: آشنایی با دیسک‌ها

writable کردن فایل‌سیستم لیارا

همانطور که قبل‌تر گفته شد، فایل‌سیستم لیارا به صورت پیش‌فرض، بر روی ReadOnly تنظیم شده است. اما شما می‌توانید به راحتی یک کلیک، فایل‌سیستم را از ReadOnly به writable تغییر دهید.

برای این کار، کافیست وارد قسمت تنظیمات برنامه خود شوید و سپس گزینه فایل‌سیستم Read Only را غیر فعال کنید:

make an app writable

پس از انجام این‌کار، شما قادر خواهید بود تا تغییرات جدیدی را بر روی پروژه، اعمال کنید. البته توجه داشته باشید که این تغییرات صرفاً موقتی هستند و پس از متوقف شدن برنامه، به هر دلیلی (از جمله ری‌استارت شدن، استقرار مجدد و یا خاموش شدن) ممکن است از بین بروند. و شما تا زمانی می‌توانید از این تغییرات استفاده کنید که برنامه‌تان روشن و در حال اجرا، باشد.

حداکثر فضای write در فایل سیستم writable

پس از این‌که فایل‌سیستم لیارا را از حالت ReadOnly به Writable تغییر می‌دهید؛ به میزان 0.5 درصد کل فضای دیسک پلن انتخابی‌تان، فضا برای نوشتن به شما تعلق می‌گیرد؛ و شما می‌توانید تا سقف مقدار تعیین شده، داده جدید به برنامه خود در حالت Writable اضافه کنید. هرچند که این تغییرات موقتی هستند و دائمی نیستند.

توجه داشته باشید که این فضای تخصیص داده‌شده، جدا از فضای گرفته‌شده سورس کد و دیسک (یا دیسک‌های) شما است

فایل‌سیستم پلتفرم‌های Docker و NextJS

بر خلاف پلتفرم‌های دیگر در لیارا، که به صورت پیش‌فرض، فایل‌سیستم ReadOnly دارند؛ فایل‌سیستم پلتفرم‌های Docker و NextJS به صورت پیش‌فرض writable است و شما می‌توانید تغییرات موقتی را بدون انجام کار اضافی دیگری، در پروژه خود، اعمال کنید.