czwartek, 3 marca 2011

Nie do końca udana wirtualizacja MeeGo w VirtualBoxie

Na początek od razu wyjasnię o co chodzi w tytule, bo wiem, że może on nie zachęcać do czytania dalej. Przez ostatnie kilka dni, mając trochę wolnego czasu postanowiłem przetestować pełną wersję MeeGo Netbook w środowisku wirtualnym z którego zawsze korzystam, czyli w VirtualBoxie. Skłoniło mnie do tego nie tylko to, że wersja dostępna w emulatorze QEMU (jak zainstalować środowisko uruchomieniowe pisałem we wpisie MeeGo - pierwsze starcie) jest mocno okrojona, ale również to, że działa ona dosyć powoli. Miałem nadzieję, że w VirtualBoxie będzie inaczej, bo to w końcu uznana marka wśród narzędzi do wirtualizacji. Sama instalacja pomimo tego, że nie obyła się bez problemów zakończyła się sukcesem. Niestety problem z powolnym działaniem systemu i brakiem jego responsywności również tutaj był mocno widoczny. Próbowałem różnych sposobów i ostatecznie żaden nie pomógł. Nawet deweloperzy MeeGo sami twierdzą, że z VirtualBoxem mogą być problemy i w miarę możliwości zachęcają do instalacji systemu na kompatybilnych urządzeniach.

Pomimo tego, że MeeGo w VirtualBoxie nie działa zachwycająco, to dla osób, które nie mają odpowiedniego sprzętu do dyspozycji lub nie chcą instalować kolejnego systemu jedynie w celach testowych na maszynie, na której pracują na co dzień, myślę, że zastosowanie VirtualBoxa może być dobrym rozwiązaniem. W tym wpisie nie będę szczegółowo rozpisywał się na jakie problemy napotkałem podczas instalacji MeeGo w VirtualBoxie, a jedynie przedstawię niezbędne kroki, które pozwolą na instalację i uruchomienie systemu.

Pobranie obrazu instalacyjnego

Płytę z obrazem instalacyjnym MeeGo Netbook pobieramy ze strony: http://meego.com/downloads/releases/netbook. Ponieważ VirtualBox nie widzi płyt img możemy bez żadnego problemu zmienić rozszerzenie pobranego pliku na iso.

Utworzenie nowej maszyny wirtualnej

Dalej należy utworzyć pustą maszynę wirtualną. W kreatorze VirtualBoxa, który do tego służy możemy podać następujące parametry:
  • nazwa: MeeGo Netbook v1.1
  • typ systemu: Linux/Fedora
  • pamięć: 512MB
  • dysk: dynamicznie rozszerzalny, 8GB
Dodatkowo samodzielnie należy wejść do opcji i ustawić parametry jak poniżej:
  • SystemProcesorWłącz PAE/NX
  • EkranWideoWłącz akcelerację 3D
  • Nośnikikontroler IDEChoose a virtual CD disc file (wskazujemy na wcześniej pobrany plik z obrazem).
Instalacja MeeGo NetBook

Po uruchomieniu systemu wirtualnego powinno nam się pojawić okienko jak poniżej:

Wybieramy na nim opcję "Instalation only". Po chwili czekania powinna się rozpocząć instalacja systemu. Wita nas ona takim obrazkiem:

Na kolejnych ekranach wystarczy jedynie ustawić język i skonfigurować dysk. W przypadku pustego dysku wirtualnego nie jest to zbytnio skomplikowane. Potwierdzamy jedynie komunikaty, które się pojawią. O zakończeniu instalacji zostaniemy powiadomieni obrazem jak poniżej:
Kliknięcie na przycisk Zamknij spowoduje restart maszyny wirtualnej. Warto ją w tym momencie w ogóle zatrzymać i odmontować z napędu CD płytę instalacyjną.

Po ponownym uruchomieniu systemu powinniśmy zobaczyć kreator pierwszego uruchomienia. Pyta nas on o ustawienia klawiatury, strefę czasową i prosi o utworzenie użytkownika.

Jeśli system teraz wystartuje to mamy szczęście :-) Ja tego szczęścia niestety nie miałem i zobaczyłem czarny ekran. Po ponownym restarcie komputera wyświetlił mi się tylko obraz tła.

Problem przy pierwszym uruchomieniu

Przy rozwiązywaniu problemów, które zaczęły się pojawiać bardzo pomocna okazała się ta strona na Wiki MeeGohttp://wiki.meego.com/MeeGo_1.0_Netbook_VirtualBox. Korzystając z porad tam zawartych wykonałem następujące czynności:
  • Resetujemy maszynę wirtualną i zanim zacznie startować system wciskamy Escape, a następnie Tab.
  • Pojawi nam się linijka z tekstem jak na obrazku poniżej, którą możemy wyedytować. Kasujemy tutaj słowo 'quiet' i dodajemy literkę 's'.
  • Klikamy Enter i czekamy. Po chwili powinniśmy zobaczyć wiersz poleceń ze znaczkiem zachęty symbolizującym tryb administracyjny. Skoro już tutaj jesteśmy warto ustawić hasło roota (polecenie 'passwd') i zainstalować 2 przydatne narzędzia (wget i nano), które mogą okazać się niezbędne na kolejnych etapach konfiguracji.
    zypper install wget nano
  • Następnie w konsoli wpisujemy następujące polecenie:
    chmod +s /usr/bin/Xorg
  • i restartujemy system:
    reboot
Teraz system powinien wystartować, ale wcale nie ma takiej pewności :-) U mnie na jednym komputerze opisane podejście zadziałało, a na innym nie przyniosło żadnego rezultatu.

Jeśli system ciągle nie startuje warto sprawdzić, czy nie występuje problem jak ten opisany na forum MeeGo w wątku: INIT: Id "x" respawning too fast: disabled. U mnie właśnie tak było i polecam sprawdzić opisane tam rozwiązanie.

Jeśli będziemy mieć szczęście (a na pewno w końcu się uda ;) ) to system powinien  wystartować i przywitać nas ekranem jak ten poniżej:

Próba włączenia wsparcia OpenGL

Niestety, tak jak wspomniałem na początku, MeeGo w podstawowej konfiguracji w Virtualboxie nie zachwyca szybkością - chodzi tak samo ociężale jak wersja dostępna na QEMU. Na Wiki MeeGo jest rozwiązanie tego problemu, ale przyznam szczerze, że u mnie nie działa. Testowałem to na kilka sposobów i albo nie było żadnego efektu, albo system nie mógł wystartować. Opiszę jednak kroki, które wykonałem, bo może u kogoś zadziała lub po prostu ktoś będzie w stanie podpowiedzieć mi co źle robiłem.

Po kolei co należy zrobić, aby spróbować uruchomić akcelerację OpenGl w MeeGo zainstalowanego w VirtualBox (w skrócie):
  • Uruchamiamy okienko terminala: zakładka Aplikacje → Narzędzia systemowe.
  • Instalujemy następujące pakiety i restartujemy system:
    sudo zypper install gcc make kernel-netbook-devel patch nano wget yum yum-utils 
    sudo reboot
  • Instalujemy dodatki VirtualBoxa. Przed wykonaniem poniższych czynności najpierw należy wybrać w opcjach maszyny: Urządzenia → Zainstaluj dodatki.
    sudo mount /dev/sr0 /mnt 
    cd /mnt 
    sudo ./VBoxLinuxAdditions-x86.run
    sudo reboot
  • Tworzymy katalog tymczasowy i próbujemy pobrać źródła Cluttera z repozytorium:
    cd ~
    mkdir tmp
    cd tmp
    yumdownloader --source clutter
  • Niestety u mnie ta próba kończy się niepowodzeniem. Dostaję komunikat podobny do tego:
    Error: Cannot retrieve repository metadata (repomd.xml) for repository: meego-core. Please verify its path and try again 
  • Nie pozostaje nam zatem nic innego jak samodzielne pobranie odpowiedniego archiwum ze źródłami
    wget http://repo.meego.com/MeeGo/releases/1.1/core/repos/source/clutter-1.2.8-2.131.src.rpm
    rpm2cpio clutter-1.2.6-2.2.src.rpm|cpio -id
    tar jvxf clutter-1.2.6.tar.bz2
  • Następnie pobieramy zależności do zbudowania Cluttera. Można to zrobić instalując pakiet clutter-devel, co pozwoli na automatyczne dociągnięcie wszystkich zależnych pakietów:
    sudo zypper install clutter-devel
  • Ostatecznie uruchamiamy procedure budowania i instalacji Cluttera. Między czasie pobieramy i stosujemy dodatkowa łatkę z forum MeeGo.
    cd clutter-1.2.8
    wget http://wiki.meego.com/images/Clutter-xvisual-patch.txt
    patch -p1 < ./Clutter-xvisual-patch.txt
    ./configure --prefix=/usr
    make
    sudo make install
    reboot
Po wykonaniu opisanych czynności restartujemy komputer. Należ się również upewnić, że jest włączona akceleracja 3D w ustawieniach VirtualBoxa.

Prezentacja systemu

Na koniec wpisu załączam małą galerię slajdów wykonanych nie tylko na kolejnych etapach instalacji i konfiguracji MeeGo w Virtualboxie, ale również slajdy prezentujące wygląd poszczególnych ekranów systemu.

2 komentarze:

Anonimowy pisze...

ja myślę że najpierw trzeba użyć pach a dopiero później kompilować.. może się myle ale właśnie będę próbował :D

Rafał Petryniak pisze...

mam nadzieje, że twórcy MeeGo naprawili już te problemy, ponieważ dobrze wiedzieli o ich istnieniu - tak przynajmniej wynika z lektury forum MeeGo

tak czy owak życzę powodzenia w testowaniu MeeGo w VirtualBoxie i czkam na jakiś feedback czy się udało :)

Prześlij komentarz