Mazn.net

やってみて 調べてみて 苦労しなけりゃ 箱は動かじ

すでに同名のdebパッケージがインストールされているか確認する@Ubuntu 14.04

   

リポジトリにはまだ登録されていないパッケージを手動でdpkgを使ってアップデートする時の話。

 

個別にパッケージをダウンロードしたり、自分でパッケージを作成したりした場合、複数のdebパッケージが存在する場合があります。

例えば、aaa_1.1_amd64.deb というパッケージには、aaa-lib_1.1_amd64.deb とか、aaa-dev_1.1_amd64.deb とかが付属することがあります。この時、実際にインストールされているパッケージがaaa_1.0_amd64.debとaaa_1.0_amd64-lib.deb だった場合、アップデート時にaaa_1.1_amd64-dev.deb をインストールする必要は通常ありません。

パッケージが3つの場合、dpkg -l で個別にインストールされているかどうかを確認するのはそれ程手間ではありませんが、ファイルが多いと確認も一苦労です。

RedHat系のrpm では、-Fvh オプションでアップデートすれば、すでにインストール済みのパッケージのみアップデートすることができますが、dpkgだとできそうにありません。こんな時には、シェル一発で確認してみましょう。

例えば、上記を例に、カレントディレクトリに以下の三つのファイルがあるとします。

aaa_1.1_amd64.deb
aaa-lib_1.1_amd64.deb
aaa-dev_1.1_amd64.deb

この時、同名のパッケージがインストールされているかどうかを確認するには、こんな感じのコマンドを叩くだけです。

# for i in `ls *.deb`; do dpkg -l | grep "..  "`echo $i | cut -d "_" -f 1`" " ; done
ii  aaa                      1.0   amd64        aaa
ii  aaa-lib                  1.0   amd64        aaa libraries

これで、アップデートが必要なパッケージはわかりました。

 - IT技術, サーバ構築 , ,

336px

Message

メールアドレスが公開されることはありません。

  関連記事

no image
Windowsのtelnetコマンドの文字コード@Windows XP

限られた環境で、ターミナルのソフトにWindowsのtelnetしかない場合、t …

no image
py2exeでpythonをWindowsの実行ファイル形式にする@Windows 7 64bit

python でちょこっと作プログラムを誰かに渡したいとき、相手にpython入 …

no image
コンピュータ名でアクセスできるがIPでアクセスできない@Windows ファイル共有

タイトルのような事象がWindows のファイルの共有で発生しました。 コンピュ …

no image
IPv6試してみました @ RHEL5

自分自身は表す(ipv4では127.0.0.1) 方法は、 ::1 だそうです。 …

no image
tarファイルを解凍せずに中身をみる@Linux

tarファイルの中身を見るのに、小さなファイルなら解凍して中身を展開すればよいで …

no image
DVD-Rに4倍速で書き込みできない@GSA-4040B

数年前に発売されたDVDマルチドライブ GSA-4040Bを持っているのですが、 …

no image
yumで特定パッケージをインストールやアップデートさせないようにする@Fedora 13

最近Fedoraを使い始めました。 最初からFedoraのリポジトリにいろいろな …

no image
キーボードレイアウト、ロケール変更@Ubuntu 14.04 server on VMware Player

VMwareの簡易インストールはOSのインストールが簡単で便利ですが、日本時間に …

no image
createrepoコマンド@ RHEL5

createrepoコマンドはyumのリポジトリを作成するためのコマンドです。 …

no image
Trackpointでスクロールできない@ThinkPad キーボード 55Y9024 with Windows7 64bit

ThinkPadのトラックポイントキーボード 55Y9024 を使っているのです …