HowTo: Jak uruchomić Ubuntu ze specjalnymi opcjami bootowania kernela? NOMODESET, ACPI=OFF, NOAPIC itd.

Awatar użytkownika
igotit4free
Przyjaciel
Przyjaciel
Posty: 6453
Rejestracja: 29 paź 2008, 22:51
Płeć: Mężczyzna
Architektura: x86_64
Lokalizacja: KRK

HowTo: Jak uruchomić Ubuntu ze specjalnymi opcjami bootowania kernela? NOMODESET, ACPI=OFF, NOAPIC itd.

Post autor: igotit4free »

Na pewno dotyczy 10.04 i 10.10, na 99% działa w 11.04. Oczywiście dotyczy bootowania przy użyciu GRUB2. Nie dotyczy Wubi, ale może coś dopiszę ...

Niektóre konfiguracje sprzętowe wymagają uruchomienia systemu ze specjalnymi parametrami bootowania kernela. Z sytuacją taką spotykamy się w przypadku, gdy przykładowo:
- zamiast menu wyboru systemów lub pulpitu widzimy czarny ekran lub splasha z artefaktami
- podświetlenie wyświetlacza LCD jest niewłaściwe
- niewłaściwa jest obsługa ACPI (szwankuje zarządzanie energią, zasilanie dysków, portów USB, budzenie i usypianie komputera, występują kłopoty z obsługą wentylatorów, czujników temperatury etc).
- nie działa mysz albo klawiatura
- inne :roll:
DOSTĘPNE OPCJE SPECJALNE:
  • nomodeset
    W najnowszych wersjach kerneli ustawienia "video mode" zaszyto w samym kernelu. Pozwala to na zastosowanie pewnych funkcjonalności jeszcze zanim wystartuje serwer X. Daje to np. możliwość uruchomienia ekranu bootowania i/lub logowania w wysokiej rozdzielczości i bez migotania. Niestety, niektóre karty graficzne nie radzą sobie z takimi ustawieniami, skutkiem czego zamiast zamierzonych efektów dostajemy słynny "czarny ekran".
    Ważne! Opcja ta bywa wykorzystywana przez karty nVidia, które używają domyślnie sterowników "nouveau". Instalacja sterownika własnościowego zazwyczaj zwalnia z konieczności używania tej opcji.
  • acpi_osi=
    Dodanie tej opcji zazwyczaj rozwiązuje problem z niewłaściwym podświetlaniem ekranów LCD oraz niewłaściwą obsługą wentylatorów i/lub czujników temperatury.
    Źródłem problemów jest fakt, iż niektóre BIOS-y zawierają poprawki stosowne dla obsługi sprzętu pod określoną wersją MS Windows (zwłaszcza Vistą) i nie chcą działać pod innymi systemami operacyjnymi.
    Możliwe ustawienia:
    acpi_osi= - powoduje, że kernel nie odpowiada na zapytania.
    acpi_osi="Linux" - do wykorzystania z BIOS-ami z obsługą tejże funkcji dla Linuksa.
    acpi_osi="Windows 2006" - kernel udaje, że jest Vistą.
  • acpi=off
    Całkowicie wyłącza ACPI.
    Ważne! Opcji tej należy używać z rozsądkiem, zwłaszcza na laptopach obserwując parametry cieplne i sposób zarządzania ładowaniem baterii i czasem jej pracy. Użycie tej opcji może prowadzić do uszkodzenia sprzętu (przegrzanie). Szerzej o ustawieniach tutaj => Debugging ACPI.
  • noapic lub nolapic
    Opcje odpowiadające za "programową kontrolę przerwań", użycie może pomóc w rozwiązaniu problemów z klawiaturą, myszką, i zarządzeniem energią (uśpienie/przywrócenie z uśpienia).
  • vmalloc=xxxM
    Opcja pomocna w przypadku wystąpienia problemów z "wirtualnym adresowaniem przestrzeni"(???) W konfiguracjach z nVidia Geforce 7350 i niektórymi kartami TV, problemy objawiają się w logach komunikatami w rodzaju:
    allocation failed: out of vmalloc space - use vmalloc=<size> to increase size.
    Rozwiązaniem jest zastosowanie innej wartości vmalloc, więcej tutaj => MythTV
URUCHOMIENIE SYSTEMU ZE SPECJALNYMI PARAMETRAMI BOOTOWANIA KERNELA - LIVE CD/USB.
  • Uruchom komputer z przygotowaną wcześniej płytą lub bootowalnym pendrive z Ubuntu. Zaraz po tym jak zniknie ekran startowy BIOS-a naciśnij dowolny klawisz, (albo ESC, albo SHIFT)powinien pojawić się taki lub zbliżony wyglądem ekran, wciśnij F6, powinieneś zobaczyć menu opcji =>
    Obrazek
    Wybierz interesującą, zatwierdź Enterem.
    Ważne! Zmiana będzie obowiązywać na czas trwania sesji Live albo np. instalacji systemu, jednak nie zostanie zapamiętana. Ponowne uruchomienie w kolejnej sesji Live albo po instalacji wymaga ponownego wyboru danej opcji.
JEDNORAZOWE URUCHOMIENIE SYSTEMU ZAINSTALOWANEGO NA DYSKU ZE SPECJALNYMI OPCJAMI BOOTOWANIA KERNELA.
  • Z sytuacją taką mamy do czynienia, kiedy coś w naszym zainstalowanym systemie nie działa i chcemy przetestować jak zachowa się system z wykorzystaniem danej opcji specjalnej. W tym celu jednorazowo i nietrwale edytujemy konfigurację GRUB-a.
    Kiedy pojawia się menu GRUB wybierz pozycję z której komputer uruchamia się domyślnie i wciśnij "E"-(edit). Następnie poszukaj linii zaczynającej się od:
    linux /boot
    i przejdź na jej koniec, dopisz tam żądaną opcję, np. nomodeset. Przykładowo zapis oryginalny to:
    linux /boot/vmlinuz-2.6.31-11-generic root=UUID=cb201140-52f8-4449-9a95-749b27b58ce8 ro quiet splash
    po Twojej edycji winno być:
    linux /boot/vmlinuz-2.6.31-11-generic root=UUID=cb201140-52f8-4449-9a95-749b27b58ce8 ro quiet splash nomodeset
    Wciśnij Ctrl+X, zabootuje to wybraną pozycję w zmienionym kształcie. Jak już wspomniałem ustawienie będzie aktywne do ponownego uruchomienia komputera.
TRWAŁA ZMIANA SPOSOBU STARTOWANIA SYSTEMU ZAINSTALOWANEGO NA DYSKU ZE SPECJALNYMI OPCJAMI BOOTOWANIA KERNELA.
  • W sytuacji, gdy okazało się, że zmiana opcji bootowania przynosi pożądany skutek np. kończą się nagłe zawieszenia systemu, mysz zachowuje się w sposób przewidywalny, nie pojawiają się artefakty na ekranie ani tym bardziej komputer nie zawiesza się już na etapie uruchomienia warto zapisać takie ustawienie na stałe.
    W terminalu wykonaj:

    Kod: Zaznacz cały

    sudo gedit /etc/default/grub
    co spowoduje otwarcie pliku konfiguracyjnego GRUB-a.
    Poszukaj bloku tekstu:
    GRUB_DEFAULT=0
    #GRUB_HIDDEN_TIMEOUT=0
    GRUB_HIDDEN_TIMEOUT_QUIET=true
    GRUB_TIMEOUT=10
    GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
    GRUB_CMDLINE_LINUX=""
    i zmień zapis w linii z tekstem GRUB_CMDLINE_LINUX_DEFAULT, dodając zapis stosowny do wybranej opcji, w przypadku nomodeset winno to być:
    GRUB_DEFAULT=0
    #GRUB_HIDDEN_TIMEOUT=0
    GRUB_HIDDEN_TIMEOUT_QUIET=true
    GRUB_TIMEOUT=10
    GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset"
    GRUB_CMDLINE_LINUX=""
    Ważne! Jeśli dodajesz opcję, która winna być zapisana w cudzysłowie, zapis powinien mieć formę:
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset acpi_osi=\"Linux\""
    a nie samo:
    GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset acpi_osi="Linux"
    Przy okazji ... opcje specjalne jak widać można grupować. ;-)
    Zapisz plik i opuść edytor.
    Aby zmiany zostały odnotowane, konieczna jest aktualizacja konfiguracji GRUB-a. Wykonaj w terminalu:

    Kod: Zaznacz cały

    sudo update-grub
    Przy następnym uruchomieniu systemu ze zmodyfikowanej pozycji menu zapis "nomodeset" (lub dowolna inna użyta opcja specjalna) będzie brana pod uwagę.
Poradnik jest swobodnym tłumaczeniem i kompilacją materiałów z: GRUB2, Kernel Compile, Boot Option i ubuntuforums.org. Autorom oczywiście dziękuję.
ODPOWIEDZ

Wróć do „Instalacja i konfiguracja systemu”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 66 gości