
apt만을 사용하여 보안 업그레이드를 나열하거나 설치하는 방법이 있습니까?
업그레이드 목록을 나열하면:
apt list --upgradable
나도 좀 볼 수 있을까?전혀 모른다업그레이드 관련 패키지 및 라이브러리보안 업그레이드.
또한 다른 옵션을 건너뛰고 이러한 옵션을 적용할 수 있는 옵션이 있습니까?비보안 업그레이드다음에 실행될 때 다시 메시지가 표시됩니까 apt upgrade
?
답변1
apt
귀하가 찾고 있는 정보는 (아직) 제공될 수 없습니다. aptitude
약간 혼란스럽기는 하지만 다음과 같이 할 수 있습니다.
aptitude search '~U ~ODebian' -F "%p %O"|awk '/Debian-Security/ {print $1}'
~U
공식 데비안 저장소( )에서 업그레이드 가능한 모든( ) 패키지를 검색하고 ~ODebian
해당 패키지 이름( %p
)과 "소스"( %O
)를 표시합니다. 후자는 실제로 저장소를 보여줍니다상표, Debian 9 보안 저장소의 경우 "Debian-Security:9/stable"입니다. 보안 저장소에 업그레이드 가능한 패키지 이름 목록이 표시됩니다.
보안 업그레이드만 설치하는 방법에는 여러 가지가 있지만 이상적인 방법은 없습니다.
aptitude
텍스트 인터페이스에서는 보안 업데이트 적용만 허용됩니다. "보안 업데이트" 제목(첫 번째 항목이어야 함)으로 스크롤하여 클릭하면 됩니다 +.위에서 추출한 패키지 목록을 제공하여
apt
업그레이드를 설치할 수 있습니다.aptitude search '~U ~ODebian' -F "%p %O" | awk '/Debian-Security/ {print $1}' | xargs apt-get install --only-upgrade
이로 인해 업그레이드 패키지의 "자동 설치" 표시가 지워지는 불행한 부작용이 발생합니다.
당신은 그것을 사용할 수 있습니다
unattended-upgrades
, 기본 작업은 보안 업그레이드만 적용하는 것입니다.unattended-upgrades -v
업그레이드가 자동으로 설치되지 않도록 하려면
unattended-upgrades
일일 크론 작업을 비활성화해야 합니다.
답변2
보안 업데이트를 표시하려면 다음을 사용할 수 있습니다.
apt-get --just-print upgrade | grep -i security | awk '{print $2}' | awk '!seen[$0]++'
패키지 1개에만 보안 업데이트를 적용하세요.
apt-get install --only-upgrade pckg_name
목록의 보안 업데이트만 적용:
list=$(apt-get --just-print upgrade | grep -i security | awk '{print $2}' | awk '!seen[$0]++')
apt-get install --only-upgrade $list