Всякий раз, когда я пытаюсь выполнить эту строку, чтобы настроить SELinux для установки xrdp из этого руководства:
# 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 бит.
Ваша команда должна дать больше информации. Это обсуждалось ранее (но я не вижу дубликатов ).
Например,
semanage
.chcon
команде (но сначала вам нужно будет определить тип, используяls -Z
). Полный тип обычно имеет двоеточие (:
) в имени, потому что оно представляет иерархию.Например,
ls -lZ
дает эти теги для примера списка:и
chcon
ожидает что-то вродеunconfined_u:object_r:bin_t:s0
в своем аргументе. Аbin_t
это только частичная информация.Упомянутая процедура должна была работать, а использование
chcon
избыточно. Проверяя мой CentOS7, я случайноxrdp
установил, и список показываетsystem_u
Поле является SELinux пользователь , тоobject_r
поле является роль ,bin_t
является тип иs0
является ( по умолчанию) уровень . Файлы в них/usr/sbin
получают свой контекст из шаблона, показанногоsemanage fcontext -l
(но есть много совпадений). Следуя руководству, вы, возможно, удалили шаблон дляxrdp
- или даже для/usr/sbin
. Однако вы можете быть более явным в команде, указав пользователя и роль, используяchcon
:В качестве альтернативы, если шаблоны не повреждены, но (например) вы переместили файлы, а не установили их, вы можете восстановить вещи, используя
Дальнейшее чтение:
restorecon
- восстановить файл (ы) по умолчанию контексты безопасности SELinux.chcon
- изменить контекст безопасности файла SELinuxисточник
Это может кому-то помочь, поэтому вот мои простые 2 цента. Если вы как-то отключили selinux, вы можете столкнуться с этой проблемой. чтобы решить эту проблему, просто верните selinux в нормальное состояние. откройте / etc / selinux / config и измените
SELINUX = отключено
вернуться к
SELINUX = принуждени
источник