Befehl beim Startvorgang ausführen? Evtl. ins init.d Verzeichnis

  • ich möchte bei jedem start meines Raspberry Pi folgenden Befehl ausführen, da die Rpi's eine sehr hohe Sendeleistung(31dBm) haben die überhaupt nicht benötigt wird.

    sudo iw wlan0 set txpower limit 1800

    Wo verankern man das am besten möglichst frühzeitig in den Bootablauf? In eine .sh Datei schreiben und ins init.d Verzeichnis packen? Oder macht man das anderst habe in dieser Hinsicht null Plan.

  • Befehl beim Startvorgang ausführen? Evtl. ins init.d Verzeichnis? Schau mal ob du hier fündig wirst!

    • Offizieller Beitrag

    Ggf. per Cronjob. Aufrufen der Crontab von root:

    Code
    sudo crontab -e

    Ganz unten dann

    Code
    @reboot iw wlan0 set txpower limit 1800

    einfügen.

    Ungetestet! Vielleicht ist auch eine Systemd Unit besser, aber einen Versuch ist es imho wert.

  • Hallo,

    init.d ist veraltet, will man definitiv nicht mehr benutzen. Der aktuelle Weg wäre, dir eine systemd Service Unit zu schreiben, die den Befehl auszuführt. Hätte den Vorteil, dass du bei Service Units definieren kannst, wenn die Unit ausgeführt wird. Im gegebenen Fall sollte der Netzwerkstack ja vermutlich initialisiert sein? Dann wäre die Abhängigkeit `After=network.target`.

    Service Units kannst du auch deaktivieren, wenn du mal eine hohe Sendeleistung brauchst. systemd und Service Units sind umfassend dokumentiert. Dazu gibt es etliche Threads hier. Oder die startest hier: https://wiki.ubuntuusers.de/systemd.

    Gruß, noisefloor

  • danke, ja habe auch gerade festgestellt, das es über crontab nicht funktioniert da der Befehl anscheinend zu früh abgesetzt wird.

    Aber hier nun eine Zusammenfassung wie ichs gemacht habe falls jemand etwas ähnliches vorhat.

    1. service Datei erstellen

    2. Service manuell starten

    Code
    sudo systemctl start lowtxpower.service

    3. Service für jeden Systemstart aktivieren

    Code
    sudo systemctl enable lowtxpower.service
  • Würde es nicht funktionieren, wenn man "User=" und "sudo" weglässt?

    Ja, es würde ohne User und ohne sudo auch funktionieren.

    Als präzise Abhängigkeit könnte man auch:

    Code
    Requires=sys-subsystem-net-devices-wlan0.device
    After=sys-subsystem-net-devices-wlan0.device

    benutzen.

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p6 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

  • gok user und sodo werden entfernt.

    Ich habe neben network.target noch network-online.target gefunden, dann wird aber auch noch die konfiguration abgewartet ich möchte es sobald wie möglich durchführen.

    Wäre dein Vorschlag noch weiter vorne in der Startreihe?

  • Ich habe neben network.target noch network-online.target gefunden, dann wird aber auch noch die konfiguration abgewartet ich möchte es sobald wie möglich durchführen.

    Wäre dein Vorschlag noch weiter vorne in der Startreihe?

    Das kannst Du dir anschauen mit:

    Code
    systemctl status sys-subsystem-net-devices-wlan0.device | grep -i active
    systemctl status network.target | grep -i active
    systemctl status network-online.target | grep -i active

    network.target kommt sofort nach sys-subsystem-net-devices-wlan0.device

    The most popular websites without IPv6 in Germany.  IPv6-Ausreden

    Meine PIs

    PI4B/8GB (border device) OpenBSD 7.4 (64bit): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server

    PI3B+ FreeBSD 14.0-R-p6 (arm64): SSH-Serv., WireGuard-Serv., ircd-hybrid-Serv., stunnel-Proxy, Mumble-Serv., ddclient

    PI4B/4GB Bullseye-lite (64bit; modifiziert): SSH-Server, WireGuard-Server, ircd-hybrid-Server, stunnel-Proxy, Mumble-Server, botamusique, ample

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!