내 시스템에서는 다음과 같은 bash 별칭을 생각해 냈습니다.
별칭 updt='apt 업데이트 -y && apt 업그레이드 -y && apt 자동 제거 -y'
나는 시스템을 사용할 때마다 이것을 거의 실행합니다. 내 질문은 다음과 같습니다
컴퓨터를 종료할 때마다 시스템이 이 명령을 실행하도록 할 수 있습니까?
보너스: 데스크탑 환경의 오른쪽 상단에서 직접 종료 옵션을 사용할 때 시스템이 자동 업데이트되도록 Windows에서 했던 것처럼 그렇게 할 수 있습니까?
답변1
예. 설정입니다.
적절한이미백그라운드에서 적절한 업데이트와 적절한 업그레이드를 수행합니다...
/lib/systemd/system/apt-daily.timer // update
/lib/systemd/system/apt-daily-upgrade.timer // upgrade
...정말로 해야 할 일은 방해를 받지 않고 아래 표시된 대로 설정을 조정하는 것입니다.
구성 파일을 편집합니다
/etc/apt/apt.conf.d/50unattended-upgrades
.
예제 명령:$ sudo nano /etc/apt/apt.conf.d/50unattended-upgrades
1단계: 소스 편집. 기본 설정에는 -security 저장소만 포함됩니다. 모든 소스를 포함하도록 이를 업데이트할 수 있습니다. 모범 사례는 -updates 및 -security와 같은 안정적이고 신뢰할 수 있는 소스를 추가하는 것입니다(이 두 가지는 업그레이드의 대부분이 되어야 합니다!). 이는 제안된 소스 또는 기타 테스트/불안정한 소스에는 권장되지 않습니다.
// Automatically upgrade packages from these (origin:archive) pairs
//
// Note that in Ubuntu security updates may pull in new dependencies
// from non-security sources (e.g. chromium). By allowing the release
// pocket these get automatically pulled in.
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}";
"${distro_id}:${distro_codename}-security";
// Extended Security Maintenance; does not necessarily exist for
// every release and this system may not have it installed, but if
// available, the policy for updates is such that unattended-upgrades
// should also install from here by default.
"${distro_id}ESM:${distro_codename}";
"${distro_id}:${distro_codename}-updates";
// "${distro_id}:${distro_codename}-proposed";
// "${distro_id}:${distro_codename}-backports";
};
2단계: 자동 제거 활성화. 마지막 줄의 주석 처리를 제거하면 됩니다.
// Do automatic removal of unused packages after the upgrade
// (equivalent to apt-get autoremove)
//Unattended-Upgrade::Remove-Unused-Dependencies "true";
3단계: 종료 시 업그레이드 수행대신 배경에 있습니다. 마지막 줄의 주석 처리를 제거하면 됩니다.
// Install all unattended-upgrades when the machine is shutting down
// instead of doing it in the background while the machine is running
// This will (obviously) make shutdown slower
//Unattended-Upgrade::InstallOnShutdown "true";