cron.log의 용량이 증가하지 않도록 정기적으로 지우십시오.

소개



cron에서 실행한 명령(즉, crontab -e로 설정한 명령)을 rsyslog 서비스를 사용하여/var/log/cron.log에 정기적으로 쓰는 설정을 한 후, 이 로그 파일은 영원히 기록됩니다 가서 용량이 비대화하지 않을까 생각하고 정기적으로/var/log/cron.log의 파일을 클리어하는 처리도 cron으로 설정하기로 했다.

환경



우분투 16.04.5 LTS

시도한 것 1



단순히 로그 파일을 삭제하려고하고 cron이 다음 명령을 예약하게합니다. 확실히, 로그 파일은 삭제해 주었지만, rsyslog 서비스를 재기동하지 않으면, 로그 파일은 두번 다시 작성되지 않는 것이 판명된다. 게다가 루트 권한이 없으면 삭제할 수 없다. 따라서이 방법은 몰락합니다.
rm /var/log/cron.log

시도한 것 2



/var/log/cron.log 파일을 남긴 채로, 내용을 클리어해, 0KB의 빈 파일로 하는 것도, 역시, root 권한이 없으면 기입을 할 수 없는 것이 판명.
cp /dev/null /var/log/cron.log

cron에서 sudo를 지정한 명령을 실행하려면



visudo를 편집하는 것으로, cron에서 sudo를 지정한 커멘드를 실행할 수 있게 되는 것이 판명되었기 때문에, 해 본다.
sudo visudo

우분투에서 visudo를 보면 기본적으로 nano가 시작되기 때문에 vim으로 변경합니다.
sudo update-alternatives --config editor

참고 기사
htps : // 코 m / 코 아라 - l / ms / 35b999631b6 a b41fdc9f

자신의 환경에서는 vim.nox와 vim.tiny의 두 개의 vim이 들어 있지만, 아래 명령으로 vim.nox가 표시되었으므로 vim.nox를 선택합니다. (화면에서는 3을 선택)
ls -l /etc/alternatives/vi
/etc/alternatives/vi -> /usr/bin/vim.nox

vim.nox로 변경한 후 다시 확실히 변경된 것을 확인한다.
sudo update-alternatives --config editor

nano가 아니라 vim으로 표시됩니다.
sudo visudo

cron으로 sudo를 지정한 명령을 실행하려면(방법을 고찰편)



visudo를 편집하려면 visudo를 직접 편집하는 방법과 visudo를 만지지 않고 드롭 인을 만드는 방법과 두 가지 방법이 있습니다. 아래 명령은 하나의 파일과 하나의 디렉토리를 검색합니다. visudo를 편집하면/etc/sudoers 파일이 편집되지만/etc/sudoers.d라는 디렉토리 아래에 편집하고 싶은 행만 추가한 파일을 설정하면 sudoers 파일을 건드리지 않고 커스터마이즈를 할 수 있다고 한다. 가 드롭인의 구조다. 드롭인을 추천하는 사람도 있는 것 같지만, 자신은 visudo를 직접 편집하기로 했다.
ls /etc | grep sudo

참고 기사
htps //w w. 테라다 s. 네 t/아 r ゔぇ s/13222/

cron에서 sudo로 지정된 명령을 실행하려면 (visudo 편집 편집)



참고 기사
htps //w w. bぉ구치. 인후/1846
htps //w w. c 롯 sl. 네 t/bぉg/c 롱타 b/

그렇다면 기본적으로 Defaults : user requiretty가 나열되어 있으므로 Defaults : user ! requiretty를 작성하여 Defaults : user requiretty를 비활성화하십시오. requiretty가 디폴트로 기술되고 있지만, Debian계의 디스트리뷰션에서는, 디폴트로, 이 기재는 없다고 있다. 확실히, 자신의 환경에는 없었다.
sudo visudo

따라서이 한 줄만 추가합니다. cp 명령의 경로는 which cp에서 찾습니다.
user ALL=(root)   NOPASSWD: /bin/cp

참고 기사
https://orebibou.com/2017/06/sudo%E3%81%A7%E8%A6%9A%E3%81%88%E3%81%A6%E3%81%8A%E3%81%8F% E3%81%A8%E4%BE%BF%E5%88%A9%E3%81%AA%E8%A8%AD%E5%AE%9A%E3%83%BB%E4%BD%BF%E3% 81%84%E6%96%B9/#Defaults

crontab -e에서 테스트 적으로 sudo가있는이 한 줄을 추가합니다.
*/1 * * * * sudo cp /dev/null /var/log/cron.log

확실히, 파일 용량이 작아지고 있는 것을 확인할 수 있었습니다. (sudo 첨부의 커멘드가 실행된 것을 확인할 수 있었다)
ls -l /var/log/cron.log

C'est fini

좋은 웹페이지 즐겨찾기