Perl nicht gefunden

  • Hallo,

    ich will per cronjob mehrere Perl-Scripte von mysqldumper laufen lassen um meine Datenbanken zu sichern.


    Wenn ich die test .pl Scripte über http-Request aufrufe, sehe ich, dass Perl funktioniert.

    Also das funktioniert: http://...a2f30.netcup.net/cgi-bin/perltest.pl

    Wenn ich dann den sqldumper Befehl aufrufe per Cronjob: perl /var/www/vhosts/hosting.....a2f30.netcup.net/cgi-bin/crondump.pl -config=xxx -html_output=0


    Bekomme ich die Fehlermeldung: -: perl: command not found


    Kann mir jemand sagen, wie ich dafür Sorgen kann, dass der Perl Interpreter gefunden wird?

  • Hay,


    Webhosting und Cron sind unterschiedliche Nutzer bzw. bei Plesk ggf. auch unterschiedliche Perl-Versionen. Ich habe einen eigenen root-Server, deswegen kann ich nicht abschätzen, ob das beim Webhosting genauso ist.


    Log Dich mal per ssh ein und tippe which perl ein. Dann bekommst Du den Pfad zu Perl, sofern er im Suchpfad liegt (das sollte eigentlich so sein). Diesen Pfad trägst Du dann genau so im shebang ein, also #!/pfad/zu/perl  mit dem "/" am Anfang, da Pfade im Cron immer absolut sein sollen.


    CU, Peter

    Peter Kleemann // https://www.pkleemann.de // +49 621 1806222-0 // Kann Programme, Internet, Netzwerke und Telefon.

  • perl ist nicht vorhanden in der SSH-Umgebung.


    Code
    bash-4.3$ which perl
    bash-4.3$ find / -name 'perl'
    find: `/etc/ssl/ssl/private': Permission denied
    find: `/etc/ssl/private': Permission denied
    bash-4.3$

    (Getestet mit der EiWoMiSau)

    Meine Minecraft-Plugins auf SpigotMC (Open Source): www.spigotmc.org/members/mfnalex.175238/#resources

    Discord: discord.jeff-media.com

  • Hay,

    perl ist nicht vorhanden in der SSH-Umgebung.

    soweit ich weiß ist zumindest python auch nicht über CLI machbar

    das ist natürlich schade :)


    Aber wenn zumindest wget oder curl im ssh zur Verfügung steht (was jemand mit einem Webhosting auch mal testen könnte), dann kann man einen Webrequest auf den eigenen Server machen, auf dem dann ein Perl-Script läuft. Workaround und total unhübsch :D


    CU, Peter

    Peter Kleemann // https://www.pkleemann.de // +49 621 1806222-0 // Kann Programme, Internet, Netzwerke und Telefon.

  • Ja, sollte funktionieren, wget und curl sind vorhanden. Aber eine hässlichere Lösung gibt es wohl kaum ^^


    EDIT: Ja, geht tatsächlich:

    Code
    bash-4.3$ curl https://www.<meinedomain>.de/test.pl
    test

    Meine Minecraft-Plugins auf SpigotMC (Open Source): www.spigotmc.org/members/mfnalex.175238/#resources

    Discord: discord.jeff-media.com

  • Wie sieht es mit externen Cron-Diensten z.B Cronjob.de aus?

    Evtl. geht es da ja die rufen auch über http auf.

    It's me, only me, pure michi 🦆

    RS 1000 SAS G8 | Cyber Quack

    VPS: 50 G7 |B Ostern 2017|200 | Karneval | piko

    WH: SmallEi | Adv17 Family |4000 SE|1000 SE

  • Sehe ich auch so, bevor man sich von irgendwelchen kostenlosen Webservices abhängig macht, kann man es auch selbst aufrufen. Cronjob.de könnte ja auch von heute auf morgen den Dienst einstellen. Wichtig ist aber, dass direkt die "richtige" URL gecurlt wird, ohne dass da ein 301 zwischen ist, denn curl verfolgt ja die Weiterleitung soweit ich weiß nicht.

    Meine Minecraft-Plugins auf SpigotMC (Open Source): www.spigotmc.org/members/mfnalex.175238/#resources

    Discord: discord.jeff-media.com