
많은 Windows 사용자들이 시스템에서 파일이나 폴더를 열거나 수정, 삭제하려고 할 때 "액세스 거부"라는 골칫거리 메시지를 접해본 경험이 있을 것입니다. 권한 문제는 특히 수천 개의 파일이 있는 폴더, 외장 드라이브, 또는 재설치나 소유권 변경 후에 발생할 경우 골칫거리가 될 수 있습니다. 다행히 icacls나 takeown 같은 도구는 타사 프로그램을 사용하거나 불필요한 재설치를 하지 않고도 제어권을 되찾을 수 있는 강력한 해결책을 제공합니다.
이 문서에서는 모든 유형의 시나리오에서 이러한 명령을 사용하여 파일 권한 및 소유권을 수정하는 방법을 포괄적이고 실질적으로 다룹니다. 경고, 자세한 예시, 권장 조합, 그리고 Windows 버전별 동작 차이점을 모두 명확하게 설명하여 이러한 문제를 직접 해결할 수 있도록 돕습니다.
Windows에서 권한 부여에 실패하는 이유는 무엇입니까?
Windows 시스템에서 보안은 파일과 폴더에 대한 권한 및 소유권을 기반으로 합니다 . 실수로 파일이 변경되거나, 사용자 간에 파일이 복사되거나, BitLocker와 같은 암호화를 사용한 후 파일이 잠겨 일부 정보에 접근할 수 없게 되면 관리자 권한이 있더라도 해당 정보에 접근하려고 할 때 오류 메시지가 표시됩니다.
이러한 문제는 일반적으로 현재 사용자가 파일 소유권을 갖고 있지 않거나 NTFS (일반적인 Windows 보안 파일 시스템) 권한이 잘못 조정되었거나 항목이 손상되었기 때문에 발생 합니다 .
권한을 복구하는 도구: 주요 명령
Windows에는 이러한 시나리오를 처리하는 두 가지 주요 유틸리티가 포함되어 있습니다.
- takeown: 파일 및 폴더의 소유권을 현재 사용자 또는 관리자 그룹으로 변경할 수 있습니다. 이는 권한 변경을 위한 필수 조건입니다(특히 관리자 권한으로도 폴더에 액세스할 수 없는 경우). 자세한 내용은 다음에서 확인할 수 있습니다. NTFS 권한 관리에 대한 가이드.
- icacls: 파일 및 폴더의 NTFS 권한을 재설정, 수정, 내보내기 및 가져오기 위한 가장 진보적이고 유연한 명령입니다. 대량으로 재귀적으로 실행할 수 있습니다.
권한 수정 전 경고
파일 소유권이나 권한을 변경하기 전에 무엇을 변경하는지 명확하게 파악해야 합니다. 운영 체제 폴더나 파일(예: Windows 또는 Program Files 폴더)에는 이러한 명령을 사용하지 마십시오. 시스템을 사용할 수 없게 되거나 심각한 취약점이 발생할 수 있습니다.
또한 가능하다면 가장 중요한 파일을 백업하고, 서버나 공유 드라이브를 다루는 경우 문제가 발생할 경우 나중에 복원할 수 있도록 icacls를 사용하여 기존 ACL(액세스 제어 목록)을 먼저 내보내는 것을 고려하세요.
takeown을 사용하여 파일 및 폴더의 소유권을 가져오는 방법
접근 오류를 해결하는 첫 번째 단계는 일반적으로 해당 리소스의 소유권을 가져오는 것 입니다. 이는 `takeown` 명령어를 사용하여 수행하며 , 이 명령어는 항상 관리자 권한으로 열린 명령 프롬프트 창에서 실행해야 합니다.
기본 구문은 다음과 같습니다.
takeown /f "폴더 또는 파일 경로" /r /d S
이 명령은 지정된 폴더의 소유권을 강제로 변경하며, /r /d S 옵션을 사용하면 하위 폴더와 파일을 포함하여 재귀적으로 변경하고 커밋을 억제합니다.
예를 들어, C 드라이브 루트에 있는 "locked_folder"라는 폴더의 경우:
takeown /f "C:\잠긴_폴더" /r /d S
현재 사용자 대신 관리자 그룹에 속성을 할당하려면 /a 매개변수를 사용하십시오.
takeown /a /r /d S /f D:\SYSADMIT
시스템이 영어로 되어 있는 경우 확인 옵션은 '/d Y'입니다.
icacls를 사용하여 NTFS 권한 복원 및 수정
적절한 사용자 또는 그룹이 폴더의 소유권을 갖게 되면 icacls 명령어를 사용하여 올바른 권한을 재설정하거나 할당 할 수 있습니다 . 이 명령어는 매우 강력하며 접근 권한 수정, 이전 구성 검토, 내보내기 또는 복원 등 다양한 옵션을 제공합니다.
폴더(및 폴더 안의 모든 항목)의 모든 권한을 기본 상태로 재설정하려면 다음을 사용하세요.
icacls "C:\잠긴_폴더" /T /Q /C /RESET
장소 :
- /T는 모든 파일과 하위 폴더에 변경 사항을 실행합니다.
- /Q는 성공 메시지를 억제합니다.
- /C는 오류가 발생해도 중단 없이 계속 실행합니다.
- /RESET은 액세스 제어 목록(ACL)을 상속된 기본값으로 재설정합니다.
관련 파일과 폴더가 많은 경우 이 과정은 몇 분 정도 소요될 수 있습니다. 명령 창에 진행 상황이 표시되지 않더라도 걱정하지 마세요. 명령은 백그라운드에서 실행되고 있습니다.
안전하게 권한 복원: 모범 사례
전체 볼륨이나 외장 드라이브에 작업하기 전에 먼저 테스트 목적으로 명령을 적용하거나 작은 폴더부터 시작하는 것이 좋습니다. 암호화를 해제하거나 다른 시스템에서 파일을 복사한 후 외장 하드 드라이브에 문제가 발생한 경우 다음과 같이 진행하세요.
-
- 를 엽니 다 명령 프롬프트 관리자로서 ("cmd"를 검색하여 마우스 오른쪽 버튼을 클릭하고 관리자 권한으로 실행).
- 영향을 받은 디스크의 루트를 점유합니다.예를 들어 드라이브가 G인 경우:
takeown /f G:\* /r /d S
- 콘솔에서 드라이브를 변경하세요(G:를 입력하고 Enter를 누르세요).
- 모든 파일 및 폴더의 권한 재설정:
icacls * /T /Q /C /RESET
명령이 완료되면 정상적으로 파일에 접근하고, 파일을 이동하고, 삭제할 수 있습니다.
icacls를 사용하여 권한 사용자 지정
icacls는 단순한 재설정 이상의 다양한 기능을 제공합니다. 사용자 또는 그룹에 특정 권한을 부여하거나 거부하고, 소유자를 수정하고, 권한 상속을 비활성화하고, 전체 구성을 저장/복원할 수 있습니다.
- 폴더에 대한 전체 제어권을 관리자에게 할당:
icacls "D:\my_folder" /grant 관리자:F /T
- 특정 사용자에게 읽기 전용 또는 실행 권한을 할당합니다.
icacls "D:\my_folder" /grant pepito:RX /T
- 상속을 제거하고 새로운 권한을 할당하세요.
icacls "C:\test" /상속:r /그랜트:r DOM\All:(OI)(CI)(F)
- 폴더의 권한을 확인하세요.
icacls "C:\test"
/grant 인수는 권한을 할당하고, /deny는 명시적으로 거부하며, 여러 사용자 또는 그룹에 대해 여러 할당을 조합할 수 있습니다.
예를 들어, 관리자에게 모든 권한을 부여하고 한 명의 사용자만 수정하려면 다음을 수행합니다.
icacls "C:\test" /grant:r DOM\Administrators:(OI)(CI)F /grant:r DOM\pepe:(OI)(CI)M /T
액세스 제어 목록(ACL) 내보내기 및 가져오기
큰 변경을 하기 전에 현재 권한을 저장하는 것이 좋습니다 . 다음과 같이 폴더 및 하위 폴더의 ACL을 내보낼 수 있습니다.
icacls "C:\test\*" /save "C:\acl-backup\ACL_backup.txt" /T
나중에 문제가 발생하거나 원래 권한 설정을 복원해야 하는 경우:
icacls "C:\test\" /restore "C:\acl-backup\ACL_backup.txt"
이 기능은 잘못 구성된 권한으로 인해 수십 명 또는 수백 명의 사용자의 액세스가 중단될 수 있는 파일 서버에서 특히 유용합니다.
NTFS 권한 및 마스크 이해
icacls를 사용하여 권한을 할당할 때 간단한 권한(F, M, RX, R, W, D)과 고급 권한 조합(DE, RC, WDAC, WO, S, AS, MA 등)을 모두 지정할 수 있습니다. 예:
- N – 접근 불가
- F – 전체 제어
- M – 수정
- RX – 읽기 및 실행
- R – 읽기 전용
- W – 쓰기 전용
- D – 삭제
또한, 상속이 폴더, 파일 또는 둘 다에 적용되는 방식을 정의하는 상속 옵션이 있습니다. (OI)는 객체, (CI)는 컨테이너, (IO)는 상속만, (NP)는 상속 전파 없음 등입니다. 결합된 예:
icacls "C:\documents" /grant "사용자:(OI)(CI)M" /T
잠긴 시스템 파일 문제 해결
때로는 문제가 NTFS 권한 문제뿐만 아니라 손상되었거나 Windows에서 보호된 시스템 파일 때문일 수도 있습니다. 이러한 경우에는 먼저 sfc /scannow 유틸리티를 사용하는 것이 좋습니다.
SFC / scannow를
이 명령은 필수 Windows 파일을 검사하고 복구를 시도합니다. 복구되지 않은 파일에 대한 메시지가 발견되면 생성된 로그를 확인할 수 있습니다.
findstr /c:"" %windir%\Logs\CBS\CBS.log > "%userprofile%\Desktop\sfcdetails.txt"
자동으로 복구할 수 없는 손상된 파일을 교체해야 하는 경우, 다른 시스템에서 정상적인 복사본으로 교체하기 전에 각각 takeown 및 icacls 명령을 사용하여 해당 파일의 소유권을 가져오고 해당 파일에 대한 권한을 부여해야 합니다.
고급 옵션: SID 대체, 확인 및 상속
icacls는 이전 SID를 새 SID로 교체(도메인 마이그레이션에 유용), ACL 상태 확인( /verify ), 특정 SID에 대한 참조 검색( /findsid ) 및 상속 제어( /inheritance:e|d|r )와 같은 고급 기능을 제공합니다.
예를 들어, 상속을 제거하고 사용자가 지정한 권한만 유효하도록 설정하려면 다음을 수행합니다.
icacls "C:\test" /상속:r /그랜트:r 관리자:(OI)(CI)F /T
실제 예: Bitlocker 제거 후 외부 드라이브에 대한 액세스 복구
외장 드라이브 암호를 해독한 후 "현재 이 폴더에 접근할 권한이 없습니다."라는 메시지가 계속 표시된다면, 해결책은 다음과 같습니다.
- 열기 cmd를 관리자로.
- 달리기 takeown /f X:\* /r /d S (여기서 X는 드라이브 문자입니다).
- 콘솔에서 드라이브를 변경합니다(X:를 입력합니다).
- 달리기 icacls * /T /Q /C /RESET 단위 내에서.
완료되면 다시 전체 액세스 권한을 얻고 오류 없이 파일을 재생할 수 있습니다.
takeown이나 icacls를 사용하면 안 되는 경우
권한 문제가 Windows로 보호되는 시스템 폴더나 파일에 영향을 미치는 경우, 강제로 변경하면 시스템이 손상되거나 취약해질 수 있으므로 매우 주의해야 합니다. 운영 서버에서는 항상 사전에 백업을 하고, 가능하면 테스트 환경에서 먼저 변경 작업을 수행하세요.
`takeown` 과 `icacls` 명령어를 숙달하면 특히 수천 개의 파일이 있는 대규모 환경에서 수많은 시간과 노력을 절약할 수 있습니다. 하지만 이러한 명령어는 항상 신중하게 사용해야 하며, 권한 구조를 완전히 이해하고, 꼭 필요한 경우가 아니면 운영 체제에 큰 변화를 주지 않도록 주의해야 합니다. 이러한 단계와 권장 사항을 따르면 잠긴 파일과 폴더에 대한 제어권을 되찾아 Windows 시스템의 보안과 기능을 최적화할 수 있습니다.
바이트와 기술 전반에 관한 세계에 대한 열정적인 작가입니다. 나는 글쓰기를 통해 내 지식을 공유하는 것을 좋아하며 이것이 바로 이 블로그에서 할 일이며 가젯, 소프트웨어, 하드웨어, 기술 동향 등에 관한 가장 흥미로운 모든 것을 보여 드리겠습니다. 제 목표는 여러분이 간단하고 재미있는 방식으로 디지털 세계를 탐색할 수 있도록 돕는 것입니다.
