запрет на изменение resolv.conf[SOLVED]

необходимо пользоваться подправленным resolv.conf . dhcpcd постоянно его перезаписывает . Пробывал отучить его от этого с помощью

echo "nohook resolv.conf" >> /etc/dhcpcd.conf

что привело к неожиданному результату >> dhcpcd стал вообще затирать resolv.conf не добавляя туда даже полезную инфу ...

slep@venera ~ $ qlist

slep@venera ~ $ qlist dhcpcd
/etc/dhcpcd.conf
/etc/init.d/dhcpcd
/lib/dhcpcd/dhcpcd-run-hooks
/lib/dhcpcd/dhcpcd-hooks/20-resolv.conf
/lib/dhcpcd/dhcpcd-hooks/50-yp.conf
/lib/dhcpcd/dhcpcd-hooks/50-ntp.conf
/lib/dhcpcd/dhcpcd-hooks/30-hostname
/lib/dhcpcd/dhcpcd-hooks/10-mtu
/lib/dhcpcd/dhcpcd-hooks/01-test
/lib/dhcpcd/dhcpcd-hooks/02-dump
/lib/dhcpcd/dhcpcd-hooks/29-lookup-hostname
/lib/systemd/system/dhcpcd.service
/usr/lib/debug/sbin/dhcpcd.debug
/usr/share/doc/dhcpcd-5.2.12-r1/README.lzma
/usr/share/man/man5/dhcpcd.conf.5.lzma
/usr/share/man/man8/dhcpcd-run-hooks.8.lzma
/usr/share/man/man8/dhcpcd.8.lzma
/sbin/dhcpcd

/lib/dhcpcd/dhcpcd-hooks/20-resolv.conf :)
qlist - это так сложно ?

Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)

/lib/dhcpcd/dhcpcd-hooks/20-r

/lib/dhcpcd/dhcpcd-hooks/20-resolv.conf содержит скрипты обработки resolv.conf .

/lib/dhcpcd/dhcpcd-hooks/20-r

/lib/dhcpcd/dhcpcd-hooks/20-resolv.conf содержит скрипты обработки resolv.conf .

Что дает возможность написать туда что угодно, в том числе доложить еще и своих хуков. Что еще надо ТС для получения результата. мне не понятно/

П.С К сожалению, на сильно хитрозакрученных и просто сложных конфигах dhcpcd сливает dhcpd ;(

Compute:
Bosch M2.8.1 -> custom Bosch M2.8.3 clone from Russia.
Speed about 260 km,Ram 2 pers.,HDD - 70 kg,210 FLOPS ;)

http://www.gentoo.ru/node/113

dhcpcd_eth0="-R" - dhcpcd:

dhcpcd_eth0="-R" - dhcpcd: invalid option -- 'R'
dhcp_eth0="-C resolv.conf" - все равно перезаписывает

прочитайте ту тему целиком

прочитайте ту тему целиком там еще варианты есть

1) chmod -w /etc/resolv.conf

1) chmod -w /etc/resolv.conf - не подходит
2) осилить опции dhcp клиента - уже осилил только работают они не так как ожидалось.
3) dhcp_eth0="nodns" - работает не так как ожидалось ( стирает resolv.conf в ноль )
4) поднять локальный днс - не подходит
5) поднять кэширующий DNS Proxy - не подходит

Это все :(

Прописатьdns_servers_ххх

Прописать
dns_servers_ххх

а прочитав ниже, что конкретно вы хотите: чем не устраивает?
# /etc/resolv.conf.head can replace this line
# /etc/resolv.conf.tail can replace this line

Ничего не понял. 1) Где

Ничего не понял.

1) Где прописать dns_servers ? И что мне это даст ?
2) Как раз ниже я довольно четко описал что я хочу http://www.gentoo.ru/node/23282#comment-172606. Там что то не понятно ?

1) посмотрите

1) посмотрите /usr/share/doc/openrc-0.8.2-r1/net.example на предмет dns_servers
2) вот я и говорю, что то что вам действительно нужно написано в середине темы, а не в первом сообщении
и проще всего реализуется, добавлением в один из resolve.conf.* нужных вам строк

так у тебя dhcpd или dhcp? Ну

так у тебя dhcpсd или dhcp? Ну ка /etc/conf.d/net фстудию!
ЗЫ Только что проверил у себя - работает

config_eth0="dhcp"
dhcpcd_eth0="-C resolv.conf"

Вот мой /etc/conf.d/net

Вот мой /etc/conf.d/net

 
config_eth0=( "dhcpcd" )
dhcp_eth0="-C resolv.conf"

что именно работает ?

у меня dhcpcd генерит вот такой resolv.conf

# Generated by dhcpcd from eth0
# /etc/resolv.conf.head can replace this line
domain mydomain
nameserver X.X.X.X
nameserver X.X.X.X
# /etc/resolv.conf.tail can replace this line

я хочу чтоб он был таким

# Generated by dhcpcd from eth0
# /etc/resolv.conf.head can replace this line
domain mydomain
search mydomain
search otherdomain
nameserver X.X.X.X
nameserver X.X.X.X
# /etc/resolv.conf.tail can replace this line

С конфигом выше строчки выделеные жирным стираються после рестарта системы

edrozim написал(а): что

edrozim написал(а):
что именно работает ?

с таким конфигом у меня dhcpcd не трогает /etc/resolv.conf

edrozim написал(а):
что именно работает ?
у меня dhcpcd генерит вот такой resolv.conf

# Generated by dhcpcd from eth0
# /etc/resolv.conf.head can replace this line
domain mydomain
nameserver X.X.X.X
nameserver X.X.X.X
# /etc/resolv.conf.tail can replace this line

я хочу чтоб он был таким

# Generated by dhcpcd from eth0
# /etc/resolv.conf.head can replace this line
domain mydomain
search mydomain
search otherdomain
nameserver X.X.X.X
nameserver X.X.X.X
# /etc/resolv.conf.tail can replace this line

С конфигом выше строчки выделеные жирным стираються после рестарта системы

Не понял, что, нужно то: чтоб он вообще не трогал resolv.conf, или чтоб дописывал не затирая записи?

Оба варианта устраивают :)

Оба варианта устраивают :)

[РЕШЕНО]?

[РЕШЕНО]?

Так у меня НИ ОДИН из

Так у меня НИ ОДИН из вариантов не работает :)

1) чтоб он вообще не трогал

1) чтоб он вообще не трогал resolv.conf - трогает как только хочет и не могу я ему никак запретить :)
2) или чтоб дописывал не затирая записи - даж не знаю где и как ему указать чтоб он дописывал :

search domain1
search domain2

edrozim написал(а): Так у

edrozim написал(а):
Так у меня НИ ОДИН из вариантов не работает :)

У меня

config_eth0="dhcp"
dhcpcd_eth0="-C resolv.conf"

У тебя

config_eth0=( "dhcpcd" )
dhcp_eth0="-C resolv.conf"

Разницу видишь?

Вообще то config_eth0=(

Вообще то

config_eth0=( "dhcpcd" )

так правильно ... по крайней мере по хендбуку http://www.gentoo.org/doc/en/handbook/handbook-x86.xml?part=4&chap=1 ....

но почему то

config_eth0="dhcpcd"

так работает :)

Может надо запостить как баг ? На документацию как минимум .

Это из net.example #

Это из net.example

# Regardless of which DHCP client you prefer, you configure them the
# same way using one of following depending on which interface modules
# you're using.
#config_eth0="dhcp"

# For passing custom options to dhcpcd use something like the following.  This
# example reduces the timeout for retrieving an address from 60 seconds (the
# default) to 10 seconds.
#dhcpcd_eth0="-t 10"

Так что у меня все правильно

Только что посмотрел свой

Только что посмотрел свой net.example

# Regardless of which DHCP client you prefer, you configure them the
# same way using one of following depending on which interface modules
# you're using.
#config_eth0=( "dhcp" )

Странно как они у нас могут быть разными ?

eegorov@EGOROV ~ $ emerge -pv

eegorov@EGOROV ~ $ emerge -pv $(qfile --quiet -C net.example.bz2)

These are the packages that would be merged, in order:

Calculating dependencies             ... done!
[ebuild   R    ] sys-apps/openrc-0.8.3-r1  USE="ncurses pam unicode -debug (-selinux)" 0 kB

Total: 1 package (1 reinstall), Size of downloads: 0 kB

1) у меня на системе вообще

1) у меня на системе вообще нет файла net.example.bz2 ( искал

find / -name net.example.bz2

)
2) openrc у меня той же версии что и у тебя

[I] sys-apps/openrc
     Available versions:  0.8.2-r1 0.8.3-r1 **9999 {debug elibc_glibc kernel_FreeBSD kernel_linux ncurses pam selinux unicode}
     Installed versions:  0.8.3-r1(11:25:13 AM 07/04/2011)(elibc_glibc kernel_linux ncurses pam unicode -debug -kernel_FreeBSD -selinux)
     Homepage:            http://www.gentoo.org/proj/en/base/openrc/
     Description:         OpenRC manages the services, startup and shutdown of a host

3) у меня net.example вообще никому не принадлежит

spider logs # equery b /etc/conf.d/net.example 
 * Searching for /etc/conf.d/net.example ... 
spider logs #

Это уже вне рамок данного

Это уже вне рамок данного топика

Читайте net.example. Опция

Читайте net.example. Опция "nodns"

Не грусти, товарищ! Всё хорошо, beautiful good!

C опцией nodns я получаю #

C опцией nodns я получаю

# Generated by dhcpcd
# /etc/resolv.conf.head can replace this line
# /etc/resolv.conf.tail can replace this line

другими словами он вообще все стирает :(

Когда надо было строго

Когда надо было строго запретить изменение файла, переносил его на другую фс с -o ro и делал симлинк. Правда не у всех фс только для чтения всегда под рукой.

Локальный оверлей растёт

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".