概述
在网关测试组工作期间,产品支持SUSE9/SUSE10/SUSE11平台,每次部署环境,都要进行网卡配置操作,虽然有指导手册,无奈比较懒,不想浪费心力在手动配置上,于是酝酿出这个脚本,实现自动进行网卡的绑定动作,一旦绑定失败,自动还原。
直接上脚本
perl
#!/usr/bin/perl
use warnings;
use strict;
use Sys::Hostname;
use Socket;
################################################################################
# ###################################################################### #
# # 说明: 完成网卡文件的备份、绑定、回滚等操作 # #
# # 使用: perl network_bond.pl # #
# # AUTH: Gavin Wang # #
# # VER : 1.0 # #
# # TIME: 2012-06-11 18:50 create # #
# # VER : 1.1 # #
# # TIME: 2013-05-08 18:05 增加SUSE9/11平台绑定网卡操作 # #
# ###################################################################### #
################################################################################
#定义全局变量
chomp(my $OS_Type = $^O); #操作系统类型
my $cornel; #内核版本号,2013-05-08
my $host=hostname(); #修改获取大网IP可能错误问题,2013-05-08
my $IP_A=inet_ntoa(scalar gethostbyname ($host || 'localhost'));
chomp($IP_A);
#判断当前登录用户,非root,退出
my $localuser = getlogin || (getpwuid($<))[0] || die "Can't find a user here!!!\n";
if($localuser ne "root")
{
print "\n当前登录用户非root,退出!\n\n";
exit;
}
else
{
print "\n【说明】
1、本脚本仅支持SUSE9/SUSE10/SUSE11平台
2、本脚本将Fabric平面网卡绑定成bond0,将Base平面网卡绑定成bond1
3、本脚本备份原网卡配置文件,备份在 /etc/sysconfig 目录下,network_日期.tar.gz
如果绑定失败,请登录usm,到 /etc/sysconfig 目录下解压后重启网卡既可. \n\n";
##判断操作系统类型
if($OS_Type =~ /linux/)
{
chomp($cornel=`cat /etc/SuSE-release | head -1`); #内核版本号
##获取系统时间
my ($sec,$min,$hour,$day,$month,$year)= localtime(time());
$year+=1900;
$month=sprintf("%02d",$month+1);
$day=sprintf("%02d",$day);
$hour=sprintf("%02d",$hour);
$min=sprintf("%02d"

3681

被折叠的 条评论
为什么被折叠?



