Bagaimana saya bisa memindahkan direktori home ke partisi yang terpisah?

22

Saya ingin menginstal distribusi lain tetapi simpan direktori home saya. Apakah ada cara untuk memindahkan direktori home ke partisi yang terpisah? Saya tidak memiliki hard drive eksternal yang tersedia untuk mencadangkan data saya. Saya ingin mengatur partisi saya seperti yang disarankan di sini .

vanillaike
sumber
1
Anda selalu dapat melakukan partisi ulang dan kemudian mengembalikan / pulang dari cadangan. Anda punya cadangan, bukan?
KeithB

Jawaban:

13

Pertanyaan Anda distro-netral, jadi jika saya menyebutkan sesuatu yang spesifik yang tidak Anda miliki, gunakan saja yang setara di sisi Anda.

Saya sangat merekomendasikan Anda membeli eksternal untuk cadangan, percayalah, kehilangan data Anda adalah yang terburuk. Lanjutkan dengan risiko Anda sendiri - Tetapi jika Anda tidak bisa mendapatkannya, inilah yang dapat Anda lakukan.

Apa yang kau butuhkan

  • ukuran direktori / home Anda
  • ruang kosong, lebih dari ukuran direktori / home Anda
  • alat partisi disk, saya sarankan gparted

Melakukan apa

  • Periksa ukuran direktori / home Anda (hasil terakhir akan menjadi total home):

    du -h /home

  • Periksa apakah Anda memiliki cukup ruang kosong untuk partisi baru:

    df -h

  • Instal gparted

    sudo apt-get install gparted

Anda memerlukan lebih banyak ruang kosong daripada ukuran direktori / home Anda. Jika Anda tidak memiliki ruang kosong, maka Anda tidak akan dapat membuat partisi baru itu, dan bagaimanapun juga perlu memindahkan data Anda ke eksternal.

Jika Anda memiliki ruang, gunakan gparted untuk mengecilkan partisi yang ada, dan kemudian membuat partisi baru dengan ruang yang tidak terisi yang dibebaskan. Setelah partisi baru Anda siap, catat itu / dev / sdax (gunakan sudo fdisk -luntuk melihat ini), dan salin file home Anda ke sana.

Menggunakan partisi di distro baru

Anda menyebutkan menginstal distro lain, jika Anda berencana untuk mengganti distro Anda saat ini, maka selama instalasi Anda harus diminta untuk membuat partisi. Pada titik itu Anda dapat menentukan partisi ini sebagai / home, memilih untuk tidak memformatnya, dan semua akan baik-baik saja, Anda dapat melewati bagian ini.

Namun jika Anda ingin distro Anda saat ini bekerja dengan partisi baru / home, ikuti bagian ini:

Pasang partisi di distro yang ada

Kami harus memberi tahu OS Anda untuk menggunakan partisi sebagai rumah / baru Anda, kami melakukan ini di fstab, tetapi pertama-tama mari kita temukan UUID dari partisi baru ini:

ls -l /dev/disk/by-uuid

Referensi silang / sdax partisi baru Anda dan salin UUIDnya, milik saya sepertinya 3d866059-4b4c-4c71-a69c-213f0e4fbf32.

Backup fstab: sudo cp /etc/fstab /etc/fstab.bak Edit fstab:sudoedit /etc/fstab

Idenya adalah untuk menambahkan baris baru yang me-mount partisi di / home. Gunakan UUID Anda sendiri, bukan yang saya posting di sini;)

# <file system> <mount point>   <type>  <options>       <dump>  <pass>
UUID=3d866059.. /home           auto    default         0       1

Simpan dan mulai ulang, dan uji apakah partisi baru mount ke / home. Jalankan df -huntuk mencantumkan semua partisi yang dipasang, / home sekarang harus ada dalam daftar itu.


Catatan

  • Mungkin sebaiknya Anda membiasakan diri dengan fstab jika Anda tidak mengetahuinya dengan baik. Luangkan waktu Anda dan pikirkan setiap langkah.
  • Jika Anda menginstal distro baru, dan menggunakan nama login yang sama, file lama / beranda Anda akan secara otomatis berada di bawah kepemilikan Anda.
  • Ini bukan topik sepele untuk dibahas dalam satu posting, tapi saya rasa saya mendapat sebagian besar. :)
membalikkan
sumber
Saya mencoba menggunakan gparted, tetapi saya tidak dapat mengubah ukuran partisi /. Apakah Anda punya rekomendasi tentang cara mengubah ukuran partisi root? Saya mungkin menggunakan Parted Magic untuk melakukannya dari live cd.
vanillaike
1
Ya, Anda harus melakukannya dari Live CD karena sistem file sudah terpasang oleh OS yang sedang berjalan. CD Live Ubuntu, Knoppix atau Parted Magic semuanya akan berfungsi.
balikkan
3

Judul posting dan pertanyaan Anda membuat saya bingung. Apakah Anda ingin memisahkan Anda homemenjadi partisi, atau Anda hanya ingin menginstal ulang dan tetap sama home?

Jika semua yang Anda inginkan adalah menginstal ulang seluruh OS sambil menjaga Anda, homemaka Anda dapat membuat cadangan Anda homeke tempat yang tidak akan terpengaruh oleh pemasangan, kemudian kembalikan setelah itu, bersama dengan perbaikan izin (gunakan chown -R username:groupnameuntuk memastikan kepemilikan sudah benar ).

Jika Anda ingin mengikuti beberapa praktik terbaik dan memisahkan Anda, homeberikut ini panduan yang Anda butuhkan . Ini ditulis untuk Ubuntu, tapi saya pikir hal yang sama berlaku untuk distro lain.

phhehehe
sumber
maaf bila membingungkan. Saya ingin memisahkan rumah saya menjadi partisi
vanillaike
PERINGATAN: Tautan dalam "izin perbaikan" saat ini memantul satu ke dua situs web yang berbeda, yang terakhir meminta seseorang untuk menginstal Adobe Flash dalam replika dialog penginstal yang terlihat sangat cerdik.
user66001
Saya memutuskan tautan "perbaikan izin" dan menyalin saran dari artikel asli, yang saya temukan diarsipkan .
mattdm
2

Dengan asumsi Anda sudah memiliki partisi terpisah (dan jika tidak, Anda mungkin ingin menggunakan gparted atau yang serupa, untuk membuatnya), Anda cukup melakukan yang berikut (lebih disukai sebagai pengguna root):

 cp -R /home/whatever /path/to/destination
 mv /home/whatever /home/whatever.orig
 ln -s /path/to/destionation /home/whatever 

Dan kemudian dengan asumsi bahwa semuanya berfungsi sebagaimana mestinya (masuk sebagai pengguna dan uji)

 rm -rf /home/whatever.orig 

Ini menyalin seluruh direktori (dan semua konten) ke mountpoint tujuan, mengubah nama direktori home asli (kalau-kalau ada sesuatu yang kacau dalam proses, maka kita dapat memulihkan), membuat tautan simbolis dari lokasi baru ke rumah asli direktori (yang semuanya (seperti / etc / passwd) masih menunjuk ke), kemudian dengan asumsi itu berfungsi, menghapus salinan cadangan yang kami buat, meninggalkan salinan yang kami taruh di sistem file tujuan.

Matt Simmons
sumber
Ini tidak benar-benar menggunakan /homesebagai titik mount untuk partisi baru. Itu hanya menghubungkannya.
Matthew Flaschen
Secara efektif hal yang sama. Hanya karena / home / username adalah symlink tidak berarti itu tidak akan berfungsi. Jika Anda ingin meletakkan semua akun pengguna di partisi lain, cukup ganti baris 'cp -R' untuk melakukan / home alih-alih / home / nama pengguna
Matt Simmons