/usr/bin/pkgsign [-a hash_algorithm] [-c path_to_signing_certificate] [-i path_to_intermediate_cert] ... [-k path_to_private_key] [-n] -s path_or_uri [--help] [--no-index] [--no-catalog] (fmri|pattern) ...
通过使用提供的密钥和证书添加签名操作,pkgsign 可在系统信息库中更新给定 FMRI 的清单。修改后的软件包保留原来的时间戳。
支持以下选项:
显示用法消息。
使用签名算法 hash_algorithm 而不是缺省值。缺省签名算法为 rsa-sha256。支持的签名算法包括 rsa-sha256、rsa-sha384、rsa-sha512、sha256、sha384 和 sha512。仅指定散列算法的签名算法会导致签名值为软件包清单的散列。指定 rsa 和散列算法的签名算法会导致签名值为使用提供的私钥进行签名的清单的散列(请参见 –c 和 – k 选项)。
添加证书 path_to_signing_certificate 作为验证操作中的签名值时所使用的证书。–c 选项仅可以与 –k 选项一起使用。
添加证书 path_to_intermediate_cert 作为验证证书 path_to_signing_certificate (作为参数提供给 –c)时所使用的证书。通过多次指定 –i,可提供多个证书。
使用存储在 path_to_private_key 中的私钥对清单进行签名。–k 选项只能与 –c 选项一起使用。如果未设置 –k,则签名值为清单的散列。
执行试运行,不以任何方式更改系统信息库。
对位于 path_or_uri 的系统信息库中的软件包进行签名。
在重新发布已签名的清单后不更新系统信息库搜索索引。
在重新发布已签名的清单后不更新系统信息库目录。
使用清单的散列值对发布到 http://localhost:10000 的软件包进行签名。这通常用于测试。
$ pkgsign -s http://localhost:10000 -a sha256 \ example_pkg@1.0,5.11-0:20100626T030108Z示例 2 使用密钥和证书进行签名
使用 rsa-sha384 对发布到位于 /foo/bar 的文件系统信息库的软件包进行签名,以便对清单执行散列和签名操作。签名密钥位于 /key/usr2.key 中,其关联的证书位于 /key/usr2.cert 中,而用于验证证书的证书位于 /icerts/usr1.cert 中。
$ pkgsign -s file:///foo/bar/ -a rsa-sha384 \ -k /key/usr2.key -c /key/usr2.cert -i /icerts/usr1.cert \ example_pkg@1.0,5.11-0:20100626T031341Z
将返回以下退出值:
命令成功。
出现错误。
指定的命令行选项无效。
请求了多项操作,但只有一部分操作成功。
发生了意外的异常。
有关下列属性的说明,请参见 attributes(5):
|
pkg(1)、pkgrecv(1)、pkgsend(1)、pkgrepo(1)、pkg(5)
https://java.net/projects/ips/pages/Home