Tag: ubuntu

Ubuntu Linux + Dell Latitude z technologią Optimus

Wstęp

Ostatnimi dniami stałem się (nie)szczęśliwym posiadaczem laptopa Dell Latitude, wyposażonego w dwie karty graficzne. Jak to w dwie? A no procesory i5 i i7 mają w sobie wbudowaną kartę graficzną Intela. Proces integracji coraz większej liczby elementów w jednej małej obudowie trwa od dawna, nic dziwnego, że nie ominął GPU. GPU wbudowane w procesor świetnie nadaje się do zastosowań takich jak przeglądanie internetu, czy też pisanie w Wordzie. Do gier i multimediów wciąż warto mieć zewnętrzny procesor graficzny.

Optimus, Optimus, Optimus

Na bardzi fajny pomysł wpadli inżynierowie w Intelu - dlaczego nie wziąć słabej karty kiedy wystarczy a mocnej kiedy potrzeba? Spadnie wtedy drastycznie zużycie prądu podczas normalnej pracy (zewnętrzne GPU będzie wyłączone), a kiedy będzie trzeba - przełączy się na mocniejszą "multimedialną" kartę. Rozwiązanie rzecz jasna działa świetnie na Windowsie...

Optimus jako Megatron

Niestety wygląda na to, że NVidia przestała ostatnio lubić się z Linuksem, ponieważ Optimus nie dostał sterowników dedykowanych dla Linuksa. Na domiar złego, jeśli włączymy w BIOSie samą technologię, nasz system będzie widział dwie karty, trzymał obie włączone ale używał tylko tej wbudowanej w CPU. Nie ma to jak mieć kartę która nic nie robi a zjada całkiem sporo prądu. W taki oto sposób (nie wydając sterowników) mamy z technologii Optimus bardzo złego Megatrona. Nic nie robi a zużywa zasoby.

Bumblebee na ratunek

Szybko znaleźli się jednak fanatycy, którzy postanowili sami zaimplementować Optimusa na Linuksy. Tak powstał Bumblebee. Instalacja jest całkiem prosta, sprowadza się do pobrania repozytorium i uruchomienia instalacji. Niestety wraz z instalacją Bumblebee pojawia się kilka problemów:

  • nie na wszystkich laptopach działa;
  • jeśli działa to nie zawsze prawidłowo;
  • psuje Unity (i ogólnie "ładność" - zostaje tylko taki podstawowy theme bez cieni, itd);
  • system nie chce się wyłączać;
  • nie działa panel administracyjny kartą NVidii;
  • po poprawkach w xorg.conf - przestają całkiem działać Xy.

Powyższa lista zastrzeżeń, na pewno z czasem się zmniejszy jednak póki co - nie jest zbyt kolorowo.

Nie ma to jak półśrodki

Jedynym sensownym (póki co) rozwiązaniem jest wyłączenie trybu Optimus w BIOSie swojego komputera. Po zrobieniu tego, w systemie widnieje tylko jedna (zewnętrzna) karta graficzna i to przez nią "lecą" wszystkie obliczenia.

Powiesz szczerze, że czuję się trochę zawiedziony poczynaniami NVidii która zawsze uchodziła za producenta wspierającego rozwiązania na Linuksy. Od niepamiętnych czasów było tak, że jeśli ktoś kupował komputer pod Linuksa - brał z kartą NVidii. W trybie "jednokartowym" sterowniki NVidii działają bez zarzutu.

Zmiana dysku na serwerze – GRUB (instalacja), przenosiny danych, itd

Nadeszła ta wiekopomna chwila - bojąc się o swój serwer - postanowiłem uporządkować go w sposób odpowiedni. O ile backupy były (i są) robione regularnie, o tyle sam dysk na którym stał root, nie cechował się stabilnością (swoje lata już miał). Nie bez znaczenia było też to, że 80GB to nie jest szczyt marzeń jeśli chodzi o pojemność dysku serwerowego. Tak więc, nowym dyskiem został 1TB Western Digital WD10EARS z 64MB Cache. Niedrogi a całkiem przyzwoity.

Dysk i jego partycje

Strukturę partycji na nowym dysku postanowiłem zachować taką samą jak na starym. Może nie jest idealna, ale dzięki temu szybciej mogłem wszystko przenieść. Tak więc na nowym dysku utworzyłem (odpowiednio duże) partycje:

  • swap
  • / (root)
  • /home
  • /var
  • /backup (nie - nie ten "zewnętrzny" - tutaj trafia synchro z lapkiem)

Ważne jest aby kojarzyć jakie mamy partycje i jaka jest ich kolejność (sudo fdisk -l).

Przenosiny danych

Wbrew pozorom przenosiny danych są bardzo proste. Wystarczy nam polecenie tar. Minusem mojego serwera jest to, że ma miejsce w obudowie tylko na jeden dysk, tak więc nie miałem jak skopiować danych bezpośrednio. Na szczęście mam jeszcze obudowę na dyski, do której można było je umieścić. Tak więc całość jest bajecznie prosta:

  1. Tarujemy
  2. Odtarowujemy
  3. ???
  4. Profit :)

Pakujemy:

sudo tar -pczf /var /gdziestam.tar

Wypakowujemy:

sudo tar -xvfz gdziestam.tar

Postępujemy tak dla wszystkich partycji na starym dysku.

GRUB

Pora na GRUBa. Z nim miałem małe problemy ale dzięki pomocy Arta (któremu serdecznie dziękuję), udało się je rozwiązać. Całość okazała się całkiem prosta:

  1. sudo mount -t ext4 /dev/sda2 /mnt - zamiast sda2 użyj partycji na której masz /boot
  2. sudo mount -o bind /dev /mnt/dev
  3. sudo mount none -t proc /mnt/proc
  4. sudo chroot /mnt
  5. sudo grub-install /dev/sda

Po ostatnim powinniśmy otrzymać taki oto komunikat:

Installation finished. No error reported

Odmontowujemy kolejno:

cd /
sudo umount /mnt/proc
sudo umount /mnt/dev
# /mnt zostawiamy, ponieważ przyda się w następnym punkcie

Fstab i grub.cfg

Zanim zrobimy reboot, musimy wyedytować jeszcze /etc/fstab oraz /boot/grub/grub.cfg.

Sprawa jest całkiem prosta - jeśli korzystamy z UUIDów - to wpisujemy nowe (pobieram je poleceniem blkid). Czynność tę wykonujemy dla obu plików, ponieważ i grub musi wiedzieć z czego odpalać OS i fstab musi wiedzieć co ma montować. Jeśli nie korzystamy z UUIDów to ew. poprawiamy ścieżki do danych partycji.

Reboot

cd /
sudo umount /mnt
sudo reboot

Copyright © 2025 Closer to Code

Theme by Anders NorenUp ↑