廃止されたU​​buntuバージョンを使用してPPAパッケージをクリアしてダウングレードする方法

廃止されたU​​buntuバージョンを使用して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問題なく削除されました。

関連情報