Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

启用和执行事件脚本

事件脚本存储在设备的硬盘中 /var/db/scripts/event directory 中,或存储在 /config/scripts/event directory 中的闪存驱动器上。只有 Junos OS super-user 登录类的用户才能在这些目录中访问和编辑文件。有关设置脚本存储位置的信息,请参阅 闪存中的 存储和启用 Junos 自动化脚本存储脚本

为防止在运行 Junos OS 的设备上执行未经授权的 Python 代码,未签名的 Python 脚本必须满足某些要求,才能在设备上执行脚本。从 Junos OS 版本 16.1R3 开始,未签名的 Python 脚本必须归 Junos OS super-user 登录类中的 root 或用户所有,并且只有文件所有者才能为该文件写入许可。在 Junos OS 16.1R3 版之前,未签名的 Python 脚本必须仅归 root 用户所有。有关在运行 Junos OS 的设备上执行 Python 自动化脚本的要求的详细信息,请参阅 在 Junos 设备上执行 Python 自动化脚本的要求

注意:

如果设备具有两个路由引擎,并且您想要启用事件脚本在两个路由引擎上执行,则可以将脚本复制到两个路由引擎上的 /var/db/scripts/ event 目录或 /config/scripts/event 目录,或者您可以发出 commit synchronize scripts 命令来同步配置并将脚本复制到其他路由引擎,作为提交操作的一部分。

您必须先启用事件脚本才能执行。要启用事件脚本,请将语句包含 file filename[edit event-options events-script] 层次结构级别,并指定包含事件脚本的文件名称。只有属于 Junos super-user 登录类的用户才能启用事件脚本。

SLAX 和 Python 脚本必须在配置中的实际脚本名称和文件名中分别包括 .slax.py 文件名扩展。XSLT 脚本不需要文件名扩展,但我们强烈建议您附加 .xsl 扩展。无论您是否选择在文件中包含 .xsl 扩展,您在 [edit event-options event-script file] 层级添加的文件名都必须与目录中的脚本文件名完全匹配。例如,如果 XSLT 脚本文件名是 script1.xsl,则必须在配置层次结构中包含 script1.xsl 以启用脚本:如果 XSLT 脚本文件名是 脚本1,则必须在配置层次结构中包含 脚本1

默认情况下,您无法在运行 Junos OS 的设备上执行未签名的 Python 脚本。要允许执行未签名的 Python 自动化脚本,满足 Junos 设备上执行 Python 自动化脚本的要求,必须在层次结构级别配置 language pythonlanguage python3 语句 [edit system scripts]

默认情况下,Junos OS 将执行 Python 事件脚本以及通用、无权权用户和组nobody的访问权限。从 Junos OS 16.1R3 版开始,您可以指定执行 Python 脚本的访问权限下的用户。要在特定用户的访问权限下执行 Python 事件脚本,请在[edit event-options event-script file filename]层级配置python-script-user username语句。

注意:

要使不属于该文件的用户或组类的用户执行未签名的 Python 自动化脚本,脚本的文件权限必须包括其他人的读取权限。

要确定设备上当前启用了哪些事件脚本,请使用 show 命令显示在 [edit event-options event-script] 层次结构级别上配置的文件。

要确保启用的文件已在设备上,请使用file list /var/run/scripts/event操作模式命令列出 /var/run/scripts/event/ directory 的内容。

发出 commit 命令时,层 [edit event-options event-script] 级配置的事件脚本将放入系统内存并启用执行。提交操作完成后,事件策略可以执行事件脚本以响应事件通知。

发布历史记录表
释放
描述
16.1R3
从 Junos OS 版本 16.1R3 开始,未签名的 Python 脚本必须归 Junos OS super-user 登录类中的 root 或用户所有,并且只有文件所有者才能为该文件写入许可。