aptについて
$ sudo apt-get updateをしようと思ったら、エラーらしきものがでてしまったので、aptについて調べなおしたことをメモしておきます。
aptとは?
manでみると、高度にしたパッケージツールのようで、その他にも、ここを見てねということで、apt-cache, apt-get, apt.conf, sources.list, apt_preferences, apt-secureが記載あり、個人的な解釈で必要そうなもののみ書いておきます。
ちなみに、$ apt
とコンソール画面入力して、TABを2回押すと、aptがつくコマンドがずらずらっと表示されます。
パッケージ管理手順
参考サイトには "aptitude update" か "apt-get update" とありましたが、apt を使っているので、こちらをメインにメモします。
■ 更新
# 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 について
mysql をDebian へインストールしようと思い、いざ apt-get update …。エラー?
原因はつかめていませんが、アップグレードを避けていたせいでしょうか。このことがきっかけで、sources.lis ファイルの設定をいじってみました。
このファイルは「パッケージをどこから取得する?」といったパッケージの取得先のアドレスが書いてあります。sources.lis を開いて、変更したのは①〜③の部分です。グリーンの文字の stable (安定版)と追加し、contrib non-free と追加しました。③の行にもstable-updates と入力してみましたが、うまくいかなかったので、元にもどし、このかたちで、#apt-get update できたので、とりあえず問題ないかと思います。
詳しくは下記のサイトを。
そのほか設定ファイルとして、apt.conf というものがあります。自分の apt ディレクトリを確認したら、まだありません。設定ファイルはなかったら自分でつくる。というもののようです。
# apt-cacheについて
パッケージについての問い合わせをするコマンドです。これを $ apt-cache depends package_name として使ってみます。package_name には、すでにインストールされているパッケージ名と、まだインストールしていない、パッケージ名を入力できます。パッケージの依存情報を表示することができます。参考サイトの下の方あたりにあります。
$ apt-cache depends sudo
ラベル | 説明 |
---|---|
Depends: | 依存 |
Suggests: | 弱い依存、それら抜きでも十分 |
Recommends: | 絶対ではない依存 |
Conflicts: | 競合、おそらくAPTがやってくれる、パッケージを削除しないと、該当のパッケージ入れられない |
Replaces: | 代替のパッケージ |