Οδηγοί

Πώς να διορθώσετε το σφάλμα "Running Scripts is Disabled σε αυτό το σύστημα" στο Powershell;

Το Powershell είναι ένα πλαίσιο αυτοματοποίησης και διαχείρισης εργασιών που έχει αναπτυχθεί και δημοσιευθεί από τη Microsoft. Αποτελείται από κέλυφος γραμμής εντολών και σχετική γλώσσα. Οι χρήστες μπορούν να εκτελέσουν πολλά cmdlet στο πρόγραμμα. Ωστόσο, πολύ πρόσφατα, πολλές αναφορές έχουν έρθει όπου οι χρήστες δεν μπορούν να εκτελέσουν ένα σενάριο και το "Το Running Script είναι απενεργοποιημένο σε αυτό το σύστημα"Ή το"Η εκτέλεση σεναρίων είναι απενεργοποιημένη σε αυτό το σύστημαΤο σφάλμα εμφανίζεται στο Powershell.

Σε αυτό το άρθρο, θα συζητήσουμε τον λόγο για τον οποίο μπορεί να προκληθεί αυτό το σφάλμα και ορισμένες βιώσιμες λύσεις για να το διορθώσουμε μόνιμα. Φροντίστε να ακολουθήσετε τα βήματα προσεκτικά και με ακρίβεια για να αποφύγετε τη σύγκρουση.

Τι προκαλεί το σφάλμα "Η εκτέλεση σεναρίων είναι απενεργοποιημένη σε αυτό το σύστημα";

Αφού λάβαμε πολλές αναφορές από πολλούς χρήστες, αποφασίσαμε να εξετάσουμε το ζήτημα και η έρευνά μας δείχνει ότι το σφάλμα οφείλεται στο ακόλουθο πρόβλημα.

  • Απενεργοποιημένα σενάρια:Κάθε σενάριο που εκτελείτε στο Powershell πρέπει να έχει κάποιο επίπεδο επαλήθευσης από αξιόπιστες πηγές για να λειτουργήσει. Ωστόσο, σε ορισμένες περιπτώσεις, ακόμη και αν το σενάριο έχει επαλήθευση, εξακολουθεί να σταματά από την εκτέλεση λόγω περιορισμένης πρόσβασης. Το θέμα είναι ότι τα Windows έχουν μια "Πολιτική εκτέλεσης" που πρέπει να παρακάμψει το σενάριο για να εκτελεστεί. Εάν η Πολιτική εκτέλεσης έχει οριστεί σε "Περιορισμένη", τότε δεν μπορεί να εκτελεστεί σενάριο στον υπολογιστή.

Τώρα που έχετε μια βασική κατανόηση της φύσης του προβλήματος, θα προχωρήσουμε προς τις λύσεις.

Λύση 1: Προσθήκη κώδικα

Εάν θέλετε να εκτελέσετε ένα συγκεκριμένο σενάριο στον υπολογιστή σας χωρίς να περάσετε από την ταλαιπωρία της αλλαγής της πολιτικής εκτέλεσης, μπορείτε πάντα να προσθέσετε ένα κομμάτι κώδικα στην εντολή που θα παρέχει πρόσβαση στο σενάριο μέσω της πολιτικής. Γι'αυτό:

  1. Πατήστε "Παράθυρα” + “ΡΓια να ανοίξετε το μήνυμα εκτέλεσης.
  2. Πληκτρολογήστε "Powershell"Και πατήστε"Βάρδια” + “Ctrl” + “ΕισαγωΤαυτόχρονα για να παραχωρηθεί πρόσβαση διαχειριστή.
  3. Πληκτρολογήστε την εντολή για να εκτελέσετε ένα συγκεκριμένο σενάριο όπως η ακόλουθη εντολή.
    γ: \>Powerhell -ExecutionPolicy ByPass -File script.ps1
  4. Πατήστε "Εισαγω" και έλεγχος για να δείτε εάν το πρόβλημα παραμένει.

Λύση 2: Αλλαγή της πολιτικής εκτέλεσης

Δεδομένου ότι η πολιτική εκτέλεσης παρέχει πρόσβαση στο Powershell για την εκτέλεση ενός συγκεκριμένου σεναρίου, εάν έχει οριστεί ως περιορισμένο, θα αποκλείσει την εκτέλεση όλων των σεναρίων. Υπάρχουν διαφορετικοί τρόποι με τους οποίους μπορείτε να ορίσετε την πολιτική ανάλογα με την περίπτωσή σας. Αυτές οι λειτουργίες είναι:

  • Περιορισμένος:Αυτή η λειτουργία δεν επιτρέπει την εκτέλεση σεναρίου στον υπολογιστή.
  • Όλα υπογράφονται:Επιλέγοντας αυτήν τη λειτουργία, μόνο οι πολιτικές που υπογράφονται από έναν αξιόπιστο εκδότη μπορούν να εκτελεστούν στον υπολογιστή.
  • Τηλεχειριστήριο:Όλα τα ληφθέντα σενάρια πρέπει να υπογράφονται από έναν αξιόπιστο εκδότη.
  • Απεριόριστος:Δεν υπάρχει κανένας περιορισμός σε κανένα σενάριο.

Τώρα που γνωρίζετε τα επίπεδα στα οποία μπορεί να οριστεί η πολιτική εκτέλεσης, μπορείτε εύκολα να επιλέξετε το καλύτερο για εσάς ανάλογα με τις απαιτήσεις σας. Για να αλλάξετε την πολιτική εκτέλεσης:

  1. Πατήστε "Παράθυρα” + “ΡΓια να ανοίξετε το μήνυμα εκτέλεσης.
  2. Πληκτρολογήστε "Powershell" και πατήστε "Βάρδια” + “Ctrl” + “ΕισαγωΤαυτόχρονα για να παραχωρηθεί πρόσβαση διαχειριστή.
  3. Πληκτρολογήστε την ακόλουθη εντολή και πατήστε "Enter" για να την εκτελέσετε.
    Σετ-ExecutionPolicy Remotesigned

    Σημείωση:Η λέξη "RemoteSigned"Πρέπει να αντικατασταθεί με το επίπεδο ασφαλείας που θέλετε, όπως αναφέρεται παραπάνω.

  4. Πατήστε "Γ"Για να δηλώσετε Ναι και αυτό θα αλλάξει την Πολιτική ομάδας στο επιθυμητό επίπεδο.
  5. Ελεγχος για να δείτε εάν το πρόβλημα παραμένει.
$config[zx-auto] not found$config[zx-overlay] not found