Raspberry Pi를 자동으로 업데이트 / 업그레이드하도록 설정하는 방법


34

현재 Raspberry Pi에 대한 최신 정보를 얻으려면 sudo apt-get update및 을 입력해야합니다 sudo apt-get upgrade. 자동으로 설정하는 방법이 있습니까? Raspbian Jessie를 실행 중입니다.

답변:


47

수동 크론 대신을 설치할 수 있으며 unattended-upgrades, 최신 커널을 설치하는 데 유용합니다. 주로 보안을 위해 설계되었습니다.

https://wiki.debian.org/UnattendedUpgrades

apt-get install unattended-upgrades

조정 / 구성 할 수있는 비트가 있지만 기본값은 괜찮습니다.


5
나에게 기본값은 좋지 않았다. 그것은 아무것도하지 않았다 다음 /var/log/unattended-upgrades/unattended-upgrades.log파일을보고 Allowed origins are: []그래서 기본적으로는 어떠한 업데이트를 당겨되지 않은 업데이트가 후. /etc/apt/apt.conf.d/50unattended-upgrades포함하는 "origin=Raspbian,codename=${distro_codename},label=Raspbian";시작 업데이트를 올 수 있습니다.
Rabarberski

내 뼈 재고 (2017 년 9 월 기준)가 50unattended-upgrades나열되어 "origin=Debian,codename=${distro_codename},label=Debian-Security";있으며 관련 패키지를 올바르게 찾는 것 같습니다. 물론 많은 것을 무시합니다. 화이트리스트 나 블랙리스트를 설정하지 않았습니다.
Jon V

3
기본값 50unattended-upgrades은 실제로 바보이며 이것이 Raspian에서 작동하려면 변경해야합니다. 없습니다 Raspian-Security. 보안 업데이트는 표시되어 있지 않습니다. 모두 추가하는 것이 중요 "origin=Raspbian,codename=${distro_codename},label=Raspbian";하고 "origin=Raspberry Pi Foundation,codename=${distro_codename},label=Raspberry Pi Foundation";/etc/apt/apt.conf.d/50unattended-upgrades
user643011

23

터미널에서 다음을 입력하십시오.

sudo su

루트 수준 프롬프트에 액세스합니다. 그런 다음 다음을 실행하십시오.

crontab -e

주어진 시간에 자동으로 실행되는 작업 테이블 인 crontab 편집을 시작합니다. 원하는 텍스트 편집기에서 열립니다. 다음 줄을 포함하도록 수정하십시오.

0 7 * * 1 apt update && apt upgrade -y

매주 월요일 오전 7시에 앱을 자동으로 업데이트하고 업그레이드합니다. 원하는대로 조정하는 방법을 보려면 crontab을 읽어보십시오.


2
명령 &&이 관련 되어 있으므로 'update'가 실패 할 경우 '업그레이드'를 수행 할 이유가 없으므로 동일한 행에 명령을 배치하는 것이 좋습니다 .
tedder42

crontab을에서 0일요일 수단하지만 코드에서 당신은 넣어 가지고 1명령은 월요일이 아닌 일요일 실행 될 수 있도록
rav_kr을

3
dist-upgrade보다 낫다 upgrade, 당신은 단지 의존성을 사용하여 결국 종료됩니다 upgrade. 또한 대화 상자 확인이 필요한 업데이트를 피할 수 없습니다. @ tedder42는 데비안이 선호하는 방법을 지적했다 unattended-upgrades.
ryanpcmcquen

&&를 추가 한 후 두 번째 sudo를 놓쳤습니다. 어쨌든 루트 crontab에 있습니다.
user643011

1
거기에 아무것도 없어야합니다 sudo. 을 root사용하여 계정으로 전환했습니다 su. 수퍼 유저의 crontab은 수퍼 유저 권한으로 실행됩니다.
goldilocks

8

cron-apt를 설치하고 구성 할 수 있습니다. 다음을 수행하여 설치하십시오.

apt-get install cron-apt

기본 구성 파일은 / etc / cron-apt / config입니다.

구성에 추가하는 것은 다음과 같습니다.

MAILON="always"

오류가 발생한 경우뿐만 아니라 실행될 때마다 이메일을 보냅니다.

기본 설정은 업데이트를 자동으로 설치하지 않지만 (이를 수행하지 않는 몇 가지 이유가 있음) 업데이트를 구성 할 수 있습니다. 이 프로그램이 간단한 cron 솔루션에 비해 한 가지 장점은 설치할 패키지를 제어 할 수 있다는 것입니다 (새 패키지 만 다운로드, 보안 업데이트 설치 또는 모든 업데이트 설치).

실행 시간을 설정하려면 /etc/cron.d/cron-apt 파일을 편집하십시오.

자세한 정보 및 구성 옵션은 여기에서 찾을 수 있습니다.

패키지에는 매우 좋은 문서가 포함되어 있지만 압축되어 있습니다. 파일을 추출하려면

  1. mkdir cron-apt_documentation에서 작업 할 디렉토리를 만듭니다.
  2. 새 디렉토리로 변경-cd cron-apt_documentation
  3. 압축 파일-cp /usr/share/doc/cron-apt/README.gz를 복사하십시오. (마지막 점 참고)
  4. 파일 압축을 풉니 다-gunzip README.gz
  5. 파일 읽기-cat README | 적게

또는zcat /usr/share/doc/cron-apt/README.gz | less

5

기본 구성에서는 unattended-upgradesRaspbian Buster에서 손상되었습니다. 커널 및 기타 소프트웨어에 대한 중요한 업데이트는 설치하지 않습니다. 옵션은 다음과 같습니다.

권장 옵션 :

sudo apt install unattended-upgrades

echo 'Unattended-Upgrade::Origins-Pattern {
//      Fix missing Rasbian sources.
        "origin=Debian,codename=${distro_codename},label=Debian";
        "origin=Debian,codename=${distro_codename},label=Debian-Security";
        "origin=Raspbian,codename=${distro_codename},label=Raspbian";
        "origin=Raspberry Pi Foundation,codename=${distro_codename},label=Raspberry Pi Foundation";
};' | sudo tee /etc/apt/apt.conf.d/51unattended-upgrades-raspbian

보안 업데이트 속도를 높이려면 (패키지가 rasbian에 대해 승인되지 않았으므로 안정성은 떨어짐) debian-security 패키지를 apt에 추가 할 수 있습니다.

echo 'deb http://deb.debian.org/debian-security/ buster/updates main contrib non-free' | sudo tee /etc/apt/sources.list.d/debian-security.list

데비안 저장소를 위해 새로운 apt 키설치 해야 할 것입니다 .

다른 옵션:

  • cron-apt를 사용하여 해결하십시오. sudo apt install cron-apt

  • 다른 방법으로 해결할 수 있습니다.

무인 업데이트를 사용하고 패키지를 수정하는 것이 좋습니다. 목적에 가장 적합하기 때문입니다. Cron-apt는 비슷한 용도로 설계되었으므로 두 번째로 좋은 옵션입니다. 커널 업데이트 후 시스템을 자동으로 재부팅 할 수 있는지 잘 모르겠습니다. 무인 업그레이드에는 일반적으로 해당 옵션이 있지만 위의 수정으로 작동하는지 확실하지 않습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.