Arquivo resolv.conf não editável.

Iniciado por AdvancedS17, 19 de Março de 2012, 14:19

tópico anterior - próximo tópico

AdvancedS17

Boa tarde caros colegas!
Por favor alguém poderia me dizer em que executável ou arquivo de configuração devo mexer para tornar o arquivo resolv.conf (apontado pelo link simbólico /etc/resolv.conf e encontrado na pasta /run/resolvconf/resolv.conf) editável. As permissões estão como leitura e escrita para root e trabalho com ele como tal. Obrigado.  :-\
Maçon, apoiador de todas as religiões (de preferência conformistas) e enfocado no cristianismo. Universitários do mundo todo, esqueçam os dogmas, devolvam meu corpo que perdi ao longo dos séculos; só não peço para me tornarem um deus, pois ter uma saúde perfeita já basta. Holandês aqui não tem vez.

AdvancedS17

Pessoal como um leigo nessa área tava procurando informações e achei algumas páginas que falam sobre o comando chattr para colocar atributos à nível de kernel à um arquivo (pois toda vez que salvava com o Gedit e reiniciava o processo do Bind o Gedit logo em seguida informava que o arquivo foi modificado em disco e perguntava se eu desejava recarregá-lo e tem até um aviso em formato de comentário no próprio resolv.conf dizendo pra não tentar modificar à mão). No meu caso esse comando sempre tá dando umas mensagens de erro com o chattr e com os que exibem esses atributos como o lsattr:"chattr: ioctl inapropriado para dispositivo durante leitura de bandeiras em resolvconf/" e "lsattr: ioctl inapropriado para dispositivo Durante leitura de bandeiras em resolv.conf". Minha versão do Ubuntu é a última Pangolin; tô achando até que deve ser algo de inacabado nessa versão pois é uma versão teste ainda. Desde já agradeço à quem tiver nem que seja um "acho" por aí.  ???
Maçon, apoiador de todas as religiões (de preferência conformistas) e enfocado no cristianismo. Universitários do mundo todo, esqueçam os dogmas, devolvam meu corpo que perdi ao longo dos séculos; só não peço para me tornarem um deus, pois ter uma saúde perfeita já basta. Holandês aqui não tem vez.

zekkerj

Desculpe, vc quer mexer no arquivo diretamente? Não é pra fazer isso.

Pelo link simbólico que vc tem, parece que vc instalou o pacote "resolvconf". Nesse caso, veja na documentação do pacote como controlar o resolv.conf com os aplicativos do próprio pacote.

Mas nunca esse arquivo deve ser liberado pra ser alterado por usuários. Só o root pode mexer no sistema!
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

AdvancedS17

Citação de: zekkerj online 19 de Março de 2012, 21:08
Desculpe, vc quer mexer no arquivo diretamente? Não é pra fazer isso.

Pelo link simbólico que vc tem, parece que vc instalou o pacote "resolvconf". Nesse caso, veja na documentação do pacote como controlar o resolv.conf com os aplicativos do próprio pacote.

Mas nunca esse arquivo deve ser liberado pra ser alterado por usuários. Só o root pode mexer no sistema!
Valeu colega! Tô quase lá; fiz como me indicou mas em todas as ferramentas do resolvconf não achei uma para editar o /run/resolvconf/resolv.conf (apontado pelo link simbólico /etc/resolv.conf); ainda há pouco achei um colega nosso que encontrou esse mesmo problema e conseguiu resolver apenas tirando um "yes" do arquivo /etc/rc.d/rc.inet1.conf só que na minha máquina com o Pangolin não tem essa pasta rc.d, só tem com números (rc0.d) e dentro de cada uma delas que procurei não encontrei esse arquivo rc.inet1.conf que serve para configurar o DHCP (nessa linha: USE_DHCP="yes" tem que tirar o yes apenas). Desde já agradeço à quem souber ou por favor até mesmo os "achos" são bem vindos.
Maçon, apoiador de todas as religiões (de preferência conformistas) e enfocado no cristianismo. Universitários do mundo todo, esqueçam os dogmas, devolvam meu corpo que perdi ao longo dos séculos; só não peço para me tornarem um deus, pois ter uma saúde perfeita já basta. Holandês aqui não tem vez.

zekkerj

Vc quer controlar o resolv.conf, faça assim: edite o arquivo /etc/resolv.conf/resolv.conf.d/base, coloque lá o que vc quer que faça parte obrigatoriamente do seu "/etc/resolv.conf".

Mas tenha em mente que quem controla esse arquivo é o sistema, e não o usuário.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

AdvancedS17

#5
Citação de: zekkerj online 20 de Março de 2012, 18:50
Vc quer controlar o resolv.conf, faça assim: edite o arquivo /etc/resolv.conf/resolv.conf.d/base, coloque lá o que vc quer que faça parte obrigatoriamente do seu "/etc/resolv.conf".

Mas tenha em mente que quem controla esse arquivo é o sistema, e não o usuário.
Muito obrigado. Graças à tua ajuda e mais algumas postagens e umas dorzinhas de cabeça, consegui finalmente. Enfrentei mais algumas dezenas de problemas, até mesmo com um processo relacionado à loopback que acabava recusando o processo do Bind devido às novas configurações. Achei também uma dica que concentra todas as configurações no named.conf ao invés de incluir através do #include outros arquivos.conf. Valeu!

Os arquivos de configuração que achei no Viva o Linux (ainda precisei da sua dica também do arquivo "base"):
http://www.vivaolinux.com.br/perfil/verPerfil.php?login=pexao
Adicionando uma zona

Vamos agora adicionar uma zona.

As seguintes zonas já devem aparecer como padrão, então iremos adicionar a zona "lab.lan.br" para nosso teste e a zona reversa 0.168.192 (supondo que nosso IP seja 192.168.0.1).

# vi /etc/bind/named.conf

zone "localhost" {
        type master;
        file "/etc/bind/db.local";
};

zone "127.in-addr.arpa" {
        type master;
        file "/etc/bind/db.127";
};

zone "0.in-addr.arpa" {
        type master;
        file "/etc/bind/db.0";
};

zone "255.in-addr.arpa" {
        type master;
        file "/etc/bind/db.255";
};

zone "0.168.192.in-addr.arpa" {
        type master;
        file "/etc/bind/reverso.0.168.192.dns";
};

zone "lab.lan.br" {
        type master;
        file "/etc/bind/lab.lan.br.dns";
};


Configurando a zona adicionada

Após criarmos a zona no arquivo "named.conf", iremos criar o arquivo da zona em si.

# touch /etc/bind/lab.lan.br.dns

e depois popular este arquivo:

# vi /etc/bind/lab.lan.br.dns

Dentro deste arquivo devemos colocar o seguinte conteúdo:

;
; BIND data file for local loopback interface
;
$TTL    604800
@       IN      SOA     lab.lan.br. root.lab.lan.br. (
                              4         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      lab.lan.br.
@       IN      A       192.168.0.31
        IN      MX 5    lab.lan.br.
www     IN      CNAME   lab.lan.br.

;Meu micro
pexao   IN      A       192.168.0.2

Ainda criamos um redirecionamento abaixo, então todas as pessoas que pingarem "pexao.lab.lan.br" serão redirecionadas para o IP 192.168.0.2.

:)

# /etc/init.d/bind9 reload

Pronto, criamos a nossa primeira zona de DNS! :)

Não esqueça de alterar o arquivo /etc/resolv.conf e colocar como nameserver o IP do seu novo servidor DNS, caso contrário nossa configuração não irá funcionar.

Agora vamos criar o arquivo de zona reversa:

# vi /etc/bind/reverso.0.168.192.dns

;
; BIND data file for local loopback interface
;
$TTL    604800
@       IN      SOA     lab.lan.br. root.lab.lan.br. (
                              1         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
        IN      NS      lab.lan.br.
1       IN      PTR     lab.lan.br.


Dicas finais

Bem, sei que o tutorial não ficou muito limpo, mas estou escrevendo ele muito rápido e sem muita lenga lenga, até porque ele é voltado para configurações rápidas mesmo.

Peço desculpas por algum erro, porém testei e está funcionando normalmente no meu servidor.

Para visualizar algum log:

# tail -f /var/log/daemon.log

:)

Espero ter ajudado.

[]' a toda comunidade!
Maçon, apoiador de todas as religiões (de preferência conformistas) e enfocado no cristianismo. Universitários do mundo todo, esqueçam os dogmas, devolvam meu corpo que perdi ao longo dos séculos; só não peço para me tornarem um deus, pois ter uma saúde perfeita já basta. Holandês aqui não tem vez.