アタマのひきだし

webプログラミング情報メモ

aptについて

$ sudo apt-get updateをしようと思ったら、エラーらしきものがでてしまったので、aptについて調べなおしたことをメモしておきます。

aptとは?

manでみると、高度にしたパッケージツールのようで、その他にも、ここを見てねということで、apt-cache, apt-get, apt.conf, sources.list, apt_preferences, apt-secureが記載あり、個人的な解釈で必要そうなもののみ書いておきます。

http://i.gyazo.com/36f5225371fa855248a213ae83315886.png

ちなみに、$ aptとコンソール画面入力して、TABを2回押すと、aptがつくコマンドがずらずらっと表示されます。

http://i.gyazo.com/7a21d57a97a3e486afdd59eb58d01a57.png

パッケージ管理手順

参考サイトには "aptitude update" か "apt-get update" とありましたが、apt を使っているので、こちらをメインにメモします。

「第2章 Debian パッケージ管理」

■ 更新

# apt-get update

アーカイブメタデーターをリモートアーカイブから取得。APT が使えるようローカルメタデーターの再構築と更新。

■ アップグレード

# apt-get dist-upgrade

全てのインストール済みパッケージに関し、通常最新の利用可能なバージョンが選ばれ、upgradeより、高度なパッケージの依存関係解決をしてくれるらしいです。# apt-get upgradeを実行したとき、動きがおかしくなった経験があり、その後アップグレードをしばらくしていませんでした。使わないまま、ブログにアップするわけにもいかないので、先ほど、# sudo apt-get dist-upgrade で使用。。一旦ログアウトして、ターミナル再度立ち上げてから、ssh接続ためしましたが、大丈夫でした。原因はパッケージの依存関係が関係?いずれにせよ、upgradeに高度な依存関係変更処理をつけたようなものらしいです。

■ インストール

# apt-get install

パッケージ依存関係解決の実行。指定したパッケージをインストールしてくれます。

■ 削除

# apt-get remove

パッケージ依存関係解決の実行。設定ファイル以外のインストール済みファイルの削除してくれるようです。

■ 完全削除

# apt-get purge

設定ファイルを含む、インストール済みファイルが削除されます。

■ 初心者なら

# apt-get update

# apt-get install package_name

まずパッケージの追加から、ということで、更新、その次に目的のパッケージをインストールとありました。

sources.lis について

mysqlDebian へインストールしようと思い、いざ apt-get update …。エラー?

原因はつかめていませんが、アップグレードを避けていたせいでしょうか。このことがきっかけで、sources.lis ファイルの設定をいじってみました。

このファイルは「パッケージをどこから取得する?」といったパッケージの取得先のアドレスが書いてあります。sources.lis を開いて、変更したのは①〜③の部分です。グリーンの文字の stable (安定版)と追加し、contrib non-free と追加しました。③の行にもstable-updates と入力してみましたが、うまくいかなかったので、元にもどし、このかたちで、#apt-get update できたので、とりあえず問題ないかと思います。

詳しくは下記のサイトを。

http://i.gyazo.com/8e61e0876e057610db1dce94dc2c47c6.png

そのほか設定ファイルとして、apt.conf というものがあります。自分の apt ディレクトリを確認したら、まだありません。設定ファイルはなかったら自分でつくる。というもののようです。

# apt-cacheについて

パッケージについての問い合わせをするコマンドです。これを $ apt-cache depends package_name として使ってみます。package_name には、すでにインストールされているパッケージ名と、まだインストールしていない、パッケージ名を入力できます。パッケージの依存情報を表示することができます。参考サイトの下の方あたりにあります。

「2.1.6. パッケージ依存関係」

$ apt-cache depends sudo

http://i.gyazo.com/3b9204771187b38e2db97edbdf854f78.png

ラベル 説明
Depends: 依存
Suggests: 弱い依存、それら抜きでも十分
Recommends: 絶対ではない依存
Conflicts: 競合、おそらくAPTがやってくれる、パッケージを削除しないと、該当のパッケージ入れられない
Replaces: 代替のパッケージ