我只需要在 CentOS 机器第一次启动(安装操作系统后)时运行一些 bash 脚本这个脚本应该在网络服务启动之前运行(因为这个脚本会改变网络配置)我如何注册我的脚本在网络服务启动之前运行?
我,systemctl start apache2在服务已经启动的情况下运行(或其他服务)时会发生什么?
apache2服务一天启动几百次会不会有问题?(防止服务关闭)或者它会使用内存还是危险?
我想让 www-data 用户能够使用此命令重新启动 bind9
服务 bind9 重启
目前,他们可以执行它,它将停止 bind9 但不会再次重新启动它,抱怨权限不允许对“named”文件进行 chmod。
你能指出我需要做的事情的方向吗
更新
好的,所以我按照要求将该行添加到 sudoers。
www-data ALL=NOPASSWD: /etc/init.d/bind9
Run Code Online (Sandbox Code Playgroud)
它仍然存在一些问题:
root@LAMPREY:~# su www-data
$ service bind9 restart
* Stopping domain name service... bind9 rndc: error: none:0: open: /etc/bind/rndc.key: permission denied
rndc: could not load rndc configuration
[ OK ]
* Starting domain name service... bind9 chmod: changing permissions of `/var/run/named': Operation not permitted
$ exit
Run Code Online (Sandbox Code Playgroud)
然后我还尝试运行另一个命令
/etc/init.d/bind9 restart
* Stopping domain name service... bind9 rndc: error: none:0: open: /etc/bind/rndc.key: permission denied …Run Code Online (Sandbox Code Playgroud) 我有一个服务设置为在启动时启动,但它没有这样做,我不知道在哪里查看(例如日志)来解决它。
我已经验证了运行级别:
$ grep default /etc/inittab
id:3:initdefault:
Run Code Online (Sandbox Code Playgroud)
符号链接在那里:
$ find /etc -name *beans*
/etc/rc.d/rc6.d/K47beanstalkd
/etc/rc.d/rc1.d/K47beanstalkd
/etc/rc.d/rc0.d/K47beanstalkd
/etc/rc.d/rc2.d/K47beanstalkd
/etc/rc.d/rc4.d/K47beanstalkd
/etc/rc.d/rc3.d/K47beanstalkd
/etc/rc.d/rc5.d/K47beanstalkd
/etc/rc.d/init.d/beanstalkd
Run Code Online (Sandbox Code Playgroud)
当我手动启动它时(通过“sudo /etc/init.d/beanstalkd start”)它工作正常。
我从哪里开始解决这个问题?在哪里可以记录引导序列以便我可以 grep 查找问题?如果重要的话,这是一个 CentOS 机器。
谢谢。
我已经在我的 AWS EC2 实例上设置了 apache、mysql 和 php,但是如何在 EC2 启动时启动这些服务?我找到了chkconfig -a mysql命令,但这只是给出了一个错误,如option -a not found.