buster
Raspbian Buster Static IP
Statische IP Adresse auf dem WLAN Interface konfigurieren ist seltsam.
Und irgendwie ändert sich das zumindest gefühlt mit jeder Version.
Hier eine hübsche Variante ohne den dhcpcd zu deaktivieren, wie früher von mir vorgeschlagen.
vim.tiny /etc/dhcpcd.conf
interface wlan0 static ip_address=192.168.XXX.XXX/24 static routers=192.168.XXX.XXX static domain_name_servers=192.168.XXX.XXX
Quelle: Raspberry: Raspbian Buster static IP | feste IP Vergeben – dhcpcd.conf
Raspberry Pi 4 als USB Stick
Ich suche mindestens seit 2016, Solarfocus Bedienteil, nach einem Gerät, dass sich auf der einen Seite wie ein USB Stick verhält und auf der anderen Seite Daten ins Netzwerk schicken kann. Idealerweise über WLAN.
c’t 2020, Heft 10, S.136ff, Voll aufgebohrt, USB-C-Anschluss des Raspberry Pi 4 ausnutzen, präsentiert die Lösung für das Problem.
Man braucht zuerst einen Raspberry Pi 4 mit Raspbian buster.
# /boot/config.txt # Device Tree Overlay laden # im Abschnitt [pi4] dtoverlay=dwc2
# /etc/modules # Eröffnet die Konfiguration via SysFS # Am Ende anhängen libcomposite
Pi neu starten.
Es wird ein Image von einem USB Stick mit vFAT Dateisystem benötigt. Am einfachsten in Windows formatieren und ein Image mit Win32DiskImager erstellen. 2 GB sollten reichen. Ablegen am Pi unter /media/usbdisk.img.
Die Details kommen aus dem Script initgadget der c’t (Download Link oben!).
Ich habe es soweit gekürzt, dass nur der USB Stick emuliert wird. Zu Beginn wird noch das Image vom USB Stick zum Mounten auf der Pi-Seite vorbereitet. Der Teil muss passieren, bevor ein Lock durch die Gegenstelle passiert.
# /usr/local/sbin/initgadget losetup -o 32256 /dev/loop0 /media/usbdisk.img cd /sys/kernel/config/usb_gadget/ mkdir -p pi4 cd pi4 echo 0x1d6b > idVendor echo 0x0104 > idProduct echo 0x0100 > bcdDevice echo 0x0200 > bcdUSB echo 0xEF > bDeviceClass echo 0x02 > bDeviceSubClass echo 0x01 > bDeviceProtocol mkdir -p strings/0x409 cat /sys/firmware/devicetree/base/serial-number > strings/0x409/serialnumber echo "Raspberry Pi Foundation" > strings/0x409/manufacturer echo "Raspberry Pi 4" > strings/0x409/product mkdir -p configs/c.1/strings/0x409 echo 250 > configs/c.1/MaxPower echo "Config 1: USB Gadget" > configs/c.1/strings/0x409/configuration mkdir -p functions/mass_storage.usb0 echo 1 > functions/mass_storage.usb0/stall echo 0 > functions/mass_storage.usb0/lun.0/removable echo 0 > functions/mass_storage.usb0/lun.0/cdrom echo 0 > functions/mass_storage.usb0/lun.0/ro echo 0 > functions/mass_storage.usb0/lun.0/nofua echo /media/usbdisk.img > functions/mass_storage.usb0/lun.0/file ln -s functions/mass_storage.usb0 configs/c.1/ udevadm settle -t 5 || : ls /sys/class/udc > UDC
# Die Initialisierung als Service aktivieren /etc/systemd/system/initgadget.service [Unit] Description=Raspi 4 USB Gadget DefaultDependencies=yes [Service] Type=simple ExecStart=/usr/local/sbin/initgadget [Install] WantedBy=local-fs.target #---- cp initgadget.service /etc/systemd/system/ systemctl enable initgadget.service systemctl start initgadget.service
Jetzt kann man das ausprobieren, indem man den Pi an einen Windows Rechner hängt.
Der „USB Stick“ taucht im Device Manager auf. Man kann ein Test File anlegen.
Dann am Pi mounten
/bin/mount -o ro /dev/loop0 /mnt
Und die Daten auslesen
Es sei darauf hingewiesen, dass man am Pi jetzt besser nichts zurückschreibt ins Image. FAT ist kein Dateisystem dass für gleichzeitige Zugriffe von verschiedenen Rechnern ausgelegt ist. Daher würde ich am Pi nur Read-only mounten. Und immer wenn man die aktuellen Daten verwenden will, neu mounten.
Upgrade to Raspbian Buster
Falls noch jemand das Upgrade von Raspbian Lite auf Buster nicht durchgeführt hat:
pimylifeup.com/upgrade-raspbian-stretch-to-raspbian-buster
PI Setup Buster
Das ist eine Forsetzung zu PI Setup, aber aktualisiert auf Raspbian Buster.
Win32 Imager
Download Link für Image (Version & Kernel)
Einstellungen am PI:
- Deutsche Tastatur
- Statische IP
static ip config am eth0
/etc/network/interfaces.d/eth0auto eth0 allow-hotplug eth0 iface eth0 inet static address 10.0.XXX.XXX netmask 255.255.255.0 gateway 10.0.XXX.XXX dns-nameservers 127.0.0.1
- SSH aktivieren
service ssh start systemctl enable ssh
- DHCP Client deaktivieren
service dhcpcd stop systemctl disable dhcpcd
-
# Buster ist noch so neu, man muss bestätigen, dass es OK ist, dass sich das Repository von Testing auf Stable geändert hat apt-get update --allow-releaseinfo-change apt-get update apt-get upgrade # nicht einmal das DIG Command ist im Image dabei apt-get install dnsutils
- Pihole setup
- Pi-hole mit rekursivem Nameserver
- interne DNS Zone aufbauen