Czasami, podczas zmiany rozmiaru lub w inny sposób z partycjami na dysku, cfdisk powie:
Wrote partition table, but re-read table failed. Reboot to update table.
(Dzieje się tak również w przypadku innych narzędzi do partycjonowania, więc myślę, że jest to problem dotyczący Linuksa, a nie problem z dyskiem CD.) Dlaczego tak jest i dlaczego zdarza się to tylko czasami i co mogę zrobić, aby tego uniknąć?
Uwaga: Proszę założyć, że żadna z aktualnie edytowanych przeze mnie partycji nie jest otwarta, zamontowana lub używana w inny sposób.
Aktualizacja:
cfdisk używa, ioctl(fd, BLKRRPART, NULL)
aby powiedzieć Linuksowi, aby ponownie przeczytał tablicę partycji. Dwa inne zalecane do tej pory narzędzia ( hdparm -z
DEVICE
, sfdisk -R
DEVICE
) robią dokładnie to samo. Z partprobe
DEVICE
drugiej strony polecenie wydaje się używać nowego ioctl o nazwie BLKPG, co może być lepsze; Nie wiem (Powoduje także powrót do BLKRRPART, jeśli BLKPG zawiedzie.)
BLKPG wydaje się być operacją „ta partycja uległa zmianie; oto nowy rozmiar” i wyglądała, jakby była partprobe
nazywana indywidualnie na wszystkich partycjach przekazanego urządzenia, więc powinna działać, jeśli poszczególne partycje nie są używane. Nie miałem jednak okazji tego spróbować.
man sfdisk
mówi:Since version 2.26 sfdisk no longer provides the -R or --re-read option to force the kernel to reread the partition table. Use blockdev --rereadpt instead.