Я использую тестовые образы KDE Neon, которые, похоже, основаны на Ubuntu 16.04 Xenial, так как lsb_release -a
определенно возвращает это. Когда я пытаюсь использовать add-apt-repository
команду, она просит меня установить, software-properties-common
что я и делаю.
После установки, каждый раз, когда я пытаюсь добавить новый репозиторий, репозиторий добавляется, но вместо использования xenial
в качестве ссылки для имени дистрибутива, он устанавливает yakkety
. Из-за этого, конечно, apt-get
не удается найти ни одного пакета. Исправление заключается в том, чтобы вручную изменить yakkety
ссылку на xenial
.
lsb_relase -a
возвращается
Distributor ID: neon
Description: KDE neon Developer Edition
Release: 16.04
Codename: xenial
Как мне это исправить? Я не понимаю, откуда он берет неправильную ссылку на дистрибутив. Надеюсь, я смогу просто изменить файл ASCII, чтобы изменить настройку.
Для справки, ISO, который я сейчас тестирую, этоздесь
решение1
Я исправил это!! Все, что мне нужно было сделать, это отредактировать/etc/lsb-релизот:
Distributor ID: neon
Description: KDE neon Developer Edition
Release: 16.04
Codename: xenial
к
Distributor ID: Ubuntu
Description: Ubuntu 16.04 LTS
Release: 16.04
Codename: xenial
Вуаля! Проблема исчезла. Кто бы мог подумать? При устранении этой неполадки я уделил особое внимание параметру Codename, возвращаемому"lsb_relase -a"в котором четко указано: "ксениал" поэтому я не мог понять, почему вместо этого постоянно упоминается "yakkety".
Похоже, что "aptsources.distro.get_distro()"метод, используемый во всемдобавить-apt-репозиторийСкрипт не обязательно считывает кодовое имя дистрибутива из параметра Codename в/etc/lsb-релизно каким-то образом это получается, если читать "Идентификатор распространения". Я думаю, что ключ здесь в том,«Идентификатор распространения»говоря "неон". Потому что если вы читаете "/usr/share/distro-info/ubuntu.csv"Вы увидите это:
version,codename,series,created,release,eol,eol-server
4.10,Warty Warthog,warty,2004-03-05,2004-10-20,2006-04-30
5.04,Hoary Hedgehog,hoary,2004-10-20,2005-04-08,2006-10-31
5.10,Breezy Badger,breezy,2005-04-08,2005-10-12,2007-04-13
6.06 LTS,Dapper Drake,dapper,2005-10-12,2006-06-01,2009-07-14,2011-06-01
6.10,Edgy Eft,edgy,2006-06-01,2006-10-26,2008-04-25
7.04,Feisty Fawn,feisty,2006-10-26,2007-04-19,2008-10-19
7.10,Gutsy Gibbon,gutsy,2007-04-19,2007-10-18,2009-04-18
8.04 LTS,Hardy Heron,hardy,2007-10-18,2008-04-24,2011-05-12,2013-05-09
8.10,Intrepid Ibex,intrepid,2008-04-24,2008-10-30,2010-04-30
9.04,Jaunty Jackalope,jaunty,2008-10-30,2009-04-23,2010-10-23
9.10,Karmic Koala,karmic,2009-04-23,2009-10-29,2011-04-29
10.04 LTS,Lucid Lynx,lucid,2009-10-29,2010-04-29,2013-05-09,2015-04-29
10.10,Maverick Meerkat,maverick,2010-04-29,2010-10-10,2012-04-10
11.04,Natty Narwhal,natty,2010-10-10,2011-04-28,2012-10-28
11.10,Oneiric Ocelot,oneiric,2011-04-28,2011-10-13,2013-05-09
12.04 LTS,Precise Pangolin,precise,2011-10-13,2012-04-26,2017-04-26
12.10,Quantal Quetzal,quantal,2012-04-26,2012-10-18,2014-05-16
13.04,Raring Ringtail,raring,2012-10-18,2013-04-25,2014-01-27
13.10,Saucy Salamander,saucy,2013-04-25,2013-10-17,2014-07-17
14.04 LTS,Trusty Tahr,trusty,2013-10-17,2014-04-17,2019-04-17
14.10,Utopic Unicorn,utopic,2014-04-17,2014-10-23,2015-07-23
15.04,Vivid Vervet,vivid,2014-10-23,2015-04-23,2016-01-23
15.10,Wily Werewolf,wily,2015-04-23,2015-10-22,2016-07-22
16.04 LTS,Xenial Xerus,xenial,2015-10-22,2016-04-21,2021-04-21
16.10,Yakkety Yak,yakkety,2016-04-21,2016-10-20,2017-07-20
ТакНаверноеесли aptsources.distro.get_distro() не удается найти "известный и официальный" идентификатор дистрибутива, то он просто считывает этот файл "в качестве последнего средства по умолчанию и если все остальное не удается", чтобы получить последнее "известное" имя, которое в данном случае "yakkety". В любом случае, это может не обязательно работать таким образом, но то, что я изменил, определенно решает проблему, с которой я столкнулся.