PowerShell 오류 해결 방법
PowerShell이 실행되지 않거나 제대로 작동하지 않을 때 답답함을 느낄 수 있습니다.단순히 권한 문제일 수도 있고, 파일 손상이나 정책 제한과 같은 더 근본적인 문제일 수도 있습니다.어떤 원인이든 이 가이드는 대부분의 일반적인 문제를 해결하는 데 도움이 될 것입니다.명령줄을 사용하거나 설정을 변경하고, 경우에 따라 PowerShell을 업데이트하거나 재설치해야 할 수도 있습니다.이 가이드를 마치면 PowerShell이 최소한 정상적으로 작동하거나, 문제를 해결하는 데 도움이 되는 더 명확한 오류 메시지를 표시할 것입니다.
PowerShell이 작동하지 않을 때 해결 방법은 무엇인가요?
올바른 위치에서 관리자 권한으로 PowerShell을 실행하세요.
이는 종종 문제가 권한 부족이나 잘못된 위치에서 실행하려는 시도에서 비롯되기 때문에 가장 먼저 시도해야 하는 단계입니다.Windows 탐색기를 열고 다음 경로로 이동하세요.
%SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe
powershell.exe 파일을 마우스 오른쪽 버튼으로 클릭 하고 ‘관리자 권한으로 실행’을 선택하세요.이렇게 하면 문제가 해결된다면 권한 문제일 가능성이 높습니다.특히 스크립트를 작성하거나 특정 명령을 실행할 때 ‘액세스 거부’와 같은 오류가 발생하는 경우, 관리자 권한으로 실행하는 것만으로도 문제가 해결되는 경우가 많습니다.
참고: 32비트 시스템 또는 32비트 버전의 Windows를 사용하는 경우, 경로에서 system32를 syswow64 로 바꾸십시오.
일부 환경에서는 이 단계만으로 PowerShell이 다시 응답하게 되지만, 때로는 이것이 시작에 불과할 수도 있습니다.
Windows 기능에서 PowerShell이 활성화되어 있는지 확인하십시오.
PowerShell이 중간에 비활성화되었을 가능성이 있습니다.특히 기능 목록이 변경되었거나 역할 및 기능을 켜고 끌 수 있는 시스템을 사용 중인 경우 더욱 그렇습니다.다음 경로로 이동하세요.
제어판 > 프로그램 > Windows 기능 켜기/끄기
Windows PowerShell을 찾아서 해당 확인란이 선택되어 있는지 확인하세요.선택되어 있지 않으면 선택하고 확인을 누르세요. Windows에서 재부팅하라는 메시지가 나타날 수 있습니다.재부팅 후 PowerShell을 다시 실행해 보세요.대부분의 경우 PowerShell이 비활성화된 것이 아니라 재부팅만으로 해결됩니다.
그룹 정책 제한 또는 레지스트리 차단을 해결하세요
“적용 중인 제한 사항으로 인해 이 작업이 취소되었습니다.”와 같은 오류 메시지가 표시되면 그룹 정책이나 레지스트리 설정으로 인해 PowerShell에 제한이 생긴 것일 수 있습니다.다음 사항을 확인하십시오.
- 누르고 Win + R, 입력하고
gpedit.msc, Enter 키를 누르세요. - 사용자 구성 > 관리 템플릿 > 시스템 으로 이동합니다.
- ‘지정된 Windows 응용 프로그램을 실행하지 않음’ 이라는 정책을 찾아 두 번 클릭합니다.
- 활성화되어 있다면 ‘구성되지 않음’ 으로 설정하거나 powershell.exe를 명시적으로 허용하십시오.
- 편집기를 닫고 PC를 다시 시작하세요.때때로 정책 잠금이 문제의 원인일 수 있습니다.
gpedit.msc에 접근할 수 없는 경우(예: Windows 10 Home) 레지스트리를 직접 수정하거나 Winhance 와 같은 도구를 사용하여 정책을 재설정하세요.
스크립트 실행을 허용하도록 실행 정책을 조정하세요.
스크립트 실행 정책이 너무 제한적이면 오류가 발생합니다.정책을 확인하거나 변경하려면 관리자 권한으로 PowerShell을 실행하고 다음 명령을 실행하십시오.
Set-ExecutionPolicy RemoteSigned -Force -Scope LocalMachine
이 명령을 사용하면 로컬 스크립트와 서명된 원격 스크립트를 실행할 수 있으며, 많은 스크립트에서 이 기능이 필요합니다.32비트 및 64비트 PowerShell 버전을 별도로 실행하는 경우 각 버전에 맞게 명령을 각각 변경해야 할 수도 있다는 점에 유의하십시오.
스크립트가 여전히 실행되지 않으면 다음 명령어를 사용하여 현재 정책을 확인해 보세요.
Get-ExecutionPolicy -List
정책은 기본값이나 그룹 정책을 통해 설정되는 경우가 있으므로 신중하게 수정하십시오.변경 후에는 PowerShell을 다시 시작하고 스크립트가 제대로 실행되는지 테스트하십시오.
PowerShell을 다시 설치하거나 업데이트하세요.
PowerShell이 전혀 시작되지 않거나 실행 시 충돌이 발생하는 경우 파일이 손상되었을 수 있습니다.업데이트 또는 재설치를 시도해 보세요.
- PowerShell은 공식 GitHub 릴리스에서 다운로드하세요.시스템(x86 또는 x64)에 맞는 최신 안정 버전 MSI 설치 프로그램을 선택하십시오.
- 설치 프로그램을 실행하고 안내에 따라 진행하세요.손상된 파일은 덮어쓰기 또는 교체될 것입니다.
- 클린 설치로 문제가 해결되지 않거나 CLI를 선호하는 경우 기존 PowerShell 또는 명령 프롬프트에서 설치 명령을 실행할 수 있습니다.
iex "& { $(irm https://aka.ms/install-powershell.ps1) } -UseMSI"
이 스크립트는 최신 설정 및 복구 작업을 자동화하지만, 마이크로소프트에서 제공하는 것이므로 주의해야 합니다.일반적으로 안전한 도구입니다.
다른 사용자 계정을 사용해 보거나 관리자 계정을 활성화해 보세요.
때때로 계정 관련 오류로 인해 PowerShell이 멈추거나 실행되지 않을 수 있습니다.명령 프롬프트(관리자 모드)에서 다음 명령을 실행하여 내장 관리자 계정을 활성화하십시오.
net user administrator /active:yes
또는 lusrmgr.msc (로컬 사용자 및 그룹)를 열고 관리자를 두 번 클릭한 다음, ‘계정이 사용 안 됨’을 선택 해제 하고 해당 계정으로 로그인합니다.로그인한 후 PowerShell을 테스트해 보세요. PowerShell이 정상적으로 작동하면 기존 사용자 프로필이 손상되었거나 잘못 구성되었을 수 있으므로 프로필을 복구하거나 새 프로필로 마이그레이션해야 합니다.
백그라운드 충돌을 테스트하려면 클린 부팅을 수행하십시오.
백그라운드 앱이나 서비스가 PowerShell에 간섭할 수 있습니다.이를 확인하려면 클린 부팅을 수행하십시오.
- 작업 관리자를 열고 시작 프로그램Ctrl + Shift + Esc 으로 이동하여 필수적 이지 않은 모든 프로그램을 비활성화하십시오.
- 누르고 Win + R, 입력하고
msconfig, Enter 키를 누르세요. - 서비스 탭 으로 이동하여 ‘ 모든 Microsoft 서비스 숨기기’를 선택한 다음 ‘ 모두 사용 안 함’을 클릭합니다.
- 시스템을 재부팅한 후 PowerShell을 테스트해 보세요.이제 정상적으로 작동한다면, 서비스를 하나씩 다시 활성화하여 문제의 원인을 찾아보세요.
참고: 때때로 타사 안티바이러스 또는 백업 도구가 지나치게 공격적으로 PowerShell을 차단하는 경우가 있는데, 이 테스트는 이러한 문제를 파악하는 데 도움이 됩니다.
시스템 유틸리티를 사용하여 파일 손상을 복구하세요
Windows 파일은 때때로 손상될 수 있으며, PowerShell도 예외는 아닙니다. SFC, DISM, CHKDSK 와 같은 내장 도구를 사용하여 디스크 또는 시스템 무결성 문제를 찾아 수정하십시오.
- 관리자 권한으로 명령 프롬프트를 엽니다( Win + R그런 다음 입력
cmd하고 Enter 키를 누릅니다 Ctrl + Shift + Enter). - 디스크 검사를 실행하려면 다음 명령어를 입력
chkdsk C: /f /x /r하고 Enter 키를 누르십시오.재시작 시 검사를 예약할지 묻는 메시지가 나타나면 ‘예’를 선택하십시오. - 시스템 파일 검사기 실행:
sfc /scannow— PowerShell 구성 요소를 포함한 시스템 파일을 검사하고 복구합니다. - 선택적으로 DISM을 실행하여 구성 요소 저장소를 복구할 수 있습니다
DISM /Online /Cleanup-Image /RestoreHealth.
도구가 정상적으로 실행되지 않으면 안전 모드로 부팅하여 검사를 진행해 보세요.경우에 따라 간단한 파일 복구로 문제가 해결될 수 있습니다.
Windows 업데이트
Windows 업데이트 후, 특히 업데이트로 인해 일부 구성 요소가 손상되거나 잘못 구성된 경우 PowerShell 문제가 발생할 수 있습니다. Windows 패치로 인해 문제가 발생하는 경우가 종종 있다는 것을 알고 계실 겁니다.수동으로 업데이트를 확인하면 남아 있는 버그를 해결할 수 있습니다.
- 설정 > Windows 업데이트를 엽니다.
- ‘업데이트 확인’을 클릭하세요.보류 중인 업데이트가 있으면 다운로드하여 설치하고, 재부팅한 후 다시 테스트해 보세요.
업데이트 직후 문제가 발생했다면 최신 패치가 나올 때까지 기다리세요.마이크로소프트는 종종 수정 사항을 신속하게 배포합니다.
PowerShell 모듈이 작동하지 않을 때 해결 방법은 무엇인가요?
PowerShell 자체는 정상적으로 실행되지만 특정 모듈이나 스크립트가 제대로 작동하지 않는 경우 모듈 파일이 손상되었을 수 있습니다.모듈은 다음 위치에 저장됩니다.
C:\Program Files\WindowsPowerShell\Modules
C:\Windows\System32\WindowsPowerShell\v1.0\Modules
새로 고치거나 복구하려면 해당 모듈을 업데이트하거나 제거해 보세요.관리자 권한으로 PowerShell 프롬프트를 실행하세요.
- 다음 명령어로 사용 가능한 모듈을 확인하세요:
Get-Module -ListAvailable - 문제가 있는 모듈을 발견하면 해당 모듈을 업데이트해 보세요.
- 모듈을 제거하려면 다음 명령을 실행하세요.
Update-Module -Name ModuleName
Uninstall-Module -Name ModuleName
그래도 문제가 해결되지 않으면 모듈을 새로 설치해야 할 수도 있습니다.때로는 모듈 폴더를 삭제하고 다시 설치하는 것만으로도 손상된 파일이 해결되는 경우가 있습니다.
요약
- PowerShell을 실제 위치에서 관리자 권한으로 실행하세요.
- Windows 기능 또는 그룹 정책에서 PowerShell이 비활성화되어 있지 않은지 확인하십시오.
- 스크립트가 실행되지 않으면 실행 정책을 확인하고 조정하십시오.
- PowerShell이 제대로 작동하지 않으면 업데이트하거나 다시 설치하십시오.
- 프로필 문제를 테스트하려면 다른 사용자 계정을 사용하거나 관리자 계정을 활성화해 보세요.
- 백그라운드 충돌을 배제하기 위해 클린 부팅을 수행하십시오.
- SFC, DISM, CHKDSK와 같은 시스템 유틸리티를 사용하여 손상을 복구하십시오.
- 윈도우가 최신 버전인지 확인하세요.패치는 여러 버그를 수정합니다.
- 모듈 관련 문제가 발생할 경우, 해당 모듈을 업데이트하거나 재설치하십시오.
마무리
PowerShell에서 문제가 발생하는 이유는 다양합니다.권한 문제일 수도 있고, 파일 손상이나 제한적인 정책 때문에 문제가 생길 수도 있습니다.아래 목록을 하나씩 살펴보면 문제의 원인을 파악하거나, 최소한 더 명확한 오류 메시지를 확인하여 문제 해결을 진행할 수 있습니다. Windows 또는 PowerShell 자체를 업데이트하면 문제가 해결되는 경우가 많지만, 정책 설정이 실수로 변경된 경우 해당 정책도 확인하는 것을 잊지 마세요.이 정보가 누군가의 시간을 절약하거나, 최소한 PowerShell을 다시 정상적으로 사용할 수 있도록 도움이 되기를 바랍니다.