중단된 Ubuntu 버전을 사용하여 PPA 패키지를 지우고 다운그레이드하는 방법

중단된 Ubuntu 버전을 사용하여 PPA 패키지를 지우고 다운그레이드하는 방법

얼마 전 ppa:oibaf/graphic-driversTrusty 기반 Linux-Mint 설치를 시도했습니다.

이제 이전 xorg 드라이버로 돌아가야 하지만 더 이상 신뢰할 수 있는 패키지( xorg 로 끝나는 패키지)를 호스팅하지 않기 때문에 ppa 패키지를 제거 ppa-purge하거나 제거하지 않습니다 .y-ppa-manager~gd~t

이것은 비디오 드라이버이기 때문에 ppa와 관련된 모든 패키지를 수동으로 제거/지운 다음 설치하고 싶지 않습니다. 또한 이 xserver-xorg-video-radeon버전은 이 ppa 수정 사항에 의존하므로 linux-firmware이 작업을 수행할 때 불안정성에 빠지고 싶지 않습니다.

apt-get install --reinstall작동하지 않습니다. it cannot be downloaded각 관련 패키지에 대한 메시지와 함께 실패합니다.

이렇게 하려면 런레벨 4에서 이러한 패키지를 모두 지우고 다시 설치해야 합니까? 어떤 제안이 있나요?

dpkg -l | grep gd~t패키지 목록을 받았어요제 생각에는이 PPA를 통해 설치된 위치입니다. 그러나 예를 들어 PPA에서 더 이상 호스팅되지 않기 때문에 모든 것을 확인할 수 없습니다 linux-firmware(역 종속성을 확인하는 데 사용해야 함 apt-cache showpkg).

ii  libdrm-amdgpu1:amd64                                        2.4.68+git1606141830.625d18~gd~t                     amd64        Userspace interface to amdgpu-specific kernel DRM services -- runtime
ii  libdrm-amdgpu1:i386                                         2.4.68+git1606141830.625d18~gd~t                     i386         Userspace interface to amdgpu-specific kernel DRM services -- runtime
ii  libdrm-dev:amd64                                            2.4.68+git1606141830.625d18~gd~t                     amd64        Userspace interface to kernel DRM services -- development files
ii  libdrm-intel1:amd64                                         2.4.68+git1606141830.625d18~gd~t                     amd64        Userspace interface to intel-specific kernel DRM services -- runtime
ii  libdrm-intel1:i386                                          2.4.68+git1606141830.625d18~gd~t                     i386         Userspace interface to intel-specific kernel DRM services -- runtime
ii  libdrm-nouveau2:amd64                                       2.4.68+git1606141830.625d18~gd~t                     amd64        Userspace interface to nouveau-specific kernel DRM services -- runtime
ii  libdrm-nouveau2:i386                                        2.4.68+git1606141830.625d18~gd~t                     i386         Userspace interface to nouveau-specific kernel DRM services -- runtime
ii  libdrm-radeon1:amd64                                        2.4.68+git1606141830.625d18~gd~t                     amd64        Userspace interface to radeon-specific kernel DRM services -- runtime
ii  libdrm-radeon1:i386                                         2.4.68+git1606141830.625d18~gd~t                     i386         Userspace interface to radeon-specific kernel DRM services -- runtime
ii  libdrm2:amd64                                               2.4.68+git1606141830.625d18~gd~t                     amd64        Userspace interface to kernel DRM services -- runtime
ii  libdrm2:i386                                                2.4.68+git1606141830.625d18~gd~t                     i386         Userspace interface to kernel DRM services -- runtime
ii  libegl1-mesa:amd64                                          12.1~git1606090730.037ce5~gd~t                       amd64        free implementation of the EGL API -- runtime
ii  libegl1-mesa-drivers:amd64                                  12.1~git1606090730.037ce5~gd~t                       amd64        transitional dummy package
ii  libgbm1:amd64                                               12.1~git1606090730.037ce5~gd~t                       amd64        generic buffer management API -- runtime
ii  libgl1-mesa-dev:amd64                                       12.1~git1606090730.037ce5~gd~t                       amd64        free implementation of the OpenGL API -- GLX development files
ii  libgl1-mesa-dri:amd64                                       12.1~git1606090730.037ce5~gd~t                       amd64        free implementation of the OpenGL API -- DRI modules
ii  libgl1-mesa-dri:i386                                        12.1~git1606090730.037ce5~gd~t                       i386         free implementation of the OpenGL API -- DRI modules
ii  libgl1-mesa-glx:amd64                                       12.1~git1606090730.037ce5~gd~t                       amd64        free implementation of the OpenGL API -- GLX runtime
ii  libgl1-mesa-glx:i386                                        12.1~git1606090730.037ce5~gd~t                       i386         free implementation of the OpenGL API -- GLX runtime
ii  libglamor0:amd64                                            0.6.0+git1603170630.347ef4~gd~t                      amd64        shared graphics acceleration library based on OpenGL
ii  libglapi-mesa:amd64                                         12.1~git1606090730.037ce5~gd~t                       amd64        free implementation of the GL API -- shared library
ii  libglapi-mesa:i386                                          12.1~git1606090730.037ce5~gd~t                       i386         free implementation of the GL API -- shared library
ii  libgles2-mesa:amd64                                         12.1~git1606090730.037ce5~gd~t                       amd64        free implementation of the OpenGL|ES 2.x API -- runtime
rc  libllvm3.7:amd64                                            1:3.7.1-1ubuntu3~gd~t                                amd64        Modular compiler and toolchain technologies, runtime library
rc  libllvm3.7:i386                                             1:3.7.1-1ubuntu3~gd~t                                i386         Modular compiler and toolchain technologies, runtime library
ii  libllvm3.8:amd64                                            1:3.8~+rc3-1~exp1~gd~t                               amd64        Modular compiler and toolchain technologies, runtime library
ii  libllvm3.8:i386                                             1:3.8~+rc3-1~exp1~gd~t                               i386         Modular compiler and toolchain technologies, runtime library
ii  libosmesa6:amd64                                            12.1~git1606090730.037ce5~gd~t                       amd64        Mesa Off-screen rendering extension
ii  libosmesa6:i386                                             12.1~git1606090730.037ce5~gd~t                       i386         Mesa Off-screen rendering extension
rc  libva-drm1:amd64                                            1.7.0-1~gd~t                                         amd64        Video Acceleration (VA) API for Linux -- DRM runtime
rc  libva-egl1:amd64                                            1.7.0-1~gd~t                                         amd64        Video Acceleration (VA) API for Linux -- EGL runtime
rc  libva-glx1:amd64                                            1.7.0-1~gd~t                                         amd64        Video Acceleration (VA) API for Linux -- GLX runtime
rc  libva-tpi1:amd64                                            1.7.0-1~gd~t                                         amd64        Video Acceleration (VA) API for Linux -- TPI runtime
rc  libva-wayland1:amd64                                        1.7.0-1~gd~t                                         amd64        Video Acceleration (VA) API for Linux -- Wayland runtime
ii  libva-x11-1:amd64                                           1.7.0-1~gd~t                                         amd64        Video Acceleration (VA) API for Linux -- X11 runtime
ii  libva1:amd64                                                1.7.0-1~gd~t                                         amd64        Video Acceleration (VA) API for Linux -- runtime
ii  libvdpau-dev:amd64                                          1.1.1-3~gd~t                                         amd64        Video Decode and Presentation API for Unix (development files)
ii  libvdpau1:amd64                                             1.1.1-3~gd~t                                         amd64        Video Decode and Presentation API for Unix (libraries)
ii  libvorbis-dev:amd64                                         1.3.5-2~gd~t                                         amd64        development files for Vorbis General Audio Compression Codec
ii  libvorbis0a:amd64                                           1.3.5-2~gd~t                                         amd64        decoder library for Vorbis General Audio Compression Codec
ii  libvorbis0a:i386                                            1.3.5-2~gd~t                                         i386         decoder library for Vorbis General Audio Compression Codec
ii  libvorbisenc2:amd64                                         1.3.5-2~gd~t                                         amd64        encoder library for Vorbis General Audio Compression Codec
ii  libvorbisenc2:i386                                          1.3.5-2~gd~t                                         i386         encoder library for Vorbis General Audio Compression Codec
ii  libvorbisfile3:amd64                                        1.3.5-2~gd~t                                         amd64        high-level API for Vorbis General Audio Compression Codec
ii  libvorbisfile3:i386                                         1.3.5-2~gd~t                                         i386         high-level API for Vorbis General Audio Compression Codec
ii  libwayland-egl1-mesa:amd64                                  12.1~git1606090730.037ce5~gd~t                       amd64        implementation of the Wayland EGL platform -- runtime
ii  libxatracker2:amd64                                         12.1~git1606090730.037ce5~gd~t                       amd64        X acceleration library -- runtime
ii  linux-firmware                                              1.134~gd~t                                           all          Firmware for Linux kernel drivers
ii  mesa-common-dev:amd64                                       12.1~git1606090730.037ce5~gd~t                       amd64        Developer documentation for Mesa
ii  mesa-utils                                                  8.2.0-1~gd~t                                         amd64        Miscellaneous Mesa GL utilities
ii  xserver-xorg-video-ati                                      1:7.7.99+git1606011933.0945db~gd~t                   amd64        X.Org X server -- AMD/ATI display driver wrapper
ii  xserver-xorg-video-glamoregl                                0.6.0+git1603170630.347ef4~gd~t                      amd64        X.Org X server -- graphics acceleration module based on OpenGL
ii  xserver-xorg-video-intel                                    2:2.99.917+git1606011933.b617f8~gd~t                 amd64        X.Org X server -- Intel i8xx, i9xx display driver
ii  xserver-xorg-video-nouveau                                  1:1.0.12+git1606020733.1da8a9~gd~t                   amd64        X.Org X server -- Nouveau display driver
ii  xserver-xorg-video-radeon                                   1:7.7.99+git1606011933.0945db~gd~t                   amd64        X.Org X server -- AMD/ATI Radeon display driver

정리를 위해 이 목록에서 다음 후보를 추출했습니다.

libdrm
libdrm2
libva
linux-firmware
libvorbis*
libglamor*
mesa-common-dev
mesa-utils
libllvm*
libvdpau
xserver-xorg-video-ati
xserver-xorg-video-intel
xserver-xorg-video-nouveau
xserver-xorg-video-radeon

xserver-xorg-video-glamoregl내가 온라인에 가지고 있는 것에서 그것을 찾을 수 없는 곳에서"관련 패키지"오이바프 PPA 부분

답변1

결국 완전히 수동으로 진행하게 되었습니다.

apt-get remove --purge --dry-run package_name먼저 종속성을 변경하지 않고 제거할 수 있는 패키지를 확인했습니다 . 다음으로 다운그레이드하려는 특정 버전을 확인합니다 apt-cache policy package_name. 그런 다음 각 패키지의 사용 가능한 최신 버전을 설치하겠습니다.

이 방법은 다음에 적합합니다.

* xserver-xorg-video-ati
xserver-xorg-video-intel
xserver-xorg-video-nouveau
xserver-xorg-video-radeon
xserver-xorg-video-glamoregl

xserver-xorg-video-ati이에 의존 xserver-xorg-video-glamoregl하므로 libglamor0다음 단계를 수행하지 않으면 다시 설치할 수 없습니다.

그런 다음 필요한 버전이 나타나는 곳에서 다운그레이드를 진행합니다 apt-get install --reinstall package_name=version. 종속성에 영향을 주지 않고 다시 설치할 수 있는 패키지와 명령 전체에서 동일한 버전을 공유하는 그룹화된 패키지를 사용하여 이 작업을 수행합니다. 그리고:versionapt-cache policy

linux-firmware
libglamor0
mesa-common-dev
mesa-utils
libva-x11-1
libva1
libvdpau-dev
libvdpau1

메사 패키지를 다시 설치하는 대신 제거하면 많은 종속성에 영향을 미칩니다. 이 단계를 통해 다시 설치할 수 있고 libglamor0마지막 xserver-xorg-video-glamoregl으로 설치할 수 있습니다 xserver-xorg-video-ati.

재설치 후에도 libva"rc"라고 표시된 관련 패키지가 libva여전히 존재합니다. 이 태그는 "제거되었지만 프로필이 여전히 존재함"을 의미하므로 를 사용합니다 apt-get remove --purge package_name.

이 시점에서 컴퓨터가 다시 부팅되는지 확인하기 위해 재부팅했는데 운 좋게도 부팅되었습니다. 이 시점에서는 모든 패키지가 서로 종속되거나 종속성이 없기 때문에 어느 정도 확신이 듭니다.

그리고... 의존 지옥.

dpkg -i --force-depends list-of-packages다음과 같이 종속성에 영향을 주지 않고 패키지를 다운그레이드했습니다 .종속성을 제거하지 않고 패키지를 다운그레이드하는 방법은 무엇입니까?

동일한 버전의 deb 패키지 배치를 다운로드하고 다시 설치했습니다. 각 패키지에서 패키지 후보를 확인 apt-cache policy하고 거기에 표시된 특정 버전과 아키텍처(amd64/i386)를 사용하여 Google에서 다운로드하세요. 각 명령을 제출하기 전에 연습 실행을 수행하여 dpkg종속성 충돌로 인해 발생할 수 있는 모든 경고를 처리했습니다. 충돌이 표시되지 않습니다.

처음에 나는 이 배치를 위해 갔다 libdrm2.

libdrm2_2.4.67-1ubuntu0.14.04.1_amd64.deb
libdrm2_2.4.67-1ubuntu0.14.04.1_i386.deb
libdrm-amdgpu1_2.4.67-1ubuntu0.14.04.1_amd64.deb
libdrm-amdgpu1_2.4.67-1ubuntu0.14.04.1_i386.deb
libdrm-dev_2.4.67-1ubuntu0.14.04.1_amd64.deb
libdrm-intel1_2.4.67-1ubuntu0.14.04.1_amd64.deb
libdrm-intel1_2.4.67-1ubuntu0.14.04.1_i386.deb
libdrm-nouveau2_2.4.67-1ubuntu0.14.04.1_amd64.deb
libdrm-nouveau2_2.4.67-1ubuntu0.14.04.1_i386.deb
libdrm-radeon1_2.4.67-1ubuntu0.14.04.1_amd64.deb
libdrm-radeon1_2.4.67-1ubuntu0.14.04.1_i386.deb

그런 다음 ( 메사 라이브러리에 대한 종속성을 깨뜨리는 libdrm에 대한 불만이 시작되었으므로 mesa이 시점에서 완전히 필요합니다 )apt-get

libegl1-mesa_10.1.3-0ubuntu0.6_amd64.deb
libegl1-mesa-drivers_10.1.3-0ubuntu0.6_amd64.deb
libgbm1_10.1.3-0ubuntu0.6_amd64.deb
libgl1-mesa-dri_10.1.3-0ubuntu0.6_amd64.deb
libgl1-mesa-dri_10.1.3-0ubuntu0.6_i386.deb
libgl1-mesa-glx_10.1.3-0ubuntu0.6_amd64.deb
libgl1-mesa-glx_10.1.3-0ubuntu0.6_i386.deb
libglapi-mesa_10.1.3-0ubuntu0.6_amd64.deb
libglapi-mesa_10.1.3-0ubuntu0.6_i386.deb
libgles2-mesa_10.1.3-0ubuntu0.6_amd64.deb
libosmesa6_10.1.3-0ubuntu0.6_amd64.deb
libosmesa6_10.1.3-0ubuntu0.6_i386.deb
libwayland-egl1-mesa_10.1.3-0ubuntu0.6_amd64.deb
libxatracker2_10.1.3-0ubuntu0.6_amd64.deb    

마지막으로 libvorbis패키지:

libvorbis0a_1.3.2-1.3ubuntu1_amd64.deb
libvorbis0a_1.3.2-1.3ubuntu1_i386.deb
libvorbis-dev_1.3.2-1.3ubuntu1_amd64.deb
libvorbisenc2_1.3.2-1.3ubuntu1_amd64.deb
libvorbisenc2_1.3.2-1.3ubuntu1_i386.deb
libvorbisfile3_1.3.2-1.3ubuntu1_amd64.deb
libvorbisfile3_1.3.2-1.3ubuntu1_i386.deb

이 시점에서는 libllvm원치 않는 종속성이 되며 제거할 수 있습니다 apt-get autoremove. "rc" 태그가 붙은 패키지가 남았는데, apt-get remove --purge문제 없이 제거했습니다 .

관련 정보