Posts by sebman

    Sehr geehrtes Forum,

    derzeit probiere ich mich an systemctl aus.

    mein Ziel ist es, dass bestimmte python- oder shell-Programme im Sekundentakt ausgeführt werden. Mit cronjob kann man ja leider nur im Minutentakt solche Dinge erledigen. Daher systemctl. Das funktioniert auch.

    Testweise habe ich eines .sh wie bei Aufruf einen Zeitstempel in eine Textdatei schreibt.

    In /etc/systemd/system.beispiel.service steht folgendes:

    Code
    [Unit]
    Description=Beispiel_Zeitstempel_service
    
    [Service]
    ExecStart=/bin/bash /home/pi/Desktop/beispiel.sh

    In /etc/systemd/system.beispiel.timer steht folgendes:

    Code
    [Unit]
    Description=Beispiel_Zeitstempel_timer
    
    [Timer]
    Persistent=true
    OnUnitActiveSec=10s
    OnBootSec=30s
    
    [Install]
    WantedBy=timers.target

    Anschließend habe ich mit:

    Code
    sudo systemctl enable beispiel.timer

    ...habe ich das Ding gestartet. Nach einem reboot ging es dann auch los. Allerdings wurden die 10s nicht immer eingehalten. Manchmal waren es 12s, manchmal aber auch 17s. Woran könnte es liegen?

    Anschließend habe ich den .timer auf 1s eingestellt. Das klappt 3-4 mal , nach 30s wieder einer und dann wieder nichts. Was mache ich falsch?

    Gibt es eigentlich noch eine andere Möglichkeit auf dem PI ein timer-event zu setzen. Ich bin ja nun wirklich kein Prorgammierexperte, aber wenn ich in python oder C einen timer programmiere, muss doch, damit das timer-event ausgeführt wird, das Programm regelmäßig laufen, oder?

    Könntet ihr mir Alternativen aufzeigen oder zeigen wie es mit systemctl richtig geht?

    Vielen Dank für den Hinweis und den entsprechenden code!

    Aber ich krieg es irgendwie noch nicht hin. Bei mir kommt folgende Fehlermeldung:

    Code
    Traceback (most recent call last):
      File "nexttest.py", line 32, in <module>
        system_cron = CronTab(tabfile='/etc/crontab', user=False)
    TypeError: __init__() got an unexpected keyword argument 'tabfile'

    Ich hab mich auch schon auf diversen anderen Seiten rumgetrieben und nebenbei ein bisschen ausprobiert. Aber ich hab immer Probleme mit den Argumenten.

    Sehr geehrtes Forum,

    eine Frage beschäftigt mich schon eine ganze Weile. Leider finde ich nichts dazu, und ich bin auch kein Linuxexperte.

    Die Frage ergibt sich ja aus der Überschrift: Ist es möglich, eine crontab aus einem python-Programm heraus zu ändern?

    Daraus ergibt sich für mich noch eine weitere Frage: Können Dateien, die üblicherweise nur mit root-Rechten und im nano-Editor, also "sudo nano", geändert werden, auch aus einem python-Programm heraus geändert werden. Ich bin mir ja sicher, dass es da keine Möglichkeit gibt, aber ich hätte wirklich gerne die Bestätigung von Leuten, die sich damit auskennen :)

    Sehr geehrtes Forum,

    Ich habe ein Raspberry Pi 3 (OS: Raspbian GNU/Linux 8 (jessie)). Um damit mich mobil mit dem Internet zu verbinden, habe ich mir einen LTE-dongle (HUAWEI E3372) und eine SIM-Karte von der Telekom beschafft. Ein Einrichtung des dongles als Modem am Pi habe ich entsprechend der Anleitung der Kollegen durchgeführt:

    tunethepi.de
    October 26, 2014 at 4:14 PM

    Ich kann mich auch problemlos mit dem Internet verbinden: Stick reinstecken , browser öffnen, dann komme ich ganz automatisch auf eine Startseite, um die Verbindung herzustellen, Verbinden, fertig.

    Nun möchte ich aber, dass der Pi automatisch, nach dem hochfahren, eine Verbindung mit dem Internet aufbaut. mit dem tool sakis3g hat es nicht geklappt, ich glaube er konnte das Gerät nicht finden. Nun fand nicht folgende Anleitung sehr interessant:

    https://raspberry.tips/raspberrypi-tu…biles-internet/

    ...klappt aber auch nicht.

    Folgende Fehlermeldung erscheint:

    lsusb liefert folgendes:

    Code
    Bus 001 Device 005: ID 12d1:14dc Huawei Technologies Co., Ltd. 
    Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
    Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. 
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

    Ich dachte bisher immer, das mein modem bereits erkannt wurde, da ich ja eine Internetverbindung aufbauen konnte und lsusb 14dc zurückgibt. wvdial sieht das aber scheinbar anders. Könnt ihr mir bitte weiterhelfen?

    Aaaah , kleingeschrieben, ok danke :) Ich hab halt den groß geschriebenen Namen genommen, weil der auch so in der Anmelde-GUI da steht. Hatte gestern aber keine Lust mehr weitere Versuche zu starten. Leider werde ich in den nächsten 2 Wochen auch nicht mehr an diesem Projekt arbeiten können. Sobald sich neue Erkenntnisse ergeben oder Probleme auftauchen, teile ich das hier mit.

    Bis dahin habe ich noch einige theoretische Fragen:

    1. Wie kann ich das mit einem Windows-Rechner auf dem "Gateway-Pi" im LAN realisieren? Geht das überhaupt mit reverseSSH? Welche Tools kämen dafür in
    Frage? Putty o.ä.?

    2. Wie kann ich bei meinem Projekt, also Raspi mit LTE-Stick in der Pampa, eine SFTP-Datenübertragung realisieren?

    3. Nun möchte ich noch die Idee von ThomasL aufgreifen, also den Pi via SMS, Telegram-Message oder Mail ansprechen, sodass dieser eine Verbindung mit open VPN aufbaut. Gibt es dafür eine ählnliche Anleitung wie für reverseSSH? Ich bin da leider noch nicht fündig geeworden.

    Nochmals Danke an alle , die sich hier beteiligt haben, das hat mir alles schon sehr geholfen!

    So habe eben meinem Befehl noch ein -v hinzugefügt. Hier die Rückgabe:

    pi@raspberrypi:~ $ ssh -p2000 -v -fNC -R 10011:localhost:22 Sebastian@XXX.XXX.XXX.XXX

    OpenSSH_6.7p1 Raspbian-5+deb8u3, OpenSSL 1.0.1t 3 May 2016

    debug1: Reading configuration data /etc/ssh/ssh_config

    debug1: /etc/ssh/ssh_config line 19: Applying options for *

    debug1: Connecting to XXX.XXX.XXX.XXX [XXX.XXX.XXX.XXX] port 2000.

    debug1: Connection established.

    debug1: key_load_public: No such file or directory

    debug1: identity file /home/pi/.ssh/id_rsa type -1

    debug1: key_load_public: No such file or directory

    debug1: identity file /home/pi/.ssh/id_rsa-cert type -1

    debug1: key_load_public: No such file or directory

    debug1: identity file /home/pi/.ssh/id_dsa type -1

    debug1: key_load_public: No such file or directory

    debug1: identity file /home/pi/.ssh/id_dsa-cert type -1

    debug1: key_load_public: No such file or directory

    debug1: identity file /home/pi/.ssh/id_ecdsa type -1

    debug1: key_load_public: No such file or directory

    debug1: identity file /home/pi/.ssh/id_ecdsa-cert type -1

    debug1: key_load_public: No such file or directory

    debug1: identity file /home/pi/.ssh/id_ed25519 type -1

    debug1: key_load_public: No such file or directory

    debug1: identity file /home/pi/.ssh/id_ed25519-cert type -1

    debug1: Enabling compatibility mode for protocol 2.0

    debug1: Local version string SSH-2.0-OpenSSH_6.7p1 Raspbian-5+deb8u3

    debug1: Remote protocol version 2.0, remote software version OpenSSH_7.2p2 Ubuntu-4ubuntu2.2

    debug1: match: OpenSSH_7.2p2 Ubuntu-4ubuntu2.2 pat OpenSSH* compat 0x04000000

    debug1: SSH2_MSG_KEXINIT sent

    debug1: SSH2_MSG_KEXINIT received

    debug1: kex: server->client aes128-ctr umac-64-etm@openssh.com zlib@openssh.com

    debug1: kex: client->server aes128-ctr umac-64-etm@openssh.com zlib@openssh.com

    debug1: sending SSH2_MSG_KEX_ECDH_INIT

    debug1: expecting SSH2_MSG_KEX_ECDH_REPLY

    debug1: Server host key: ECDSA 34:63:9d:9c:59:71:2f:f8:e5:19:a0:08:22:5c:35:c2

    debug1: checking without port identifier

    debug1: Host 'XXX.XXX.XXX.XXX' is known and matches the ECDSA host key.

    debug1: Found key in /home/pi/.ssh/known_hosts:1

    debug1: found matching key w/out port

    debug1: SSH2_MSG_NEWKEYS sent

    debug1: expecting SSH2_MSG_NEWKEYS

    debug1: SSH2_MSG_NEWKEYS received

    debug1: SSH2_MSG_SERVICE_REQUEST sent

    debug1: SSH2_MSG_SERVICE_ACCEPT received

    debug1: Authentications that can continue: publickey,password,keyboard-interactive

    debug1: Next authentication method: publickey

    debug1: Trying private key: /home/pi/.ssh/id_rsa

    debug1: Trying private key: /home/pi/.ssh/id_dsa

    debug1: Trying private key: /home/pi/.ssh/id_ecdsa

    debug1: Trying private key: /home/pi/.ssh/id_ed25519

    debug1: Next authentication method: keyboard-interactive

    debug1: Authentications that can continue: publickey,password,keyboard-interactive

    debug1: Next authentication method: password

    Sebastian@XXX.XXX.XXX.XXX's password:

    debug1: Authentications that can continue: publickey,password,keyboard-interactive

    Permission denied, please try again.


    sebastian@sebastian-X75A1:~$ ls -l .ssh

    insgesamt 4

    -rw-r--r-- 1 sebastian sebastian 395 Dez 9 17:51 known_hosts


    Fehlen mir irgendwelche files? Ich mach nun erstmal Feierabend. :)

    Ich hab es fast geschafft. peinlicher Fehler: habe auf meinem laptop vergessen openssh-server -und client zu installieren. ist erfolgt. Nun werde ich nach einem Passwort gefragt. Aber keines meiner Passwörter funktioniert. Ich muss nun noch einmal fragen:

    ssh -p2000 -fNC -R 10011:localhost:22 pi@dyn.IP.adresse

    Das was vor dem "@" steht,, ist das der Benutzername meines laptops oder der des Raspberry's. oder kann das sogar ganz willkürlich sein. komischerweise komm ich bei beidem bis zu Passworteingabe, aber keines funktioniert. Bitte gebt mir eine letzte Hilfestellung. Danke im Vorraus

    Erstmal Danke für die vielen Reaktionen, aber ich krieg die Verbindung nicht aufgebaut. Ich habe aber wirklich die Portfreigabe auf der fritzbox eingerichtet. Und den Befehl habe ich mittlerweile auch in allen Variationen durchgeklingelt.

    Gibt es eine Möglichkeit zu testen, ob eine Verbindung überhaupt möglich wäre. Eine Art scan-Funktion woran ich auf meinem laptop im LAN sehen kann, ob etwas über den Port ankommen würde. Betriebssystem auf dem lappi ist ubuntu.

    So, ich habe die Anleitung befolgt, jedoch klappt es noch nicht:

    Letztendlich gebe ich ja folgenden Befehl ein:

    ssh -p2000 -fNC -R 10011:localhost:22 pi@dyn.IP.adresse

    Natürlich nicht genauso, sondern mit meinen Daten. Meine Fragen hierzu:

    - sind "localhost" und "pi" dasselbe? Meine "gateway-pi" ist ja mein laptop, welcher im LAN ist. Hier nehme ich doch meinen PC-Namen oder meine IP, oder? Also gebe ich an beiden Positionen das gleiche ein? Ich weiß ja, dass ich dort auch das LAN-Gateway angeben könnte, also der Fritzbox , um verschiedene Teilnehmer ansprechen zu können

    - müssen die dyn.IP.Adresse und die IP meines PC's einer gemeinsamen Netzmaske entsprechen, also müssen die ersten 3 Zahlen gleich sein? Sorry , aber was den Netzwerkkram angeht, kenn ich mich garnicht aus.

    Diese Fehlermeldung erscheint, wenn ich den oben genannten Befehl in meinen raspberry pi eingebe. Kann man aus der Rückmeldung schon erkennen , was funktioniert und was nicht?

    ssh: connect to host xxx.xxx.xxx.xxx port 22: Connection refused

    Vielen Dank für die schnelle Antwort!

    Das hört sich ja sehr gut an. Also brauche ich so keinen VPN-Tunnel zu erstellen?

    Könntest du mich trotzdem bitte ein bisschen anleiten, wie ich das realisiere? Wie stelle ich nun die Verbindung über reverse SSH und auto SSH her? Welche Pakete und Befehle brauche ich.

    Ich werde mich jetzt auch direkt intensiv damit beschäftigen.

    Nochmals: Vielen Dank!

    Sehr geehrtes Forum,

    in meiner Verzweiflung wende ich mich nun vertrauensvoll an euch, in der Hoffnung, dass ihr mir helfen könnt.

    Folgendes habe ich vor: Ich möchte einen Raspberry Pi 3 irgendwo in der Pampa abstellen, damit dieser dort diverse Messwerte aufnimmt. An den Pi habe ich ein LTE-Stick angeschlossen. Diese Werte sollen in eine Cloud geschrieben werden (funktioniert einwandfrei). Des Weiteren möchte ich den Pi aber auch aus der Ferne per SSH warten können.

    In meinem LAN konnte ich erfolgreich per SSH und SFTP eine Verbindung herstellen, das ist ja auch nicht weiter schwer :)

    Nun möchte ich aber von meinem LAN aus über das Internet auf den Pi per SSH zugreifen können , um cronjobs und ähnliches zu setzen. Bei diesem "Fernzugriff" bin ich aber nun am verzweifeln.

    Ich kenne mich leider mit der ganzen Problematik nicht so gut aus. Ich vermute, dass ich auf dem Pi openVPN installieren muss, für meinen Router eine dynDNS und eine Portweiterleitung einrichten muss und dass ich diverse Zertifikate erstellen muss, aber wie gesagt, ich bin mir da nicht sicher und kenne mich auch nahezu garnicht damit aus.

    Könnt Ihr mir bitte eine Anleitung dazu geben, was ich alles tun muss? Ist mein Vorhaben überhaupt realisierbar? Oder gibt es vielleicht sogar einen einfacheren Weg?