Saya telah menginstal ulang server Linux dari CentOS 6 hingga 7. Server memiliki 3 drive - drive sistem SSD (kecuali semua host /home
) dan dua drive HDD 4TB yang menjadi tuan rumah /home
. Semuanya menggunakan LVM. Dua drive 4TB dicerminkan (menggunakan opsi raid di dalam LVM itu sendiri), dan mereka sepenuhnya diisi dengan partisi / home.
Masalahnya adalah bahwa meskipun disk 4TB dikenali dengan baik, dan LVM melihat volume tanpa masalah, itu tidak mengaktifkannya secara otomatis. Yang lainnya diaktifkan secara otomatis. Saya dapat mengaktifkannya secara manual, dan berfungsi.
Saya memiliki gambar drive sistem lama di / rumah. Itu juga mengandung volume LVM. Jika saya memasangnya kpartx
, dan LVM mengambilnya dan mengaktifkannya. Tapi saya tidak bisa melihat perbedaan antara volume itu dan yang tidak aktif.
Filesystem root juga LVM, dan itu mengaktifkannya dengan baik.
Saya melihat hal yang aneh: mengeksekusi lvchange -aay
memberitahu saya bahwa saya perlu menentukan drive mana yang ingin saya aktifkan. Itu tidak melakukannya secara otomatis juga. Jika saya menentukan lvchange -ay lv_home
- itu berfungsi.
Saya tidak dapat menemukan apa pun yang dapat bertanggung jawab atas perilaku ini.
Ditambahkan: Saya perhatikan bahwa sistem lama (yang menggunakan init) ada vgchange -aay --sysinit
di skrip startupnya. Yang baru menggunakan systemd, dan saya tidak melihat vgchange
panggilan dalam skripnya. Tapi saya juga tidak tahu harus meletakkannya di mana.
Ditambahkan 2: Mulai mencari tahu systemd. Saya menemukan di mana skrip berada dan mulai memahami bagaimana mereka dipanggil. Juga menemukan bahwa saya dapat melihat skrip yang dieksekusi dengan systemctl -al
. Ini menunjukkan kepada saya bahwa setelah memulai lvmetad
panggilan pvscan
untuk setiap perangkat blok udev dikenal. Namun pada saat itu hanya ada satu perangkat blok udev terdaftar, dan itu adalah salah satu volume lvm yang dikenali. Hard drive ada di sana juga, tetapi di bawah jalur yang berbeda dan nama yang lebih panjang. Perangkat blok yang dikenali adalah sesuatu yang mirip 8:3
, sedangkan hard drive seperti /device/something/
. Saya tidak di server lagi, jadi saya tidak bisa menulisnya dengan tepat (akan memperbaikinya nanti).
Saya pikir itu ada hubungannya dengan udev dan deteksi / pemetaan perangkat. Saya akan melanjutkan di malam hari dan akan belajar udev kemudian.
Jika semuanya gagal, saya menemukan skrip yang memanggil pvscan
dan memeriksa bahwa saya dapat memodifikasinya untuk memindai semua perangkat sepanjang waktu. Itu memperbaiki masalah, tetapi sepertinya peretasan agak jelek, jadi saya akan mencoba mencari tahu penyebab sebenarnya.
Ditambahkan 3 : OK, saya masih tidak tahu mengapa ini terjadi, tapi setidaknya saya sudah membuat solusi yang lumayan. Saya membuat layanan systemd lain yang memanggil pvscan
sekali, tepat setelah memulai lvmetad
. Panggilan lain untuk perangkat tertentu masih ada, dan saya pikir itu sebenarnya udev
yang memanggilnya (itulah satu-satunya tempat saya menemukan referensi untuk itu). Mengapa tidak menyebutnya untuk hard drive lain - Saya tidak tahu.
lvmetad
- saya belum melihat yang lain).