Pindah /var
tanpa mengubah ke mode pengguna tunggal
Ketika saya mengambil alih server virtual baru yang telah disediakan untuk saya oleh perusahaan hosting perusahaan saya, saya membuat volume tambahan logis untuk var
dan home
yang telah menjadi direktori reguler di partisi root. Karena penyedia server virtual tidak menyediakan antarmuka seperti KVM yang dengannya saya dapat mengakses server dalam mode pengguna tunggal, jawaban di atas tidak berlaku untuk pengaturan saya. Saya harap jawaban ini berguna untuk orang lain dalam situasi yang sama (Saya telah menyimpan detail LVM tetapi ini dapat dilewati karena tidak terlalu relevan apakah sistem file baru dibuat pada volume logis atau partisi disk).
Buat dan gunakan /var
sistem file baru dengan LVM
Buat filesystem untuk var
volume baru , pasang (menggunakan direktori sementara) dan salin file dari saat ini /var
ke filesystem baru. Saat menyalin file dengan rsync
, gunakan -a, --archive
opsinya untuk mempertahankan stempel waktu, kepemilikan, mode, dll. Dan -X, --xattrs
opsinya untuk mempertahankan atribut yang diperluas seperti label keamanan yang digunakan oleh AppArmor dan SELinux.
sudo lvcreate -L 60GB -n var VolGroup00
sudo mkfs.ext4 /dev/VolGroup00/var
sudo mkdir /var.new
sudo mount /dev/VolGroup00/var /var.new
sudo rsync -raX /var/ /var.new/
Perbarui tabel sistem file
Konfigurasikan sistem file baru untuk digunakan sebagai titik-mount baru /var
dengan menambahkan baris berikut ke /etc/fstab
. Catatan yang 0
digunakan sebagai nomor pass (bidang terakhir) sehingga sistem file tidak akan secara otomatis diperiksa ( fsck
) setelah sejumlah reboot (saya tidak punya akses untuk masuk ke server dalam mode single-user).
/dev/mapper/VolGroup00-var /var ext4 defaults 0 0
Karena saya tidak dapat mengubah ke mode pengguna tunggal, reboot komputer untuk menggunakan volume baru ini sebagai /var
.
Pulihkan ruang disk dari sistem file root
Setelah mesin restart, lakukan langkah-langkah berikut untuk membersihkan direktori sementara dan menghapus /var
file lama dari sistem file root:
Hapus titik pemasangan sementara:
sudo rmdir /var.new
Buat titik mount baru untuk membuat jalur alternatif ke file di /var
direktori lama pada sistem file root (saat ini "tertutup" oleh /var
sistem file baru yang dipasang pada direktori):
sudo mkdir /old-root
sudo mount /dev/mapper/VolGroup00-root /old-root/
sudo rm -rf /old-root/var/*
sudo umount /old-root/
sudo rmdir /old-root/