Answers:
您需要向您的SCSI总线发出rescan命令。
在VMware中,SCSI控制器可能位于不寻常的地方。首先找到它:
find /sys -iname 'scan'
对我而言
/sys/devices/pci0000:00/0000:00:07.1/host0/scsi_host/host0/scan
/sys/devices/pci0000:00/0000:00:07.1/host1/scsi_host/host1/scan
/sys/devices/pci0000:00/0000:00:10.0/host2/scsi_host/host2/scan
然后只需发出rescan命令
echo "- - -" >/sys/devices/pci0000:00/0000:00:07.1/host0/scsi_host/host0/scan
echo "- - -" >/sys/devices/pci0000:00/0000:00:07.1/host0/scsi_host/host1/scan
echo "- - -" >/sys/devices/pci0000:00/0000:00:10.0/host0/scsi_host/host2/scan
那应该有帮助。:)
ls /sys/class/scsi_host
也许更快。
我必须在SLES 11服务器上处理类似的问题。LVM是使用在VMWare ESXi上运行的原始磁盘构建的
# pvcreate /dev/sdd; vgextend ....
一段时间后,我需要增加LVM的大小,但是我没有像以前一样添加辅助磁盘,然后添加pvcreate + vgextend,但是我选择增加现有磁盘的大小(在这种情况下为/ dev / sdd )。完成VMWare的增加后,我执行了
# rescan-scsi-bus.sh
但是pvdisplay仍然显示“旧”磁盘大小。有必要做一个
# echo 1 > /sys/block/sdd/device/rescan
让内核学习/ dev / sdd的新磁盘大小
echo 1 > /sys/block/sda/device/rescan
在CentOS上为我工作
更新: Centos 6-不能在线更新活动磁盘的分区表,Centos 7-可以使用growpart扩展最后一个分区,或者使用fdisk创建新分区,并使其可见,而无需通过partprobe重启。在ubuntu / debian上可能相同。-在2.6内核开始支持在线重新读取活动磁盘分区表之后的某个时刻。由于问题是针对Centos 5的,所以我不会说。
如果使用分区,则必须重新引导才能使用新空间。我没有找到避免这种情况的方法。如果有人让我知道。
但是,应在扩展磁盘上的最后一个分区或添加新分区之后重新启动。重新启动之前没有任何意义。
重新扫描后您应该注意的第一件事是fdisk和lsblk中的磁盘更大。如果看不到它,则必须使用这些echo 1和echo---命令。
看到更多空间后,您可以扩展/添加分区,然后重新引导,扩展vg,扩展lv和fs。
如果要避免重新引导,则必须将原始sda / b / c磁盘分配给卷组,而不能将其分区到sda1 / 2/3。这样就无需重新启动。
前段时间,当Linux无法从LVM引导时,分区是必要的,但是现在可以了。
如果您执行lsblk,则将看到分区或lvms,具体取决于您使用的是分区还是lvm,如果不使用lvm则可以包含所有部分,如果不使用分区则可以包含所有lvms。这是一个例子:
root@srv4 ~ $ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 7.3T 0 disk
├─sda1 8:1 0 500M 0 part /boot
└─sda2 8:2 0 7.3T 0 part
├─vg_srv4-LogVol13 (dm-0) 253:0 0 7.1T 0 lvm /
├─vg_srv4-LogVol05 (dm-1) 253:1 0 100G 0 lvm /var/log
├─vg_srv4-LogVol04 (dm-2) 253:2 0 20G 0 lvm /var
├─vg_srv4-LogVol01 (dm-5) 253:5 0 20G 0 lvm /opt
├─vg_srv4-LogVol00 (dm-6) 253:6 0 20G 0 lvm /home
├─vg_srv4-LogVol03 (dm-7) 253:7 0 20G 0 lvm /usr
└─vg_srv4-LogVol02 (dm-8) 253:8 0 8G 0 lvm /tmp
要检测对现有磁盘的更改:
echo 1 > /sys/class/block/sdX/device/rescan
要检测新磁盘:
echo 1 > /sys/class/scsi_device/X:X:X:X/device/block/device/rescan
要在第一种情况下找到X,可以使用fdisk -l
。
https://kerneltalks.com/disk-management/how-to-rescan-disk-in-linux-after-extending-vmware-disk/
您必须重新启动,无法解决。