폴더와 파일에 대한 소유권과 권한 부여를 손쉽게 하기

윈도우 비스타 이후 윈도우들은 보안 정책이 상당히 강화되어 다른 윈도우의 파일들에는(사용자 계정 폴더 포함) 바로 접근할 수 없는 문제가 있습니다. 즉, 여러 개의 윈도우를 설치하여 멀티 부팅 상태로 사용 중일 때, 다른 윈도우에 속한 파일들에는 접근이 되지 않는 것이죠. 심지어 자기 자신(해당 윈도우)의 파일일지라도 어떠한 파일이나 폴더에는 접근이 차단되는 경우도 있습니다.

관리자 계정이지만 소유권 또는 권한이 없어 작업이 거부되는 모습.


이는 현재 사용 중인 계정에 해당 폴더와 파일에 대한 소유권이나 권한이 없기 때문에 발생하는 문제입니다. 현재 사용 중인 계정이 관리자 계정이라고 할 지라도 말이죠. 보안을 강화하기 위한 정책이지만 이전의 느슨했던 윈도우 XP 시절과 비교하면 상당히 골치 아파진 문제 중에 하나라고 할 수 있습니다.


이러한 문제는 해당 폴더와 파일에 대한 소유권과 권한을 획득함으로써 해결이 가능합니다. 소유권은 Takeown 을 통해, 권한은 Icacls 라는 명령을 통해 가져오는 것이 가능하죠. 하지만 언제나 그렇듯이 귀찮다는 게 문제입니다. 이러한 작업을 간단하게 마우스 오른쪽 버튼 클릭 메뉴를 통해 자동으로 진행할 수 있게 만들 수 있습니다. 간단하게 아래의 레지스트리를 받으셔서 병합해 주시면 됩니다. [* 윈도우 비스타, 윈도우 7, 윈도우 8 모두 적용 가능]

* 레지스트리 파일을 더블 클릭하거나, 마우스 오른쪽 버튼 클릭 -> 병합을 선택하시면 됩니다.



이후 소유권과 권한이 필요한 파일이나 폴더가 있으면 해당 파일/폴더를 마우스 오른쪽 버튼으로 클릭한 후 나오는 메뉴에서 모든 권한 부여를 선택하시면 됩니다.

파일/폴더에 모든 권한을 부여하기


참고로 폴더에 사용하는 경우 하위 폴더와 파일들까지 모두 소유권과 권한을 부여하게 됩니다. 참고하시고요.

다음으로 이 작업은 관리자 그룹 전체에 소유권과 권한을 부여하는 것이기 때문에, 사용하는 계정이 관리자 그룹의 계정이어야 합니다. 이 부분만 주의하시면 되겠네요.




Takeown 과 Icacls

해당 레지스트리를 통해 생성된 '모든 권한 부여' 가 하는 작업은 아래와 같습니다.

만약 대상이 파일인 경우 먼저 Takeown 명령을 통해 해당 파일에 대한 소유권을 가져옵니다.

takeown /f c:\file.exe

다음으로 Icacls 명령을 통해 관리자 그룹에 해당 파일에 대한 모든 권한을 부여합니다.

icacls c:\file.exe /grant Administrators:F

만약 대상이 폴더인 경우 먼저 Takeown 명령을 통해 해당 폴더와 하위 모든 폴더/파일에 대한 소유권을 가져옵니다.

takeown /f c:\folder /r /d y

다음으로 Icacls 명령을 통해 관리자 그룹에 해당 폴더와 하위 모든 폴더/파일에 대한 모든 권한을 부여합니다.

icacls c:\folder /grant Administrators:F /t

* 이 때 Administrators 는 관리자 그룹입니다. 최고 관리자 계정인 Administrator 가 아닙니다.

* icacls 권한 종류 : N(권한 없음), F(모든 권한), M(수정 권한), RX(읽기 및 실행 권한), R(읽기 전용 권한), W(쓰기 전용 권한), D(삭제 권한)


이렇습니다. 작업 자체는 어려운 것이 아니지만 언제나 그렇듯이 저걸 직접 입력하려면 귀찮을 뿐입니다. 참고로 모든 권한 부여는 굳이 관리자 그룹이 아닌 특정 계정에만 부여해도 됩니다. 아래와 같이 말이죠.

icacls c:\file.exe /grant 신희돈:F
icacls c:\folder /grant 신희돈:F /t



또는 사용자 계정을 아래와 같이 시스템 변수로 처리해도 됩니다. 이건 배치 파일로 작업을 만들 때 좋겠죠.

icacls c:\file.exe /grant %UserName%:F
icacls c:\folder /grant %UserName%:F /t



이번 글은 여기까지 입니다. ^^

글에서 제공되는 레지스트리는 http://www.mydigitallife.info/take-and-grant-full-control-permissions-and-ownership-in-windows-7-or-vista-right-click-menu/ 에서 제공된 레지스트리를 한글에 맞춰 수정한 것입니다.

 

 

신고
캐플 블로그에 공개된 글은 반드시 원본 글의 링크를 포함시키는 조건으로 자유롭게 이용하실 수 있습니다.
하지만 블로그의 발전을 위하여 되도록이면 링크로 글을 소개해주시길 부탁드립니다. ^^

- 상업적인 용도의 사이트는 대상에서 제외됩니다. -
- 글에는 오류가 있을 수 있고, 추후 수정 또는 재발행될 수 있습니다. -
  1. BlogIcon 니드뽀폴쉐 2012.09.12 00:21 신고  댓글주소  수정/삭제  댓글쓰기
    제가 윈8을 멀티부팅으로 설치하고 실행해보니 역시 시작이 없다는게 적응이 어려워,
    윈7로 부팅한후 D드라이브에 설치된 윈8을 그냥 삭제하고, 부팅 메뉴에 나오는건 bcdboot /l....로 윈7로만 부팅하게 하려고 윈7로 부팅을 했는데...

    윈8 폴더와 파일 상당수가 그냥 삭제가 안되서 조금씩 지우다가 fastcopy로는 지워지는걸 우연히 발견하고 지웠는데... 이런 상황에서도 권한을 다 가져오면 싹 삭제 가능할까요?

    윈8에서 작업하신 스샷인데... 윈7에서도 그냥 사용 가능하겠죠?

    참 쓸데없이 질문이 길어서 죄송... ^^;;;;;
    • BlogIcon CApple 2012.09.12 01:00 신고  댓글주소  수정/삭제
      네 보통 그러한 파일들이 권한이 없어서 삭제가 불가능한 경우가 많죠. 권한을 가져와서 삭제하면 대부분 삭제가 됩니다. 그렇지 않은 것은 뭔가 문제가 생긴 거죠. ㅎㅎㅎ

      참고로 해당 레지스트리 파일은 윈도우 비스타, 윈도우 7, 윈도우 8 공용입니다. ^^
    • BlogIcon 니드뽀폴쉐 2012.09.12 01:56 신고  댓글주소  수정/삭제
      바로 적용했습니다.ㅋ
      실사용은... 언젠가... ^^;;
  2. 흥,, 2012.09.21 14:33 신고  댓글주소  수정/삭제  댓글쓰기
    윈도8 깐후,, 1테라인데 나머지 500기가가 사라졌어요,, 어디간건가요,,
    찾아주세요,,,,,ㅠㅠ파티션 분할을 잘못했었나,,어떻게해야되나요~,
  3. 레지스트리 관리자 권한 2012.10.24 14:22 신고  댓글주소  수정/삭제  댓글쓰기
    안녕하세요
    혹시 takeown으로 HKEY등의 REG 키, 값의 관리자 권한도 얻기가 가능한가요??

    예) takeown /f HKEY_LOCAL_MACHINE /r /d y
    • BlogIcon CApple 2012.10.24 19:26 신고  댓글주소  수정/삭제
      해당 명령은 파일과 폴더에 대한 소유권을 가져오는 것입니다. 레지스트리는 레지스트리 편집기 내에서 권한을 가져와야죠.
  4. 생질르 2013.01.09 12:18 신고  댓글주소  수정/삭제  댓글쓰기
    업무 파일을 저장하려고 하는데 읽기전용이라 저장이 안된다고 해서
    파일 문젠줄 알고 삽질하다가 보니 폴더문제더라구요...
    내가 관리잔데 왜 권한이 없다고 하는지 한참 열받아있었는데
    캐플님 포스트 덕분에 완전 쉽게 문제 해결했습니다. 정말 감사드려요!!!!
  5. 돌산 2013.01.10 11:35 신고  댓글주소  수정/삭제  댓글쓰기
    링크를 타고 와서 이 글을 보게 되었는데,문득 takeown 과 icacls에 대한 개념이 꽉 잡히네요.ㅎㅎ
    • BlogIcon CApple 2013.01.10 11:58 신고  댓글주소  수정/삭제
      아래의 내용도 참고해보시면 많은 도움이 되실 겁니다. ^^

      http://blogs.technet.com/b/koalra/archive/2008/03/05/2962724.aspx
  6. 시스템32 2013.01.17 13:43 신고  댓글주소  수정/삭제  댓글쓰기
    mfpmp.exe를 삭제하고 싶은데 레지등록하고 삭제해도 권한이 없다고 나오네여
    • BlogIcon CApple 2013.01.17 13:57 신고  댓글주소  수정/삭제
      시스템 파일을 왜 지우려고 하시는지요? 아무튼, 레지스트리로 안 되면 관리자 권한으로 명령 프롬프트를 띄우시고 직접 명령으로 해보세요. 관리자 그룹에 권한을 부여해도 되고, 자신의 계정에 권한을 부여해도 됩니다. 둘 중에 하나로 하시면 아마 되실 겁니다.

      1. 관리자 그룹에 소유권과 권한 부여

      [code]
      takeown /f C:\Windows\System32\mfpmp.exe
      icacls C:\Windows\System32\mfpmp.exe /grant Administrators:F
      [/code]


      2. 자신의 계정에 소유권과 권한 부여

      [code]
      takeown /f C:\Windows\System32\mfpmp.exe
      icacls C:\Windows\System32\mfpmp.exe /grant %Username%:F
      [/code]
  7. 은헤로우십니다. 2013.01.22 16:53 신고  댓글주소  수정/삭제  댓글쓰기
    바로 엊그제 동생의 장난으로 권리자 계정임에도 수천개의 파일 권한이 모두 날아가느라 어제 하는수 없이 소유권지정해주고.. 권한 추가해주고.. 1년은 걸릴듯 싶었는데 바로 해결되는군요 ㅜㅜ 감사드립니다
  8. 몽이장군 2013.03.11 19:41 신고  댓글주소  수정/삭제  댓글쓰기
    좋은정보 너무 감사합니다.
    담아 놓으신 파일로.. 드디어 골머리 썩은 자료를 지웠습니다.
    감사합니다.
  9. BlogIcon 정보보호학과 2013.03.26 01:03 신고  댓글주소  수정/삭제  댓글쓰기
    안녕하세요~ 액세스 권한에 대해 공부하다가 방문하게 되었습니다.
    권한 부여 하는 방식을 사용하여 파일 삭제, 복사, 이동 만 불가능 하도록 할 수 있는 방법이 있을까요 ...?
    권한 부여에 대해서 처음 공부하다보니 모르는부분이 너무 많네요 조언좀 부탁 드릴께요 ^^;
    • BlogIcon CApple 2013.03.26 19:36 신고  댓글주소  수정/삭제
      저도 윈도우의 권한 문제는 솔직하게 자세하게 알지는 못합니다. 일단 Icacls 명령을 통해 지정할 수 있는 권한은 크게 아래와 같이 있습니다.

      F - 모든 권한
      M - 수정 권한
      RX - 읽기 및 실행 권한
      R - 읽기 권한
      W - 쓰기 권한
      D - 삭제 권한

      이 때 M 수정 권한은 RX,R,W 를 동시에 지정한 것과 같은 권한이고, RX 는 R, W 를 동시에 지정한 것과 같습니다. 참고로 여러 권한을 동시에 주고 싶을 땐 괄호로 묶어 (R,W) 와 같이 권한을 부여하면 됩니다.


      이제 권한을 지정하는 것에는 크게 두 가지 형식이 있습니다. 바로 '허용' 과 '거부' 인데요. 같은 종류의 권한에 대해 '거부' 와 '허용' 이 동시에 적용되어 있는 경우 거부를 우선시하여 적용됩니다.

      /grant - 허용할 권한
      /deny - 거부할 권한


      아래와 같이 현재 사용자에게 읽기와 쓰기 권한을 허용한 후, 쓰기 권한을 거부하면 해당 파일을 읽을 수는 있지만 쓰는(수정)하는 것은 불가능해지는 것이죠.

      icacls D:\Test.txt /grant %username%:(R,W)
      icacls D:\Test.txt /deny %username%:W


      이 외에도 상속도 다뤄야 하고, 저도 확실하게 남에게 이야기할 수준이 못되는지라 큰 도움을 드리긴 힘들 것 같습니다. 아무래도 이쪽은 서버를 잘 다루시는 분께 여쭤보는 게 좋을 것 같습니다.


      p.s 그런데 제가 알기론 읽기 권한이 부여되면 파일의 복사나 이동을 막을 방법은 없을 듯 해보이네요. 권한이 아닌 다른 쪽으로 알아보셔야 할 듯 싶어요.
  10. 강대승 2013.07.14 21:59 신고  댓글주소  수정/삭제  댓글쓰기
    감사합니다~
    레지스트리 잘쓰겠습니다

    레지스트리는 마치 오토핫키 프로그램을

    컴퓨터에 저장해두는 꼴 같네요
  11. ㅠㅠ 2013.09.14 14:29 신고  댓글주소  수정/삭제  댓글쓰기
    무슨말인지 하나도 모르겠어요 ㅠㅠ
  12. BlogIcon 헬프미 2014.01.08 12:08 신고  댓글주소  수정/삭제  댓글쓰기
    ㅠㅠㅠㅠ
    폴더에 사용자권한걸어놓고 사용하다가 윈7 재설치했거든요,
    근데 그때부터 폴더접근은 되는데 사진이고 파일마다 파일에 엑세스 할수있는 권한이 없다면서
    먹통이 되버렸어요.
    이거 어떻게 해야할지 도저히 모르겠어요 좀 도와주세요
    저한테는 중요한 파일들인데..ㅠㅠㅠㅠ
  13. 산화철 2014.01.11 23:50 신고  댓글주소  수정/삭제  댓글쓰기
    하드 새로 설치하고 내문서 통째로 옮기다가 쩔쩔매고 있었는데 덕분에 해결했습니다.

    정말 감사합니다.
  14. BlogIcon 이창윤 2014.04.10 10:44 신고  댓글주소  수정/삭제  댓글쓰기
    위의 레지스트리 다운받아서 해봤는데도 폴더가 자꾸 어드민계정으로 권한을 부여해달라고 합니다.
    방법이 없나요? 미치겠어요 ㅠㅠ
  15. 이호형 2014.04.26 01:40 신고  댓글주소  수정/삭제  댓글쓰기
    감사합니다.ssd새로구입하고 ahci mode 윈도우8.1 로 설치하고 hdd 여러개 하드 드라이브명 변경 했더니 일부 음악폴더에 있는 몇만개 파일이 소유권한이 사라져서 난감했는데 한방에 해결되어 정말 감사합니다.
  16. 사람인 2015.03.09 18:19 신고  댓글주소  수정/삭제  댓글쓰기
    Windows Registry Editor Version 5.00

    [HKEY_CLASSES_ROOT\*\shell\runas]
    @="모든 권한 부여"
    "NoWorkingDirectory"=""

    [HKEY_CLASSES_ROOT\*\shell\runas\command]
    @="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:D"
    "IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:D"

    [HKEY_CLASSES_ROOT\exefile\shell\runas2]
    @="모든 권한 부여"
    "NoWorkingDirectory"=""

    [HKEY_CLASSES_ROOT\exefile\shell\runas2\command]
    @="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:D"
    "IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:D"

    [HKEY_CLASSES_ROOT\Directory\shell\runas]
    @="모든 권한 부여"
    "NoWorkingDirectory"=""

    [HKEY_CLASSES_ROOT\Directory\shell\runas\command]
    @="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:D /t"
    "IsolatedCommand"="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:D /t"

    작성자님의 글과 반대로 administrators의 권한을 삭제 해야하는 상황이라
    글을 보면서 한번 해봤습니다만 잘안되네요 도와주실 수 있나요?
  17. 김혜정 2016.07.27 09:36 신고  댓글주소  수정/삭제  댓글쓰기
    궁금한게 잇는데요.. usb보안 파일인 rsv를 설치햇더니 usb에 파일을 옮길수가 없더라구요.. 이거 어떻게
    해결하는지 아시나요?ㅠ 제발 부탁드려요

댓글을 달아 주세요

- 댓글에선 예의를 지켜주시기 바라며, 블로그지기는 댓글에서 따로 활동하지 않습니다.

* 티스토리 사용자는 여기를 클릭하시면 로그인 됩니다.

BBCode 안내   굵게 밑줄 기울임 취소선   취소선 취소선 취소선 취소선   왼쪽 정렬 가운데 정렬 오른쪽 정렬   코드박스 인용구 이미지   이미지 업로드-Imgur.com