Ubuntu/Debian でマルチアーキテクチャを有効/無効にする備忘録

Server
Photo by hyt.

Ubuntu/Debian でマルチアーキテクチャを有効/無効にする備忘録です.

Wine をインストールしてて Windows のあるプログラムが動くかどうか試したのですが,残念ながら上手く行かない.

仕方ないので Wine を一旦削除したのですが,合わせて導入した i386 のパッケージ(Wine では i386 アーキテクチャのパッケージじゃないと色々動かないらしい.公式に書いてある)は不要なので,これを消すためにアレコレしてみた記録です.

まず,標準のアーキテクチャの表示は,

$ dpkg --print-architecture

アーキテクチャを追加するときは,

$ sudo dpkg --add-architecture i386

追加されたアーキテクチャを表示するときは,

$ sudo dpkg --print-foreign-architectures

実際に i386 アーキテクチャのパッケージを追加してみる.

$ sudo apt install libc6:i386
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています                
状態情報を読み取っています... 完了
以下の追加パッケージがインストールされます:
  gcc-8-base:i386 libgcc1:i386
提案パッケージ:
  glibc-doc:i386 locales:i386
以下のパッケージが新たにインストールされます:
  gcc-8-base:i386 libc6:i386 libgcc1:i386
アップグレード: 0 個、新規インストール: 3 個、削除: 0 個、保留: 0 個。
2,617 kB のアーカイブを取得する必要があります。
この操作後に追加で 11.0 MB のディスク容量が消費されます。
続行しますか? [Y/n] 
...

追加された i386 のパッケージをリストアップする.

$ sudo dpkg -l | grep i386
ii  gcc-8-base:i386                            8.3.0-6ubuntu1~18.04.1                                                      i386         GCC, the GNU Compiler Collection (base package)
ii  libc6:i386                                 2.27-3ubuntu1                                                               i386         GNU C Library: Shared libraries
ii  libgcc1:i386                               1:8.3.0-6ubuntu1~18.04.1                                                    i386         GCC support library

このまま i386 パッケージのサポートを取り消そうとしても導入済みパッケージがあるので怒られてしまう.

$ sudo dpkg --remove-architecture i386
dpkg: エラー: データベースで現在使用中のアーキテクチャ 'i386' を削除できません

i386 のパッケージを全部消してからだときちんとサポートを取り消せる.

$ sudo apt-get purge '*:i386'
$ sudo dpkg --remove-architecture i386
$ sudo dpkg --print-foreign-architectures

なお,上記のほとんどは Debian 管理者ハンドブックに書いてあります.

5.4. dpkg を用いたパッケージの操作

以上!

Server
スポンサーリンク
Following hyt!
タイトルとURLをコピーしました