Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
knb:ssh [2022/08/21 14:54] – Typo grische | knb:ssh [2024/02/26 10:21] (aktuell) – grische | ||
---|---|---|---|
Zeile 10: | Zeile 10: | ||
==== SSH-Key ==== | ==== SSH-Key ==== | ||
Zur Authentifikations als berechtigter User gegenüber dem SSH-Diensst benötigt man ein SSH-Schlüsselpaar, | Zur Authentifikations als berechtigter User gegenüber dem SSH-Diensst benötigt man ein SSH-Schlüsselpaar, | ||
- | Aktuell ((Stand. | + | Aktuell ((Stand. |
+ | |||
+ | Dies funktioniert jedoch nur mit Firmware neuer als v2023.x, nicht mit der Firmware für nicht mehr unterstützte Geräte v2022.x. Diese benötigen RSA und zudem spezielle Konfiguration auf dem Endgerät, die nicht mehr als sicher gilt, um darauf noch zugreifen zu können. | ||
==== Mit ssh-keygen ==== | ==== Mit ssh-keygen ==== | ||
- | < | + | < |
< | < | ||
Enter passphrase (empty for no passphrase): | Enter passphrase (empty for no passphrase): | ||
Enter same passphrase again: | Enter same passphrase again: | ||
- | Your identification has been saved in / | + | Your identification has been saved in / |
- | Your public key has been saved in / | + | Your public key has been saved in / |
The key fingerprint is: | The key fingerprint is: | ||
44: | 44: | ||
Zeile 70: | Zeile 72: | ||
User root | User root | ||
| | ||
- | | + | |
Host ff_pliening_gbw_od-e | Host ff_pliening_gbw_od-e | ||
Zeile 77: | Zeile 79: | ||
User root | User root | ||
| | ||
- | | + | |
| | ||
</ | </ | ||
Zeile 207: | Zeile 209: | ||
==== SSID ==== | ==== SSID ==== | ||
- | Wollen wir wissen welche SSID(([[https:// | ||
- | uci show | grep -i ssid | ||
- | wireless.mesh_radio0.ssid=' | + | === SSID ändern === |
- | Die SSID des Mesh-Netzes ermitteln wir mit folgendem Befehl: | + | Die SSID kann nur geändert werden, in dem man die Domain bzw. das Segment ändert. Siehe dazu den Abschnitt [[knb:ssh# |
- | uci show | grep -i mesh_id | + | |
- | wireless.mesh_radio0.mesh_id=' | + | {{page>: |
- | Da es sich hier um einen Router handelt, der nur ein **2,4 GHz** WLAN ausstrahlt, | + | === SSID herausfinden === |
- | | + | Wollen wir wissen welche SSID(([[https:// |
+ | uci show wireless | grep ssid | ||
+ | Die SSID des Mesh-Netzes ermitteln wir mit folgendem Befehl: | ||
+ | uci show wireless | grep mesh_id | ||
+ | |||
+ | Wenn ein Router nur ein **2,4 GHz** WLAN oder ein **5GHz** ausstrahlt, dann wird nur nur ein Zeile für radio0 ausgegeben. Wenn es sich um ein Routermodell handelt, das sowohl ein **2,4 GHz** als auch ein **5 GHz** WLAN ausstrahlt, werden dort zwei Konfigurationswertpaaren ausgegeben: | ||
+ | # uci show wireless | grep id | ||
wireless.mesh_radio0.mesh_id=' | wireless.mesh_radio0.mesh_id=' | ||
wireless.mesh_radio1.mesh_id=' | wireless.mesh_radio1.mesh_id=' | ||
wireless.client_radio0.ssid=' | wireless.client_radio0.ssid=' | ||
- | wireless.client_radio1.ssid=' | + | wireless.client_radio1.ssid=' |
- | + | ||
- | {{page>: | + | |
==== Debugging-Log ==== | ==== Debugging-Log ==== | ||
Bei der Fehlersuche ist es hilfreich, wenn aussagekräftige Logmeldung in Echtzeit zur Verfügung stehen. Mit Hilfe des Befehls '' | Bei der Fehlersuche ist es hilfreich, wenn aussagekräftige Logmeldung in Echtzeit zur Verfügung stehen. Mit Hilfe des Befehls '' | ||
Zeile 412: | Zeile 415: | ||
==== Knoten-/ | ==== Knoten-/ | ||
In folgendem Beispiel wollen wir den Knotennamen oder auch Hostname genannt, ändern. Auch hier fragen wir zunächst ab, welcher Wert gesetzt ist: | In folgendem Beispiel wollen wir den Knotennamen oder auch Hostname genannt, ändern. Auch hier fragen wir zunächst ab, welcher Wert gesetzt ist: | ||
- | uci show | grep hostname | + | # pretty-hostname |
+ | ff_pliening_gbw_ug | ||
- | system.@system[0].pretty_hostname=' | + | Diesen Wert ändern wir nun in einen etwas sprechenderen Namen ab (hier sind auch Emojis zugelassen 😉): |
- | system.@system[0].hostname=' | + | |
- | + | ||
- | Diesen Wert ändern wir nun in einen etwas sprechenderen Namen ab: | + | |
- | uci set system.@system[0].pretty_hostname=' | + | |
- | uci commit system | + | |
Fragen wir nun erneut den geänderten Parameter ab, werden uns die aktualisierten Daten ausgegeben: | Fragen wir nun erneut den geänderten Parameter ab, werden uns die aktualisierten Daten ausgegeben: | ||
- | uci show | grep hostname | + | # pretty-hostname |
+ | ff_pliening_gänsbrunnenweg_ug | ||
- | system.@system[0].hostname=' | + | Auf der [[https:// |
- | + | ||
- | Auf der [[https:// | + | |
{{ : | {{ : | ||
+ | Siehe dazu auch den [[https:// | ||
==== Geodaten für die Kartenanzeige ==== | ==== Geodaten für die Kartenanzeige ==== | ||
Möchte man die im Router hinterlegten Geodaten abändern, da z.B. ein vorhandener Router seinen Aufstellungsort geändert hat, oder weil man zu besseren Darstellung auf der **[[https:// | Möchte man die im Router hinterlegten Geodaten abändern, da z.B. ein vorhandener Router seinen Aufstellungsort geändert hat, oder weil man zu besseren Darstellung auf der **[[https:// | ||
Zeile 438: | Zeile 438: | ||
Nach kurzer Zeit wird dann der Router auf der Karte an der neuen gewünschten Stelle angezeigt. | Nach kurzer Zeit wird dann der Router auf der Karte an der neuen gewünschten Stelle angezeigt. | ||
{{ : | {{ : | ||
+ | |||
+ | ==== Wifi Mesh abschalten ==== | ||
+ | |||
+ | Standardmäßig ist der WiFi Mesh eingeschaltet um nahe Knoten miteinander über WiFi zu verbinden. Dies lässt sich mit folgenden Befehlen abschalten: | ||
+ | uci set wireless.mesh_radio0.disabled=1 | ||
+ | uci set wireless.mesh_radio1.disabled=1 | ||
+ | uci commit wireless | ||
+ | wifi | ||
+ | |||
+ | Anschließend ist das WiFi Mesh abgeschaltet. | ||
+ | |||
+ | Siehe dazu auch [[https:// | ||
==== Webseite des FF-Knoten aus dem LAN aufrufen ==== | ==== Webseite des FF-Knoten aus dem LAN aufrufen ==== | ||
Zeile 623: | Zeile 635: | ||
==== WLAN zeitgesteuert ein- und ausschalten ==== | ==== WLAN zeitgesteuert ein- und ausschalten ==== | ||
- | In Gemeinschaftsunterkünften wie z.B. Jugendherbergen, | + | In manchen Unterkünften |
- | (Anmerkung: Etwas eleganter lässt sich diese Aufgabe ab der Firmware-Version v2019.0.8 mit der neuen Funktion **ap-timer** lösen, mehr dazu im Abschnitt **[[# | + | Dazu wird " |
- | === ASH-Script === | + | |
- | Zunächst wollen wir uns die Konfiguration per Script einmal ansehen. Dazu legen wir uns ein kleines **ash**-Shellscript an, dass wir dann bei Bedarf entweder händisch oder cronjob-gesteuert aufrufen. | + | |
- | | + | |
- | <file bash / | + | Drücke **i** um in den Schreibmodus zu gelangen. |
- | # Script zum (De-)Aktivieren der unterschiedlichen Client-WLANs | + | |
- | # $1 : erste uebergebene Variable : | + | Für tägliche Abschaltung von 21 bis 7 Uhr, sollte die Datei wie folgt aussehen: |
- | # 2 = 2.4 GHz Freifunk-Client-Netz | + | |
- | # 5 = 5 GHz Freifunk-Client-Netz | + | |
- | # p = 2.4 GHz Freifunk-Client-Netz | + | |
- | # | + | |
- | # $2 : zweite uebergebene Variable: | + | |
- | # off = WLAN ausschalten | + | |
- | # | + | |
- | # WLAN(s) ausschalten | + | 0 21 * * * ifconfig client0 down; ifconfig client1 down |
- | if [ $2 = " | + | |
- | if [ $1 = " | + | |
- | uci set wireless.client_radio0.disabled=1 | + | Für die Syntax gibt es viele hilfreiche Seiten, wie beispielsweise |
- | elif [ $1 = " | + | |
- | uci set wireless.client_radio1.disabled=1 | + | |
- | else | + | |
- | uci set wireless.wan_radio0.disabled=1 | + | |
- | fi | + | |
- | fi | + | |
- | # WLAN(s) einschalten | + | Anschließende drücke ESC und gib **:wq** ein um die Änderungen zu speichern. |
- | if [ $2 = " | + | |
- | if [ $1 = " | + | |
- | uci set wireless.client_radio0.disabled=0 | + | |
- | elif [ $1 = " | + | |
- | uci set wireless.client_radio1.disabled=0 | + | |
- | | + | |
- | uci set wireless.wan_radio0.disabled=0 | + | |
- | fi | + | |
- | fi | + | |
- | # Konfigurationsaenderung(en) persistieren | + | Abschließend muss der Deamon die Konfiguration neu laden, damit der Cronjob aktiv geschaltet ist. |
- | uci commit wireless | + | |
- | wifi | + | |
- | </ | + | |
- | Das Script statten wir zum Aufruf mit den entsprechenden **x**-Rechten aus. | + | /etc/init.d/micrond reload |
- | | + | |
- | Wollen wir nun ein WLAN umschalten, geben wir zwei Parameter an: | ||
- | * **erster Parameter** | ||
- | * '' | ||
- | * '' | ||
- | * '' | ||
- | * **zweiter Parameter** | ||
- | * '' | ||
- | * '' | ||
- | |||
- | So deaktivert z.B. folgender Aufruf das 5 GHz Client-WLAN: | ||
- | Da wir das natürlich nicht jedesmal per Hand ausführen wollen, legen wir uns entsprechende cronjobs an. Dazu hinterlegen wir in der User-crontab des Nutzers **root** entsprechend unsere zeitlichen Vorstellungen. | ||
- | | ||
- | |||
- | < | ||
- | 30 22 * * * / | ||
- | |||
- | # 5 GHz Client WLAN um 22:30 Uhr ausschalten | ||
- | 30 22 * * * / | ||
- | |||
- | # privates verschluesseltes WLAN um 00:00 Uhr ausschalten | ||
- | * 0 * * * / | ||
- | |||
- | # um 6:45 Uhr alle WLANs wieder aktivieren | ||
- | 45 6 * * * / | ||
- | 45 6 * * * / | ||
- | 45 6 * * * / | ||
- | |||
- | In dem gezeigtem Beispiel würden um 22:30 Uhr jeweils die Freifunk Client-Netze sowie das private verschlüsselte WLAN um 00:00 Uhr ausgeschaltet, | ||
- | |||
- | === AP-Timer === | ||
- | Seit der Firmware-Version **v2019.0.8** ((Ende Juli 2019)) gibt es nun eine Konfigurationsoption, | ||
- | |||
- | Auf der Konsole können wir uns hierzu dann die gesetzten Optionen mit Hilfe des Befehls '' | ||
- | uci show ap-timer | ||
- | |||
- | < | ||
- | ap-timer.settings.enabled=' | ||
- | ap-timer.settings.type=' | ||
- | ap-timer.all=day | ||
- | ap-timer.all.on=' | ||
- | ap-timer.all.off=' | ||
- | |||
- | In der Konfigurationsdatei ''/ | ||
- | <file bash / | ||
- | option enabled ' | ||
- | option type ' | ||
- | |||
- | config day ' | ||
- | list on ' | ||
- | list off ' | ||
- | |||
- | </ | ||
- | |||
- | Wollen wir die Zeiten via SSH ändern, setzen wir die entsprechenden **ap-timer**-Optionen. In nachfolgendem Beispiel wollen wir das WLAN morgens um **8:00** Uhr ein- und nachmittags um **17:45** Uhr wieder ausschalten. | ||
- | |||
- | uci set ap-timer.all.on=' | ||
- | uci set ap-timer.all.off=' | ||
- | uci commit | ||
+ | Siehe dazu auch den [[https:// | ||
==== Zugangs zum Clientnetz begrenzen - Clients MAC-basiert aussperren ==== | ==== Zugangs zum Clientnetz begrenzen - Clients MAC-basiert aussperren ==== | ||
Bisweilen kann es erforderlich werden, einzelne Clients auf Basis ihrer MAC-Adresse auszusperren. Die kann verschiedene Gründe haben, sei es nur zum Schutz des Client selbst oder auch zum Schutz anderer Nutzer vor Störungen. | Bisweilen kann es erforderlich werden, einzelne Clients auf Basis ihrer MAC-Adresse auszusperren. Die kann verschiedene Gründe haben, sei es nur zum Schutz des Client selbst oder auch zum Schutz anderer Nutzer vor Störungen. | ||
Zeile 768: | Zeile 694: | ||
/ | / | ||
- | ==== manuelle Segmentauswahl | + | ==== Ändern der Domain / des Segments |
Auf Grund des großen Wachstums der Nodeanzahl im Freifunknetz München, wurde im Mitte 2019 das Gesamtnetz von ursprünglich drei Segmenten auf 12 ((Stand Anfang Juni 2019)) erweitert. Basierend auf hinterlegten Geo-Daten und auch umliegender WLAN-Access-Points erfolgt die Segmentauswahl vollautomatisch und könnte zukünftig bei weiterem Zuwachs an Freifunkknoten noch weiter aufgeteilt werden. | Auf Grund des großen Wachstums der Nodeanzahl im Freifunknetz München, wurde im Mitte 2019 das Gesamtnetz von ursprünglich drei Segmenten auf 12 ((Stand Anfang Juni 2019)) erweitert. Basierend auf hinterlegten Geo-Daten und auch umliegender WLAN-Access-Points erfolgt die Segmentauswahl vollautomatisch und könnte zukünftig bei weiterem Zuwachs an Freifunkknoten noch weiter aufgeteilt werden. | ||
{{page>: | {{page>: | ||
+ | Die aktuelle Liste aller Segment/ | ||
- | Will man in Erfahrung bringen, welche Segmente momentan zur Verfügung stehen, | + | Die aktuelle Segmentzuordnung am eigenen Knoten |
- | ls /lib/gluon/domains | cut -f1 -d "." | + | # uci show gluon.core.domain |
+ | gluon.core.domain=' | ||
- | | + | Der Knoten befindet sich also demnach im Segment **ffmuc_welt**. Will man diesen Knoten nun z.B. in das Segment **ffmuc_muc_ost** versetzen, schreibt man in die betreffende Konfigurationsoption den neuen Segmentnamen. Siehe dazu |
- | | + | (siehe auch [[https:// |
- | ... | + | |
- | Die aktuelle Segmentzuordnung am eigenen Knoten kann man mit folgendem Befehl abfragen: | + | gluon-switch-domain |
- | | + | |
- | gluon.core.domain=' | + | |
- | + | ||
- | Der Knoten befindet sich also demnach im Segment **ffmuc_uml_ost**. Will man diesen Knoten nun z.B. in das Segment // | + | |
- | uci set gluon.core.domain=' | + | |
- | uci commit | + | |
- | | + | |
- | | + | |
==== Passthrough-Port des TP-Link CPE ==== | ==== Passthrough-Port des TP-Link CPE ==== | ||
Zeile 819: | Zeile 739: | ||
==== Reboot des Knoten in den Konfigurationsmodus ==== | ==== Reboot des Knoten in den Konfigurationsmodus ==== | ||
Möchte man seinen WLAN-Router erneut in den Konfigurationsmodus versetzen, um ihn dann mit dem Web-Browser via http:// | Möchte man seinen WLAN-Router erneut in den Konfigurationsmodus versetzen, um ihn dann mit dem Web-Browser via http:// | ||
- | uci set "gluon-setup-mode.@setup_mode[0].enabled=1" | + | |
- | uci commit | + | |
- | | + | Siehe dazu auch den [[https:// |
==== Routerkonfiguration komplett löschen / zurücksetzen ==== | ==== Routerkonfiguration komplett löschen / zurücksetzen ==== | ||
Möchte man den Router wieder in den Anfangszustand zurücksetzen, | Möchte man den Router wieder in den Anfangszustand zurücksetzen, | ||
- | firstboot | + | # firstboot |
- | + | This will erase all settings and remove any installed packages. Are you sure? [N/y] y | |
- | This will erase all settings and remove any installed packages. Are you sure? [N/y] | + | |
- | + | ||
- | y | + | |
/ | / | ||
- | + | | |
- | reboot | + | |
Anschließend ist der Router zurückgesetzt, | Anschließend ist der Router zurückgesetzt, | ||
- | |||
===== Update/ | ===== Update/ | ||
In aller Regel wird man bemüht sein, die Firmware seines bzw. seiner Router immer auf einen aktuellen Stand zu halten. Dies nicht nur aus Sicherheitsaspekten heraus, sondern auch um an Neuerungen teilhaben zu können. Die Freifunk-Community in München stellt dazu drei unterschiedliche Releasezwige zur Verfügung : https:// | In aller Regel wird man bemüht sein, die Firmware seines bzw. seiner Router immer auf einen aktuellen Stand zu halten. Dies nicht nur aus Sicherheitsaspekten heraus, sondern auch um an Neuerungen teilhaben zu können. Die Freifunk-Community in München stellt dazu drei unterschiedliche Releasezwige zur Verfügung : https:// | ||
Zeile 858: | Zeile 772: | ||
uci set autoupdater.settings.branch=' | uci set autoupdater.settings.branch=' | ||
uci commit autoupdater | uci commit autoupdater | ||
+ | | ||
Eine erneute Abfrage zeigt nun, dass der Branch **stable** künftig verwendet wird. | Eine erneute Abfrage zeigt nun, dass der Branch **stable** künftig verwendet wird. | ||
- | uci show autoupdater.settings.branch | + | # uci show autoupdater.settings |
+ | autoupdater.settings=autoupdater | ||
+ | | ||
autoupdater.settings.branch=' | autoupdater.settings.branch=' | ||
+ | autoupdater.settings.version_file='/ | ||
- | ==== Update | + | Siehe dazu auch den [[https:// |
+ | ==== Update forcieren ==== | ||
+ | |||
+ | === Via Autoupdater | ||
Mit Hilfe des Befehls '' | Mit Hilfe des Befehls '' | ||
| | ||
- | < | ||
- | |||
- | Possible options are: | ||
- | -b, --branch BRANCH | ||
- | |||
- | -f, --force | ||
- | and whether the autoupdater even is enabled. | ||
- | |||
- | -h, --help | ||
- | |||
- | -n, --no-action | ||
- | | ||
- | |||
- | --fallback | ||
- | | ||
- | |||
- | --force-version | ||
- | |||
- | < | ||
- | | ||
Das Update der Firmware kann manuell angestoßen werden, dazu verwendet man die Option **-f**. Somit wir aus dem aktuell definierten Releasezweig ein Update gesucht, geholt und bei Verfügbarkeit auch installiert. | Das Update der Firmware kann manuell angestoßen werden, dazu verwendet man die Option **-f**. Somit wir aus dem aktuell definierten Releasezweig ein Update gesucht, geholt und bei Verfügbarkeit auch installiert. | ||
Zeile 896: | Zeile 795: | ||
Durch Angabe des Branches kann man unabhängig vom konfigurierten Releasezweig eine spezielle Firmware installieren. Im folgenden Beispiel erzwingen wir den Firmwareupdate aus dem Zweig // | Durch Angabe des Branches kann man unabhängig vom konfigurierten Releasezweig eine spezielle Firmware installieren. Im folgenden Beispiel erzwingen wir den Firmwareupdate aus dem Zweig // | ||
| | ||
- | < | ||
- | Stopping cron... | ||
- | Stopping haveged... | ||
- | Stopping micrond... | ||
- | Stopping sysntpd... | ||
- | Stopping gluon-radvd... | ||
- | Stopping uhttpd... | ||
- | Stopping sse-multiplexd... | ||
- | Stopping gluon-respondd... | ||
- | vm.drop_caches = 3 | ||
- | Downloading image: | ||
- | Stopping network... | ||
- | Killed by signal 1. | ||
- | Killed by signal 1. | ||
- | packet_write_wait: | ||
- | Beide Beispiele setzen natürlich voraus, dass der Firmware-Server erreichbar ist. Alternativ ist es auch möglich das Firmware-Image manuell herunterladen bzw. auf den Router | + | === Manuell mit Internet am Router |
- | In folgendem Beispiel gehen wir mal davon aus, dass wir uns nicht 100%ig sicher sind welches Router-Modell in Verwendung ist. Alos fragen wir zunächst ab, welches Routermodell da im Einsatz ist. | + | Falls wir uns nicht 100%ig sicher sind welches Router-Modell in Verwendung ist, kann man das mit dem folgenden Befehl abfragen (siehe dazu auch den [[https:// |
- | | + | # |
+ | Extreme Networks WS-AP3825i | ||
+ | |||
+ | Wir werden also erst einmal von der Firmwareseite das gewünschte Image unter **Upgrade** suchen: https:// | ||
- | Ubiquiti UniFiAP Outdoor+ | + | Anstatt die Datei downzuloaden, |
- | Wir werden uns also erst einmal von der Firmwareseite | + | Anschließend kann führen wir das Update mit dem Befehl **sysupgrade** durch, wobei hier der Link von oben kopiert werden kann: |
- | wget https:// | + | echo 3 > / |
+ | sysupgrade | ||
+ | | ||
- | Anschließend kopieren wir diese Date in das Zielverzeichnis | + | Siehe dazu auch [[https://github.com/freifunk-gluon/gluon/wiki/ |
- | $ scp gluon-ffmuc-v2019.0.4~exp86-ubiquiti-unifiap-outdoor+-sysupgrade.bin ff_pliening_gbw_test:/ | + | |
- | < | ||
- | # # | ||
- | # ╭∩╮( ͡° ل͟ ͡° )╭∩╮ | ||
- | # # | ||
- | # | ||
- | # # | ||
- | # This system is actively monitored and all connections may be logged. | ||
- | # By accessing this system, you consent to this monitoring. | ||
- | # # | ||
- | ############################################################################## | ||
- | gluon-ffmuc-v2019.0.4~exp86-ubiquiti-unifiap-outdoor+-sysupgrade.bin | ||
- | Killed by signal 1. | ||
- | Killed by signal 1. | ||
- | </ | ||
- | Bevor wir nun die Firmware installieren, | + | === Manuell ohne Internet am Router |
- | ssh ff_pliening_gbw_od | + | |
- | echo 3 > /proc/sys/vm/drop_caches | + | Falls wir uns nicht 100%ig sicher sind welches Router-Modell in Verwendung ist, kann man das mit dem folgenden Befehl abfragen (siehe dazu auch den [[https://github.com/freifunk-gluon/gluon/ |
+ | # lua -e ' | ||
+ | Extreme Networks WS-AP3825i | ||
+ | |||
+ | Die vorigen Beispiele setzen voraus, dass der Firmware-Server erreichbar ist. Alternativ ist es auch möglich das Firmware-Image manuell herunterladen bzw. auf den Router kopieren. Im folgenden Beispiel holen wir uns zuerst das Image auf unseren Admin-Rechner und kopieren es dann via '' | ||
- | Zum Updaten verwenden wir den Befehl '' | + | Wir werden uns also erst einmal von der Firmwareseite das gewünschte Image unter **Upgrade** auf unseren Admin-Rechner herunterladen: |
- | | + | |
- | < | + | Anschließend kopieren wir diese Date in das Zielverzeichnis |
- | / | + | $ scp gluon-ffmuc-v2022.10.5-extreme-networks-ws-ap3825i-sysupgrade.bin root@192.168.1.1:/ |
+ | |||
+ | |||
+ | Bevor wir nun die Firmware installieren, | ||
+ | $ ssh root@192.168.1.1 | ||
- | upgrade-option: | + | # echo 3 > /proc/sys/ |
- | -f <config> | + | |
- | -i | + | |
- | -c | + | |
- | -n do not save configuration over reflash | + | |
- | -p do not attempt to restore the partition table after flash. | + | |
- | -T | --test | + | |
- | | + | |
- | -F | --force | + | |
- | Flash image even if image checks fail, this is dangerous! | + | |
- | -q less verbose | + | |
- | -v more verbose | + | |
- | -h | --help | + | |
- | backup-command: | + | Zum Updaten verwenden wir den Befehl |
- | -b | --create-backup < | + | |
- | | + | |
- | then exit. Does not flash an image. If file is '-', | + | |
- | i.e. stdout, verbosity is set to 0 (i.e. quiet). | + | |
- | -r | --restore-backup < | + | |
- | | + | |
- | then exit. Does not flash an image. If file is '-', | + | |
- | the archive is read from stdin. | + | |
- | -l | --list-backup | + | |
- | list the files that would be backed up when calling | + | |
- | | + | |
Das Update der Firmware stoßen wir nun wie folgt an. | Das Update der Firmware stoßen wir nun wie folgt an. | ||
- | sysupgrade /tmp/gluon-ffmuc-v2019.0.4~exp86-ubiquiti-unifiap-outdoor\+-sysupgrade.bin | + | |
- | < | + | < |
- | Saving config files... | + | Commencing upgrade. Closing all shell sessions.</ |
- | Commencing upgrade. Closing all shell sessions. | + | |
- | Killed by signal 1. | + | |
- | Killed by signal 1. | + | |
- | packet_write_wait: | + | |
===== links ===== | ===== links ===== |