感谢支持
我们一直在努力

Fedora 13 下 H3C8021X客户端自动配置脚本

学校用的是校园网,客户端用h3c,先连接校园网,要用外网的话就要网页认证,然后才能连接外网.


当时装客户端的时候,显示的什么 IP自动刷新脚本安装成功,开机自启动安装成功…等
原来用的是Ubuntu 每次开机进入桌面之后都要手动联网,还能受得了,因为当时不知道开机自启动到底是个什么情况.
换了Fedora后,感觉太牛X了,开机自启动,直接连接上校园网了,我只要再进行一次网页认证就可以了,一直用着很好.


但是前两天因为考试,没用网,用电脑看复习资料的时候,没插网线,然后Fedora就一直卡在蓝白条那里,按F1之后才知道,原来是h3c认证通不过的问题,显示连接超时”time out:5″,然后再一次连接,再超时,再连接,连接5,6次之后就不连了,h3c退出.这时候要么进去系统,要么就会一直闪屏,只能重启.只有插上网线,认证通过才可以进入系统.


我一想,这不麻烦了吗,要是我不用网就进不去系统的话,没网的时候我连个电影都没法看啊,所以最好的办法就是把开机自启动的程序去掉就可以了啊.


首先下载H3C8021X客户端在Linux公社(LinuxIDC.com)的1号服务器。


FTP地址:ftp://www.linuxidc.com


用户名:www.linuxidc.com


密码:www.muu.cc


在2011年LinuxIDC.com\1月\Fedora 13 下 H3C8021X客户端自动配置脚本\


具体下载方法见http://www.linuxidc.net/thread-1186-1-1.html 与 http://www.linuxidc.net/thread-1189-1-1.html


由于一般的 h3c安装包里面的README文件都是说执行


./pre.ps


就可以了,然后再执行


linux1x -c


进行手动配置,又要选择是多播还是广播,还有什么IP自动刷新什么的,新手很害怕这玩意,所以有高手写了一个自动配置这玩意的脚本文件,


但是高手再写这个的时候我估计没有想太多,放了开机自动运行程序还有自动检测程序,所以就出现了我这样的 ,用fedora不插网线就进不去系统的情况,用ubuntu的时候没有出现这样的情况,而且ubuntu不管怎么样,都要进行手动联网,很不爽,当时这是再用了fedora之后才有的感想.


下面就分析分析这个脚本文件有多牛X


#程序主函数部分


declare who1=`whoami`


if [ $who1 != “root” ]


then


   echo You are using a non-privileged account;


   echo Please change to root user and try again;


   exit;


fi


 


clear


sys_lang=`echo $LANG`


case $sys_lang in


zh_CN*)


menu_chinese


;;


*)


menu_english


;;


esac

首先根据你的系统语言,选择对应语言的安装程序,很周到,呵呵.


然后就调用 menu_chinese函数了


#中文菜单


function menu_chinese


{


declare wrong_input=1;


while [ $wrong_input -eq 1 ]


do


 clear


 echo “欢迎使用 H3C for Linux 安装引导脚本”


 echo “1.安装 H3C for Linux”


 echo “2.直接运行 H3C for Linux”


 echo “3.卸载 H3C for Linux”


 echo “4.退出”


 echo -ne “请输入你的选择:”


 read menu_choose


 case $menu_choose in


 1)


 wrong_input=0


creat_hold   #此函数生成自动重连程序,所以此处可以用#注解掉.


auto_choose


install_chinese


 ;;


 2)


 wrong_input=0


run_chinese


 ;;


 3)


 wrong_input=0


uninstall_chinese


 ;;


 4)


 wrong_input=0


 echo “程序结束.”


 ;;


 *)


 echo “错误的选择数!”


 echo “请重新输入!”


 sleep 1


 wrong_input=1


 ;;       


 esac


done;


}


选择1的话先调用一个creat_hold函数,此函数就是用来生成自动重连程序的,所以一直进不去系统有很大原因是因为他,所以我们再这里把这个函数注解掉,就不会生成自动重连程序了.

然后是一个选择发行版函数,这个很重要.


然后是安装函数.


安装函数有研究


#中文安装函数


function install_chinese


{


declare wrong_pre=0


if test -e “/etc/h3c-linux1x”


 then


  echo “配置目录已经存在.”


else


  mkdir /etc/h3c-linux1x


fi


 


if test -e “/var/log/h3c-linux1x”


 then


  echo “日志目录已经存在.”


 else


  mkdir /var/log/h3c-linux1x


fi


 


if test -e “/usr/lib/libstdc++-libc6.2-2.so.3”


 then


  echo “共享库文件已经存在.”


else


  declare temp1=`ls /usr/lib/libstdc++* | head -1`


  ln -s $temp1 /usr/lib/libstdc++-libc6.2-2.so.3


  echo “成功创建库文件软连接.”


fi


 


if test -e “./renew.ps”


 then


    {


cp ./renew.ps /usr/local/bin


chmod 755 /usr/local/bin/renew.ps


echo “刷新IP脚本准备就绪.”


    }


else


  {


 echo “无法找到刷新IP脚本!”


echo “请确认’renew.ps’文件存在!”


wrong_pre=1


  }


fi


 


if test -e “./linux1x”


 then


  cp ./linux1x /usr/local/bin


  chmod 755 /usr/local/bin/linux1x


  echo “认证程序准备就绪.”


 else


   echo “无法找到认证程序!”


echo “请确认’linux1x’文件存在!”


wrong_pre=2


fi


autorun_chinese    #这里就是症结所在,把这个函数注解掉就不会生成开机自动运行程序了


case $wrong_pre in


0)


echo “安装成功.”


;;


1)


echo “缺少 ‘renew.ps’文件.”


;;


2)


echo “缺少 ‘linux1x’文件.”


;;


*)


echo “安装成功.”


;;


esac


mv hold_h3c.sh /usr/local/bin/  #这句话也要注解掉,因为我们把create_hold函数注解掉了,所以不会生成hold_h3c.sh,会提示找不到文件或目录


killall linux1x


/usr/local/bin/hold_h3c.sh &


/usr/local/bin/linux1x -d


}


这样理论上就把开机自动运行程序和自动重连程序去掉了,但是这样的话,进到桌面还要手动联网啊,写个最简单的sh呗


#!/bin/bash


/usr/local/bin/linux1x -d


ifup eth0


exit 0


然后再用一个启动器链接到这个文件就可以了,先认证h3c,以防网卡没有激活,然后再激活网卡。

赞(0) 打赏
转载请注明出处:服务器评测 » Fedora 13 下 H3C8021X客户端自动配置脚本
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏