
No meu laptop eu uso a distribuição Fedora 17 pela primeira vez e estou tendo alguns problemas para adicionar regrassemodule
Um exemplo:
# grep httpd /var/log/audit/audit.log | audit2allow -M mypol
# semodule -i mypol.pp
E a saída é:
libsemanage.semanage_get_lock: Não foi possível obter o bloqueio direto da transação em /etc/selinux/targeted/modules/semanage.trans.LOCK. (Recurso temporariamente indisponivel). semódulo: Falha em mypol.pp!
Procurei informações relacionadas ao problema, mas não consigo encontrar nada.
Então, alguma ideia sobre onde ir ou o que fazer para resolver esse problema?
Responder1
Você provavelmente não precisa disso agora, mas descobri isso pesquisando uma solução no Google, então postarei minha resposta para quem está se perguntando como resolver isso.
Solução:
Quando você recebe uma mensagem de erro como a acima sobre um “arquivo de bloqueio” e diz “recurso temporariamente indisponível”, geralmente significa que por algum motivo o programa já está em execução e você não pode executá-lo novamente.
Então você precisa encontrar o programa e encerrá-lo.
A execução do seguinte pesquisa os processos no sistema por semódulo
$ ps aux | grep semodule
Ele retornará uma saída semelhante a esta:
root 6288 0.0 0.1 229084 7652 pts/1 T 22:34 0:00 sudo semanage permissive -a httpd_t
A segunda coluna (o valor 6288) é o id do processo que já está em execução.
Você pode matá-lo com este comando.
$ sudo kill -9 6288
Responder2
Tive um dia melhor depois:
# setenforce 0 && setenforce 1
Isso desativa e, em seguida, ativa o selinux e, portanto, resolve quaisquer condições de corrida que possam ocorrer gerenciando as configurações simultaneamente enquanto o selinux está sendo aplicado.