Grub выдает сообщения о том, что загрузочный сектор используется другим программным обеспечением. Что я должен делать?


19

Это происходит только с одним из моих компьютеров. Это старый ноутбук, имеющий долгую и разнообразную историю с несколькими операционными системами, но после выхода на пенсию он выступает в качестве сервера для моей домашней сети с использованием Ubuntu 12.04. Это система с одной загрузкой, другие системы не установлены. Время от времени, когда происходит обновление grub, я замечаю следующее сообщение:

Setting up grub-common (1.99-21ubuntu3.4) ...
Installing new version of config file /etc/grub.d/00_header ...
Setting up grub2-common (1.99-21ubuntu3.4) ...
Setting up grub-pc-bin (1.99-21ubuntu3.4) ...
Setting up grub-pc (1.99-21ubuntu3.4) ...
/usr/sbin/grub-setup: warn: Sector 32 is already in use by FlexNet; avoiding it.  This software may cause boot or other problems in future.  Please ask its authors not to store data in the boot track.
Installation finished. No error reported.

Должен ли я беспокоиться об этом? Что (если что) я должен сделать с этим?


1
К вашему сведению, «FlexNet» написана программным обеспечением Flexera для отслеживания лицензий.
holmis83

Я не знаю, когда Google планирует показывать самый голосующий ответ первым в результатах поиска ...
user10089632

@ user10089632 не уверен, на что направлен ваш комментарий? Ответ, который вы связали, на совершенно другой вопрос. Возможно, вам нужно поговорить с Google, но в остальном я не могу вам помочь, так как понятия не имею, какие поисковые запросы вы использовали.
Bobble

Ответы:


25

Это не имеет большого значения, так как об ошибках не сообщается, поэтому просто предупреждаю.

Но, если вы хотите избавиться от этого, вам нужно стереть сектор 32. Для этого у вас есть много вариантов:

а. Вытирая весь жесткий диск;

б. запись нулей в целые сектора в MBR и переустановка grub;

с. Запись нулей в сектор 32 в вашей MBR (это то, что мы будем делать здесь ).

Для этого выполните следующие действия:

  1. Сделайте резервную копию вашей MBR:

    sudo dd if=/dev/sda of=~/first_63_sectors bs=512 count=63
    
  2. обнулите ваш сектор номер 32:

    sudo dd if=/dev/zero of=/dev/sda bs=512 count=1 seek=32
    
  3. chroot и переустановите grub:

    sudo mount /dev/sda* /media/sda*
    
    sudo mount --bind /dev /media/sda*/dev
    
    sudo mount --bind /proc /media/sda*/proc
    
    sudo mount --bind /sys /media/sda*/sys
    
    sudo chroot /media/sda*
    

    PS: замените * на соответствующий номер вашего жесткого диска

    Теперь обновите ваш grub:

    sudo update-grub
    

Примечание. Вы не обязаны выполнять эти действия, поскольку это не является ошибкой, которая может повлиять на вашу систему.


Спасибо Maythux. Более подробная информация об этом в моем собственном ответе (особенно, что делать, если что-то идет не так ...)
Bobble

Я думаю , что ты прав, «оставить в покое» был вариант здесь, но в то же время , я полагаю , это предупреждение там , потому что в будущем это будет вызывать проблемы, так что лучше , чтобы избавиться от него.
Bobble

Добро пожаловать, и я прочитал ваш ответ, это здорово, вы заслуживаете +1

Это не сработало для меня. Я попробовал даже это . Я все еще приветствую загрузчик grub.
Machineaddict

Спасибо, но я не выполнил всю процедуру 3. Я только сделал «sudo update-grub» в процедуре 3 после 1 и 2. Нужно ли «sudo mount ...»?
Улыбнись

2

Я нашел пару полезных ссылок, которые объясняют, о чем говорится в сообщении, и как очистить загрузочные секторы на диске. Эта тема дает очень хорошее объяснение проблемы. Эта ветка дает хороший простой рецепт поваренной книги для чистки вещей.

Кулинарная книга у меня сработала, хотя я немного запутался в песочнице ... (см. Ниже)

Мне повезло в том , что мой компьютер одним задка и у меня нет никаких планов EVER переустановить Windows. Но кажется, что если у вас двойная загрузка системы Windows с программным обеспечением, использующим FlexNet или аналогичное программное обеспечение, вы можете ожидать регулярных проблем. Также я думаю, что некоторые вирусы Windows могут использовать эту часть диска. Первое обсуждение предлагает пользователям Ubuntu решение установить приложение под названием boot-repair на загрузочный USB-диск с live-CD.

Я также обнаружил, что программа восстановления загрузки, упомянутая выше, неоценима, когда что-то идет не так. ИМХО, это настолько полезно, что по умолчанию оно должно быть на Live CD. Смотрите эту ссылку .


0

Меньше ввода в CLI с живым DVD / USB

Вот способ сделать то же самое с меньшим набором текста из командной строки, используя живой DVD или живой USB .

  1. Загрузитесь в живую сессию (= выберите опробовать (X) Ubuntu).
  2. Используйте lsblkкоманду, чтобы показать все разделы диска.

    NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
    sda      8:0    0 298.1G  0 disk 
    ├─sda1   8:1    0   512M  0 part /boot
    ├─sda2   8:2    0   4.5G  0 part [SWAP]
    ├─sda3   8:3    0    44G  0 part /
    └─sda4   8:4    0 249.1G  0 part /home
    sr0     11:0    1  1024M  0 rom  
    

    Убедитесь, что вы выбрали целевой диск (здесь sda).

  3. Снимите FlexNet с поврежденного диска (здесь /dev/sda), используя номер сектора, указанный GRUB (здесь сектор 32):

    $ sudo dd if=/dev/zero of=/dev/sda bs=512 count=1 seek=32
    

    Нет необходимости делать резервную копию этой обычно пустой части расширенной загрузочной записи (EBR) .

  4. Теперь смонтируйте раздел поврежденного диска, который обычно используется для загрузки (здесь /dev/sda1).

    $ sudo mount /dev/sda1 /mnt
    
  5. Наконец, переустановите GRUB на поврежденный диск:

    $ sudo grub-install --boot-directory=/mnt /dev/sda
    

    GRUB теперь должен быть установлен без каких-либо предупреждений.

  6. Теперь вы можете перезагрузиться с вылеченного жесткого диска.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.