V Linux Handbook vždy před psaním věci testuji. Ostatní přispěvatelé dělají totéž.
Protože se v budoucnu chystáme pokrýt spoustu výukových programů souvisejících s DevOps, SysAdminem a skriptováním, vytvořil jsem vyhrazený testovací server na UpCloud. UpCloud je poskytovatel cloudových serverů s vynikajícím výkonem.
Jednou z prvních věcí, které jsem udělal, bylo vytvoření uživatele sudo na tomto nově vytvořeném testovacím serveru se systémem Ubuntu 18.04 LTS. Při používání serveru jsem si všiml něčeho divného.
Dokončování karty nefungovalo správně. Dokončení karty je jednou ze základních zkratek terminálu, bez které nemohu žít. Představte si tu hrůzu práce v příkazovém řádku Linuxu, kde nefunguje doplňování karet. Negativně to ovlivňuje vaši produktivitu a máte pocit, že důležitá část vašeho terminálu chybí.
Dobrá věc je, že se to dá snadno opravit. Dovolte mi, abych vám ukázal, jak na to.
Povolit dokončování karet v distribucích Linuxu založených na Ubuntu a Debian
Dokončování karet je natolik součástí Linuxu, že byste si nikdy nemysleli, že je to něco, co je třeba explicitně povolit. Bohužel to tak funguje.
Víte, některé cloudové servery dávají přednost minimálnímu obrazu distribuce Linuxu, protože to šetří čas při nasazení. Ale to také znamená, že instalace Linuxu bude mít pouze několik balíčků.
A to se stalo v tomto případě. Nově nainstalovanému serveru Ubuntu chyběl balíček bash-completion.
Tento balíček můžete rychle a snadno nainstalovat pomocí standardního příkazu apt:
sudo apt install bash-completion
Budete se muset odhlásit (nebo opustit shell), abyste viděli jeho účinek.
Další odstraňování problémů s automatickým dokončováním
Normálně by to mělo problém vyřešit, ale pokud je bash-completion již nainstalován a problém přetrvává, můžete jej zkusit znovu nainstalovat.
sudo apt install --reinstall bash-completion
Odhlaste se a zkontrolujte, zda to funguje nebo ne. Pokud ne, můžete ručně upravit svůj konfigurační soubor bash na adrese ~/.bashrc
Pokud ještě neexistuje, měli byste jej vytvořit. Poté můžete do souboru bashrc přidat následující řádky:
# enable bash completion in interactive shells
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
Soubor můžete upravit v terminálu pomocí textového editoru založeného na terminálu, jako je Vim.
Doufám, že tento krátký krátký návod vyřešil problém s dokončováním karet za vás. Pokud máte nějaké dotazy nebo návrhy, neváhejte zanechat komentář.