• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

某局点交换机使用python脚本执行命令不成功的经验案例

2021-06-19 发表
  • 0关注
  • 0收藏 1682浏览
粉丝:12人 关注:1人

组网及说明

无    

问题描述

该局点使用5560s-si设备测试python脚本功能,脚本内关键如下

#!usr/bin/python

import comware


comware.CLI("startup saved-configuration flash:/5560.cfg main")

comware.CLI("reboot")


过程分析

操作过程如下

python

startup saved-configuration flash:/5560.cfg main

Please wait...... Done. 


 reboot 

Start to check configuration with next startup configuration file, please wait.........DONE!

 Current configuration may be lost after the reboot, save current configuration? [Y/N]: 

Please input the file name(*.cfg)[flash:/5560.cfg] 


flash:/5560.cfg exists, overwrite? [Y/N]: 

Validating file. Please wait... 

Saved the current configuration to mainboard device successfully. 

This command will reboot the device. Continue? [Y/N]: 

Now rebooting, please wait....

%Jan 1 02:19:59:790 2013 H3C DEV/5/SYSTEM_REBOOT: System is rebooting now. 

.. 

Starting...... 

Press Ctrl+D to access BASIC BOOT MENU 

Booting Normal Extend BootWare.... 

结果设备重启之后发现,并没有以指定的5560.cfg文件中的配置启动,设备起来后仍然是之前的配置,但是在设备上dis startup看下一次启动文件已经是5560.cfg文件了,dir看设备flash中也确实存在该5560.cfg文件

查看官网python相关手册,发现命令手册中有如下说明:

1.1.3  python filename

python filename命令用来执行Python脚本文件。

【命令】

python filename [ param ]

【视图】

用户视图

【缺省用户角色】

network-admin

【参数】

filename:Python脚本文件的名称。该文件必须为设备文件系统中存在的文件,文件名区分大小写,扩展名必须为“.py”,扩展名不区分大小写。

param:执行Python脚本文件时指定的参数,多个参数之间以空格分隔。

【使用指导】

脚本执行期间,当前登录用户不能执行其它操作。须等到脚本执行完毕,才能执行其它操作。

请用户确保脚本语法的正确性。当系统发现脚本中的指令存在语法错误时,系统将不再执行该指令以及后面的指令。

当系统执行脚本中的交互式指令时,系统将使用缺省值继续执行该指令。


reboot相当于是一个交互式指令,在重启过程中也确实没有让人工输入Y或者N,而是系统自动向下执行了

而仔细分析设备重启过程,发现疑点:

根据操作记录,设备执行reboot前询问要不要save当前配置,设备默认给选的是Y,选择Y之后下一次的启动文件名默认给填充了5560.cfg这个文件Please input the file name(*.cfg)[flash:/5560.cfg],但是紧接着设备又问了:这个cfg文件已经存在了是否要覆盖flash:/5560.cfg exists, overwrite? [Y/N]:,设备又默认执行了Y,于是以当前设备上的配置覆盖掉了原先指定的5560.cfg,于是下一次启动就以当前的配置启动了,而不是以前面写入5560.cfg这个文件里的内容启动,虽然启动文件名还是5560.cfg,但内容已与之前指定的“5560.cfg“大相庭径。从效果上来看就是指定启动文件不成功。


解决方法

为了解决这个问题,可以把脚本里的reboot命令替换成reboot force命令,强制重启,这个命令不会询问是否要save当前配置,直接重启

 

reboot force:强制重启//这个命令平时一般不要用,万一操作不当容易丢配置

·     不指定该参数时,重启设备,系统会做一些保护性检查(如启动文件是否存在,是否正在写磁盘等),若检查不通过则退出处理,不会重启设备;

·     指定该参数时,系统将不进行任何检查,直接执行重启操作。

 

该案例对您是否有帮助:

您的评价:1

若您有关于案例的建议,请反馈:

作者在2021-07-05对此案例进行了修订
0 个评论

该案例暂时没有网友评论

编辑评论

举报

×

侵犯我的权益 >
对根叔知了社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔知了社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作