Você criou ntpd
sem a opção --enable-linuxcaps
. Sem isso, ntpd
não reconhecerá a opção usuário -u
.
Suas opções são:
-
Recompile com a opção correta
-
Remova o
-u $UGID
da linhaNTPD_OPTS
em/etc/init.d/ntp
Eu construí o ntpd a partir do código fonte, o qual o processo coloca em / usr / local / sbin. Naturalmente, o serviço ntp aponta para / usr / sbin. Então, eu pensei que poderia apenas mudar o caminho no arquivo de configuração init.d assim:
### BEGIN INIT INFO
# Provides: ntp
# Required-Start: $network $remote_fs $syslog
# Required-Stop: $network $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: Start NTP daemon
### END INIT INFO
PATH=/sbin:/bin:/usr/sbin:/usr/bin
. /lib/lsb/init-functions
DAEMON=/usr/local/sbin/ntpd
PIDFILE=/var/run/ntpd.pid
...[etc]
Eu mudei a linha começando com "DAEMON" para apontar para a localização do novo binário. No entanto, quando tento reiniciar o serviço, recebo o erro:
[ ok ] Stopping NTP server: ntpd.
[....] Starting NTP server: ntpd/usr/local/sbin/ntpd: The 'user' option has been disabled. -- built without --enable-clockctl or --enable-linuxcaps or --enable-solarisprivs
ntpd - NTP daemon program - Ver. 4.2.7p475
Usage: ntpd [ -<flag> [<val>] | --<name>[{=| }<val>] ]... \
[ <server1> ... <serverN> ]
Try 'ntpd --help' for more information.
failed!
Como posso ter o serviço executado a partir de / usr / local / sbin em vez de / usr / sbin?
Solução (com base na resposta aceita):
Aparentemente, ao criar no Linux, você precisa usar a opção --enable-linuxcaps
ao criar no Linux. Aqui estão os passos necessários no Debian Wheezy:
cd ~/install/ntp-dev-4.2.7p475 # or wherever you have the source unpacked
make clean # clean out the previous build
sudo apt-get install libcap-dev # this library is required by linuxcaps
./configure --enable-linuxcaps # this is the critical switch
make
sudo make install
sudo /etc/init.d/ntp restart # restart ntp
ntpq -c "rv 0 version" # make sure you are running the right version
A única linha que você altera em /etc/init.d/ntp é a linha DAEMON, como dito acima.
Tags ntpd init-script