====== Raspberry Pi ====== Devuan-Images: https://arm-files.devuan.org/RaspberryPi%20Latest%20Builds/ Siehe auch: [[raspi_zero|Raspberry Zero]] Helligkeitseinstellung beim 7%%"%% Raspberry Touchscreen (''n'' zwischen 0 und 255): echo n > /sys/class/backlight/rpi_backlight/brightness ===== Installation ===== SSH-Server aktivieren und Schlüssel in ''authorized_keys'' ablegen. Einstellungen für den Paketmanager optimieren APT::Install-Recommends "0"; APT::Install-Suggests "0"; Unabhängigkeit von NetworkManager: auto eth0 iface eth0 inet dhcp net.ifnames=0 Korrektes Init-System installieren apt-get install sysvinit-core rsyslog chrony orphan-sysvinit-scripts Init-Script für [[Rsyslog]] manuell installieren Reboot Aufräumen apt-get purge systemd deluser systemd-timesync deluser systemd-network delgroup systemd-journal rm -Rf /var/log/journal rm -Rf /var/lib/systemd Pakete nachinstallieren apt-get install joe aptitude vim pwgen Bei aktuellem Raspi OS nicht mehr erforderlich: Standardbenutzer ''pi'' umbenennen, dieser Benutzer darf während der Umbenennung nicht angemeldet sein usermod -l zaphod pi usermod -m -d /home/zaphod zaphod chmod 750 /home/zaphod groupmod -n zaphod pi pwgen -s 16 passwd zaphod deluser zaphod sudo Sudo-Konfigurationsdatei für den alten Benutzer ''pi'' entfernen rm /etc/sudoers.d/010_pi-nopasswd Prüfe, ob noch Reste von nicht mehr verwendeten Paketen vorliegen und räume ggf. auf: cd /tmp dpkg --get-selections | grep deinstall | cut -f 1 > deinstall.txt joe deinstall.txt xargs dpkg --purge < deinstall.txt rm deinstall.txt ===== Graphische Oberfläche ===== apt-get install xserver-xorg-core xserver-xorg-input-evdev xserver-xorg-video-fbdev ==== Displaymanager ==== //Slim// * ''apt-get install slim'' //LightDM// * Hintergrundbilder unter ''/usr/local/share/backgrounds'' ablegen * LightDM-Greeter anpassen ''/etc/lightdm/lightdm-gtk-greeter.conf'' * ''background=/usr/local/share/backgrounds/bg_1280x1024.png'' * ''indicators=~clock;~spacer;~host;~spacer;~session;~power'' ==== Openbox ==== apt-get install openbox obconf python3-xdg Globale Einstellungen: ''/etc/xdg/openbox'' Konfiguration unter ''~/.config/openbox'' mkdir -p .config/openbox cp /etc/xdg/openbox/rc.xml ~/.config/openbox cp /etc/xdg/openbox/menu.xml ~/.config/openbox * ''menu.xml'' anpassen * ''rc.xml'' anpassen * hier können auch Tastaturcodes konfiguriert werden * Anzahl Desktops auf 1 einstellen * Shutdown zulassen für Benutzer ''zaphod'' zaphod visudo -f /etc/sudoers Cmnd_Alias SYSTEM = /sbin/shutdown, /sbin/halt, /sbin/reboot, /sbin/poweroff zaphod ALL=(root) NOPASSWD: SYSTEM ==== Desktopsymbole ==== Mit ''idesk'' können Symbole auf dem Desktop angelegt werden apt-get install idesk Der Benutzer legt sich ein Verzeichnis ''.idesktop'' an. Darin können dann Konfigurationsdateien abgelegt werden. In der Datei ''.ideskrc'' können weitere Einstellungen vorgenommen werden, wie z.B. der Bildschirmhintergrund oder das Klickverhalten auf Symbole: table Config [...] Background.File: /home/zaphod/bg.png end ==== Audio ==== Als Lautstärkereglersymbol kann ''volumeicon-alsa'' benutzt werden. Audio komplett deaktivieren: In ''config.txt'' - Internes Audio: ''dtparam=audio=off'' - HDMI: ''dtoverlay=vc4-kms--v3d,noaudio'' ===== Programme ===== * WLAN: ''wicd'' * Panel: ''tint2'' oder ''fbpanel'' * Ansehen von Zertifikaten: ''gcr'' bzw. ''gcr-viewer'' * Packer: ''xarchiver'' ===== Backup ===== Für die Sicherung eines Systems kann die SD-Karte ganz einfach kopiert werden. Vorab ist natürlich die Gerätebezeichnung der SD-Karte herauszufinden. Im Beispiel ist das ein USB-Adapter unter ''/dev/sdc''. sudo dd bs=4M if=/dev/sdc | gzip -c > /tmp/sdcard.img.gz Wiederherstellen dann mit gunzip -c /tmp/sdcard.img.gz | sudo dd bs=4M of=/dev/sdc sync ==== Klonen ==== Es gibt ein Programm für die graphische Oberfläche: ''piclone'' (SD Card Copier). Es ist damit auch möglich eine Kopie von einer kleinen SD-Karte auf eine größere zu erstellen. apt-get install piclone gvfs dbus-x11 Damit das Kommendo und alle daraus heraus aufgerufenen Sub-Kommandos ausgeführt werden können, muß der Benutzer einen erweiterten Eintrag in ''sudoers'' haben: Cmnd_Alias PICLONE = /usr/bin/dbus-launch /usr/bin/piclone mustermann ALL=(root) NOPASSWD: PICLONE ===== Problembehebung ===== GUI hängt, Booten nicht möglich. Umstellen auf Konsole: cd /media/mustermann/rootfs/usr/lib/systemd/system ln -s -f -v multi-user.target default.target sync Update von einer sehr alten Version * ''legacy.raspbian.org'' als Quelle verwenden * Schritt für Schritt zur aktuellen Version hochhangeln ===== Tips ===== Temperatur messen vcgencmd measure_temp Ggf. unnötige Software * dbus * triggerhappy (''thd'') ===== Kernel ===== 64bit Raspberry-Kernel bauen auf einem normalen Debian Desktopsystem (amd64). Die Konfiguration eines laufenden Kernels kann mit ermittelt werden wie folgt: modprobe configs zless /proc/config.gz Die Boot-Logos (Himbeere, Tux o.ä.) liegen im Verzeichnis ''drivers/video/logo'' apt-get install git bc bison flex libssl-dev make libc6-dev libncurses5-dev apt-get install crossbuild-essential-arm64 Als normaler Benutzer: git clone --depth=1 https://github.com/raspberrypi/linux raspi-kernel cd raspi-kernel KERNEL=kernel8 make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- bcm2711_defconfig make -j3 ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- Image modules dtbs Veränderungen vornehmen make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- menuconfig