岩松信
洋
![]() |
Debian ユーザーは apt がないと生きていけません。 apt-get はみんなが知っているコマンドですが、 apt にはいろいろなコマ ンドが存在します。 今回はあまり知られていない apt-xxx について調べてみました。
勝手にレベルをつけていますが、 レベル小は一般ユーザの方なら知っておいて損はないというものです。 Debian 上での生活を 楽にしてくれるかもしれません。
apt の GPG 鍵リングを制御するフロントエンドです。 2006 年から secure apt が導入された。 secure apt は Debian アーカイブの 信頼性を上げるため導入されたのですが、 これには GPG が使われており、 一般ユーザーにはちょっと難しいかもしれません。 しか し、 secure apt の GPG のキーは毎年変更されるので、 今後使うことがあるかもしれません。 また、 GUI で操作したい人のために gui-apt-key*3 パッケージがあります。
ネットワークの情報から最適な apt-line を生成することができるツールです。 いまは cdn.debian.or.jp があるのでどうでもい い か ん じ で す 。
auto-apt は世間では検索用のツールになっています。 しかし、 auto-apt はコマンド実行時に足りないファイルをパッケージをから探しだし、 インストールしてくれるツールだっ
たりします。
apt-get updte / apt-get uprade を cron で書いているひとをたまに見かけますが、 cron-apt を
使えば、 ログに apt の結果をながした—じょうかい設定が可能になります。 似たような名前で
apticron*5 と
いうパッケージがありますが、 これは aptitude の cron-apt 版ではなくセキュリティアップデート情報をメールで送信してく
れるツールです。
Debian パッケージのキャッシングプロキシを構築するパッケージです。 例えば、 家の中でマシンが数台あり、 すべて sid だっ
たとしましょう。 特に設定を行ってない場合、 各マシンは apt-get 毎にミラーサーバーから Debian パッケージを取得します。
これは無駄なので、 1 台だけ Debian パッケージをミラーサーバーから取得し、 キャッシュし、 他のマシンは対象のキャッシュ
しているパッケージを使ってアップデートを行うようにします。 これを実現するためのパッケージが apt-proxy / apt-cacher
です。
使用しない場合
使用した場合
一般ユーザーは知っていてもあまり役に立たないと思われる apt-xxx。
Sources.gz / Packages.gz などのパッケージ情報用ファイルを作成するためのツール。 自分で作ったパッケージを apt-line と
して公開したいときに使います。
Packages ファイルおよび Sources ファイルをソートします。 apt-ftparchive で作成したものはソートされていなかったりす
るので、 アルファベット順にソートするときに使います。
Debian パッケージから設定とテンプレート情報を抽出するためのツールです。
Debian で提供されているバイナリパッケージはあまり最適化されていません。 人によっては自分の環境に合わせてチューニン
グしたり、 製品に組み込んだりする場合もあります。 apt-build は apt-get する感覚で環境に合わせてバイナリを作成をサポー
トするツールです。 Debian パッケージをリビルドする場合は
という手順を踏みますが、 apt-build の場合は
だけです。 apt-build の設定ファイルは
にあり、
という設定になっています。 例えば、 自分の使っているマシンが i686 ではなく、 Crusoe の場合には
とすればよいでしょう。
Debian package を cross 環境で使用できるように変換してインストールしてます。 いままではダウンロードした Debian
package を dpkg-cross で変換してインストールしていましたが、 apt-cross を使うことのよって、 手作業が減らすことができ
ます。
apt-cross を使用しない場合
apt-cross を使用した場合
apt は ftp/http で取得できるのですが、 このパッケージを使うことによって https 経由で apt を行うことができるようになり
ます。
知っていても使わないだろうと思われる apt-xxx. 話のネタにはなるかもしれない。
リムーバブルメディアの ZIP からの apt をサポートするためのツールです。 同じようなツールで apt-cdrom がありますが、
違いがいまいちわかりません。
apt の操作をができる Shell.
で shell が aptsh になります。 試しに、
を実行すると、 インストール可能なパッケージ一覧が表示されます。
今回はさわりだけを説明しました。 今回の紹介で気になる apt-xxx がありましたら詳細を説明していきたいと思ってい
ます。
第
32 回東京エリア Debian 勉強会 2007 年 9 月
% auto-apt search stdio.h
usr/include/stlport/stdio.h libdevel/libstlport5.1-dev
usr/include/fcgi_stdio.h libdevel/libfcgi-dev
usr/include/H5FDstdio.h libdevel/libhdf5-lam-dev,libdevel/libhdf5-mpich-dev,libdevel/libhdf5-serial-dev
usr/include/stdio.h libdevel/libc6-dev
6.2.4 cron-apt
6.2.5 apt-proxy / apt-cacher
6.3 レベル中
6.3.1 apt-ftparchive
% apt-ftparchive sources . | gzip -9 > Sources.gz
% apt-ftparchive release . > Release
6.3.2 apt-sortpkgs
6.3.3 apt-extracttemplates
% apt-extracttemplates xserver-xorg_7.3~rc1_all.deb
% ls
xserver-xorg.config.34261
xserver-xorg.template.34260
6.3.4 apt-build
% apt-get source hello
% cd hello-x.x
% debuild -us -uc
% sudo dpkg-i ../hello_xxxx.deb
% apt-build install hello
repository-dir = /var/cache/apt-build/repository
Olevel = -O3
march = -march=pentium2
mcpu = -mcpu=pentium2
options =
-O2 -fomit-frame-pointer -fno-strict-aliasing -fno-common \
-pipe +-mpreferred-stack-boundary=2 -march=i686 -malign-functions=0 \
-malign-jumps=0 -malign-loops=0
6.3.5 apt-cross
6.3.6 apt-transport-https
6.4 レベル高
6.4.1 apt-zip
6.4.2 aptsh
6.5 まとめ
____________________________________________________________________________________________