В настоящее время я использую 64-разрядную версию Debian Wheezy.
У меня возникли проблемы с автозаполнением для apt-get. У меня установлено bash-complete.
Если я вошел в систему как root в оболочке, я могу использовать автозаполнение для apt-get (например: apt-get install wicd [tab] [tab ]), и оно покажет мне все пакеты, которые соответствуют этому. Но если я попытаюсь использовать автозаполнение для apt-get у другого пользователя без полномочий root (даже с sudo), оно не будет работать вообще. Я могу автоматически заполнить другие вещи, такие как имена файлов.
Любая помощь?
У меня есть следующий код в моем .bashrc и / etc / profile
if [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
bash
apt
autocomplete
not-root-user
Деннис Линуз
источник
источник
Ответы:
Ваш
/etc/bash_completion
файл должен отсутствовать.sudo apt-get install bash-completion
должен решить все ваши проблемы.
Учитывая, что у вас уже есть строки без
/etc/bash.bashrc
комментариев, как указал Фахим Митха и другие, это должно сработать сейчас:Причина:
bash-completion
пакет теперь имеет этот файл (/ etc / bash_completion). Раньше был вbash
упаковке, но не больше.информация об изменении пакета
источник
Попробуйте запустить это:
источник
Я не могу вспомнить, если это необходимо, но попробуйте раскомментировать соответствующие строки,
/etc/bash.bashrc
если не закомментированные, а именноисточник
Насколько я помню, автозаполнение bash для параметров команды осуществляется с помощью
complete
команды. У вас должен быть скрипт завершения apt-get, загруженный пользователем root bashrc (может быть, /root/.bashrc), поэтому для его запуска вам нужно войти в систему как root. Sudo не загружает скрипты root, он просто дает вам привилегии.Возможно, вам не хватает этого скрипта автозаполнения для пользователей без полномочий root, поэтому у них нет настроенного автозаполнения bash для apt-get. Если это так, загрузите эту функцию для пользователей, имеющих ВСЕ привилегии, в файле sudoers.
источник