Grub podaje komunikaty o sektorze rozruchowym używanym przez inne oprogramowanie. Co powinienem zrobić?

19

Dzieje się tak tylko z jednym z moich komputerów. Jest to starszy laptop, który ma długą i zróżnicowaną historię z kilkoma systemami operacyjnymi, ale po przejściu na emeryturę działa jako serwer dla mojej sieci domowej za pomocą Ubuntu 12.04. Jest to system z jednym uruchomieniem, nie ma innych zainstalowanych systemów. Za każdym razem, gdy pojawia się aktualizacja grub, zauważam taki komunikat:

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.

Czy powinienem się tym martwić? Co (jeśli cokolwiek) powinienem z tym zrobić?

Bobble
źródło
1
Do Twojej wiadomości, „FlexNet” jest napisany przez oprogramowanie Flexera w celu śledzenia licencji.
holmis83
Nie wiem, kiedy Google planuje w wynikach wyszukiwania wyświetlać najbardziej pozytywną odpowiedź w pierwszej kolejności ...
user10089632
@ user10089632 nie wiesz, do czego zmierza twój komentarz? Odpowiedź, którą podałeś, to zupełnie inne pytanie. Być może musisz porozmawiać z Google, ale w przeciwnym razie nie mogę ci pomóc, ponieważ nie mam pojęcia, jakich wyszukiwań używasz.
Bobble

Odpowiedzi:

25

To nie jest wielka sprawa, ponieważ nie zgłoszono żadnego błędu, więc tylko ostrzeżenie.

Ale jeśli chcesz się tego pozbyć, musisz wyczyścić sektor 32. Aby to zrobić, masz wiele możliwości:

za. Czyszczenie całego dysku twardego;

b. zapisywanie zer do całych sektorów w MBR i ponowna instalacja grub;

do. Zapisywanie zer do sektora 32 w twoim MBR ( właśnie to tutaj zrobimy ).

Aby to zrobić, wykonaj następujące kroki:

  1. Utwórz kopię zapasową MBR:

    sudo dd if=/dev/sda of=~/first_63_sectors bs=512 count=63
    
  2. wyzeruj numer sektora 32:

    sudo dd if=/dev/zero of=/dev/sda bs=512 count=1 seek=32
    
  3. chroot i ponownie zainstaluj 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: zamień * na odpowiednią liczbę dysku twardego

    Teraz zaktualizuj swój grub:

    sudo update-grub
    

Uwaga: Nie musisz wykonywać tych kroków, ponieważ nie jest to błąd, który może wpłynąć na twój system.

amc
źródło
Dzięki maythux. Więcej informacji na ten temat w mojej własnej odpowiedzi (zwłaszcza co zrobić, gdy coś pójdzie nie tak ...)
Bobble,
Myślę, że masz rację, „zostawić w spokoju” została opcja tutaj, ale w tym samym czasie ja figura ostrzeżenie jest tam, ponieważ w przyszłości będzie powodować problemu, więc lepiej się go pozbyć.
Bobble,
Nie ma za co i przeczytałem twoją odpowiedź, że zasługujesz na +1
To mi nie zadziałało. Próbowałem nawet tego . Nadal witam się z bootloaderem grub.
machineaddict,
Dzięki, ale nie wykonałem całej procedury 3. Zrobiłem tylko „sudo update-grub” w procedurze 3 po 1 i 2. Czy konieczne jest „sudo mount ...”?
Uśmiech
2

Znalazłem kilka przydatnych linków, które wyjaśniają, o czym jest komunikat i jak wyczyścić sektory rozruchowe na dysku. Wątek ten bardzo dobrze wyjaśnia problem. Ten wątek zawiera ładny, łatwy przepis na książkę kucharską na czyszczenie rzeczy.

Książka kucharska działała dla mnie, chociaż zrobiłem bałagan z chrootingiem ... (patrz poniżej)

Mam szczęście, że mój komputer jest uruchamiany pojedynczo i nigdy nie planuję NIGDY ponownej instalacji systemu Windows. Ale wydaje się, że jeśli masz system Windows z podwójnym uruchomieniem i oprogramowaniem korzystającym z FlexNet lub podobnego oprogramowania, możesz spodziewać się regularnych problemów. Myślę też, że niektóre wirusy Windows mogą korzystać z tej części dysku. Pierwsza dyskusja na temat wątku oferuje rozwiązanie dla użytkowników Ubuntu, polegające na zainstalowaniu aplikacji o nazwie boot-repair na urządzeniu USB z aktywnym CD na żywo.

Uważam też, że wspomniany powyżej program do naprawy rozruchu jest nieoceniony, gdy coś pójdzie nie tak. IMHO jest to tak przydatne, że powinno domyślnie znajdować się na Live CD. Zobacz ten link .

Bobble
źródło
0

Mniej pisania na CLI dzięki Live DVD / USB

Oto sposób na zrobienie tego samego przy mniejszym wpisywaniu wiersza poleceń, za pomocą DVD na żywo lub USB na żywo .

  1. Uruchom sesję na żywo (= wybierz wypróbowanie (X) Ubuntu).
  2. Użyj lsblkpolecenia, aby wyświetlić wszystkie partycje dysku.

    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  
    

    Upewnij się, że celujesz na dysk, którego dotyczy problem (tutaj sda).

  3. Usuń FlexNet z odpowiedniego dysku (tutaj /dev/sda), używając numeru sektora zgłoszonego przez GRUB (tutaj sektor 32):

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

    Nie ma potrzeby tworzenia kopii zapasowej tej zwykle pustej części rozszerzonego rekordu rozruchowego (EBR) .

  4. Teraz zamontuj partycję odpowiedniego dysku, która zwykle jest używana do uruchamiania systemu (tutaj /dev/sda1).

    $ sudo mount /dev/sda1 /mnt
    
  5. Na koniec zainstaluj ponownie GRUB na zagrożonym dysku:

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

    GRUB powinien teraz zainstalować bez żadnych ostrzeżeń.

  6. Teraz możesz bezpiecznie zrestartować komputer ze zdezynfekowanego dysku twardego.

Serge Stroobandt
źródło