SharedIT | 묻고 답하기(AMP)

윈도우 스케줄러 문제

안녕하세요

작년부터 등록하여 사용하던 윈도우 스케줄러가 몇일간 동작이 안되서 스케줄러를 수동으로 실행 하였더니
작업이 현재 실행 중입니다. 이후론 작업이 완료가 안됩니다. A라는 서버에서 파일을 복사하여 B서버에 올려 놓습니다
배치 파일을 실행하면 되는데, 스케줄러를 실행하면 전송이 안되네요
 
Tags : 태그가 없습니다.

4개의 답변이 있습니다.

양성환
  0 추천 | 5년 이상 전
권한문제일듯하네요.
C 드라이브나 드라이브 루트가 아닌 타드라이브에 폴더에서 해보세요
그저멍하니
  0 추천 | 5년 이상 전
저도 간혹 겪는 문제이긴한데.... 여지껏 해결은 하지 못하고 있습니다.

C#으로 개발한 프로그램을 스케쥴러로 돌리면 비슷한 증상이 발생합니다.

간혹 LOG가 남겨지지 않는 경우도 있습니다.

실행 권한은 admin인가요?
danis78
  0 추천 | 5년 이상 전 | 제이컴즈 | 010-2871-8756
제가 보기에 스케줄러는 정상 작동하나 스케줄러에 등록한 배치파일에서 작업이 안끝나는 이슈 건으로
말씀하시는 거 같네요 

일단, 제일 먼저 확인해봐야 할 게 스케줄러에 등록한 배치파일 명령어를 도스창에서 그대로 입력해서
실행해보세요 그래서 어떤식으로 진행되고 있는지 어디에서 막히는지부터 확인해보세요 

danis78 | 5년 이상 전

제 추측으로는 A 서버에 있는 파일을 B 로 옮길때에 A 에 있는 자료가 이미 열려있거나 다른 프로세스에서 사용중이라는 멘트가 뜨면서 계속 Delay 할 거 같은 예감이 듭니다.

leeconquest | 5년 이상 전

답변 감사합니다 배치 파일을 실행하면 파일 복사가 잘됩니다. 한 서버 안에서 a폴더에서 b폴더로는 스케줄이 되네요. 다른 서버간 네트워크 드라이브를 사용할때 문제가 발생하는거 같아요

danis78 | 5년 이상 전

네트워크 드라이브로 사용하시는군요 저는 네트워크 드라이브를 걸어놓고 스케줄을 한적이 없어서요 해당 네트워크 드라이브는 계정 정보가 등록되어 있어서 상시 연결된 상태인가요?

leeconquest | 5년 이상 전

기존 배치에는 파일만 복사하는것으로 진행했는데 배치 스크립트에 네트워크 드라이브 연결끊고 다시 연결까지 해서스케줄 배치 돌리니까 되네요, 아마도 접속인증이 제대로 안된거 같아요

wansoo | 5년 이상 전

batch file에 net use 명령을 사용해서 network drive를 끊고 다시 연결하는 명령을 넣어서 작동되게 하는게 더 안정적으로 작동할 수 있게 되죠. 간혹은 끊고 해도 오류가 발생하는 경우가 있긴 하던데... 그런 경우는 네트워크 드라이버 명을 다른 걸로 하니 잘 작동했었고...
wansoo
  0 추천 | 5년 이상 전
윈도 스케쥴러 등록해 둔게 한번씩 안되는 경우가 있더군요.
서버 형태로 로긴을 잘 하지 않는 컴퓨터가 그런것 같았고...
로긴을 해서 실행해 보면 잘 되고, 그리고 한 동안은 또 잘 작동하다가 또 어느 순간 부터 안 되어 다시 로긴해서 실행해 주면 잘 되고...
잘 되는 컴퓨터는 아무 문제 없이 잘 작동되는데, 어떤 특정 컴퓨터만 그런것도 같아 보이고요.

배치파일을 직접 실행하면 잘 되는데, 스케줄러에서 실행 안될 경우라면, 시작 경로 문제가 있을 가능성이 있을 것 같네요.
배일 파일 작성할 때 명령을 실행하기 전에 d:, e: 등의 드라이브 이동 명령과 cd 명령으로 해당 시작하길 원하는 작업 디렉토리로 먼저 이동될 수 있게 해 둔 후에 실행 명령을 적는게 좋을 것 같고요.
그리고, 실행 파일명만 적는 것 보다는, 실행 파일의 경로 전체, 즉... 절대 경로로 실행 파일을 지정해서 실행해 주는 것이 좋을 경우도 있고요.

배치 파일에 echo 명령 등을 pause 명령 등을 이용해서 명령 하나 하나 실행될때마다 작업 경로, 환경 변수 등을 표시되게 해서 Test 해 보면 문제 원인을 찾는데 도움을 얻을 수 있겠고요~

leeconquest | 5년 이상 전

네트워크 드라이브를 연결해서 파일 복사를 하면 안됩니다 배치 파일을 실행하면 문제는 없구요