#author("2024-09-21T13:45:41+09:00","","") #author("2024-09-21T13:47:44+09:00","","") #topicpath #navi(Debian); /////////////////////////////////////////////////////////////////////////////// * 目次 [#n85f6908] #contents(); /////////////////////////////////////////////////////////////////////////////// * 基本 [#z89a3af4] - インストール # aptitude install <パッケージ名> - インストール(アーキテクチャを無視して強制インストール) # dpkg --force-architecture -i hogehoge.deb -- Intel Core2 Duo のマシンだと通常 amd64 アーキテクチャのシステムがインストールされるが、実際には i386 アーキテクチャを指定されたパッケージを入れたい場合もでてくる(例えば adobereader-jpn 9.4.2など)。これはそういう時に使用するオプション。 - 削除(プログラムのみ。設定ファイル等は削除されない) # aptitude remove <パッケージ名> - 削除(プログラムのみでなく、設定ファイル類も削除) # aptitude purge <パッケージ名> または #dpkg --purge <パッケージ名> /////////////////////////////////////////////////////////////////////////////// * 検索系 [#d01d6eca] //============================================================================= ** キーワードでパッケージを探す [#aebe1608] # apt-cache search <キーワード> //============================================================================= ** パッケージに含まれるファイルを調べる [#n0e37028] + -c, --contents : パッケージファイルの実体を指定して調べる $ dpkg-deb --contents ***.deb //============================================================================= ** パッケージの依存関係を調べる [#l7234f64] - そのパッケージが依存しているパッケージを調べる $ apt-cache depends <調査対象のパッケージ名> -- 例:bear の依存関係を調べる $ apt-cache depends bear $ apt-cache depends bear bear 依存: libear 依存: libc6 依存: libfmt7 依存: libgcc-s1 依存: libgrpc++1 依存: libgrpc10 依存: libprotobuf23 依存: <libspdlog1-fmt7> libspdlog1 依存: libsqlite3-0 依存: libstdc++6 - そのパッケージに依存しているパッケージを調べる $ apt-cache rdepends <調査対象のパッケージ名> -- 例:bear に依存しているパッケージを調べる $ apt-cache rdepends bear bear Reverse Depends: libspdlog1 /////////////////////////////////////////////////////////////////////////////// * メンテナンス系 [#s2fffa80] //============================================================================= ** /var/cache/apt/archives [#ee883581] コマンド apt-get install hoge 等とやっていると、そのたびに、このディレクトリにパッケージ貯め込まれていく。/var を1GB程度の独立したパーティションにしていると、そのうち満杯になってしまう。そこでこの中のファイルを消せるモノなら消したい訳だが、「そろそろ容量的に危ないかな」と思ったら、次で消去出来る。 # apt-get clean 古いパッケージのみを選択的に消したい場合は、次を実行する。 # apt-get auto-clean //============================================================================= ** 保留パッケージのインストール [#y83101f4] - apt-get install などを実行すると、その実行結果に インストール・削除・更新されるパッケージがありません。 更新: 0 個、新規インストール: 0 個、削除: 0 個、保留: 25 個。 といったメッセージが表示されることがある。 - 保留のパッケージが何かを確認するには以下を実行する: # apt-get -s dist-upgrade - 保留パッケージをインストールするには以下を実行する: # apt-get dist-upgrade //============================================================================= ** パッケージのバージョンアップを保留/保留解除する [#p3a38d7a] - 特定のパッケージのバージョンアップを保留する(apt-get update; apt-get upgrade を実行しても更新させない): # apt-mark hold <package-name> [package-name2, ...] - 特定のパッケージのバージョンアップ保留を解除する: # apt-mark unhold <package-name> [package-name2, ...] - バージョンアップを保留したパッケージの一覧を表示する: # apt-mark showhold /////////////////////////////////////////////////////////////////////////////// * deb パッケージ作成 [#yec30388] - (調査中) //============================================================================= ** 必要なパッケージ [#m6f35eb8] - build-essential - devscripts - dh-make (但し、インストールされるコマンドは、/usr/bin/dh_make) - lintian - fakeroot - gnupg(配布することを考えてなければ特に必要ない) //============================================================================= ** パッケージ作成方法 [#cf723898] //============================================================================= ** 参考リンク [#q376ed2d] - [[独自のDebパッケージやaptリポジトリを作ってみよう>http://sourceforge.jp/magazine/14/01/17/090000]] /////////////////////////////////////////////////////////////////////////////// * パッケージファイル(*.deb)からファイルを取り出す [#get-file-from-deb] - 取り出すコマンド $ dpkg -x <package-file-name> <dir-to-expand> -- <package-file-name>: 中からファイルを取り出そうとするパッケージのファイル名 -- <dir-to-expand>: 展開先ディレクトリ //============================================================================= ** 参考リンク [#get-file-from-deb-link] - [[パッケージファイルの中身を取り出したい>http://debian.fam.cx/index.php?AptGet#content_1_26]] --- Debian GNU/Linux スレッドテンプレ /////////////////////////////////////////////////////////////////////////////// * 信頼出来るリポジトリのGPG Public Key を取り込む [#ve749073] + wgetなりなんなりで、公開鍵ファイル(<hogehoge.key>とする)を取得する。 + 鍵を取り込む # apt-key add <hogehoge.key>