Ubuntu 24.04, 22.04 또는 20.04에서 무인 업그레이드를 구성하는 방법

Ubuntu는 가장 널리 사용되는 Linux 기반 운영 체제 중 하나이며 서버, 데스크탑 및 임베디드 장치에 널리 사용됩니다. 이는 사용자가 자신의 필요에 맞게 설치하고 구성할 수 있는 광범위한 소프트웨어 패키지 및 도구 라이브러리를 제공합니다. 그러나 많은 패키지와 업데이트로 인해 시스템을 최신 상태로 안전하게 유지하는 것이 어려울 수 있습니다. 이것이 바로 무인 업그레이드 패키지가 필요한 곳입니다. 이 기사에서는 무인 업그레이드 패키지가 무엇인지, 그 이점과 기능을 설명하고 명령줄 터미널.

무인 업그레이드 패키지란 무엇입니까?

무인 업그레이드는 Ubuntu 시스템에 보안 및 기타 업데이트 설치를 자동화하는 패키지입니다. 백그라운드에서 자동으로 실행되며 정기적으로 새 업데이트를 확인하여 사용자 개입 없이 자동으로 다운로드 및 설치합니다. 무인 업그레이드 패키지는 최신 업데이트 및 패치로 시스템을 최신 상태로 유지하여 시스템의 보안과 안정성을 보장하는 필수 도구입니다.

무인 업그레이드 설정의 이점 및 기능:

Ubuntu 무인 업그레이드 패키지의 몇 가지 이점과 기능은 다음과 같습니다.

  • 자동 업데이트: 무인 업그레이드 패키지는 업데이트 다운로드 및 설치를 자동화하여 사용자의 시간과 노력을 절약합니다.
  • 향상된 보안: 이 패키지는 최신 보안 업데이트 및 패치로 시스템을 항상 최신 상태로 유지하여 맬웨어 공격 및 시스템 취약점의 위험을 줄입니다.
  • 향상된 안정성: 무인 업그레이드 패키지는 시스템을 최신 상태로 유지하여 시스템의 안정성과 신뢰성을 보장합니다.
  • 사용자 정의 가능한 설정: 사용자는 자동으로 설치할 업데이트, 무시할 업데이트, 설치 시기 등 필요에 따라 패키지 설정을 사용자 정의할 수 있습니다.
  • 알림 시스템: 패키지는 설치된 업데이트에 대한 알림을 사용자에게 보내 시스템 업데이트에 대한 투명성과 제어 기능을 제공합니다.

우분투 업데이트

무인 업그레이드 패키지를 설치하고 설정하기 전에 Ubuntu 시스템을 업데이트하여 충돌을 방지해야 합니다. Ubuntu 시스템을 업데이트하려면 터미널을 열고 다음 명령을 입력하십시오.

sudo apt update && sudo apt upgrade

이 명령은 설치된 모든 패키지와 해당 종속성을 최신 버전으로 업데이트합니다. 시스템에 사용 가능한 업데이트 수에 따라 다소 시간이 걸릴 수 있습니다.

무인 업그레이드 패키지 설치

무인 업그레이드 패키지를 설치하려면 터미널을 열고 다음 명령을 입력하십시오.

sudo apt install unattended-upgrades

이 명령은 Ubuntu 시스템에 패키지와 모든 종속성을 설치합니다. 패키지는 기본적으로 설치되어야 합니다. 하지만 제거한 경우 위의 명령을 사용하여 다시 설치하십시오.

또한 시스템을 자동으로 다시 시작해야 하는 업그레이드를 적용한 후 Ubuntu 시스템을 다시 시작하려면 apt-config-auto-update 패키지를 설치해야 합니다. 설치하려면 다음 명령을 사용하십시오.

sudo apt install apt-config-auto-update

또한 노트북 사용자는 무인 배터리 옵션을 사용하려면 powermgmt-base 패키지를 설치하는 것이 좋습니다. 이 패키지를 설치하려면 터미널을 열고 다음 명령을 입력하십시오.

sudo apt install powermgmt-base

패키지가 설치되면 필요에 맞게 구성해야 합니다. 예를 들어 자동으로 설치할 업데이트, 무시할 업데이트, 설치 시기 등을 사용자 지정할 수 있습니다. 무인 업그레이드 패키지를 실행하려면 루트 권한이 필요합니다. 따라서 이 가이드에 언급된 모든 명령은 sudo 명령을 사용하여 실행해야 합니다.

무인 업그레이드 패키지가 올바르게 작동하는지 확인하는 것도 권장됩니다. 이렇게 하려면 터미널을 열고 다음 명령을 입력하십시오.

sudo unattended-upgrades --dry-run --debug

변경하거나 다시 시작한 후 상태를 확인해야 할 수 있으므로 무인 업그레이드에 대한 systemctl 명령을 숙지하는 것이 중요합니다. 무인 업그레이드 상태를 확인하려면 다음 명령을 사용하십시오.

systemctl status unattended-upgrades

다음 systemctl 명령을 사용하면 무인 업그레이드 서비스를 시작, 중지, 부팅 시 활성화, 부팅 시 비활성화 또는 다시 시작할 수 있습니다.

무인 서비스를 시작합니다.

sudo systemctl start unattended-upgrades

무인 서비스를 중지합니다.

sudo systemctl stop unattended-upgrades

부팅 시 무인 서비스를 활성화합니다.

sudo systemctl enable unattended-upgrades

부팅 시 무인 서비스를 비활성화합니다.

sudo systemctl disable unattended-upgrades

무인 서비스를 다시 시작합니다.

sudo systemctl restart unattended-upgrades

무인 업그레이드 구성

이 섹션에서는 터미널 명령을 사용하여 구성 파일에서 무인 업그레이드 패키지 설정을 구성하는 방법을 다룹니다. 이러한 설정은 선택 사항이며 요구 사항에 따라 개인화할 수 있다는 점에 유의하는 것이 중요합니다. 각 설정의 목적과 기능을 이해하는 데 도움이 되도록 자세히 설명합니다. 이를 통해 Ubuntu 시스템에서 무인 업그레이드 패키지를 구성할 때 정보에 입각한 결정을 내릴 수 있습니다.

구성 파일로 이동하기 전에 먼저 설명과 함께 무인 업그레이드 패키지에 대한 모든 CLI 옵션 요약이 있습니다.

옵션설명
-h, –도움말도움말 메시지를 표시하고 종료합니다.
-d, –디버그디버그 메시지를 활성화합니다.
–적합-디버그apt/libapt가 자세한 디버그 메시지를 인쇄하도록 합니다.
-v, –상세정보 메시지를 활성화합니다.
–드라이런업그레이드 프로세스 및 다운로드를 시뮬레이션하지만 설치하지는 않습니다.
–다운로드 전용업그레이드만 다운로드합니다. 설치하려고 시도하지 마십시오
–최소 업그레이드 단계최소한의 단계로 패키지를 업그레이드하고 SIGTERM으로 중단을 허용합니다. 이것이 기본 동작입니다.
–최소 업그레이드 단계 없음더 작은 세트 대신 모든 패키지를 함께 업그레이드합니다.

이러한 옵션은 자동 업그레이드 프로세스의 동작을 제어하기 위해 터미널에서 unattended-upgrade 명령을 실행할 때 사용할 수 있습니다. 예를 들어, –dry-run 옵션은 실제로 시스템을 변경하지 않고 업그레이드 프로세스를 테스트하는 데 도움이 되는 반면, –download-only 옵션은 업그레이드를 설치하지 않고 다운로드하는 데 사용할 수 있습니다.

–minimal-upgrade-steps 옵션은 무인 업그레이드의 기본 동작인 반면, –no-minimal-upgrade-steps 옵션은 더 작은 세트가 아닌 모든 패키지를 함께 업그레이드합니다. 동작이 기본 설정 및 요구 사항과 일치하는지 확인하려면 무인 업그레이드를 구성할 때 이러한 옵션을 이해하는 것이 중요합니다.

구성 파일 편집

구성 파일을 편집하려면 nano와 같은 루트 권한이 있는 텍스트 편집기를 사용하는 것이 좋습니다. nano를 사용하여 파일을 열려면 다음 명령을 실행하십시오.

sudo nano /etc/apt/apt.conf.d/50unattended-upgrades

그러면 nano 편집기에서 구성 파일이 열립니다. 여기에서 위에 나열된 다양한 옵션을 수정할 수 있습니다. 옵션을 활성화하려면 파일에서 모든 주석("//" 또는 "#"으로 시작하는 줄)을 제거해야 합니다.

파일 편집이 끝나면 “Ctrl+X”, “Y”, “Enter”를 눌러 저장하고 종료하세요.

허용된 출처

이 옵션은 업데이트를 설치해야 하는 소스를 지정합니다. 기본적으로 보안 및 업데이트 리포지토리만 허용됩니다. 아래 예와 같이 이 옵션의 주석 처리를 해제하고 원하는 저장소를 추가하여 목록에 추가 저장소를 추가할 수 있습니다.

Unattended-Upgrade::Allowed-Origins {
      "${distro_id}:${distro_codename}";
      "${distro_id}:${distro_codename}-security";
      "${distro_id}:${distro_codename}-updates";
      "${distro_id}:${distro_codename}-proposed";
      "${distro_id}:${distro_codename}-backports";
};

패키지 블랙리스트

이 옵션을 사용하면 자동 업데이트에서 제외해야 하는 패키지를 지정할 수 있습니다. 패키지를 제외하려면 이 옵션의 주석 처리를 해제하고 아래 예와 같이 원하는 패키지를 추가하세요.

Unattended-Upgrade::Package-Blacklist {
      "my-package";
      "my-other-package";
};

AutoFix중단Dpkg

이 옵션은 시스템이 중단된 "dpkg" 설치를 자동으로 수정해야 하는지 여부를 결정합니다. 자동 수정을 활성화하려면 아래 예와 같이 값을 "true"로 설정합니다.

Unattended-Upgrade::AutoFixInterruptedDpkg "true";

DevRelease "자동"

이 옵션은 개발 릴리스로 자동 업그레이드할지 여부를 지정합니다. 기본적으로 이 옵션은 비활성화되어 있습니다. 개발 릴리스에 대한 자동 업그레이드를 활성화하려면 아래 예와 같이 값을 "auto"로 설정합니다.

Unattended-Upgrade::DevRelease "auto";

MinimalSteps "참"

이 옵션은 업그레이드 중에 최소 단계를 수행할지 여부를 지정합니다. 기본적으로 이 옵션은 활성화되어 있습니다. 최소 단계를 비활성화하려면 아래 예와 같이 값을 "false"로 설정합니다.

Unattended-Upgrade::MinimalSteps "false";

InstallOnShutdown "거짓"

이 옵션은 종료 시 업그레이드를 설치할지 여부를 지정합니다. 기본적으로 이 옵션은 비활성화되어 있습니다. 종료 시 설치를 활성화하려면 아래 예와 같이 값을 "true"로 설정합니다.

Unattended-Upgrade::InstallOnShutdown "true";

우편

이 옵션은 알림을 보내야 하는 이메일 주소를 지정합니다. 기본적으로 알림은 전송되지 않습니다. 이메일 주소를 지정하려면 아래 예와 같이 문자열 값으로 추가하세요.

Unattended-Upgrade::Mail "example@mail.com";

MailReport "변경 시"

이 옵션은 이메일 알림을 보낼 시기를 지정합니다. 기본적으로 알림은 변경 사항이 있는 경우에만 전송됩니다. 매번 알림을 보내려면 아래 예와 같이 값을 "on-start"로 설정합니다.

Unattended-Upgrade::MailReport "on-start";

사용되지 않은 커널 패키지 제거

이 옵션은 업그레이드 후 사용하지 않는 커널 패키지를 제거할지 여부를 지정합니다. 기본적으로 이 옵션은 활성화되어 있습니다. 사용하지 않는 커널 패키지 제거를 비활성화하려면 아래 예와 같이 값을 "false"로 설정합니다.

Unattended-Upgrade::Remove-Unused-Kernel-Packages "false";

제거-새-사용되지 않은 종속성

이 설정은 패키지 업그레이드 후 시스템에 더 이상 필요하지 않은 새로운 종속성을 제거하는 것을 제어합니다. 이 설정은 기본적으로 활성화되어 있으며 더 이상 필요하지 않은 새로운 종속성은 시스템에서 자동으로 제거됩니다. 이 설정을 활성화하려면 다음 명령을 사용하십시오.

Unattended-Upgrade::Remove-New-Unused-Dependencies "true";

이러한 새로운 종속성을 유지하려면 값을 "false"로 변경하여 이 설정을 비활성화할 수 있습니다. 그러나 이로 인해 사용하지 않는 종속성이 시스템에 누적되어 귀중한 디스크 공간을 차지할 수 있다는 점에 유의하십시오.

사용되지 않은 종속성 제거

이 옵션은 업그레이드 후 사용되지 않는 종속성을 제거할지 여부를 지정합니다. 기본적으로 이 옵션은 비활성화되어 있습니다. 사용되지 않는 종속성을 제거하려면 아래 예와 같이 값을 "true"로 설정하십시오.

Unattended-Upgrade::Remove-Unused-Dependencies "true";

자동 재부팅

이 옵션은 업그레이드 후 시스템을 자동으로 재부팅할지 여부를 지정합니다. 기본적으로 이 옵션은 비활성화되어 있습니다. 자동 재부팅을 활성화하려면 아래 예와 같이 값을 "true"로 설정합니다.

Unattended-Upgrade::Automatic-Reboot "true";

사용자와 함께 자동 재부팅

이 옵션은 사용자가 자동으로 로그인될 때 시스템을 재부팅할지 여부를 지정합니다. 기본적으로 이 옵션은 활성화되어 있습니다. 사용자가 로그인할 때 자동 재부팅을 비활성화하려면 아래 예와 같이 값을 "false"로 설정합니다.

Unattended-Upgrade::Automatic-Reboot-WithUsers "false";

자동 재부팅 시간

이 옵션은 업그레이드 후 시스템이 자동으로 재부팅되어야 하는 시간을 지정합니다. 기본적으로 이 옵션은 “02:00”으로 설정되어 있습니다. 재부팅 시간을 변경하려면 아래 예와 같이 값을 수정합니다.

Unattended-Upgrade::Automatic-Reboot-Time "03:00";

획득::http::Dl-Limit

이 옵션은 패키지 다운로드의 최대 다운로드 속도를 초당 킬로바이트 단위로 지정합니다. 기본적으로 이 옵션은 비활성화되어 있습니다. 다운로드 속도 제한을 활성화하려면 아래 예와 같이 값을 원하는 속도로 설정하십시오.

Acquire::http::Dl-Limit "100";

Syslog 활성화

이 옵션은 업그레이드 이벤트를 시스템 로그에 기록할지 여부를 지정합니다. 기본적으로 이 옵션은 활성화되어 있습니다. 로깅을 비활성화하려면 아래 예와 같이 값을 "false"로 설정합니다.

Unattended-Upgrade::SyslogEnable "false";

Syslog 기능

이 옵션은 업그레이드 이벤트가 기록되어야 하는 시설을 지정합니다. 기본적으로 이벤트는 "데몬" 기능에 기록됩니다. 이벤트를 다른 시설에 기록하려면 아래 예에 표시된 대로 값을 수정하십시오.

Unattended-Upgrade::SyslogFacility "local7";

OnlyOnACPower

이 옵션은 시스템이 AC 전원에 연결된 경우에만 업그레이드를 수행할지 여부를 지정합니다. 기본적으로 이 옵션은 비활성화되어 있습니다. AC 전원에서만 업그레이드를 활성화하려면 아래 예와 같이 값을 "true"로 설정합니다.

Unattended-Upgrade::SyslogFacility "local7";

계량 연결 시 업데이트 건너뛰기

이 옵션은 시스템이 데이터 통신 연결에 연결된 경우 업데이트를 건너뛸지 여부를 지정합니다. 기본적으로 이 옵션은 활성화되어 있습니다. 데이터 통신 연결에 대한 업데이트를 다운로드하려면 아래 예와 같이 값을 "false"로 설정하십시오.

Unattended-Upgrade::Skip-Updates-On-Metered-Connections "false";

말 수가 많은

이 옵션은 자세한 업그레이드 정보를 출력할지 여부를 지정합니다. 기본적으로 이 옵션은 비활성화되어 있습니다. 자세한 출력을 활성화하려면 아래 예와 같이 값을 "true"로 설정합니다.

Unattended-Upgrade::Verbose "true";

디버그

이 옵션은 업그레이드 중에 디버그 정보를 출력할지 여부를 지정합니다. 기본적으로 이 옵션은 비활성화되어 있습니다. 디버그 출력을 활성화하려면 아래 예와 같이 값을 "true"로 설정합니다.

Unattended-Upgrade::Debug "true";

다운그레이드 허용

이 옵션은 업그레이드 중에 패키지 다운그레이드를 허용할지 여부를 지정합니다. 기본적으로 이 옵션은 비활성화되어 있습니다. 다운그레이드를 허용하려면 아래 예와 같이 값을 "true"로 설정합니다.

Unattended-Upgrade::Allow-downgrade "true";

다운그레이드를 허용하면 위험할 수 있으며 시스템이 불안정해지거나 보안이 취약해질 수 있다는 점을 기억하세요. 필요한 경우에만 이 옵션을 활성화하고 관련된 위험을 신중하게 고려하는 것이 좋습니다.

변경 사항 테스트 및 적용

구성 파일을 변경한 후에는 다음 명령을 실행하여 변경 사항이 적용되었는지 확인하는 것이 중요합니다.

sudo unattended-upgrades --dry-run --debug

이 명령은 업그레이드 실행을 시뮬레이션하고 구성 파일 변경으로 인해 발생할 수 있는 오류나 경고를 표시합니다. 모든 것이 양호해 보인다면 아래 명령을 실행하여 실제 업그레이드를 수행할 수 있습니다.

sudo unattended-upgrades

이 명령은 구성 설정에 따라 사용 가능한 업그레이드를 자동으로 확인하고 설치합니다.

위의 단계를 통해 Ubuntu 시스템에서 무인 업그레이드 패키지를 구성하고 수정하는 방법을 더 잘 이해해야 합니다.

크론 작업을 통한 자동 업그레이드 예약

Ubuntu 시스템에서 자동 무인 업그레이드를 예약하려면 cron 작업을 사용할 수 있습니다. 크론 작업은 지정된 시간이나 간격으로 명령이나 스크립트를 자동으로 실행할 수 있는 Linux의 시간 기반 작업 스케줄러입니다.

무인 업그레이드를 위한 크론 작업을 생성하려면 다음 단계를 따르세요.

다음 명령을 실행하여 crontab 구성 파일을 엽니다.

sudo crontab -e

그러면 nano 편집기에서 crontab 파일이 열립니다. 파일 맨 아래에 다음 줄을 추가합니다.

0 0 * * * /usr/bin/unattended-upgrade -d

이 줄은 무인 업그레이드 명령이 매일 자정(0 0 * * *)에 실행되어야 함을 지정합니다. "Ctrl+X", "Y", "Enter"를 차례로 눌러 파일을 저장하고 종료합니다.

위 cron 작업은 매일 자정에 무인 업그레이드 명령을 실행하고 사용 가능한 업그레이드를 확인한 후 구성 설정에 따라 자동으로 설치합니다.

업그레이드하려면 재부팅이 필요하거나 응용 프로그램이 다시 시작될 수 있으므로 시스템을 사용하지 않을 때만 자동 업그레이드를 예약해야 합니다.

무인 업그레이드 로그 확인

무인 업그레이드 패키지는 기본적으로 모든 업그레이드 활동을 syslog 기능에 기록합니다. 로그는 /var/log/syslog 파일 및 기타 시스템 로그에 있습니다.

무인 업그레이드 로그를 확인하려면 다음 명령을 사용할 수 있습니다.

sudo grep unattended-upgrades /var/log/syslog

이 명령은 syslog 파일에서 "unattended-upgrades" 키워드가 포함된 항목을 검색하여 화면에 표시합니다. 다음 명령을 사용하여 syslog 파일의 마지막 50개 항목을 표시할 수도 있습니다.

sudo tail -n 50 /var/log/syslog | grep unattended-upgrades

이 명령은 "unattended-upgrades" 키워드가 포함된 syslog 파일의 마지막 50개 항목을 표시합니다.

위 명령 외에도 다양한 grep 옵션을 사용하여 특정 기준에 따라 로그를 필터링할 수 있습니다. 예를 들어 날짜 및 시간별로 로그를 필터링하려면 다음 명령을 사용할 수 있습니다.

sudo grep "unattended-upgrades.*YYYY-MM-DD" /var/log/syslog

"YYYY-MM-DD"를 연월일 형식의 원하는 날짜로 바꾸세요. 이 명령은 "unattended-upgrades" 키워드를 포함하고 지정된 날짜와 일치하는 모든 로그 항목을 표시합니다.

다음 명령을 사용하여 패키지 이름별로 로그를 필터링할 수도 있습니다.

sudo grep "unattended-upgrades.*<package_name>" /var/log/syslog

바꾸다 " ” 검색하려는 패키지 이름을 입력하세요. 이 명령은 "unattended-upgrades" 키워드를 포함하고 지정된 패키지 이름과 일치하는 모든 로그 항목을 표시합니다.

위 명령을 사용하면 Ubuntu 시스템에서 무인 업그레이드 로그를 쉽게 확인 및 필터링하고 업그레이드 프로세스 중에 발생할 수 있는 모든 문제를 해결할 수 있습니다.

결론

결론적으로 Ubuntu 시스템에서 무인 업그레이드를 설정하고 구성하면 보안과 안정성이 크게 향상될 수 있습니다. 보안 업데이트 및 패치를 자동으로 설치하면 업데이트를 수동으로 확인하고 설치하지 않고도 시스템이 항상 최신 보안 수정 사항으로 최신 상태를 유지할 수 있습니다.

Joshua James

"How to Configure Unattended Upgrades on Ubuntu 24.04, 22.04 or 20.04"에 대한 3 생각

  1. 안녕하세요, 이 줄에 오타가 있습니다. enable에서 L이 빠졌습니다. 가이드를 주셔서 감사합니다!

    부팅 시 무인 서비스를 활성화합니다.
    sudo systemctl enabe 무인 업그레이드

    응답

코멘트를 남겨주세요