以下各小節將會列出最常見的問題以及使用 Novell AppArmor 時會發生的錯誤訊息。
如果您在進行安裝時選擇了 GNOME 或 KDE 桌面,系統會依預設安裝 AppArmor。如果您選擇了或,則依預設 AppArmor 將不包含在內。在這些情況中,請使用 YaST 來安裝缺少的套件。如需更多相關資訊,請參閱 Novell AppArmor 2.0 安裝和快速入門指南。
當您發現異常的應用程式行為或其他的應用程式問題時,請先檢查記錄檔案中的拒絕訊息,並查看 AppArmor 對於應用程式的限制是否過當。
若要檢查拒絕訊息,請啟動 + 並移至 。為應用程式稽核報告選擇和。您可以篩選日期和時間以縮小應用程式行為開始的特定期間。
Apache 未正確啟動,或者未提供網頁,且您剛完成新模組安裝或進行組態變更。
當您安裝其他的 Apache 模組時 (例如 mod-apparmor),或者進行 Apache 組態變更時,您都必須再次設定 Apache 以取得必須新增至設定檔的其他規則。
當報告功能產生超過預設大小的 HTML 或 CSV 檔案時,該檔案將無法傳送。郵件伺服器對於電子郵件大小有嚴格的預設限制。該限制會阻擋 AppArmor 的功能,使其無法傳送基於報告目的所產生的電子郵件。如果您無法收到郵件,可能就是因為這個原因。
使用者必須注意郵件大小限制,且必須檢查歸檔以查看是否收到電子郵件。
AppArmor 會永遠載入並套用此設定檔目錄 (/etc/apparmor.d/) 中可用的所有設定檔。如果您決定不要將設定檔套用至某些應用程式時,可將這些設定檔刪除,或將其移動至 AppArmor 不會進行檢查的其他位置中。
AppArmor 作業會產生各種錯誤。以下列出可能的錯誤及解決方法。
如果您以非 root 使用者的身份執行 logprof,您可能會看到此錯誤訊息:
tux@localhost:~> /usr/sbin/logprof Can’t find apparmor_parser.
![]() | 注 |
|---|---|
您只能以 root 身份執行 logprof。 | |
以非 root 使用者身份執行 genprof 時將會產生類似的結果:
tux@localhost:~> /usr/sbin/genprof /usr/sbin/genprof must be run as root.
您必須以 root 身份執行 apparmor 啟動和 apparmor 停止程序檔。以非 root 使用者身份執行時將會產生此結果:
tux@localhost:~> /etc/init.d/apparmor stop /sbin/apparmor_parser: Sorry. You need root priveleges to run this program. Unloading AppArmor profiles..failed
以下範例顯示剖析錯誤的語法。
手動編輯 Novell AppArmor 設定檔將會導致語法錯誤。如果您嘗試以設定檔中的錯誤語法來啟動或重新啟動 AppArmor 時,將會看到以下的錯誤結果:
localhost:~ # /etc/init.d/apparmor start Loading AppArmor profiles AppArmor parser error, line 2: Found unexpected character: ’h’ Profile /etc/apparmor.d/usr.sbin.squid failed to load failed