관련된:apt-get/aptitude를 사용하여 패키지 버전을 확인하는 방법은 무엇입니까?
특정 변수 debian 버전에 대해 명령줄에서 이 작업을 어떻게 수행할 수 있나요? apt, dpkg 또는 aptitude를 사용할 수 있습니다. 이상적으로는 종속 packages.debian.org 웹사이트가 다음과 같습니다.아니요알겠습니다. 요청한 버전이 최신 버전이 아닐 수 있기 때문입니다. (ftp 아카이브에는 이전 버전이 포함되어 있습니다).
예를 들어:
release="bullseye"
package="wget"
version=$(some_magic_apt_command $release)
echo $version
1.21-1+deb11u1
release="stretch"
package="wget"
version=$(some_magic_apt_command $release)
echo $version
1.18-5+deb9u3
또한 그것이 어느 "저장소"에서 나오는지 알아야 합니다. 기본, 기여 또는 반자유주의?
release="stretch"
package="wget"
type=$(some_magic_apt_command $release)
echo $type
main
필요하다:
- 그래야만 해모든 버전: 현재 설치된 버전뿐만 아니라.
목적:
변경된 원래 구성 파일을 찾기 위해 이전 패키지를 추출하고, 변경된 내용을 기억할 수 없으며, 해당 구성 파일을 업데이트하여 새 버전을 얻는 방법을 알아봅니다(질문:프로그래머가 구성 파일에 적용한 변경 사항은 기록되지 않습니다.).
답변1
따라서 대답은 다음과 같습니다. 각 버전에 대해 Podman 컨테이너를 만들고 각 컨테이너 내부에 dpkg를 요청하세요.
호스트(Deb 11) 머신에 대한 일회성 설정:
sudo apt install -y podman
sudo usermod --add-subuids 100000-165535 --add-subgids 100000-165535 YOURUSERNAMEHERE
그 이후 PKG
확인 DEBIAN_RELEASE
:
DEBIAN_RELEASE=8
PKG=gnuradio
podman run \
-it \
--rm \
"debian:${DEBIAN_RELEASE}" \
sh -c "apt-get update; apt-cache show \"${PKG}\"" \
| grep 'Version:'
7 이전 데비안의 경우 먼저 /etc/apt/sources.list에서 URL을 조정해야 할 수도 있지만 에 전달된 명령에서 이 작업을 수행하거나 sh -c
먼저 이미 완성된 이미지를 빌드한 다음 debian:releasenumber
해당 이미지로 바꿀 수 있습니다.