linux如何给程序添加自启动

我要使我的服务程序在重启系统后也随之自动启动。启动我的服务用到了一个脚本。
现在有两个方法:

法1:

sudo vi /etc/init.d/rc.local
在这里添加启动服务的脚本命令.

这个方法的优点是:此时尚未登录用户,启动服务用的是su。相当于sudo。权限无比大. 
这个方法的缺陷是:这个时候用户尚未login,当然更没有指定用户主目录,因此假如我们的服务程序里有用到'~'作为路径的,那就废了,'~'表示'null'...
ps:可以在/var/log/boot.log里看日志.

法2:

sudo vi /etc/profile
在最下面添加启动服务的脚本命令。

这个方法的优点是:已登录用户,指定了主目录是啥、使用何种shell等等,并且设置好了各种环境变量。那么也就可以用'~'指定主目录了。
这个方法的缺陷是:权限同当前用户。如果是普通用户,sudo命令就废了,这启动脚本是不会给你交互使输入密码的。

参考资料:
1. http://hi.baidu.com/youdianweidao/blog/item/b3ef79ecb197e42e62d09fdb.html
2. http://blog.csdn.net/unbutun/article/details/3847514

原文地址:https://www.cnblogs.com/yun007/p/3902439.html