첫 번째 크론 작업을 설정하는 방법을 알 수 없습니다. 일주일에 한 번만 이 명령을 실행하고 싶습니다.
dpkg -l > ~/Dropbox/installed_packages
내 /etc/crontab
파일에는 다음 줄이 포함되어 있습니다
7 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
따라서 /etc/cron.weekly 디렉토리 어딘가에 명령을 넣어야 합니다. 그런데 어느 파일에 있습니까? /etc/cron.weekly
현재 다음 파일이 포함되어 있습니다:
apt-xapian-index man-db 0anacron cvs
답변1
다음 내용으로 파일을 만듭니다(예 list_packages.sh
: ).
#!/bin/bash
dpkg -l > ~/Dropbox/installed_packages
이 파일을 넣으면 /etc/cron.weekly/
일주일에 한 번씩 실행됩니다.
답변2
예를 들어 다음과 같이 스크립트로 저장합니다 installed_packages_list.sh
.
#!/bin/bash
dpkg -l > ~/Dropbox/installed_packages
실행 가능하게 만드세요.
chmod u+x installed_packages_list.sh
그런 다음 실행
crontab -e
그러면 텍스트 편집기에서 파일이 열립니다. 이것을 입력하고 저장하세요
@weekly /full/path/to/script
크론 작업을 예약한 사용자의 권한으로 일주일에 한 번 스크립트가 실행됩니다.
답변3
첫째, 이를 위해 슈퍼유저로 작업을 실행할 필요가 없습니다.
이 문제를 해결하는 가장 쉬운 방법은 일반 사용자의 crontab을 편집하는 것입니다.
crontab -e
편집기 환경 변수에 따라 사용자 crontab이 즐겨 사용하는 텍스트 편집기로 열립니다.
거기에 다음과 같은 것을 추가할 수 있습니다
# m h dom mon dow command
5 12 * * 1 bash $HOME/pkg.backup.sh
그런 다음 dpkg 명령을 사용하여 pkg.backup.sh 파일을 생성해야 합니다.
그런데 컴퓨터의 현재 패키지 상태(패키지 선택이라고도 함)를 쉽게 복원하려면 이 명령줄이 더 목표 지향적입니다.
dpkg --get-selections > foo
복원하려면 다음을 입력하면 됩니다.
dpkg --set-seclections < foo
실제로 dpkg -l은 정확한 패키지 버전 번호를 기록하려는 경우에도 유용합니다.