[sisyphus] systemd-networkd dns configuration

Eugene Prokopiev enp на itx.ru
Чт Сен 3 08:29:12 MSK 2015


2 сентября 2015 г., 16:02 Eugene Prokopiev написал:

>> а вот это работает нормально,  если команду заключить в кавычки
>> '/sbin/resolvconf -a systemd-networkd < /run/systemd/resolve/resolv.conf'
>
> Да, действительно, и даже /etc/resolv.conf при этом правильно
> заполняется. А вот если после перезагрузки просто запустить systemctl
> start altlinux-openresolv.service - в /etc/resolv.conf ничего не
> появится.
>
> Как это отлаживать?

Решил отлаживать так: в
/lib/systemd/system/altlinux-openresolv.service написал
ExecStart=/lib/systemd/systemd-resolvconf, а уже в последний:

#!/bin/sh

/bin/sh -c '/sbin/resolvconf -a systemd-networkd <
/run/systemd/resolve/resolv.conf'

echo ----------------- >> /tmp/resolvconf
cat /run/systemd/resolve/resolv.conf >> /tmp/resolvconf
echo ----------------- >> /tmp/resolvconf
cat /etc/resolv.conf >> /tmp/resolvconf
echo ----------------- >> /tmp/resolvconf
date >> /tmp/resolvconf
echo +++++++++++++++++ >> /tmp/resolvconf

После перезагрузки получаю:

# cat /tmp/resolvconf
-----------------
# This file is managed by systemd-resolved(8). Do not edit.
#
# Third party programs must not access this file directly, but
# only through the symlink at /etc/resolv.conf. To manage
# resolv.conf(5) in a different way, replace the symlink by a
# static file or a different symlink.

# No DNS servers known.
-----------------
# Generated by resolvconf
# Do not edit manually, use
# /etc/net/ifaces/<interface>/resolv.conf instead.
-----------------
Thu Sep  3 08:07:23 MSK 2015
+++++++++++++++++

Т.е. видимо altlinux-openresolv.service выполнился слишком рано.
Однако сейчас (после того, как система полностью загрузилась) уже не
рано, поэтому повторный запуск systemctl restart
altlinux-openresolv.service (именно restart, просто start ни к чему не
приводит) пишет в этот файл уже следующее:

-----------------
# This file is managed by systemd-resolved(8). Do not edit.
#
# Third party programs must not access this file directly, but
# only through the symlink at /etc/resolv.conf. To manage
# resolv.conf(5) in a different way, replace the symlink by a
# static file or a different symlink.

nameserver 10.7.0.2
search tx.donpac.ru
-----------------
# Generated by resolvconf
# Do not edit manually, use
# /etc/net/ifaces/<interface>/resolv.conf instead.
search tx.donpac.ru
nameserver 10.7.0.2
-----------------
Thu Sep  3 08:25:51 MSK 2015
+++++++++++++++++

Т.е. главный вопрос: почему altlinux-openresolv.service не
отрабатывает при добавлении полезной информации в
/run/systemd/resolve/resolv.conf ?

-- 
WBR,
Eugene Prokopiev


Подробная информация о списке рассылки Sisyphus