Yeniden başlatmadan Centos VM'nin artırılmış Disk boyutunu yeniden okumasını nasıl sağlarım


16

Bir CentOS 5 VM'im var ve VM diskini 10G'den 20G'ye çıkardım, ancak yeniden başlatmadan yeni disk boyutunu görmek için fdisk alamıyorum.

Denedim echo 1 > /sys/block/sda/device/rescan, yeni boyutu görebildiğini gösteriyor gibi görünüyor, ancak yeni bir bölüm oluşturmak için fdisk'e gittiğimde diski hala 10G olarak görüyor.

Herhangi bir fikir?


Sanallaştırma platformunuza ve depolama yönteminize bağlı olarak, bu mümkün olabilir veya olmayabilir. Ayrıntılar önemlidir.
womble

Hangi sanal disk türünü eklediniz: IDE veya SCSI?
quanta

Bu ilk komut benim için çalıştı ...
Rodo

Yanıtlar:


11

SCSI veriyolunuza rescan komutunu vermeniz gerekir.

VMware'de SCSI denetleyicisi alışılmadık bir yerde bulunabilir. İlk önce bulun:

find /sys -iname 'scan'

Benim için geri döndü

/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

Sonra sadece rescan komutunu verin

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

Yani gerektiğini yardımcı olur. :)


5
ls /sys/class/scsi_hostbelki daha hızlı.
quanta

11

Bir SLES 11 sunucusunda benzer bir sorunla uğraşmak zorunda kaldım. LVM, VMWare ESXi üzerinde çalışan ham disklerle oluşturuldu

# pvcreate /dev/sdd; vgextend ....

Bir süre sonra LVM boyutunu artırmaya ihtiyacım vardı, ancak ek bir disk eklemedim ve daha önce yaptığım gibi pvcreate + vgextend yapmadım, ancak mevcut bir diskin boyutunu arttırmayı seçtim (bu durumda / dev / sdd) ). VMWare'deki artışı yaptıktan sonra,

# rescan-scsi-bus.sh

Ancak pvdisplay hala 'eski' disk boyutunu gösteriyordu. Yapmak gerekiyordu

# echo 1 > /sys/block/sdd/device/rescan

çekirdeğin / dev / sdd'nin yeni disk boyutunu öğrenmesi için


6
echo 1 > /sys/block/sda/device/rescanCentOS
Benedikt Köppel'de

-bash: / sys / module / scsi_mod / parametreler / tarama: İzin verilmedi, kullanıcı adı kökü
Sarz

7

ilk yaptıktan sonra echo 1 > /sys/block/sda/device/rescan

pvresize /dev/sda benim için hile yaptı


3

Bölümleme tablosu doğrudan kullanımdaysa (örneğin, temel bir bölüm kullanarak dosya sistemi bağladıysanız), çekirdek artık geçerli olana kadar eski bölümleme tablosunu kullanmaya devam eder. Birisi bana bir keresinde LVM kullanıyorsanız bunu başarabileceğinizi söyledi.


2

Güncelleme: Centos 6 - aktif diskin çevrimiçi bölüm tablosunu güncellemek mümkün değil, Centos 7 - son bölümü growpart ile genişletmek veya fdisk ile yeni bölüm oluşturmak ve partprobe ile yeniden başlatmadan görünür hale getirmek mümkündür . Muhtemelen ubuntu / debian'da aynı. - 2.6 çekirdekten sonra bir noktada aktif disk bölümleme tablosunun çevrimiçi tekrar okunmasını desteklemeye başladı. Soru Centos 5 için olduğu için hiçbir şekilde söyleyemem.

Bölümleri kullanıyorsanız, yeni alan kullanmak için yeniden başlatmanız gerekir. Bundan kaçınmanın bir yolunu bulamadım. Birisi bana haber verirse.

Ancak, diskteki son bölümü genişlettikten veya yeni bölüm ekledikten sonra yeniden başlatma yapılmalıdır. Daha önce yeniden başlatmak mantıklı değil.

Rescan'dan sonra dikkat etmeniz gereken ilk şey fdisk ve lsblk dosyalarında daha büyük disk boyutudur. Görmüyorsanız, bu yankı 1 ve yankı - - - komutlarıyla oynamanız gerekir.

Daha fazla alan gördükten sonra bölümü genişletebilir / ekleyebilir, ardından yeniden başlatabilir, vg'yi genişletebilir, lv ve fs'yi genişletebilirsiniz.

Yeniden başlatmayı önlemek istiyorsanız, sda1 / 2 / 3'e bölmeden ham sda / b / c diskini birim grubuna atamanız gerekir. Sonra yeniden başlatmaya gerek yoktur.

Bölümleme bir süre önce linux LVM'den önyükleme yapamadığında gerekliydi, ama şimdi yapabilir.

Eğer lsblk yaparsanız bölüm veya lvm kullanmanıza bağlı olarak bölümler veya lvms göreceksiniz, lvm kullanmıyorsanız tüm bölümlere veya bölüm kullanmıyorsanız tüm lvms'ye sahip olabilirsiniz. İşte bir örnek:

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


-5

Yeniden başlatmanız gerekiyor, bunun hiçbir yolu yok.


Yeniden taramayı zorlayan sisteme ne dersiniz?
quanta

Yeniden başlatmak zorunda
kaldım

Ben de yeniden başlatmalıydım.
ondra

1
Bu tamamen doğru değil. Bunu yeniden başlatmadan birçok kez yaptım.
Duncan X Simpson
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.