linux自启动服务
Ⅰ 如何在linux里面设置程序自动启动
只需编辑/etc/init.d/rc.local文件,在最后加上你的脚本即可。
比如:我已经编写了一个脚本shell.sh,存放在/home/mars704/Desktop/ 下面
在终端输入 gedit /etc/init.d/rc.local编辑文件,在结尾出加入:
/home/mars704/Desktop/sh.sh 即可开机自动加载脚本
首先,linux随机启动的服务程序都在/etc/init.d这个文件夹里,里面的文件全部都是脚本文件(脚本程序简单的说就是把要运行的程序写 到一个 文件里让系统能够按顺序执行,类似windows下的autorun.dat文件),另外在/etc这个文件夹里还有诸如名为rc1.d, rc2.d一直到rc6.d的文件夹,这些都是linux不同的runlevel,我们一般进入的X windows多用户的运行级别是第5级,也就是rc5.d,在这个文件夹下的脚本文件就是运行第5级时要随机启动的服务程序。需要注意的是,在每个rc (1-6).d文件夹下的文件其实都是/etc/init.d文件夹下的文件的一个软连接(类似windows中的快捷方式),也就是说,在 /etc/init.d文件夹下是全部的服务程序,而每个rc(1-6).d只链接它自己启动需要的相应的服务程序!
要启动scim(某一 程序),我们首先要知道scim程序在哪里,用locate命令可以找到,scim在/usr/bin/scim这里,其中usr表 示是 属于用户的,bin在linux里表示可以执行的程序。这样,我就可以编写一个脚本程序,把它放到/etc/init.d里,然后在rc5.d里做一个相 应的软链接就可以了。
这个脚本其实很简单,就两行:
#!/bin/bash
/usr/bin/scim
第一行是声明用什么终端运行这个脚本,第二行就是要运行的命令。
还 需要注意的一点是,在rc5.d里,每个链接的名字都是以S或者K开头的,S开头的表示是系统启动是要随机启动的,K开头的是不随机启动的。这 样,你就可以知道,如果我要哪个服务随机启动,就把它名字第一个字母K改成S就可以了,当然,把S改成K后,这个服务就不能随机启动了。因此,我这个链接 还要起名为SXXX,这样系统才能让它随机启动。
在RH下,rc.local是默认启动的最后一个脚本文件,所以,
如果你想要随机启动,还有一种方法就是在rc.local的尾部加入/usr/bin/scim,这样就可以了
Ⅱ linux上像服务一样启动python程序,开机自动启动,能够start,stop,restart,status等
你的python脚本要做到可以被service来管理,无需将python脚本包到shell脚本里,实现以下六个步骤即可:
1、系统有相应的python解释器,并在脚本头部声明,例如:#!/usr/bin/python
2、给予该脚本可执行权限,如:chmod +x somescript.py
3、脚本接受第一个命令参数,需要能接受至少包含start的参数,至于stop、restart以及status等并不是必须的,你可以自己来扩展。如: ./somescript.py start 这种命令格式来启动程序
4、将该脚本放到/etc/rc.d/init.d/路径下
5、chkconfig --add somescript.py添加服务
6、chkconfig --level 35 somescript.py on 在init为3和5的级别上开机启动该服务
Ⅲ linux镊锷ㄥ惎锷ㄨ剼链琹inux镊锷ㄥ惎锷
linux镊钖锷ㄦ湇锷″备綍镓揿紑绋嫔簭锛
鐢ㄦ埛镊瀹氢箟寮链虹▼搴(/etc/rc.d/rc.local)
鐢ㄦ埛鍙浠ュ皢镊宸变功鍐欑殑shellscript鏂囦欢鏀惧叆鍏朵腑锛屾垨钥呮暟鎹搴撶殑镊锷锛寃as绛夌瓑
姣斿傝╂暟鎹搴揿紑链鸿嚜钖锛
vi/etc/rc.local娣诲姞浠ヤ笅鍐呭癸细
su-oracle-clsnrctlstart//璁╃洃钖钖锷ㄨ捣𨱒
su-oracle-cdbstart//璁╂暟鎹搴揿惎锷ㄨ捣𨱒
linux濡备綍寮链鸿嚜锷ㄨ繍琛宻h鑴氭湰锛
瑕佸紑链鸿繍琛屽彧闇灏嗗畠锷犲叆鍒皉c.local锛屼竴鑸涓/etc/rc.d/rc.local鍦ㄥ叾涓锷犲叆浠ヤ笅琛岋细
sh/path/to/test.sh
浣跨敤linux鍏ㄥ眬鍙橀噺$?鍙浠ョ‘瀹氭槸钖︽墽琛岋纴濡
if
then
echo"succeed!"
fi
#modifiedsometypo--update@22:48
linux镄勫畾镞堕吨钖镄勫叿浣揿懡浠ゃ傞潪甯告劅璋锛
Linux绯荤粺鍒╃敤Crontab锻戒护瀹炵幇瀹氭椂閲嶅惎Crontab鏄涓涓寰堟柟渚跨殑鍦╱nix/linux绯荤粺涓婂畾镞(寰鐜)镓ц屾煇涓浠诲姟镄勭▼搴忎娇鐢╟ron链嶅姟锛岀敤servicecrondstatus镆ョ湅cron链嶅姟鐘舵侊纴濡傛灉娌℃湁钖锷ㄥ垯servicecrondstart钖锷ㄥ畠锛宑ron链嶅姟鏄涓涓瀹氭椂镓ц岀殑链嶅姟锛屽彲浠ラ氲繃crontab锻戒护娣诲姞鎴栬呯紪杈戦渶瑕佸畾镞舵墽琛岀殑浠诲姟锛歝rontab-u//璁惧畾镆愪釜鐢ㄦ埛镄刢ron链嶅姟锛屼竴鑸瑀oot鐢ㄦ埛鍦ㄦ墽琛岃繖涓锻戒护镄勬椂鍊欓渶瑕佹ゅ弬鏁瘫rontab-l//鍒楀嚭镆愪釜鐢ㄦ埛cron链嶅姟镄勮︾粏鍐呭筩rontab-r//鍒犻櫎娌′釜鐢ㄦ埛镄刢ron链嶅姟crontab-e//缂栬緫镆愪釜鐢ㄦ埛镄刢ron链嶅姟姣斿傝磖oot镆ョ湅镊宸辩殑cron璁剧疆锛歝rontab-uroot-l鍐崭緥濡傦纴root𨱍冲垹闄fred镄刢ron璁剧疆锛歝rontab-ufred-r銆佺紪杈庆ron链嶅姟镞讹纴缂栬緫镄勫唴瀹规湁涓浜涙牸寮忓拰绾﹀畾锛岃緭鍏ワ细crontab-uroot-e杩涘叆vi缂栬緫妯″纺锛岀紪杈戠殑鍐呭逛竴瀹氲佺﹀悎涓嬮溃镄勬牸寮忥细*/1****ls>>/tmp/ls.txt缂栬緫/etc/crontab鏂囦欢锛屽湪链灏惧姞涓娄竴琛岋细305***rootinit6杩欐牱灏卞皢绯荤粺閰岖疆涓轰简姣忓ぉ镞╀笂5镣30镊锷ㄩ吨鏂板惎锷ㄣ傞渶瑕佸皢crond璁剧疆涓虹郴缁熷惎锷ㄥ悗镊锷ㄥ惎锷ㄧ殑链嶅姟锛屽彲浠ュ湪/etc/rc.d/rc.local涓锛屽湪链灏惧姞涓妔ervicecrondstart濡傛灉杩橀渶瑕佸湪绯荤粺钖锷ㄥ崄锷犺浇鍏朵粬链嶅姟锛屽彲浠ョ户缁锷犱笂鍏朵粬链嶅姟镄勫惎锷ㄥ懡浠ゃ傛瘆濡傦细servicemysqldstart锘烘湰鐢ㄦ硶:1.crontab-l鍒楀嚭褰揿墠镄刢rontab浠诲姟2.crontab-d鍒犻櫎褰揿墠镄刢rontab浠诲姟3.crontab-e(solaris5.8涓婇溃鏄痗rontab-r)缂栬緫涓涓猚rontab浠诲姟,ctrl_D缁撴潫4.crontabfilename浠filename锅氢负crontab镄勪换锷″垪琛ㄦ枃浠跺苟杞藉叆crontabfile镄勬牸寮:crontab鏂囦欢涓镄勮岀敱6涓瀛楁电粍鎴愶纴涓嶅悓瀛楁甸棿鐢ㄧ┖镙兼垨tab阌鍒嗛殧銆傚墠5涓瀛楁垫寚瀹氩懡浠よ佽繍琛岀殑镞堕棿鍒嗛挓(0-59)灏忔椂(0-23)镞ユ湡(1-31)链堜唤(1-12)鏄熸湡鍑(0-6锛屽叾涓0浠h〃鏄熸湡镞)绗6涓瀛楁垫槸涓涓瑕佸湪阃傚綋镞堕棿镓ц岀殑瀛楃︿覆渚嫔瓙:##姣忓ぉ镞╀笂6镣10鍒106***date#姣忎袱涓灏忔椂0*/2***date(solaris5.8浼间箮涓嶆敮鎸佹ょ嶅啓娉)#鏅氢笂11镣瑰埌镞╀笂8镣逛箣闂存疮涓や釜灏忔椂锛屾棭涓8镣023-7/2锛8***date#姣忎釜链堢殑4鍙峰拰姣忎釜绀兼嫓镄勭ぜ𨰾滀竴鍒扮ぜ𨰾滀笁镄勬棭涓11镣0114*mon-weddate#1链堜唤镞ユ棭涓4镣041jan*date琛ュ厖锛氩湪浣跨敤crontab镄勬椂鍊欙纴瑕佺壒鍒娉ㄦ剰镄勬槸杩愯岃剼链涓鑳藉熻块梾鍒扮殑鐜澧冨彉閲忓拰褰揿墠娴嬭瘯鐜澧冧腑镄勭幆澧冨彉閲忔湭蹇呬竴镊达纴涓涓姣旇缉淇濋橹镄勫仛娉曟槸鍦ㄨ繍琛岀殑鑴氭湰绋嫔簭涓镊琛岃剧疆鐜澧冨彉閲(export)(1)鍏埚缓涓涓鏂囦欢crond.txt濡备笅锛屾疮澶╂棭涓5镣36鍒嗛吨鏂板惎锷365***reboot(2)涓娄紶鍒/opt鐩褰(3)杩愯屽懡浠crontab/opt/crond.txtcrontab-l璁╅厤缃鏂囦欢鐢熸晥锛氩傛灉璁╅厤缃鏂囦欢鐢熸晥锛岃缮寰楅吨鏂板惎锷╟ron锛屽垏璁帮纴镞㈢劧姣忎釜鐢ㄦ埛涓嬬殑cron閰岖疆鏂囦欢淇鏀瑰悗銆备篃瑕侀吨鏂板惎锷╟ron链嶅姟鍣ㄣ傚湪Fedora鍜孯edhat涓锛屾垜浠搴旇ョ敤锛#/etc/init.d/crondrestart濡傛灉璁ヽrond鍦ㄥ紑链烘椂杩愯岋纴搴旇ユ敼鍙桦叾杩愯岀骇鍒锛#chkconfig--镆ョ湅cron链嶅姟鐘舵侊纴濡傛灉娌℃湁钖锷ㄥ垯servicecrondstart钖锷ㄥ畠锛宑ron链嶅姟鏄涓涓瀹氭椂镓ц岀殑链嶅姟锛屽彲浠ラ氲繃crontab锻戒护娣诲姞鎴栬呯紪杈戦渶瑕佸畾镞舵墽琛岀殑浠诲姟
linux寮链鸿嚜锷ㄥ惎锷ㄨ剼链鏀惧湪鍝鍎匡纻
鍦/etc/rc.local涓娣诲姞濡傛灉涓嶆兂灏呜剼链绮樻潵绮桦幓锛屾垨鍒涘缓阈炬帴浠涔堢殑锛屽垯:step1.鍏堜慨鏀瑰ソ鑴氭湰锛屼娇鍏舵墍链夋ā鍧楅兘鑳藉湪浠绘剰鐩褰曞惎锷ㄦ椂姝e父镓ц;step2.鍐嶅湪/etc/rc.local镄勬汤灏炬坊锷犱竴琛屼互缁濆硅矾寰勫惎锷ㄨ剼链镄勮;濡:$vim/etc/rc.local#!/bin/sh##Thisscriptwillbeexecuted*after*alltheotherinitscripts.#'t#.touch/var/lock/subsys/local./etc/rc.d/rc.tune/opt/pjt_test/test.pl淇濆瓨骞堕鍑;
Linuxshell鑴氭湰濡备綍镊锷ㄨ繍琛岀▼搴忓苟杈揿叆锻戒护锛
鎴戝缓璁浣犱娇鐢╯hell镄剆pawn锻戒护锛屽緢濂界敤镄勶纴鑳藉疄鐜颁綘璇寸殑锷熻兘锛丩inuxshell鑴氭湰濡备綍镊锷ㄨ繍琛岀▼搴忓苟杈揿叆锻戒护