Satria (Diskussion | Beiträge) |
Satria (Diskussion | Beiträge) |
||
Zeile 89: | Zeile 89: | ||
<pre>sudo fdisk -l /media/pi/BackupHDD/microCD.img</pre> | <pre>sudo fdisk -l /media/pi/BackupHDD/microCD.img</pre> | ||
− | '''Die Sektorangabe für microCD.img2 unter "Start" ist zu notieren! Sie sei exemplarisch | + | '''Die Sektorangabe für microCD.img2 unter "Start" ist zu notieren! Sie sei exemplarisch 524288''' |
=== Mounten der 2. Partition des Images === | === Mounten der 2. Partition des Images === | ||
Für die Zahl 524880 ist hier die tatsächlich notierte zu verwenden: | Für die Zahl 524880 ist hier die tatsächlich notierte zu verwenden: | ||
− | <pre>sudo losetup /dev/loop0 /media/pi/BackupHDD/microSD.img -o $(( | + | <pre>sudo losetup /dev/loop0 /media/pi/BackupHDD/microSD.img -o $((524288*512))</pre> |
=== GParted === | === GParted === | ||
Zeile 99: | Zeile 99: | ||
In GParted wird jetzt die große Partition verkleinert auf eine Größe von 500MB mehr als das vorgeschlagene Minimum. Wenn die Operation fehlschlagen sollte, wählt man eine Größe +500MB, bis es funktioniert. | In GParted wird jetzt die große Partition verkleinert auf eine Größe von 500MB mehr als das vorgeschlagene Minimum. Wenn die Operation fehlschlagen sollte, wählt man eine Größe +500MB, bis es funktioniert. | ||
− | Nach Fertigstellung, klappt man die Details auf bis man den Befehl <code>resize2fs</code> findet. '''Am Ende dieses Befehls steht eine Zahl, welche zu notieren ist! Sie sei exemplarisch | + | Nach Fertigstellung, klappt man die Details auf bis man den Befehl <code>resize2fs</code> findet. '''Am Ende dieses Befehls steht eine Zahl, welche zu notieren ist! Sie sei exemplarisch 4963328K.''' |
− | === Größenanpassungen im Image === | + | Die Partition kann jetzt wieder freigegeben werden: |
− | <pre></pre> | + | <pre>sudo losetup -d /dev/loop0</pre> |
+ | === Größenanpassungen im Image mit fdisk === | ||
+ | Es wird jetzt das ganze Image gemounted: | ||
+ | <pre>sudo losetup /dev/loop0 /media/pi/BackupHDD/microSD.img</pre> | ||
+ | Jetzt werden per fdisk die Metadaten der 2. Partition neu erstellt: | ||
+ | <pre> | ||
+ | sudo fdisk /dev/loop0 | ||
+ | d | ||
+ | 2 | ||
+ | n | ||
+ | p | ||
+ | 2 | ||
+ | 524288 (der tatsächlich notierte Wert) | ||
+ | +4963328K (der tatsächlich notierte Wert) | ||
+ | w | ||
+ | </pre> | ||
+ | Zur Kontrolle: | ||
+ | <pre>sudo fdisk -l /dev/loop0</pre> | ||
+ | '''/dev/loop0p2 wird in der "End" Spalte einen Wert haben, der zu notieren ist! Er sei exemplarisch 9926656''' | ||
+ | |||
+ | Das Image kann unmounted werden: | ||
+ | <pre>sudo losetup -d /dev/loop0</pre> | ||
+ | |||
+ | === Das Image verkleinern === | ||
+ | Jetzt kann mit diesem Befehl die .img Datei verkleinert (abgeschnitten) werden. Für die Zahl 9926656 ist der tatsächlich notierte Wert zu verwenden: | ||
+ | <pre>truncate -s $(((9926656+1)*512)) /media/pi/BackupHDD/microSD.img</pre> | ||
+ | |||
+ | Fertig. |
Version vom 6. Januar 2023, 19:16 Uhr
Inhaltsverzeichnis
Vorbereitung von Raspbian
Das gilt für viele Images, die auf Raspbian basieren.
Nach dem Schreiben des Images auf die microSD Karte kann in der boot Partition
- eine Datei "ssh" erstellt werden, um den SSH Zugang gleich zu Beginn zu aktivieren.
- eine Datei "wpa_supplicant.conf" erstellt werden, damit sich der Raspi gleich zu Beginn mit dem darin eingetragenen WLAN verbindet. Der Inhalt ist in etwa so:
country=DE
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network=
{
ssid="name"
scan_ssid=1
psk="passwort"
key_mgmt=WPA-PSK
}
scan_ssid=1 ist entscheidend, wenn der Accesspoint die SSID versteckt. - LAN IP herausfinden. Wenn der Raspberry per LAN, aber nicht an einem DHCP Server betrieben wird, wird er sich eine IP aus dem Bereich
169.254.x.x
geben. Man muss dem angeschlossenen Computer dann eine IP geben wie:169.254.1.1/16
. Dann wird der Nameraspberrypi
zu dem Raspi führen, um die erste Konfiguration durchführen zu können.
Nach dem Login per SSH mit dem Standardzugang "pi:raspberry" sollte wie immer
sudo raspi-config
ausgeführt werden, um die Basiskonfiguration des Raspi vorzunehmen und das Standardkennwort zu ändern.
RaspiOS Standardbenutzer
In der neuen Version des Raspberry Betriebssystems gibt es keinen Standardbenutzer "pi" mehr. Zusätzlich zu den Methoden "Raspberry Pi Imager" beim Bootvorgang mit anschlossener Peripherie gibt es auch die Möglichkeit, eine Datei "userconf" in der boot Partition anzulegen mit folgendem Inhalt:
username:passwordhash
passwordhash stellt das verschlüsselte Passwort dar, das so generiert werden kann:
echo 'passwort' | openssl passwd -6 -stdin
"passwort" ist hierbei natürlich frei zu wählen.
Verschiedene Tricks
Statische / Dynamische IP Adresse
In /etc/dhcpcd.conf werden die Interfaces konfiguriert, die statische Adressen haben sollen.
Interfaces ohne Konfiguration sind automatisch DHCP konfiguriert.
IP Adressen erneuern
Das Kommando
sudo dhclient -v
erneuert die IP Adressen der entsprechend konfigurierten Interfaces.
Wifi abschalten
In /boot/config.txt:
dtoverlay=disable-wifi
Periodische Tasks
Mit
crontab -e
editiert man die periodischen Tasks, die automatisch vom System ausgeführt werden. Die temporäre Datei, die im Editor geöffnet wird, kann einfach überschrieben werden, cron nimmt sie sich anschließend und aktualisiert im Hintergrund die Task liste.
Mit
crontab -l
ruft man sich die Liste aller derzeit geplanten Tasks ab.
Benchmarks
Einige Benchmark Kommandos:
sysbench --test=cpu --cpu-max-prime=10000 --num-threads=4 run
sysbench --test=fileio --file-total-size=512M prepare
sysbench --test=fileio --file-total-size=512M --file-test-mode=seqrd --init-rng=on --max-time=60 run
sysbench --test=fileio --file-total-size=512M --file-test-mode=seqwr --init-rng=on --max-time=60 run
sysbench --test=fileio --file-total-size=512M --file-test-mode=rndrw --init-rng=on --max-time=60 run
sysbench --test=fileio --file-total-size=512M cleanup
sysbench --test=memory --memory-total-size=3G --memory-access-mode=rnd run
Raspberry PI 4
RaspiOS (Debian 11 bullseye) Desktop
Um den Desktop zu starten und sich erfolgreich anmelden zu können, müssen 2 Pakete nachinstalliert werden:
apt install lightdm und apt install lxsession
Danach kann über raspi-config das System so eingestellt werden, dass es in den Desktop bootet.
microSD Karten Image verkleinern
Den Speicher (microSD Karte) des PI zu sichern ist denkbar einfach. Z.B. mit Win32DiskImager kann man den Karteninhalt als .img Datei sichern und zum Beschreiben einer neuen microSD Karte verwenden. 2 Probleme gibt es dabei:
- Das Image hat immer die volle Größe der microSD Karte. Das ist aus Platzgründen schon nicht sehr schön.
- Die zu beschreibende microSD Karte darf nicht auch geringfügig kleiner sein als das Image, weil sonst das Schreiben gar nicht erst gestartet wird.
Es gibt eine Möglichkeit, das Image zu verkleinern und zwar auf die minimal nötige Größe:
Voraussetzungen für diese Anleitung:
- microSD Karteninhalt existiert bereits als .img Datei und heißt exemplarisch
microCD.img
- Die .img Datei liegt auf einer externen USB Festplatte bereit. Diese soll hier exemplarisch "BackupHDD" heißen.
- Es steht ein PI zur Verfügung mit einer extra microSD Karte und Raspbian oder RaspiOS.
- Dieses OS wird im Desktop-Modus betrieben (lxsession und lightdm sind installiert) und hat die Pakete dcfldd und gparted installiert.
- Basis-Linux Kenntnisse, da diese Anleitung nur als Gedankenstütze für nicht Selbstverständliches dienen soll.
Es ist Zeit, den PI mit Raspbian oder RaspiOS hochzufahren und sich anzumelden. Dann wird ein Terminal-Fenster geöffnet.
Startposition der 2. Partition ermitteln
Ich gehe davon aus, die externe Festplatte wurde in /media/pi/BackupHDD
gemounted.
sudo fdisk -l /media/pi/BackupHDD/microCD.img
Die Sektorangabe für microCD.img2 unter "Start" ist zu notieren! Sie sei exemplarisch 524288
Mounten der 2. Partition des Images
Für die Zahl 524880 ist hier die tatsächlich notierte zu verwenden:
sudo losetup /dev/loop0 /media/pi/BackupHDD/microSD.img -o $((524288*512))
GParted
sudo gparted /dev/loop0
In GParted wird jetzt die große Partition verkleinert auf eine Größe von 500MB mehr als das vorgeschlagene Minimum. Wenn die Operation fehlschlagen sollte, wählt man eine Größe +500MB, bis es funktioniert.
Nach Fertigstellung, klappt man die Details auf bis man den Befehl resize2fs
findet. Am Ende dieses Befehls steht eine Zahl, welche zu notieren ist! Sie sei exemplarisch 4963328K.
Die Partition kann jetzt wieder freigegeben werden:
sudo losetup -d /dev/loop0
Größenanpassungen im Image mit fdisk
Es wird jetzt das ganze Image gemounted:
sudo losetup /dev/loop0 /media/pi/BackupHDD/microSD.img
Jetzt werden per fdisk die Metadaten der 2. Partition neu erstellt:
sudo fdisk /dev/loop0 d 2 n p 2 524288 (der tatsächlich notierte Wert) +4963328K (der tatsächlich notierte Wert) w
Zur Kontrolle:
sudo fdisk -l /dev/loop0
/dev/loop0p2 wird in der "End" Spalte einen Wert haben, der zu notieren ist! Er sei exemplarisch 9926656
Das Image kann unmounted werden:
sudo losetup -d /dev/loop0
Das Image verkleinern
Jetzt kann mit diesem Befehl die .img Datei verkleinert (abgeschnitten) werden. Für die Zahl 9926656 ist der tatsächlich notierte Wert zu verwenden:
truncate -s $(((9926656+1)*512)) /media/pi/BackupHDD/microSD.img
Fertig.