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. 聚集索引、非聚集索引、聚集索引组织表、堆组织表、Mysql/PostgreSQL对比、联合主键/自增长、InnoDB/MyISAM(引擎方面另开一篇)

    参考了多篇文章,分别记录,如下. 下面是第一篇的总结 http://www.jb51.net/article/76007.htm: 在MySQL中,InnoDB引擎表是(聚集)索引组织表(cluste ...

  2. css新增UI样式

    1.圆角 border-radius <style> .box{width:200px;height:300px;border:1px solid #000;border-radius:1 ...

  3. openerp 7 在ubuntu上设置开机启动

    我们要让openerp开机运行起来. 第一步,先进入系统目录: cd /etc/init.d 第二步,创建文件.命名为openerp-server sudo vi openepr-server 第三步 ...

  4. HDU 5366 The mook jong (简单DP)

    题意:ZJiaQ希望把木人桩摆在自家的那个由1*1的地砖铺成的1*n的院子里.由于ZJiaQ是个强迫症,所以他要把一个木人桩正好摆在一个地砖上,由于木人桩手比较长,所以两个木人桩之间地砖必须大于等于两 ...

  5. 20160203.CCPP体系详解(0013天)

    程序片段(01):数组.c+02.数组初始化语法.c 内容概要:数组 ///01.数组.c #include <stdio.h> #include <stdlib.h> //0 ...

  6. Maven 安装Jar包到本地仓库

    开始cmd: 例1: mvn install:install-file -DgroupId=Issues -DartifactId=beautyeye -Dversion=3.5 -Dpackagin ...

  7. python练习程序(c100经典例19)

    题目: 一个数如果恰好等于它的因子之和,这个数就称为“完数”.例如6=1+2+3.编程找出1000以内的所有完数. def foo(a): sra=a; lis=[1]; while 1: for i ...

  8. [转] gc tips(3)

    原文地址:http://kevincao.com/2011/08/actionscript-garbage-collection-2/ 谈谈ActionScript垃圾回收(下) 前文我们介绍了GC的 ...

  9. in 和 exist 区别

    select * from Awhere id in(select id from B) 以上查询使用了in语句,in()只执行一次,它查出B表中的所有id字段并缓存起来.之后,检查A表的id是否与B ...

  10. bjfu1287字符串输出的大水题

    不多说 /* * Author : ben */ #include <cstdio> #include <cstdlib> #include <cstring> # ...