ユーティリティのデフォルト以外のディレクトリのビルドとインストール

AppArmor ゼロ知識学習 8、ソースコード構築 (5)では、Utilities の構築手順を詳しく紹介していますが、公式サイトで与えられているデフォルトのパラメータを完全に使用しています。デフォルトの /usr ではなく、指定したディレクトリにターゲット ファイルを生成する必要がある場合は、いくつかの変更を行う必要があります。この記事では、変更の方法について詳しく説明します。

次の 2 点を明記する必要があります。

(1) Utilities の構築は、前の手順 (環境変数の設定と libapparmor の構築) に基づいて実行する必要があります。これらの 2 つの手順については、AppArmor のゼロ知識学習 4. ソース コードの構築 (1)およびAppArmor のゼロ知識学習 5. ソース コードの構築 (2)を参照してください。

(2) 以上の libapparmor のデフォルト以外のディレクトリの構築とインストールは、パッケージを作成するための手順であり、/usr/local 配下に対象ファイルを配置しないため、実際には動作しません。実際に機能するのは、デフォルトのパラメーターに従って以前にビルドされた libapparmor 関連のコンポーネントです。

次に、Utilities カスタム インストール ディレクトリの構築とインストールを開始します。

(1) utils に入る目录

cd コマンドを使用して、apparmor ソース コードのルート ディレクトリの下にある utils ディレクトリに入ります。実際のコマンドと結果は次のとおりです。

penghao@Ding-Perlis-MP260S48:~/AppArmor/apparmor_2/apparmor$ cd utils/
penghao@Ding-Perlis-MP260S48:~/AppArmor/apparmor_2/apparmor/utils$ pwd
/home/penghao/AppArmor/apparmor_2/apparmor/utils

penghao@Ding-Perlis-MP260S48:~/AppArmor/apparmor_2/apparmor/utils$ ls
aa-audit           aa-autodep.pod       aa-complain.8.html  aa-disable.8        aa-enforce         aa-genprof.pod     aa-mergeprof.8.html  aa-remove-unknown         aa-unconfined.8       easyprof             po
aa-audit.8         aa-cleanprof         aa-complain.pod     aa-disable.8.html   aa-enforce.8       aa-logprof         aa-mergeprof.pod     aa-remove-unknown.8       aa-unconfined.8.html  logprof.conf         pod2htmd.tmp
aa-audit.8.html    aa-cleanprof.8       aa-decode           aa-disable.pod      aa-enforce.8.html  aa-logprof.8       aa-notify            aa-remove-unknown.8.html  aa-unconfined.pod     logprof.conf.5       python-tools-setup.py
aa-audit.pod       aa-cleanprof.8.html  aa-decode.8         aa-easyprof         aa-enforce.pod     aa-logprof.8.html  aa-notify.8          aa-remove-unknown.pod     apparmor              logprof.conf.5.html  README.md
aa-autodep         aa-cleanprof.pod     aa-decode.8.html    aa-easyprof.8       aa-genprof         aa-logprof.pod     aa-notify.8.html     aa-sandbox                apparmor.egg-info     logprof.conf.pod     severity.db
aa-autodep.8       aa-complain          aa-decode.pod       aa-easyprof.8.html  aa-genprof.8       aa-mergeprof       aa-notify.desktop    aa-sandbox.pod            build                 Makefile             test
aa-autodep.8.html  aa-complain.8        aa-disable          aa-easyprof.pod     aa-genprof.8.html  aa-mergeprof.8     aa-notify.pod        aa-unconfined             check_po.pl           notify.conf          vim

(2) コンパイル

make コマンドを実行してコンパイルします。実際のコマンドと結果は次のとおりです。

$ make
/usr/bin/pod2man aa-easyprof.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-easyprof.8
/usr/bin/pod2man aa-genprof.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-genprof.8
/usr/bin/pod2man aa-logprof.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-logprof.8
/usr/bin/pod2man aa-cleanprof.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-cleanprof.8
/usr/bin/pod2man aa-mergeprof.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-mergeprof.8
/usr/bin/pod2man aa-autodep.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-autodep.8
/usr/bin/pod2man aa-audit.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-audit.8
/usr/bin/pod2man aa-complain.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-complain.8
/usr/bin/pod2man aa-enforce.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-enforce.8
/usr/bin/pod2man aa-disable.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-disable.8
/usr/bin/pod2man aa-notify.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-notify.8
/usr/bin/pod2man aa-unconfined.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-unconfined.8
/usr/bin/pod2man aa-decode.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-decode.8
/usr/bin/pod2man aa-remove-unknown.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=8 > aa-remove-unknown.8
/usr/bin/pod2man logprof.conf.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=5 > logprof.conf.5
/usr/bin/pod2html --header --css apparmor.css --infile=aa-easyprof.pod --outfile=aa-easyprof.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-genprof.pod --outfile=aa-genprof.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-logprof.pod --outfile=aa-logprof.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-cleanprof.pod --outfile=aa-cleanprof.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-mergeprof.pod --outfile=aa-mergeprof.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-autodep.pod --outfile=aa-autodep.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-audit.pod --outfile=aa-audit.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-complain.pod --outfile=aa-complain.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-enforce.pod --outfile=aa-enforce.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-disable.pod --outfile=aa-disable.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-notify.pod --outfile=aa-notify.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-unconfined.pod --outfile=aa-unconfined.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-decode.pod --outfile=aa-decode.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=aa-remove-unknown.pod --outfile=aa-remove-unknown.8.html
/usr/bin/pod2html --header --css apparmor.css --infile=logprof.conf.pod --outfile=logprof.conf.5.html
make -C po all
make[1]: 进入目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/po”
msgfmt -c -o af.mo af.po
af.po:7: 警告:头部缺少文件头“Language”
msgfmt -c -o be.mo be.po
be.po:7: 警告:文件头“Last-Translator”仍然是默认值未改变be.po:7: 警告:头部缺少文件头“Language”
msgfmt -c -o bo.mo bo.po
bo.po:7: 警告:文件头“Last-Translator”仍然是默认值未改变bo.po:7: 警告:头部缺少文件头“Language”
msgfmt -c -o bs.mo bs.po
msgfmt -c -o cs.mo cs.po
cs.po:7: 警告:头部缺少文件头“Language”
msgfmt -c -o de.mo de.po
msgfmt -c -o en_GB.mo en_GB.po
msgfmt -c -o es.mo es.po
es.po:7: 警告:头部缺少文件头“Language”
msgfmt -c -o fa.mo fa.po
fa.po:7: 警告:头部缺少文件头“Language”
msgfmt -c -o fr.mo fr.po
msgfmt -c -o gl.mo gl.po
gl.po:7: 警告:文件头“Last-Translator”仍然是默认值未改变gl.po:7: 警告:头部缺少文件头“Language”
msgfmt -c -o hi.mo hi.po
msgfmt -c -o id.mo id.po
msgfmt -c -o it.mo it.po
msgfmt -c -o ko.mo ko.po
msgfmt -c -o oc.mo oc.po
oc.po:7: 警告:文件头“Last-Translator”仍然是默认值未改变oc.po:7: 警告:头部缺少文件头“Language”
msgfmt -c -o pl.mo pl.po
msgfmt -c -o pt_BR.mo pt_BR.po
pt_BR.po:7: 警告:头部缺少文件头“Language”
msgfmt -c -o pt.mo pt.po
msgfmt -c -o ro.mo ro.po
ro.po:7: 警告:头部缺少文件头“Language”
msgfmt -c -o ru.mo ru.po
msgfmt -c -o sv.mo sv.po
msgfmt -c -o tr.mo tr.po
msgfmt -c -o ug.mo ug.po
msgfmt -c -o uk.mo uk.po
msgfmt -c -o zh_CN.mo zh_CN.po
zh_CN.po:7: 警告:头部缺少文件头“Language”
make[1]: 离开目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/po”
make -C vim all
make[1]: 进入目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/vim”
/usr/bin/python3 create-apparmor.vim.py > apparmor.vim || { rm -f apparmor.vim ; exit 1; }
/usr/bin/pod2man apparmor.vim.pod --release="AppArmor 3.1.0" --center=AppArmor --stderr --section=5 > apparmor.vim.5
/usr/bin/pod2html --header --css apparmor.css --infile=apparmor.vim.pod --outfile=apparmor.vim.5.html
make[1]: 离开目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/vim”

(3)チェック

make check コマンドを実行して確認します。実際のコマンドと結果は次のとおりです。

$ make check PYFLAKES=/usr/bin/pyflakes3
LANG=C podchecker -warning -warning *.pod
aa-audit.pod pod syntax OK.
aa-autodep.pod pod syntax OK.
aa-cleanprof.pod pod syntax OK.
aa-complain.pod pod syntax OK.
aa-decode.pod pod syntax OK.
aa-disable.pod pod syntax OK.
aa-easyprof.pod pod syntax OK.
aa-enforce.pod pod syntax OK.
aa-genprof.pod pod syntax OK.
aa-logprof.pod pod syntax OK.
aa-mergeprof.pod pod syntax OK.
aa-notify.pod pod syntax OK.
aa-remove-unknown.pod pod syntax OK.
aa-sandbox.pod pod syntax OK.
aa-unconfined.pod pod syntax OK.
logprof.conf.pod pod syntax OK.
Checking aa-easyprof
Checking aa-genprof
Checking aa-logprof
Checking aa-cleanprof
Checking aa-mergeprof
Checking aa-autodep
Checking aa-audit
Checking aa-complain
Checking aa-enforce
Checking aa-disable
Checking aa-notify
Checking aa-unconfined
Checking apparmor
Checking test/common_test.py
Checking test/test-aa-cli-bootstrap.py
Checking test/test-aa-decode.py
Checking test/test-aa-easyprof.py
Checking test/test-aa-notify.py
Checking test/test-aa.py
Checking test/test-aare.py
Checking test/test-abi.py
Checking test/test-alias.py
Checking test/test-baserule.py
Checking test/test-boolean.py
Checking test/test-capability.py
Checking test/test-change_profile.py
Checking test/test-common.py
Checking test/test-config.py
Checking test/test-dbus.py
Checking test/test-example.py
Checking test/test-file.py
Checking test/test-include.py
Checking test/test-libapparmor-test_multi.py
Checking test/test-logparser.py
Checking test/test-minitools.py
Checking test/test-mount_parse.py
Checking test/test-mqueue.py
Checking test/test-network.py
Checking test/test-notify.py
Checking test/test-parser-simple-tests.py
Checking test/test-pivot_root_parse.py
Checking test/test-profile-list.py
Checking test/test-profiles.py
Checking test/test-profile-storage.py
Checking test/test-ptrace.py
Checking test/test-regex_matches.py
Checking test/test-rlimit.py
Checking test/test-severity.py
Checking test/test-signal.py
Checking test/test-translations.py
Checking test/test-unix_parse.py
Checking test/test-userns.py
Checking test/test-variable.py
make[1]: 进入目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/test”

=== test-aa-cli-bootstrap.py ===
.....
----------------------------------------------------------------------
Ran 5 tests in 0.109s

OK

=== test-aa-decode.py ===
..........
----------------------------------------------------------------------
Ran 10 tests in 0.297s

OK

=== test-aa-easyprof.py ===
.........................................
# vim:syntax=apparmor
# test-template
# AppArmor policy for foo
# ###AUTHOR###
# ###COPYRIGHT###
# ###COMMENT###

#include <tunables/global>

# No template variables specified

"/opt/bin/foo" {
  #include <abstractions/base>

  # No abstractions specified

  # No policy groups specified

  # No read paths specified

  # No write paths specified
bzzzt


..........................................................................................WARN: Manifest definition is potentially unsafe
found 'user-tmp' abstraction
..WARN: Manifest definition is potentially unsafe
profile_name 'bin/*'
..WARN: Manifest definition is potentially unsafe
@{VAR1}=f*o
WARN: Manifest definition is potentially unsafe
@{VAR2}=*foo
WARN: Manifest definition is potentially unsafe
@{VAR3}=fo*
WARN: Manifest definition is potentially unsafe
@{VAR4}=b{ar
WARN: Manifest definition is potentially unsafe
@{VAR5}=b{a,r}
WARN: Manifest definition is potentially unsafe
@{VAR6}=b}ar
WARN: Manifest definition is potentially unsafe
@{VAR7}=bar[0-9]
WARN: Manifest definition is potentially unsafe
@{VAR8}=b{ar
WARN: Manifest definition is potentially unsafe
@{VAR9}=foo/bar
..
----------------------------------------------------------------------
Ran 137 tests in 1.179s

OK

=== test-aa-notify.py ===
.....
----------------------------------------------------------------------
Ran 5 tests in 0.442s

OK

=== test-aa.py ===
..Traceback (most recent call last):
  File "/home/penghao/AppArmor/apparmor_2/apparmor/utils/test/./fake_ldd", line 60, in <module>
    raise Exception('unknown parameter in fake_ldd: ' + sys.argv[1])
Exception: unknown parameter in fake_ldd: invalid
..................................................................................
Execute target /tmp/aa-test-g1uyk9gs/file-not-found does not exist!
.
Execute target /dev/null is not a file!
...................................................................
----------------------------------------------------------------------
Ran 152 tests in 0.839s

OK

=== test-aare.py ===
............................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 220 tests in 0.009s

OK

=== test-abi.py ===
....................................................
----------------------------------------------------------------------
Ran 52 tests in 0.002s

OK

=== test-alias.py ===
..........................................
----------------------------------------------------------------------
Ran 42 tests in 0.001s

OK

=== test-baserule.py ===
............
----------------------------------------------------------------------
Ran 12 tests in 0.002s

OK

=== test-boolean.py ===
...............................................
----------------------------------------------------------------------
Ran 47 tests in 0.002s

OK

=== test-capability.py ===
.............................................................................WARN: unknown capability: foo
..............
----------------------------------------------------------------------
Ran 91 tests in 0.012s

OK

=== test-change_profile.py ===
...............................................................................................................................
----------------------------------------------------------------------
Ran 127 tests in 0.004s

OK

=== test-common.py ===
.........
----------------------------------------------------------------------
Ran 9 tests in 0.000s

OK

=== test-config.py ===
..
----------------------------------------------------------------------
Ran 2 tests in 0.001s

OK

=== test-dbus.py ===
..............................................................................................................................................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 334 tests in 0.015s

OK

=== test-example.py ===
.......
----------------------------------------------------------------------
Ran 7 tests in 0.000s

OK

=== test-file.py ===
..............................................................................................................................................................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 350 tests in 0.040s

OK

=== test-include.py ===
.......................................................................................
----------------------------------------------------------------------
Ran 87 tests in 0.122s

OK

=== test-libapparmor-test_multi.py ===
Testing libapparmor test_multi tests...
......................................................................................................................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 310 tests in 0.036s

OK

=== test-logparser.py ===
.......
----------------------------------------------------------------------
Ran 7 tests in 0.000s

OK

=== test-minitools.py ===
.......
----------------------------------------------------------------------
Ran 7 tests in 2.373s

OK

=== test-mount_parse.py ===
..........
----------------------------------------------------------------------
Ran 10 tests in 0.000s

OK

=== test-mqueue.py ===
.............................................................................................
----------------------------------------------------------------------
Ran 93 tests in 0.003s

OK

=== test-network.py ===
.....................................................................................................
----------------------------------------------------------------------
Ran 101 tests in 0.017s

OK

=== test-notify.py ===
.............
----------------------------------------------------------------------
Ran 13 tests in 0.001s

OK

=== test-parser-simple-tests.py ===
Searching for parser simple_tests... (this will take a while)
Running 1570 parser simple_tests...
....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
WARNING: endless loop detected: file /home/penghao/AppArmor/apparmor_2/apparmor/parser/tst/simple_tests/includes/recursive.include includes itself

WARNING: endless loop detected: file /home/penghao/AppArmor/apparmor_2/apparmor/parser/tst/simple_tests/includes/recursive.preamble includes itself
................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Ignoring no longer supported change hat declaration "^hat xattrs=(myvalue=foo) { /foo r," found in file: /home/penghao/AppArmor/apparmor_2/apparmor/parser/tst/simple_tests/xattrs/hats_01.sd line: 7
..............................................................................................................................................................................
----------------------------------------------------------------------
Ran 1570 tests in 0.360s

OK

=== test-pivot_root_parse.py ===
....
----------------------------------------------------------------------
Ran 4 tests in 0.000s

OK

=== test-profile-list.py ===
............................................................
----------------------------------------------------------------------
Ran 60 tests in 1.207s

OK

=== test-profiles.py ===
..
----------------------------------------------------------------------
Ran 2 tests in 0.212s

OK

=== test-profile-storage.py ===
......................................................................................
----------------------------------------------------------------------
Ran 86 tests in 0.003s

OK

=== test-ptrace.py ===
..........................................................................................................................................................................................
----------------------------------------------------------------------
Ran 186 tests in 0.010s

OK

=== test-regex_matches.py ===
........................................................................................................................................................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 344 tests in 0.007s

OK

=== test-rlimit.py ===
........................................................................................................................................
----------------------------------------------------------------------
Ran 136 tests in 0.004s

OK

=== test-severity.py ===
...................................WARN: unknown capability: UNKNOWN
WARN: unknown capability: UNKNOWN
.WARN: unknown capability: K*
WARN: unknown capability: K*
........
----------------------------------------------------------------------
Ran 44 tests in 0.041s

OK

=== test-signal.py ===
...................................................................................................................................................................................................................................
----------------------------------------------------------------------
Ran 227 tests in 0.012s

OK

=== test-translations.py ===
................
----------------------------------------------------------------------
Ran 16 tests in 2.166s

OK

=== test-unix_parse.py ===
............
----------------------------------------------------------------------
Ran 12 tests in 0.000s

OK

=== test-userns.py ===
.............................
----------------------------------------------------------------------
Ran 29 tests in 0.001s

OK

=== test-variable.py ===
.................................................................................................
----------------------------------------------------------------------
Ran 97 tests in 0.003s

OK
make[1]: 离开目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/test”
make[1]: 进入目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/vim”
LANG=C podchecker -warning -warning *.pod
apparmor.vim.pod pod syntax OK.
#Testing with all pythons
set -e;  python3  create-apparmor.vim.py > /dev/null;
make[1]: 离开目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/vim”

(4) インストール 

make install コマンドを実行してインストールします。実際のコマンドと結果は次のとおりです (DESTDIR= のパラメーターに注意してください)。

$ make install DESTDIR=/home/penghao/AppArmor/apparmor_2/output2
install -d /home/penghao/AppArmor/apparmor_2/output2/etc/apparmor
install -m 644 logprof.conf severity.db notify.conf /home/penghao/AppArmor/apparmor_2/output2/etc/apparmor
install -d /home/penghao/AppArmor/apparmor_2/output2/usr/sbin
# aa-easyprof is installed by python-tools-setup.py
install -m 755 aa-genprof aa-logprof aa-cleanprof aa-mergeprof aa-autodep aa-audit aa-complain aa-enforce aa-disable aa-notify aa-unconfined aa-decode aa-remove-unknown /home/penghao/AppArmor/apparmor_2/output2/usr/sbin
make -C po install DESTDIR=/home/penghao/AppArmor/apparmor_2/output2 NAME=apparmor-utils
make[1]: 进入目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/po”
mkdir -p /home/penghao/AppArmor/apparmor_2/output2//usr/share/locale
for lang in  af  be  bo  bs  cs  de  en_GB  es  fa  fr  gl  hi  id  it  ko  oc  pl  pt_BR  pt  ro  ru  sv  tr  ug  uk  zh_CN ; do \
        mkdir -p /home/penghao/AppArmor/apparmor_2/output2//usr/share/locale/${lang}/LC_MESSAGES ; \
        install -m 644 ${lang}.mo /home/penghao/AppArmor/apparmor_2/output2//usr/share/locale/${lang}/LC_MESSAGES/apparmor-utils.mo ; \
done
make[1]: 离开目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/po”
make install_manpages DESTDIR=/home/penghao/AppArmor/apparmor_2/output2
make[1]: 进入目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils”
install -d /home/penghao/AppArmor/apparmor_2/output2//usr/share/man/man5 ; install -m 644 logprof.conf.5 /home/penghao/AppArmor/apparmor_2/output2//usr/share/man/man5;   install -d /home/penghao/AppArmor/apparmor_2/output2//usr/share/man/man8 ; install -m 644 aa-easyprof.8 aa-genprof.8 aa-logprof.8 aa-cleanprof.8 aa-mergeprof.8 aa-autodep.8 aa-audit.8 aa-complain.8 aa-enforce.8 aa-disable.8 aa-notify.8 aa-unconfined.8 aa-decode.8 aa-remove-unknown.8 /home/penghao/AppArmor/apparmor_2/output2//usr/share/man/man8; 
make[1]: 离开目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils”
make -C vim install DESTDIR=/home/penghao/AppArmor/apparmor_2/output2
make[1]: 进入目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/vim”
install -d /home/penghao/AppArmor/apparmor_2/output2/usr/share/apparmor
install -m 644 apparmor.vim /home/penghao/AppArmor/apparmor_2/output2/usr/share/apparmor
make install_manpages DESTDIR=/home/penghao/AppArmor/apparmor_2/output2
make[2]: 进入目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/vim”
install -d /home/penghao/AppArmor/apparmor_2/output2//usr/share/man/man5 ; install -m 644 apparmor.vim.5 /home/penghao/AppArmor/apparmor_2/output2//usr/share/man/man5; 
make[2]: 离开目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/vim”
make[1]: 离开目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/vim”
/usr/bin/python3 python-tools-setup.py install --prefix=/usr --root=/home/penghao/AppArmor/apparmor_2/output2 --version=3.1.0
running install
/usr/lib/python3.10/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
  warnings.warn(
running build
running build_py
creating build
creating build/lib
creating build/lib/apparmor
copying staging/__init__.py -> build/lib/apparmor
copying staging/easyprof.py -> build/lib/apparmor
copying staging/aare.py -> build/lib/apparmor
copying staging/fail.py -> build/lib/apparmor
copying staging/profile_list.py -> build/lib/apparmor
copying staging/rules.py -> build/lib/apparmor
copying staging/regex.py -> build/lib/apparmor
copying staging/sandbox.py -> build/lib/apparmor
copying staging/logparser.py -> build/lib/apparmor
copying staging/ui.py -> build/lib/apparmor
copying staging/config.py -> build/lib/apparmor
copying staging/tools.py -> build/lib/apparmor
copying staging/severity.py -> build/lib/apparmor
copying staging/aa.py -> build/lib/apparmor
copying staging/profile_storage.py -> build/lib/apparmor
copying staging/common.py -> build/lib/apparmor
copying staging/notify.py -> build/lib/apparmor
copying staging/translations.py -> build/lib/apparmor
copying staging/cleanprofile.py -> build/lib/apparmor
creating build/lib/apparmor/rule
copying staging/rule/include.py -> build/lib/apparmor/rule
copying staging/rule/abi.py -> build/lib/apparmor/rule
copying staging/rule/change_profile.py -> build/lib/apparmor/rule
copying staging/rule/boolean.py -> build/lib/apparmor/rule
copying staging/rule/file.py -> build/lib/apparmor/rule
copying staging/rule/alias.py -> build/lib/apparmor/rule
copying staging/rule/userns.py -> build/lib/apparmor/rule
copying staging/rule/variable.py -> build/lib/apparmor/rule
copying staging/rule/mqueue.py -> build/lib/apparmor/rule
copying staging/rule/ptrace.py -> build/lib/apparmor/rule
copying staging/rule/rlimit.py -> build/lib/apparmor/rule
copying staging/rule/capability.py -> build/lib/apparmor/rule
copying staging/rule/__init__.py -> build/lib/apparmor/rule
copying staging/rule/signal.py -> build/lib/apparmor/rule
copying staging/rule/dbus.py -> build/lib/apparmor/rule
copying staging/rule/network.py -> build/lib/apparmor/rule
running install_lib
creating /home/penghao/AppArmor/apparmor_2/output2/usr/lib
creating /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10
creating /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages
creating /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/aare.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/fail.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/profile_list.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/rules.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/regex.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/sandbox.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/logparser.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/easyprof.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/ui.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/config.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/tools.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/severity.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/aa.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/profile_storage.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/common.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/__init__.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/notify.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
creating /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/include.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/abi.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/change_profile.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/boolean.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/file.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/alias.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/userns.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/variable.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/mqueue.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/ptrace.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/rlimit.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/capability.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/__init__.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/signal.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/dbus.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/network.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/translations.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/cleanprofile.py -> /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/aare.py to aare.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/fail.py to fail.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/profile_list.py to profile_list.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rules.py to rules.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/regex.py to regex.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/sandbox.py to sandbox.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/logparser.py to logparser.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/easyprof.py to easyprof.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/ui.py to ui.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/config.py to config.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/tools.py to tools.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/severity.py to severity.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/aa.py to aa.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/profile_storage.py to profile_storage.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/common.py to common.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/__init__.py to __init__.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/notify.py to notify.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/include.py to include.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/abi.py to abi.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/change_profile.py to change_profile.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/boolean.py to boolean.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/file.py to file.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/alias.py to alias.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/userns.py to userns.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/variable.py to variable.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/mqueue.py to mqueue.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/ptrace.py to ptrace.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/rlimit.py to rlimit.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/capability.py to capability.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/__init__.py to __init__.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/signal.py to signal.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/dbus.py to dbus.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/rule/network.py to network.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/translations.py to translations.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor/cleanprofile.py to cleanprofile.cpython-310.pyc
running install_egg_info
running egg_info
creating apparmor.egg-info
writing apparmor.egg-info/PKG-INFO
writing dependency_links to apparmor.egg-info/dependency_links.txt
writing top-level names to apparmor.egg-info/top_level.txt
writing manifest file 'apparmor.egg-info/SOURCES.txt'
reading manifest file 'apparmor.egg-info/SOURCES.txt'
writing manifest file 'apparmor.egg-info/SOURCES.txt'
Copying apparmor.egg-info to /home/penghao/AppArmor/apparmor_2/output2/usr/lib/python3.10/site-packages/apparmor-3.1.0-py3.10.egg-info
running install_scripts
creating /home/penghao/AppArmor/apparmor_2/output2/usr/bin
copying aa-easyprof -> /home/penghao/AppArmor/apparmor_2/output2/usr/bin
copying easyprof/easyprof.conf -> /home/penghao/AppArmor/apparmor_2/output2/etc/apparmor
creating /home/penghao/AppArmor/apparmor_2/output2/usr/share/apparmor/easyprof
creating /home/penghao/AppArmor/apparmor_2/output2/usr/share/apparmor/easyprof/templates
copying easyprof/templates/user-application -> /home/penghao/AppArmor/apparmor_2/output2/usr/share/apparmor/easyprof/templates
copying easyprof/templates/sandbox-x -> /home/penghao/AppArmor/apparmor_2/output2/usr/share/apparmor/easyprof/templates
copying easyprof/templates/default -> /home/penghao/AppArmor/apparmor_2/output2/usr/share/apparmor/easyprof/templates
copying easyprof/templates/sandbox -> /home/penghao/AppArmor/apparmor_2/output2/usr/share/apparmor/easyprof/templates
creating /home/penghao/AppArmor/apparmor_2/output2/usr/share/apparmor/easyprof/policygroups
copying easyprof/policygroups/user-application -> /home/penghao/AppArmor/apparmor_2/output2/usr/share/apparmor/easyprof/policygroups
copying easyprof/policygroups/opt-application -> /home/penghao/AppArmor/apparmor_2/output2/usr/share/apparmor/easyprof/policygroups

(5) 生成されたコンテンツを表示する

make DESTDIR=/home/penghao/AppArmor/apparmor_2/output2 を構成した後、実際に生成されたファイルとパスを確認します。

$ tree ../../output2
../../output2
├── etc
│   └── apparmor
│       ├── easyprof.conf
│       ├── logprof.conf
│       ├── notify.conf
│       └── severity.db
└── usr
    ├── bin
    │   └── aa-easyprof
    ├── lib
    │   └── python3.10
    │       └── site-packages
    │           ├── apparmor
    │           │   ├── aa.py
    │           │   ├── aare.py
    │           │   ├── cleanprofile.py
    │           │   ├── common.py
    │           │   ├── config.py
    │           │   ├── easyprof.py
    │           │   ├── fail.py
    │           │   ├── __init__.py
    │           │   ├── logparser.py
    │           │   ├── notify.py
    │           │   ├── profile_list.py
    │           │   ├── profile_storage.py
    │           │   ├── __pycache__
    │           │   │   ├── aa.cpython-310.pyc
    │           │   │   ├── aare.cpython-310.pyc
    │           │   │   ├── cleanprofile.cpython-310.pyc
    │           │   │   ├── common.cpython-310.pyc
    │           │   │   ├── config.cpython-310.pyc
    │           │   │   ├── easyprof.cpython-310.pyc
    │           │   │   ├── fail.cpython-310.pyc
    │           │   │   ├── __init__.cpython-310.pyc
    │           │   │   ├── logparser.cpython-310.pyc
    │           │   │   ├── notify.cpython-310.pyc
    │           │   │   ├── profile_list.cpython-310.pyc
    │           │   │   ├── profile_storage.cpython-310.pyc
    │           │   │   ├── regex.cpython-310.pyc
    │           │   │   ├── rules.cpython-310.pyc
    │           │   │   ├── sandbox.cpython-310.pyc
    │           │   │   ├── severity.cpython-310.pyc
    │           │   │   ├── tools.cpython-310.pyc
    │           │   │   ├── translations.cpython-310.pyc
    │           │   │   └── ui.cpython-310.pyc
    │           │   ├── regex.py
    │           │   ├── rule
    │           │   │   ├── abi.py
    │           │   │   ├── alias.py
    │           │   │   ├── boolean.py
    │           │   │   ├── capability.py
    │           │   │   ├── change_profile.py
    │           │   │   ├── dbus.py
    │           │   │   ├── file.py
    │           │   │   ├── include.py
    │           │   │   ├── __init__.py
    │           │   │   ├── mqueue.py
    │           │   │   ├── network.py
    │           │   │   ├── ptrace.py
    │           │   │   ├── __pycache__
    │           │   │   │   ├── abi.cpython-310.pyc
    │           │   │   │   ├── alias.cpython-310.pyc
    │           │   │   │   ├── boolean.cpython-310.pyc
    │           │   │   │   ├── capability.cpython-310.pyc
    │           │   │   │   ├── change_profile.cpython-310.pyc
    │           │   │   │   ├── dbus.cpython-310.pyc
    │           │   │   │   ├── file.cpython-310.pyc
    │           │   │   │   ├── include.cpython-310.pyc
    │           │   │   │   ├── __init__.cpython-310.pyc
    │           │   │   │   ├── mqueue.cpython-310.pyc
    │           │   │   │   ├── network.cpython-310.pyc
    │           │   │   │   ├── ptrace.cpython-310.pyc
    │           │   │   │   ├── rlimit.cpython-310.pyc
    │           │   │   │   ├── signal.cpython-310.pyc
    │           │   │   │   ├── userns.cpython-310.pyc
    │           │   │   │   └── variable.cpython-310.pyc
    │           │   │   ├── rlimit.py
    │           │   │   ├── signal.py
    │           │   │   ├── userns.py
    │           │   │   └── variable.py
    │           │   ├── rules.py
    │           │   ├── sandbox.py
    │           │   ├── severity.py
    │           │   ├── tools.py
    │           │   ├── translations.py
    │           │   └── ui.py
    │           └── apparmor-3.1.0-py3.10.egg-info
    │               ├── dependency_links.txt
    │               ├── PKG-INFO
    │               ├── SOURCES.txt
    │               └── top_level.txt
    ├── sbin
    │   ├── aa-audit
    │   ├── aa-autodep
    │   ├── aa-cleanprof
    │   ├── aa-complain
    │   ├── aa-decode
    │   ├── aa-disable
    │   ├── aa-enforce
    │   ├── aa-genprof
    │   ├── aa-logprof
    │   ├── aa-mergeprof
    │   ├── aa-notify
    │   ├── aa-remove-unknown
    │   └── aa-unconfined
    └── share
        ├── apparmor
        │   ├── apparmor.vim
        │   └── easyprof
        │       ├── policygroups
        │       │   ├── opt-application
        │       │   └── user-application
        │       └── templates
        │           ├── default
        │           ├── sandbox
        │           ├── sandbox-x
        │           └── user-application
        ├── locale
        │   ├── af
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── be
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── bo
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── bs
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── cs
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── de
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── en_GB
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── es
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── fa
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── fr
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── gl
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── hi
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── id
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── it
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── ko
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── oc
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── pl
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── pt
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── pt_BR
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── ro
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── ru
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── sv
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── tr
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── ug
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   ├── uk
        │   │   └── LC_MESSAGES
        │   │       └── apparmor-utils.mo
        │   └── zh_CN
        │       └── LC_MESSAGES
        │           └── apparmor-utils.mo
        └── man
            ├── man5
            │   ├── apparmor.vim.5
            │   └── logprof.conf.5
            └── man8
                ├── aa-audit.8
                ├── aa-autodep.8
                ├── aa-cleanprof.8
                ├── aa-complain.8
                ├── aa-decode.8
                ├── aa-disable.8
                ├── aa-easyprof.8
                ├── aa-enforce.8
                ├── aa-genprof.8
                ├── aa-logprof.8
                ├── aa-mergeprof.8
                ├── aa-notify.8
                ├── aa-remove-unknown.8
                └── aa-unconfined.8

74 directories, 141 files

生成ターゲットは、ここで output2 フォルダーの下に配置され、Utilities によって生成されるコンテンツを明確に確認できます。最後に、以前の出力ディレクトリにインストールする必要があります。

DESTDIR= パラメータを変更した後に再度インストールすると、実際のコマンドと結果は次のようになります。

$ make install DESTDIR=/home/penghao/AppArmor/apparmor_2/output
install -d /home/penghao/AppArmor/apparmor_2/output/etc/apparmor
install -m 644 logprof.conf severity.db notify.conf /home/penghao/AppArmor/apparmor_2/output/etc/apparmor
install -d /home/penghao/AppArmor/apparmor_2/output/usr/sbin
# aa-easyprof is installed by python-tools-setup.py
install -m 755 aa-genprof aa-logprof aa-cleanprof aa-mergeprof aa-autodep aa-audit aa-complain aa-enforce aa-disable aa-notify aa-unconfined aa-decode aa-remove-unknown /home/penghao/AppArmor/apparmor_2/output/usr/sbin
make -C po install DESTDIR=/home/penghao/AppArmor/apparmor_2/output NAME=apparmor-utils
make[1]: 进入目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/po”
mkdir -p /home/penghao/AppArmor/apparmor_2/output//usr/share/locale
for lang in  af  be  bo  bs  cs  de  en_GB  es  fa  fr  gl  hi  id  it  ko  oc  pl  pt_BR  pt  ro  ru  sv  tr  ug  uk  zh_CN ; do \
        mkdir -p /home/penghao/AppArmor/apparmor_2/output//usr/share/locale/${lang}/LC_MESSAGES ; \
        install -m 644 ${lang}.mo /home/penghao/AppArmor/apparmor_2/output//usr/share/locale/${lang}/LC_MESSAGES/apparmor-utils.mo ; \
done
make[1]: 离开目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/po”
make install_manpages DESTDIR=/home/penghao/AppArmor/apparmor_2/output
make[1]: 进入目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils”
install -d /home/penghao/AppArmor/apparmor_2/output//usr/share/man/man5 ; install -m 644 logprof.conf.5 /home/penghao/AppArmor/apparmor_2/output//usr/share/man/man5;   install -d /home/penghao/AppArmor/apparmor_2/output//usr/share/man/man8 ; install -m 644 aa-easyprof.8 aa-genprof.8 aa-logprof.8 aa-cleanprof.8 aa-mergeprof.8 aa-autodep.8 aa-audit.8 aa-complain.8 aa-enforce.8 aa-disable.8 aa-notify.8 aa-unconfined.8 aa-decode.8 aa-remove-unknown.8 /home/penghao/AppArmor/apparmor_2/output//usr/share/man/man8; 
make[1]: 离开目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils”
make -C vim install DESTDIR=/home/penghao/AppArmor/apparmor_2/output
make[1]: 进入目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/vim”
install -d /home/penghao/AppArmor/apparmor_2/output/usr/share/apparmor
install -m 644 apparmor.vim /home/penghao/AppArmor/apparmor_2/output/usr/share/apparmor
make install_manpages DESTDIR=/home/penghao/AppArmor/apparmor_2/output
make[2]: 进入目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/vim”
install -d /home/penghao/AppArmor/apparmor_2/output//usr/share/man/man5 ; install -m 644 apparmor.vim.5 /home/penghao/AppArmor/apparmor_2/output//usr/share/man/man5; 
make[2]: 离开目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/vim”
make[1]: 离开目录“/home/penghao/AppArmor/apparmor_2/apparmor/utils/vim”
/usr/bin/python3 python-tools-setup.py install --prefix=/usr --root=/home/penghao/AppArmor/apparmor_2/output --version=3.1.0
running install
/usr/lib/python3.10/site-packages/setuptools/command/install.py:34: SetuptoolsDeprecationWarning: setup.py install is deprecated. Use build and pip and other standards-based tools.
  warnings.warn(
running build
running build_py
running install_lib
creating /home/penghao/AppArmor/apparmor_2/output/usr/lib
creating /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10
creating /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages
creating /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/aare.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/fail.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/profile_list.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/rules.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/regex.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/sandbox.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/logparser.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/easyprof.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/ui.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/config.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/tools.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/severity.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/aa.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/profile_storage.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/common.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/__init__.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/notify.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
creating /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/include.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/abi.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/change_profile.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/boolean.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/file.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/alias.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/userns.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/variable.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/mqueue.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/ptrace.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/rlimit.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/capability.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/__init__.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/signal.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/dbus.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/rule/network.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule
copying build/lib/apparmor/translations.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
copying build/lib/apparmor/cleanprofile.py -> /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/aare.py to aare.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/fail.py to fail.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/profile_list.py to profile_list.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rules.py to rules.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/regex.py to regex.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/sandbox.py to sandbox.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/logparser.py to logparser.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/easyprof.py to easyprof.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/ui.py to ui.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/config.py to config.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/tools.py to tools.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/severity.py to severity.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/aa.py to aa.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/profile_storage.py to profile_storage.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/common.py to common.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/__init__.py to __init__.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/notify.py to notify.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/include.py to include.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/abi.py to abi.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/change_profile.py to change_profile.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/boolean.py to boolean.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/file.py to file.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/alias.py to alias.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/userns.py to userns.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/variable.py to variable.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/mqueue.py to mqueue.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/ptrace.py to ptrace.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/rlimit.py to rlimit.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/capability.py to capability.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/__init__.py to __init__.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/signal.py to signal.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/dbus.py to dbus.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/rule/network.py to network.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/translations.py to translations.cpython-310.pyc
byte-compiling /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor/cleanprofile.py to cleanprofile.cpython-310.pyc
running install_egg_info
running egg_info
writing apparmor.egg-info/PKG-INFO
writing dependency_links to apparmor.egg-info/dependency_links.txt
writing top-level names to apparmor.egg-info/top_level.txt
reading manifest file 'apparmor.egg-info/SOURCES.txt'
writing manifest file 'apparmor.egg-info/SOURCES.txt'
Copying apparmor.egg-info to /home/penghao/AppArmor/apparmor_2/output/usr/lib/python3.10/site-packages/apparmor-3.1.0-py3.10.egg-info
running install_scripts
copying aa-easyprof -> /home/penghao/AppArmor/apparmor_2/output/usr/bin
copying easyprof/easyprof.conf -> /home/penghao/AppArmor/apparmor_2/output/etc/apparmor
creating /home/penghao/AppArmor/apparmor_2/output/usr/share/apparmor/easyprof
creating /home/penghao/AppArmor/apparmor_2/output/usr/share/apparmor/easyprof/templates
copying easyprof/templates/user-application -> /home/penghao/AppArmor/apparmor_2/output/usr/share/apparmor/easyprof/templates
copying easyprof/templates/sandbox-x -> /home/penghao/AppArmor/apparmor_2/output/usr/share/apparmor/easyprof/templates
copying easyprof/templates/default -> /home/penghao/AppArmor/apparmor_2/output/usr/share/apparmor/easyprof/templates
copying easyprof/templates/sandbox -> /home/penghao/AppArmor/apparmor_2/output/usr/share/apparmor/easyprof/templates
creating /home/penghao/AppArmor/apparmor_2/output/usr/share/apparmor/easyprof/policygroups
copying easyprof/policygroups/user-application -> /home/penghao/AppArmor/apparmor_2/output/usr/share/apparmor/easyprof/policygroups
copying easyprof/policygroups/opt-application -> /home/penghao/AppArmor/apparmor_2/output/usr/share/apparmor/easyprof/policygroups

ユーティリティをインストールする前後の出力の変化を比較します。

取り付け前

$ tree ../../output
../../output
├── etc
│   └── apparmor
│       └── parser.conf
├── lib
│   └── apparmor
│       ├── profile-load
│       └── rc.apparmor.functions
├── sbin
│   └── apparmor_parser
├── usr
│   ├── bin
│   │   ├── aa-enabled
│   │   ├── aa-exec
│   │   └── aa-features-abi
│   ├── local
│   │   ├── include
│   │   │   ├── aalogparse
│   │   │   │   └── aalogparse.h
│   │   │   └── sys
│   │   │       ├── apparmor.h
│   │   │       └── apparmor_private.h
│   │   ├── lib
│   │   │   ├── libapparmor.a
│   │   │   ├── libapparmor.la
│   │   │   ├── libapparmor.so -> libapparmor.so.1.12.2
│   │   │   ├── libapparmor.so.1 -> libapparmor.so.1.12.2
│   │   │   ├── libapparmor.so.1.12.2
│   │   │   ├── perl5
│   │   │   │   └── 5.36
│   │   │   │       ├── core_perl
│   │   │   │       │   └── perllocal.pod
│   │   │   │       └── vendor_perl
│   │   │   │           ├── auto
│   │   │   │           │   └── LibAppArmor
│   │   │   │           │       └── LibAppArmor.so
│   │   │   │           └── LibAppArmor.pm
│   │   │   ├── pkgconfig
│   │   │   │   └── libapparmor.pc
│   │   │   └── python3.10
│   │   │       └── site-packages
│   │   │           ├── LibAppArmor
│   │   │           │   ├── __init__.py
│   │   │           │   ├── _LibAppArmor.cpython-310-x86_64-linux-gnu.so
│   │   │           │   ├── LibAppArmor.py
│   │   │           │   └── __pycache__
│   │   │           │       ├── __init__.cpython-310.pyc
│   │   │           │       └── LibAppArmor.cpython-310.pyc
│   │   │           └── LibAppArmor-3.1.0-py3.10.egg-info
│   │   │               ├── dependency_links.txt
│   │   │               ├── PKG-INFO
│   │   │               ├── SOURCES.txt
│   │   │               └── top_level.txt
│   │   └── share
│   │       └── man
│   │           ├── man2
│   │           │   ├── aa_change_hat.2
│   │           │   ├── aa_change_profile.2
│   │           │   ├── aa_find_mountpoint.2
│   │           │   ├── aa_getcon.2
│   │           │   ├── aa_query_label.2
│   │           │   └── aa_stack_profile.2
│   │           └── man3
│   │               ├── aa_features.3
│   │               ├── aa_kernel_interface.3
│   │               ├── aa_policy_cache.3
│   │               └── aa_splitcon.3
│   ├── sbin
│   │   ├── aa-status
│   │   └── apparmor_status -> aa-status
│   └── share
│       ├── locale
│       │   ├── af
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── ar
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── bg
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── bn
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── bo
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── bs
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── ca
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── ce
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── cs
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── cy
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── da
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── de
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── el
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── en_AU
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── en_CA
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── en_GB
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── es
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── et
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── fa
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── fi
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── fr
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── gl
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── gu
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── he
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── hi
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── hr
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── hu
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── id
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── it
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── ja
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── ka
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── km
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── ko
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── lo
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── lt
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── mk
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── mr
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── ms
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── nb
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── nl
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── oc
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── pa
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── pl
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── pt
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── pt_BR
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── ro
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── ru
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── si
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── sk
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── sl
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── sq
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── sr
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── sv
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── sw
│       │   │   └── LC_MESSAGES
│       │   │       └── aa-binutils.mo
│       │   ├── ta
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── th
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── tr
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── ug
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── uk
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── vi
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── wa
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── xh
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── zh_CN
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── zh_TW
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   └── zu
│       │       └── LC_MESSAGES
│       │           └── apparmor-parser.mo
│       └── man
│           ├── man1
│           │   ├── aa-enabled.1
│           │   ├── aa-exec.1
│           │   └── aa-features-abi.1
│           ├── man5
│           │   └── apparmor.d.5
│           ├── man7
│           │   ├── apparmor.7
│           │   └── apparmor_xattrs.7
│           └── man8
│               ├── aa-status.8
│               ├── aa-teardown.8
│               ├── apparmor_parser.8
│               └── apparmor_status.8 -> aa-status.8
└── var
    └── lib
        └── apparmor

169 directories, 127 files

インストール後

$ tree ../../output
../../output
├── etc
│   └── apparmor
│       ├── easyprof.conf
│       ├── logprof.conf
│       ├── notify.conf
│       ├── parser.conf
│       └── severity.db
├── lib
│   └── apparmor
│       ├── profile-load
│       └── rc.apparmor.functions
├── sbin
│   └── apparmor_parser
├── usr
│   ├── bin
│   │   ├── aa-easyprof
│   │   ├── aa-enabled
│   │   ├── aa-exec
│   │   └── aa-features-abi
│   ├── lib
│   │   └── python3.10
│   │       └── site-packages
│   │           ├── apparmor
│   │           │   ├── aa.py
│   │           │   ├── aare.py
│   │           │   ├── cleanprofile.py
│   │           │   ├── common.py
│   │           │   ├── config.py
│   │           │   ├── easyprof.py
│   │           │   ├── fail.py
│   │           │   ├── __init__.py
│   │           │   ├── logparser.py
│   │           │   ├── notify.py
│   │           │   ├── profile_list.py
│   │           │   ├── profile_storage.py
│   │           │   ├── __pycache__
│   │           │   │   ├── aa.cpython-310.pyc
│   │           │   │   ├── aare.cpython-310.pyc
│   │           │   │   ├── cleanprofile.cpython-310.pyc
│   │           │   │   ├── common.cpython-310.pyc
│   │           │   │   ├── config.cpython-310.pyc
│   │           │   │   ├── easyprof.cpython-310.pyc
│   │           │   │   ├── fail.cpython-310.pyc
│   │           │   │   ├── __init__.cpython-310.pyc
│   │           │   │   ├── logparser.cpython-310.pyc
│   │           │   │   ├── notify.cpython-310.pyc
│   │           │   │   ├── profile_list.cpython-310.pyc
│   │           │   │   ├── profile_storage.cpython-310.pyc
│   │           │   │   ├── regex.cpython-310.pyc
│   │           │   │   ├── rules.cpython-310.pyc
│   │           │   │   ├── sandbox.cpython-310.pyc
│   │           │   │   ├── severity.cpython-310.pyc
│   │           │   │   ├── tools.cpython-310.pyc
│   │           │   │   ├── translations.cpython-310.pyc
│   │           │   │   └── ui.cpython-310.pyc
│   │           │   ├── regex.py
│   │           │   ├── rule
│   │           │   │   ├── abi.py
│   │           │   │   ├── alias.py
│   │           │   │   ├── boolean.py
│   │           │   │   ├── capability.py
│   │           │   │   ├── change_profile.py
│   │           │   │   ├── dbus.py
│   │           │   │   ├── file.py
│   │           │   │   ├── include.py
│   │           │   │   ├── __init__.py
│   │           │   │   ├── mqueue.py
│   │           │   │   ├── network.py
│   │           │   │   ├── ptrace.py
│   │           │   │   ├── __pycache__
│   │           │   │   │   ├── abi.cpython-310.pyc
│   │           │   │   │   ├── alias.cpython-310.pyc
│   │           │   │   │   ├── boolean.cpython-310.pyc
│   │           │   │   │   ├── capability.cpython-310.pyc
│   │           │   │   │   ├── change_profile.cpython-310.pyc
│   │           │   │   │   ├── dbus.cpython-310.pyc
│   │           │   │   │   ├── file.cpython-310.pyc
│   │           │   │   │   ├── include.cpython-310.pyc
│   │           │   │   │   ├── __init__.cpython-310.pyc
│   │           │   │   │   ├── mqueue.cpython-310.pyc
│   │           │   │   │   ├── network.cpython-310.pyc
│   │           │   │   │   ├── ptrace.cpython-310.pyc
│   │           │   │   │   ├── rlimit.cpython-310.pyc
│   │           │   │   │   ├── signal.cpython-310.pyc
│   │           │   │   │   ├── userns.cpython-310.pyc
│   │           │   │   │   └── variable.cpython-310.pyc
│   │           │   │   ├── rlimit.py
│   │           │   │   ├── signal.py
│   │           │   │   ├── userns.py
│   │           │   │   └── variable.py
│   │           │   ├── rules.py
│   │           │   ├── sandbox.py
│   │           │   ├── severity.py
│   │           │   ├── tools.py
│   │           │   ├── translations.py
│   │           │   └── ui.py
│   │           └── apparmor-3.1.0-py3.10.egg-info
│   │               ├── dependency_links.txt
│   │               ├── PKG-INFO
│   │               ├── SOURCES.txt
│   │               └── top_level.txt
│   ├── local
│   │   ├── include
│   │   │   ├── aalogparse
│   │   │   │   └── aalogparse.h
│   │   │   └── sys
│   │   │       ├── apparmor.h
│   │   │       └── apparmor_private.h
│   │   ├── lib
│   │   │   ├── libapparmor.a
│   │   │   ├── libapparmor.la
│   │   │   ├── libapparmor.so -> libapparmor.so.1.12.2
│   │   │   ├── libapparmor.so.1 -> libapparmor.so.1.12.2
│   │   │   ├── libapparmor.so.1.12.2
│   │   │   ├── perl5
│   │   │   │   └── 5.36
│   │   │   │       ├── core_perl
│   │   │   │       │   └── perllocal.pod
│   │   │   │       └── vendor_perl
│   │   │   │           ├── auto
│   │   │   │           │   └── LibAppArmor
│   │   │   │           │       └── LibAppArmor.so
│   │   │   │           └── LibAppArmor.pm
│   │   │   ├── pkgconfig
│   │   │   │   └── libapparmor.pc
│   │   │   └── python3.10
│   │   │       └── site-packages
│   │   │           ├── LibAppArmor
│   │   │           │   ├── __init__.py
│   │   │           │   ├── _LibAppArmor.cpython-310-x86_64-linux-gnu.so
│   │   │           │   ├── LibAppArmor.py
│   │   │           │   └── __pycache__
│   │   │           │       ├── __init__.cpython-310.pyc
│   │   │           │       └── LibAppArmor.cpython-310.pyc
│   │   │           └── LibAppArmor-3.1.0-py3.10.egg-info
│   │   │               ├── dependency_links.txt
│   │   │               ├── PKG-INFO
│   │   │               ├── SOURCES.txt
│   │   │               └── top_level.txt
│   │   └── share
│   │       └── man
│   │           ├── man2
│   │           │   ├── aa_change_hat.2
│   │           │   ├── aa_change_profile.2
│   │           │   ├── aa_find_mountpoint.2
│   │           │   ├── aa_getcon.2
│   │           │   ├── aa_query_label.2
│   │           │   └── aa_stack_profile.2
│   │           └── man3
│   │               ├── aa_features.3
│   │               ├── aa_kernel_interface.3
│   │               ├── aa_policy_cache.3
│   │               └── aa_splitcon.3
│   ├── sbin
│   │   ├── aa-audit
│   │   ├── aa-autodep
│   │   ├── aa-cleanprof
│   │   ├── aa-complain
│   │   ├── aa-decode
│   │   ├── aa-disable
│   │   ├── aa-enforce
│   │   ├── aa-genprof
│   │   ├── aa-logprof
│   │   ├── aa-mergeprof
│   │   ├── aa-notify
│   │   ├── aa-remove-unknown
│   │   ├── aa-status
│   │   ├── aa-unconfined
│   │   └── apparmor_status -> aa-status
│   └── share
│       ├── apparmor
│       │   ├── apparmor.vim
│       │   └── easyprof
│       │       ├── policygroups
│       │       │   ├── opt-application
│       │       │   └── user-application
│       │       └── templates
│       │           ├── default
│       │           ├── sandbox
│       │           ├── sandbox-x
│       │           └── user-application
│       ├── locale
│       │   ├── af
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── ar
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── be
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-utils.mo
│       │   ├── bg
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── bn
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── bo
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── bs
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── ca
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── ce
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── cs
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── cy
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── da
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── de
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── el
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── en_AU
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── en_CA
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── en_GB
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── es
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── et
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── fa
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── fi
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       └── apparmor-parser.mo
│       │   ├── fr
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── gl
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── gu
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── he
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── hi
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── hr
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── hu
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── id
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── it
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── ja
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── ka
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── km
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── ko
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── lo
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── lt
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── mk
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── mr
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── ms
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── nb
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── nl
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── oc
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── pa
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── pl
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── pt
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── pt_BR
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── ro
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── ru
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── si
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── sk
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── sl
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── sq
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── sr
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── sv
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── sw
│       │   │   └── LC_MESSAGES
│       │   │       └── aa-binutils.mo
│       │   ├── ta
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── th
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── tr
│       │   │   └── LC_MESSAGES
│       │   │       ├── aa-binutils.mo
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── ug
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── uk
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── vi
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── wa
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── xh
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   ├── zh_CN
│       │   │   └── LC_MESSAGES
│       │   │       ├── apparmor-parser.mo
│       │   │       └── apparmor-utils.mo
│       │   ├── zh_TW
│       │   │   └── LC_MESSAGES
│       │   │       └── apparmor-parser.mo
│       │   └── zu
│       │       └── LC_MESSAGES
│       │           └── apparmor-parser.mo
│       └── man
│           ├── man1
│           │   ├── aa-enabled.1
│           │   ├── aa-exec.1
│           │   └── aa-features-abi.1
│           ├── man5
│           │   ├── apparmor.d.5
│           │   ├── apparmor.vim.5
│           │   └── logprof.conf.5
│           ├── man7
│           │   ├── apparmor.7
│           │   └── apparmor_xattrs.7
│           └── man8
│               ├── aa-audit.8
│               ├── aa-autodep.8
│               ├── aa-cleanprof.8
│               ├── aa-complain.8
│               ├── aa-decode.8
│               ├── aa-disable.8
│               ├── aa-easyprof.8
│               ├── aa-enforce.8
│               ├── aa-genprof.8
│               ├── aa-logprof.8
│               ├── aa-mergeprof.8
│               ├── aa-notify.8
│               ├── aa-remove-unknown.8
│               ├── aa-status.8
│               ├── aa-teardown.8
│               ├── aa-unconfined.8
│               ├── apparmor_parser.8
│               └── apparmor_status.8 -> aa-status.8
└── var
    └── lib
        └── apparmor

183 directories, 268 files

おすすめ

転載: blog.csdn.net/phmatthaus/article/details/130293247