サーバーのよく使うコマンドメモ| apt-get

2015年3月31日

コマンド サーバー テクノロジー

Summery

Debian系ディストリビューションで、パッケージのインストール(アンインストール)を行う。

Construction

$ apt-get [option] [command] [application-name]

Option

-d : ダウンロードのみ行う -s : チェックのみを行う -y : 問い合わせにすべて「Yes」で答える -u : アップグレード一覧の表示 -b : パッケージのビルドを行う --reinstall : 再インストール

Command

update : パッケージのアップデート upgrade : パッケージのアップグレード dist-upgrade : カーネルのアップグレード install : インストール remove : アンインストール source : ソースの取得 clean : キャッシュファイルを削除する autoclean : 古いキャッシュファイルを削除する

Sample

# apache2のインストール $ apt-get install apache2 # apache2のアンインストール $ apt-get --purge remove apache2 # インストール済みのパッケージを一括アップデートする $ apt-get update # 不要なキャッシュデータを削除する $ apt-get autoclean

Discription

#名前 # apt-get - APT パッケージ操作ユーティリティ -- コマンドラインインター # フェース # #概要 # apt-get [-asqdyfmubV] [-o=設定文字列] [-c=設定ファイル] [-t=対象リリー # ス] [-a=アーキテクチャ] {update | upgrade | dselect-upgrade | # dist-upgrade | install パッケージ [{=パッケージバージョン番 # 号 | /対象リリース}]... | remove パッケージ... | purge パッ # ケージ... | source パッケージ [{=パッケージバージョン番 # 号 | /対象リリース}]... | build-dep パッケージ [{=パッケージ # バージョン番号 | /対象リリース}]... | download パッケー # ジ [{=パッケージバージョン番号 | /対象リリース}]... | check | # clean | autoclean | autoremove | {-v | --version} | # {-h | --help}} # #説明 # apt-get は、パッケージを操作するコマンドラインツールで、APT ライブラリ # を用いる他のツールのユーザ側「バックエンド」といえるものです。「フロン # トエンド」インターフェースには、aptitude(8), synaptic(8), wajig(1) など # があります。 # # -h オプションや --help オプションを除き、以下に挙げるコマンドが必要で # す。 # # update # updateは、取得元からパッケージインデックスファイルの再同期を行うの # に使用します。利用可能なパッケージのインデックス # は、/etc/apt/sources.list に記述した場所から取得します。例えば # Debian アーカイブを利用する際、このコマンドが Packages.gz ファイル # を検索することで、新規または更新されたパッケージの情報が利用可能と # なります。update は、upgrade や dist-upgrade を行う前に常に実行して # ください。前もってパッケージファイルのサイズを知ることができないた # め、全体の進捗メータは正しく表示されません。 # # upgrade # upgrade は、現在システムにインストールされている全パッケージの最新 # バージョンを、/etc/apt/sources.list に列挙した取得元からインストー # ルするのに使用します。現在インストール中のパッケージに新しいバー # ジョンがあれば更新しますが、いかなる時も現在インストール中のパッ # ケージの削除は行いませんし、インストールしていないパッケー所の取 # 得・インストールは行いません。対象のパッケージが、他のパッケージの # インストール状態を変更せずに更新できない場合は、現在のバージョンの # ままとなります。最初に update を実行しておき、apt-get にパッケージ # の新しいバージョンがあることを知らせる必要があります。 # # dist-upgrade # dist-upgrade は、upgrade の機能に加え、新バージョンのパッケージに対 # する依存関係の変更を知的に操作します。apt-get は「洗練された」競合 # 解決システムを持ち、必要とあらば比較的重要でないパッケージを犠牲に # して、最重要パッケージの更新を試みます。そのため dist-upgrade # は、いくつかのパッケージを削除する可能性がありま # す。/etc/apt/sources.list ファイルには、必要なパッケージファイルを # 検索する場所のリストが含まれています。特定のパッケージ向けに、一般 # 的な設定を上書きする機構については、apt_preferences(5) をご覧くださ # い。 # # dselect-upgrade # dselect-upgrade は、伝統的な Debian GNU/Linux パッケージ管理フロン # トエンドの dselect(1) と共に使用されます。dselect-upgrade # は、dselect(1) で作られた利用可能パッケージのStatus フィールドの変 # 更を追跡し、その状態を反映させるのに必要なアクションを実行しま # す。(例えば、古いパッケージの削除や新しいパッケージのインストールな # ど) # # install # install の後には、インストールや更新したいパッケージを 1 つ以上指定 # します。指定するパッケージは、完全なファイル名ではなくパッケージ名 # です (例えば Debian システムで # は、apt-utils_1.0.9.2ubuntu2_amd64.deb ではなく apt-utils を引数と # して与えます)。インストールするよう指定したすべてのパッケージに対 # し、依存パッケージも含めて取得・インストールを行いま # す。/etc/apt/sources.list ファイルを、要求するパッケージの場所を特 # 定するのに使用します。パッケージ名の後ろに (空白を含まず) ハイフン # が追加されている場合、そのパッケージがインストールされていれば削除 # します。同様に、インストールするパッケージを明示するのにプラス記号 # も使用できます。この記号は apt-get の競合解決システムの判断を上書き # するのに利用される可能性があります。 # # パッケージにイコール記号とバージョンを続けることで、選択したバー # ジョンのパッケージをインストールすることができます。つまり、指定の # バージョンのパッケージをインストールするように選択する、ということ # です。別の方法としては、ディストリビューションを特定するのに、パッ # ケージ名に続けて、スラッシュとディストリビューションのバージョンや # アーカイブ名 (stable, testing, unstable) を記述できます。 # # バージョン選択機構はダウングレードにも使用できるため、注意して使用 # しなければなりません。 # # システムにインストール済みのパッケージを、すべてアップグレードする # のではなく、いくつかのパッケージをアップグレードする場合にも、この # ターゲットを使用できます。現在インストールされているパッケージすべ # ての最新版をインストールする "upgrade" ターゲットと異な # り、"install" は指定したパッケージの最新版のみをインストールしま # す。単純にアップグレードしたいパッケージ名を指定してください。より # 新しいバージョンが利用できる場合、そのパッケージ (と前述の依存関係 # にあるパッケージ) をダウンロード・インストールします。 # # 最後に、apt_preferences(5) 機構により、特定のパッケージに対するイン # ストールポリシーを作成できます。 # # 構文に '.', '?', '*' を含み、パッケージ名がマッチしなかった場 # 合、POSIX 正規表現であると見なし、データベース内の全パッケージ名に # 対して適用します。マッチしたパッケージすべてがインストール(もしくは # 削除)されます。'lo.*' のような文字列は、'how-lo' や 'lowest' にマッ # チすることに注意してください。そうしたくなければ、'^' や '$' を付け # るか、もっと詳しい正規表現を指定してください。 # # remove # remove は、パッケージが削除されることを除き、install と同様です。削 # 除されたパッケージの設定ファイルは、システムに残ったままになること # に注意してください。プラス記号がパッケージ名に (間に空白を含まずに) # 付加されると、識別されたパッケージを、削除ではなくインストールしま # す。 # # purge # パッケージが削除かつ完全削除 (すべての設定ファイルも削除) されるの # を除き、purge は remove と同じです。 # # source # source は、apt-get にソースパッケージを取得させます。APT はどのソー # スパッケージを取得するか決めるため、利用可能なパッケージを検査しま # す。その後、デフォルトリリースから最新の利用可能なソースパッケージ # を見つけ、カレントディレクトリへダウンロードします。デフォルトリ # リースは、可能であれば、APT::Default-Release オプション、-t オプ # ション、パッケージごとの pkg/release 構文で指定します。 # # ソースパッケージは、sources.list(5) ファイルの deb-src 行により、バ # イナリパッケージと分けて管理されます。つまり、ソースを取得したいリ # ポジトリを、それぞれ追加する必要があるということです。こうしない # と、誤った (古すぎ・新しすぎな) ソースバージョンを取得したり、何も # 取得できなくなります。 # # --compile オプションを指定すると、dpkg-buildpackage を用い # て、--host-architecture オプションで定義したアーキテクチャのバイナ # リ .deb パッケージをコンパイルします。--download-only を指定する # と、ソースパッケージを展開しません。 # # パッケージと同様に、ソース名の後ろにイコールと取得したいバージョン # を置くと、指定したバージョンのソースを取得できま # す。APT::Get::Only-Source オプションが暗黙のうちに有効になっている # ため、ソースパッケージ名とバージョンに厳密に一致させています。 # # ソースパッケージはインストールされず、バイナリパッケージのように # dpkg データベースで管理されないことに注意してください。ソースの # tarball のように、単にカレントディレクトリにダウンロードします。 # # build-dep # build-dep は、ソースパッケージの構築依存関係を満たすように、パッ # ケージのインストール・削除を行います。デフォルトでは、パッケージを # ネイティブに構築する依存関係を満たします。お望みな # ら、--host-architecture オプションにより、別のホストアーキテクチャ # を指定できます。 # # check # check は、パッケージキャッシュの更新や壊れた依存関係をチェックする # 診断ツールです。 # # download # download は、与えたバイナリパッケージを、カレントディレクトリにダウ # ンロードします。 # # clean # clean は、取得したパッケージのローカルリポジトリを掃除しま # す。/var/cache/apt/archives/ と /var/cache/apt/archives/partial/ か # らロックファイル以外すべて削除します。 # # autoclean # clean と同様に、autoclean は取得したパッケージのローカルリポジトリ # を掃除します。違いは、もうダウンロードされることがないパッケージ # ファイルや、ほとんど不要なパッケージファイルのみを削除することで # す。このため、長い期間、キャッシュが管理できずに肥大化することな # く、維持することができます。設定オプション APT::Clean-Installed に # off をセットしていれば、インストール済のパッケージファイルが削除さ # れるのを防げます。 # # autoremove # autoremove は、他のパッケージの依存関係を満たすために自動的にインス # トールされ、もう必要なくなったパッケージを削除するのに使用します。 # # changelog # changelog は、パッケージの changelog をダウンロード # し、sensible-pager で表示します。サーバ名とベースディレクトリは # APT::Changelogs::Server 変数で定義されます (例: Debian の # packages.debian.org/changelogs[1] や Ubuntu の # changelogs.ubuntu.com/changelogs[2])。デフォルトでは、インストール # されるバージョンの changelog を表示しますが、install コマンドと同じ # オプションを使用できます。 # #オプション # ここで設定オプションとして説明したコマンドラインオプションは、 すべて設 # 定ファイルを使用して設定できます。 設定ファイルに書いた真偽値をとるオプ # ションは -f-,--no-f, -f=no などのようにして上書きできます。 # # --no-install-recommends # 「推奨」パッケージをインストールする依存関係と見なしません。設定項 # 目: APT::Install-Recommends # # --install-suggests # 「提案」パッケージをインストールする依存関係と見なします。設定項目: # APT::Install-Suggests # # -d, --download-only # ダウンロードのみ - パッケージファイルの取得のみを行い、展開・インス # トールを行いません。設定項目: APT::Get::Download-Only # # -f, --fix-broken # 修復 - 依存関係が壊れたシステムの修正を試みます。このオプションを # install や remove と一緒に使うときは、APT が解決法を推測するの # で、パッケージを指定しなくてもかまいません。どのパッケージを指定し # ても、完全に問題を解決します。APT 自体は、システムに存在する破損し # たパッケージ依存関係を許すことができないので、初めて APT を実行する # 場合、このオプションが必要になることがあります。システムの依存関係 # 構造にかなり問題がある場合は、手動で修正するよう要求することもあり # ます。(通常は、問題のあるパッケージを取り除くのに dpkg --remove を # 使用します) このオプションを -m オプションと同時に使用すると、エ # ラーになる状況があるかもしれません。設定項目: APT::Get::Fix-Broken # # -m, --ignore-missing, --fix-missing # 欠落パッケージの無視 - パッケージが取得できなかったり、(パッケージ # の破損で) 取得した後の整合性チェックに失敗した場合、そのパッケージ # の処理を保留し最後まで処理を続けます。このオプションを -f オプショ # ンと同時に使用すると、エラーになる状況があるかもしれません。パッ # ケージをインストールするよう選択している (特にコマンドラインでの操 # 作する) 場合や、ダウンロードできなかった場合に、なにも表示せず保留 # することになります。設定項目: APT::Get::Fix-Missing # # --no-download # パッケージのダウンロードを無効にします。これはすでにダウンロードし # た .deb に対してのみ APT を行う場合に、--ignore-missing と併せて使 # うのがよいでしょう。設定項目: APT::Get::Download # # -q, --quiet # 静粛 - 進捗表示を省略し、ログをとるのに便利な出力を行います。最大 2 # つまで q を重ねることでより静粛にできます。また、-q=# のように静粛 # レベルを指定して、設定ファイルを上書きすることもできます。静粛レベ # ル 2 は -y を含んでいることに注意してください。APT が意図しない決定 # を行うかもしれないので -d, --print-uris, -s のような操作を行わない # オプションをつけずに -qq を使用するべきではありません。設定項目: # quiet # # -s, --simulate, --just-print, --dry-run, --recon, --no-act # 動作なし - なにが起こるのかのシミュレーションを行い、実際にはシステ # ムの変更を行いません。設定項目: APT::Get::Simulate # # ユーザとしてシミュレーションを実行すると、自動ではロックを行いませ # ん (Debug::NoLocking)。また、APT::Get::Show-User-Simulation-Note オ # プションが設定されている (デフォルト) と、これがシミュレーションで # あるという注意を表示します。root 権限で実行すると、NoLocking も 注 # 意も行われません (スーパーユーザは apt-get による警告などなくて # も、何をしているのか知っていなければなりません)。 # # シミュレートの結果、dpkg の動作を表す一連の行のそれぞれに、設定 # (Conf)、削除 (Remv)、展開 (Inst) を表示します。角カッコは壊れたパッ # ケージを表し、(まれに) 空の角カッコは大した問題ではないことを表しま # す。 # # -y, --yes, --assume-yes # プロンプトへの自動承諾 - すべてのプロンプトに自動的に "yes" と答 # え、非対話的に実行します。保留したパッケージの状態を変更したり、必 # 須パッケージを削除するような不適切な状況の場合、apt-get は処理を中 # 断します。設定項目: APT::Get::Assume-Yes # # --assume-no # 全ての質問に、自動的に "no" と答えます。設定項目: # APT::Get::Assume-No # # -u, --show-upgraded # 更新パッケージ表示 - 更新される全パッケージを一覧表示します。設定項 # 目: APT::Get::Show-Upgraded # # -V, --verbose-versions # 更新・インストールするパッケージのバージョンをすべて表示します。設 # 定項目: APT::Get::Show-Versions # # -a, --host-architecture # このオプションは、apt-get source --compile で構築するパッケージの # アーキテクチャや、どのようにクロス依存関係を解決するかを制御しま # す。デフォルトでは未定義で、これはホストアーキテクチャ # は、(APT::Architecture で定義した) ビルドアーキテクチャと同じという # 意味になります。設定項目: APT::Get::Host-Architecture。 # # -P, --build-profiles # このオプションは、apt-get source --compile でパッケージをビルドする # 際に有効化するビルドプロファイルや、どのようにクロス依存関係を解決 # するかを制御します。デフォルトでは有効化するビルドプロファイルはあ # りません。コンマで連結することで複数のビルドプロファイルを有効化で # きます。設定項目: APT::Get::Host-Architecture # # -b, --compile, --build # ソースパッケージをダウンロード後、コンパイルします。設定項目: # APT::Get::Compile # # --ignore-hold # 保留パッケージの無視 - パッケージの保留指示を無視して apt-get を行 # います。dist-upgrade と共に使用し、パッケージを大量に、保留解除する # のに便利です。設定項目: APT::Ignore-Hold # # --with-new-pkgs # upgrade と併せて使った場合に新しいパッケージのインストールを許可し # ます。これは新しい依存をインストールするために既にインストールされ # ているパッケージを更新する必要がある場合に有用です。パッケージを保 # 留する代わりに upgrade がパッケージをアップグレードして新しい依存を # インストールします。このオプションと併せて使った場合、upgrade が # パッケージを削除することはなく、新規追加を許可するだけであることに # 注意してください。設定項目: APT::Get::Upgrade-Allow-New # # --no-upgrade # パッケージ更新なし - install と同時に使用すると、no-upgrade は、コ # マンドラインで指定したパッケージが、すでにインストールしてある場合 # に更新を行いません。設定項目: APT::Get::Upgrade # # --only-upgrade # 新規パッケージインストールなし - install と同時に使用する # と、only-upgrade は、すでにインストールされているパッケージのみを # アップグレードし、新しいパッケージのインストール要求を無視しま # す。設定項目: APT::Get::Only-Upgrade # # --force-yes # 強制承諾 - 何か損傷を与えかねない動作をしようとした場合でも、確認な # しで実行してしまう危険なオプションです。よほどの状況でなければ、使 # うべきではありません。force-yes を使うと、あなたのシステムを破壊し # かねません! 設定項目: APT::Get::force-yes # # --print-uris # インストールするファイルを取得する代わりに、その URI を表示しま # す。URI には、パス、対象ファイル名、ファイルサイズ、予測される MD5 # ハッシュが含まれています。出力したファイル名が、常にリモートサイト # のファイル名と一致するわけではない、ということに注意してください! # これは source コマンド、update コマンドでも動作します。update で使 # 用したときには、MD5 やファイルサイズを含みません。このとき、圧縮 # ファイルの展開はユーザの責任において行ってください。設定項目: # APT::Get::Print-URIs # # --purge # 削除する際、「削除」ではなく「完全削除」を行います。「完全削除」を # 行うと指示したパッケージ名の後には、アスタリスク ("*") が付きま # す。remove --purge は purge コマンドと等価です。 設定項目: # APT::Get::Purge # # --reinstall # すでに最新版がインストールされていても、パッケージを再インストール # します。設定項目: APT::Get::ReInstall # # --list-cleanup # この機能はデフォルトで ON になっています。OFF にするには # --no-list-cleanup としてください。ON の場合、apt-get は古くなった # ファイルを確実に消去するため、自動的に /var/lib/apt/lists の中身を # 管理します。これを OFF にするのは、取得元リストを頻繁に変更する時ぐ # らいでしょう。設定項目: APT::Get::List-Cleanup # # -t, --target-release, --default-release # このオプションは、ポリシーエンジンへのデフォルト入力を制御しま # す。また、指定されたリリース文字列を使用し、デフォルト pin を優先度 # 990 で作成します。これは、/etc/apt/preferences にある一般設定を上書 # きします。pin で留めるのを明示されたパッケージには、このオプション # の値は影響を与えません。つまりこのオプションで、どの配布パッケージ # を取得するかを簡単に管理します。一般的な例としては、-t '2.1*', -t # unstable, -t sid のようになります。設定項目: # APT::Default-Release。apt_preferences(5) のマニュアルページも参照し # てください。 # # --trivial-only # 「重要でない」操作のみを行います。これは論理的に --assume-yes の仲 # 間と見なせます。--assume-yes は質問にすべて yes と答えます # が、--trivial-only はすべて no と答えます。設定項目: # APT::Get::Trivial-Only # # --no-remove # パッケージが削除される状況になったとき、プロンプトを表示せず中断し # ます。設定項目: APT::Get::Remove # # --auto-remove # コマンドが install か remove である場合、このオプションは使用してい # ない依存しているパッケージを削除し、autoremove コマンドのように動作 # します。設定項目: APT::Get::AutomaticRemove # # --only-source # source コマンドと build-dep コマンドでのみ意味があります。指定され # たソース名がバイナリテーブルにマップされないようにします。これ # は、このオプションを指定すると、バイナリパッケージ名を受け付けて対 # 応するソースパッケージを探すのではなく、引数にソースパッケージ名し # か受け付けなくなる、ということです。設定項目: APT::Get::Only-Source # # --diff-only, --dsc-only, --tar-only # ソースアーカイブの diff ファイルや dsc ファイル、tar ファイルのダウ # ンロードのみを行います。設定項目: APT::Get::Diff-Only, # APT::Get::Dsc-Only, APT::Get::Tar-Only # # --arch-only # 構築依存関係の解決を、アーキテクチャに依存したもののみ行います。設 # 定項目: APT::Get::Arch-Only # # --allow-unauthenticated # パッケージを確認できない場合に無視し、それについて質問しませ # ん。pbuilder のようなツールで便利です。設定項目: # APT::Get::AllowUnauthenticated # # --show-progress # パッケージのインストール、アップグレード、削除時にユーザにとってわ # かりやすい形で進捗情報をターミナルウィンドウ内に表示します。この # データの機械的に解析できるバージョンについては apt の doc ディレク # トリにある README.progress-reporting を見てください。設定項目: # Dpkg::Progress、 Dpkg::Progress-Fancy # # -h, --help # 使い方の短い要約を表示します。 # # -v, --version # プログラムのバージョンを表示します。 # # -c, --config-file # 設定ファイル。 使用する設定ファイルを指定します。 このプログラム # は、デフォルト設定ファイルを読んでから、この設定ファイルを読みま # す。 この設定をデフォルト設定ファイルよりも前に読む必要がある場合、 # APT_CONFIG 環境変数に指定してください。構文については apt.conf(5) # をご覧ください。 # # -o, --option # 設定オプションのセット。任意の設定オプションをセットします。 構文 # -o Foo::Bar=bar となります。 異なるオプションを設定するため、-o と # --option は、 複数回使用できます。 # #ファイル # /etc/apt/sources.list # パッケージ取得元の場所。 設定項目: Dir::Etc::SourceList # # /etc/apt/sources.list.d/ # パッケージ取得元の場所のファイル断片 設定項目: # Dir::Etc::SourceParts # # /etc/apt/apt.conf # APT 設定ファイル。 設定項目: Dir::Etc::Main # # /etc/apt/apt.conf.d/ # APT 設定ファイル断片。 設定項目: Dir::Etc::Parts # # /etc/apt/preferences # バージョンプリファレンスファイル。 ここに "pin"の設定を行います。 # つまり、別々の取得元や異なるディストリビューションのバージョンの、 # どこからパッケージを取得するかを設定します。 設定項目: # Dir::Etc::Preferences # # /etc/apt/preferences.d/ # バージョンプリファレンスファイル断片。 設定項目: # Dir::Etc::PreferencesParts # # /var/cache/apt/archives/ # 取得済みパッケージファイル格納エリア。 設定項目: # Dir::Cache::Archives # # /var/cache/apt/archives/partial/ # 取得中パッケージファイル格納エリア。 設定項目: Dir::Cache::Archives # (暗黙で partial を追加) # # /var/lib/apt/lists/ # sources.list(5) に指定した、パッケージリソースごとの状態情報格納エ # リア。 設定項目: Dir::State::Lists # # /var/lib/apt/lists/partial/ # 取得中状態情報格納エリア。 設定項目: Dir::State::Lists (暗黙で # partial を追加) # #関連項目 # apt-cache(8), apt-cdrom(8), dpkg(1), sources.list(5), apt.conf(5), apt- # config(8), apt-secure(8), /usr/share/doc/apt-doc/ にある APT ユーザガイ # ド, apt_preferences(5), APT Howto # #診断メッセージ # apt-get は正常終了時に 0 を返します。エラー時には十進の 100 を返しま # す。 # #バグ # APT バグページ[3] をご覧ください。 APT のバグを報告する場合は、 # /usr/share/doc/debian/bug-reporting.txt や reportbug(1) コマンドをご覧 # ください。 # #翻訳 # 倉澤 望 <nabetaro @debian.or.jp> (2003-2006,2009-2012), Debian JP # Documentation ML <debian -doc@debian.or.jp> # # この翻訳文書には未訳部分が含まれていることに注意してください。 翻訳がオ # リジナルに追従できていない場合、 内容を失わないようにこのようにしていま # す。 # #著者 # Gunthorpe Jason[FAMILY Given] # # [FAMILY Given] # #注記 # 1. packages.debian.org/changelogs # http://packages.debian.org/changelogs # # 2. changelogs.ubuntu.com/changelogs # http://changelogs.ubuntu.com/changelogs # # 3. APT バグページ # http://bugs.debian.org/src:apt #

このブログを検索

ごあいさつ

このWebサイトは、独自思考で我が道を行くユゲタの少し尖った思考のTechブログです。 毎日興味がどんどん切り替わるので、テーマはマルチになっています。 もしかしたらアイデアに困っている人の助けになるかもしれません。