Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Linux Linux Tools

GELÖST

Linux: 1 skript funktioniert nicht unter cron(tab)

Mitglied: klausph

klausph (Level 1) - Jetzt verbinden

02.09.2014, aktualisiert 20:37 Uhr, 1958 Aufrufe, 3 Kommentare

guten tag
ich hatte vor einigen wochen das problem, datenpakete an einen linux-server zu senden, und dieser sollte sie in empfang nehmen, auspacken und verteilen.
den ersten teil kann ich nun mit eurer tatkräftigen mithilfe mit winscp ausführen. danke nochmals.
hier nur mal ganz kurz die lösung:

rem wenn mehrere commandos (besonders mehrere options!) nötig sind
rem "%ProgramFiles(x86)%\WinSCP\winscp.exe" /console /script=f:\_zyx.txt
rem ansonsten so:
"%ProgramFiles(x86)%\WinSCP\winscp.exe" /console /command "option confirm off" "open sftp://zzz:xxx@yyy.de/; "put f:\zzz\%1-int.arj" "exit"
so. soweitsogut. alles löpt primstens!

bei der diskussion dazu, wurde schnell klar, daß man von aussen nicht root-befehle auf einem linuxserver ausführen kann, wenn man sich von aussen nicht als root anmelden kann. und bitte nicht vergessen: alles automatisiert.

so. nun habe ich in die crontab DAS hier eingetragen:
10 7,8,9,10,11,12,13,20 * * * root /-scripte/__auspack_und_verteil__.sh
das script soll alle 10 minuten in der oben angegebenen stunde ablaufen!

__auspack_und_verteil__.sh
arjort=/home/zyx
if [ -f "$arjort/kg-int.arj" ] ; then kurz=123 ; fi
if [ -f "$arjort/"$kurz"-int.arj" ] ; then lang=123456789 ; fi
if [ -f "$arjort/"$kurz"-int.arj" ] ; then arj e -y $arjort/"$kurz"-int.arj /home/"$lang".yyy.de/data/"$kurz" ; fi
if [ -f "$arjort/"$kurz"-int.arj" ] ; then /root/-scripte/_ch_"$lang".sh ; fi
if [ -f "$arjort/"$kurz"-int.arj" ] ; then imoil=empfaenger1@irgendwo1.de ; fi
if [ -f "$arjort/"$kurz"-int.arj" ] ; then imoila=empfaenger2@irgendwo2.de ; fi
if [ -f "$arjort/"$kurz"-int.arj" ] ; then cat /root/-scripte/__email_ist_oben__ | mail -s "[$lang.yyy.de] Aktualisierung Ihres Internetkataloges" $imoil ; fi
if [ -f "$arjort/"$kurz"-int.arj" ] ; then cat /root/-scripte/__email_ist_oben_admin__ | mail -s "[$lang.yyy.de] Aktualisierung des Internetkataloges" $imoila ; fi
if [ -f "$arjort/"$kurz"-int.arj" ] ; then sleep 60 && rm -f $arjort/"$kurz"-int.arj ; fi


wenn ich das über den midnight commander aufrufe (also entere), dann läuft es sauber ab. macht alles, was da oben drinsteht: auspacken, arj löschen, 2x emails versenden mit den gewünschten inhalten usw usw

habe ich das in crontab eingetragen, passiert nichts.
"nichts", ich kann nichts sehen. nur in einer log steht was drin! \var\log\messages
Sep 2 13:10:01 h1887032 /USR/SBIN/CRON[16320]: (root) CMD (/-scripte/__auspack_und_verteil__.sh)
also hat crontab es aufgerufen, und auch ausgeführt, aber ohne ergebnis?

...habe bestimmt was übersehen....
aber was?

danke euch mitlesern, auch wenn Ihr Euch durch das o.g. shellskript durchgequält habt. es entspricht sicherlich nicht dem -allgemeinen- modernen design. aber ich kanns nicht besser
und das wichtigste: wenn ich es per hand anstubbse, läuft's ja!

viele grüße vom
klaus
,der zur zeit in einem hotelzimemr in erfur(ch)t(h) sitzt und arbeitet








Mitglied: Cthluhu
LÖSUNG 02.09.2014, aktualisiert um 20:37 Uhr
Hi,

Hatte letztens ein ähnliches Problem. Bei mir waren die Rechte für das Versenden von Mails schuld. Der cronjob wurde als User ausgeführt, welcher keine Mails versenden durfte.
Kontrollieren mal unter welchem User der cronjob gestartet wird und ob der User auch die passenden Rechte (sowohl auf den Ordner zum Entpacken als auch die Rechte zum Senden der Mails) hat.
Eventuell auch arjort=/home/zyx durch arjort=$HOME ersetzen.

mfg

Cthluhu
Bitte warten ..
Mitglied: Arano
LÖSUNG 02.09.2014, aktualisiert um 20:37 Uhr
Hi,

mit den Rechten wird es nichts zutun haben, da das Script laut Crontab ja als root gestartet wird.
So sieht man es dann ja auch in dem Log.

Du kannst dir aber ja auch ein eigenes Log erstellen indem du in dein Script (testweise) malin paar echos schreibst und deren Ausgabe in eine Datei umleitets.
echo "checkpoint-1" >>/root/test.log

Darüber hinaus vermute ich das in der Umgebung von Cron die Pfade anders sind und deswegen dein Programm "arj" einfach nicht gefunden wird.

Und zu guter letzt, so wird dein Cronjob nur zu jeder "10.Minute der Stunde" ausgeführt, also 7:10, 8:10, 9:10, ...
Probier es mal so:
*/10 7,8,9,10,11,12,13,20 * * * root "deinScript"


Schönen Gruß
~Arano
(der gerade in der Bahn sitzt und tippt )
Bitte warten ..
Mitglied: klausph
02.09.2014, aktualisiert 03.09.2014
oh. ja. natürlich!
@cthlulu der hinweis, prima.
was aarano noch besser (verzeihung, soll keine wertigkeit darstellen!) angetippt hat. bestens! es ist alles die lösung!

mein fehler:
und ich hatte vergessen, darüber zu berichten, was eben DOCH funktionierte!
die emails wurden verschickt. das arj-paket wurde gelöscht.
ich IDIOT habe NICHT gesehen, daß dem arj der pfad fehlte.

mein fehler: meine eigene erklärung des skriptes: WANN es ablaufen soll.
klaro aarano, genauso soll es ja auch ablaufen. zu den angegebenen stunden, immer 10min nach der vollen stunde.

argh. es sind immer diese "kleinigkeiten", die einem der windows-prompt (cmd.exe) verzeiht, unter linux muß man viel(!) sauberer arbeiten...
ein großer haufen steine ist mir vom herzen gefallen.

danke euch beiden.
mein erster test hat geklappt.
das wird mir einige arbeit ersparen....

dankeundgruß
vom klaus(i)
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Skript für Datenübertragung von Windows zu Linux
gelöst Frage von mksadmBatch & Shell7 Kommentare

Servus zusammen, woher bekomme ich ein Skript, das z.B eine Word Datei über SSH auf eine Linux Freigabe schiebt, ...

Batch & Shell
Frage zu Skript - Wie funktioniert?
Frage von pixel0815Batch & Shell3 Kommentare

Hallo Leute, kann mir jemand sagen wie das Script funktioniert? Ansich ist das ja ganz nützlich aber ich bekomme ...

Batch & Shell
Powershell Skript funktioniert überall, nur nicht in der Aufgabenplanung
Frage von Pikachu750Batch & Shell2 Kommentare

Hallo. Folgendes Skript crasht bei den Copy-Pfaden (Allerdings nur in der Aufgabenplanung) Führe ich das Skript manuell in der ...

Visual Studio
Mit VBA die Tasenkombination AltGr+Tab oder Alt+Tab simulieren
gelöst Frage von UschadeVisual Studio5 Kommentare

Hallo liebe Admins, ich möchte auf unseren Terminals, an denen keine Tastatur angeschlossen ist, den Mitarbeitern die Möglichkeit geben ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 1 TagLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 2 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 2 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 2 TagenSicherheit10 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Batch & Shell
Meltdown Microsoft Prüf Script - .zip Datei leider leer
gelöst Frage von MasterBlaster88Batch & Shell13 Kommentare

Hallo zusammen, ich patche gerade unsere Windows Server bzgl. der Meltdown Lücke. Patch vorhanden, Reg Keys gesetzt Um das ...

Batch & Shell
Shell-Skript - Syntax error: Unterminated quoted string
Frage von newit1Batch & Shell13 Kommentare

Hallo Ich schreibe ein Skript das eine CSV-Datei in eine mySQL Datenbank schieben soll. Bekomme nach start des Skrips ...

E-Mail
Erfahrungen mit hMailServer gesucht
Frage von it-fraggleE-Mail10 Kommentare

Hallo, meine neue Stelle möchte einen eigenen Mailserver. Ich als Linuxkind war direkt geistig mit Postfix dabei. Leider wollen ...

Entwicklung
VBS: alle PDF-Dateien in einem Ordner gleichzeitig öffnen
gelöst Frage von JuweeeEntwicklung9 Kommentare

Hallo, ich habe in deiner Ordnerstruktur (.\Tagesberichte\xx.18\) mehrere dynamische PDF-Formulare (mit LCD erstellt). Die Berichtsformulare sind im Layout alle ...