Raspberry Pi Boot konfiguration: Unterschied zwischen den Versionen

Aus Nicki Wiki
Zur Navigation springen Zur Suche springen
 
(38 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
Der Raspberry Pi läuft teilweise durchgehend, dadurch wird die SD-Karte belastet. Um die Lebensdauer der SD-Karte zu erhöhen und die Bootdauer zu verkürzen wird der Bootvorgang optimiert.
Der Raspberry Pi läuft teilweise durchgehend, dadurch wird die SD-Karte belastet. Um die Lebensdauer der SD-Karte zu erhöhen und die Bootdauer zu verkürzen wird der Bootvorgang optimiert.
Zusätzlich wird die Änderung des Bootlogos beschrieben.
Zusätzlich wird die Bootdarstellung und das Bootlogo geändert.


==Lebensdauer SD-Karte erhöhen==
==Lebensdauer SD-Karte erhöhen==
Zeile 22: Zeile 22:
SWAP auslagern (nur wenn swapping nicht notwendig ist)
SWAP auslagern (nur wenn swapping nicht notwendig ist)
  sudo dphys-swapfile swapoff
  sudo dphys-swapfile swapoff
  sudo dphys-swapfile uninstall
  sudo systemctl disable dphys-swapfile
  sudo update-rc.d dphys-swapfile remove
  sudo apt-get purge dphys-swapfile


===Logs abschalten===
===Logs abschalten===
Zeile 39: Zeile 39:
  #mail.warn -/var/log/mail.warn
  #mail.warn -/var/log/mail.warn
  #mail.err /var/log/mail.err
  #mail.err /var/log/mail.err
===Watchdog===
Watchdog einrichten:
sudo apt-get install watchdog -y
sudo modprobe bcm2835_wdt
echo "bcm2835_wdt" | sudo tee -a /etc/modules
Konfigurationsdatei des Watchdog-Daemon angepassen:
sudo vim /etc/watchdog.conf
watchdog-device = /dev/watchdog
max-load-1      = 24
watchdog.service anpassen:
sudo vim /lib/systemd/system/watchdog.service
[Install]
WantedBy=multi-user.target
Watchdog aktivieren und starten:
sudo systemctl enable watchdog.service
sudo systemctl start watchdog.service


==Bootvorgang optimieren==
==Bootvorgang optimieren==
Zeile 79: Zeile 96:


==RASPI-CONFIG==
==RASPI-CONFIG==
Raspberry Pi konfiguration aufrufen:
Raspberry Pi Konfiguration aufrufen:
  sudo raspi-config
  sudo raspi-config


===Übertakten===
===Übertakten===
Beim übertakten ist darauf zu achten ordentlich zu kühlen -> Kühlkörper.
Beim Übertakten ist darauf zu achten, ordentlich zu kühlen -> Kühlkörper.
  -> 6 Overclock -> High
  -> 6 Overclock -> High


===RAM-Aufteilung GPU===
===RAM-Aufteilung GPU===
Werden keine grafischen Oberflächen verwendet kann der "Memory Split" auf 16 MB gestellt werden.
Werden keine grafischen Oberflächen verwendet, kann der "Memory Split" auf 16 MB gestellt werden.
  -> 7 Advanced Options -> A3 Memory Split -> 16
  -> 7 Advanced Options -> A3 Memory Split -> 16


Zeile 95: Zeile 112:


==Bootdarstellung==
==Bootdarstellung==
===Konsolenausgabe===
=== Konsolenausgabe ===
Konsolenausgabe ändern:
Konsolenausgabe ändern:
  sudo vim /boot/cmdline.txt
  sudo vim /boot/cmdline.txt
Zeile 108: Zeile 125:
  loglevel=3
  loglevel=3


=== Bootlogo anzeigen ===
Blinkenden Cursor entfernen, folgendes hinzufügen:
vt.global_cursor_default=0
 
=== Bootlogo (Splash) entfernen ===
Bootlogo (Regenbogenbild) entfernen:
sudo vim /boot/config.txt
 
Folgendes am Ende hinzufügen:
disable_splash=1
 
=== Bootlogo (Splash) ändern ===
==== Logo kopieren ====
Bild in der Displayauflösung unter folgendem Pfad speichern:
Bild in der Displayauflösung unter folgendem Pfad speichern:
  /etc/splash.png
  /etc/splash.png
Zeile 120: Zeile 148:


==== Ohne systemd: ====
==== Ohne systemd: ====
Script erstellen:
  sudo vim /etc/init.d/asplashscreen
  sudo vim /etc/init.d/asplashscreen


Zeile 164: Zeile 193:
  sudo chmod a+x /etc/init.d/asplashscreen
  sudo chmod a+x /etc/init.d/asplashscreen


Und dauerhaft aktivieren:
und dauerhaft aktivieren:
  sudo insserv /etc/init.d/asplashscreen
  sudo insserv /etc/init.d/asplashscreen
sudo reboot


==== Mit systemd: ====
==== Mit systemd: ====
Script erstellen:
  sudo vim /etc/systemd/system/splashscreen.service
  sudo vim /etc/systemd/system/splashscreen.service


Zeile 177: Zeile 208:
   
   
  [Service]
  [Service]
  ExecStart=/usr/bin/fbi -d /dev/fb0 --noverbose -a /opt/splash.png
  ExecStart=/usr/bin/fbi -d /dev/fb0 --noverbose -a /etc/splash.png
  StandardInput=tty
  StandardInput=tty
  StandardOutput=tty
  StandardOutput=tty
Zeile 186: Zeile 217:
Dauerhaft aktivieren:
Dauerhaft aktivieren:
  systemctl enable splashscreen
  systemctl enable splashscreen
sudo reboot
== Display ==
=== Display drehen ===
Config öffnen:
sudo vim /boot/config.txt
Folgende Zeile hinzufügen:
lcd_rotate=0
display_rotate=0
display_lcd_rotate=0
{| class="wikitable"
!colspan="2"|display_lcd_rotate
!Ergebnis
|-
|colspan="2"|0
|no rotation
|-
|colspan="2"|1
|um 90 Grad im Uhrzeigersinn drehen
|-
|colspan="2"|2
|um 180 Grad im Uhrzeigersinn drehen
|-
|colspan="2"|3
|um 270 Grad im Uhrzeigersinn drehen
|-
|colspan="2"|0x10000
|horizontale spiegeln
|-
|colspan="2"|0x20000
|vertikal spiegeln
|}
=== Touch drehen ===
Wird das Display gedreht muss zwangsläufig das Touch mit gedreht werden:
sudo vim /boot/config.txt
Folgende Zeile hinzufügen:
dtoverlay=rpi-ft5406,touchscreen-swapped-x-y=1,touchscreen-inverted-x=1
{| class="wikitable"
!colspan="2"|DT Parameter
!Aktion
|-
|colspan="2"|touchscreen-size-x
|Legt die X-Auflösung fest (Standard 800)
|-
|colspan="2"|touchscreen-size-y
|Legt die Y-Auflösung fest (Standard 600)
|-
|colspan="2"|touchscreen-inverted-x
|X-Koordinaten invertieren
|-
|colspan="2"|touchscreen-inverted-y
|Y-Koordinaten invertieren
|-
|colspan="2"|touchscreen-swapped-x-y
|X- und Y-Koordinaten vertauschen
|}


Danach neustart:
=== Beispiel ===
  sudo reboot
Display und Touch um 180 drehen:
  lcd_rotate=2
dtoverlay=rpi-ft5406,touchscreen-inverted-y=1,touchscreen-inverted-x=1

Aktuelle Version vom 8. März 2022, 11:44 Uhr

Der Raspberry Pi läuft teilweise durchgehend, dadurch wird die SD-Karte belastet. Um die Lebensdauer der SD-Karte zu erhöhen und die Bootdauer zu verkürzen wird der Bootvorgang optimiert. Zusätzlich wird die Bootdarstellung und das Bootlogo geändert.

Lebensdauer SD-Karte erhöhen

Die SD-Karte sollte mind. Klasse 10 haben.

Log-Datein ins RAM ausgelagern

sudo vim /etc/fstab

Folgendes hinzufügen:

tmpfs /tmp tmpfs defaults,size=8M 0 0
tmpfs /var/tmp tmpfs defaults,size=8M 0 0
tmpfs /var/log tmpfs defaults,size=8M 0 0

Logrotate

Da der tmpfs Space klein ist -> logrotate auf 1 bzw. daily

sudo vim /etc/logrotate.conf

Änderung:

weekly -> daily

SWAP

SWAP auslagern (nur wenn swapping nicht notwendig ist)

sudo dphys-swapfile swapoff
sudo systemctl disable dphys-swapfile
sudo apt-get purge dphys-swapfile

Logs abschalten

sudo vim /etc/rsyslog.conf

Änderungen:

#cron.* /var/log/cron.log
daemon.* -/var/log/daemon.log
kern.* -/var/log/kern.log
#lpr.* -/var/log/lpr.log
#mail.* -/var/log/mail.log
#user.* -/var/log/user.log

#mail.info -/var/log/mail.info
#mail.warn -/var/log/mail.warn
#mail.err /var/log/mail.err

Watchdog

Watchdog einrichten:

sudo apt-get install watchdog -y
sudo modprobe bcm2835_wdt
echo "bcm2835_wdt" | sudo tee -a /etc/modules

Konfigurationsdatei des Watchdog-Daemon angepassen:

sudo vim /etc/watchdog.conf
watchdog-device = /dev/watchdog
max-load-1      = 24

watchdog.service anpassen:

sudo vim /lib/systemd/system/watchdog.service
[Install]
WantedBy=multi-user.target

Watchdog aktivieren und starten:

sudo systemctl enable watchdog.service
sudo systemctl start watchdog.service

Bootvorgang optimieren

Kernelmodule abschalten

sudo vim /etc/modprobe.d/raspi.conf

Folgendes hinzufügen:

blacklist ipv6

blacklist snd_bcm2835
blacklist snd_soc_bcm2708_i2s
blacklist snd_soc_core
blacklist snd_compress
blacklist snd_pcm
blacklist snd_page_alloc
blacklist snd_seq
blacklist snd_seq_device
blacklist snd_timer
blacklist snd

blacklist btbcm
blacklist hci_uart

blacklist uio_pdrv_genirq
blacklist uio

IPv6 abschalten

sudo vim /etc/modprobe.d/ipv6.conf

Inhalt:

alias net-pf-10 off
alias ipv6 off

Bluetooth abschalten

sudo systemctl disable hciuart
sudo vim /boot/config.txt

Folgendes hinzufügen:

dtoverlay=pi3-disable-bt

RASPI-CONFIG

Raspberry Pi Konfiguration aufrufen:

sudo raspi-config

Übertakten

Beim Übertakten ist darauf zu achten, ordentlich zu kühlen -> Kühlkörper.

-> 6 Overclock -> High

RAM-Aufteilung GPU

Werden keine grafischen Oberflächen verwendet, kann der "Memory Split" auf 16 MB gestellt werden.

-> 7 Advanced Options -> A3 Memory Split -> 16

Interfaces deaktivieren

Alle nicht benötigten Schnittstellen deaktivieren.

-> 5 Interfacing Options -> alle deaktivieren

Bootdarstellung

Konsolenausgabe

Konsolenausgabe ändern:

sudo vim /boot/cmdline.txt

Consolenausgabe verschieben, folgendes ändern:

console=tty1 -> console=tty3

Entfernen der Beeren, folgendes hinzufügen:

logo.nologo

Logausgabe reduzieren, folgendes hinzufügen:

loglevel=3

Blinkenden Cursor entfernen, folgendes hinzufügen:

vt.global_cursor_default=0

Bootlogo (Splash) entfernen

Bootlogo (Regenbogenbild) entfernen:

sudo vim /boot/config.txt

Folgendes am Ende hinzufügen:

disable_splash=1

Bootlogo (Splash) ändern

Logo kopieren

Bild in der Displayauflösung unter folgendem Pfad speichern:

/etc/splash.png

Zum Beispiel mit scp vom Linux-Host ins Raspberry Pi /home/pi Verzeichnis:

 scp logo.png pi@10.0.0.10:
 sudo cp logo.png /etc/splash.png

Für die Anzeige framebuffer imageviewer (fbi) installieren:

sudo apt-get install fbi

Ohne systemd:

Script erstellen:

sudo vim /etc/init.d/asplashscreen

Inhalt:

#! /bin/sh
### BEGIN INIT INFO
# Provides:          asplashscreen
# Required-Start:
# Required-Stop:
# Should-Start:      
# Default-Start:     S
# Default-Stop:
# Short-Description: Show custom splashscreen
# Description:       Show custom splashscreen
### END INIT INFO

do_start () {
    /usr/bin/fbi -T 1 -noverbose -a /etc/splash.png    
    exit 0
}

case "$1" in
  start|"")
    do_start
    ;;
  restart|reload|force-reload)
    echo "Error: argument '$1' not supported" >&2
    exit 3
    ;;
  stop)
    # No-op
    ;;
  status)
    exit 0
    ;;
  *)
    echo "Usage: asplashscreen [start|stop]" >&2
    exit 3
    ;;
esac
:

Script ausführbar machen:

sudo chmod a+x /etc/init.d/asplashscreen

und dauerhaft aktivieren:

sudo insserv /etc/init.d/asplashscreen
sudo reboot

Mit systemd:

Script erstellen:

sudo vim /etc/systemd/system/splashscreen.service

Inhalt:

[Unit]
Description=Splash screen
DefaultDependencies=no
After=local-fs.target

[Service]
ExecStart=/usr/bin/fbi -d /dev/fb0 --noverbose -a /etc/splash.png
StandardInput=tty
StandardOutput=tty

[Install]
WantedBy=sysinit.target

Dauerhaft aktivieren:

systemctl enable splashscreen
sudo reboot

Display

Display drehen

Config öffnen:

sudo vim /boot/config.txt

Folgende Zeile hinzufügen:

lcd_rotate=0
display_rotate=0
display_lcd_rotate=0
display_lcd_rotate Ergebnis
0 no rotation
1 um 90 Grad im Uhrzeigersinn drehen
2 um 180 Grad im Uhrzeigersinn drehen
3 um 270 Grad im Uhrzeigersinn drehen
0x10000 horizontale spiegeln
0x20000 vertikal spiegeln

Touch drehen

Wird das Display gedreht muss zwangsläufig das Touch mit gedreht werden:

sudo vim /boot/config.txt

Folgende Zeile hinzufügen:

dtoverlay=rpi-ft5406,touchscreen-swapped-x-y=1,touchscreen-inverted-x=1
DT Parameter Aktion
touchscreen-size-x Legt die X-Auflösung fest (Standard 800)
touchscreen-size-y Legt die Y-Auflösung fest (Standard 600)
touchscreen-inverted-x X-Koordinaten invertieren
touchscreen-inverted-y Y-Koordinaten invertieren
touchscreen-swapped-x-y X- und Y-Koordinaten vertauschen

Beispiel

Display und Touch um 180 drehen:

lcd_rotate=2
dtoverlay=rpi-ft5406,touchscreen-inverted-y=1,touchscreen-inverted-x=1