나는 모든 관리 작업에 도움이 되는 일기장으로 15분마다 Mac의 스크린샷을 찍는 작은 crontab 코드를 가지고 있습니다. 몇 년 동안 잘 작동했지만 최근에는 바탕 화면과 상단의 상태 표시줄만 사용하기 시작했으며 화면에는 응용 프로그램도 없고 하단에 앱 도크도 없으며 바탕 화면에 앱 아이콘이나 파일도 표시되지 않았습니다.
터미널에서 수동으로 실행하면 코드가 제대로 작동하지만 crontab에서는 작동합니다.
crontab을 다시 설치하려고 시도했지만 문제가 해결되지 않았습니다. 이제 나는 이 문제를 해결할 수 있는 방법이 없습니다.
crontab이 화면 캡처와 함께 작동하여 화면에도 응용 프로그램을 표시하도록 하려면 어떻게 해야 합니까?
저는 Mac Catalina 버전 10.15.1을 실행하고 있습니다.
*/15 * * * * /usr/sbin/screencapture -Cxd -tjpg ~/Documents/AutoScreenShot/screen-
date +"\%Y\%m\%d-\%H\%M"
.jpg
답변1
어제 오후에도 같은 문제가 있었고 몇 시간 동안 노력한 끝에 문제를 해결했습니다. 문제는 cron에 화면 액세스 권한이 없다는 것입니다.
해결책은 다음과 같습니다
- SIP를 닫습니다.
Mac을 다시 시작하고 cmd+r을 눌러 복구 모드로 들어간 다음 터미널 입력을 열고 csrutil disable
다시 시작하세요.
- TCC에 쓰기 권한 부여
sudo chmod 664 /Library/Application\ Support/com.apple.TCC
- cron 및 screencapture에 screencapure 권한 부여
sudo sqlite3 "/Library/Application Support/com.apple.TCC/TCC.db" 'insert into access values ("kTCCServiceScreenCapture", "/usr/sbin/cron", 1, 1, 1, "", "", "", "UNUSED", "", 0,"")'
sudo sqlite3 "/Library/Application Support/com.apple.TCC/TCC.db" 'insert into access values ("kTCCServiceScreenCapture", "/usr/sbin/screencapture", 1, 1, 1, "", "", "", "UNUSED", "", 0,"")'
- SIP를 다시 활성화
Mac을 다시 시작하고 cmd+r을 눌러 복구 모드로 들어간 다음 터미널 입력을 열고 csrutil enable
다시 시작하세요.