Дескриптор драйвера говорить, що фізичний розмір блоку становить 2048 байт, але Linux каже, що це 512 байт


19

Gparted показує таке повідомлення після сканування вмісту диска з назвою "Libprated попередження".

Фон:

Це сталося після того, як я спробував зменшити один з розділів, щоб звільнити місце для іншої секції. Я робив це з менеджером розділів KDE. Це абсолютно нова машина, але якимось чином пішла не так, і мені не вдалося встановити перегороджуваний розмір.

Я відновив таблицю розділів за допомогою TestDisk, але система, здавалося, подала руку в Plymouth після того, як показала повідомлення про помилку щодо розділу swap (який знаходився під sda1).

Зараз завантажили LiveCD, і я можу монтувати та переглядати як систему, так і розділ даних. Я створив новий своп.

Що я можу зробити, щоб виправити це питання? І які проблеми можуть спричинити це?


Я скоротив розділ і додав новий, як хотів, перезавантажив машину, і все, здається, працює нормально. Я запустив Gparted, і він не піднявся, він попереджає про розмір блоку знову.
недобре

У мене знову виникає ця проблема - виявилося, що це стосується маятника - повідомлення про те, що на дисплеях Gparted не вказується, про який пристрій йдеться про цю проблему.
несправжнє

Це дійсно говорить вам, про який пристрій йдеться. Коли з’явиться запитувач помилок, подивіться у лівому нижньому куті головного вікна GParted. Там він читає "Пошук / dev / sdX розділів", при цьому "sdX" посилається на несправний пристрій. (Зробив мені кілька спроб усвідомити, що і для мене ця проблема не була жодною з моїх HD, але USB-накопичувач я завантажив LiveISO з ...)
DevSolar

Чи потрібно мені вирішити цю проблему перед тим, як змінити розмір розгляду?
Мерчако

Я зрозумів, що проблема трапляється лише для USB-флеш-пам’яті, але Gparted не каже, на який привід впливає поганий розмір сектору.
недобре

Відповіді:


21

Проблема дуже схожа на описану нижче, швидше за все, над пристроєм перебігала команда dd, яка викликала дескриптор невідповідності.

Попросити Ubuntu: Неможливо видалити розділи USB-накопичувача (помилка розміру блоку)

Проблема, яку ви описуєте, була викликана інструментом пристрою низького рівня (наприклад, ДД) блоків запису неправильного розміру безпосередньо на пристрій.

Щоб виправити це, вам потрібно переписати блоки пристроїв до відповідного розміру. Це можна зробити за допомогою dd. Двічі перевірити свій вихідний пристрій перед запуском команд:

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

Як тільки ddкоманда виконана, ви зможете отримати доступ до свого пристрою через gparted.


Вам слід навести та навести відповідну інформацію із пов'язаного питання.
Рамхаунд

Здається, це не допомагає.
ulidtko

4
знижений -1; @ulidtko, звичайно це не допомагає. Я дійсно не розумію, чому це було сприйнято (можливо, лемінги? ...). Відповідь неправильна. 'bs = 2048' у 'dd' cmd НЕ робить розмір блоку 2048 B. Іншими словами, "bs" не означає "розмір блоку", а "розмір буфера". Хоча цей cmd робить дуже добре, це буферизація щонайменше 2048 B за той час, коли записується до блоку "з". Блоки в обсязі не змінені жодним чином.
Cbhihe

1
відповідь, здається, не знає, про що він говорить, це не вирішує питання. Після цього я зіткнувся з іншими повідомленнями про помилки при спробі видалити розділи на пристрої. Поглиблюючись у проблеми, не використовуйте цю команду!
користувач3182532

1
незважаючи на химерні анти лемінги: це справді спрацювало для мене
крисопат

3

Я не хочу красти чужу роботу; оригінальним дописувачем є Даміон Ла Баг тут: https://bugs.launchpad.net/ubuntu/+source/usb-creator/+bug/1708881

Визначте лист свого USB-накопичувача та вкажіть команду:

sudo wipefs --all /dev/sdN  

(замініть N літерою диска вашого диска; ця команда повинна виконати миттєво.)

Запуск згорнутий зараз; виберіть USB-накопичувач, який виявиться порожнім. Спочатку доведеться створити нову таблицю розділів (Пристрій> Створити таблицю розділів). Якщо ви не впевнені, можете вибрати "msdos". Це також має завершитись за секунду. Тоді ви зможете створити нові розділи, як зазвичай.


Спробував це на моєму жорсткому диску, але проблема все ще зберігається.
Nav

-2

Замість bsпараметра йому потрібен obsпараметр. Від dd --help:

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

Команда буде щось на зразок:

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

Здається, це коментар до відповіді LitmusD. Якщо ви маєте намір відповісти на запитання, будь ласка, відредагуйте його так, щоб він мав сенс для того, хто лише прочитав питання.
Блеквуд

dd --helpтакож говорить, що "bs =  BYTES       читають і записують одночасно до байтів BYTES ". І dd(1)говорить “bs =  BYTES       читати і записувати до байтів BYTES за один раз (за замовчуванням: 512); зміни ibsта obs "(наголос додано). Тож конкретизація bsповинна бути просто чудовою.
G-Man каже: "Відновіть Моніку"
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.