Freie initiale Firmware: Unterschied zwischen den Versionen

Aus C3D2
Zur Navigation springen Zur Suche springen
KKeine Bearbeitungszusammenfassung
 
(2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 146: Zeile 146:
</pre>
</pre>


== Chromebox ==
== Chromebook ==
== Chromebook ==


Chromebooks sind Laptops und Tablets, die standardmäßig mit ChromeOS ausgeliefert werden. ChromeOS ist ein von Google entwickeltes Betriebssystem und daher nicht sehr nutzbar und privatsphärefreundlich. Zum glück können Chromebooks mithilfe von veränderter Firmware zu normalen Laptops umgewandelt werden, auf denen dann Linux, BSDs und andere herkömmliche Betriebsysteme installiert werden können. Wie das funktioniert wird auf folgenden Seiten beschrieben:
[[wikipedia:de:Chromebook|Chromebook]]s sind Laptops und Tablets, die standardmäßig mit [[wikipedia:de:ChromeOS|ChromeOS]] ausgeliefert werden. [[wikipedia:de:ChromeOS|ChromeOS]] ist ein von Google entwickeltes [[Betriebssystem]] und daher nicht sehr nutzbar und unfreundlich zur Privatsphäre. Zum Glück können [[Chromebook]]s mithilfe von veränderter Firmware zu normalen Laptops umgewandelt werden, auf denen dann Linux, BSDs und andere herkömmliche [[Betriebssystem]]e installiert werden können. Wie das funktioniert wird auf folgenden Seiten beschrieben:
* https://docs.chrultrabook.com/  
* https://docs.chrultrabook.com/  
* https://mrchromebox.tech/
* https://mrchromebox.tech/


<span id="suzyqable"></span>
=== SuzyQable ===
=== SuzyQable ===
[[Datei:SuzyQable.jpg|mini|Das SuzyQable im Space]]
[[Datei:SuzyQable.jpg|mini|Das SuzyQable im Space]]


Da firmware flashen generell immer ein gewisses Risiko birgt kann es sein, dass nach einem Flash der Laptop nicht mehr funktioniert, d.h. er ist gebricked. Allerdings ist das bei Chromebooks kein großes Problem, denn mit einem SuzyQ Debug Cable kann nach einem fehlgeschlagenen Flash ein Backup aufgespielt werden damit der Laptop wieder läuft.  
Da Firmware flashen generell immer ein gewisses Risiko birgt, kann es sein, dass nach einem Flash der Laptop nicht mehr funktioniert, d.h. er ist gebricked. Allerdings ist das bei [[Chromebook]]s kein großes Problem, denn mit einem SuzyQ Debug Cable kann nach einem fehlgeschlagenen Flash ein Backup aufgespielt werden damit der Laptop wieder läuft.  


Im Space haben wir so ein Kabel. Es ist im Kästchenschrank neben den Widerständen. Die Anleitung zum unbricken befindet sich hier: https://docs.chrultrabook.com/docs/unbricking/unbrick-suzyq.html  
Im Space haben wir so ein Kabel. Es ist im [[Kästchenschrank]] neben den Widerständen. Die Anleitung zum Unbricken befindet sich https://docs.chrultrabook.com/docs/unbricking/unbrick-suzyq.html  


==== SuzyQable Tipps und Tricks ====
==== SuzyQable Tipps und Tricks ====


Das SuzyQable kommt meißtens in den obersten linken USB-C port des Chromebooks, der USB-A Port kommt an einen Rechner, den ihr zum flashen verwendet. Wenn das SuzyQable richtig verbunden ist sollte bei <code>lsusb</code> das folgende Gerät <code>18d1:5014 Google Inc. Cr50</code> erscheinen. Das SuzyQable ist unidirektional, das heißt wenn es nicht funktioniert, umdrehen (das kabel im Space ist nicht wirklich gut zu drehen, besser ist es das Chromebook umzudrehen).
Das SuzyQable kommt meistens in den obersten linken USB-C port des [[Chromebook]]s, der USB-A Port kommt an einen Rechner, den ihr zum Flashen verwendet. Wenn das SuzyQable richtig verbunden ist sollte bei <code>lsusb</code> das folgende Gerät <code>18d1:5014 Google Inc. Cr50</code> erscheinen. Das SuzyQable ist unidirektional, das heißt wenn es nicht funktioniert, umdrehen. (Das Kabel im Space ist nicht wirklich gut zu drehen, besser ist es das Chromebook umzudrehen.)


In der Anleitung steht man soll folgenden command ausführen: <code>echo &quot;ccd open&quot; | sudo tee -a /dev/ttyUSB0</code>. Ich empfehle allerdings mit <code>sudo screen /dev/ttyUSB0</code> zu arbeiten und im screen Fenster <code>ccd open</code> einzugeben, da man dann direkt sieht ob es funktioniert und nicht erst beim flashen merkt, ob etwas falsch ist.
In der Anleitung steht man soll folgenden command ausführen:
: <code>echo &quot;ccd open&quot; | sudo tee -a /dev/ttyUSB0</code>
.
[[user:Katzenmann]] empfiehlt allerdings mit
: <code>sudo screen /dev/ttyUSB0</code>
zu arbeiten und im screen Fenster
: <code>ccd open</code>
einzugeben, da man dann direkt sieht ob es funktioniert und nicht erst beim Flashen merkt, ob etwas falsch ist.


Wenn bei einem Lenovo Thinkpad C13 Chromebook (kann auch bei anderen modellen funktionieren) nach dem flashen kein POST screen erscheint, kann die Batterie wieder eingesteckt, ein Ladekabel angesteckt und die Tastenkombination Escape + Reload (F3) + Power Button verwendet werden um das Gerät zum laufen zu kriegen.
Wenn bei einem Lenovo Thinkpad C13 Chromebook (kann auch bei anderen Modellen funktionieren) nach dem Flashen kein POST screen erscheint, kann die Batterie wieder eingesteckt, ein Ladekabel angesteckt und die Tastenkombination Escape + Reload (F3) + Power Button verwendet werden, um das Gerät zum Laufen zu bringen.


== Veranstaltungen ==
== Veranstaltungen ==

Aktuelle Version vom 3. Juli 2024, 16:27 Uhr

Zum Ersatz von (üblicher Weise leider) nicht freier initialer Firmware (BIOS, UEFI & Co) gibt es freie Software, wie #coreboot (oder gar #Libreboot).

coreboot

Hardware für die Anwendung coreboot

Desktop
Laptop
Siehe auch
  • Lenovo ThinkPad X230
  • Lenovo ThinkPad T440p
Server

Betriebssystem für die Anwendung coreboot

Debian für die Anwendung coreboot

  • (aktuelles) Debian 9

pauschales Aktualisieren der Pakete

apt upgrade -y

Installieren vom Paket git, da ansonsten nicht einfach (per git) aus der Quelle von coreboot der Code für coreboot bezogen werden kann

apt install -y git

Beziehen vom Code bei der Quelle von coreboot

git clone https://review.coreboot.org/coreboot

Wechseln in das Verzeichnis mit dem Code für coreboot

cd coreboot/

Installieren von (für das Kompilieren von coreboot benötigten) Paketen, da ansonsten nicht kompiliert werden kann

apt install -y m4 bison flex clang zlib1g-dev gnat automake libncurses5-dev
make crossgcc CPUS=$(nproc)

die ROM chip size erhält man mit flashrom

apt install -y flashrom
flashrom --programmer internal

Enter the Mainboard menu.

make menuconfig
  • In Mainboard vendor select the vendor of your board.
  • In Mainboard model select your exact mainboard name.
  • In ROM chip size select the exact size of the flash ROM chip you want to flash the coreboot image on. (see output of flashrom command)

FreeBSD für die Anwendung coreboot

Testen!

pauschales Aktualisieren der Pakete

pkg upgrade -y

Installieren vom Paket git, da ansonsten nicht einfach (per git) aus der Quelle von coreboot der Code für coreboot bezogen werden kann

pkg install -y git

Beziehen vom Code bei der Quelle von coreboot

git clone https://review.coreboot.org/coreboot

Wechseln in das Verzeichnis mit dem Code für coreboot

cd coreboot/

Installieren von (für das Kompilieren von coreboot benötigten) Paketen, da ansonsten nicht kompiliert werden kann

pkg install -y bison m4 flex clang zlib1g-dev automake libncurses5-dev
  • gnat
    • gcc6-aux
gmake crossgcc

coreboot anwenden

BIOS durch coreboot ersetzen

Grundsätzliches
  • Klammern nur an den Rechner, wenn es vom Strom getrennt ist.
Vorbereitung
Rahmenbedingen (fürs beschriebene Vorgehen)
  • (aktuelles) Debian 9
  • ThinkPad T520
  • Board (via USB am Rechner von dem aus geschrieben werden soll und zum Anschließen der Klammern, die am Rechner hängen, der beschrieben werden soll)
    Typ?
    • WCH CH341A SPI programmer
  • Klammern
    Typ?


(optionale) Sicherung vom bestehenden BIOS
  • ein erstes Mal auslesen
  • ein weiteres Mal auslesen
  • die beiden (oder auch noch weiter Sicherungen) miteinander vergleichen, um sicherzustellen, dass nicht fehlerbehaftet Ausgelesen wurde

coreboot ändern

Rahmenbedingen (fürs beschriebene Vorgehen)
  • (aktuelles) Debian 9
  • ThinkPad T520


Libreboot

Hardware

#Hardware meint hier nicht die Geräte, die die freie initiale Firmware installiert bekommen sollen, sondern die #Hardware, die für das Installieren genutzt wird.

Im HQ gibt es (2019-09) eine Box EEPROM (ttyUSB)

Controller PL2303

  • Anschließen

(mit einem Fedora 30)

dmesg

[20854.366314] usb 1-2: new full-speed USB device number 12 using xhci_hcd
[20854.493877] usb 1-2: New USB device found, idVendor=067b, idProduct=2303, bcdDevice= 3.00
[20854.493884] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[20854.493888] usb 1-2: Product: USB-Serial Controller
[20854.493892] usb 1-2: Manufacturer: Prolific Technology Inc.
[20854.498017] pl2303 1-2:1.0: pl2303 converter detected
[20854.499556] usb 1-2: pl2303 converter now attached to ttyUSB0

Chromebox

Chromebook

Chromebooks sind Laptops und Tablets, die standardmäßig mit ChromeOS ausgeliefert werden. ChromeOS ist ein von Google entwickeltes Betriebssystem und daher nicht sehr nutzbar und unfreundlich zur Privatsphäre. Zum Glück können Chromebooks mithilfe von veränderter Firmware zu normalen Laptops umgewandelt werden, auf denen dann Linux, BSDs und andere herkömmliche Betriebssysteme installiert werden können. Wie das funktioniert wird auf folgenden Seiten beschrieben:

SuzyQable

Das SuzyQable im Space

Da Firmware flashen generell immer ein gewisses Risiko birgt, kann es sein, dass nach einem Flash der Laptop nicht mehr funktioniert, d.h. er ist gebricked. Allerdings ist das bei Chromebooks kein großes Problem, denn mit einem SuzyQ Debug Cable kann nach einem fehlgeschlagenen Flash ein Backup aufgespielt werden damit der Laptop wieder läuft.

Im Space haben wir so ein Kabel. Es ist im Kästchenschrank neben den Widerständen. Die Anleitung zum Unbricken befindet sich https://docs.chrultrabook.com/docs/unbricking/unbrick-suzyq.html

SuzyQable Tipps und Tricks

Das SuzyQable kommt meistens in den obersten linken USB-C port des Chromebooks, der USB-A Port kommt an einen Rechner, den ihr zum Flashen verwendet. Wenn das SuzyQable richtig verbunden ist sollte bei lsusb das folgende Gerät 18d1:5014 Google Inc. Cr50 erscheinen. Das SuzyQable ist unidirektional, das heißt wenn es nicht funktioniert, umdrehen. (Das Kabel im Space ist nicht wirklich gut zu drehen, besser ist es das Chromebook umzudrehen.)

In der Anleitung steht man soll folgenden command ausführen:

echo "ccd open" | sudo tee -a /dev/ttyUSB0

. user:Katzenmann empfiehlt allerdings mit

sudo screen /dev/ttyUSB0

zu arbeiten und im screen Fenster

ccd open

einzugeben, da man dann direkt sieht ob es funktioniert und nicht erst beim Flashen merkt, ob etwas falsch ist.

Wenn bei einem Lenovo Thinkpad C13 Chromebook (kann auch bei anderen Modellen funktionieren) nach dem Flashen kein POST screen erscheint, kann die Batterie wieder eingesteckt, ein Ladekabel angesteckt und die Tastenkombination Escape + Reload (F3) + Power Button verwendet werden, um das Gerät zum Laufen zu bringen.

Veranstaltungen

Veranstaltungen anderer

Konferenzen

Open Source Firmware Conference

Siehe auch