Der Raspberry PI wird mittlerweile ja in vielen Anwendungen im Dauerbetrieb eingesetzt und hat dort unterschiedlichste Aufgaben zu erfüllen. Manchmal ist er ein Webserver, eine Wettersensorstation, ein NAS, oder eine Steuerung. Was auch immer. Doch meist hat ein Raspberry Board nur eine dieser Aufgaben zu erfüllen. Die Betriebssysteme bieten jedoch wesentlich mehr Funktionen und Features an, die nicht unbedingt für alle Anwendungen benötigt werden, aber trotzdem mitlaufen und Prozesszeit benötigen, oder die SD-Karte mit unnötigen Schreibzyklen belasten. Das lässt sich aber ändern.
Mein Kollege Mario Wehr hat eine Sammlung an Optimierungen zusammengestellt, die ich hier mit seiner Genehmigung veröffentlichen darf.
Xserver/Windomanager disablen
cmd: raspi-config Menp -> Boot Optins -> Desltop/CLI -> Console only with Login
GPU Shared MEM auf 16MB
cmd: raspi-config Menü -> Advanced Config -> Memory Split ->16MB
Interfaces Disable
cmd: raspi-config Menü -> Interfaced -> Alle Interfaces disablen
Entfernen nicht benötigter Kernelmodule
Bringt: Mehr Speicher für Userspace.
Schnellerer Boot.
Kernel module werden unter:
/etc/modprobe.d/{files}
ge-Blacklistet.
IPV6 disable
File: ipv6.conf
alias net-pf-10 off
alias ipv6 off
File: raspi-blacklist.conf
blacklist ipv6
Sound disable
File: raspi-blacklist.conf
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
Bluetooth disable
File: raspi-blacklist.conf
blacklist btbcm
blacklist hci_uart
File: /boot/config
dtoverlay=pi3-disable-bt
cmd: systemctl disable hciuart
UIO disable
File: raspi-blacklist.conf
blacklist uio_pdrv_genirq
blacklist uio
Verschieben von /Temp /Log ins Ram
Bringt: Die SD hält um einiges länger Schnellerer Boot
File: /etc/fstab
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
Log anpassen
Bis auf Kernel/Daemon können alle Logs abgeschalten werden.
File: /etc/rsyslog
#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
Log-Rotating
Da der tmpfs Space klein ist -> logrotate auf 1 bzw daliy
File: /etc/logrotate -> /etc/logrotate.d/{files}