همونطور که میدونید توی ویندوز وقتی سیستم بوت میشه، بهصورت خودکار تمام پارتیشنها (فایل سیستم یا بهقول ویندوزیا درایو) با فرمت NTFS رو مانت میکنه و بلافاصله بعد از ورود به سیستم میتونیم به فایلهای این پارتیشنها دسترسی داشته باشیم.
اما توی لینوکس داستان یه مقدار فرق داره؛ فقط پارتیشنهای سیستمی مثل پارتیشن روت و home موقع بوت سیستم مانت میشن و پارتیشنهای دیگه رو باید بهصورت دستی (چه از داخل فایل منیجر و چه از طریق ترمینال) مانت کنیم. اگه یه پارتیشنی رو فقط بعضی وقتا لازم داریم، واسمون سخت نیست که بهصورت دستی مانتشون کنیم ولی اگه یه پارتیشنی رو همیشه لازم داریم خب خیلی ناجوره که هر بار سیستم رو روشن میکنیم بریم و اون پارتیشن(ها) رو مانت کنیم.
حالا چی کار کنیم که یه پارتیشن یا چندتا پارتیشن مثل ویندوز موقع بوت مانت بشه و نیازی نباشه که خودمون مانتش کنیم؟ نیازی به گفتن نیست که توی لینوکس راه زیاده :) اما من ترجیح میدم از ترمینال واسه انجام این کار استفاده کنم.
مرحله اول: بهدست آوردن نام، UUID و نوع فایل سیستم
خب خب، حرفزدن دیگه بسه! ترمینال رو باز کنید و این دستور رو تایپ کنید و اینتر رو بزنید:
sudo blkid
خروجی دستور بالا یه چیزی مثل اینه:
/dev/sda1: UUID="00c7a6ae-7d0d-43a2-854e-1094115a8e4c" TYPE="swap" PARTUUID="c43452d5-01"
/dev/sda2: LABEL="Windows" UUID="A0CC46FECC46CE6A" TYPE="ntfs" PARTUUID="c43452d5-02"
/dev/sda3: UUID="167C28587C283541" TYPE="ntfs" PARTUUID="c43452d5-03"
/dev/sda5: LABEL="Bodhi" UUID="ef1f4ffa-b132-4c62-8353-af65fd9c4056" TYPE="ext4" PARTUUID="c43452d5-05"
/dev/sda6: LABEL="Files" UUID="610840960E44E6E1" TYPE="ntfs" PTTYPE="dos" PARTUUID="c43452d5-06"
/dev/sda7: LABEL="Manjaro" UUID="cd1eb5ef-014c-4add-af0b-d1f283cc1205" TYPE="ext4" PARTUUID="c43452d5-07"
توی خروجی بالا، هر خط مربوط به یه پارتیشنه. ابتدا نام اون پارتیشن اومده:
/dev/sda6
. بعد برچسب اون پارتیشن رو میبینید (البته اگه واسش برچسبی تنظیم کرده باشید):
LABEL="Files"
در ادامه UUID اون پارتیشن درج شده:
UUID="610840960E44E6E1"
قسمت بعدی هم نوع فایل سیستمه:
TYPE="dos"
خب حالا پارتیشنی که میخواهید رو پیدا کنید (از روی نامش و یا Label) و این چهار قسمت رو داشته باشین که لازمشون داریم.
مرحله دوم: ساختن یه نقطه مانت برای پارتیشن
تا حالا به مسیر یه پارتیشن مانتشده دقت کردین؟ مثلا پارتیشن Files رو که مانت میکنم این مسیرش واسم اینه:
/media/Alireza/Files
در واقع پارتیشن Files روی این مسیر سوار شده و نرمافزارها از طریق این مسیر به فایلهای پارتیشن Files دسترسی دارن. حالا ما میخوایم این پارتیشن موقع بوت سیستم بهصورت خودکار مانت شه، پس باید بهش بگیم کجا سوار بشه تا وقتی سیستم بوت شد بتونیم بهش دسترسی داشته باشیم. این مسیر کاملا دلخواهه و لازم نیست حتما توی پوشه media باشه. البته مسیرهای معمول، پوشههای media و mnt هستن. خیلی ساده یه پوشه توی پوشه mnt میسازم واسه سوار کردن پارتیشن:
sudo mkdir /mnt/[YOUR_PREFERRED_NAME]
مثال:
sudo mkdir /mnt/files
نام پوشه هم کاملا اختیاریه و لازم نیست حتما نام پارتیشن یا برچسبش باشه.
مرحلهٔ سوم: ویرایش فایل fstab
رسیدیم به حساسترین مرحله! باید فایل fstab که در مسیر /etc/fstab قرار داره رو ویرایش کنیم. کافیه این فایل رو با یه ادیتور با دسترسی روت باز کنیم:
sudo nano /etc/fstab
حواستون باشه که چیزی رو دستکاری نکنید که به قول معروف اومدین ابرو بکارین، چشمش رو هم کور کردین 🙂 تنها کاری که باید انجام بدیم اینه که این خط رو بهازای هر پارتیشن به انتهای فایل اضافه کنیم:
UUID=[FS_UUID] [MOUNT_POINT] [FS_TYPE] [MOUNT_OPTION] [DUMP] [PASS]
صبر کنید! هنوز زوده که این خط رو به فایل اضافه کنیم. اول باید اطلاعاتی که داخل <> قرار دارن رو با اطلاعات پارتیشنمون جایگزین کنیم. یه نکته دیگه اینکه این آیتمها باید با استفاده از دکمه Tab روی صفحهکلید از هم جدا بشن.
بهدست آوردن UUID پارتیشن
اولین آیتم، UUID پارتیشنتون هست و باید با UUID پارتیشنتون رو که توی مرحله اول بهدست آوردین جایگزین بشه:
UUID="610840960E44E6E1"
نقطهٔ مانت
دومین آیتم (MOUNT_POINT) نقطه مانت پارتیشنتون هست و باید با نقطه مانتی که توی مرحله دوم ساختید جایگزین بشه:
/mnt/files
نوع پارتیشن
سومین آیتم (FS_TYPE) نوع پارتیشنتون هست. مثلا نوع پارتیشن من dos هست.
گزینههای مانت
چهارمین آیتم (MOUNT_OPTION) هست. ما میخوایم که پارتیشنمون هم قابل خوندن باشه و هم قابل نوشتن. واسه اینکار کافیه از کلیدواژه defaults استفاده کنیم. کلیدواژههای بیشتری هم هست که چون مورد بحث ما نیست، بهتره از دوست عزیزمون گوگل کمک بگیرید 🙂
بقیه موارد 🙂
پنجمین آیتم (DUMP) هم نمیدونم چیه ولی خب اونجور که فهمیدم مقدارش معمولا صفره 🙂
آخرین آیتم (PASS) رو هم fsck برای مشخصکردن ترتیب انجام بررسی سیستم فایل موقع ریبوت استفاده میشه.
یه نگاهی به خطهای دیگه فایل fstab بندازید، اون پارتیشنی که مانت پوینتش / هست، پارتیشن روته و مقدار PASS هم برابر ۱ هست. حالا به پارتیشنی که نوعش swap هست دقت کنید؛ مقدار PASS این پارتیشن برابر صفره. حالا این صفر به fsck میگه داداش این پارتیشن رو ول کن 🙂 این از پارتیشن روت و سواپ، اما واسه همه پارتیشنهای دیگه از عدد ۲ استفاده میکنیم.
جایگزینکردن اطلاعات مورد نیاز و ذخیرهکردن فایل
خب من اطلاعات پارتیشنم رو جایگزین کردم و شده این:
UUID=610840960E44E6E1 /mnt/files dos defaults 0 2
اطلاعات پارتیشنتون رو جایگزین کردین؟ حالا وقتشه که فایل رو ذخیره کنید. اگه از nano استفاده میکنید، ابتدا کلیدهای Ctrl+O رو بزنید تا فایل ذخیره بشه و بعد هم کلیدهای Ctrl+X رو بزنید تا از nano خارج بشید.
آزمایش مانت پارتیشنها پیشاز ریستارت
ما فایل رو ذخیره کردیم اما تا زمانی که یهبار ریستارت نکنیم پارتیشنها بهصورت خودکار مانت نمیشن. اگه یهوقت اشتباهی کرده باشیم بعد از ریستارت سیستم بوت نمیشه. حالا چطوری؟ کافیه این دستور رو اجرا کنید:
sudo mount -a
اینجا اگه همهچی درست باشه هیچ پیامی بهتون نمیده و فقط دستور رو اجرا میکنه اما اگه خطا داد یعنی یهجای کار رو اشتباه انجام دادید. در این حالت اول خاک گوگل رو به توبره بکشید 🙂 بعد اگه حل نشد توی کامنتها هم میتونید بپرسید اگه تونستیم حلش میکنیم و در نهایت اگه نشد باید حتما اون خطی که به فایل fstab اضافه کردین رو حذف کنید وگرنه دفعه بعدی سیستمتون بوت نمیشه.
حالا واسه اطمینان از کار کردنش کافیه لیست فایلهای مسیر مانت پوینتمون رو بگیریم:
ls /mnt/files
اگه پوشهها و فایلها رو براتون لیست کرد یعنی پارتیشن بدون مشکل مانت شده و کار تمومه.
نظرات