xrdpをインストールするようにSELinuxを設定するためにこの行を実行しようとするたびにこれ指導時間:
# chcon --type=bin_t /usr/sbin/xrdp
# chcon --type=bin_t /usr/sbin/xrdp-sesman
次のエラーが発生します。
chcon: can't apply partial context to unlabeled file '/usr/sbin/xrdp'
chcon: can't apply partial context to unlabeled file '/usr/sbin/xrdp-sesman'
CentOS 7.2 64ビットを使用しています。
答え1
私もCentOS 7を使用しており、これが私にとって効果的でした。
chcon -h system_u:object_r:bin_t:s0 /usr/sbin/xrdp
chcon -h system_u:object_r:bin_t:s0 /usr/sbin/xrdp-sesman
答え2
次長はより多くの情報を提供する必要があります。これは以前に議論されたことがあります(しかし私はそうではありません)。重複)。
例えば、
- 存在するchcon:SELinuxでnagiosをインストールすると、タグ付けされていないファイルに部分コンテキストを適用できません。、Sergei Lomakovはファイルに最初に
semanage
。 - 存在するLinux chcon:表示されていないファイルに部分コンテキストを適用できません。、提案された回避策はコマンドで完全な型を使用することです
chcon
(ただし、決定型を最初に使用する必要がありますls -Z
)。コロン()は:
階層を表しているため、通常は完全修飾型の名前に含まれます。
たとえば、例のls -lZ
リストに次のラベルを付けます。
$ ls -lZ msginit msgmerge msgunfmt
-rwxr-xr-x. root root unconfined_u:object_r:bin_t:s0 msginit
-rwxr-xr-x. root root unconfined_u:object_r:bin_t:s0 msgmerge
-rwxr-xr-x. root root unconfined_u:object_r:bin_t:s0 msgunfmt
そして彼の主張にも似たようなものが現れることを期待chcon
します。unconfined_u:object_r:bin_t:s0
Aはbin_t
部分的な情報です。
参照されている手順は有効でなければならず、chcon
重複して使用する必要があります。私のCentOS7をチェックしてみると、誤ってインストールされており、xrdp
リストに次のように表示されます。
$ ls -lZ xrdp xrdp-chansrv xrdp-sesman xrdp-sessvc
-rwxr-xr-x. root root system_u:object_r:bin_t:s0 xrdp
-rwxr-xr-x. root root system_u:object_r:bin_t:s0 xrdp-chansrv
-rwxr-xr-x. root root system_u:object_r:bin_t:s0 xrdp-sesman
-rwxr-xr-x. root root system_u:object_r:bin_t:s0 xrdp-sessvc
このsystem_u
フィールドはSELinuxです。ユーザー、このobject_r
フィールドは役割、bin_t
あるタイプはいs0
(デフォルト)評価。のファイルは、/usr/sbin
表示されたパターンからコンテキストを取得します semanage fcontext -l
(しかし、一致するものがたくさんあります)。このガイドに従って、xrdp
スキーマまで削除した可能性があります/usr/sbin
。ただし、以下を使用してユーザーと役割を指定すると、コマンドでより明示的に指定できますchcon
。
chcon -u system_u -r object_r --type=bin_t /usr/sbin/xrdp
chcon -u system_u -r object_r --type=bin_t /usr/sbin/xrdp-sesman
あるいは、スキーマは破損していませんが、ファイルをインストールする代わりに移動した場合(たとえば)、次のようにして内容を回復できます。
restorecon -v /usr/sbin/xrdp
restorecon -v /usr/sbin/xrdp-sesman
追加資料:
答え3
これは誰かに役立ちますので、ここに簡単な2セントがあります。どういうわけかselinuxを無効にすると、この問題が発生する可能性があります。この問題を解決するには、selinuxを正常に復元するだけです。 /etc/selinux/config を開いて変更します。
SELINUX=無効化
に戻る
SELINUX=強制