Linux Debian在init脚本中启动时运行命令

前端之家收集整理的这篇文章主要介绍了Linux Debian在init脚本中启动时运行命令前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我很熟悉 Linux(显然),我需要在 Linux服务器启动时运行一些命令,而无需手动将它们输入控制台.

我有一个名为overpass.conf的文件,完全在启动时运行:

  1. description 'Overpass API dispatcher daemon'
  2.  
  3. env DB_DIR=/var/www/osm/db/
  4. env EXEC_DIR=/var/www/osm/
  5.  
  6. start on (local-filesystems and net-device-up)
  7. stop on runlevel [!2345]
  8.  
  9. pre-start script
  10. rm $DB_DIR/osm3s* || true
  11. rm /dev/shm/osm3s* || true
  12. end script
  13.  
  14. exec $EXEC_DIR/bin/dispatcher --osm-base --db-dir=$DB_DIR

但是,我还要运行以下命令:

  1. cp -pR "/root/osm-3s_v0.7.4/rules" "/var/www/osm/db/"
  2.  
  3. nohup /var/www/osm/bin/dispatcher --areas --db-dir="/var/www/osm/db/" &
  4.  
  5. chmod 666 "/var/www/osm/db/osm3s_v0.7.4_areas"
  6.  
  7. nohup /var/www/osm/bin/rules_loop.sh "/var/www/osm/db/" &

我已经尝试将它们添加文件底部,将exec添加到执行命令,甚至尝试删除引号,然后使用start overpass进行测试,但如果我向原始命令添加任何命令,则会引发错误.

如何在原始命令之后执行这4个命令?我是一个遇难的小伙子.谢谢!

编辑

我用这些命令解决了它:

  1. vi /etc/init.d/mystartup.sh

– 向脚本添加命令

  1. chmod +x /etc/init.d/mystartup.sh
  2. update-rc.d mystartup.sh defaults 99

解决方法

还有
  1. /etc/rc.local

在引导过程结束时执行.

猜你在找的Linux相关文章