چگونه پوشه Home خود را به پارتیشن دیگری در لینوکس منتقل کنیم

اگر گزینه پیشفرض استفاده از کل دیسک هنگام نصب اوبونتو را پذیرفتهاید، یا اگر کامپیوتر شما با اوبونتو از قبل نصب شده است، احتمالاً یک پوشه Home در همان پارتیشن همه فایلهای سیستم خود دارید.
در شرایط عادی، این خوب خواهد بود. با این حال، اگر میخواهید سیستمعامل را دوباره نصب کنید، نمیتوانید تنظیمات یا همه فایلهای خود را حفظ کنید، مگر اینکه قبل از انجام این کار، یک نسخه پشتیبان کامل از پوشه تهیه کنید. برای جلوگیری از هرگونه اتفاق که منجر به حذف دایرکتوری خانگی شما میشود، باید اجازه دهید در پارتیشن خودش قرار بگیرد. این راهنما نحوه انتقال پوشه Home خود را به یک پارتیشن (یا مکان) جداگانه نشان میدهد.
ایجاد یک پارتیشن جدید
توجه: اگر قبلا یک پارتیشن خارجی با فضای کافی دارید که میتوانید از آن استفاده کنید، میتوانید از این مرحله صرفنظر کنید.
برای این راهنما، ما فرض میکنیم که کامپیوتر شما فقط یک هارد دیسک دارد و فقط یک پارتیشن دارد. برای ایجاد یک پارتیشن جدید، ابتدا باید یک درایو USB قابل بوت با اوبونتو روی آن ایجاد کنید. شما نمی توانید دیسک سخت را پارتیشنبندی کنید در حالی که سیستم عامل شما هنوز در حال اجرا است.
- فلش مموری یا دیسک را در رایانه قرار دهید، سپس با آن بوت کنید.
- در صفحه GRUB که نشان داده میشود، گزینهای را انتخاب کنید که میگوید Try or Install Ubuntu.
- در رابط گرافیکی که به شما امکان میدهد بین امتحان و نصب سیستمعامل یکی را انتخاب کنید، گزینه Try را انتخاب کنید.
- پس از راهاندازی، کلید Super (در اکثر صفحهکلیدها Win یا کلیدی با آرم ویندوز) را فشار دهید و GParted را تایپ کنید.
- هنگامی که GParted در گزینههای شما نشان داده شد، Enter را فشار دهید تا مدیر پارتیشن شما راهاندازی شود.
- هارد دیسکی که سیستمعامل شما روی آن نصب شده است را از مدیر انتخاب کنید. در بیشتر موارد، باید چیزی شبیه /dev/sda باشد.
هشدار: اگر بیش از یک درایو دارید و مطمئن نیستید که میخواهید از کدام یک استفاده کنید، دوباره به طور معمول در اوبونتو بوت کنید و جدول سیستم فایل خود را با cat /etc/fstab بررسی کنید. این فایل به شما میگوید که در هنگام نصب اوبونتو هر نقطه نصب کجا بوده است. محل نصب دایرکتوری root (“/”) را پیدا کنید (معمولاً در یک نظر توضیح داده میشود که میگوید was on /dev/xxxx during installation) و آن را یادداشت کنید.
- شما باید برخی از ورودیها را در لیست ببینید. ورودی مربوط به پارتیشن اصلی را انتخاب کنید. باید فایلی با بیشترین حجم و در قالب فایل سیستم فایل ext3 یا ext4 باشد. روی آن کلیک راست کرده و Resize/Move را انتخاب کنید.
- اندازه پارتیشن اصلی خود را در سطحی که میخواهید در قسمت New Size تنظیم کنید. عدد نشان دهنده اندازه پارتیشن در مگابایت است، بنابراین اگر می خواهید آن را روی ۵۰ گیگابایت تنظیم کنید، “۵۰۰۰۰” را وارد کنید. وقتی روی فیلد دیگری کلیک میکنید، شماره Free Space Following باید به طور خودکار تنظیم شود تا بقیه فضای درایو شما برای یک پارتیشن جدید آزاد شود.
شما باید حداقل ۴۰ گیگابایت فضای ذخیرهسازی را برای محافظت از پارتیشن در برابر چیزهایی که نسخههای جدیدتر توزیع لینوکس شما ممکن است معرفی کنند، کنار بگذارید. اگر به خصوص نگران نصب بسیاری از برنامهها هستید، آن را روی ۱۰۰ گیگابایت تنظیم کنید. به طور کلی، به جز در موارد استفاده بسیار خاص، به چیزی بیشتر از آن نیاز ندارد.
- پس از اتمام کار، روی Resize/Move کلیک کنید.
- در بازگشت به صفحه اصلی GParted، باید یک ورودی جدید Unallocated را با اندازه فایلی که قبلا تنظیم کرده بودید مشاهده میکنید. روی آن کلیک راست کرده و New را انتخاب کنید. ext4 را به عنوان فایلسیستم انتخاب کنید و روی Add کلیک کنید.
- برای اعمال تغییرات روی علامت سبز کلیک کنید. بسته به اندازه هارددیسکتان، فرآیند تغییر اندازه ممکن است زمان زیادی طول بکشد.
- پس از اتمام فرآیند، باید چیزی شبیه به صفحه زیر مشاهده کنید. برچسب پارتیشن جدید را یادداشت کنید.
جلسه زنده را خاموش کنید، CD/USB لایو را بردارید و کامپیوتر را بوت کنید.
انتقال پوشه Home
برای انتقال پوشه Home فعلی خود به یک پارتیشن خارجی، چهار کار وجود دارد که باید انجام دهید:
- پارتیشن خارجی را روی یک مکان موقت Home قرار دهید.
- فایل ها را از پوشه Home فعلی خود در این پوشه Home موقت کپی کنید.
- پوشه Home فعلی را جابجا کنید.
- پوشه Home جدید را Mount کنید.
ایجاد پوشه Temporary Home
- فایل جدول فایل سیستم خود را باز کنید:
1 |
sudo nano /etc/fstab |
- خط زیر را به انتهای فایل اضافه کنید:
1 |
/dev/sdxx /media/home ext4 nodev,nosuid 0 2 |
به یاد داشته باشید که sdxx را با برچسب پارتیشنی که قبلا نوشتید جایگزین کنید. همچنین میتوانید اطلاعات پارتیشن خود را با فرمان lsblk پیدا کنید.
- ذخیره (Ctrl + O) و خروج (Ctrl + X) از فایل.
- ایجاد نقطه اتصال (mount point):
1 |
sudo mkdir /media/home |
- جدول سیستم فایل به روز شده را دوباره بارگیری کنید.
1 |
sudo mount -a |
شما باید یک پوشه home را در دایرکتوری Media مشاهده کنید.
کپی کردن فایلها از پوشه Home فعلی خود در پارتیشن جدید
در مرحله بعد، تمام فایلها را از پوشه Home فعلی در پوشه Home جدید کپی کنید. شما به سادگی میتوانید روال معمول Select all و Copy/Paste را برای انتقال همه فایلها به پوشه Home جدید انجام دهید. با این حال، ممکن است فایلهای مخفی را از دست داده باشید و برخی از مجوزهای فایل ممکن است حفظ نشوند. از rsync برای حفظ ویژگیهای همه دادههای خود بهعلاوه هر چیز دیگری که در پوشه Home پنهان است، استفاده کنید:
1 |
sudo rsync -aXS --progress /home/. /media/home/. |
اگر همه چیز به خوبی کار میکرد، باید همان فایلها و پوشهها را در پوشه Home جدید خود مشاهده کنید.
تغییر مکان پوشه Home فعلی
هنگامی که Home جدید راهاندازی شد، باید پوشه Home موجود را حذف کنیم تا راه را برای پوشه Home جدید در پارتیشن جدید باز کنیم.
برای انجام این کار، فرمانهای زیر را در ترمینال تایپ کنید:
1 2 3 |
cd / sudo mv /home /home_backup sudo mkdir /home |
فرمانهای بالا پوشه Home موجود را به Home_backup منتقل میکند و یک پوشه Home خالی برای پوشه Home جدید ایجاد میکند تا روی آن نصب شود.
Mount کردن پوشه Home جدید
برای تکمیل انتقال، با مراجعه مجدد به فایل fstab، پوشه Home جدید را به عنوان /home مانت (Mount) کنید.
1 |
sudo nano /etc/fstab |
/media/home را به /home تغییر دهید. فایل را ذخیره کرده و از آن خارج شوید.
در نهایت، فایل fstab را دوباره بارگیری کنید:
1 |
sudo mount -a |
اکنون پوشه Home خود را به یک پارتیشن خارجی منتقل کردهاید.