"अनुमति अस्वीकृत" विंडोज 10 पर पायथन को चलाने की कोशिश कर रहा है


122

लगता है जैसे कि विंडोज 10 पर एक अपडेट ने रात में पायथन को तोड़ दिया। बस चलाने के लिए python --version"अनुमति अस्वीकृत" त्रुटि लौटा दी गई। तीन अपडेट में से कोई भी नहीं; KB4507453, KB4506991, या KB4509096 ऐसा लगता है कि वे अपराधी होंगे लेकिन समस्या का समय संदिग्ध है। वापस रोल करने के साथ खिलवाड़ करने के बजाय, मैं उम्मीद कर रहा हूं कि एक सरल समाधान है जो मुझे याद आ रहा है।

अजगर पर अनुमति "-rwxr-xr-x" हैं और मैंने पिछली रात के पैच को स्थापित करने के बाद विंडोज अपडेट रिबूट मशीन को अनुमति देने के अलावा कुछ भी नहीं बदला है।

सिस्टम सूचना के अनुसार, मैं 10.0.18362 चला रहा हूं

यह भी ध्यान दें कि यह हो रहा है कि क्या मैं (व्यवस्थापक) "व्यवस्थापक के रूप में चलाने" का उपयोग करके गिट-बैश से पायथन को निष्पादित करने के लिए है या नहीं, और अगर मैं पावरशेल का उपयोग करने की कोशिश करता हूं, तो यह केवल विंडोज स्टोर को खोलता है जैसे कि ऐप स्थापित नहीं है। मुझे लगता है कि यह /c/Users/david/AppData/Local/Microsoft/WindowsApps/किसी कारण से मेरे फ़ोल्डर की सामग्री को नहीं देख सकता है ।

मैंने पायथन 3.7.4 को फिर से स्थापित करने की कोशिश की है, लेकिन इससे भी मदद नहीं मिली। क्या कुछ और है जिसे मुझे देखना चाहिए?


शायद Microsoft वेबसाइट की जाँच के लायक है। मैं कहीं पढ़ता हूं, खेद है कि याद नहीं कर सकते हैं, जहां अन्य लोगों को इस अद्यतन के साथ समस्या हो रही थी - रिक्त स्क्रीन मुझे लगता है। वैसे भी, जब तक वे इसे एक या दो दिन में ठीक कर लेते हैं, तब तक इसका जवाब मिल सकता है।
एंट

BTW, "अजगर पर अनुमति '-rwxr-xr-x' हैं" शायद विंडोज में अर्थहीन है। यह कुछ नकली जैसे MSYS2 या git-bash जैसे पर्यावरण द्वारा रिपोर्ट किया गया है।
एरिक सन

नहीं। यह python.org से पाइथन पैकेज है। उसी पर जो किसी भी मुद्दे के बिना वर्षों से काम कर रहा है और बस नवीनतम विंडोज पैच के साथ अभिनय करना शुरू कर दिया है।
नॉटनंबर

क्या आपको एक समाधान मिला? मेरे साथ भी वही दिक्कत है।
शाक्स

दुर्भाग्यवश नहीं। मैं इसके साथ रह रहा हूं क्योंकि मैं अपना ज्यादातर काम डॉकटर में करता हूं। यदि मैं करता हूं, तो मुझे अपने निष्कर्षों को पोस्ट करना सुनिश्चित होगा!
notanumber

जवाबों:


201

जहां तक ​​मैं बता सकता हूं, यह पायथन 3.7 के संस्करण के साथ संघर्ष के कारण हुआ था जिसे हाल ही में विंडोज स्टोर में जोड़ा गया था। ऐसा लगता है कि %USERPROFILE%\AppData\Local\Microsoft\WindowsAppsफ़ोल्डर में python.exe और python3.exe नामक यह दो "स्टब्स" हैं , और मेरे मामले में, यह मेरे मौजूदा पायथन निष्पादन योग्य प्रविष्टि में प्रवेश करने से पहले डाला गया था PATH

इस प्रविष्टि को सही पायथन फ़ोल्डर के नीचे ले जाने (आंशिक रूप से) ने समस्या को ठीक किया।

इसे सही करने का दूसरा हिस्सा manage app execution aliasesविंडोज सर्च प्रॉम्प्ट में टाइप करना और पाइथन के स्टोर संस्करणों को पूरी तरह से अक्षम करना है।

एप्लिकेशन निष्पादन उपनाम प्रबंधित करें

यह संभव है कि आपको केवल दूसरा भाग करने की आवश्यकता होगी, लेकिन मेरे सिस्टम पर मैंने दोनों बदलाव किए और अब सब कुछ सामान्य हो गया है।


56
(यहां Microsoft कर्मचारी और CPython कोर डेवलपर) आपको निश्चित रूप से केवल दूसरा भाग करने की आवश्यकता है। एलियंस को रीसेट करने वाले ऐप्स को अपग्रेड करने से संबंधित कुछ कीड़े हो गए हैं जो अगले स्थिर अपडेट में तय हो जाएंगे, इसलिए यह तब तक एक बार का फिक्स होना चाहिए। जब आप अंदरूनी सूत्र अपडेट प्राप्त कर रहे हैं, तो आपको इसे कुछ बार करने की आवश्यकता हो सकती है।
ज़ूबा

9
इसके अलावा, "एक्सेस अस्वीकृत" मुद्दा एक गिट बैश बग है (या जो कोई भी अपने बैश पोर्ट को बनाए रखता है ... मुझे खुद पर यकीन नहीं है कि यह किसका है)। और स्टोर लॉन्च करना लोगों को पायथन को स्थापित करने में मदद करने के लिए एक नई सुविधा है - यदि आपने इसे नियमित इंस्टॉलर का उपयोग करके इसे PATH में जोड़ा है तो इसे नए रीडायरेक्टर पर पूर्वता लेना चाहिए, लेकिन यदि आपने ऊपर नहीं खोजा है कि इसे कैसे अक्षम किया जाए।
ज़ूबा

5
मुझे बस इस समस्या को ठीक करने के लिए दूसरे भाग में जाना था।
केनीबी

6
मेरे लिए मुझे अपने पथ पर अजगर को भी जोड़ना था (ग: \ Users \ YourUsernameHere \ AppData \ Local \ Programs \ Python \ Python37) के लिए गिट बैश के लिए अजगर खोजने के लिए
नील्स

2
इसे मेरे रास्ते में जोड़ना और इसे शीर्ष पर ले जाना मेरा समाधान था, जैसे नील ने किया था। तथ्य यह है कि मैं सिर्फ खिड़कियों की दुकान स्टब के लिए स्टब का नाम नहीं बदल सकता है बहुत कष्टप्रद है।
जॉन डब्ल्यू। क्लार्क

26

अनुसंधान

सभी फाइलें %USERPROFILE%\AppData\Local\Microsoft\WindowsAppsप्लेसहोल्डर हैं जो उन फाइलों को इंगित करती हैं जो वास्तव में कहीं स्थित हैं C:\Program Files\WindowsApps, जो पूरी तरह से अनुमतियों से वंचित किया जाता है।

ऐसा प्रतीत होता है कि मैं इस समस्या के अपने डुप्लिकेट में किए गए अपने बयान के साथ सही रास्ते पर था:

"ऐसा लगता है जैसे वे वास्तव में अनुमतियों के साथ वितरण पद्धति के बारे में नहीं सोचते थे!"

स्रोत: विंडोज (विंडोज स्टोर) पर गिट बैश में पाइलिंट स्थापित नहीं कर सकता

अनुमतियाँ WindowsApps वितरण विधि के कारण रोयली रूप से खराब हो गई हैं:

यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें यहाँ छवि विवरण दर्ज करें दिलचस्प रूप से यह कहता है कि "उपयोगकर्ता" समूह फ़ाइलों को पढ़ सकता है और निष्पादित कर सकता है, साथ ही साथ मेरे विशिष्ट उपयोगकर्ता भी, लेकिन व्यवस्थापक समूह केवल कुछ उल्लासपूर्ण अथाह कारण के लिए फ़ोल्डर सामग्री को सूचीबद्ध कर सकता है। और जब फ़ाइल एक्सप्लोरर में फ़ोल्डर तक पहुंचने की कोशिश की जाती है, तो यह फ़ोल्डर की सामग्री को दिखाने से भी इनकार कर देता है, इसलिए इसके बारे में कुछ गड़बड़ है।

दिलचस्प बात यह है कि pythonसीएमडी में निष्पादन भले ही ठीक काम करता है, लेकिन "विंडोजऐप्स" फ़ोल्डर उस निर्देशिका में मौजूद फाइलों की सूची बनाते समय दिखाई नहीं देता है, और फ़ोल्डर में नेविगेट करने का प्रयास "अनुमति अस्वीकृत" त्रुटि उत्पन्न करता है:

यहाँ छवि विवरण दर्ज करें

अनुमतियाँ बदलने का प्रयास करने के लिए पहले स्वामी को बदलने की आवश्यकता होती है, इसलिए मैंने स्वामी को व्यवस्थापकों के समूह में बदल दिया। उसके बाद, मैंने प्रशासक समूह के लिए पूर्ण नियंत्रण को शामिल करने के लिए अनुमतियों को बदलने का प्रयास किया, लेकिन यह इसे बदलने में असमर्थ था, क्योंकि "पहुंच से इनकार किया गया था" (duh, माइक्रो $ ucks, यही हम बदलने की कोशिश कर रहे हैं!)।

यहाँ छवि विवरण दर्ज करें

यह अनुमति त्रुटि इतनी सारी फ़ाइलों के लिए हुई कि मैंने रिपीट संदेशों पर "जारी रखें" पर जल्दी से क्लिक करने के लिए Alt + C का उपयोग किया, लेकिन इसमें अभी भी बहुत लंबा समय लगा, इसलिए मैंने इस प्रक्रिया को रद्द कर दिया, जिसके परिणामस्वरूप यह चेतावनी संदेश पॉप अप हुआ:

यहाँ छवि विवरण दर्ज करें

और अब मैं WindowsApps फ़ोल्डर के मालिक के रूप में TrustedInstaller उपयोगकर्ता को वापस सेट करने में असमर्थ हूं, क्योंकि यह उपयोगकर्ता / समूह / अंतर्निहित सुरक्षा सिद्धांतों / अन्य वस्तुओं की सूची में दिखाई नहीं देता है। *

यहाँ छवि विवरण दर्ज करें

* वास्तव में, इस ट्यूटोरियल के अनुसार , आप NT Service\TrustedInstallerऑब्जेक्ट नाम टेक्स्ट बॉक्स में टाइप करके मालिक को TrustedInstaller में वापस स्वैप कर सकते हैं ।

उपाय

कोई उपाय नहीं है। असल में, हम पूरी तरह से खराब हैं। उत्तम दर्जे की चाल, Microsoft।


12
(यहां Microsoft कर्मचारी और CPython कोर डेवलपर) अभी एक बग है जिसमें मैं विंडोज में फिक्स होने पर काम कर रहा हूं जहां आप इस स्थान पर निष्पादनयोग्य लॉन्च कर सकते हैं, लेकिन केवल तभी जब आपके पास वैश्विक उपनाम सक्षम हो (प्रबंधित ऐप निष्पादन उपनामों में)। मैं इसे बदलने की कोशिश कर रहा हूं ताकि आपको केवल वर्तमान उपयोगकर्ता के लिए एप्लिकेशन इंस्टॉल करना पड़े।
ज़ोबा

4
हम इस संवाद के माध्यम से अनुमतियों को पढ़ सकते हैं क्योंकि यह dllhost.exe उदाहरण (सुरक्षा शेल एक्सटेंशन, rshx32.dll की मेजबानी करता है) के स्वामित्व में है, जो व्यवस्थापक पहुंच के साथ चल रहा है और इस प्रकार "सूची फ़ोल्डर सामग्री" पहुंच (यानी निष्पादित; सिंक; और पढ़ें) डेटा, विशेषताएँ और अनुमतियां)। उपयोगकर्ता समूह के लिए प्रवेश सामान्य पहुंच जांच के लिए नहीं है। यह एक जीत के अस्तित्व पर सशर्त है: // SYSAPPID सुरक्षा विशेषता, अर्थात कोई भी ऐप। प्रत्येक ऐप अनुदान के लिए सबफ़ोल्डर उपयोगकर्ताओं तक पहुंच को पढ़ता है, लेकिन एक्सेस एक्सेस को ऐप लिंक के माध्यम से चलाने पर सशर्त है जो एक कस्टम एक्सेस टोकन सेट करता है।
एरिक सन

@ErykSun यह पहला सूचित उत्तर है जो मैंने कभी विंडोज़ निष्पादन और अनुमतियों के बारे में देखा है। धन्यवाद।
रयान

मैं वास्तव में अभी भी फ़ोल्डर पर अनुमतियों को बदलने की कोशिश कर रहा हूँ। कुछ WinApps ने पूरी तरह से लॉन्च करना बंद कर दिया, जब तक कि मैंने इन निर्देशों का पालन नहीं किया: ( superuser.com/questions/1288014/… ) लेकिन अब वे लॉन्च करने पर त्रुटि संदेश देते हैं। मैंने एक पुरानी Win10 USB छवि का उपयोग किया है, इसलिए यह संभवत: अनुमतियों को गलत तरीके से सेट करता है।
रयान

1
@MarkSimpson को खुशी है कि इस धागे ने मदद की। यकीन नहीं होता कि मैंने क्या लिखा होगा। उन Microsoft कर्मचारियों को धन्यवाद देना सुनिश्चित करें, जिन्होंने यहां टिप्पणियों में वास्तविक उत्तर पोस्ट किए हैं।
रयान


12

यह समस्या अभी भी बहुत आम है जो अभी भी लगातार बनी हुई है। और अधिकांश उत्तर और निर्देश इसे संबोधित करने में विफल होते हैं। यहाँ विंडोज 10 पर क्या करना है:

  1. environment variablesप्रारंभ खोज बार में टाइप करें, और सिस्टम पर्यावरण चर को संपादित करें खोलें ।

  2. पर्यावरण चर पर क्लिक करें ...

  3. सिस्टम चर खंड में, कुंजी के साथ चर का पता लगाएं Pathऔर इसे डबल क्लिक करें।

  4. अजगर फ़ाइलों की ओर इशारा करते हुए रास्तों की तलाश करें। संभवत: कोई नहीं हैं। यदि हैं, तो उन्हें चुनें और हटाएं।

  5. अपने अजगर के निष्पादन योग्य मार्ग के लिए एक नया चर सेट करें। आम तौर पर यह है C:\Users\[YOUR USERNAME HERE]\AppData\Local\Programs\Python\Python38। अपने फ़ाइल एक्सप्लोरर के माध्यम से जाँच करके यह सुनिश्चित करें।

    नोट : यदि आप नहीं देख सकते हैं AppData, तो ऐसा इसलिए है क्योंकि आपने छिपी वस्तुओं को देखने में सक्षम नहीं किया है : दृश्य टैब पर क्लिक करें और छिपे हुए आइटम चेकबॉक्स पर टिक करें।

  6. Scriptsनिर्देशिका की ओर इशारा करते हुए एक और चर बनाएँ । आमतौर पर यह है C:\Users\[YOUR USERNAME HERE]\AppData\Local\Programs\Python\Scripts

  7. अपने टर्मिनल और टाइप करके आजमाएँ पुन: प्रारंभ करें py, python, python3, या python.exe


5

यह PowerShell के साथ एक समाधान नहीं है, लेकिन मुझे MINGW64 के अलावा एक ही समस्या थी। लिनक्स के लिए विंडोज सबसिस्टम (जो मैं वैसे भी करना चाहता था) को अपने टर्मिनल के रूप में स्विच करके इसे चारों ओर मिला, बस आम तौर पर और VSCode में। यह पोस्ट इसे अच्छी तरह से वर्णन करती है:

टर्मिनल के रूप में उबंटू ऐप का उपयोग करने के लिए वीएस कोड (विंडोज़) को कॉन्फ़िगर कैसे करें

संक्षेप में:

1) विंडोज ऐप स्टोर से उबंटू इंस्टॉल करें

2) CMD -> wslconfig / setdefault उबंटू से डिफ़ॉल्ट बैश बदलें

--- VSCode के लिए

3) VSCode को पुनरारंभ करें

4) VSCode परिवर्तन में "terminal.integrated.shell.windows" को "C: \ WINDOWS \ System32 \ bash.exe" (आगे के विवरण के लिए ऊपर पोस्ट देखें)

VSCode और WSL में आसानी से चल रहा है (विंडोज पर उबंटू पर बैश)। आपके लिए कम से कम एक अस्थायी समाधान हो सकता है।


5

WindowsApps समस्या को हल करने से पहले स्थानीय पायथन पथ को जोड़ना।

पर्यावरण चर> पथ

बैश पायथन - विचलन


2

वर्कअराउंड: यदि आपने चरणों के नीचे दिए गए पालन से अजगर को स्थापित किया है।

चरण 1: अजगर की स्थापना रद्द करें

चरण 2: अजगर स्थापित करें और पाइथन पथ चेक बॉक्स को नीचे दिए गए स्क्रूशॉट (पीले) में हाइलाइट करें।

इससे मेरी समस्या हल हो गई।

यहाँ छवि विवरण दर्ज करें


2

मेरे लिए, मैंने कोशिश की manage app execution aliasesऔर एक त्रुटि मिली कि python3 उसके लिए एक कमांड नहीं है, इसलिए मैंने pyइसके बजाय प्रयोग किया python3और यह काम किया

मुझे नहीं पता कि ऐसा क्यों हो रहा है लेकिन यह मेरे लिए काम कर रहा है


1

यह करने के लिए सबसे सरल बात यह होगी कि अपने PATH और PYTHONPATH पर्यावरणीय चर को संशोधित करके सुनिश्चित करें कि उचित python बायनेरिज़ वाले फ़ोल्डर को स्थानीय WindowsApp फ़ोल्डर के लिए खोजा जाए। आप नियंत्रण कक्ष खोलकर और "env" खोज कर पर्यावरण चर का उपयोग कर सकते हैं


1

यह जिस तरह से विंडोज ऐप एक्ज़क्यूटिव अलायस गिट-बैश में काम करता है।

यह MSYS2 में एक ज्ञात समस्या है जिसके साथ विंडोज रिप्रजेंट पॉइंट तक पहुंचने में विफल रहा हैIO_REPARSE_TAG_APPEXECLINK

एक वर्कअराउंड के रूप में , आप एक फ़ंक्शन इनवोकेशन के लिए उपनाम कर सकते हैं cmd.exeजो हुड के नीचे उपयोग करता है ।

अपनी ~/.bashrcफ़ाइल में निम्न जोड़ें ::

function python { cmd.exe /c "python $1 $2 $3";}

अजगर के लिए, मैं सुझाए गए उत्तर के अनुसार ऐप एक्जीक्यूशन अलायस को बंद करने की सलाह दूंगा, लेकिन उन पुस्तकालयों के लिए जिन्हें विशेष रूप से विंडोज़ स्टोर के माध्यम से वितरित किया जाता है winget, यह आपका सबसे अच्छा विकल्प है।

आगे की पढाई


0

मैंने एक ही समस्या का अनुभव किया, लेकिन अजगर के अवरुद्ध होने के अलावा, Scriptsफ़ोल्डर में सभी प्रोग्राम भी थे। उपनाम, पथ के बारे में अन्य उत्तर और winptyमदद नहीं की।

मैंने अंत में पाया कि यह मेरा एंटीवायरस (अवास्ट) था जिसने किसी कारण के लिए सभी संकलित अजगर लिपियों को अवरुद्ध करने के लिए किसी कारण से रातोंरात फैसला किया।

यह सौभाग्य सौभाग्य से आसान है: पूरी पायथन निर्देशिका को श्वेतसूची में रखें। पूर्ण विवरण के लिए यहां देखें ।


-1

हो सकता है कि आप प्रशासक विशेषाधिकारों के साथ कमांड प्रॉम्प्ट खोलने की कोशिश कर सकते हैं। (व्यवस्थापक के रूप में चलाओ)। मेरे लिए ज्यादातर समय काम करता है।


3
अजगर निष्पादन योग्य सीएमडी में प्रशासक के विशेषाधिकार के बिना भी काम करता है। समस्या यह है कि यह गिट बैश में काम नहीं करता है, जो प्रोग्रामर के लिए एक आवश्यक उपकरण है और डिफ़ॉल्ट है, और यह पायथन के लिए हर दूसरे वितरण पद्धति के साथ काम करता है, जिसका अर्थ है कि इसे [यहां भी काम करना चाहिए]।
रयान

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.