Komunikat „Plik rzadki niedozwolony” po instalacji w systemie plików btrfs

25

Zainstalowałem Ubuntu bez tworzenia partycji wymiany i /na btrfs. # Teraz otrzymuję komunikat „Rozrzedzony plik jest niedozwolony” przy każdym uruchomieniu. Ten komunikat pojawia się przed ekranem powitalnym. Czy istnieje sposób na zabicie tego ostrzeżenia?

FUZxxl
źródło
W moim systemie naciśnięcie dowolnego klawisza nic nie robi, utknęło!
Michael
1
Roztwór w 2016 jest zestawem GRUB_SAVEDEFAULT=falsew /etc/default/grubi prowadzonyupdate-grub
Stuart Cardall

Odpowiedzi:

33

OK, po tym, jak trochę szperałem wokoło, znalazłem sposób, aby pozbyć się tego problemu, przynajmniej tymczasowo, jest to dość proste, ale nie mam konfiguracji systemu z btrfs, więc nie mogę potwierdzić tej poprawki.

skomentuj lub usuń ten wiersz:

if [ -n ${have_grubenv} ]; then save_env recordfail; fi

lub

if [ -n "\${have_grubenv}" ]; then if [ -z "\${boot_once}" ]; then save_env \
recordfail; fi; fi

w tym pliku

/etc/grub.d/00_header

następnie uruchomić

update-grub

powodem tego, że nie edytujesz /boot/grub/grub.cfgbezpośrednio, jest to, że będzie nadpisywane za każdym razem, gdy grub jest aktualizowany, w takim przypadku będziesz musiał „ponownie zrobić” poprawkę, jeśli zwykłe pakiety gruba zostaną zaktualizowane.

To jest błąd w starterze, jeśli chcesz dodać sobie błąd # 736743

Cytując Colina Watsona z raportu o błędzie

Jest to w rzeczywistości mylący komunikat o błędzie: dzieje się tak, że implementacja btrfs GRUB-a nie implementuje interfejsu przechwytującego odczyt plików do zwracania list bloków do wywołania kodu. Napisałem na grub-devel o tym, a opiekun nadrzędny zwrócił uwagę, że nawet poza problemami z wieloma urządzeniami, pisanie do btrfs z GRUB-a jest zasadniczo ryzykowne, ponieważ:

ten sam blok może być używany przez wiele migawek, każde drzewo, które korzysta z danego bloku, będzie zawierało sumę kontrolną itd. rekurencyjnie

Jednak btrfs rezerwuje miejsce na początku dla modułu ładującego. Ta przestrzeń jest czymś więcej niż GRUB musi się osadzić, więc możemy użyć 1 KB dla bloku środowiska.

W każdym razie nie jest to nowy problem, który powstał podczas korzystania z podwoluminów, ani nie uniemożliwia rozruchu (pojawia się fałszywy monit „Naciśnij dowolny klawisz, aby kontynuować”, ale jeśli go zignorujesz, i tak się uruchomi). Przejście na listę życzeń.

Mam nadzieję że to pomoże

Allan
źródło
1
Czy potrafisz znaleźć wyjaśnienie, dlaczego na początku wyrzuca ten błąd? Dzięki. :)
jrg
W moim pliku konfiguracyjnym wiersz wygląda następująco:if [ -n "\${have_grubenv}" ]; then if [ -z "\${boot_once}" ]; then save_env recordfail; fi; fi
FUZxxl,
1
Chciałbym skomentować. Jeśli się nie uruchomi, nadal możesz odkomentować linię za pomocą dysku na żywo
Allan
w porządku. Spróbuję tego.
FUZxxl
2
Fajnie, działa!
FUZxxl
1

Prowadzę dział rozwoju Raring Ringtail.
Ten sam problem występował w przypadku komunikatu o niedozwolonym pliku rzadkim. GRUB w ogóle się nie wyświetla i uruchamia się bezpośrednio w Ubuntu.

Czytałem Linux Magazine (LXF), który zawierał kilka artykułów na temat odzyskiwania i naprawy partycji, plików, programów ładujących i innych rzeczy.

Jeden z autorów artykułów wspomniał o prostym narzędziu, które ma być używane ... Naprawa rozruchu .
To narzędzie załatwiło sprawę i moim zdaniem powinno zająć znaczące miejsce w repozytoriach Ubuntu.

Dodaj Boot-Repair do swojego systemu:

  1. Otwórz okno terminala i skopiuj / wklej / wpisz następujące polecenie:

    sudo add-apt-repository ppa:yannubuntu/boot-repair && sudo apt-get update
    
  2. Skopiuj / wklej / wpisz następujące informacje, aby zainstalować i uruchomić Boot-Repair:

    sudo apt-get install -y boot-repair && boot-repair
    
  3. Główny GUI Boot-Repair jest teraz widoczny.

    Click on a button called 'Recommended repair'.
    

    Niech narzędzie zrobi to „magiczne”.

  4. Kiedy zaklęcie się skończy,

    create a little note of the url visible. 
    
  5. Uruchom ponownie system i sprawdź, czy możesz uzyskać dostęp do odzyskanych systemów operacyjnych.

  6. W przypadku braku powodzenia skorzystaj z adresu URL podanego na końcu naprawy, aby uzyskać pomoc.

C Schilder
źródło
Nie sądzę, żeby to pomogło, ponieważ jest to błąd w samym jedzeniu.
FUZxxl,
Dlaczego myślisz, że? Zrobiłem kilka wirtualnych instalacji 13.04, wszystkie miały ten sam problem. Edytowano grub.cfg, brak wyników. To nie rozwiązało w ogóle komunikatu „niedozwolony plik rzadki”. GRUB też nie był widoczny. Po wypróbowaniu rozwiązania, które przedstawiłem dzisiaj w swoim poście, zadziałało jak urok i nadal nim jest.
C Schilder,
Niestety nie działa w 14.04 Trusty amd64
przegrany114491