Запретить systemd-networkd (DHCP) регистрировать (NTP) серверы времени

Для программы возможно, и это довольно тривиально, определить, ссылается ли какой-либо заданный дескриптор открытого файла в своем процессе на канал или FIFO. Это простое упражнение по использованию библиотечной функции fstat().

Вам придется решить, как вызывать fstat()на выбранном вами языке программирования.В языках C или C++ функция для этого довольно проста :

.
#include <sys/types.h>  // no longer required by IEEE 1003.1:2008
#include <sys/stat.h>
#include <unistd.h>

/// \brief Check a file descriptor for being open and denoting a pipe/FIFO
extern inline
bool        /// \returns true if and only if the descriptor is open to a pipe/FIFO
is_fifo (
    int fd  ///< the file descriptor to test
) {
    struct stat s;
    return 0 <= fstat(fd, &s) && S_ISFIFO(s.st_mode);
}

Библиотека libsystemd в systemd имеет несколько более сложную sd_is_fifo()библиотечную функцию.

2
11.07.2019, 18:00
2 ответа

Не уверен, что понял ваш вопрос, но вы можете отредактировать /etc/ntp.conf, чтобы получить следующий server *.pool.ntp.org prefer. Ключевое слово preferдолжно отдавать предпочтение указанному серверу по сравнению с другими в списке.

0
27.01.2020, 22:26

Пожалуйста, обратитесь к документации на freedesktop.org

Вы можете отключить поведение по умолчанию, используя UseNTP=noв разделах [DHCPv4]и [DHCPv6]файла в стиле.network ini -, который необходимо поместить в папку /etc/systemd/network.

Вы также должны активировать DHCP=yesв секции [Network], чтобы это имело эффект.

0
25.11.2020, 10:39

Теги

Похожие вопросы