您的位置:首页 > 运维架构 > Linux

Linux入职基础-5.24_可执行程序arpwatch做成系统一个服务(应用实战8)

2018-03-03 22:11 736 查看
可执行程序arpwatch做成系统一个服务

简介:
一般Linux系统默认是不安装arpwatch工具的,所以需要自行安装,现在从网上下载arpwatch.tar.gz。
下载地址:http://sparemint.atariforge.net/sparemint/html/packages/arpwatch.html
安装过程如下:
[root@localhost tmp]# tar -zxvfarpwatch-2.1a11.tar.gz
[root@localhost tmp]# cd arpwatch-2.1a11
[root@localhost arpwatch-2.1a11]#./configure
[root@localhost arpwatch-2.1a11]# make
[root@localhost arpwatch-2.1a11]# makeinstall
可以查询arpwatch命令目录,默认安装到/usr/local/sbin下。
[root@localhostarpwatch-2.1a11]# which arpwatch
/usr/local/sbin/arpwatch
注意:如果安装过程中缺少PCap函数库(libpcap)则会出现报错提示,则需要安装该函数库,其下载地址:http://www.tcpdump.org
目前网上最新安装包为:libpcap-1.6.2.tar.gz
安装PCap(libpcap)函数库过程如下:
[root@localhost tmp]# tar -zxvflibpcap-1.6.2.tar.gz
[root@localhost tmp]# cd libpcap-1.6.2
[root@localhost libpcap-1.6.2]# ./configure
[root@localhost libpcap-1.6.2]# make
[root@localhost libpcap-1.6.2]# makeinstall设为linux服务启动:
将我们自己的程序设为linux的一个服务程序,并实现开机启动,需要经过如下三步:
①把可执行程序放在一个linux系统可以找到的地方
在linux终端下输入env |grep PATH,在输出的目录就是系统能找到的位置,将我们的程序放到其中的一个目录下即可,



从上图可知,程序arpwatch放在/usr/local/bin目录下符合要求。
②在目录/etc/init.d/下,新建一个以服务为文件名的文件
打开目录 /etc/init.d/,看到的文件其实都是服务程序文件,每个文件的内容都大同小异,这里的文件在文件结构上几乎是一样的,都有 start 、stop、restart和status这样的标志,我们新建的这个文件也要具有相同的结构,只是在这些标志内部把相应的可执行程序换成我们自己的可执行程序即可。那就是:复制——修改——保存。
[root@localhost init.d]# cpatd arpwatch
[root@localhost init.d]# vim  arpwatch
#!/bin/bash
#
#/etc/rc.d/init.d/arpwatch
set -e
case "$1" in
start)
        /usr/local/sbin/arpwatch &
        ;;
stop)
        pkill arpwatch
        ;;
reload|restart)
         pkill arpwatch
        /usr/local/sbin/arpwatch &
        ;;
esac
exit 0
③为了开机启动就运行自己程序,需要在目录/etc/rc3.d,新建一个指向第2步中建立的服务文件的符号连接文件
目录 /etc/rc3.d/ 是系统启动时自动搜索的目录,该目录下的符号连接文件的目标文件,都将被运行,这就是在这个目录建立符号连接的原因——为了开机就运行。
打开目录/etc/rc3.d,可以看到这里都是符号连接文件(相当于windows中的快捷方式),采用一下命令格式如下:
            ln -sf 目标文件名连接文件名
[root@localhost~]# cd /etc/rc3.d
[root@localhostrc3.d]# ln -sf /etc/init.d/arpwatch S100arpwatch
连接文件名采用“SXX目标文件名”的格式。其中XX一般是一个从1到100的整数,它表示启动优先级,数字越大,优先级越低,比如服务A的运行要依赖服务B,那A的XX数字就应该大于B的。后跟“目标文件名”是为了一目了然,一看就知道是哪个文件的符号连接。
完成以上3个步骤,你就把自己的一个可执行程序做成系统的一个服务了,它具有我们一开始说的几个特定。我们可以用service命令控制这个程序了:
启动:servicearpwatch start
停止:service arpwatchstop
重启:service arpwatchrestart
④编辑/etc/rc.local文件,在文件末尾添加启动脚本,内容如下:
[root@localhost ~]# vim /etc/rc.local
service serialread start
exit 0
这样arpwatch这个服务就可以开机启动了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: