Untuk ini saya akan menganggap ada 12 disk dalam array, dan masing-masing berukuran 1TB.
Itu berarti ada 10TB penyimpanan. Ini misalnya, asalkan Anda tidak menggunakan lebih dari 6 disk (6TB) senilai penyimpanan, maka ukurannya pun tidak masalah.
Penafian Oblig: Tidak satu pun dari ini dapat didukung oleh Synology, jadi saya akan memeriksa dengan mereka jika pendekatan ini dapat menyebabkan masalah, membuat cadangan sebelumnya, dan mematikan layanan synology sebelumnya. Synology menggunakan array raid standar md sejauh yang saya tahu, dan mereka dapat diakses jika disk dipindahkan ke server standar yang mendukung md - jadi seharusnya tidak ada masalah.
Gambaran
Urutannya seperti ini:
- Kurangi ukuran sistem file
- Kurangi ukuran volume logis
- Kurangi ukuran array
- Ubah ukuran sistem file kembali
- Ubah disk cadangan menjadi suku cadang panas
Berkas sistem
Temukan partisi utama, gunakan df -h
, seharusnya terlihat seperti:
Filesystem Size Used Available Use% Mounted on
/dev/vg1/volume_1 10T 5T 5T 50% /volume1
Gunakan perintah ini untuk mengubah ukuran ke maksimum yang dibutuhkan dan tidak lebih:
umount /dev/vg1/volume_1
resize2fs -M /dev/vg1/volume_1
Sekarang periksa:
mount /dev/vg1/volume_1 /volume1
df -h
Filesystem Size Used Available Use% Mounted on
/dev/vg1/volume_1 5T 5T 0T 100% /volume1
Volume
Untuk mengurangi ukuran volume, gunakan lvreduce (buat sedikit lebih besar untuk jaga-jaga):
umount /dev/vg1/volume_1
lvreduce -L 5.2T /dev/vg1/volume_1
Sekarang setelah volume logis telah dikurangi, gunakan pvresize untuk mengurangi ukuran volume fisik:
pvresize --setphysicalvolumesize 5.3T /dev/md0
Jika pengubahan ukuran gagal, lihat pertanyaan lain ini untuk memindahkan bagian data yang dialokasikan di akhir volume fisik ke awal.
Sekarang kita memiliki volume 5.3T pada array 10T, sehingga kita dapat dengan aman mengurangi ukuran array sebesar 2T.
Himpunan
Cari tahu perangkat md:
pvdisplay -C
PV VG Fmt Attr PSize PFree
/dev/md0 vg1 lvm2 a-- 5.3t 0.1t
Langkah pertama adalah memberi tahu mdadm untuk mengurangi ukuran array (dengan tumbuh):
mdadm --grow -n10 /dev/md0
mdadm: this change will reduce the size of the array.
use --grow --array-size first to truncate array.
e.g. mdadm --grow /dev/md0 --array-size 9683819520
Ini mengatakan bahwa untuk menyesuaikan array saat ini ke 10 disk, kita perlu mengurangi ukuran array.
mdadm --grow /dev/md0 --array-size 9683819520
Sekarang lebih kecil, kita dapat mengurangi jumlah disk:
mdadm --grow -n10 /dev/md0 --backup-file /root/mdadm.md0.backup
Ini akan memakan waktu yang lama, dan dapat dipantau di sini:
cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md4 : active raid6 sda4[0] sdb4[1] sdc4[2] sdd4[3] sde4[4] sdf4[5] sdg4[6] sdh4[7] sdi4[1] sdj4[1]
[>....................] reshape = 1.8% (9186496/484190976)
finish=821.3min speed=9638K/sec [UUUUUUUUUU__]
Tapi kita tidak perlu menunggu.
Ubah ukuran PV, LV, dan sistem file ke maksimum:
pvresize /dev/md0
lvextend -l 100%FREE /dev/vg1/volume_1
e2fsck -f /dev/vg1/volume_1
resize2fs /dev/vg1/volume_1
Tetapkan disk cadangan sebagai suku cadang
Tidak ada yang bisa dilakukan di sini, setiap disk cadangan dalam sebuah array secara otomatis dihemat. Setelah pembentukan kembali Anda selesai, periksa status:
cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md4 : active raid6 sda4[0] sdb4[1] sdc4[2] sdd4[3] sde4[4] sdf4[5] sdg4[6] sdh4[7] sdi4[S] sdj4[S]