8

विफल रहता है ... दास से psexec का उपयोग कर एक ही बैच फ़ाइल को चलाने से सीधे आकर्षण के बिना काम करता है।जेनकिंस के माध्यम से पेक्सैक का उपयोग कर रिमोट बैच फ़ाइल चलाना

मुझे कुछ और जानकारी प्रदान करने दें। जेनकींस और उसका दास हमारी लक्ष्य मशीन की तुलना में एक अलग डोमेन में हैं।

जब मैं इस तरह बैच फ़ाइल चलाएँ:

"D:\Temp\PsTools\PsExec.exe" \\<targetmachine> -u <targetdomain\targetdomainuser> -p <pwd> -accepteula "d:\temp\remotescript.bat" arg1 arg2 
सीधे दास से

(दूरस्थ डेस्कटॉप मशीन के ऊपर ले जा और एक कमांड प्रॉम्प्ट खोलने) इस पूरी तरह से काम करता है।

विंडोज बैच में इसे दर्ज करते समय जेनकिन्स में कदम उठाने के लिए कोई दृश्यमान आउटपुट नहीं होता है और मुझे सिर्फ एक स्पिनर दिखाई देता है लेकिन अब कुछ भी नहीं होता है और निर्माण किसी भी अन्य निर्माण को बड़े पैमाने पर बैकलॉग बनाने के लिए कतार में लटकता है। इसके अलावा मुझे एक विफलता लेखापरीक्षा मिलती है जहां मेरा जेनकिंस उपयोगकर्ता लक्ष्य मशीन पर लॉगऑन करने का प्रयास करता है, हालांकि मैंने लक्ष्यमाचिन (लक्ष्य मशीन के डोमेन के लिए डोमेनस) पर व्यवस्थापक के साथ एक डोमेनसियर निर्दिष्ट किया है।

क्या किसी को भी कोई विचार है कि उपयोगकर्ता प्रदान किए गए किसी भी अन्य क्रेडेंशियल्स के साथ लॉगऑन करने का प्रयास क्यों करता है और यह सीधे जेनकिन्स-गुलाम से इसे क्यों चल रहा है?

या इसे प्राप्त करने का कोई अन्य तरीका (रिमोट मशीन पर बैच फ़ाइल चलाकर) स्वागत से अधिक है।

उत्तर

5

यह psexec साथ एक कुख्यात मुद्दा है:

http://forum.sysinternals.com/psexec-always-hangs-when-run-from-java_topic5013.html

Program output lost when passed through PsExec

आप xCmd साथ की कोशिश कर सकते हैं: http://feldkir.ch/xcmd.htm (यह स्थानीय होस्ट के खिलाफ काम नहीं करेगा)

+0

लोकलहोस्ट कोई चिंता नहीं है। झूठी वायरसर्ट के कारण मुझे एक्ससीएमडी फाइल प्राप्त करने में थोड़ी परेशानी थी, लेकिन इसे चल रहा था। मुझे अपने तर्कों को पारित करने के कारण शायद एक छोटी सी त्रुटि की जांच करनी होगी। –

+2

64-बिट सर्वर से कनेक्ट होने पर मुझे xCmd के साथ कोई समस्या थी: "दूरस्थ सेवा प्रारंभ नहीं हो सका: 2 - सिस्टम निर्दिष्ट फ़ाइल नहीं ढूंढ सकता।" ठीक करने का आसान तरीका xCmdSvc.exe को C: \ Windows \ System32 से C: \ Windows \ SysWOW64 से कॉपी कर रहा है। –

+0

अच्छी टिप्पणी! धन्यवाद। – npocmaka

-1

कोशिश कुछ बातें ...

  1. ऐड पैरामीटर विकल्प 0 अपने आदेश में accepteula कि ऐसा करना चाहिए किसी भी मौजूदा psexec प्रक्रिया है जो काट दिया और अपने psexec प्रसंस्करण

  2. के लिए 32-बिट या 64-बिट ..

    मशीन को सत्यापित शुरू कर रहा है मारता है के बाद

    64-बिट psexec सी में खोजा गया है के लिए: \ Windows \ system32 32-बिट psexec सी में खोजा गया है के लिए
    : \ Windows \ SysWOW64

जेनकींस काम में आप के लिए MSBuild संस्करण सेट कर सकते हैं 64 बीआईटी या 32 बीआईटी एसीसी क्रमशः और यह उम्मीद के रूप में काम करना चाहिए।

2

इस प्रयास करें, यह काम करेंगे

"D:\Temp\PsTools\PsExec.exe" \\\\remoteMachine -u username -p password /accepteula -h cmd /c "C:\remotescript.bat" 
5

PAExec PSExec का एक कार्यात्मक क्लोन है और की सुविधा देता है हमें जेनकींस आदि के माध्यम से उत्पादन को देखते हैं।

http://www.poweradmin.com/paexec/

XCmd क्या हम हिमाचल प्रदेश में थे, लेकिन किसी कारण से यह मेरे वर्तमान गिग में काम नहीं कर रहा है।

मुझे नहीं पता कि PAExec कब दिखाई दिया लेकिन यह एक आदर्श समाधान प्रतीत होता है। इसे खोजने के तुरंत बाद (आज) मैंने एक बहुत ही लंबी/शामिल जेनकींस परिनियोजन पाइपलाइन के साथ एक अड़चन समस्या को दबाया।

+2

पॉल, बहुत बहुत धन्यवाद! मेरे पास एक ही मुद्दा था, जो जेनकींस के माध्यम से पेक्सैक का आह्वान करते हुए केवल 80 वर्णों को स्टडआउट में लौटाता है। PAExec सही काम करता है। मैं जेनकिंस आउटपुट में सभी स्टडआउट देखता हूं! – akozin

+1

@ Guillaume ~ इस सवाल को पोस्ट करने के लिए धन्यवाद! इसे 3 साल बाद उपयोगी पाया। पॉल और अकोज़िन धन्यवाद, मैं इसे पखवाड़े से अधिक समय तक कोशिश कर रहा था! मुझे नहीं पता कि मैं इस पर आपको कैसे धन्यवाद दूंगा। – HunterrJ

+0

पॉल, बहुत बहुत धन्यवाद ... मैं इतने दिनों से यह कोशिश कर रहा था और आपके जवाब के साथ मैं 2 मिनट में था ... मेरे जीवन को बचाया ..: डी – Gargi

संबंधित मुद्दे