当前位置: 首页 >> 榆树网-系统 >> 文章正文

为CentOS网卡启动脚本增加PreUp、PostUp、PreDown和PostDown脚本

一直习惯RedHat的配置风格,由于工作需求,偶尔也接触一下Debian系统,发现Debian配置网络参数的时候可以定义Pre-up script和Post-up script,有的时候还真需要这样的脚本。通过查看CentOS的ifup、ifdown脚本,发现脚本已经预留了相应的接口,只要把相应的脚本补齐即可。以下是增加的几个脚本:

$ cat /sbin/ifup-pre-local

#!/bin/sh

export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin

if [ -z "$1" ]; then
 echo $"usage: $0 <ifcf-file>"
 exit 1
fi

CFGFILE="/etc/sysconfig/network-scripts/$1"

[ -f "$CFGFILE" ] && . $CFGFILE

FILES="/etc/sysconfig/network-scripts/preup-$DEVICE"
if [ -x "$FILES" ]; then
 /bin/sh $FILES
fi

$ cat /sbin/ifup-local

#!/bin/sh

export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin

if [ -z "$1" ]; then
 echo $"usage: $0 <net-device>"
 exit 1
fi

FILES="/etc/sysconfig/network-scripts/postup-$1"
if [ -x "$FILES" ]; then
 /bin/sh $FILES
fi

$ cat /sbin/ifdown-pre-local

#!/bin/sh

export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin

if [ -z "$1" ]; then
 echo $"usage: $0 <net-device>"
 exit 1
fi

FILES="/etc/sysconfig/network-scripts/predown-$1"
if [ -x "$FILES" ]; then
 /bin/sh $FILES
fi

$ cat /sbin/ifdown-local

#!/bin/sh

export PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/sbin:/usr/local/bin

if [ -z "$1" ]; then
 echo $"usage: $0 <net-device>"
 exit 1
fi

FILES="/etc/sysconfig/network-scripts/postdown-$1"
if [ -x "$FILES" ]; then
 /bin/sh $FILES
fi

从以上脚本可以看出,如果你要在eth0网卡启动前先做一些预处理,那你可以在/etc/sysconfig/network-scripts/下创建preup-eth0文件,文件内容具体为需要执行的脚本内容,最后给脚本加上执行权限即可。同理,在postdown-eth0里的脚本内容,将会在停止eth0后执行。

这样执行ifup eth0;ifdown eth0,一些依赖eth0的应用就很容易处理了。

相关文章

2 Responses to “为CentOS网卡启动脚本增加PreUp、PostUp、PreDown和PostDown脚本”

  1. 有颜色的猫 说道:

    代码显示的效果好Cool~~~

  2. admin 说道:

    插件的作者很厉害,哈哈

发表评论