Вопрос или проблема
Время от времени я вижу, как пользователи сталкиваются с проблемами обновления из-за ошибок вроде этой:
E:Type 'ain' is not known on line 1 in source list /etc/apt/sources.list.d/some-ppa.list'
с различными типами/номерами строк/файлами списка источников (часто после удаления PPA).
Как можно исправить такую ошибку?
Ошибка указывает на неверную запись в исходном файле, из-за которой процесс обновления прерывается. Чтобы это исправить, вы должны либо исправить запись (если знаете, как должна выглядеть правильная запись), либо удалить ее полностью (это то, что я собираюсь описать, так как это самый быстрый способ снова включить возможность обновления вашей системы).
-
Сначала вам нужно открыть файл, содержащий неправильную запись. Имя файла указано в сообщении об ошибке, в вашем примере это
/etc/apt/sources.list.d/some-ppa.list
. Откройте терминал и введитеsudo nano /etc/apt/sources.list.d/some-ppa.list
и нажмите Enter. После ввода пароля вы должны увидеть файл, открытый в текстовом редакторе
nano
. -
Теперь вам нужно найти неверную запись. Она должна быть в строке с номером, указанным в сообщении об ошибке — в вашем случае это будет строка 1.
-
Эта строка должна быть неполной и начинаться с неизвестного типа, на который жалуется процесс обновления (здесь
ain
). Просто удалите всю строку и сохраните/закройте файл с помощью Ctrl+X. -
Вот и все. Теперь вы должны успешно запустить процесс обновления!
Если эта запись единственная в файле, то вы можете просто удалить файл. Для этого просто откройте терминал и выполните следующую команду:
sudo rm /etc/apt/sources.list.d/some-ppa.list
Вы столкнулись с ошибкой №789859 в пакете software-properties.
Быстрое и немедленное решение заключается в том, чтобы открыть файл, упомянутый в сообщении об ошибке (в данном случае /etc/apt/sources.list.d/the-board-team-dev-snapshots-natty.list
), и удалить строку, содержащую ain
. Это можно сделать следующим образом:
- Нажмите AltF2
- Введите:
gksudo gedit /etc/apt/sources.list.d/the-board-team-dev-snapshots-natty.list
- Удалите строку, содержащую
ain
- Сохраните файл
Когда закончите, все должно заработать.
Чтобы избежать этой ошибки в будущем, пожалуйста, посетите страницу ошибки на Launchpad и отметьте, что ошибка касается вас.
Для полного удаления любого ненужного ppa мы можем использовать скрипт ppa-purge .
который удалит ppa и восстановит настройки по умолчанию Ubuntu для любых приложений, которые могли быть установлены с помощью этого ppa.
В вашем случае попробуйте, если
sudo ppa-purge -purge the-board-team/dev-snapshots
за которым следует
sudo apt-get update
поможет вам избавиться от вашей ошибки в synaptic.
.
Ответ или решение
Ошибка, описанная в вашем вопросе, связана с некорректной записью в файле источников APT в Ubuntu. Эта проблема часто возникает после удаления PPA (Personal Package Archive), когда в файле остается не полностью удаленная или искаженная строка, что приводит к невозможности обновления системы с использованием apt-get update
. Разберем теорию, предоставим примеры и предложим практическое руководство по исправлению этой ошибки.
Теория
В Ubuntu и других дистрибутивах на базе Debian система управления пакетами APT использует файлы конфигурации для хранения информации об источниках программного обеспечения. Эти файлы хранятся в /etc/apt/sources.list
и /etc/apt/sources.list.d/
. Они содержат ссылки на репозитории и другие источники, откуда будет загружаться программное обеспечение.
При выполнении команды sudo apt-get update
APT обращается к этим файлам, чтобы собрать сведения о доступных обновлениях. Если в каком-либо из этих файлов содержится ошибка или неисправная строка, об этом будет сообщено в виде ошибки. Чаще всего это случается, если содержимое файла содержит недопустимые символы или синтаксические ошибки.
Пример
Рассмотрим конкретный пример. Предположим, вы видите следующую ошибку:
E: Type 'ain' is not known on line 1 in source list /etc/apt/sources.list.d/some-ppa.list
В данном случае проблема заключается в том, что на первой строке файла /etc/apt/sources.list.d/some-ppa.list
располагается неизвестный элемент ‘ain’, который и вызывает ошибку.
Применение
Чтобы исправить такую ошибку, следуйте следующим шагам:
-
Открытие файла с ошибкой:
Откройте терминал и введите команду для редактирования файла, упомянутого в ошибке. Например:
sudo nano /etc/apt/sources.list.d/some-ppa.list
Если вы предпочитаете графический редактор и используете рабочий стол Ubuntu, можно запустить:
gksudo gedit /etc/apt/sources.list.d/some-ppa.list
-
Поиск и удаление неисправной строки:
Найдите строку с неизвестным типом (в данном случае ‘ain’) и удалите ее. Эта строка может начинаться с некорректно обрезанного имени секции или параметра.
-
Сохранение и закрытие файла:
В редакторе nano используйте сочетание клавиш
Ctrl+X
, затем подтвердите сохранение изменений, нажавY
, и нажмитеEnter
. В gedit просто нажмитеСохранить
. -
Обновление системы:
После исправления файла выполните обновление списка пакетов:
sudo apt-get update
Если ошибок уже нет, значит проблема решена.
Дополнительные меры
Для дальнейшего управления PPA и предотвращения подобных проблем в будущем можно воспользоваться утилитой ppa-purge
. Она позволяет не только удалять PPA, но и возвращать пакеты к стандартным версиям из официальных репозиториев Ubuntu:
sudo ppa-purge some-ppa
После удаления PPA снова выполните команду sudo apt-get update
, чтобы убедиться в отсутствии ошибок.
Кроме того, стоит рассмотреть возможность подписки на отслеживание ошибок в Launchpad, как в случае с Bug #789859. Это позволит вам быть в курсе обновлений и исправлений, которые могут касаться используемых вами PPA или пакетов.
Резюме
Ошибки в файлах источников APT могут возникать по разным причинам, но чаще всего они связаны с ручными изменениями или удалением PPA. Регулярная проверка и учетно-консервативное управление репозиториями значительно снижают вероятность столкнуться с такими проблемами. Если вы не уверены в правильности действий, перед изменениями стоит создать резервные копии соответствующих файлов.