sosadmin命令
以下是本人翻译的官方文档,如有不对,还请指出,引用请标明出处。
原本有个对应表可以跳转的,但是CSDN的这个
[](#)
跳转好像不太一样,必须得用html标签,就懒得改了。
sosadmin help
- 用法
sosadmin help
sosadmin help command
sosadmin archive
- sosadmin archive - 用于归档项目数据
- 用法
sosadmin archive server_name project_name archive_to_dir
- 描述
- 将所有项目数据存档到指定的目录以备备份,移动或重命名。
- 数据存档在名为
SOS_<prj_name>\archive
的目录中。 - 它包含以下文件:
README
- 关于此存档的信息sosd_cfg.tgz
- 项目设置目录中的所有文件sos_DB.??????
- 项目数据文件,分割以便于复制
- 参数
server_name
:SOS服务器名称project_name
:要归档的项目名称archive_to_dir
:项目数据存档的目录路径。(这个目录必须存在且非空)
- 注意事项
- 您可以使用归档和还原的组合来完成以下操作:
- 重命名一个项目
- 将一个项目移动到不同的服务器
- 您可以使用归档和还原的组合来完成以下操作:
- 示例
sosadmin archive USB_SRV USB_PRJ /store/EDA/USB_exported
# 将USB_PRJ项目数据库存档到目录/store/EDA/USB_exported
sosadmin audit
- sosadmin audit - 用于显示该项目的审计跟踪
- 用法
sosadmin audit <server_name> <project_name> \
-txt|-htm|-csv|-f"<custom_format>" \
<fromtime> \
<totime> \
<command list>| ALL \
[<output file name> [-sfo | -sdo]]
- 描述
- 显示项目审计跟踪,按时间顺序升序排列
- 以下列显示
Date
Time
Username
Command
Pathname
Revision
Change Summary
- 参数
server_name
:要使用的SOS服务器名称。project_name
:获取指定项目的审计跟踪。-txt | -htm | -csv | -f
- 这些是相互排斥的选项,用于定义审计跟踪的格式
-txt
:以列形式呈现的文本输出-htm
:带有表格的超文本标记语言(HTML)格式-csv
:以制表符(TAB)分隔列的格式(即逗号分隔值格式)-f
:自定义格式,将会输出到标准输出(stdout)。- 分隔符:“%”。
- 有效字段:日期(date)、用户(user)、命令(cmd)、对象(obj)、修订版本(rev)、摘要(summary)。
- 分隔符 “%” 后面的数值用于确定字段宽度。
- 例如:“%20date %-20user %summary %obj %rev %cmd”。
<from_date+time>
- 开始时间。该日期和时间是以本地时间来指定的,并且会在服务器上进行相应的转换。
- 指定日期和时间的格式为:“YYYY/MM/DD HH:MM:SS”(即 年/月/日 时:分:秒)。
- 你必须从年份开始填写,但可以按需选择填写尽可能少的部分。未指定的部分将被视作 0。
<to_date+time>
- 结束时间。该日期和时间是以本地时间来指定的,并且会在服务器上进行相应的转换。
- 指定日期和时间的格式为:“YYYY/MM/DD HH:MM:SS”(即 年/月/日 时:分:秒)。
- 你必须从年份开始填写,但可以按需选择填写尽可能少的部分。未指定的部分将被视作 0。
<command name list> | ALL
- 此选项是一个过滤器,用于指定哪些命令将在审计跟踪中列出。命令应以逗号分隔的列表指定。命令名称字符串应与使用 soscmd 的命令名称匹配。只有写入存储库的命令才是有效选项。
- 以下为有效选项:
create, co, ci, discardco, tag, snapshot, delete, rename,
deleterev, modattr, definetag, definebranch, merge,
move, termbranch, addreference, editreference - 指定关键字 ALL 以列出所有命令。
<out file name>
- 输出文件的路径名。
- 如果提供了相对路径名,则假定它是相对于sosadmin调用的当前目录的。
- 如果期望输出为HTML格式,则此选项是必需的。
- 如果没有提供此选项用于文本格式,则审计跟踪将终端输出。
-sfo | -sdo
- 这些是互斥选项,用于筛选审计跟踪以显示文件或目录。
- -sfo --> 仅显示文件和软件包的审计跟踪
- -sdo --> 仅显示目录的审计跟踪
- 如果没有指定任何选项,则将显示所有对象的审计跟踪。
- 注意事项
- 即使服务器位于不同的时区,审计跟踪报告中显示的所有时间也都在本地时区。
- 开始和结束时间也应使用本地时间指定。
- 示例
sosadmin audit USB_srv USB_PROj -txt "2015/01/01" "2015/01/18 09:15:20" ALL
# 打印出从2015/01/01 00:00:00到2015/01/18 09:15:20的所有变更的审计跟踪文本到标准输出
sosadmin audit USB_srv USB_PROj -f"%20date %-20user %50summary %obj %rev %cmd" "2019/01/01" "2019/05/15 09:15:20" ALL
# 打印出审计跟踪的文本格式到标准输出,列出从 "2019/01/01" 到 "2019/05/15 09:15:20" 的所有更改以自定义格式。
sosadmin audit USB_srv USB_PROj -htm "2015/01/01" "2015/01/18 09:15:20" "ci,create,delete" /home/tom/usb/audit_trail.html -sfo
# 以HTML格式列出2015/01/01 00:00:00至2015/01/18 09:15:20期间创建或删除的所有新文件以及新文件修订版本。仅列出文件和包,不包括目录。
sosadmin cachecleanup
- sosadmin cachecleanup - 用于清理项目的缓存数据
- 用法
sosadmin cachecleanup sos_server_name \
project_name \
[rev_depth [older_than_days [link_count]]]
- 描述
- 删除缓存中的旧版本,即使其链接计数不为零。此命令将在缓存服务器中启动清理过程并返回。它不会等待清理完成。用户应检查srv_cache.log文件以查看清理是否完成。只有在完成此操作后,才能向同一缓存服务器发出另一个清理命令。
- 使用的算法如下:
- 找到所有修订次数超过 ‘rev_depth’ 的文件。
- 在缓存中保留 ‘rev_depth’ 修订。
- 如果剩余修订的创建时间早于(当前时间 - ‘older_than_days’)并且(修订链接计数 <= ‘link_count’),则删除剩余修订。
- 参数
sos_server_name
:要使用的 sos 服务器的名称。project_name
:需要清理缓存的项目名称。rev_depth
:缓存中保留的文件修订次数。环境变量是 SOS_FORCE_SCRUB_DEPTH。默认值与缓存服务器的缓存深度相同。older_than_days
:这是一个表示天数的整数。文件修订版本,如果比当前时间早于’older_than_days’,将被考虑删除。环境变量是 SOS_FORCE_SCRUB_DAYS。默认值是90。link_count
:这是一个表示指向此修订版本的链接数量的整数。链接数量小于或等于 ‘link_count’ 的文件修订将被考虑删除。环境变量是SOS_FORCE_SCRUB_COUNT
。默认值是 5。- 可选参数的参数优先级如下:
- 有命令行参数时优先使用命令行参数。
- 无命令行参数时使用环境变量。
- 无环境变量时使用默认值。
- 注意:可选参数的顺序很重要。
- 示例
sosadmin cachecleanup sync55 mp3
# 清理 sync55 缓存服务器上项目 mp3 的缓存,可选参数取自环境变量或默认值。
sosadmin cachecleanup sync55 mp3 3
# 清理 sync55 缓存服务器上项目 mp3 的缓存,rev_depth 为 3,其他可选参数取自环境变量或默认值。
sosadmin cachecleanup sync55 mp3 3 30 7
# 清理 sync55 缓存服务器上项目 mp3 的缓存,rev_depth 为 3,older_than_days 为 30,link_count 为 7。
sosadmin clients
- sosadmin clients - 列出连接到服务器的客户端
- 用法
sosadmin clients <server_name>|ALL \
[list | exit | closeconn | sendmsg <message_string>] \
[<project_name> | ALL] \
[<user_name> | <connection_id>]
- 描述
- 列出所有客户端、发送消息、退出或关闭与当前连接到服务器
server_name
或所有服务器的客户端的连接。 - 省略可选参数或使用
list
关键字以打印客户端信息。 - 使用
exit
关键字退出指定的 SOS 客户端。 - 使用
closeconn
关键字关闭与客户端的连接而不退出它们。 - 使用
sendmsg
关键字和消息字符串向客户端发送消息。 - 可以指定
project_name
以将列表过滤到特定项目,否则使用关键字ALL
。 user_name
参数是可选的,用于过滤属于特定用户的客户端。project_name
和user_name
参数可以接受通配符字符串以过滤客户端。- 列表显示每个客户端的“连接 ID、项目名称、用户名、主机名和工作区路径”。
- 列出所有客户端、发送消息、退出或关闭与当前连接到服务器
- 参数
server_name | ALL
:服务器名称,其连接的客户端将被列出,或使用关键字ALL
。list
:如果未指定其他选项,则这是默认操作。根据其他选项(如project_name
或user_name
)列出连接的客户端。exit
:退出所选客户端的工作区中的 SOS 会话。closeconn
:关闭服务器与所选客户端的连接。sendmsg <message_string>
:向所选客户端发送由<message_string>
指定的消息。<project_name> | ALL
:在特定项目的客户端上运行上述命令之一,或使用关键字ALL
表示所选服务器下的所有项目。可以为project_name
使用通配符字符串。<user_name> | <connection_id>
:可选参数,用于过滤来自特定用户或工作区的客户端。连接 ID 可从上述list
选项的输出中获取。输出行的第一个字段显示连接 ID。可以为username
使用通配符字符串。
- 示例
# 列出客户端信息相关
sosadmin clients USB_SRV
# 列出服务器 'USB_SRV' 的所有连接客户端。
sosadmin clients USB_SRV list '*PRO*'
# 列出服务器 'USB_SRV' 中项目名称包含 "PRO" 的连接客户端。
sosadmin clients USB_SRV list '*PRO*' '*mgr*'
# 列出服务器 'USB_SRV' 中项目名称包含 "PRO" 且用户名包含 "mgr" 的连接客户端。
# 退出客户端会话相关
sosadmin clients USB_SRV exit ALL
# 退出与 'USB_SRV' 服务器连接的所有项目的客户端。
# 发送消息相关
sosadmin clients ALL sendmsg "Shutting down servers for maintainence" ALL
# 向所有定义服务器的所有连接客户端发送消息。
sosadmin clients ALL sendmsg "Are you available for a WebEx meeting." ALL 1486
# 向连接 ID 为 1486 的客户端发送消息,连接 ID 可通过 `sosadmin clients ALL list ALL` 命令获取,其在输出行的第一个字段。
# 关闭客户端连接
sosadmin clients USB_SRV closeconn USB_PROJ xyz
# 关闭与 USB_SRV 服务器管理的 USB_PROJ 项目下用户 xyz 的 sos 客户端的连接。
sosadmin create
- sosadmin create - 创建新服务器
- 用法
sosadmin create server_name \
<new_primary | use_primary> \
host \
command_port \
repo_path \
[<auth | no_auth>] \
<new_cache cache_host cache_command_port cache_path num_rev_in_cache [auto_update_info] | \
use_cache cache_host cache_command_port | \
no_cache>
- 描述
- 创建一个新的主服务器或缓存服务器。
- 参数
server_name
:要创建的服务器名称。server_type
new_primary
:创建新的主服务器。use_primary
:使用现有的主服务器。
host
:服务器将在其上运行的主机名。command_port
:用作客户端连接的服务器命令监听端口号,也用于 SOS 服务器和 Postgresql 服务器之间的 Unix 套接字通信。repo_path
:创建服务器存储库的目录路径,存储库名称为<server_name>.rep
,项目目录在此目录下创建。当server_type
为use_primary
时,此参数不需要。auth_info
auth
:启用 SOS 客户端的身份验证机制。no_auth
:不启用身份验证,默认值为 no_auth。
cache_info
- 需要以下三组参数之一:
new_cache cache_host cache_command_port cache_path num_rev_in_cache [auto_update_info]
use_cache cache_host cache_command_port
no_cache
new_cache
:将定义一个新的缓存服务器。use_cache
:将使用现有的缓存服务器。no_cache
:将不定义任何缓存。cache_host
:缓存服务器将运行的主机名。cache_command_port
:缓存服务器的监听命令端口号。cache_path
:用于缓存项目文件的路径名。num_rev_in_cache
:要缓存的修订版本数量。auto_update_info
(仅在new_cache
选项中有效):有以下三个选项,默认值为 no_auto_update。immediate_auto_update
:持续更新缓存。no_auto_update
:不自动更新缓存。auto_update no_of_minutes
:每no_of_minutes
分钟更新一次缓存,no_of_minutes
必须大于零。
- 需要以下三组参数之一:
- 示例
sosadmin create newXP new_primary tiger.cliosoft.com 7832 /store/EDA/repository no_cache
# 在主机 `tiger.cliosoft.com` 上执行此命令
# 创建一个名为 `newXP` 的新主服务器,运行在主机 `tiger.cliosoft.com` 上,命令端口为 `7832`。
# 没有缓存服务器。服务器仓库位于 `/store/EDA/repository/newXP.rep`。
# 项目配置位于 `/store/EDA/repository/newXP.rep/<proj_name>/setup`。
sosadmin create useXP use_primary tiger 7832 \
new_cache peacock.cliosoft.com 8935 \
/proj/SOS/cache 4 immediate_auto_update
# 在主机 `peacock.cliosoft.com` 上执行此命令
# 创建一个名为 `useXP` 的服务器,使用主机 `tiger` 上现有的主服务器,命令端口为 `7832`。
# 在主机 `peacock.cliosoft.com` 上创建一个新的缓存服务器,命令端口为 `8935`,缓存仓库路径为 `/proj/SOS/cache`,最多缓存 4 个文件版本。
# 缓存服务器将在新文件版本检入项目仓库时立即更新。缓存仓库位于 `/proj/SOS/cache/useXP.cac`。
# 项目缓存位于 `/proj/SOS/cache/useXP.cac/<proj_name>`。
sosadmin create dummyXP use_primary tiger 7832 \
use_cache peacock.cliosoft.com 8935
# 在主机 `peacock.cliosoft.com` 上执行此命令,
# 创建一个名为 `dummyXP` 的服务器,使用主机 `tiger` 上现有的主服务器,命令端口为 `7832`。
# 同时使用主机 `peacock.cliosoft.com` 上的缓存服务器,命令端口为 `8935`。
sosadmin createproject
- sosadmin create project - 创建新项目
- 用法
sosadmin createproject server_name project_name \
place_holder_arg_ignored \
[comment [list_of_admins [import_6_path]]]
- 描述
- 在 SOS 中创建一个新项目及其仓库。
- 参数
server_name
:负责管理该项目的服务器名称。project_name
:要创建的项目名称。place_holder_arg_ignored
:从版本 7 开始不需要此参数,仅用于向后兼容。comment
:新项目的注释信息,可选参数,注释字符串必须用双引号括起来。list_of_admins
- 提供一个或多个项目管理员,必须用双引号括起来且以逗号分隔。
- 此参数可选,但如果要指定管理员列表则必须同时指定注释。指定管理员将在项目级服务器配置文件中创建带有 ADMIN 行的内容。
import_6_path
- 如果要导入一个 SOS 6 项目,则指定从中导入项目数据的存储库路径。
- 仅在导入 SOS 6 存储库时使用,若使用此参数,必须同时指定“comment”和“list_of_admins”以完成命令参数。
- 注意事项
- 此命令只能由管理项目的主服务器所有者执行。
- 示例
sosadmin createproject serverPalm cray_yp place_holder_arg_ignored "" "sosAdmin"
# 使用 serverPalm 服务器创建名为 cray_yp 的项目
# place_holder_arg_ignored 仅用于向后兼容未实际使用
# 注释为空
# 管理员为 sosAdmin。
sosadmin createproject USB_SRV USB_PRJ place_holder_arg_ignored "Project for USB." "sosAdmin, projManager"
# 使用 USB_SRV 服务器创建名为 USB_PRJ 的项目,
# # place_holder_arg_ignored 仅用于向后兼容未实际使用
# 注释为空
# 指定管理员为 `sosAdmin` 和 `projManager`。
sosadmin createproject USB_SRV USB_PRJ <bogus/path.rep> "Project for USB."
# 与上一示例类似,但只指定了注释,未指定管理员列表。
sosadmin createproject USB_SRV USB_PRJ place_holder_arg_ignored
# 与之前示例类似,但未指定注释和管理员列表。
sosadmin createproject USB_7_SRV USB_7_PRJ place_holder_arg_ignored "Comment:Importing an SOS 6 project" "cadmgr" /proj/sos_rep/USB.rep
# 使用 USB_7_SRV 服务器创建新的 USB_7_PRJ 项目
# place_holder_arg_ignored 仅用于向后兼容未实际使用
# 注释为“Comment:Importing an SOS 6 project”
# 管理员为 `cadmgr`
# 从仓库路径 `/proj/sos_rep/USB.rep` 导入 SOS 6 项目。
sosadmin debug
- sosadmin debug - 将调试消息记录到服务器
- 用法:
sosadmin debug server_name server_type debug_mode
- 描述:
- 为指定的服务器设置或取消调试日志记录。
- 此设置不会被保存,仅应用于服务器的当前运行会话。
- 参数:
server_name
:需要调试的服务器的名称。server_type
:服务器类型,可以是primary
(主服务器)或cache
(缓存服务器)。debug_mode
:可以通过enable
启用调试,或通过disable
禁用调试。
- 示例:
sosadmin debug USB_SRV primary enable
# 为主服务器 `USB_SRV` 设置调试日志记录。
sosadmin debug USB_SRV cache disable
# 为缓存服务器 `USB_SRV` 取消调试日志记录。
sosadmin delete
- sosadmin delete - 删除服务器
- 用法:
sosadmin delete server_name
- 描述:
- 删除指定的服务器。
- 参数:
server_name
:需要删除的服务器的名称。
- 示例:
sosadmin delete USB_SRV
# 删除服务器 `USB_SRV`。
sosadmin deleteproject
- sosadmin deleteproject - 删除项目
- 用法
sosadmin deleteproject server_name project_name
- 描述
- 删除指定服务器中指定项目
- 参数
server_name
:要删除的项目所在的服务器project_name
:要删除的项目
- 示例
sosadmin delete USB_SRV USB1
# 删除 `USB_SRV` 服务器中的 `USB1` 项目
sosadmin exitclients
- sosadmin exitclients - 断开连接到服务器或指定项目的客户端
- 用法:
sosadmin exitclients <server_name> [<project_name>]
- 描述:
- 断开当前连接到服务器
server_name
或指定项目project_name
的客户端。 - 可以通过指定
project_name
来过滤特定项目的客户端。
- 断开当前连接到服务器
- 参数:
server_name
:需要断开客户端连接的服务器名称。project_name
:仅断开属于指定项目的客户端。
- 示例:
sosadmin exitclients USB_SRV
# 断开服务器 `USB_SRV` 上所有连接的客户端。
sosadmin exitclients USB_SRV USB_PROJ
# 断开服务器 `USB_SRV` 上属于项目 `USB_PROJ` 的客户端。
sosadmin getcfg
- sosadmin getcfg - 获取自定义配置文件
- 用法
sosadmin getcfg sos_server_name \
project_name \
cfg_file_platform \
cfg_file_type \
cfg_filename
- 描述
- 获取自定义配置文件。用于获取服务器、客户端或 SOS GUI 的配置文件。
- 自定义配置文件是指从
<proj_repository>/setup
目录中获取的配置文件。
- 参数
sos_server_name
:要使用的 SOS 服务器名称。project_name
:需要自定义的项目名称。cfg_file_platform
:- 获取正确的平台级别配置文件。
- 可选值为
unix
或windows
。
cfg_file_type
:- 指定要获取的配置文件类型。
- 可选值为
server
、client
、gui
、tcl
或cfg
:server
- 获取sosd.cfg
或sosd.win.cfg
。client
- 获取sos.cfg
或sos.win.cfg
。gui
- 获取Sos.ad
或Sos.win.ad
。tcl
- 获取sos.tcl
。cfg
- 使用cfg_filename
指定的配置文件。SCRIPTS
- 从SCRIPTS
目录中获取cfg_filename
指定的文件。
cfg_filename
:自定义配置文件保存的文件名。
- 示例
sosadmin getcfg USB_SRV uC8051F unix server sosd.cfg.uC8051F
# 从服务器 `USB_SRV` 和项目 `uC8051F` 中获取 `sosd.cfg` 文件,并将其保存为当前目录下的 `sosd.cfg.uC8051F`。
sosadmin getcfg USB_SRV uC8051F windows client ./tmp/sos.win.cfg.uC8051F
# 从服务器 `USB_SRV` 和项目 `uC8051F` 中获取 `sos.win.cfg` 文件,并将其保存为 `./tmp` 目录下的 `sos.win.cfg.uC8051F`。
sosadmin listconsumers
- sosadmin listconsumers - 获取引用项目的所有消费者的详细信息
- 用法
sosadmin listconsumers [-csv] \
[-htm<html outfile> \
[-hdr] \
[-cleanup] \
[-cmd<sos cmds>] \
[-rp<comma sep list of reference project names>] \
[-s<comma sep list of snapshots] \
[-rrso<list of reference rso labels>] \
-w \
-sum \
server_name \
project_name
- 描述
- 打印给定项目中所有引用消费者的详细信息。
- 这基本上是主项目对给定项目的引用操作列表。
- 您还可以汇总消费者列表,而不是查看完整的事件日志。
- 参数
server_name
:托管消费者项目的 SOS 服务器名称。project_name
:需要获取引用的消费者项目名称。-rrso
:引用项目的 RSO(标签、分支、快照)作为逗号分隔列表。-s
- 按消费者快照过滤,作为逗号分隔列表。
- 用于查看消费者项目中包含的底层引用。
-b
:按消费者项目的指定分支过滤。-rp
:引用路径作为逗号分隔列表。-sum
:打印给定引用项目的活动消费者摘要,列出最后的addreference
、editreference
或undelete
操作。-w
:为所有过滤参数启用前导和尾随通配符匹配。-cleanup
:清理给定引用项目的已删除引用记录(仅限管理员使用)。-cmd
- 对引用项目执行的操作,作为逗号分隔列表。
- 有效值为
addreference
、editreference
、snapshot
、delete
、undelete
、rename
、move
。
-hdr
:显示列标题。-htm
:以 HTML 格式输出到指定的 HTML 文件。
- 输出
listconsumers
命令输出以下列:
<Reference Proj> <Reference Path> <Consumer Project> <Consumer Path> <Consumer Branch> <Reference RSO> <Action(addreference,snapshot etc)> <Consumer Snapshot> <Action By><Action Time>
- 示例
sosadmin listconsumers IP_CATALOG USB_IP
# 打印所有引用项目 `USB_IP` 的消费者项目(服务器为 `IP_CATALOG`)。
sosadmin listconsumers IP_CATALOG USB_IP -rrsorelease_A1
# 打印所有引用项目 `USB_IP` 且引用 RSO 为 `release_A1` 的消费者项目。
sosadmin listconsumers IP_CATALOG USB_IP -bLow_Power_Branch
# 打印所有引用项目 `USB_IP` 且消费者分支为 `Low_Power_Branch` 的消费者项目。
sosadmin listconsumers IP_CATALOG USB_IP -rp./USB_IP_A, ./USB_IP_B
# 打印所有在路径 `./USB_IP_A` 和 `./USB_IP_B` 添加引用的消费者项目。
sosadmin listconsumers IP_CATALOG USB_IP -sum -bmain -htmlout.html
# 打印分支为 `main` 的消费者项目的 HTML 摘要报告,这些项目引用了项目 `USB_IP`。
sosadmin info
- sosadmin info - 获取服务器的配置信息
- 用法
sosadmin info server_name [info_keywords]
- 描述
- 打印主服务器和缓存服务器的配置信息
- 如果未指定参数,则打印所有信息,包括:
服务器名称: <sever name> 主服务器类型: <LOCAL | REMOTE> 主服务器主机: <host name> 主服务器命令端口: <command port> 主服务器仓库路径: <repository path> 主服务器备份路径: <primary backup path> 客户端认证: <0 | 1> (如果类型是 REMOTE 就填 '?') 缓存服务器类型: <NONE | LOCAL | REMOTE> 缓存服务器主机: <host name> (如果为 NONE 就填 '-') 缓存服务器命令端口: <command port> (如果为 NONE 就填 '-') 缓存路径: <cache path> (如果类型是 REMOTE 就填 '?',如果为 NONE 就填 '-') 缓存深度: <cache depth> (如果类型是 REMOTE 就填 '?',如果为 NONE 就填 '-') 缓存更新: <-1, 0, #mins> (-1 = Immediate(立即). 0 = On Demand(按需)) 缓存备份路径: <cache backup path>
- 可以使用关键字作为可选参数,仅获取所需信息。每个关键字的信息将单独打印一行。
- 参数
server_name
:需要重新读取所有配置文件的服务器名称。info_keywords
- 可选关键字包括
ptype --> 主服务器类型 phost --> 主服务器主机 pcport --> 主服务器命令端口 prpath --> 主服务器仓库路径 pauth --> 是否启用客户端认证 pbkup --> 主服务器备份路径 ctype --> 缓存服务器类型 chost --> 缓存服务器主机 ccport --> 缓存服务器命令端口 cpath --> 缓存路径 cdepth --> 缓存深度 cupdate --> 缓存更新 cbkup --> 缓存备份路径
- 注意事项
- 无论服务器是否运行,都可以执行此命令。
- 信息通过读取服务器配置文件返回。
- 如果服务器位于远程位置,某些类型的信息将不可用(例如远程主服务器的数据端口和客户端认证)。
- 如果值未知,则显示为
?
。
- 示例
sosadmin info USB_SRV
# 打印服务器 `USB_SRV` 的主机、端口和其他信息。
sosadmin info USB_SRV phost
# 打印服务器 `USB_SRV` 的主服务器主机名称。
sosadmin info DENALI phost pcport prpath
# 打印主服务器的主机名称、命令端口号和仓库路径,每行一个信息。
sosadmin list
- sosadmin list - 列出已经定义的服务器
- 用法
sosadmin list [-primary|-remote]
- 描述
- 列出已定义的服务器。
- 若无选项,默认设置是列出所有的服务器。
- 参数
-primary
:仅列出主服务器。remote
:仅列出链接到主服务器的服务器。
- 示例
sosadmin list
# 列出所有已定义的服务器。
sosadmin list -primary
# 列出主服务器。
sosadmin list -remote
# 列出链接到主的服务器。
sosadmin lockproject
- sosadmin lockproject - 锁定项目
- 用法:
sosadmin lockproject sos_server_name project_name [lock_state]
- 描述:
- 锁定/解锁项目,以控制对项目仓库的写操作。有三种锁定状态:
- all - 锁定所有用户和管理员。
- user - 仅允许管理员或具有“覆盖权限”的用户写入。
- none - 解锁项目,允许所有用户和管理员写入。
- status - 打印项目的锁定状态。
- 锁定/解锁项目,以控制对项目仓库的写操作。有三种锁定状态:
- 参数:
sos_server_name
:要使用的 SOS 服务器名称。project_name
:需要锁定的项目名称。lock_state
:- 允许的锁定状态之一:
all
、user
、none
或status
。 - 默认为
all
。
- 允许的锁定状态之一:
- 示例
sosadmin lockproject sync55 mp3
# 锁定 SOS 服务器 `sync55` 上的项目 `mp3`。
sosadmin lockproject sync55 mp3 none
# 解锁 SOS 服务器 `sync55` 上的项目 `mp3`。
sosadmin lockproject sync55 mp3 status
# 打印项目 `mp3` 的锁定状态。输出值为:
# - 0: 未锁定
# - 1: 锁定所有用户
# - 2: 锁定所有用户和管理员
sosadmin ping
- sosadmin ping - 测试服务器是否正在运行
- 用法:
sosadmin ping server_name
- 描述:
- 测试服务器(如果定义了缓存服务器)是否正在运行。
- 返回的
$status
状态如下:
0 -> 主服务器和缓存服务器均正常运行。 1 -> 主服务器正常运行,缓存服务器未运行。 2 -> 缓存服务器正常运行,主服务器未运行。 3 -> 主服务器和缓存服务器均未运行。
- 参数:
server_name
:需要测试的服务器名称。
- 示例:
sosadmin ping USB_SRV
# 测试服务器 `USB_SRV` 是否正在运行。
sosadmin pingall
- sosadmin pingall - 测试所有服务器是否正在运行
- 用法:
sosadmin pingall
- 描述:
- 测试所有已定义的服务器,检查它们是否正在运行。
- 命令的输出是一个表格,列出所有服务器的状态。列标题如下:
ServerName PrimaryHost Running CmdPort P.PID CacheHost Running CacheCmdPort C.PID
```
- 运行状态表示如下:
- `Running`:SOS 服务器守护进程的版本号
- `Not running`:no
- `Not defined`:空白
- 参数:
- 无
- 示例:
sosadmin pingall
ServerName PrimaryHost Running CmdPort P.PID CacheHost Running CacheCmdPort C.PID
---------- ----------- ------- ------- ----- --------- ------- ------------ -----
CALLIOPE bender no 60001
CLIO bender 6.30.p1 60003 24576 marvin 6.30.p1 6000 3489
REFERENCE yosemite no 60001 marvin 6.23.p3 60009 26781
-------------------------------------------------------------------------------------------
sosadmin help projectmap
- sosadmin projectmap - 添加项目映射
- 用法:
sosadmin projectmap auto/list/add/delete [sos_server_name]
- 描述:
- 添加/删除/列出项目映射。
- auto - 添加所有已定义服务器的项目映射。
- add - 添加指定服务器的项目映射。
- delete - 删除指定服务器的项目映射。
- list - 打印当前项目映射。
- 添加/删除/列出项目映射。
- 参数:
sos_server_name
:要使用的 SOS 服务器名称。
- 示例:
sosadmin projectmap auto
# 添加所有已定义服务器的项目映射。所有已定义的服务器将被查询。
sosadmin projectmap add sync55
# 添加 SOS 服务器 `sync55` 的项目映射。
sosadmin projectmap delete sync55
# 删除 SOS 服务器 `sync55` 的项目映射。
sosadmin projectmap list
# 列出当前的项目映射。
sosadmin projects
- sosadmin projects - 列出服务器管理的项目
- 用法
sosadmin projects server_name
- 描述:
- 列出服务器管理的项目。
- 参数:
server_name
:需要列出项目的服务器名称。
- 示例:
sosadmin projects USB_SRV
# 列出服务器 `USB_SRV` 管理的项目。
sosadmin putcfg
- sosadmin putcfg - 放置自定义cfg文件
- 用法
sosadmin putcfg sos_server_name \
project_name \
cfg_file_platform
cfg_file_type \
cfg_filename
- 描述
- 将用户定义的配置文件放入项目仓库中。
- 用于修改服务器、客户端或 GUI 的配置。如果项目仓库中已存在自定义配置文件,则会被覆盖。
- 参数
sos_server_name
:要使用的 SOS 服务器名称。project_name
:需要自定义的项目名称。cfg_file_platform
- 获取正确的平台级别配置文件。
- 可选值为
unix
或windows
。
cfg_file_type
- 指定要操作的配置文件类型。
- 可选值为
server
、client
、gui
、tcl
、cfg
或SCRIPTS
:'server' - sosd.cfg 或 sosd.win.cfg 'client' - sos.cfg 或 sos.win.cfg 'gui' - Sos.ad 或 Sos.win.ad 'tcl' - sos.tcl 'cfg' - 使用 "cfg_filename" 指定的配置文件 'SCRIPTS' - 将 "cfg_filename" 放入 'SCRIPTS' 目录
- 注意:当使用
server
类型放置配置文件时,会自动向服务器发送重新读取配置的命令。
cfg_filename
:要放入项目仓库的配置文件。
- 示例
sosadmin putcfg USB_SRV uC8051F unix server sosd.cfg.uC8051F
# 将 `sosd.cfg.uC8051F` 服务器配置文件放入项目 `uC8051F` 的仓库中。服务器将重新读取配置。
sosadmin putcfg USB_SRV uC8051F windows client sos.win.cfg.uC8051F
# 将 `sos.win.cfg.uC8051F` 客户端配置文件放入项目 `uC8051F` 的仓库中。
sosadmin query
- sosadmin query - 从服务器获取项目信息
- 用法:
sosadmin query server project
[tags branches snapshots labels path workareas locked isadmin attributes]
[rso] [reference_project] [username] [lname] [wa_state]
- 描述:
- 从 SOS 服务器打印项目特定的信息,例如标签列表。
- 参数:
server
:要查询信息的 SOS 服务器名称。project
:要查询信息的项目名称。tags
:获取指定项目中的标签列表。branches
:获取指定项目中的分支列表。snapshots
:获取指定项目中的快照列表。labels
:获取指定项目中的标签、分支和快照列表。attributes
:获取指定项目中某个标签的属性。rso
- 获取当前用户在指定项目中的默认修订搜索顺序(来自
sosd.cfg
)。 - 如果指定了
reference_project
,则获取该项目的 RSO,否则获取主项目的 RSO。
- 获取当前用户在指定项目中的默认修订搜索顺序(来自
path
:获取项目的完整仓库路径。cache_path
:获取服务器配置中指定的缓存路径。reference_project
:与rso
选项一起使用。如果指定,则获取主项目sosd.cfg
中引用的该项目的 RSO。workareas
:列出为指定项目创建的所有工作区。locked
:列出项目中所有被锁定的对象。isadmin
:如果用户是管理员,则返回1
,否则返回0
。username
:与isadmin
选项一起使用。lname
- 与
attributes
选项一起使用。 - 允许的值为任何已定义的标签,或使用
all
获取项目中所有标签的属性。
- 与
wa_state
:工作区状态过滤器的允许值为active
或inactive
。
- 注意事项:
- 每次调用此命令只能查询一个选项。
- 示例:
sosadmin query USB_SRV USB tags
# 打印项目 `USB` 中定义的所有标签列表。
sosadmin query sync55 mp3 labels
# 打印项目 `mp3` 中定义的所有标签、分支和快照列表。
sosadmin query sync55 mp3 rso USB
# 打印项目 `mp3` 中引用的项目 `USB` 的修订搜索顺序。
sosadmin query sync55 mp3 locked
# 打印项目中所有被锁定的对象。
sosadmin query USB_SRV USB_PRJ attributes gold
# 打印项目 `USB_PRJ` 中标签 `gold` 的所有属性。
sosadmin query USB_SRV USB_PRJ attributes all
# 打印项目 `USB_PRJ` 中所有标签的属性。
sosadmin readcfg
- sosadmin readcfg - 重新读取服务器配置文件。
- 用法
sosadmin readcfg server_name [project_name]
- 描述
- 重新读取所有项目或特定项目的服务器配置文件。这些文件称为
sosd.cfg
,可以位于安装级别或项目级别。 - 所有项目级别和安装级别的配置文件都会被重新读取。
- 如果在读取配置文件时发现错误,则停止进一步读取。
- 重新读取所有项目或特定项目的服务器配置文件。这些文件称为
- 参数
server_name
:需要重新读取配置文件的服务器名称。project_name
:这是一个可选参数。如果提供,则仅重新读取该项目的配置文件。
- 示例
sosadmin readcfg USB_SRV
# 重新读取服务器 `USB_SRV` 下定义的所有项目的配置文件。
sosadmin readcfg USB_SRV USB_PRJ
# 仅重新读取服务器 `USB_SRV` 下定义的项目 `USB_PRJ` 的配置文件。
sosadmin reimport
- sosadmin reimport - 增量导入已导入的 SOS6 项目
- 用法
sosadmin reimport 7_server_name 7_project_name import_6_path
- 描述
- 在已导入的 SOS7 项目基础上,增量重新导入 SOS6 项目。
- 参数
7_server_name
:管理项目的 SOS7 服务器名称。7_project_name
:需要通过增量导入更新的现有 SOS7 项目名称。import_6_path
:自上次导入以来已更改的 SOS6 项目的路径。
- 注意事项
- 此命令只能由管理项目的主服务器所有者执行。
- 示例
sosadmin reimport USB_7_SRV USB_7_PRJ /proj/sos_rep/USB.rep
# 通过增量导入 SOS6 仓库路径 `/proj/sos_rep/USB.rep` 的更改,更新服务器 `USB_7_SRV` 上的项目 `USB_7_PRJ`。
sosadmin restore
- sosadmin restore - 恢复项目数据
- 用法
sosadmin restore server_name project_name restore_from_dir
- 描述:
- 从归档目录中恢复项目数据。
- 参数:
server_name
:服务器名称。project_name
:要恢复数据的新项目名称。restore_from_dir
- 恢复项目数据的目录路径。
- 该目录应包含由
archive
命令创建的所有必需文件。
- 注意事项:
- 可以结合使用
archive
和restore
命令完成以下操作:- 重命名项目。
- 将项目移动到不同的服务器。
- 可以结合使用
- 示例:
sosadmin restore USB_SRV USB_4_0 /store/EDA/USB_exported
# 从 `/store/EDA/USB_exported` 目录恢复数据到服务器 `USB_SRV` 上的项目 `USB_4_0`。
sosadmin shell
- sosadmin shell - 让服务器运行程序或脚本
- 用法
sosadmin shell server_name project_name script_with_args
- 描述
shell
命令允许用户在服务器上运行脚本或命令。- 注意:出于安全原因,只有在以下两个目录中的程序或脚本才会被执行,优先级如下:
- 环境变量
SOS_SERVER_SCRIPTS_DIR
定义的路径。 <项目仓库>/setup
目录。
- 环境变量
- 参数
server_name
:执行脚本/命令的服务器名称。project_name
:执行脚本的项目名称。script_with_args
:脚本及其参数需要用双引号括起来。脚本是用户定义的脚本,需放置在上述目录中。脚本必须对 SOS 服务器具有执行权限。
- 示例
sosadmin shell ALU_PRJ_SRV ALU_ASIC "notify_admin Check_IN $SOS_OBJ_PATH"
# 用户脚本 `notify_admin` 由 SOS 服务器 `ALU_PRJ_SRV` 为项目 `ALU_ASIC` 执行。`Check_IN` 是第一个参数,`$SOS_OBJ_PATH` 是第二个参数。
sosadmin showdiff
- sosadmin showdiffs - 显示两个 RSO 在任意时间点的差异
- 用法:
sosadmin showdiffs server_name project_name fromrso torso
[format] [fromtime] [totime]
- 描述:
- 显示项目中两个 RSO(修订搜索顺序)之间的差异(如果项目在 SOS 控制下)。
- 参数:
server_name
:使用的 SOS 服务器名称。project_name
:获取指定项目的审计记录。fromrso
:起始 RSO 字符串。以逗号分隔的值列表。torso
:目标 RSO 字符串。以逗号分隔的值列表。format
:有效的格式选项为txt|csv|csv:noheader
,默认格式为txt
。[fromtime]
- 显示结果的起始本地日期和时间。日期和时间以本地时间指定,并在服务器上适当转换。
- 日期和时间的格式为:
"YYYY/MM/DD HH:MM:SS"
- 必须从年份开始,但可以选择指定尽可能少的部分。未指定的部分将假定为 0。
[totime]
:- 显示结果的结束本地日期和时间。日期和时间以本地时间指定,并在服务器上适当转换。
- 日期和时间的格式为:
"YYYY/MM/DD HH:MM:SS"
- 必须从年份开始,但可以选择指定尽可能少的部分。未指定的部分将假定为 0。
- 示例:
sosadmin showdiffs USB_SRV USB_PRJ main Feature_Complete
# 显示服务器 `USB_SRV` 上项目 `USB_PRJ` 的 RSO `main` 和 `Feature_Complete` 之间的差异。
sosadmin showdiffs USB_SRV USB_PRJ main Feature_Complete csv
# 以 CSV 格式显示 RSO `main` 和 `Feature_Complete` 之间的差异。
sosadmin showdiffs USB_SRV USB_PRJ main Feature_Complete csv:noheader
# 以 CSV 格式显示 RSO `main` 和 `Feature_Complete` 之间的差异,但不包含表头。
sosadmin showdiffs USB_SRV USB_PRJ main Feature_Complete csv 2017/08/01 2017/09/12
# 显示从时间 `2017/08/01` 到时间 `2017/09/12` 之间 RSO `main` 和 `Feature_Complete` 的差异,并以 CSV 格式输出。
sosadmin showlabels
- sosadmin showlabels - 报告具有指定标签的版本
- 用法
sosadmin showlabels server_name project_name labelnames
[rso] [format]
- 描述
- 生成报告,列出指定 RSO 下具有标签的对象版本。
- 参数
server_name
:使用的 SOS 服务器名称。project_name
:获取指定项目的审计记录。、labelnames
:感兴趣的标签名称。可以是单个标签或以逗号分隔的标签列表。[rso]
:RSO 字符串。以逗号分隔的值列表。如果未提供,则默认为main
。[format]
:有效的格式选项为txt|csv|htm|csv:noheader
。默认格式为txt
。
- 示例
sosadmin showlabels USB_SRV USB_PRJ Release_10
# 显示具有标签 `Release_10` 的所有修订版本,使用默认 RSO `main` 和默认格式 `txt`。
sosadmin showlabels USB_SRV USB_PRJ Release_10,Tapeout_release main csv
# 显示具有标签 `Release_10` 和 `Tapeout_release` 的所有修订版本,使用 RSO `main` 和 CSV 格式。
sosadmin showlabels USB_SRV USB_PRJ Release_10 "" csv
# 显示具有标签 `Release_10` 的所有修订版本,使用默认 RSO `main` 和 CSV 格式。
sosadmin shutdown
- sosadmin shutdown - 关闭服务器
- 用法
sosadmin shutdown [-F] [-primary/-cache] server_name
- 描述
- 关闭服务器。
- 参数
[-F]
:强制立即关闭。[-primary/-cache]
:可选参数,指定是关闭主服务器还是缓存服务器。如果未指定,则尝试关闭两者。server_name
:要关闭的服务器名称。
- 示例
sosadmin shutdown USB_SRV
# 关闭服务器 `USB_SRV`。
sosadmin shutdown -cache USB_SRV
# 关闭缓存服务器 `USB_SRV`。
sosadmin sos6reposanity
- sosadmin sos6reposanit - 在从 SOS6 导入到 SOS7 之前检查 SOS6 仓库的完整性
- 用法
sosadmin sos6reposanity 7_server_name path_to_sos6_repo
- 描述
- 通过检查仓库数据的文件完整性,对 SOS6 仓库进行完整性检查。它会打印结果并将其保存到服务器日志文件中。
- 参数
7_server_name
:管理项目的 SOS7 服务器名称。path_to_sos6_repo
:要导入的 SOS6 仓库的路径。
- 注意事项
- 此命令只能由管理项目的主服务器所有者执行。
- 示例
sosadmin sos6reposanity bazinga /home/projects/admin/repo/bazinga.rep
# 检查位于 `/home/projects/admin/repo/bazinga.rep` 的 SOS6 仓库的完整性,以便导入到 SOS7 服务器 `bazinga`。
sosadmin startup
- sosadmin startup - 启动服务器
- 用法
sosadmin startup [-primary/-cache] server_name
- 描述
- 启动服务器。
- 参数
[-primary/-cache]
:可选参数,指定是仅启动主服务器还是缓存服务器。如果未指定,则同时启动主服务器和缓存服务器。server_name
:要启动的服务器名称。
- 示例
sosadmin startup USB_SRV
# 启动服务器 `USB_SRV`。
sosadmin startup -primary USB_SRV
# 启动主服务器 `USB_SRV`。