LINUX.ORG.RU

Oracle linux 6.9, samba и SELinux

 , ,


0

1

Добрый день. Вопрос будет очень глупый но я так и не нашёл на него решения. Согласно гайдам и статьям на форуме разрешать запись и редактирование в каталоге следует командой:

chcon -R -t samba_share_t /{путь_к_общему_ресурсу}

А каким образом можно сделать обратный эффект? Чтоб наоборот то что расшарил закрыть? Как должна выглядеть команда?

Команда неправильная. Она сработает, но контекст после перезагрузки вернётся на дефолтный. Чтобы контекст сохранялся, надо его указать такой командой: semanage fcontext -a -t public_content_rw_t "/srv/share(/.*)?" (параметры свои подставишь). Это изменит контекст по умолчанию, но не изменит текущий контекст, текущий контекст сбрасывается на контекст по умолчанию командой restorecon. То бишь сначала semanage fcnontext ..., потом restorecon. А чтобы отменить всё данное действо, пишешь semanage fcontext -d ....

А конкретно в твоём случае чтобы вернуть что было, надо использовать restorecon или просто перезагрузиться.

Legioner ★★★★★
()
Ответ на: комментарий от Legioner

Думаю вам конечно же виднее и спасибо за ответ. Это возможно покажется странным, но та команда что я написал выше действительно сработала и selinux пустил меня редактировать файлы в прописанном каталоге. Казалось бы всё хорошо, но после перезагрузки сервер стал вести себя очень странно. Во многих приложениях.

И собственно каталог который я прописывал был usr целиком. Есть вероятность что все проблемы действительно от моих криворуких действий и всё хотелось бы вернуть на круги своя.

Edgecuti0n
() автор топика
Ответ на: комментарий от Legioner

Что? restorecon при каждой перезагрузке? Не верю! :)
В RHEL он запустится, только если ты сделаешь touch /.autorelabel.

bigbit ★★★★★
()
Ответ на: комментарий от bigbit

Зачем при каждой? semanage меняет правила в базе селинукса, restorecon восстанавливает правила на файловую систему по этой базе. Будет достаточно одного раза. Или ты про про что?

imul ★★★★★
()
Ответ на: комментарий от imul

В cообщении выше Legioner писал, что:

но контекст после перезагрузки вернётся на дефолтный.

и

надо использовать restorecon или просто перезагрузиться.

Я про то, что нифига он не вернется, если «просто перезагрузиться». Чтобы вернулся, нужно либо запустить restorecon самому, либо сделать touch /.autorelabel перед перезагрузкой.

bigbit ★★★★★
()
Последнее исправление: bigbit (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.