یکشنبه, ۲۳ اردیبهشت, ۱۴۰۳ / 12 May, 2024
مجله ویستا

آشنایی با automount و autofs


آشنایی با automount و autofs

automount و autofs ابزارهای قدرتمند و آسانی در مدیریت سیستم های فایل هستند ین دو ابزار به تمام کاربران یک ماشین اجازه می دهند تا سیستم فایل های متفاوتی که بیشتر مواقع به آنها نیاز پیدا می کنند را به طور اتوماتیک mount کنند

●خلاصه

automount و autofs ابزارهای قدرتمند و آسانی در مدیریت سیستم های فایل هستند. ین دو ابزار به تمام کاربران یک ماشین اجازه می‌دهند تا سیستم فایل های متفاوتی که بیشتر مواقع به آنها نیاز پیدا می کنند را به طور اتوماتیک mount کنند.

●مقدمه

فایل /etc/fstab ، mountpoint/ های سخت را در خود نگه می دارد. هر نقطه مطابق با یک مکان و یک سیستم فایل (به عنوان مثال یکی از پارتشن های هارد دیسک شما) است. بعدها اگر شما بخواهید به نقاط دیگر دسترسی داشته باشید تنها root می تواند از دستور mount استفاده کند (به جز مواردی که در فایل fstab گزینه user یا users استفاده شده باشد.) به عنوان root نیز باید mountpoint، آنچه که می‌خواهید mount کنید و شاید سیستم فایل و دیگر گزینه‌ها را مشخص کنید.

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

●توضیحات

دستورات autofs و automount مثل یک مدل client/server در شبکه عمل می کند. یک سرور در حال اجرا منتظر یک تقاضا می‌نشیند. وقتی تقاضایی دریافت کرد، سرور autoduplicate می‌کند (از خودش یک کپی می گیرد)، یک بخش به تقاضا پاسخ می‌دهد و بخشی دیگر منتظر تقاضای بعدی می‌ماند. در اینجا autofs نقش سرور را بازی می‌کند و automount یک duplicatedserver. تقاضاها نیز در یک فایل پیکربندی نگهداری می شوند.

●autofs

معمولا autofs در زمان boot اجرا می‌شود و هنگام shutdown (یا restart) بسته می‌شود. هر چند مدیر سیستم توانایی شروع یا بستن آنرا به صورت دستی دارد. Autofs می‌تواند چهار حالت داشته باشد:

۱) start: همانطور که از اسمش پیداست، پردازش را شروع می کند. هنگام شروع، autofs به دنبالmapها در فایل پیکربندی etc/auto.master می‌گردد. Mapها نقاط اتصال را مشخص می کنند. سپس automount را برای هر mountpoint راه اندازی می کند. سپس، autofs به دنبال mapهای NIS می گردد. (مباحث مربوط به NIS در این مقاله دنبال نمی‌شود.)

۲) stop: ابزار autofs و تمام automountها را قطع می کند.

۳)reload : نقشه‌های (map) فایل auto.master را بازخوانی می کند و automountهای حاضر را kill می کند و آنها را برای mountpointهای جدید راه می اندازد. نکته اینکه تغییرات ساخته شده در map ها در زمان راه‌اندازی بعدی در حساب اعمال می‌شود. به عبارت دیگر تغییرات در auto.master با restart کردن autofs اعمال می‌شود.

۴) status: پیکربندی حاضر و تمام automountهای در حال اجرا را نشان می دهد.

بطور خلاصه autofs چیزی جز یک اسکریپت مشاور auto.master، قبل از آغاز automountهای ارتباط داده شده به هر mountpoint نیست.

●Automount

Automount از یک mountpoint ابتدایی (یکی که به وسیله‌ی autofs برای شروع automount پیدا شده) و از یک map جدید که خصوصیات این mountpoint اولیه را تشریح می‌کند، شروع به کار می کند. Map ارتباط داده شده به automount تمام اطلاعات لازم برای mount کردن سیستم فایل را به صورت اتوماتیک نگه می‌دارد. این mount اتوماتیک به محض اینکه یک نفر تلاش کند تا به چیزی در درخت دایرکتوری که از این mountpoint شروع می شود، دسترسی پیدا کند، انجام می شود. در نهایت، بعد از طی شدن یک زمان غیرفعال( به طور پیش فرض ۵ دقیقه) به طور اتوماتیک unmount می‌شود.

●پیکربندی

عمل پیکر بندی توسط دو فایل انجام می شود. فایل auto.master که mountpointها را در خود نگه می‌دارد و یک فایل برای هر mountpoint که گزینه‌های سیستم را برای این mountpoint مخصوص نگه می دارد.

●فایل etc/auto.master/

اکنون map هایی که از فرمت sun استفاده می‌کنند را معرفی می کنیم. فرمت دیگر (hesiod) نمی‌تواند syntax تشریح شده در زیر را مدیریت کند. etc/auto.master فایل اصلی autofs است. هر خط یک mountpoint را تشریح می کند و به فایلی که حاوی تشریحات فایل سیستمی که باید از آن نقطه mount شود اشاره می کند. آخرین فیلد اجازه می‌دهد تا گزینه‌هایی را به دستور mount هنگام شروع ارسال کنید. Syntax هر خط به صورت زیر است:

mount_point map_for_the_associated_automount [mount_options_seperated_by_camma]

●مثال:

/

home /etc/auto.home

/misc /etc/auto.misc –timeout ۶۰

mnt yp:mnt.map –intro,nosuid,nodev