私は最近nautilusからNemoに移行しました。 PDFを読んで、[ファイル]> [含むフォルダーを開く]オプションを選択しました。
このメッセージが表示されました:
Failed to execute child process "nemo" (Permission denied)
なぜこれが起こったのですか?
私に何ができる?
この問題は、AppArmorがevinceが実行できることを制限しているためと思われます。回避策は、証拠のためにAppArmorを無効にすることです。
Sudo ln -s /etc/apparmor.d/usr.bin.evince /etc/apparmor.d/disable/usr.bin.evince
Sudo /etc/init.d/apparmor restart
この問題の詳細については、この link をご覧ください。
保護を完全にオフにするのではなく、許容されるすべてのツールの行を/usr/bin/evince { ... }
ブロックに追加できます
/etc/apparmor.d/usr.bin.evince
行の形式は次のとおりです。
/path/to/binary ixr,
次に、AppArmorを再起動します。
Sudo service apparmor restart
OSE が指摘したように、この問題はAppArmorがevinceが起動できるプログラムを制限しているためです。 /etc/apparmor.d/usr.bin.evince
を編集することにより、Evinceの起動が許可されているアプリケーションのリストにnemoを追加できます(root権限が必要です)
次のようなファイルのセクションを見つけます。
# By default, we won't support launching a terminal program in Xterm or
# KDE's konsole. It opens up too many unnecessary files for most users.
# People who need this functionality can uncomment the following:
##include <abstractions/ubuntu-xterm>
##include <abstractions/ubuntu-konsole>
/usr/bin/evince rmPx,
/usr/bin/evince-previewer Px,
/usr/bin/Yelp Cx -> sanitized_helper,
/usr/bin/bug-buddy px,
# 'Show Containing Folder' (LP: #1022962)
/usr/bin/nautilus Cx -> sanitized_helper, # Gnome
/usr/bin/pcmanfm Cx -> sanitized_helper, # LXDE
/usr/bin/krusader Cx -> sanitized_helper, # KDE
/usr/bin/thunar Cx -> sanitized_helper, # XFCE
次の行を追加します:/usr/bin/nemo Cx -> sanitized_helper, # Gnome,Linux Mint,etc
でAppArmorを再起動します
Sudo /etc/init.d/apparmor restart
Evinceがnemoを起動できるようになります。