Windows 11 मध्ये PowerShell स्क्रिप्ट्स चालवताना त्रुटी दूर करा: अपडेटेड आणि संपूर्ण मार्गदर्शक

शेवटचे अपडेट: २२/०२/२०२४

  • पॉवरशेल विंडोज ११ मध्ये स्क्रिप्ट चालवताना येणारी त्रुटी डीफॉल्ट सुरक्षा निर्बंधांमुळे येते.
  • वापरकर्त्याच्या गरजेनुसार अंमलबजावणी धोरणात बदल करण्याचे आणि स्क्रिप्ट सक्षम करण्याचे अनेक मार्ग आहेत.
  • योग्य सुरक्षा कॉन्फिगरेशनमुळे स्क्रिप्ट्स नियंत्रितपणे चालवता येतात, ज्यामुळे सिस्टमला होणारे धोके कमी होतात.
पॉवरशेल स्क्रिप्ट ब्लॉक केलेली त्रुटी

तुम्हाला अलीकडेच त्रासदायक संदेश आला आहे का “या सिस्टमवर स्क्रिप्ट एक्झिक्युशन अक्षम असल्यामुळे फाइल अपलोड करता येत नाही." तुमच्या Windows 11 वर PowerShell मध्ये स्क्रिप्ट चालवण्याचा प्रयत्न करतानातुम्ही एकटे नाही आहात. ही अशी परिस्थिती आहे जी नवशिक्या वापरकर्त्यांना आणि अनुभवी विकासकांना वेडा बनवते. या प्रकारची त्रुटी जेव्हा आपल्याला कार्ये स्वयंचलित करायची असतात किंवा लहान स्क्रिप्ट्सची चाचणी घ्यायची असते तेव्हा हे सहसा दिसून येते. आणि अचानक, सुरक्षेच्या थरांमध्ये आणि अज्ञात धोरणांमध्ये लपलेल्या एका समस्येमुळे सिस्टम आपल्याला आपल्या मार्गावरच थांबवते.

या लेखात मी स्पष्ट करतो विंडोज ११ वरील पॉवरशेल स्क्रिप्ट एक्झिक्युशन एररबद्दल तुम्हाला जे काही माहित असणे आवश्यक आहे, एक मैत्रीपूर्ण आणि व्यावहारिक दृष्टिकोन वापरून जेणेकरून तुम्हाला जास्त तांत्रिक अनुभव नसला तरीही तुम्ही ते समजू शकाल. तुमची सुरक्षा आणि गरजा लक्षात घेऊन आम्ही कारणे, सुरक्षा धोरणे, समस्यानिवारण चरण आणि सर्वात शिफारस केलेले पर्याय यांचा सखोल अभ्यास करू. मी इतर ट्युटोरियलमध्ये दुर्लक्षित केलेले कोणतेही वारंवार विचारले जाणारे प्रश्न आणि काही तांत्रिक बारकावे देखील स्पष्ट करेन.

पॉवरशेलमध्ये मला स्क्रिप्ट एक्झिक्युशन एरर का येते?

विंडोज ११-९ मध्ये पॉवरशेल स्क्रिप्ट कार्यान्वित करताना त्रुटी

क्लासिक एरर मेसेज थोडासा बदलू शकतो., पण ते जवळजवळ नेहमीच असे काहीतरी म्हणते: No se puede cargar el archivo <ruta_del_script> porque la ejecución de scripts está deshabilitada en este sistema. या इशाऱ्याचा अर्थ असा नाही की तुम्हाला व्हायरस आहे किंवा तुमचे विंडोज खराब झाले आहे.; कारण पॉवरशेल सुरक्षा धोरणे कशी कॉन्फिगर केली जातात यात आहे.

मायक्रोसॉफ्ट विंडोजच्या प्रत्येक नवीन आवृत्तीमध्ये सुरक्षा धोरणे कडक करत आहे, विशेषतः विंडोज १० आणि विंडोज ११ पासून. डिफॉल्टनुसार, पॉवरशेलमध्ये स्क्रिप्ट्सची अंमलबजावणी प्रतिबंधित आहे. दुर्भावनापूर्ण कोड अनियंत्रितपणे चालू होण्यापासून रोखण्यासाठीबहुतेक वापरकर्त्यांसाठी ही एक सकारात्मक गोष्ट आहे, परंतु विकासक आणि प्रशासकांसाठी ही एक त्रासदायक मर्यादा असू शकते.

विशेष सामग्री - येथे क्लिक करा  CCleaner वापरून दूषित रेजिस्ट्री नोंदी कशा काढायच्या?

काही सर्वात सामान्य त्रुटी संदेश हे आहेत:

  • C:\my_script.ps1 ही फाइल लोड करता येत नाही. या सिस्टमवर स्क्रिप्ट एक्झिक्युशन अक्षम केले आहे. अधिक माहितीसाठी "Get-Help about_signing" पहा.
  • या सिस्टमवर स्क्रिप्ट एक्झिक्युशन अक्षम केल्यामुळे फाइल लोड करता येत नाही. अधिक माहितीसाठी, about_Execution_Policies पहा.
  • C:\my_script.ps1 ही फाइल डिजिटली स्वाक्षरी केलेली नाही. ही स्क्रिप्ट सिस्टमवर चालणार नाही.

याचे मूळ कारण म्हणजे पॉवरशेलमध्ये कॉन्फिगर केलेले एक्झिक्युशन पॉलिसी.ही धोरणे स्क्रिप्ट फाइल्स चालवण्याची परवानगी आहे की नाही आणि कोणत्या परिस्थितीत आहे हे परिभाषित करतात. डीफॉल्टनुसार, सर्वात प्रतिबंधात्मक धोरण सक्षम केले जाते: प्रतिबंधित, जे स्क्रिप्ट्सच्या कोणत्याही स्वयंचलित अंमलबजावणीला प्रतिबंधित करते.

पॉवरशेल अंमलबजावणी धोरणे काय आहेत आणि ती का महत्त्वाची आहेत?

पॉवरशेल अंमलबजावणी धोरणे

कोणत्या स्क्रिप्ट्स कोणत्या परिस्थितीत चालवता येतील हे ठरवण्यासाठी विंडोज पॉवरशेल एक्झिक्युशन पॉलिसीजची प्रणाली वापरते.. सिस्टम सुरक्षेसाठी हे आवश्यक आहे., कारण ते इंटरनेटवरून डाउनलोड केलेल्या किंवा ईमेलद्वारे प्राप्त झालेल्या संभाव्य हानिकारक कोडच्या लाँचिंगला प्रतिबंधित करते.

तुम्हाला आढळू शकणारे मुख्य धोरणे आहेत:

  • प्रतिबंधित: विंडोज ११ मध्ये ही डीफॉल्ट पॉलिसी आहे. कोणत्याही स्क्रिप्टच्या अंमलबजावणीला परवानगी देत ​​नाही., फक्त परस्परसंवादी आदेश.
  • सर्व स्वाक्षरीकृत: फक्त विश्वसनीय प्रकाशकाने डिजिटली स्वाक्षरी केलेल्या स्क्रिप्ट्स आणि कॉन्फिगरेशन फाइल्सना चालविण्याची परवानगी द्या.
  • रिमोटसाईन केलेले: स्थानिक स्क्रिप्ट्स कोणत्याही अडचणीशिवाय चालतात, परंतु इंटरनेटवरून डाउनलोड केलेल्या स्क्रिप्ट्स विश्वसनीय प्रकाशकाने डिजिटल स्वाक्षरी केलेल्या असाव्यात.
  • अनिर्बंध: तुम्हाला कोणतीही स्क्रिप्ट चालवण्याची परवानगी देते, जरी ती स्क्रिप्ट इंटरनेटवरून आली तर ती चेतावणी दर्शवते.

योग्य धोरण निवडणे अत्यंत आवश्यक आहेजर तुम्हाला फक्त स्थानिक स्क्रिप्ट चालवायची असेल, तर RemoteSigned पुरेसे असू शकते. जर तुम्ही डेव्हलपर असाल आणि तुमच्या कोडवर विश्वास असेल, तर Unrestricted वर स्विच करणे पुरेसे असू शकते, परंतु नेहमी सावधगिरीने.

विंडोज ११ मध्ये सध्याची अंमलबजावणी धोरण कशी ओळखायची?

काहीही बदलण्यापूर्वी, तुम्ही कोणती पॉलिसी सक्रिय केली आहे हे जाणून घेणे चांगले.हे पडताळण्यासाठी:

  • पॉवरशेल उघडातुम्ही "PowerShell" शोधून स्टार्ट मेनूमधून हे करू शकता. जर तुम्हाला बदल करायचे असतील तर, प्रशासक म्हणून ते करा..
  • खालील कमांड टाईप करा:
    Get-ExecutionPolicy -List

हे वेगवेगळ्या क्षेत्रांमध्ये (वापरकर्ता, स्थानिक प्रणाली, प्रक्रिया, इ.) लागू केलेल्या धोरणांची यादी प्रदर्शित करेल. तुम्हाला सहसा "प्रतिबंधित" हे सक्रिय धोरण म्हणून दिसेल. बहुतेक प्रकरणांमध्ये.

विशेष सामग्री - येथे क्लिक करा  SSD वापरून मी माझ्या PC ची कार्यक्षमता कशी वाढवू शकतो?

उपाय: स्क्रिप्ट एक्झिक्युशन स्टेप बाय स्टेप कसे सक्षम करायचे

पॉवरशेलमध्ये स्क्रिप्ट एक्झिक्युशन सक्षम करा

त्रुटी सोडवण्याचे अनेक मार्ग आहेत आणि प्रत्येक एक तुम्ही कोणत्या पातळीवर सुरक्षितता राखू इच्छिता यावर ते अवलंबून आहे. आणि तुम्ही ज्या परिस्थितीत काम करत आहात. येथे मुख्य पर्याय आहेत:

अंमलबजावणी धोरण तात्पुरते बदला (सध्याचे सत्र)

जर तुम्हाला फक्त एकदाच स्क्रिप्ट चालवायची असेल आणि बदल कायमचा नको असेल, तर तुम्ही ते असे करू शकता:

  1. प्रशासक म्हणून पॉवरशेल उघडा.
  2. कार्यान्वित करा:
    Set-ExecutionPolicy -Scope Process -ExecutionPolicy Unrestricted

हे फक्त तुम्ही उघडलेल्या PowerShell विंडोवर परिणाम करते.. जेव्हा तुम्ही ते बंद कराल, तेव्हा पॉलिसी त्याच्या मागील स्थितीत परत येईल.

संपूर्ण वापरकर्ता किंवा सिस्टमसाठी एक्झिक्युशन पॉलिसी सेट करा.

बदल अनिश्चित काळासाठी टिकून राहण्यासाठी, योग्य वाटल्यास यापैकी एक आदेश वापरा:

  • सध्याच्या वापरकर्त्यासाठी:
    Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
  • संपूर्ण प्रणाली (प्रशासकाच्या परवानग्या आवश्यक आहेत):
    Set-ExecutionPolicy -Scope LocalMachine -ExecutionPolicy RemoteSigned

पॅरामीटर -अंमलबजावणी धोरण तुम्ही ते सुधारित करू शकता अनिर्बंध, सर्व स्वाक्षरीकृत o रिमोटसाईन केलेले तुम्हाला काय हवे आहे यावर अवलंबून. वापरकर्ते आणि विकासकांसाठी रिमोटसाईन केलेला हा बहुतेकदा सर्वात संतुलित पर्याय असतो..

विंडोज ११ सेटिंग्जमधून एक्झिक्युशन पॉलिसी बदला.

आणखी एक कमी तांत्रिक पर्याय म्हणजे सिस्टम पर्यायांमध्ये प्रवेश करणे:

  1. विंडोज ११ सेटिंग्ज उघडा (तुम्ही टॅप करू शकता विन + आय).
  2. जा गोपनीयता आणि सुरक्षा > डेव्हलपर्ससाठी.
  3. पॉवरशेल विभाग शोधा.
  4. स्वाक्षरी न केलेल्या स्थानिक स्क्रिप्ट चालविण्याचा पर्याय सक्षम करते आणि फक्त रिमोट स्क्रिप्टसाठी स्वाक्षरी आवश्यक असते..

ज्यांना कमांडला स्पर्श करायचा नाही आणि एक साधा, ग्राफिकल पर्याय पसंत आहे त्यांच्यासाठी ही पद्धत आदर्श आहे.

सामान्य चुका आणि सुरक्षितता शिफारसी

जर अंमलात आणलेली गोष्ट व्यवस्थित नियंत्रित नसेल तर स्क्रिप्ट अंमलबजावणी सक्षम करणे धोकादायक ठरू शकते.या शिफारसींचे पालन करणे अत्यंत आवश्यक आहे:

  • अज्ञात स्त्रोतांकडून स्क्रिप्ट डाउनलोड करू नका किंवा चालवू नका.कमी प्रतिबंधात्मक धोरणे असली तरी, सावधगिरी बाळगा.
  • वापरा रिमोटसाईन केलेले जेव्हा शक्य असेल तेव्हा.
  • आवश्यक स्क्रिप्ट चालवल्यानंतर, मागील धोरण पुन्हा स्थापित करते (उदाहरणार्थ, वापरून Set-ExecutionPolicy Restricted).
  • व्यवसायिक वातावरणात किंवा गंभीर स्क्रिप्ट हाताळताना, AllSigned निवडा किंवा तुमच्या सिस्टम प्रशासकाचा सल्ला घ्या..
विशेष सामग्री - येथे क्लिक करा  विंडोज ७ वापरून स्कॅन कसे करावे

विशेष प्रकरणे: पॉवरशेल, अझ्युर आणि विसंगत आवृत्त्या

अशी परिस्थिती असते जिथे एरर अंमलबजावणी धोरणाव्यतिरिक्त इतर कशामुळे असू शकते. उदाहरणार्थ, Azure Active Directory सारख्या विशिष्ट मॉड्यूल्ससह, पॉवरशेलच्या काही आधुनिक आवृत्त्या समर्थित नाहीत., आणि यामुळे अतिरिक्त त्रुटी येऊ शकतात:

  • Azure Active Directory क्लासिक मॉड्यूल फक्त यासह कार्य करते पॉवरशेल ३ ते ५.१उच्च आवृत्त्यांसाठी, कृपया मॉड्यूलच्या पर्यायी किंवा अद्ययावत आवृत्त्या शोधा.
  • नेहमी असे मॉड्यूल चालवायचे लक्षात ठेवा ज्यांना प्रशासनाची आवश्यकता असते जसे की प्रशासक अपुरे परवानग्या टाळण्यासाठी.

जर तुम्ही तुमच्या PowerShell आवृत्तीचा मागोवा गमावला तर फक्त हे चालवा:
$PSVersionTable
त्याबद्दलची सर्व माहिती पाहण्यासाठी.

अतिरिक्त समस्यानिवारण आणि उपयुक्त संसाधने

प्रगत पॉवरशेल-४ युक्त्या

कधीकधी वरील कमांड लागू करूनही तुम्हाला क्रॅशचा अनुभव येऊ शकतो.अशा परिस्थितीत:

  • काही आहे का ते तपासा. अँटीव्हायरस किंवा कंपनी धोरण बदलांना प्रतिबंधित करत आहे.
  • जर त्रुटी फक्त डाउनलोड केलेल्या स्क्रिप्ट्समध्येच आली तर, फाइलचे गुणधर्म तपासा आणि ते अनलॉक करा. (राईट क्लिक करा > प्रॉपर्टीज > अनलॉक करा).
  • तपासा अधिकृत मायक्रोसॉफ्ट मदत आणि जर ते कॉर्पोरेट वातावरण असेल ज्याचे स्वतःचे प्रतिबंधात्मक धोरण असेल तर विशेष मंच.

लक्षात ठेवा की जर तुम्हाला अतिरिक्त मदतीची आवश्यकता असेल तर तुम्ही नेहमीच संपर्क साधू शकता पॉवरशेल वापरकर्ता समुदाय किंवा मायक्रोसॉफ्ट समर्थन चॅनेल, कारण ते सहसा आवृत्तीनुसार सादर केलेल्या बदलांसह अद्यतनित केले जातात.

पॉवरशेलमध्ये विंडोज ११ स्क्रिप्ट एक्झिक्युशन का प्रतिबंधित करते हे समजून घेणे हे स्क्रिप्ट्ससह कार्यक्षमतेने आणि सुरक्षितपणे काम करण्याच्या दिशेने पहिले पाऊल आहे. या शिफारसींचे पालन करून, तुम्ही त्रुटी दूर कराल आणि तुमचे रनटाइम वातावरण कसे चांगले व्यवस्थापित करायचे ते शिकाल, तुमच्या ऑटोमेशनमधून अधिकाधिक फायदा घ्याल आणि तुमची सिस्टम संरक्षित ठेवाल. गरज असेल तेव्हाच सेटिंग्ज बदला आणि तुमची कामे पूर्ण केल्यानंतर सुरक्षिततेसाठी धोरणे रीसेट करायला विसरू नका.

प्रगत पॉवरशेल-४ युक्त्या
संबंधित लेख:
प्रशासकांसाठी प्रगत पॉवरशेल युक्त्या