Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

使用 Junos PyEZ 执行文件系统操作

总结 使用 Junos PyEZ 管理文件和目录、计算校验和以及查看和清理 Junos 设备上的系统存储。

Junos PyEZ 应用程序可以使用该 jnpr.junos.utils.fs 实用程序在 Junos 设备上执行文件系统操作,包括:

  • 管理文件

  • 管理目录

  • 管理磁盘空间

本主题讨论如何使用该实用程序执行一些常见的文件系统操作。

执行文件操作

可以使用 jnpr.junos.utils.fs 实用程序执行常见的文件和目录操作。例如,您可以:

  • 查看文件和目录信息

  • 创建和删除目录

  • 查看、删除以及移动或复制文件

  • 计算文件的校验和

本节讨论一些常见操作。有关支持操作的完整列表,请参阅 jnpr.junos.utils.fs 文档。

查看文件列表

可以使用该方法 ls() 查看给定路径上的文件和目录列表。例如:

管理文件

jnpr.junos.utils.fs 实用程序使您能够在目标设备上执行常见的文件操作。 表 1 概述了这些方法。方法名称与类 Unix 操作系统上的相应命令相同。

表 1:Junos PyEZ 文件操作方法

方法

描述

cat()

查看文件。

cp()

复制文件。

mv()

重命名文件。

rm()

删除文件。

以下 Junos PyEZ 应用程序连接到 Junos 设备,并使用 cat() 该方法查看文件的内容。如果该文件不存在,应用程序将 None打印 。

以下应用程序连接到 Junos 设备,并将文件从 /var/tmp 目录复制到 /var/db/scripts/op 目录。如果操作成功或False出现错误,应用程序将True打印。

从 Junos PyEZ 2.6.8 版开始,您可以为文件复制操作指定路由实例。 routing_instance 包括参数,并指定实例的名称。例如:

计算校验和

可以使用该方法 checksum() 计算文件的校验和。默认情况下, checksum() 计算 MD5 校验和。若要显式指定算法,请包含 calc 参数并指定以下值之一:

  • MD5

  • SHA256

  • SHA1

以下 Junos PyEZ 应用程序连接到 Junos 设备,使用该方法验证 cat() 文件是否存在,如果文件存在,则计算 SHA256 校验和:

管理文件系统存储

您可以使用 jnpr.junos.utils.fs 实用程序来管理文件系统存储,如以下各节所述。

查看文件系统磁盘空间使用情况

您可以使用该方法 storage_usage() 返回有关文件系统的已用空间和可用空间的信息。该方法返回命令的 show system storage 输出。该信息类似于 Unix df 命令输出。

以下 Junos PyEZ 应用程序检索并打印所连接设备的磁盘空间使用情况:

查看目录使用情况

可以使用该方法 directory_usage() 查看给定目录及其子目录的磁盘空间使用情况(可选)。此方法在设备上执行 show system directory-usage path 命令并返回信息。如果未指定深度,Junos PyEZ 将使用默认深度零。该信息类似于 Unix du 命令返回的统计信息。

以下 Junos PyEZ 应用程序打印目录的 /var/tmp 磁盘空间使用情况。

清理系统存储

您可以使用该方法 storage_cleanup() 释放 Junos 设备上的磁盘空间。该方法执行该 request system storage cleanup 命令,该命令将轮换日志文件并删除临时文件。

若要仅查看将在清理操作中删除的文件列表,请改用 storage_cleanup_check() 该方法。此方法在设备上执行 request system storage cleanup dry-run 命令,并返回候选文件列表而不删除它们。

以下 Junos PyEZ 应用程序首先执行该 storage_cleanup_check 操作并打印建议删除的文件列表。然后,应用程序查询用户是否要继续存储清理并删除文件。如果用户确认清理操作,应用程序将 storage_cleanup() 执行删除文件的操作,然后打印已删除文件的列表。