rsync启动脚本

rsync启动脚本

第1行,指定哪一种shell来解释执行咱们的脚本,在linux下通常都推荐bash了。
第3行,脚本的名字,和这个脚本的功能简单的说明,不是必须的,可是推荐不要省略。html

第6行,虽然前面带#号,是注释,但要用chkconfig命令注册开机启动服务器的话,该句必不可少,格式也不能错!
# chkconfig: – 99 50 冒号的3个参数的含义:
第一位(X):是指定该脚本在哪一个系统启动级别下运行(关于linux启动级别将在别的博文中介绍),好比你须要在3,4,5上运行,那么第二位就设置成345,我这里用的是”-”,表明在2,3,4,5上都运行。
第二位(Y):系统启动时,服务启动顺序。(须要注意的是,有的程序依赖与别的程序的话,启动顺序就要注意了,好比A程序的启动依赖于B程序的启动,那么A程序的这个值必定要比B程序大。)
第三位(Z):系统终止时,服务终止顺序。
当你用chkconfig添加一个自动启动服务后,就会自动在对应的/etc/rc.d/rcX.d/下建立1个指向本启动脚本的软链接文件SYrsyncd,在别的启动级别(好比是N)/etc/rc.d/rcN.d/KZrsyncd
按我设置的具体就会在/etc/rc.d/rc{2,3,4,5}.d/下建立S99rsyncd,在/etc/rc.d/rc{0,1,6}.d/下建立K50rsyncdlinux

第7行,该句也必不可少,理由同上,你程序的描述和间接,而非本启动脚本。
第8行,进程名字,说的是你的程序,而非本启动脚本,该句可省略。
第9行,设定文件路径说明,该句可省略。
第12行,系统提供的函数文件,这里面实现了不少函数和环境变量,好比start的时候,红色的字显示OK就是这个文件的功劳。web

第14行,保存退出状态的变量,初始值为0(在linux通常0表示成功,表示OK,非0表示异常,不OK)
shell

第15行,程序rsync所在的路径。
bash

第16行,一个变量,初始值为咱们程序的名字。
服务器

第17行,配置文件路径及名字。ide

第19行,程序启动函数,做为一个启动脚本必不可少。
第21,22行,判断程序是否存在,若是不存在则异常退出脚本。
第23,24行,判断设定文件是否存在,若是不存在则异常退出脚本。
第25行,显示信息,这个显示的效果依赖于12行。
第26行,启动程序,用到的这个daemon是个函数,定义在12行的文件中,完整路径的程序rsync和启动参数做为daemon的参数。
第27行,把daemon函数调用的结果保存到RETVAL里。
第28行,判断RETVAL值,若是是0,则表示程序启动成功,建立lock文件。
第30行,自己这段代码也是个函数,因此咱们也要返回,返回RETVAL的值。函数

第33行,关闭程序函数,做为一个启动脚本必不可少。
第35行,显示信息,这个显示的效果依赖于12行。
第36行,关闭程序,killproc也是定义在12行的文件中。
第37行,把killproc函数调用的结果保存到RETVAL里。
第39行,判断RETVAL值,若是是0,则表示程序关闭成功,删除lock文件。
url

第44~63行,就是一个case语句块,根据用户传入给启动脚本rsyncd的参数,去调用咱们定义的start或者stop函数而已。
第57行,查看当前程序的启动状态,status一样定义在12行的文件中。orm

相关文章
相关标签/搜索