Рейтинг:4

Как установить libc6-i386 в Ubuntu 20.04?

флаг tr

Дублировать?

в связанный вопрос я разместил свой источники.список и это не считалось чем-то из ряда вон выходящим. Итак, как мой вопрос может быть дубликатом исправления источники.список? Как это даже отдаленно полезно?

Оригинальный вопрос:

Установил стим с их сайта. Steam хочет установить кучу пакетов и останавливается с этой ошибкой:

Steam необходимо установить эти дополнительные пакеты:
libc6:amd64 libc6:i386 libegl1:amd64 libegl1:i386 libgbm1:amd64 libgbm1:i386 libgl1-mesa-dri:amd64 libgl1-mesa-dri:i386 libgl1:amd64 libgl1:i386 steam-libs-amd64:amd64 steam-libs6 :i386

Нажмите клавишу возврата, чтобы продолжить установку: 
......
Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
libegl1 уже является самой новой версией (1.3.2-1~ubuntu0.20.04.1).
libegl1 устанавливается вручную.
libgbm1 уже является самой новой версией (21.0.3-0ubuntu0.3~20.04.5).
libgbm1 настроен на установку вручную.
libgl1 уже является самой новой версией (1.3.2-1~ubuntu0.20.04.1).
libgl1 настроен на установку вручную.
libgl1-mesa-dri уже является самой новой версией (21.0.3-0ubuntu0.3~20.04.5).
libgl1-mesa-dri устанавливается вручную.
libc6 уже самая новая версия (2.31-0ubuntu9.3).
libc6 устанавливается вручную.
Не удалось установить некоторые пакеты. Это может означать, что у вас есть
запрошена невозможная ситуация или если вы используете нестабильную
дистрибутив, что некоторые необходимые пакеты еще не созданы
или был перемещен из входящих.
Следующая информация может помочь разрешить ситуацию:

Следующие пакеты имеют неудовлетворенные зависимости:
 libc6 : Перерывы: libc6:i386 (!= 2.31-0ubuntu9.3), но необходимо установить 2.31-0ubuntu9.2
 libc6:i386 : Разрывы: libc6 (!= 2.31-0ubuntu9.2), но необходимо установить 2.31-0ubuntu9.3
E: Невозможно исправить проблемы, у вас есть сломанные пакеты.

Установка libc6-386 вручную тоже не сработала:

$ sudo apt установить libc6-i386
Чтение списков пакетов... Готово
Построение дерева зависимостей       
Чтение информации о состоянии... Готово
Не удалось установить некоторые пакеты. Это может означать, что у вас есть
запрошена невозможная ситуация или если вы используете нестабильную
дистрибутив, что некоторые необходимые пакеты еще не созданы
или был перемещен из входящих.
Следующая информация может помочь разрешить ситуацию:

Следующие пакеты имеют неудовлетворенные зависимости:
 libc6-i386 : зависит: libc6 (= 2.31-0ubuntu9.2), но необходимо установить 2.31-0ubuntu9.3
E: Невозможно исправить проблемы, у вас есть сломанные пакеты.

Обновлять:

$ подходящая политика libc6
библиотека6:
  Установлено: 2.31-0ubuntu9.3
  Кандидат: 2.31-0ubuntu9.3
  Таблица версий:
 *** 2.31-0ubuntu9.3 100
        100 /var/lib/dpkg/status
     2.31-0ubuntu9.2 500
        500 http://mx.archive.ubuntu.com/ubuntu focus-updates/main Пакеты amd64
     2.31-0убунту9 500
        500 http://mx.archive.ubuntu.com/ubuntu focus/main amd64 Пакеты
$ подходящая политика libc6-i386
libc6-i386:
  Установлено: (нет)
  Кандидат: 2.31-0ubuntu9.2
  Таблица версий:
     2.31-0ubuntu9.2 500
        500 http://mx.archive.ubuntu.com/ubuntu focus-updates/main Пакеты amd64
     2.31-0убунту9 500
        500 http://mx.archive.ubuntu.com/ubuntu focus/main amd64 Пакеты
Organic Marble avatar
флаг us
Мне интересно, откуда взялась версия 2.31-0ubuntu9.3 libc6-i386. Я получил версию ... 9.2 при тестовой установке. Не могли бы вы добавить вывод «apt policy libc6» и «apt policy libc6:i386» к вашему вопросу, пожалуйста? Я подозреваю, что где-то замешан ppa.
флаг tr
Я добавил вывод к моему вопросу. Должен признаться, что понятия не имею, что это за дело с 2.31-0ubuntu9.*.
Organic Marble avatar
флаг us
Похоже, версия 9.3 libc6 была установлена ​​вручную. Он не приходит ни из какого репозитория. Возможно, это осталось от предыдущей попытки установки стима. Предлагаю удалить его и установить версию 9.2 из фокальных обновлений. Как только вы это сделаете, должна быть установлена ​​версия для i386.
флаг tr
Я уверен, что ничего не устанавливал (кроме Steam), кроме репозиториев Ubuntu.
Organic Marble avatar
флаг us
Если вы посмотрите на вывод apt policy libc6, вы увидите, что установленная версия не происходит ни из одного репозитория, используемого в настоящее время в вашей системе. (строка, начинающаяся со 100 — обратите внимание, как все остальные версии, перечисленные после нее, дают репо). Это могло произойти из ppa, который вы удалили.
флаг tr
Я тоже не возился с PPA.
Organic Marble avatar
флаг us
Я могу только сообщить о том, что показывает вывод вашего менеджера пакетов. Вы можете продолжать спорить со мной или попытаться исправить свою систему, удалив этот плохой пакет.
флаг tr
`apt remove libc6` хочет удалить ОГРОМНЫЙ список пакетов, предупреждая меня, что основные пакеты будут удалены!
Organic Marble avatar
флаг us
Вы как-то испортили свою систему в прошлом. Вместо того, чтобы удалять пакет, вы можете понизить его с помощью synaptic или aptitude? Не знаю, сработает ли это, честно говоря.
флаг tr
Я не знаю, как это сделать.
Organic Marble avatar
флаг us
Если у вас установлен synaptic, вы можете найти пакет, затем нажать Force Version в меню Package... и выбрать версию 9.2 в поле. Но если от него зависит множество других пакетов в вашей системе, это может быть очень болезненно. https://i.imgur.com/Coc8urO.png
флаг tr
Это действие также хочет удалить довольно много пакетов, таких как build-essential, g++, libboost- и несколько пакетов *-dev.
Organic Marble avatar
флаг us
Это весьма прискорбно, и у меня нет идей.
Someone avatar
флаг my
Вы можете попробовать использовать `aptitude`, запустив `sudo apt install aptitude`, установит пакет, а затем вы можете попробовать установить пакет снова, выполнив `sudo aptitude -f install libc6-i386`
N0rbert avatar
флаг zw
В вашей системе, вероятно, не хватает кармана «фокальной безопасности». Также у вас не должно быть 2.31-0ubuntu9.3 libc, у вас должно быть 2.31-0ubuntu9.2. Вы должны попробовать `sudo aptitude install libc6=2.31-0ubuntu9.2`, чтобы решить текущую проблему.
N0rbert avatar
флаг zw
Пожалуйста, запустите `sudo aptitude install libc6=2.31-0ubuntu9.2`
Рейтинг:2
флаг tr

Комментарий N0rbert привел меня на правильный путь, но он все еще хотел удалить целый список пакетов:

$ sudo aptitude установить libc6 = 2.31-0ubuntu9.2
Следующие пакеты будут ПОНИЖЕНЫ:
  libc6 
0 обновленных пакетов, 0 новых установленных, 1 пониженный, 0 для удаления и 14 не обновленных.
Необходимо получить 2–715 КБ архивов. После распаковки будет использоваться 0 B.
Следующие пакеты имеют неудовлетворенные зависимости:
 libc6-dbg : зависит: libc6 (= 2.31-0ubuntu9.3), но необходимо установить 2.31-0ubuntu9.2
 libc6-dev : зависит: libc6 (= 2.31-0ubuntu9.3), но необходимо установить 2.31-0ubuntu9.2
Следующие действия устранят эти зависимости:

      Удалите следующие пакеты:                                                       
1) build-essential [12.8ubuntu1.1 (фокусные обновления, сейчас)]                               
2) g++ [4:9.3.0-1ubuntu2 (фокальный, сейчас)]                                                
3) g++-9 [9.3.0-17ubuntu1~20.04 (фокальная безопасность, фокальные обновления, сейчас)]                 
4) libboost-atomic1.71-dev [1.71.0-6ubuntu6 (фокусный, сейчас)]                             
5) libboost-chrono1.71-dev [1.71.0-6ubuntu6 (фокальный, сейчас)]                             
6) libboost-date-time1.71-dev [1.71.0-6ubuntu6 (фокальный, сейчас)]                          
7) libboost-filesystem-dev [1.71.0.0ubuntu2 (фокусный, сейчас)]                             
8) libboost-filesystem1.71-dev [1.71.0-6ubuntu6 (фокальный, сейчас)]                         
9) libboost-regex-dev [1.71.0.0ubuntu2 (фокальный, сейчас)]                                  
10) libboost-regex1.71-dev [1.71.0-6ubuntu6 (фокальный, сейчас)]                              
11) libboost-serialization1.71-dev [1.71.0-6ubuntu6 (фокальный, сейчас)]                      
12) libboost-system1.71-dev [1.71.0-6ubuntu6 (фокальный, сейчас)]                             
13) libboost-thread-dev [1.71.0.0ubuntu2 (фокальный, сейчас)]                                 
14) libboost-thread1.71-dev [1.71.0-6ubuntu6 (фокальный, сейчас)]                             
15) libboost1.71-dev [1.71.0-6ubuntu6 (фокальный, сейчас)]                                    
16) libc6-dbg [2.31-0ubuntu9.3 (сейчас)]                                                  
17) libc6-dev [2.31-0ubuntu9.3 (сейчас)]                                                  
18) libexpat1-dev [2.2.9-1build1 (фокальный, сейчас)]                                         
19) libfreetype-dev [2.10.1-2ubuntu0.1 (фокальная безопасность, фокальные обновления, сейчас)]           
20) libfreetype6-dev [2.10.1-2ubuntu0.1 (фокальная безопасность, фокальные обновления, сейчас)]          
21) libicu-dev [66.1-2ubuntu2.1 (фокальная безопасность, фокальные обновления, сейчас)]                  
22) libjpeg-dev [8c-2ubuntu8 (фокальный, сейчас)]                                             
23) libjpeg-turbo8-dev [2.0.3-0ubuntu1.20.04.1 (фокальная безопасность, фокальные обновления, сейчас)]   
24) libjpeg8-dev [8c-2ubuntu8 (фокальный, сейчас)]                                            
25) libncurses-dev [6.2-0ubuntu2 (фокальный, сейчас)]                                         
26) libpng-dev [1.6.37-2 (фокусный, сейчас)]                                                 
27) libpython3-dev [3.8.2-0ubuntu2 (фокальный, сейчас)]                                       
28) libpython3.8-dev [3.8.10-0ubuntu1~20.04.1 (фокальная безопасность, фокальные обновления, сейчас)]    
29) libstdc++-9-dev [9.3.0-17ubuntu1~20.04 (фокальная безопасность, фокальные обновления, сейчас)]       
30) libtiff-dev [4.1.0+git191117-2ubuntu0.20.04.2 (фокальная безопасность, фокальные обновления, сейчас)]
31) python3-dev [3.8.2-0ubuntu2 (фокальный, сейчас)]                                          
32) python3.8-dev [3.8.10-0ubuntu1~20.04.1 (фокальная безопасность, фокальные обновления, сейчас)]       
33) zlib1g-dev [1:1.2.11.dfsg-2ubuntu1.2 (фокусные обновления, сейчас)]                         

      Оставьте следующие зависимости неразрешенными:                                         
34) dpkg-dev рекомендует build-essential                                                
35) gcc рекомендует libc6-dev | libc-dev                                                
36) cython3 рекомендует python3-dev                                                     
37) gcc-9 рекомендует libc6-dev (>= 2.13-0ubuntu6)                                      
38) gdb рекомендует libc-dbg                                                            
39) libgcc-9-dev рекомендует libc6-dev (>= 2.13-0ubuntu6)                               
40) libpython3.8-dev рекомендует libc6-dev | libc-dev                                   
41) python3.8-dev рекомендует libc6-dev | libc-dev                                      
42) python3-pip рекомендует build-essential                                             
43) python3-pip рекомендует python3-dev (>= 3.2)                                        

Таким образом, я заставил 2.31-0убунту9.2 за libc6-dev и libc6-dbg также:

$ sudo aptitude установить libc6=2.31-0ubuntu9.2 libc6-dev=2.31-0ubuntu9.2 libc6-dbg=2.31-0ubuntu9.2

Эта команда прошла гладко. Стим теперь работает.

Однако остается один вопрос: как я все испортил? Как я оказался с libc6=2.31-0ubuntu9.3 в первую очередь? Должен ли я сделать новый вопрос для этого?

Organic Marble avatar
флаг us
Я рад, что вы разобрались. В какой-то момент в прошлом вы, должно быть, установили что-то, что, возможно, без вашего ведома, добавило ppa и вытащило кучу пакетов, более новых, чем те, что есть в репозиториях. Впоследствии ppa был удален. Ответ на такой вопрос потребует изучения истории вашей системы, того, что вы устанавливали и удаляли в прошлом; Я не уверен, что кто-то может ответить на это для вас.

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

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.