В репозиториях Debian и Ubuntu есть множество различных программ, которых будет достаточно для удовлетворения потребностей большинства пользователей. Но есть специфичные программы, которых пока что нет в репозиториях, также там нет новых версий программ. Поэтому достаточно часто в Ubuntu, Debian, Linux Mint и других системах используются репозитории PPA.
Обычно такие репозитории поддерживают либо разработчики программ, таким образом, там будет всегда новая версия, либо добровольцы, они добавляют программы, которых нет в официальных репозиториях. Но при попытке добавить репозиторий в систему может возникнуть ошибка add-apt-repository command not found. В этой небольшой статье мы разберем как ее исправить и почему она возникает.
Содержание статьи
- Что значит add-apt-repository command not found?
- Как исправить error add-apt-repository command not found?
- Выводы
Что значит add-apt-repository command not found?
Дословно это словосочетание обозначает что команда add-apt-repository не найдена в системе. А если такой программы нет в вашем дистрибутиве, то вы не сможете добавить репозиторий. Вернее сможете, но это будет намного сложнее. Причин может быть несколько:
- Вы используете дистрибутив, несовместимый с системой управления пакетами deb, поэтому команды и нет, вы не сможете использовать ppa в Arch, Gentoo, Manjaro, Fedora и так далее, тут ничего не поделать;
- Вы используете не Ubuntu. Утилита для управления репозиториями разработана командой Ubuntu и поставляется по умолчанию только в этим дистрибутивом, в других, основанных на Debian системах ее нужно установить.
- Вы набираете команду неверно. Если вы копируете команду с какого-либо интернет-ресурса, то обратите внимание на дефисы, на многих ресурсах они часто заменяются на тире автоматически, из-за этого команда будет неверной.
Как исправить error add-apt-repository command not found?
Самый простой способ исправить эту ошибку - установить пакет, который содержит нужную нам программу. Он есть в официальных репозиториях большинства дистрибутивов, основанных на Debian. Для его установки достаточно выполнить:
sudo apt install software-properties-common
Иногда система может выдавать, что пакет установлен, но несмотря на это продолжать сыпать ошибки при попытке установить PPA:
Такое случается иногда из-за ошибок во время установки. Система думает, что пакет установлен, но на самом деле, в файловой системе нет файлов данного пакета, для решения проблемы мы можем его переустановить:
sudo apt install --reinstall software-properties-common
Важно отметить, что в версиях Ubuntu ниже 13.10 этот пакет назывался по-другому - python-software-properties. Поэтому если вы используете дистрибутив, основанный на старой версии системы, то стоит устанавливать именно этот пакет:
sudo apt install python-software-properties
Чтобы убедиться что пакет установлен правильно и все файлы есть там, где они и должны быть, вы можете использовать команду:
dpkg -L software-properties-common
Затем можете попытаться выполнить файл программы напрямую:
sudo /usr/bin/add-apt-repository
И убедитесь, что у него есть права на выполнение, а то мало ли:
ls -l /usr/bin/add-apt-repository
Если все правильно, то ошибки add apt repository команда не найдена больше быть не должно.
Выводы
В этой статье мы разобрали что означает ошибка sudo add-apt-repository command not found и как ее исправить чтобы получить возможность работать с PPA. Если у вас остались вопросы, спрашивайте в комментариях!
ну и всё равно ничего(. вбил команду в Дебиан9 "sudo apt install python-software-properties" выдает такое "Е: Не удалось получить доступ к файлу блокировки /var/lib/dpkg/lock - open (11: Ресурс временно недоступен)
E: Не удалось выполнить блокировку управляющего каталога (/var/lib/dpkg/); он уже используется другим процессом?"
пробовал как и на видео "sudo apt-get install python-software-properties", ничего.
а хотел поставить виджет Conky Manager
.........сори, черт возьми, мой пр**б!) не пошло потому что у меня был открыт Синаптик. уже второй раз на таком застрал)
.....и отписываюсь опять.
прошло несколько часов как я повозился с этим Conky Manager. прописанные репозитории PPA при помощи sudo apt install software-properties-common всё равно не помогли мне установить Conky Manager. конфликтует Синаптик при обновлении репозиторий (выдает ошибку и отказывается обновляться) и в Терминале также выдает ошибку. пришлось удалить те 2 ветки репозитория из Синаптика. поставил я Conky Manager только через .deb пакет (скачанной из github_com) установив его через Треминал. и то, под час установки Терминал предложил исправить установку пакета Conky Manager командами "apt-get -f install" или "apt --fix-broken install".
вопрос: если мне будут попадать репозитории от PPA, как поставить их поставить без конфликтов в Синаптике/Терминале при обновлении и.т.д.???
посоветуйте что нибудь
...отпишитесь пожалуйста, я еще не нашел решения как на Дебиан 9 (xfce) ставить репо от РРА. все репо у меня non-free стоят.
аФтор, отпиши, почему не упростить жизнь людям которые хотят отрубить все концы Виндовса??
дайте знать кто нибудь. низнаю когда опять попаду на эту статью. мой мейл humanreck@mail.ru
1. В Дебиан 9 нужен пакет "software-properties-common"
2. Ошибки во время sudo apt update? (скопируйте что оно Вам выдает)
3. Скопируйте список Ваших репо и какие разделы этих реп Вы подключили (main, nonfree и т.д.)
Возможно кофликт в репах!?
спс
Traceback (most recent call last):
File "/usr/bin/add-apt-repository", line 95, in
sp = SoftwareProperties(options=options)
File "/usr/lib/python3/dist-packages/softwareproperties/SoftwareProperties.py", line 109, in __init__
self.reload_sourceslist()
File "/usr/lib/python3/dist-packages/softwareproperties/SoftwareProperties.py", line 599, in reload_sourceslist
self.distro.get_sources(self.sourceslist)
File "/usr/lib/python3/dist-packages/aptsources/distro.py", line 91, in get_sources
raise NoDistroTemplateException(
aptsources.distro.NoDistroTemplateException: Error: could not find a distribution template for Parrot/n/a