/ / C # प्रक्रिया cmd.exe - 'hadoop' को आंतरिक या बाह्य कमांड, ऑपरेशनल प्रोग्राम या बैच फ़ाइल - c #, iis, cmd, लोकल-सिस्टम-अकाउंट के रूप में नहीं पहचाना जाता है

सी # प्रक्रिया cmd.exe - 'hadoop' को आंतरिक या बाहरी कमांड, ऑपरेट करने योग्य प्रोग्राम या बैच फ़ाइल के रूप में पहचाना नहीं जाता है - सी #, आईआईएस, सीएमडी, स्थानीय-सिस्टम-खाता

ठीक है, मैं आपको पहले संदर्भ दूंगा।

  1. मेरे पास IIS 7 में एक वेबसाइट है।
  2. सर्वर पर, मेरे पास विंडोज़ मप्र क्लाइंट स्थापित है। यह मुझे विंडोज़ सिस्टम पर हडूप क्लस्टर्स तक पहुँच प्रदान करता है। (विंडोज MAPR क्लाइंट इंस्टॉलेशन)
  3. मैंने लॉग ऑन किया है और जाँच की है कि हडूप क्लाइंट ठीक से काम कर रहा है।

तो अब समस्या।

मैं C # Process और ProcessStartInfo का उपयोग कर रहा हूंcmd.exe का एक उदाहरण खोलने के लिए कक्षाएं जहां मुझे हडूप सर्वर से फ़ाइल मिलती है और इसे UI पर सुलभ बनाया जाता है। (हडूप एफएस -गेट .....)। लेकिन किसी कारण से, जो त्रुटि मैंने प्रोसेस से ली थी।

"हैडऑप" को आंतरिक या बाहरी कमांड, ऑपरेशनल प्रोग्राम या बैच फ़ाइल के रूप में मान्यता नहीं दी जाती है।

मैंने जाँच की कि cmd प्रक्रिया को चलाने वाला उपयोगकर्ता सर्वर के प्रशासकों में से एक है।

ध्यान देने योग्य बातें: कमांड प्रॉम्प्ट वर्किंग डायरेक्टरी "C: WindowsSysWOW64inetsrv" है। क्या इसका मतलब है कि इसका 32 बिट cmd है? हो सकता है कि एक कारण हैडॉप मान्यता प्राप्त नहीं था? मैंने मुद्दे की प्रतिकृति बनाने की सोची। (उस व्यवस्थापक उपयोगकर्ता के लिए 32 बिट cmd प्रॉम्प्ट खोलना और टाइप करना है। लेकिन हैडऑप कमांड सफलतापूर्वक काम करता है)

मुझे यह समझ में नहीं आता है कि इस उच्च विशेषाधिकार प्राप्त उपयोगकर्ता के लिए हडॉप कमांड को मान्यता क्यों नहीं दी गई है।

अद्यतन करें:

यह एक ऐसा ही मुद्दा है। मैं इसे आजमाऊंगा और आपको बताऊंगा।

प्रक्रिया.Start cmd.exe IIS में चलने पर cmd फ़ाइल को एग्यूमेंट के रूप में पारित नहीं करेगी

ठीक है यह एक ही मुद्दा नहीं है। जैसा कि मैं बैच फ़ाइल को खोलने और चलाने में सक्षम हूं। लेकिन cmd ने मेरे द्वारा स्थापित कमांड को नहीं पहचाना।

तो सवाल यह होगा कि वास्तव में यह cmd के किस संस्करण से शुरू होता है? संस्करण से, मेरा मतलब है कि cmd उसमें कुछ भी स्थापित नहीं है?

उत्तर:

जवाब के लिए 0 № 1

32 बिट प्रक्रिया में दिखते हैं

  • c: windowssyswow64 जब c: windowsSystem32 के लिए पूछ रहा है

  • c: windowssystem32 जब c: windowssysnative के लिए पूछ रहा है

और 64 बिट प्रक्रिया में दिखते हैं

  • c: windowssystem32 जब c: windowssystem32 के लिए पूछ रहा है

  • c: windowssyswow64 जब c: windowssyswow64 के लिए पूछ रहा है

  • c: windowssysnative पूछते समय एक त्रुटि उत्पन्न करें