Polkit-0.113+git_2919920+js38

Polkit の概要

Polkit パッケージは、権限情報を定義し操作するためのツールキットです。 非特権 (unprivileged) プロセス から特権 (privileged) プロセスへのアクセスを行う際に利用されます。

本パッケージは LFS-8.1 において正しくビルドでき動作することが確認されています。

[注記]

注記

Due to lack of relases, a tarball has been generated for use by BLFS, which includes a git checkout at ref 2919920, and a pending patch to use js38. The patch is included in the tarball for review.

パッケージ情報

Polkit の依存パッケージ

必須

GLib-2.52.3, js38-38.2.1

Recommended

[注記]

注記

Since systemd-logind uses PAM to register user sessions, it is a good idea to build Polkit with PAM support so systemd-logind can track Polkit sessions.

任意 (GNOME のビルド時に必要)

gobject-introspection-1.52.1

任意

docbook-xml-4.5, docbook-xsl-1.79.1, GTK-Doc-1.26, libxslt-1.1.29

Required Runtime Dependencies

Systemd-234

[注記]

注記

libxslt-1.1.29 をインストールしている場合は docbook-xml-4.5docbook-xsl-1.79.1 が必要です。 また libxslt-1.1.29 はインストールしていても、その DocBook パッケージ類をインストールしたくない場合は、後述する手順にて --disable-man-pages を指定することになります。

ユーザー情報: http://wiki.linuxfromscratch.org/blfs/wiki/polkit

Polkit のインストール

polkitd デーモンの起動には、これを制御するための専用のユーザーおよびグループが必要です。 そこで root ユーザーになって以下を実行します。

groupadd -fg 27 polkitd &&
useradd -c "PolicyKit Daemon Owner" -d /etc/polkit-1 -u 27 \
        -g polkitd -s /bin/false polkitd
[注記]

注記

When building Polkit with systemd logind support, the configure script explicitly checks if system is booted using systemd. This can cause problems if building the package in chroot, where the configure would fail to detect systemd. To workaround the problem, simply run the following command:

sed -i "s:/sys/fs/cgroup/systemd/:/sys:g" configure

一般ユーザーとして以下のコマンドを実行し Polkit をビルドします。

./configure --prefix=/usr                    \
            --sysconfdir=/etc                \
            --localstatedir=/var             \
            --disable-static                 &&
make

ビルド結果をテストする場合は make check を実行します。 すべてのテストを成功させるためには D-Bus デーモンを実行しておく必要があります。 なお ConsoleKit データベースがない場合に警告メッセージが出力されますが、これは特に問題なく無視して構いません。

root ユーザーになって以下を実行します。

make install

コマンド説明

--with-authfw=shadow: This switch enables the package to use the Shadow rather than the Linux PAM Authentication framework. Use it if you have not installed Linux PAM.

--disable-static: このスイッチはスタティックライブラリをインストールしないようにします。

--enable-gtk-doc: GTK-Doc をインストール済で API ドキュメントを再構築する場合に指定します。

Polkit の設定

PAM 設定

[注記]

注記

Linux PAM サポートを含めずに Polkit をビルドした場合は本節を読み飛ばしてください。

Linux PAM サポートを含めて Polkit をビルドしている場合、デフォルトでインストールされている PAM 設定ファイルを修正する必要があります。 これにより BLFS において polkit が正しく動作するものとなります。 root ユーザーになって以下のコマンドを実行してください。 Linux PAM 用の設定ファイルを生成します。

cat > /etc/pam.d/polkit-1 << "EOF"
# Begin /etc/pam.d/polkit-1

auth     include        system-auth
account  include        system-account
password include        system-password
session  include        system-session

# End /etc/pam.d/polkit-1
EOF

パッケージ構成

インストールプログラム: pkaction, pkcheck, pk-example-frobnicate, pkexec, pkttyagent, polkitd
インストールライブラリ: libpolkit-agent-1.so, libpolkit-gobject-1.so
インストールディレクトリ: /etc/polkit-1, /usr/include/polkit-1, /usr/lib/polkit-1, /usr/share/gtk-doc/html/polkit-1, /usr/share/polkit-1

概略説明

pkaction

登録されている PolicyKit アクションについての情報を取得するために用います。

pkcheck

プロセスがアクションを行う権限を有するかどうかをチェックするために用います。

pk-example-frobnicate

is an example program to test the pkexec command.

pkexec

認証されたユーザーが、他ユーザーとなってコマンド実行することを許可します。

pkttyagent

プロセスなどに対して、テキスト情報による権限エージェントを開始します。

polkitd

システムメッセージバス上にて、org.freedesktop.PolicyKit1 なる D-Bus サービスを提供します。

libpolkit-agent-1.so

Polkit の認証エージェント API 関数を提供します。

libpolkit-gobject-1.so

Polkit 認証 API 関数を提供します。

最終更新日: 2017-08-21 12:24:54 +0900