Главная >> Инструкции >> Ошибка add-apt-repository command not found

Ошибка add-apt-repository command not found

В репозиториях Debian и Ubuntu есть множество различных программ, которых будет достаточно для удовлетворения потребностей большинства пользователей. Но есть специфичные программы, которых пока что нет в репозиториях, также там нет новых версий программ. Поэтому достаточно часто в Ubuntu, Debian, Linux Mint и других системах используются репозитории PPA.

Обычно такие репозитории поддерживают либо разработчики программ, таким образом, там будет всегда новая версия, либо добровольцы, они добавляют программы, которых нет в официальных репозиториях. Но при попытке добавить репозиторий в систему может возникнуть ошибка 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. Если у вас остались вопросы, спрашивайте в комментариях!

7 комментариев к “Ошибка add-apt-repository command not found”

  1. ну и всё равно ничего(. вбил команду в Дебиан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 и т.д.)

            Возможно кофликт в репах!?

  2. 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

    Ответить

Оставьте комментарий