Kiedy uruchamiam fdisk i zmieniam rozmiar partycji, fdisk mówi na końcu danych wyjściowych:
The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8)
Chciałbym to zrobić bez konieczności ponownego uruchamiania (a następnie napisania skryptu, który to robi) Jak użyć kpartx, aby zrobić to poprawnie? Próbowałem:
kpartx -f -v /dev/mmcblk0
Które wyjścia:
mmcblk0p1 : 0 102400 /dev/mmcblk0 2048
mmcblk0p2 : 0 7657472 /dev/mmcblk0 104448
i:
kpartx -a -v /dev/mmcblk0
które wyjścia:
device-mapper: reload ioctl on mmcblk0p1 failed: Invalid argument
create/reload failed on mmcblk0p1
add map mmcblk0p1 (0:0): 0 102400 linear /dev/mmcblk0 2048
device-mapper: reload ioctl on mmcblk0p2 failed: Invalid argument
create/reload failed on mmcblk0p2
add map mmcblk0p2 (0:0): 0 7657472 linear /dev/mmcblk0 104448
To jest dla karty SD w debianie z systemem raspi.
EDYCJA: Aby wyjaśnić, co próbuję zrobić; Usuwam nieużywany p3 z karty SD i zmieniam rozmiar p2, aby wypełnić kartę. Karta zawiera obecnie małą partycję rozruchową p1, a p2 to miejsce, w którym znajduje się system operacyjny.
partprobe
pomagaOdpowiedzi:
Chcesz
partx -u
, niekpartx
(który działa na urządzeniach mapujących urządzenia).źródło
-u
flagi?man partx
odpowiedziałby na to.Uważam, że @derobert (który skomentował pierwotne pytanie) jest prawdopodobnie poprawny. W przypadku fdiskowania partycji, która jest obecnie używana, wydaje się, że nie ma innej opcji niż ponowne uruchomienie.
Nawet gdy używam
partprobe
(co jest uzyskiwaneapt-get install parted
), otrzymuję następujące dane wyjściowe:źródło
parted
/partprobe
nie powodują takiego błędu i mogą być używane na zamontowanej partycji bez ponownego uruchamiania.parted
ale wciąż pojawia się ten sam błąd. Rozwiązaniem jest odmontowanie urządzenia przed uruchomieniemparted
na urządzeniu, a następnie nie trzeba ponownie uruchamiać systemu, aby poinformować jądro o użyciu nowej partycji zamiast starej partycjiDostawałem ten problem, ponieważ zapomniałem odmontować urządzenie. Po:
fdisk działał poprawnie.
źródło