Как я могу убедиться, что init.d-скрипт запускается после того, как сетевые интерфейсы получили свои адреса через DHCP?
Я только что установил couchdb в систему debian5 и добавил символические ссылки в /etc/init.d/couchdb-script. К сожалению, этот сценарий запускается при запуске до того, как сетевой интерфейс получил адрес через DHCP, к которому пытается подключиться couchdb-сервер - что делает экземпляр более несуществующим.
Я вроде решил эту проблему, выполнив dhclient в стартовом скрипте, но там просто должен был быть лучший способ...? Есть?
2 ответа
Да, есть лучший способ: поместите скрипт инициализации couchdb в /etc/network/if-up.d/
поэтому он будет работать после настройки вашей сети.
Обрати внимание на:
Filenames should consist entirely of upper and lower case letters, digits, underscores, and hyphens. Subdirectories of directory and files with other names will be silently ignored.
На CentOS и, вероятно, RedHat он проверяет, есть ли файл /sbin/ifup-local
и выполнит это, если это будет доступно.
создать его:
sudo touch /sbin/ifup-local
sudo chmod +x /sbin/ifup-local
Затем отредактируйте его так, чтобы оно содержало то, что вы хотели бы
#!/bin/sh
# your commands or calls to your script here
Надеюсь, это поможет. Мне нравится Debian .d
каталог лучше, но это, кажется, самый близкий эквивалент на CentOS.