Debian을 업데이트/업그레이드하고 상호 작용을 건너뜁니다.

Debian을 업데이트/업그레이드하고 상호 작용을 건너뜁니다.

일부 데비안 컴퓨터를 업데이트하고 업그레이드하기 위해 작은 스크립트를 실행하고 있지만 터미널에 표시되는 일부 "뉴스"로 인해 몇 주 동안 계속 중지됩니다. 수동으로 업그레이드할 때 일부 소프트웨어가 "전체 화면"을 표시하는 것을 볼 수 있습니다(아래 스크린샷 참조). "q"를 강제로 누르세요. 소프트웨어를 변경하고 싶지 않기 때문에 업그레이드할 때 각 대화형 화면을 건너뛸 수 있는 솔루션을 찾고 싶습니다.

일반적으로 나는 괜찮습니다:

sudo apt-get update -y 
sudo apt-get upgrade -y

또한 업그레이드 프로세스가 시간 초과 없이 중단된 것을 확인한 후 이 솔루션을 사용해 보았습니다.우편 엽서:

sudo DEBIAN_FRONTEND=noninteractive apt-get -y upgrade

하지만 안타깝게도 결과는 마찬가지다. 중단 없이 시스템을 업그레이드할 수 있는 솔루션이 있습니까?

xorg-server, 종료하려면 q를 누르세요.

고쳐 쓰다:

먼저 방금 실행했습니다.

DEBIAN_FRONTEND=noninteractive

두 번째로 /etc/dpkg/dpkg.cfg 파일을 다음과 같이 편집합니다.

# dpkg configuration file
#
# This file can contain default options for dpkg.  All command-line
# options are allowed.  Values can be specified by putting them after
# the option, separated by whitespace and/or an `=' sign.
#

# Do not enable debsig-verify by default; since the distribution is not using
# embedded signatures, debsig-verify would reject all packages.
no-debsig

# Log status changes and actions to a file.
log /var/log/dpkg.log

force-confold
force-confdef

마지막으로 나는 다음을 실행했습니다.

sudo apt-get upgrade -yq

이것으로 "종료하려면 q를 누르세요"에 대한 팁을 마칩니다.엄청난!

나는 또한 실행된 명령을 결합하려고 시도하고 있다고 생각합니다.

DEBIAN_FRONTEND=noninteractive
sudo apt-get -o Dpkg::Options::="--force-confnew --force-confdef" --force-yes -yq upgrade

불행히도 또 다른 유사한 문제가 발생했습니다.

여기에 이미지 설명을 입력하세요.

편집도 해보고/etc/apt/listchanges.conf불행히도 성공하지 못했습니다.

[apt]
frontend=none
email_address=root
confirm=0
save_seen=/var/lib/apt/listchanges.db
which=news

해결책:

나는 스크립트를 통해 명령을 실행할 때 bash가 콘솔에 직접 명령을 입력할 때와 다르게 동작한다는 점을 발견했습니다(미안합니다. 이는 고급 Linux 사용자에게는 분명합니다).

전체적으로 내 스크립팅 솔루션은 다음을 추가하기에 충분했습니다.-yp매개변수 및 설정DEBIAN_FRONTEND. 안전한 편이 되려면 편집하겠습니다./etc/dpkg/dpkg.cfg파일도요.

#!/bin/bash
DEBIAN_FRONTEND=noninteractive
export DEBIAN_FRONTEND
apt-get -yq update
apt-get -yq upgrade

답변1

이를 설정해야 DEBIAN_FRONTEND=noninteractivedebconf 프롬프트가 표시되지 않습니다.

그런 다음 파일 에 force-confold및를 추가하십시오 . 그런 다음 옵션 을 사용하십시오force-confdef/etc/dpkg/dpkg.cfg-y

sudo apt-get -y update && sudo apt-get -y upgrade

또는 이 명령을 사용하세요

apt-get -o Dpkg::Options::="--force-confnew --force-confdef" --force-yes -y upgrade

작동하지 않으면 시도해 보세요.

apt-get -o Dpkg::Options::="--force-confnew" --force-yes -y upgrade

답변2

업데이트된 정보는 에서 제공됩니다 apt-listchanges. 이러한 세부 정보를 보고 싶지 않은 경우 패키지를 완전히 제거할 수 있습니다. 그렇지 않은 /etc/apt/listchanges.conf경우에는 다음을 사용하여 구성 할 수 있습니다 .

frontend=mail

또는

frontend=none

이렇게 하면 설치 중단을 방지할 수 있습니다.

( apt-listchanges이 경우 올바른 작업을 수행해야 하므로 대화형 모드에서 업데이트 세부 정보가 계속 표시되도록 다른 방법으로 수정하는 것이 가능해야 합니다. 특히 해당 -q옵션을 추가해 볼 수 있습니다 apt-get.)

단순히 실행 중입니다.

DEBIAN_FRONTEND=noninteractive

아무것도 변경되지 않습니다. 프로세스 환경에서 종료되는지 확인해야 합니다 apt-get.

export DEBIAN_FRONTEND

관련 정보