bootloader

Jak usunąć blokadę bootloader'a (OEM lock) w smartfonie z Androidem

Eksperymentując ostatnimi czasy ze smartfonami mającymi na pokładzie system Android nie zdarzyło mi się jeszcze, by jakoś poważniej taki telefon uszkodzić. Oczywiście wiele razy złapałem soft brick'a (bootloop i inne takie) ale w zasadzie bez większego problemu szło z takiej sytuacji wybrnąć. Dziś jednak sprawa była nieco bardziej poważna, bo mój Neffos X1 nie chciał się po prostu uruchomić, a konkretnie to pojawiało się logo TP-LINK i Android i telefon na tym ekranie startowym się zwyczajnie zawieszał. Pikanterii dodaje jeszcze fakt, że przed sprawdzeniem czy telefon działa poprawnie, zablokowałem bootloader przez fastboot oem lock . Naturalnie bootloader można odblokować też przy użyciu fastboot ale po zresetowaniu urządzenia, ta opcja, którą się przełącza w ustawieniach deweloperskich automatycznie wraca do pozycji zablokowanej. W taki sposób, by odblokować bootloader ponownie, trzeba wejść w te opcje jeszcze raz i tam ściągnąć pierw blokadę OEM, a dopiero później można mówić o bawieniu się fastboot . A jak niby mamy wejść w te ustawienia jeśli system nie chce wystartować, a my mamy stock'owy firmware producenta smartfona? Czy taki stan rzeczy oznacza trwałe uszkodzenie telefonu?

Instalacja i konfiguracja bootloader'a extlinux

W debianie mamy do dyspozycji kilka bootloader'ów. Z tych częściej używanych to będą syslinux, extlinux oraz grub2. Jeśli potrzebujemy automatyzacji oraz szeregu zaawansowanych ficzerów, to dobrym wyjściem jest grub2. Jeśli natomiast korzystamy ze standardowej konfiguracji, którą można by określić mianem BIOS-MBR i do tego chcemy mieć pełną kontrolę na bootloader'em, to najlepiej wybrać extlinux'a lub syslinux'a. Syslinux jest wykorzystywany głównie w przypadku partycji FAT, która znajduje zastosowanie w różnego rodzaju systemach live. Natomiast jeśli w grę wchodzi system plików EXT4, który jest domyślny na sporej części linux'ów, to pozostaje nam do wyboru jedynie extlinux. W tym wpisie postaramy się przebrnąć przez proces instalacji i konfiguracji tego bootloader'a. Nie będziemy przy tym korzystać z żadnych automatów i wszystko postaramy się dostosować ręcznie.

Reinstalacja kernela i bootloader'a

Wykorzystywanie pełnego szyfrowania dysku twardego ma jedną zasadniczą wadę. O ile nasze dane są należycie zabezpieczone, o tyle trzeba zwracać uwagę na to komu zezwalamy na dostęp do naszego komputera. Nie chodzi tutaj o to, kto będzie używał samego systemu operacyjnego, choć to też jest ważne, ale przede wszystkim chodzi o te osoby, które mają dostęp fizyczny do naszej maszyny. Czasem możemy nabrać podejrzenia, że ktoś mógł nam jakąś pluskwę podłożyć. Wykrycie takiego robala, np. w postaci sprzętowego keylogger'a, nie powinno sprawić problemów. Z kolei już manipulacja boot sektorem dysku twardego, lub też zmiany w initramfs, który znajduje się na niezaszyfrowanej partycji /boot/ mogą przejść niezauważone. Jak zatem odratować system, co do którego mamy jakieś zastrzeżenia?

Błędy bootloader'a GRUB/GRUB2

GRUB to najpopularniejszy bootloader w systemach linuxowych. Dorobił się tego miejsca na podium głównie ze względu na swoją pełną automatyzację. Potrafi obsłużyć pokaźną ilości systemów plików, no i również nie zostaje w tyle w stosunku do aktualnych standardów partycjonowania dysków -- mowa oczywiście o tablicy partycji GPT. Przeglądając internet w poszukiwaniu odpowiedzi na temat jednego z błędów jaki GRUB/GRUB2 wyrzucił mi podczas startu systemu, znalazłem ten oto artykuł. Zawarte są tam dokładnie wszystkie możliwe błędy jakie GRUB potrafi zwrócić wraz z krótkim wyjaśnieniem ich przyczyny. Postanowiłem sobie je przejrzeć i dorobić do nich polskie tłumaczenie.

Reinstalacja bootloadera grub

Domyślnym bootloaderem w systemie linux jest grub i jako, że to oprogramowanie jest ładowane do pamięci jako pierwsze, ma ono kluczowe zadanie w procesie startu systemu operacyjnego. Przy jego pomocy możemy także przekazać szereg parametrów dla modułów kernela, tym samym odpowiednio go konfigurując. Czasem z pewnych przyczyn, najczęściej gdy inny system nadpisze MBR, system operacyjny nie chce się podnieść i musimy przeinstalować bootloader, zakładając, że problem tkwi w nim.