1

На своем ноутбуке я впервые использую дистрибутив Fedora 17, и у меня возникают некоторые проблемы при добавлении правил в semodule

Пример:

# grep httpd /var/log/audit/audit.log | audit2allow -M mypol
# semodule -i mypol.pp

И вывод:

libsemanage.semanage_get_lock: не удалось получить прямую блокировку транзакции в /etc/selinux/targeted/modules/semanage.trans.ЗАМОК. (Ресурс временно недоступен). Semodule: не удалось на mypol.pp!

Я искал информацию, связанную с этой проблемой, но, похоже, ничего не могу найти.

Итак, есть идеи о том, куда идти или что делать, чтобы решить эту проблему?

2 ответа2

0

У меня был лучший день после:

# setenforce 0 && setenforce 1

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

0

Возможно, вам это сейчас не нужно, но я нашел это через поиск в Google, поэтому я опубликую свой ответ для всех, кто интересуется, как решить эту проблему.

Решение:

Когда вы получаете сообщение об ошибке, такое как выше, о "файле блокировки" и в нем говорится "ресурс временно недоступен", это обычно означает, что по какой-то причине программа уже запущена, поэтому вы не можете запустить ее снова.

Так что вам нужно найти программу и завершить ее.

Запуск следующего поиска процессов в системе для semodule

$ ps aux | grep semodule

Он вернет вывод, похожий на этот:

root      6288  0.0  0.1 229084  7652 pts/1    T    22:34   0:00 sudo semanage permissive -a httpd_t

Второй столбец (значение 6288) - это идентификатор процесса, который уже запущен.

Вы можете убить его с помощью этой команды.

$ sudo kill -9 6288

Этот ответ мне немного помог со следующим решением.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .