Difference between revisions of "Pacman (日本語)"

From ArchWiki
Jump to: navigation, search
m
m ({{out of date}} +reason)
Line 2: Line 2:
 
[[Category:Utilities (日本語)]]
 
[[Category:Utilities (日本語)]]
 
[[Category:日本語]]
 
[[Category:日本語]]
{{Out of date}}
+
{{Out of date|この記事の内容は古くなっており必要な情報が不足しています。[[Pacman|英語版]]を参照してください。}}
 
[[cs:Pacman]]
 
[[cs:Pacman]]
 
[[da:Pacman]]
 
[[da:Pacman]]

Revision as of 07:04, 10 October 2012

Tango-view-refresh-red.pngThis article or section is out of date.Tango-view-refresh-red.png

Reason: この記事の内容は古くなっており必要な情報が不足しています。英語版を参照してください。 (Discuss in Talk:Pacman (日本語)#)

概要

PacmanパッケージマネージャはArch Linuxの大きな特徴のひとつです。Pacmanはシンプルなバイナリのパッケージ形式と簡単に利用できるビルドシステムから成っています(makepkgABSを参照)。PacmanでArchの公式リポジトリにあるパッケージや、ユーザー自身が作成したパッケージを容易に管理することができます。

Pacmanはマスターサーバーと同期してシステムを最新に保ちます。また、単純なコマンドで自分の欲しいパッケージとそれに必要な別のパッケージをダウンロード、インストールすることができます。

PacmanはCで書かれているため、軽快で軽量、そして可搬性に優れています。パッケージ形式には.tar.gz形式を採用しており、そのため更に軽快に動作します。似たようなフォーマットにbzipがありますが、gzip形式はbzip形式と比べファイルサイズこそ幾分大きめになりますが、素早く解凍することができるので、インストールにかかる時間は短くなります。

設定

pacmanの設定は/etc/pacman.confに記述されています。ここでpacmanがどのように動作するかを決めることができます。より詳しい情報はman pacman.confにあります。

全般設定

全般的な設定は[options] セクションにあります。ここで設定されている項目についてはmanかデフォルトのpacman.confを参照してください。

アップグレードさせないパッケージを設定

ある特定のパッケージをアップデートさせないようにするには、このセクションで以下のように記述します。 例:kernel26のアップデートをスキップ

IgnorePkg=kernel26

アップグレードをさせないグループを設定

パッケージの場合と同様に、アップグレードさせないグループを指定することができます。 例:gnomeグループのパッケージ一覧をアップデートさせない

IgnoreGroup=gnome

リポジトリ

pacman.confで言及されているように、このセクションではどのリポジトリを使うかを決めています。リポジトリはここで直接設定することもできますし、他のファイルから読み込ませることもできます。

公式リポジトリは全て同じファイル/etc/pacman.d/mirrorlistを読み込むように設定されています。このファイルは変数'$repo'を含んでおり、一つのリストを維持するだけで良いようになっています。

以下の例では、多くのMirrors ミラーサイトをもった公式リポジトリを設定しています。速度制限があるため、ftp.archlinux.orgは使わないようにしましょう[1]

[core]
# Add your preferred servers here, they will be used first
Include=/etc/pacman.d/mirrorlist

[extra]
# Add your preferred servers here, they will be used first
Include=/etc/pacman.d/mirrorlist

[community]
# Add your preferred servers here, they will be used first
Include=/etc/pacman.d/mirrorlist
Note: [testing]リポジトリを使う場合には注意が必要です。このリポジトリにあるパッケージは活発に開発が進んでいるため、更新したら動かなくなるものもあります。[testing]リポジトリを使う人は更新情報が流れているarch-dev-publicメーリングリストを購読するのをお薦めします。


使い方

Note: pacmanで何ができるかをちゃんと学びたい場合、man pacmanを参照してください。以下にあるのはpacmanでできることのほんの一例です。

パッケージのインストール

パッケージをインストール/アップグレードする前に、ローカルにあるデータベースをリモートのリポジトリに同期させた方が良いでしょう。

pacman -Sy

これは、次のコマンドと同じ意味です。

pacman --sync --refresh

ひとつ、あるいは複数のパッケージをインストール/アップグレードするには、以下のコマンドを入力します。

pacman -S パッケージ名1 パッケージ名2

異なるリポジトリにそれぞれバージョンの異なるパッケージが存在することがあります(例:extraリポジトリとtestingリポジトリ)。このような場合、どちらをインストールするかを明示してやることができます。

pacman -S extra/パッケージ名
pacman -S testing/パッケージ名

パッケージの削除

あるパッケージを、そのパッケージが必要としていたものを残したまま削除するには以下のようにコマンドを入力します。

pacman -R パッケージ名

削除したいパッケージと、そのパッケージだけが必要としている他のパッケージを一緒に削除するには、以下のようにコマンドを入力します。

pacman -Rs パッケージ名

デフォルトでは、pacmanは削除されたパッケージの設定ファイルを*.pacsaveという拡張子をつけてバックアップします。もしこれらのファイルも一緒に削除したい場合、以下のようにコマンドを入力します。

pacman -Rn パッケージ名

上記2つのコマンドはもちろん組み合わせることができます。ですので、あるパッケージを、設定ファイル、依存しているパッケージ全てを本当に削除したい場合、以下のようにコマンドを入力します。

pacman -Rsn パッケージ名

Note! Pacmanはパッケージがインストールされた後に作成された設定ファイルを削除しません。$HOMEディレクトリ下の設定ファイルなどは手動で削除してください。

システムのアップグレード

Pacmanは以下のコマンドひとつで全てのパッケージをアップデートさせることができます。ユーザーのシステムに必要なアップデートの量によっては少し時間がかかります。

pacman -Su

しかしながら、上のコマンドよりも-yオプションを付けてリポジトリと同期させた後にアップデートする方が良いです。

pacman -Syu

pacmanによってシステムをアップデート、管理をするための情報はPackage Management FAQsにより詳しくあります。

パッケージ・データベースに問い合わせる

Pacmanを使ってパッケージ名と説明の両方を検索にかけることができます。

pacman -Ss 検索ワード

既にインストールしたパッケージ内を検索するには、

pacman -Qs 検索ワード

パッケージ名が分かっていれば、より詳しい情報を得ることができます。

pacman -Si パッケージ名
pacman -Qi パッケージ名

あるパッケージによってインストールされたファイルの一覧を得るには以下のコマンドを入力します。

pacman -Ql パッケージ名

また、あるファイルがどのパッケージによってインストールされたかを調べることができます。

pacman -Qo ファイルのパス

孤立した、他のパッケージに必要とされていないパッケージの一覧を得るには次のように入力します。

pacman -Qdt

Pacmanでローカルのデータベースに問い合わせるには-Qフラグを付けます。

pacman -Q --help

を参照してください。 また、同期しているデータベースに問い合わせるには-Sフラグを付けます。

pacman -S --help

を参照してください。 より詳しい情報はpacman(8) を参照してください。

インストール済みパッケージの一覧の取得とバックアップ

定期的にインストール済みのパッケージリストをバックアップした方が良いです。復旧できないようなシステムのクラッシュが起きたときでも、pacmanは再インストール後に同じパッケージの全てを簡単に入れ直すことができます。

まず、現在のパッケージのうち、リポジトリにあるもの全てをリストアップします。

pacman -Qqe | grep -v "$(pacman -Qmq)" > pkglist

出力されたpkglistはUSBスティックなどの他のメディアに保管しておきます。

新規インストールしたPCにpkglistをコピーし、コピー先のディレクトリに移動します。 以下のコマンドを入力すると、pkglistにあるパッケージ全てがインストールされます。

pacman -S $(cat pkglist)

より詳しい情報

Pacmanは非常に拡張性の高いツールです。他の特徴を以下に示します。

  • インストールをしないで、パッケージをダウンロードするにとどめます。
pacman -Sw パッケージ名
  • ローカルにあるパッケージ(リポジトリに存在しないもの)をインストールします。
pacman -U パッケージのあるディレクトリ/パッケージ名-バージョン.pkg.tar.gz
  • リポジトリにない、リモートのパッケージをURIを入力してインストールします。
pacman -U http://www.examplepackage/repo/examplepkg.tar.gz
  • 現在インストールされていない、パッケージのキャッシュ(/var/cache/pacman/pkg)を削除します。
pacman -Sc
  • パッケージのキャッシュを全て削除します。
pacman -Scc 
Warning: pacman -Sccを行うときは、全てのパッケージについて downgradeを行う必要がないことを確認してください。pacman -Sccはパッケージのキャッシュを全て削除します。
  • 孤立したパッケージを削除します(繰り返しますが、実行するときは注意してください!)
pacman -Rs $(pacman -Qtdq)
  • 全てのパッケージを再インストールするには以下のように入力します(リポジトリにあるものだけですが)。
pacman -S $(pacman -Qq | grep -v "$(pacman -Qmq)")
  • ローカルのパッケージの名前とサイズを整列させて出力します。
LANG=C pacman -Qi | sed -n '/^Name[^:]*: \(.*\)/{s//\1 /;x};/^Installed[^:]*: \(.*\)/{s//\1/;H;x;s/\n//;p}' | sort -nk2

より詳しい使い方一覧はpacman --helpman pacmanを参照してください。

設定

Pacmanの設定は/etc/pacman.confで行います。設定ファイルの詳しい情報はman pacman.confにあります。

全般の設定

全般の設定は[options]セクションに記述します。何ができるかはmanやデフォルトのpacman.confを参照してください。

リポジトリ

このセクションでは/etc/pacman.confに書いてあるように、どのリポジトリを利用するかを設定します。設定を直接記述する以外に、別のファイルをインクルードすることもできます。 公式リポジトリは全て同じファイル(/etc/pacman.d/mirrorlist)を利用しています。このファイルには変数'$repo'が含まれているため、利用者は1つのリストを管理するだけで済みます。

多くのmirrorsを含んだ公式リポジトリの例を以下に示します。ftp.archlinux.orgを使うのは[速度制限があるため]避けた方が良いです。

[core]
# Add your preferred servers here, they will be used first
Include = /etc/pacman.d/mirrorlist

[extra]
# Add your preferred servers here, they will be used first
Include = /etc/pacman.d/mirrorlist

[community]
# Add your preferred servers here, they will be used first
Include = /etc/pacman.d/mirrorlist

Template:Box Note

エラー

not found in sync db

というエラーが発生した場合、大抵の場合はリポジトリが正しく設定されていないことが原因になっています。

より詳しい記事

Man Pages

関連記事

外部リンク