Ubuntu设置开机自启动脚本的方法是:修改/etc/init.d/rc.local这个文件,添加需要启动的程序即可,相关函数如下:

void SetSysAutoBoot()
{
char path[] = {};
int ret = ; ret = readlink("/proc/self/exe",path,sizeof(path)); if((ret > )&& (ret < sizeof(path)))
{
printf("system path : %s\n",path);
} char* fileName = "/etc/init.d/rc.local";
int fileLen = GetFileSize(fileName); FILE * fp = fopen(fileName,"r+");
char* buf; buf = (char*)malloc(fileLen*);
char* tempBuf = buf; if(fp == NULL)
{
return;
} int flag = ; while(!feof(fp))
{
tempBuf = fgets(buf,fileLen,fp); if(tempBuf != buf)
{
break;
} //exist
if(strstr(tempBuf,path) != )
{
//
flag = ;
} } fclose(fp); //not exist
if( == flag)
{
char buf[];
sprintf(buf,"echo \"%s &\" >> /etc/init.d/rc.local\n",path);
printf(buf);
system(buf);
} free(buf);
}

但是FC16系统并不系统自带/etc/init.d/rc.local这个文件,于是我们就要自作做一些配置了。

1. 首先写一个测试脚本,

touch /etc/rc.d/rc.local

这个文件的内容是:

#!/bin/sh
date >> /IpMonitor/test.txt
/IpMonitor/IpMonitor-Server &

设置可执行权限:

chmod 777 /etc/rc.d/rc.local

设置软链接:

ln -s /etc/rc.d/rc.local /etc/rc.local

2. 开启rc-local.service

systemctl start rc-local.service

3. reboot即可看到效果了。

top - :: up  min,   users,  load average: 1.37, 0.57, 0.21
Tasks: total, running, sleeping, stopped, zombie
Cpu(s): 0.0%us, 0.2%sy, 0.0%ni, 99.5%id, 0.1%wa, 0.2%hi, 0.1%si, 0.0%st
Mem: 8152824k total, 442280k used, 7710544k free, 488k buffers
Swap: 4095996k total, 0k used, 4095996k free, 137048k cached PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
root 441m S 0.7 0.0 :00.33 IpMonitor-Serve
root S 0.0 0.1 :01.32 systemd
root S 0.0 0.0 :00.00 kthreadd
root S 0.0 0.0 :00.01 ksoftirqd/
root S 0.0 0.0 :00.00 kworker/:
root S 0.0 0.0 :00.00 kworker/u:
root RT S 0.0 0.0 :00.00 migration/
root RT S 0.0 0.0 :00.00 watchdog/
root RT S 0.0 0.0 :00.00 migration/
root S 0.0 0.0 :00.02 kworker/:
root S 0.0 0.0 :00.00 ksoftirqd/
root S 0.0 0.0 :00.02 kworker/:
root RT S 0.0 0.0 :00.00 watchdog/
root RT S 0.0 0.0 :00.00 migration/
root S 0.0 0.0 :00.00 kworker/:
root S 0.0 0.0 :00.00 ksoftirqd/
root RT S 0.0 0.0 :00.00 watchdog/
root RT S 0.0 0.0 :00.00 migration/
root S 0.0 0.0 :00.00 kworker/:
root S 0.0 0.0 :00.00 ksoftirqd/
root RT S 0.0 0.0 :00.00 watchdog/
root RT S 0.0 0.0 :00.00 migration/
root S 0.0 0.0 :00.00 kworker/:
root S 0.0 0.0 :00.00 ksoftirqd/
root RT S 0.0 0.0 :00.00 watchdog/
root RT S 0.0 0.0 :00.00 migration/
root S 0.0 0.0 :00.00 kworker/:
root S 0.0 0.0 :00.00 ksoftirqd/
root RT S 0.0 0.0 :00.00 watchdog/
root RT S 0.0 0.0 :00.00 migration/
root S 0.0 0.0 :00.00 kworker/:
root S 0.0 0.0 :00.00 ksoftirqd/
root RT S 0.0 0.0 :00.00 watchdog/
root RT S 0.0 0.0 :00.00 migration/
root S 0.0 0.0 :00.00 kworker/:
root S 0.0 0.0 :00.00 ksoftirqd/
root RT S 0.0 0.0 :00.00 watchdog/
root - S 0.0 0.0 :00.00 cpuset
root - S 0.0 0.0 :00.00 khelper
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# cat /IpMonitor/test.txt
2013年 07月 05日 星期五 :: CST
2013年 07月 05日 星期五 :: CST
2013年 07月 05日 星期五 :: CST
2013年 07月 05日 星期五 :: CST
2013年 07月 05日 星期五 :: CST
2013年 07月 05日 星期五 :: CST

Fedora 16设置开机自启动程序与Ubuntu的区别的更多相关文章

  1. linux_设置开机自启动程序脚本

    设置开机自启动

  2. win10设置开机自启动程序

    问题情境:前两天刚刚给自己的win10系统美化了一下,但发现一个问题,每次开机都需要双击启动一个程序,才能达到一个我想要的效果,所以就在思考能不能将这个程序设为开机自启动项呢? 1.首先,找到启动文件 ...

  3. Ubuntu14.04设置开机自启动程序

    启动应用程序可以帮助我们选择开机启动项.但是在Ubuntu14.04通过Dash输入startup 找不到启动应用程序了,可以通过在控制台输入以下内容: gnome-session-propertie ...

  4. Windows 7硬盘安装CentOS 6.4 双系统 (WIN7硬盘安装Linux(Fedora 16,CentOS 6.2,Ubuntu 12.04))

     WIN7下硬盘安装Linux(Fedora 16,CentOS 6.2.Ubuntu 12.04) 近期在看<鸟哥私房菜:基础学习篇>.认为非常不错,想要用U盘装个windows 7 和 ...

  5. Windows 7硬盘安装CentOS 6.4 双系统 (WIN7下硬盘安装Linux(Fedora 16,CentOS 6.2,Ubuntu 12.04))

     WIN7下硬盘安装Linux(Fedora 16,CentOS 6.2,Ubuntu 12.04) 最近在看<鸟哥私房菜:基础学习篇>,觉得很不错,想要用U盘装个windows 7 和 ...

  6. Ubuntu14.04设置开机自启动脚本

    方法一.编辑rc.loacl脚本  Ubuntu开机之后会执行/etc/rc.local文件中的脚本,所以我们可以直接在/etc/rc.local中添加启动脚本.在 exit 0 前面添加好脚本代码, ...

  7. Android开机自启动程序

    背景知识:当Android启动时,会发出一个系统广播,内容为ACTION_BOOT_COMPLETED,它的字符串常量表示为 android.intent.action.BOOT_COMPLETED. ...

  8. 设置开机自启动VirtualBox虚拟机系统

    如果常用VirtualBox虚拟机系统的话,设置个随开机启动也是很方便的.不需要打开VirtualBox窗口,直接就是系统启动了. 又继续上网搜索学习了.(设置开机自启动VirtualBox虚拟机系统 ...

  9. CentOS7设置开机自启动方式

    方式一: # 在/etc/rc.d/rc.local文件中追加启动命令,该文件追加后,会随着机器自动后,自动运行文件中的命令 # vim /etc/rc.d/rc.local # 权限问题:在cent ...

随机推荐

  1. HTML5中的localStorage用法

    存储数据的方法就是直接给window.localStorage添加一个属性,例如:window.localStorage.name 或者 window.localStorage["name& ...

  2. Android微信SDK API 调用教程

     最近一直在调用微信的API,却发现一直调用不成功,纠结了好久,各方面找教程,找官方,官方里的文档也只是写得很模糊,说是按三步走. 1.申请App_ID 2.填写包名3. 获取程序签名的md5值, 这 ...

  3. Android使用 LruCache 缓存图片

    摘要:在你应用程序的UI界面加载一张图片是一件很简单的事情,但是当你需要在界面上加载一大堆图片的时候,情况就变得复杂起来. 使用图片缓存技术 在 你应用程序的UI界面加载一张图片是一件很简单的事情,但 ...

  4. HibernateTemplate 查询

    Spring中常用的hql查询方法getHibernateTemplate()上     一.find(String queryString);   示例:this.getHibernateTempl ...

  5. JS改变input的value值不触发onchange事件解决方案 (转)

    方法(一)(转载的网络资料) 需要了解的知识     首先,我们需要了解onchange和onpropertychange的不同: IE下,当一个HTML元素的属性改变的时候,都能通过 onprope ...

  6. UVA 11354 Bond 邦德 (RMQ,最小瓶颈MST)

    题意: n个城市,m条路,每条路有个危险值,要使得从s走到t的危险值最小.回答q个询问,每个询问有s和t,要求输出从s到t最小的危险值.(5万个点,10万条边) 思路: 其实要求的是任意点对之间的最小 ...

  7. boost编译批处理脚本

    ------------buildboost.bat-------------- @REM Used to build boost lib.@REM by Rock Wang @transoft 20 ...

  8. 【英语】Bingo口语笔记(54) - how to date a foreigner

  9. 【英语】Bingo口语笔记(70) - 最易忽略的2个连读技巧

  10. Android 图文教学让你彻底理解activity启动模式

    我们首先从最简单的开始, standard 这个模式就是默认的模式,我们都知道 当你用这个模式时,每次发送一个intent,都会生成一个新的实例! 我写一个简单的例子: <?xml versio ...