- systemd.index 中文手册
- systemd.directives 中文手册
- binfmt.d 中文手册
- bootctl 中文手册
- bootup 中文手册
- busctl 中文手册
- coredump.conf 中文手册
- coredumpctl 中文手册
- crypttab 中文手册
- daemon 中文手册
- dnssec-trust-anchors.d 中文手册
- environment.d 中文手册
- file-hierarchy 中文手册
- halt 中文手册
- hostname 中文手册
- hostnamectl 中文手册
- hwdb 中文手册
- journal-remote.conf 中文手册
- journal-upload.conf 中文手册
- journalctl 中文手册
- journald.conf 中文手册
- kernel-command-line 中文手册
- kernel-install 中文手册
- loader.conf 中文手册
- locale.conf 中文手册
- localectl 中文手册
- localtime 中文手册
- loginctl 中文手册
- logind.conf 中文手册
- machine-id 中文手册
- machine-info 中文手册
- machinectl 中文手册
- modules-load.d 中文手册
- networkctl 中文手册
- networkd.conf 中文手册
- nss-myhostname 中文手册
- nss-mymachines 中文手册
- nss-resolve 中文手册
- nss-systemd 中文手册
- os-release 中文手册
- pam_systemd 中文手册
- portablectl 中文手册
- resolvectl 中文手册
- resolved.conf 中文手册
- shutdown 中文手册
- sysctl.d 中文手册
- systemctl 中文手册
- systemd 中文手册
- systemd-analyze 中文手册
- systemd-ask-password 中文手册
- systemd-ask-password-console.service 中文手册
- systemd-backlight@.service 中文手册
- systemd-binfmt.service 中文手册
- systemd-bless-boot-generator 中文手册
- systemd-bless-boot.service 中文手册
- systemd-boot 中文手册
- systemd-boot-check-no-failures.service 中文手册
- systemd-cat 中文手册
- systemd-cgls 中文手册
- systemd-cgtop 中文手册
- systemd-coredump 中文手册
- systemd-cryptsetup-generator 中文手册
- systemd-cryptsetup@.service 中文手册
- systemd-debug-generator 中文手册
- systemd-delta 中文手册
- systemd-detect-virt 中文手册
- systemd-environment-d-generator 中文手册
- systemd-escape 中文手册
- systemd-firstboot 中文手册
- systemd-fsck@.service 中文手册
- systemd-fstab-generator 中文手册
- systemd-getty-generator 中文手册
- systemd-gpt-auto-generator 中文手册
- systemd-halt.service 中文手册
- systemd-hibernate-resume-generator 中文手册
- systemd-hibernate-resume@.service 中文手册
- systemd-hostnamed.service 中文手册
- systemd-hwdb 中文手册
- systemd-id128 中文手册
- systemd-importd.service 中文手册
- systemd-inhibit 中文手册
- systemd-initctl.service 中文手册
- systemd-journal-gatewayd.service 中文手册
- systemd-journal-remote.service 中文手册
- systemd-journal-upload.service 中文手册
- systemd-journald.service 中文手册
- systemd-localed.service 中文手册
- systemd-logind.service 中文手册
- systemd-machine-id-commit.service 中文手册
- systemd-machine-id-setup 中文手册
- systemd-machined.service 中文手册
- systemd-makefs@.service 中文手册
- systemd-modules-load.service 中文手册
- systemd-mount 中文手册
- systemd-networkd-wait-online.service 中文手册
- systemd-networkd.service 中文手册
- systemd-notify 中文手册
- systemd-nspawn 中文手册
- systemd-path 中文手册
- systemd-portabled.service 中文手册
- systemd-quotacheck.service 中文手册
- systemd-random-seed.service 中文手册
- systemd-rc-local-generator 中文手册
- systemd-remount-fs.service 中文手册
- systemd-resolved.service 中文手册
- systemd-rfkill.service 中文手册
- systemd-run 中文手册
- systemd-run-generator 中文手册
- systemd-sleep.conf 中文手册
- systemd-socket-activate 中文手册
- systemd-socket-proxyd 中文手册
- systemd-suspend.service 中文手册
- systemd-sysctl.service 中文手册
- systemd-system-update-generator 中文手册
- systemd-system.conf 中文手册
- systemd-sysusers 中文手册
- systemd-sysv-generator 中文手册
- systemd-time-wait-sync.service 中文手册
- systemd-timedated.service 中文手册
- systemd-timesyncd.service 中文手册
- systemd-tmpfiles 中文手册
- systemd-tty-ask-password-agent 中文手册
- systemd-udevd.service 中文手册
- systemd-update-done.service 中文手册
- systemd-update-utmp.service 中文手册
- systemd-user-sessions.service 中文手册
- systemd-vconsole-setup.service 中文手册
- systemd-veritysetup-generator 中文手册
- systemd-veritysetup@.service 中文手册
- systemd-volatile-root.service 中文手册
- systemd.automount 中文手册
- systemd.device 中文手册
- systemd.dnssd 中文手册
- systemd.environment-generator 中文手册
- systemd.exec 中文手册
- systemd.generator 中文手册
- systemd.journal-fields 中文手册
- systemd.kill 中文手册
- systemd.link 中文手册
- systemd.mount 中文手册
- systemd.netdev 中文手册
- systemd.network 中文手册
- systemd.nspawn 中文手册
- systemd.offline-updates 中文手册
- systemd.path 中文手册
- systemd.preset 中文手册
- systemd.resource-control 中文手册
- systemd.scope 中文手册
- systemd.service 中文手册
- systemd.slice 中文手册
- systemd.socket 中文手册
- systemd.special 中文手册
- systemd.swap 中文手册
- systemd.syntax 中文手册
- systemd.target 中文手册
- systemd.time 中文手册
- systemd.timer 中文手册
- systemd.unit 中文手册
- sysusers.d 中文手册
- timedatectl 中文手册
- timesyncd.conf 中文手册
- tmpfiles.d 中文手册
- udev 中文手册
- udev.conf 中文手册
- udevadm 中文手册
- user@.service 中文手册
- vconsole.conf 中文手册
systemd.device 中文手册
名称
systemd.device — 设备单元配置
大纲
device
.device
描述
以".device
" 为后缀的单元文件,封装了一个位于sysfs/udev(7)中的设备。
此类单元没有专用的配置选项。systemd.unit(5)中描述了通用于所有单元类型的配置选项(亦称"配置指令"或"单元属性"),它们位于"[Unit]
" 与 "[Install]
"小节。由于此类单元没有专用的配置选项,所以并不存在专用的 "[Device]
" 小节。
systemd 会自动动态的为所有带有"systemd"标记的设备创建 device 单元。可以利用这个特性定义设备与单元之间的依赖关系。可以通过在 udev 的 .rules 文件中使用 "TAG+="systemd"
" 来添加"systemd"标记。所有块设备与所有网络设备都默认带有"systemd"标记,此外,还有个别其他设备也默认带有"systemd"标记。详见udev(7)手册。
device 单元的名称由该设备在 /sys
与 /dev
中的路径决定。例如 /dev/sda5
对应的单元名称是 dev-sda5.device
。有关将路径转化为单元名称的详细规则,参见systemd.unit(5) 手册。
每当有设备生成 "changed
" 事件时,systemd 都会重新加载对应的设备单元。其他单元可以使用 ReloadPropagatedFrom=
对设备事件作出反应。
自动依赖
隐含依赖
许多单元依赖于特定的设备,并且可以自动获得对相应 device 单元的依赖。例如,.socket
单元可以自动获得对BindToDevice=
指定的网络接口的 device 单元的依赖。同样,swap 与 mount 单元也可以自动获得对所需块设备的 device单元的依赖。
默认依赖
device 单元没有默认依赖。
udev 规则库
对 device 单元的配置,既可以通过修改单元文件实现,也可以直接通过配置 udev 规则库实现。因为 systemd 仅为带有 "systemd
"标记的设备创建 device 单元,所以,下列属性仅可用于带有 "systemd
" 标记的设备。可配置的 udev 设备属性如下:
SYSTEMD_WANTS=
,SYSTEMD_USER_WANTS=
添加对其他单元的
Wants=
依赖。systemd 系统实例使用SYSTEMD_WANTS=
属性、 systemd 用户实例使用SYSTEMD_USER_WANTS=
属性。这两个属性可用于实现在特定设备可用时自动启动期望的单元。注意,仅在设备首次激活时才会启动
Wants=
依赖的单元。因此,向已激活的设备中添加Wants=
依赖是没有意义的,但可以使用下面的SYSTEMD_READY=
属性来控制是否将设备视为"已激活",进而控制何时触发依赖关系。属性值是一个空格分隔的单元名称列表。如果使用了一个单元模板(单元名称中包含了一个 "
@
" 字符,但在 "@
" 字符之后的实例名称为空),那么该模板将会被该设备的 "sysfs
" 路径自动实例化(也就是将转义后的路径作为实例化参数插入到模板名称中)。此特性常用于为每个出现并匹配特定属性的设备实例化一次特定的模板。SYSTEMD_ALIAS=
为该 device 单元添加一个别名。必须是一个由绝对路径 转化而来的单元名称(见上文)。
SYSTEMD_READY=
设为 0 表示始终将该设备视为"已拔出",即使它实际上依然存在于 udev 设备树中。默认值 1 表示只要该设备存在于 udev 设备树中,就视为"已插入"。
该属性主要用于这样的设备:最初以"尚未初始化"的状态出现在设备树中(此时设备尚不可用),接着在完成初始化之后再生成一个 "
changed
" 事件(此时设备已可用)。注意,当某设备的SYSTEMD_READY=0
时,为其设置的SYSTEMD_WANTS=
将会失效。ID_MODEL_FROM_DATABASE=
,ID_MODEL=
设置该 device 单元的 描述字符串。
参见
systemd(1), systemctl(1), systemd.unit(5), udev(7), systemd.directives(7)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论