스크립트 bat을 만들어서 net 또는 sc 명령을 수행할때 "시스템 오류 5이(가) 생겼습니다. 액세스가 거부되었습니다." 라는 메세지가 뜨거나

 

Windows Server 2003 2008 기반 컴퓨터에서 예약된 작업 또는 일괄 작업을 실행하면 "액세스가 거부되었습니다." 오류가 나는 경우가 있다.

 

Microsoft Windows Server 2003 또는 Windows Server 2008 기반 컴퓨터에서 일반 사용자 계정 컨텍스트로 일괄 작업 또는 스케줄러에서 실행하면 스크립트 또는 배치파일이 실행되지 않을수있습니다.

 

일반적인 상황이라면 실행화일에 마우스 오른쪽 버튼으로 "관리자 권한으로 실행" 하면 되겠지만 "작업 스케줄러"등에서 실행되어야 할때 사용 할수있습니다.

 

cacls 명령을 이용해서 해당 배치파일의 사용 권한을 변경하도록 한다.

 c:\>cacls /?

 파일의 액세스 제어 목록(ACL)을 화면에 표시하거나 수정합니다.

 

 CACLS 파일 이름 [/T] [/M] [/L] [/S[:SDDL]] [/E] [/C] [/G 사용자:perm]

        [/R 사용자 [...]] [/P 사용자:perm [...]] [/D 사용자 [...]]

    파일 이름      지정된 파일의 ACL을 화면에 표시합니다.

    /T             현재 디렉터리와 모든 하위 디렉터리에서 지정한

                   파일을 찾아서 ACL을 바꿉니다.

    /L             대상에 대해 기호화된 링크 자체에서 작동합니다.

    /M             디렉터리에 탑재된 볼륨의 ACL을 변경합니다.

    /S             DACL에 대한 SDDL 문자열을 표시합니다.

    /S:SDDL        ACL을 SDDL 문자열에 지정된 값으로 바꿉니다.

                   (/E, /G, /R, /P 또는 /D 스위치와 함께 사용될 수 없음)

    /E             ACL을 대체하지 않고 편집합니다.

    /C             오류를 무시하고 ACL을 계속 바꿉니다.

    /G 사용자:perm 지정된 사용자의 사용 권한을 부여합니다.

                   Perm은 다음과 같습니다: R  읽기

                               W  쓰기

                               C  바꾸기(쓰기)

                               F  모든 권한

    /R 사용자      지정된 사용자의 사용 권한을 철회합니다.(/E와 함께만 유효)

    /P 사용자:perm 지정된 사용자의 사용 권한을 바꿉니다.

                   Perm은 다음과 같습니다: N  없음

                               R  읽기

                               W  쓰기

                               C  바꾸기(쓰기)

                               F  모든 권한

    /D 사용자      지정된 사용자의 액세스를 거부합니다.

 한 명령에 하나 이상의 파일을 지정하는 대표 문자를 사용할 수 있습니다.

 한 명령에 하나 이상의 사용자를 지정할 수 있습니다.

 

 약어:

    CI - Container Inherit.

         ACE가 디렉터리에 의해 상속됩니다.

    OI - Object Inherit.

         ACE가 파일에 의해 상속됩니다.

    IO - Inherit Only.

         ACE가 현재 파일/디렉터리에 적용되지 않습니다.

    ID - Inherited.

 

 

관리자 모드로 cmd를 실행하고 cacls 명령어로 권한을 주도록 한다.

c:\>cacls merge.bat /e /g "NT AUTHORITY\BATCH":R

 

 

cacls로 파일을 사용 권한 상태를 보자

 

cmd_O.jpg

 

 

c:\>cacls merge.bat /e /g "NT AUTHORITY\BATCH":R

 

cmd_V.jpg

 

 

위 사진과 같은 상태가 되면 관리자 권한으로 실행한 것과 동일하게 실행된다.

 

스케쥴러나 배치적용을 해보도록 하자.

번호 제목 sitelink1 글쓴이 날짜 조회 수
243 Windows 11 Pro 환경의 WSL2(Windows Subsystem for Linux 2)에서 X11(그래픽 앱)을 실행   황제낙엽 2026.01.06 2672
242 경로 관련 별칭(alias)   황제낙엽 2025.12.19 2556
241 macOS 에서 finder 로 숨김 디렉토리, 파일을 조회   황제낙엽 2025.09.26 1654
240 특정 폴더 제외하고 가장 최근에 생성된 폴더 이름 가져오는 shell file 만들기   황제낙엽 2025.07.28 2592
239 [Copilot] WSL2 Ubuntu 실행 방식과 차이점   황제낙엽 2025.06.09 2569
238 [Gemini] docker pull 로 다운받은 ubuntu 이미지를 portainer 로 실행하여 접속   황제낙엽 2025.06.02 2582
237 Windows 11 Pro -> WSL2 (Ubuntu) -> Docker -> Portainer   황제낙엽 2025.05.30 2731
236 윈도우 11 설치 USB 만들기 가이드 https://blog.naver.com/cjs0308cjs/223694056158  황제낙엽 2025.01.10 3998
235 [bard] docker로 실행한 container에 터미널로 접속   황제낙엽 2024.02.01 3675
234 [2023. 11. 6.] 데이터베이스, GUI 클라이언트 환경의 Docker Compose 모음 https://blog.pages.kr/2819  황제낙엽 2024.01.29 3836
233 Docker Compose 문법 정리 (YAML)   황제낙엽 2024.01.29 3384
232 Docker Compose 명령어(실행,중지,삭제) https://docs.docker.com/compose/reference/  황제낙엽 2024.01.28 3859
231 Docker Compose 에 대한 이해와 사용법에 대한 포스팅 모음 https://docs.docker.com/compose/gettingstarted/  황제낙엽 2024.01.26 4095
230 Kubernetes 와 Docker 의 관계   황제낙엽 2024.01.26 3042
229 docker 를 windows 에서 실행하는 방법 3가지 정리   황제낙엽 2024.01.23 3752
228 windows + docker 설치에 대한 포스팅 모음   황제낙엽 2024.01.22 3547
227 윈도우 10 실행키 입력 명령어 목록 (Windows + R) https://haenny.tistory.com/217  황제낙엽 2023.07.12 7557
226 윈도우 10 "원격 데스크톱"의 "컴퓨터 목록" 정보 저장 위치 (from Bing)   황제낙엽 2023.07.11 4012
225 compress this drive to save disk space (이 드라이브를 압축하여 디스크 공간 절약)   황제낙엽 2023.05.09 4234
224 명령어 모음   황제낙엽 2023.05.06 3666