script nach ip vergabe starten

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von baud, 04.07.2008.

  1. #1 baud, 04.07.2008
    Zuletzt bearbeitet: 04.07.2008
    baud

    baud Routinier

    Dabei seit:
    19.03.2007
    Beiträge:
    266
    Zustimmungen:
    0
    Script nach Ipvergabe starten

    HI Leute !

    Ich hab zwar eine etwas unsaubere Loesung fuer nen Server bei mir ... der sich erst durch eine Fritz.box ne IP per DHCP holt (wlan) , und dann selbst als DHCP fungiert und per Lan Adressen vergibt. Nicht schoen... aber es ist genau das was ich brauche.

    nur muss ich nach dem der Server die IP von der Fritz.box geholt hat, 2 Befehle Ausfuehren.

    Code:
    /etc/init.d/ipmasq stop
    /etc/init.d/ipmasq stop
    Das waehre aber schoen wenn das automatisch funktioniert.

    Ich habe ein Ubuntu 8.04 System

    ja.... nun ist das ein Befehl der Rootrechte erfordert und funktioniert daher nicht mit der standard Autostartfunktion.
    Und da ich es weder in der /etc/rc.local noch in dem verzeichniss /etc/init.d zum laufen bekommen habe, wende ich mich nun an euch.

    meine Script sah so aus :

    hat leider nicht funktioniert.


    Irgendwer ne idee ?

    mfg

    baud
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. L0s3r

    L0s3r Tripel-As

    Dabei seit:
    22.09.2007
    Beiträge:
    216
    Zustimmungen:
    0
    Ort:
    MV
    Du kannst mit post-up Befehle übergeben, wenn das Interface gestartet wurde. Dazu trägst du in die /etc/network/interfaces nach iface ethx inet dhcp einfach den/die Befehle ein.
    Code:
    iface eth0 inet dhcp
    post-up command1
    post-up command2
    ...
     
  4. baud

    baud Routinier

    Dabei seit:
    19.03.2007
    Beiträge:
    266
    Zustimmungen:
    0
    hmm....
    hat leider nicht funktioniert, da mein ath0 ( wlan interface )
    garnicht in der Datei aufgefuehrt ist ( komisch )

    da steht nur eth0 ( lan ) und dann halt die infos zu den statischen sachen im lan.

    *raezelhaft*


    Wlan ist bei mir auf den "Roaming-Modus" eingestellt.
    kann das vielleicht etwas damit zu tun haben ?
    also das ich das nicht manuell eingerichtet habe ?

    mfg
    baud
     
  5. #4 L0s3r, 04.07.2008
    Zuletzt bearbeitet: 04.07.2008
    L0s3r

    L0s3r Tripel-As

    Dabei seit:
    22.09.2007
    Beiträge:
    216
    Zustimmungen:
    0
    Ort:
    MV
    Also benutzt du den Network-Manager. Wiki von ubuntuusers sagt dazu:
    Also könntest du ath0 eintragen und schauen, ob es läuft.
     
  6. Gast1

    Gast1 Guest

    Sofern der NetworkManager verwendet wird, möchtest Du die Suchmaschine Deines geringsten Misstrauens mit den Stichworten

    Networkmanager Dispatcher

    oder

    NetworkmanagerDispatcher

    füttern.
     
  7. baud

    baud Routinier

    Dabei seit:
    19.03.2007
    Beiträge:
    266
    Zustimmungen:
    0
    funktioniert alles nich so recht.....

    ich habe eine Datei namens "ipmasq" in den Pfad "/etc/NetworkManager/dispatcher.d"
    abgelegt, mit folgendem Inhalt :

    Code:
    #!/bin/sh
    #/etc/NetworkManager/dispatcher.d/ipmasq
    ACTION=$2
    
    if [ "$ACTION" = "up" ]; then
    /etc/init.d/ipmasq stop
    /etc/init.d/ipmasq stop
    fi
    und sie dann ausfuerbar gemacht

    es funktioniert immer noch nicht.
    Was mach ich falsch ?

    so langsam ueberlege ich ... ob es nicht doch einfacher ist, einfach 50 Sekunden nach dem Start irgendwo die Befehle starten zu lassen.
    Ich weis aber leider nicht wie.... weils halt root Befehle sind !
    :-(

    ich hoffe jemand hat noch nen Tipp


    thx
     
  8. baud

    baud Routinier

    Dabei seit:
    19.03.2007
    Beiträge:
    266
    Zustimmungen:
    0
    ich will doch einfach nur nach dem starten ein Root-script ausfuehren ?

    das muss doch irgendwie gehen ... oder ?


    mfg

    baud
     
  9. L0s3r

    L0s3r Tripel-As

    Dabei seit:
    22.09.2007
    Beiträge:
    216
    Zustimmungen:
    0
    Ort:
    MV
    Hast du post-up auch probiert? Was mich nur wundert ist, dass die Ausführung über rc.local nicht gehen soll, da die Befehle dort üblicherweise mit root Rechten ausgeführt werden ^^
     
  10. baud

    baud Routinier

    Dabei seit:
    19.03.2007
    Beiträge:
    266
    Zustimmungen:
    0
    muss ich denn in der rc.local noch was beachten wenn ich das script aufrufe ?

    muss da noch nen Befehl oder sowas vor ?


    ich habe bis jetzt immer nur den Pfad angegeben.

    also das sah dann so aus :
    Code:
    #!/bin/sh -e
    #
    # rc.local
    #
    # This script is executed at the end of each multiuser runlevel.
    # Make sure that the script will "exit 0" on success or any other
    # value on error.
    #
    # In order to enable or disable this script just change the execution
    # bits.
    #
    # By default this script does nothing.
    
    
     /home/server/scriptdatei
    
    exit 0
     
  11. L0s3r

    L0s3r Tripel-As

    Dabei seit:
    22.09.2007
    Beiträge:
    216
    Zustimmungen:
    0
    Ort:
    MV
    Wenn das Skript ausführbar ist, sollte das reichen. Aber eigentlich kannst du die Befehle direkt über die rc.local aufrufen.
    Code:
    #!/bin/sh -e
    #
    # rc.local
    
    sleep 50
    /etc/init.d/ipmasq stop && sleep 1
    /etc/init.d/ipmasq start
    echo läuft
    exit 0
     
  12. okar

    okar Jungspund

    Dabei seit:
    13.04.2008
    Beiträge:
    21
    Zustimmungen:
    0
    wieso zwei mal stop?^^
     
  13. L0s3r

    L0s3r Tripel-As

    Dabei seit:
    22.09.2007
    Beiträge:
    216
    Zustimmungen:
    0
    Ort:
    MV
    Muss wohl n Tippfehler sein, weil mal steht stop start und dann wieder stop stop...

    Genauso verwirrend, wie ACTION=$2 und dann [ $ACTION = up ]. Warum nicht gleich [ $2 = up ] :think:
     
  14. okar

    okar Jungspund

    Dabei seit:
    13.04.2008
    Beiträge:
    21
    Zustimmungen:
    0
    schon klar, dass das nen Tippfehler ist, ich denke mal, dass das ist der Fehler ;)

    und zum 2.:
    naja es schadet nicht, ist jedoch besser lesbar, wobei das natürlich bei einem Skript dieser Größe keinen Unterschied macht.
     
  15. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  16. L0s3r

    L0s3r Tripel-As

    Dabei seit:
    22.09.2007
    Beiträge:
    216
    Zustimmungen:
    0
    Ort:
    MV
    Das Skript im Eingangspost ist ja noch richtig und da gings ja schon nicht, von daher denk ich mal, liegt die Ursache woanders.

    Eben drum :)
     
  17. baud

    baud Routinier

    Dabei seit:
    19.03.2007
    Beiträge:
    266
    Zustimmungen:
    0
    hey leute !

    Jo .. das weiter oben war ein Tippfehler ...
    ich schreibe von einem anderen Rechner.


    joa.. und seit dem ich das in der rc.local hab gehts auch :

    Code:
    #!/bin/sh -e
    #
    # rc.local
    
    sleep 50
    /etc/init.d/ipmasq stop && sleep 1
    /etc/init.d/ipmasq start
    echo läuft
    exit 0

    troz dessen, das mein script vorher alle Rechtet hatte.. und wenn ich es manuell ausgefuehrt habe, ging es auch. Aber nur der Pfad in der rc.local hat scheinbar nicht gereicht.


    danke fuer eure Hilfe Leute !
    jetzt gehts
     
Thema:

script nach ip vergabe starten

Die Seite wird geladen...

script nach ip vergabe starten - Ähnliche Themen

  1. Cheerp 1.0 kompiliert C++ nach JavaScript

    Cheerp 1.0 kompiliert C++ nach JavaScript: Der Compiler Cheerp, der C/C++-Anwendungen in JavaScript-Code für das Frontend und nativen Code für das Backend compiliert, ist in Version 1.0...
  2. Cheerp 1.0 compiliert C++ nach JavaScript

    Cheerp 1.0 compiliert C++ nach JavaScript: Der Compiler Cheerp, der C/C++-Anwendungen in JavaScript-Code für das Frontend und nativen Code für das Backend compiliert, ist in Version 1.0...
  3. python; Script sendet jabber Nachrichten. Als XMPP Klasse nicht

    python; Script sendet jabber Nachrichten. Als XMPP Klasse nicht: Hallo Forum, ich habe folgendes Ausgangsscript: import xmpp username = 'd****' passwd = 'a********' to='d****@x****.**' msg='hello :)' client...
  4. script nach den start ausführen

    script nach den start ausführen: Ich möchte das nach vollständigen booten anstatt "login tty1" ein Script aufgeführt wird das als Menü dienen soll. Wenn ich es bei init.d...
  5. Nach editieren auf Linux Server läuft Ubuntu-Script nichtmehr?

    Nach editieren auf Linux Server läuft Ubuntu-Script nichtmehr?: Hallo, ich muss mich schon wieder an euch wenden, weil ich wieder an nem Script bastele. Es handelt sich hier einfach um einen ls -lh auf...