Мне установили Ubuntu 16.04 локально, и она имеет завершение удара для systemctl
подкоманды по умолчанию. Но когда я запускаю экземпляр Сервера Ubuntu 18.04 на Цифровом Океане, нет никакого завершения удара для systemctl
подкоманды. Я ожидал бы некоторый недостающий пакет как systemd-completion
, но на моей локальной Ubuntu у меня есть только эти установленные пакеты:
ii libpam-systemd:amd64 229-4ubuntu21.2 amd64 system and service manager - PAM module
ii libsystemd0:amd64 229-4ubuntu21.2 amd64 systemd utility library
ii libsystemd0:i386 229-4ubuntu21.2 i386 systemd utility library
ii systemd 229-4ubuntu21.2 amd64 system and service manager
ii systemd-shim 9-1bzr4ubuntu1 amd64 shim for systemd
ii systemd-sysv 229-4ubuntu21.2 amd64 system and service manager - SysV links
и работы завершения. bash-completion
пакет установлен на обеих машинах.
Кроме того, в /etc/bash_completion.d/
из моих локальных 16,04 машин я не вижу, что любой связал systemctl файлы завершения
-rw-r--r-- 1 root root 408 сер 21 2015 cryptdisks
-rw-r--r-- 1 root root 323 бер 18 2016 desktop-file-validate
-rw-r--r-- 1 root root 2384 сер 13 2010 dkms
-rw-r--r-- 1 root root 439 сер 11 2017 git-prompt
-rw-r--r-- 1 root root 11144 тра 11 2017 grub
-rw-r--r-- 1 root root 736 тра 7 2013 insserv
-rw-r--r-- 1 root root 6596 лют 19 23:06 libreoffice.sh
-rw-r--r-- 1 root root 553 лют 2 2016 openvpn
Так, что пакет должен я устанавливать для получения завершения удара для systemctl
подкоманды? Возможно, я должен включить что-то в конфигурациях удара где-нибудь?
Я нашел этот ответ первым, узнав, какой пакет обеспечивает systemctl
:
$ dpkg -S $(type -p systemctl)
systemd: /bin/systemctl
Затем смотря на содержание systemd
пакет, я вижу:
$ dpkg -L systemd
...<snip>...
/usr/share/bash-completion
/usr/share/bash-completion/completions
/usr/share/bash-completion/completions/systemd-run
/usr/share/bash-completion/completions/timedatectl
/usr/share/bash-completion/completions/systemd-analyze
/usr/share/bash-completion/completions/systemd-cgtop
/usr/share/bash-completion/completions/systemd-delta
/usr/share/bash-completion/completions/systemd-path
/usr/share/bash-completion/completions/journalctl
/usr/share/bash-completion/completions/systemd-detect-virt
/usr/share/bash-completion/completions/localectl
/usr/share/bash-completion/completions/networkctl
/usr/share/bash-completion/completions/hostnamectl
/usr/share/bash-completion/completions/bootctl
/usr/share/bash-completion/completions/systemd-cat
/usr/share/bash-completion/completions/systemd-cgls
/usr/share/bash-completion/completions/systemctl <---
/usr/share/bash-completion/completions/busctl
/usr/share/bash-completion/completions/loginctl