Provided by: manpages-zh_1.6.3.3-2_all
NAME
systemd-ask-password - 向用户索要密码
SYNOPSIS
systemd-ask-password [OPTIONS...] [MESSAGE]
描述
systemd-ask-password 通过向用户显示 [MESSAGE] 消息的方式索要密码或口令。 当在TTY上运行时,它将从TTY读取密码, 然后再将密码打印到标准输出。 当不在TTY上运行或使用 --no-tty 选项时, 它将向全系统范围询问密码, 并允许活动用户通过多种密码代理进行应答。 后一种方式仅供特权进程使用。 此工具主要用于向全系统范围索要不特定于某个账户的密码。 例如:用于解开加密硬盘的密码、 用于解开SSL证书的口令(常用于HTTP/VPN服务器)。 目前可用的密码代理如下: · Plymouth(8) (一个显示启动动画的工具,亦可用作启动时密码代理) · 启动时直接在控制台上向用户索要密码的密码代理 · 通过 wall(1) 消息获取密码的密码代理 · 能够被临时启动 以处理一系列连续请求的命令行密码代理 · 可配合 systemctl(1) 命令临时启动的TTY密码代理 此外, 还可以根据 systemd Password Agent Specification[1] 规范编写其他类型的密码代理。 在TTY上输入密码时,用户可以按一下TAB键, 这样在输入密码时就不会显示星号。 在开始输入密码前按退格键(Backspace)也有同样的效果。
选项
能够识别的命令行选项如下: --icon= 在询问密码的同时显示一个图标, 仅用于图形界面的密码代理。 图标名称必须遵守 XDG 图标命名规范[2]。 --id= 为此次密码索要动作指定一个标识符, 以辨别此密码适用于密码代理的哪个请求。 其中必须包含 请求密码的子系统以及密码的作用对象。 例如: "--id=cryptsetup:/dev/sda5" --keyname= 指定一个用于缓存密码的内核密钥环(keyring)名称。 设置此选项表示 尽可能将收集到的密码缓存到指定的内核密钥环(keyring)中(该密钥环必须属于root用户)。 若与 --accept-cached 一起使用, 则表示首先从指定的内核密钥环缓存中查找所需密码, 仅在找不到的情况下才提示用户输入, 这样当多个对象都使用同一个密码时, 就可以避免让用户反复输入同一个密码。 密码的缓存有效期是2.5分钟, 超时后将被删除。 同一个内核密钥环中可以缓存多个密码。 可以使用 keyctl(1) 工具访问内核密钥环中缓存的密码。 例如: "--keyname=cryptsetup" --timeout= 设置等待用户输入密码的最大时长。 默认"90s",设为"0"表示无限等待。 --echo 直接显示用户的输入(而不是显示为星号或者不显示), 常用于输入无需保密的用户名。 --no-tty 不在当前TTY上读取密码(即使当前TTY可用), 而是从密码代理读取密码。 --accept-cached 允许从密码缓存中查找先前曾经输入过的密码。 --multiple 与 --accept-cached 连用, 表示可以接收多个密码(每行输出一个密码)。 --no-output 不在标准输出上打印密码。 此选项常用于 仅希望将密码存储到内核密钥环中(--keyname), 而不希望显示在屏幕上或记录到日志中。 -h, --help 显示简短的帮助信息并退出。
退出状态
返回值为 0 表示成功, 非零返回值表示失败代码。
参见
systemd(1), systemctl(1), keyctl(1), plymouth(8), wall(1)
NOTES
1. systemd Password Agent Specification http://www.freedesktop.org/wiki/Software/systemd/PasswordAgents 2. XDG 图标命名规范 http://standards.freedesktop.org/icon-naming-spec/icon-naming-spec-latest.html
跋
本页面中文版由中文 man 手册页计划提供。 翻译人员:金步国 金步国作品集:http://www.jinbuguo.com 中文 man 手册页计划:https://github.com/man-pages-zh/manpages-zh