Raspberry Pi will nicht runterfahren!

L I V E Stammtisch ab 20:30 Uhr im Chat
  • Hallo Zusammen,

    Ich bin noch ein ziemlicher Linux Noob, verzeiht mir also diese Frage.
    Beim booten meines Raspberry Pi's werden no-ip, openvpn und pyload gestartet. Openvpn startet zuletzt und blockiert danach meine Eingaben (Ich müsste es schliessen um wieder etwas machen zu können). Daher mache ich eigentlich alles per SSH. Wenn ich den Pi aber neustarten oder runterfahren möche: "sudo shutdown -r now" kommt zwar die Meldung es würde heruntergefahren, in Wahrheit passiert aber nix :(

    Weiss jemand Rat?
    Danke im Voraus

    Einmal editiert, zuletzt von tschoesi (3. Juli 2013 um 11:15)

  • -r mit reboot
    -h mit unten bleiben !

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)

    • Offizieller Beitrag

    Wie startest du denn ein Applikationen? Klingt für so als wenn du ein & am ende deines openvpn befehls vergessen hättest. Ich persönlich ziehe es vor, eigenständige Applikationen in "Screen" laufen zu lassen.
    Wird nichtmal die SSH verbindung gekappt wenn du neustarten willst? was steht denn in

    Code
    /var/log/messages


    nachdem du den Befehl eingegeben hast?


  • -r mit reboot
    -h mit unten bleiben !

    Das ist mir schon klar :D


    Wie startest du denn ein Applikationen? Klingt für so als wenn du ein & am ende deines openvpn befehls vergessen hättest. Ich persönlich ziehe es vor, eigenständige Applikationen in "Screen" laufen zu lassen.
    Wird nichtmal die SSH verbindung gekappt wenn du neustarten willst? was steht denn in

    Code
    /var/log/messages


    nachdem du den Befehl eingegeben hast?

    Ich starte beim booten ein Skript (VPN.sh) welches dann OpenVPN startet


    Kann es daran liegen, dass ich keinen Stop befehl darin habe? Ich kenn mich leider noch nicht so mit Linux aus.
    Kannst du mir auch noch helfen das mit Screen zu "installieren" (damit openvpn nicht mehr blockiert)

    EDIT: in messages steht sehr viel, wie kopier ich das am besten? :D

    Einmal editiert, zuletzt von tschoesi (3. Juli 2013 um 11:39)

    • Offizieller Beitrag

    eigentlich sollte es schon reichen wenn du aus

    Code
    exec /usr/share/VPN/VPN.sh


    das hier machst

    Code
    exec /usr/share/VPN/VPN.sh &

    Um screen zu installieren, machst du folgendes:

    Code
    sudo apt-get update
    sudo apt-get install screen

    Dann startest du eine neue Screen session und detached sie gleich wieder

    Code
    screen -dmS testsession


    Jetzt übergibst du der Session den Befehl den es starten soll

    Code
    screen -S testsession-p 0 -X stuff /home/pi/testscrip.sh$(printf \\r)


    $(printf \\r) übergibt das enterzeichen, ein einfaches /n funktioniert unter Bash nicht.
    Nun läuft das testscript in ner seperaten session.

    um auf eine bestehende session zu connecten

    Code
    screen -r sessionname


    (im unserem beispiel testsession)
    Um die Session wieder zu verlassen, musst STRG+A, dann D drücken. Einfaches STRG+D beendet sie Session
    Mehr zum thema screen gibt es hier

  • Das ist mir schon klar :D

    woher weiss ich das ? Titel runterfahren, Beispiel reboot :P

    lasst die PIs & ESPs am Leben !
    Energiesparen:
    Das Gehirn kann in Standby gehen. Abschalten spart aber noch mehr Energie, was immer mehr nutzen. Dieter Nuhr
    (ich kann leider nicht schneller fahren, vor mir fährt ein GTi)


  • woher weiss ich das ? Titel runterfahren, Beispiel reboot :P

    Ich hab ja geschrieben herunterfahren oder neustarten, ist ja aber eigentlich egal


    Danke für deine Antwort! nur versteh ich nicht ganz, wo dieses "screen -dmS..." hinsoll (in meine autostart datei oder ins skript welches gestartet wird?

    • Offizieller Beitrag

    ist eigentlich gehuppt wie gesprungen, wie man so schön sagt ;). Ich würds in den autostart (rc.local?) schreiben, es sei denn das dein startscript so umfangreich ist das die Übersichtlichkeit leidet.

    du kannst die befehle auch erstmal in der console testen um ein Gefühl dafür zu kriegen ;). Das screen -r brauchst du natürlich nicht mit reinschreiben, das nutzt du dann später falls du mal per ssh auf eine der sessions musst.

  • Also

    im verzeichnis /etc/init.d/ ist die datei openvpnboot
    diese sieht jetzt gerade so aus, ich weiss aber nicht ob das so richtig ist.

    diese soll das Skript VPN.sh starten, welches diesen Inhalt hat (startet openvpn mit den richtigen config files)

    Bash
    #!/bin/bash
    /usr/sbin/openvpn /usr/share/VPN/Island.ovpn


    Stimmt das so in der ersten Datei? Ich kann aufjedenfall den Pi wieder herunterfahren, aber ich würde trotzdem gerne wissen ob das so korrekt ist.

    -tschoesi

    • Offizieller Beitrag

    Ich würde das in einem Zusammenfassen, nämlich so.

  • Danke, das Skript funktioniert aber leider irgendwie nicht mehr

    Ich bekomme diese Fehlermeldung:

    Code
    ./openvpnboot: 3: ./openvpnboot: start: not found
    ./openvpnboot: 4: ./openvpnboot: stop: not found
    ./openvpnboot: 6: ./openvpnboot: respawn: not found
    [screen is terminating]


    und

    Code
    Cannot exec '0' : No such file or directory

    Müsste ich vielleicht noch irgendwie Start und Stop Blöcke und so einfügen?

    Einmal editiert, zuletzt von tschoesi (3. Juli 2013 um 18:05)

    • Offizieller Beitrag

    probier das erstmal in der console und schau ob das dort funktioniert.

    Code
    screen -dmS openvpnbootsession
    screen -S openvpnbootsession-p 0 -X stuff /usr/sbin/openvpn /usr/share/VPN/Island.ovpn$(printf \\r)


    beende Openvpn natürlich zuerst.

    • Offizieller Beitrag

    Mein fehler..glaube ich ;)

    Code
    screen -dmS openvpnbootsession
    screen -S openvpnbootsession-p 0 -X stuff "/usr/sbin/openvpn /usr/share/VPN/Island.ovpn"$(printf \\r)


    wenn du es erst in der console probiert musst du den 2. befehl mit sudo starten (wenn du nicht root bist)


  • Mein fehler..glaube ich ;)

    Code
    screen -dmS openvpnbootsession
    screen -S openvpnbootsession-p 0 -X stuff "/usr/sbin/openvpn /usr/share/VPN/Island.ovpn"$(printf \\r)


    wenn du es erst in der console probiert musst du den 2. befehl mit sudo starten (wenn du nicht root bist)

    Ich bekomme immer noch den selben Fehler :(

Jetzt mitmachen!

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