Если у вас Линукс на UNIX System V init, то нет проблем:
https://forum.altlinux.org/index.php?topic=41022.msg325355#msg325355Инит-скрипт будет запускаться и после etcnet и после NetworkManager. Для систем на sysvinit, доработок и переделок он не требует.
На системах с systemd от Леонида, насколько мне известно, rc.local уже разломан, поэтому команды засунуть туда не выйдет. Хотя могу ошибаться.
Чтобы этот скрипт запускался на системах с systemd, в него нужно добавить LSB хидер, указывающий что скрипт должен запускаться после сетевой подсистемы. LSB хидер по примеру инит-скрипта из пакета nm-sysvinit.
Ссылки на документацию LSB и подробности, в конце этого сообщения:
https://forum.altlinux.org/index.php?topic=32361.msg253079#msg253079Обязательно описывать
Required-Start: $local_fs $network
Required-Stop: оставить пустым. При севшем элементе питания в этом нет смысла. Как и в самом выполнении скрипта на shutdown системы.
Сам LSB хидер nm-group выглядит так:
$ cat /etc/rc.d/init.d/nm-group
#!/bin/bash
#
# Adding the first user to the _nmconnect group
#
# chkconfig: 2345 10 92
# description: Adding the first user to the _nmconnect group
#
### BEGIN INIT INFO
# Provides: nm-group
# Required-Start:
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop:
# Description: Adding the first user to the _nmconnect group
### END INIT INFO
# Source function library.
. /etc/rc.d/init.d/functions
и т.д.
Стало быть, нужно блок от BEGIN до END врезать в тот скрипт с соответствующими правками.
В принципе в Required-Start: можно добавить и $time, поскольку в ntpd здесь нет большого смысла.
Вам только нужно будет определиться в том скрипте:
- У вас время в RTC, в UTC или в localtime.
Или написать юнит для systemd. Но глядя правде в глаза, у меня большие сомнения, что кто-нибудь из пользователей systemd, включая и системных администраторов systemd, это сделает.