
我們在實體機上安裝了RHEL 7.9版本,當時sda
裝置是作業系統。
本機具有以下磁碟。
sda - OS disk
sdb - data disk
sdc - data disk
重新啟動後,作業系統磁碟裝置會變更為sdc
以下內容,並sda
成為資料磁碟的一部分。
sdc 8:32 0 558.4G 0 disk
├─sdc1 8:33 0 500M 0 part /boot
└─sdc2 8:34 0 557.9G 0 part
├─VG-VOL_root 253:0 0 100G 0 lvm /
├─VG-VOL_swap 253:1 0 16G 0 lvm
├─VG-VOL_var 253:2 0 200G 0 lvm /var
我們假設下次重新啟動時sdc
可能會再次更改為sda
應有的樣子?
但是如何防止sda
磁碟在重新啟動後更改為另一個裝置?
根據紅帽文檔,他們建議設定以下內容:
使用者可以透過在 /etc/sysconfig/grub 檔案中附加「scsi_mod.scan=sync」來修改核心啟動參數,以獲得更一致的磁碟盤符
。應謹慎使用此選項,因為它會減慢磁碟發現過程,從而減慢整個引導過程。
但是這個配置scsi_mod.scan=sync
真的 /etc/sysconfig/grub
有幫助嗎?
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=VG/VOL_root rd.lvm.lv=VG/lv_swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"
scsi_mod.scan=sync <---------------
為了避免sda
磁碟設備在重新啟動後發生更改,我們可以採取哪些其他選項?
來自伺服器的其他一些有用的詳細信息
ls -ltr /dev/disk/by-id | grep sdc
lrwxrwxrwx 1 root root 9 Dec 28 11:43 wwn-0x6588a5a0ef7f4d0023880046051e7a74 -> ../../sdc
lrwxrwxrwx 1 root root 9 Dec 28 11:43 scsi-36588a5a0ef7f4d0023880046051e7a74 -> ../../sdc
lrwxrwxrwx 1 root root 10 Dec 28 11:43 wwn-0x6588a5a0ef7f4d0023880046051e7a74-part2 -> ../../sdc2
lrwxrwxrwx 1 root root 10 Dec 28 11:43 scsi-36588a5a0ef7f4d0023880046051e7a74-part2 -> ../../sdc2
lrwxrwxrwx 1 root root 10 Dec 28 11:43 lvm-pv-uuid-2Ee6HA-9vVx-bUVq-noyG-U0Nq-AVMz-oI56ji -> ../../sdc2
lrwxrwxrwx 1 root root 10 Dec 28 11:43 wwn-0x6588a5a0ef7f4d0023880046051e7a74-part1 -> ../../sdc1
lrwxrwxrwx 1 root root 10 Dec 28 11:43 scsi-36588a5a0ef7f4d0023880046051e7a74-part1 -> ../../sdc1
cat /etc/fstab | grep boot
UUID=f57f0346-9e6c-429e-b80f-3871334bae35 /boot xfs defaults 0 0
答案1
- 使用 /etc/fstab 中的持久性識別碼進行掛載,例如,將 /dev/sdX 替換為 UUID 或 /dev/disk/by-id 中的符號連結。
- (可選)將 scsi_mod.scan=sync 新增至 /etc/default/grub 中的 GRUB_CMDLINE_LINUX 以減慢磁碟發現速度。
- 重新產生 GRUB 設定:grub2-mkconfig -o /boot/grub2/grub.cfg。
- 更新 initramfs:dracut -f。
- 重新啟動並使用 /dev/disk/by-id 驗證磁碟分配。