Deskryptor sterownika mówi, że fizyczny rozmiar bloku wynosi 2048 bajtów, ale Linux mówi, że to 512 bajtów

19

Gparted pokazuje mu taki komunikat po zeskanowaniu zawartości dysku z tytułem „Ostrzeżenie o libprated”.

Tło:

Stało się to po tym, jak próbowałem zmniejszyć jedną z partycji, aby zrobić miejsce dla innej partycji. Robiłem to z Menedżerem partycji KDE. To zupełnie nowa maszyna, ale jakoś poszło nie tak i nie mogłem zamontować partycji o mniejszych rozmiarach.

Odzyskałem tablicę partycji za pomocą TestDisk, ale system wydawał się oddać Plymouth po wyświetleniu komunikatu o błędzie na temat partycji wymiany (która była pod sda1).

Teraz uruchomiłem LiveCD i mogę montować i przeglądać zarówno system, jak i partycję danych. Utworzyłem nową zamianę.

Co mogę zrobić, aby rozwiązać ten problem? A jakie problemy może to powodować?

unfa
źródło
Zmniejszyłem partycję i dodałem nową, tak jak chciałem, ponownie uruchomiłem komputer i wszystko wydaje się teraz działać dobrze. Uruchomiłem Gparted i nie wzrósł, ostrzega o rozmiarze bloku ponownie.
unfa
Znów mam ten problem - okazało się, że dotyczy on pendrive - komunikat, który wyświetla Gparted, nie mówi, o jakim urządzeniu chodzi ten problem.
unfa
To nie powiedzieć, które urządzenie problem polega. Kiedy pojawi się okno z żądaniem błędu, spójrz w lewy dolny róg głównego okna GParted. Tam jest napisane „Wyszukiwanie partycji / dev / sdX”, a „sdX” odnosi się do wadliwego urządzenia. (Podjąłem kilka prób uświadomienia sobie, że dla mnie również problemem nie była żadna z moich HD, ale pamięć USB, z której uruchomiłem LiveISO z ...)
DevSolar
Czy muszę rozwiązać ten problem przed zmianą rozmiaru partycjonowania?
Merchako
Zdałem sobie sprawę, że problem występuje tylko w przypadku pamięci flash USB, ale Gparted nie mówi, na który dysk wpływa nieprawidłowo zgłoszony rozmiar sektora.
unfa

Odpowiedzi:

21

Problem jest bardzo podobny do poniższego, najprawdopodobniej na urządzeniu uruchomiono polecenie dd, które spowodowało deskryptor niezgodności.

Zapytaj Ubuntu: nie można usunąć partycji z napędu USB (błąd rozmiaru bloku)

Opisany problem został spowodowany przez narzędzie niskiego poziomu (np. Dd) zapisujące bloki w niewłaściwym rozmiarze bezpośrednio na urządzeniu.

Aby to naprawić, musisz ponownie zapisać bloki urządzenia do odpowiedniego rozmiaru. Można to zrobić za pomocą dd. Przed uruchomieniem poleceń sprawdź dwukrotnie urządzenie wyjściowe:

sudo dd if=/dev/zero of=/dev/sdd bs=2048 count=32 && sync

Po wykonaniu ddpolecenia dostęp do urządzenia powinien być możliwy gparted.

Lakmus D.
źródło
Powinieneś zacytować i zacytować odpowiednie informacje z powiązanego pytania.
Ramhound,
Wydaje się, że to nie pomaga.
ulidtko
4
przegłosowano -1; @ulidtko, oczywiście, że to nie pomaga. Naprawdę nie rozumiem, dlaczego zostało to przegłosowane (może lemingi? ...). Odpowiedź jest zła. „bs = 2048” w „dd” cmd NIE tworzy rozmiaru bloku 2048 B. Innymi słowy „bs” nie oznacza „rozmiaru bloku”, ale „rozmiaru bufora”. To, co robi to cmd, bardzo dobrze, buforuje maksymalnie 2048 B w czasie, gdy pisze do woluminu blokowego „of”. Bloki w objętości nie są jednak w żaden sposób zmieniane.
Cbhihe,
1
respondent chyba nie wie, o czym mówi, to nie rozwiązuje problemu. Następnie napotkałem inne komunikaty o błędach podczas próby usunięcia partycji na urządzeniu. Zagłębiając się w kłopoty, nie używaj tego polecenia!
user3182532
1
pomimo hatoful anty lemingów: to rzeczywiście działało dla mnie
krysopath
3

Nie chcę kraść czyjejś pracy; oryginalnym współpracownikiem jest Damiön la Bagh tutaj: https://bugs.launchpad.net/ubuntu/+source/usb-creator/+bug/1708881

Odszukaj literę dysku USB, a następnie wydaj polecenie:

sudo wipefs --all /dev/sdN  

(zamień N na literę dysku; to polecenie powinno zakończyć się natychmiast.)

Uruchom teraz gparted; wybierz pamięć USB, która będzie pusta. Najpierw musisz utworzyć nową tablicę partycji (Urządzenie> Utwórz tablicę partycji). Jeśli nie masz pewności, możesz wybrać „msdos”. Powinno to również zakończyć się za sekundę. Wtedy będziesz mógł tworzyć nowe partycje jak zwykle.

Roberto
źródło
Próbowałem tego na moim dysku twardym, ale problem nadal występuje.
Nav
-2

Zamiast bsparametru potrzebuje obsparametru. Od dd --help:

obs=BYTES       write BYTES bytes at a time (default: 512)

Polecenie wyglądałoby mniej więcej tak:

sudo dd if=/dev/zero of=/dev/sdd obs=2048 count=32 && sync
użytkownik853477
źródło
To wydaje się być komentarzem do odpowiedzi LitmusD. Jeśli chcesz, aby była to odpowiedź na pytanie, edytuj je, aby miało sens dla osoby, która tylko przeczytała pytanie.
Blackwood
dd --helpmówi także „bs =  BYTES       odczytuj i zapisuj do bajtów BYTES jednocześnie”. I dd(1)mówi „bs =  BYTES jednocześnie       odczytuje i zapisuje bajty BYTES (domyślnie: 512); zastępuje ibsi obs ”(wyróżnienie dodane). Samo określenie bspowinno być w porządku.
G-Man mówi „Przywróć Monikę”