Esta dica vai para quem atualizar o OpenRC para a versão 0.21.3, no
Gentoo.
Nesta versão, os desenvolvedores decidiram "deixar" o software um pouco mais falante, colocando mais verbose nos processos, mesmo que você não tenha definido a opção
rc_verbose no arquivo "rc.conf".
Para entendermos um pouco do que está acontecendo, desde a versão 0.13 do OpenRC, em meados de 2013, os desenvolvedores precisaram criar um novo script que chamasse os processos do sistema, pois estes, gerenciados pelo OpenRC, estavam conflitando com o minicom que possui um binário de mesmo nome, runscript.
Este, por sua vez, está disponível em inúmeras distros, incluindo o Debian, que solicitou aos desenvolvedores do Gentoo que criassem um novo nome para o processo. E por que solicitaram? Ora, o OpenRC estava disponível como init no Debian, o que começou a causar todo este problema (alguns discordam).
Sendo assim, no final do ano de 2013, nasceu o
openrc-run. Entretanto, no Gentoo, alguns processos foram mantidos com o runscript por retrocompatibilidade e se você habilitasse o verbose, receberia algumas mensagens sobre isto.
O caso é que agora, o OpenRC-0.21.3 está "botando a boca no trombone" e caguetando tudo. Por conta disto, você será recebido com uma enxurrada de informações, mais do que o normal. Uma destas, em particular, é um alerta informando que alguns softwares que inicializam com o sistema utilizam o script runscript e que você deve atualizar para o openrc-run.
No entanto, mesmo com estes avisos, os programas serão iniciados sem qualquer tipo de erro. Mas, se você é daqueles que, como eu, tem TOC em relação à softwares em geral, não vamos gostar de ver todos aqueles avisos no nosso processo de boot e shutdown, não é? Por isto, deixarei duas soluções. É super simples e não precisa escrever uma linha de código.
Procedimentos
Antes de tudo, faça um backup do conteúdo do diretório "init.d".
Feito o backup, precisamos saber quais scripts utilizam o runscript. Para isto, o simples comando abaixo resolve:
grep '^#!/sbin/runscript' /etc/init.d/*
Ok. Com a informação em mãos, troque apenas a linha do "shebang", de: #!/sbin/runscript
Para:
#!/sbin/openrc-run
Para simplificar o processo, você pode fazer o seguinte:
# sed -i 's_#!/sbin/runscript_#!/sbin/openrc-run_' /etc/init.d/*
Nada mais fácil, não? Se não quiser trocar tudo, veja quais processos o OpenRC informa sobre o runscript e troque apenas estes. Mas claro, habilite o "rc_logger" no "rc.conf", para que você possa ver as informações.
Mas, se você não quiser modificar nada, silencie o OpenRC com este pequeno patch, disponibilizado por um user do Gentoo:
--- openrc-0.21/src/rc/openrc-run.c 2016-05-24 22:02:35.000000000 +0300
+++ openrc-0.21/src/rc/openrc-run.new.c 2016-05-26 17:20:47.421229738 +0300
@@ -1173,8 +1173,8 @@
if (argc < 3)
usage(EXIT_FAILURE);
- if (runscript)
- ewarn("%s uses runscript, please convert to openrc-run.", service);
+ /* if (runscript) */
+ /* ewarn("%s uses runscript, please convert to openrc-run.", service); */
/* Change dir to / to ensure all init scripts don't use stuff in pwd */
if (chdir("/") == -1)
Nomeie o arquivo com o nome que quiser, mas com a extensão ".patch" e salve-o no diretório
/usr/portage/patches/sys-apps/open-rc/. Após isto, reinstale o OpenRC e você verá que ele estará mais silencioso.
Até!