Trwsio gwall wrth redeg sgriptiau PowerShell yn Windows 11: Canllaw wedi'i ddiweddaru a chyflawn

Diweddariad diwethaf: 06/06/2025

  • Mae'r gwall wrth redeg sgriptiau yn PowerShell Windows 11 oherwydd cyfyngiadau diogelwch diofyn.
  • Mae sawl ffordd o addasu'r polisi gweithredu a galluogi sgriptiau yn seiliedig ar anghenion defnyddwyr.
  • Mae ffurfweddiad diogelwch priodol yn caniatáu gweithredu sgriptiau dan reolaeth, gan leihau risgiau i'r system.
Gwall Blocio Sgript PowerShell

Ydych chi wedi dod ar draws y neges annifyr yn ddiweddar “Ni ellir uwchlwytho'r ffeil oherwydd bod gweithredu sgript wedi'i analluogi ar y system hon. wrth geisio rhedeg sgript yn PowerShell ar eich Windows 11Dydych chi ddim ar eich pen eich hun. Mae'n un o'r sefyllfaoedd hynny sy'n gyrru defnyddwyr newydd a datblygwyr profiadol yn wallgof. Y math hwn o wall Fel arfer mae'n ymddangos pan rydyn ni eisiau awtomeiddio tasgau neu brofi sgriptiau bach. Ac yn sydyn, mae'r system yn ein hatal yn syth oherwydd problem sy'n ymddangos yn gudd y tu ôl i haenau o ddiogelwch a pholisïau anhysbys.

Yn yr erthygl hon rwy'n egluro Popeth sydd angen i chi ei wybod am y gwall gweithredu sgript PowerShell ar Windows 11, gan ddefnyddio dull cyfeillgar ac ymarferol fel y gallwch ei ddeall hyd yn oed os nad oes gennych lawer o brofiad technegol. Byddwn yn ymchwilio i'r achosion, polisïau diogelwch, camau datrys problemau, a'r dewisiadau amgen a argymhellir fwyaf, gan ystyried eich diogelwch a'ch anghenion. Byddaf hefyd yn egluro unrhyw gwestiynau cyffredin a rhai manylion technegol sy'n aml yn cael eu hanwybyddu mewn tiwtorialau eraill.

Pam ydw i'n cael gwall gweithredu sgript yn PowerShell?

Gwall wrth weithredu sgript PowerShell yn Windows 11-9

Gall y neges gwall glasurol amrywio ychydig, ond mae bron bob amser yn dweud rhywbeth fel: No se puede cargar el archivo <ruta_del_script> porque la ejecución de scripts está deshabilitada en este sistema. Nid yw'r rhybudd hwn yn golygu bod gennych firws neu fod eich Windows wedi'i ddifrodi.; mae'r achos yn gorwedd yn y ffordd y mae polisïau diogelwch PowerShell wedi'u ffurfweddu.

Mae Microsoft wedi bod yn tynhau polisïau diogelwch ym mhob fersiwn newydd o Windows, yn enwedig ers Windows 10 a Windows 11. Yn ddiofyn, Mae gweithredu sgriptiau yn PowerShell wedi'i gyfyngu i atal cod maleisus rhag rhedeg yn afreolusMae hyn yn beth cadarnhaol i'r rhan fwyaf o ddefnyddwyr, ond i ddatblygwyr a gweinyddwyr, gall fod yn gyfyngiad annifyr.

Cynnwys unigryw - Cliciwch Yma  Sut i ailgychwyn Windows 11

Dyma rai o'r negeseuon gwall mwyaf cyffredin:

  • Ni ellir llwytho'r ffeil C:\my_script.ps1. Mae gweithredu sgript wedi'i analluogi ar y system hon. Gweler "Get-Help about_signing" am ragor o wybodaeth.
  • Ni ellir llwytho'r ffeil oherwydd bod gweithredu sgript wedi'i analluogi ar y system hon. Am ragor o wybodaeth, gweler about_Execution_Policies.
  • Nid yw'r ffeil C:\my_script.ps1 wedi'i llofnodi'n ddigidol. Ni fydd y sgript yn rhedeg ar y system.

Y rheswm sylfaenol yw'r polisi gweithredu a ffurfiwyd yn PowerShellMae'r polisïau hyn yn diffinio a ganiateir i ffeiliau sgript redeg ai peidio, ac o dan ba amodau. Yn ddiofyn, mae'r polisi mwyaf cyfyngol wedi'i alluogi: Cyfyngedig, sy'n atal unrhyw weithredu awtomatig o sgriptiau.

Beth yw polisïau gweithredu PowerShell a pham maen nhw'n bwysig?

Polisïau gweithredu PowerShell

Mae Windows PowerShell yn defnyddio system o Bolisïau Gweithredu i benderfynu pa sgriptiau all redeg ac o dan ba amgylchiadau.. Mae hyn yn hanfodol ar gyfer diogelwch y system., gan ei fod yn atal lansio cod a allai fod yn niweidiol a lawrlwythwyd o'r Rhyngrwyd neu a dderbynnir drwy e-bost.

Y prif bolisïau y gallwch ddod o hyd iddynt yw:

  • CyfyngedigDyma'r polisi diofyn yn Windows 11. Nid yw'n caniatáu gweithredu unrhyw sgript, gorchmynion rhyngweithiol yn unig.
  • Llofnodwyd i gydDim ond caniatáu i sgriptiau a ffeiliau ffurfweddu sydd wedi'u llofnodi'n ddigidol gan gyhoeddwr dibynadwy redeg.
  • Llofnod o BellMae sgriptiau lleol yn rhedeg heb broblemau, ond rhaid i sgriptiau a lawrlwythir o'r Rhyngrwyd gael eu llofnodi'n ddigidol gan gyhoeddwr dibynadwy.
  • Heb gyfyngiadau: Yn caniatáu ichi redeg unrhyw sgript, er ei fod yn dangos rhybudd os daw'r sgript o'r Rhyngrwyd.

Mae dewis y polisi cywir yn hanfodolOs ydych chi eisiau rhedeg sgript leol yn unig, efallai y bydd RemoteSigned yn ddigonol. Os ydych chi'n ddatblygwr ac yn hyderus yn eich cod, efallai y bydd newid i Unrestricted yn ddigonol, ond byddwch yn ofalus bob amser.

Sut i adnabod y polisi gweithredu cyfredol yn Windows 11?

Cyn newid unrhyw beth, mae'n syniad da gwybod pa bolisi sydd gennych ar waith.I wirio hyn:

  • Agor PowerShellGallwch wneud hyn o'r ddewislen Cychwyn drwy chwilio am "PowerShell." Os oes angen i chi wneud newidiadau, gwnewch hynny fel gweinyddwr.
  • Teipiwch y gorchymyn canlynol:
    Get-ExecutionPolicy -List

Bydd hyn yn dangos rhestr o bolisïau a gymhwysir mewn gwahanol feysydd (Defnyddiwr, System Leol, Proses, ac ati). Fel arfer byddwch chi'n gweld “Cyfyngedig” fel polisi gweithredol. yn y rhan fwyaf o achosion.

Cynnwys unigryw - Cliciwch Yma  Sut i ailagor tudalen sydd wedi cau

Datrysiadau: Sut i alluogi gweithredu sgriptiau gam wrth gam

galluogi gweithredu sgript yn Powershell

Mae sawl ffordd o ddatrys y gwall, a phob un Mae'n dibynnu ar y lefel o ddiogelwch rydych chi am ei chynnal. a'r cyd-destun rydych chi'n gweithio ynddo. Dyma'r prif opsiynau:

Newid polisi gweithredu dros dro (sesiwn gyfredol)

Os mai dim ond unwaith y mae angen i chi redeg sgript ac nad ydych chi eisiau i'r newid fod yn barhaol, gallwch chi ei wneud fel hyn:

  1. Agorwch PowerShell fel gweinyddwr.
  2. Gweithredu:
    Set-ExecutionPolicy -Scope Process -ExecutionPolicy Unrestricted

Dim ond y ffenestr PowerShell sydd gennych ar agor y mae hyn yn effeithio arni.Pan fyddwch chi'n ei gau, bydd y polisi'n dychwelyd i'w gyflwr blaenorol.

Gosod polisi gweithredu ar gyfer y defnyddiwr neu'r system gyfan

I wneud i'r newid barhau am gyfnod amhenodol, defnyddiwch un o'r gorchmynion hyn yn ôl yr angen:

  • Ar gyfer y defnyddiwr presennol:
    Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
  • Ar draws y system (angen caniatâd gweinyddwr):
    Set-ExecutionPolicy -Scope LocalMachine -ExecutionPolicy RemoteSigned

Y paramedr -Polisi Gweithredu gallwch ei addasu i Heb gyfyngiadau, Llofnodwyd i gyd o Llofnod o Bell yn dibynnu ar yr hyn sydd ei angen arnoch chi. RemoteSigned yw'r opsiwn mwyaf cytbwys i ddefnyddwyr a datblygwyr yn aml..

Newid y polisi gweithredu o osodiadau Windows 11

Dewis arall llai technegol yw cael mynediad at opsiynau'r system:

  1. Agorwch Gosodiadau Windows 11 (gallwch dapio Ennill + Fi).
  2. Ewch i Preifatrwydd a Diogelwch > I Ddatblygwyr.
  3. Chwiliwch am yr adran PowerShell.
  4. Yn galluogi'r opsiwn i redeg sgriptiau lleol heb eu llofnodi ac mae angen llofnod ar gyfer sgriptiau o bell yn unig.

Mae'r dull hwn yn ddelfrydol ar gyfer y rhai nad ydyn nhw eisiau cyffwrdd â gorchmynion ac sy'n well ganddyn nhw opsiwn graffigol syml.

Camgymeriadau cyffredin ac argymhellion diogelwch

Gall galluogi gweithredu sgript fod yn beryglus os nad yw'r hyn sy'n cael ei weithredu wedi'i reoli'n dda.Mae'n hanfodol dilyn yr argymhellion hyn:

  • Peidiwch â lawrlwytho na rhedeg sgriptiau o ffynonellau anhysbys.Hyd yn oed gyda pholisïau llai cyfyngol, byddwch yn ofalus.
  • Defnyddio Llofnod o Bell pryd bynnag y bo modd.
  • Ar ôl rhedeg y sgript angenrheidiol, yn ailsefydlu'r polisi blaenorol (er enghraifft, gan ddefnyddio Set-ExecutionPolicy Restricted).
  • Mewn amgylcheddau busnes neu wrth drin sgriptiau hanfodol, Dewiswch AllSigned neu ymgynghorwch â gweinyddwr eich system..
Cynnwys unigryw - Cliciwch Yma  Beth yw gweinyddion gwe?

Achosion arbennig: PowerShell, Azure a fersiynau anghydnaws

Mae yna sefyllfaoedd lle gall y gwall fod oherwydd rhywbeth heblaw'r polisi gweithredu. Er enghraifft, gyda modiwlau penodol fel Azure Active Directory, Nid yw rhai fersiynau modern o PowerShell yn cael eu cefnogi, a gall hyn sbarduno gwallau ychwanegol:

  • Dim ond gyda'r modiwl clasurol Azure Active Directory y mae'n gweithio PowerShell 3 i 5.1Am fersiynau uwch, chwiliwch am fersiynau amgen neu wedi'u diweddaru o'r modiwl.
  • Cofiwch bob amser redeg modiwlau sydd angen gweinyddiaeth fel gweinyddwr er mwyn osgoi trwyddedau annigonol.

Os byddwch chi'n colli golwg ar eich fersiwn PowerShell, rhedwch:
$PSVersionTable
i weld yr holl wybodaeth amdano.

Datrys problemau ychwanegol ac adnoddau defnyddiol

Uwch PowerShell-4 Tricks

Weithiau hyd yn oed wrth gymhwyso'r gorchmynion uchod efallai y byddwch chi'n dal i brofi damweiniauMewn achos o'r fath:

  • Gwiriwch os oes unrhyw Mae gwrthfeirws neu bolisi cwmni yn atal newidiadau.
  • Os mai dim ond gyda sgriptiau wedi'u lawrlwytho y mae'r gwall yn digwydd, Gwiriwch briodweddau'r ffeil a'i datgloi (Cliciwch ar y dde > Priodweddau > Datgloi).
  • Gwiriwch y Cymorth swyddogol Microsoft a fforymau arbenigol os yw'n amgylchedd corfforaethol gyda'i bolisïau cyfyngol ei hun.

Cofiwch, os oes angen cymorth ychwanegol arnoch, gallwch chi bob amser droi at y Cymuned defnyddwyr PowerShell neu sianeli cymorth Microsoft, gan eu bod fel arfer yn cael eu diweddaru gyda'r newidiadau a gyflwynir fersiwn wrth fersiwn.

Deall pam mae Windows 11 yn cyfyngu ar weithredu sgriptiau yn PowerShell yw'r cam cyntaf tuag at weithio gyda sgriptiau yn effeithlon ac yn ddiogel. Drwy ddilyn yr argymhellion hyn, byddwch yn datrys y gwall ac yn dysgu sut i reoli'ch amgylchedd amser rhedeg yn well, gan gael mwy allan o'ch awtomeiddio a chadw'ch system wedi'i diogelu. Newidiwch osodiadau dim ond pan fo angen a chofiwch ailosod polisïau ar gyfer diogelwch ar ôl cwblhau eich tasgau.

Uwch PowerShell-0 Tricks
Erthygl gysylltiedig:
Triciau PowerShell Uwch ar gyfer Gweinyddwyr