Ошибка при установке workbench mysql [dубликат]

Скажем, у меня есть foo-1.2.3.deb, который зависит от perl и python, однако работающая команда:

dpkg -i ./foo-1.2.3.deb

не будет устанавливать эти зависимости. Поэтому я должен apt-get install perl python вручную.

Как сделать dpkg -i автоматически устанавливать эти зависимости для меня?

263
задан 20 March 2014 в 06:21

16 ответов

После использования dpkg выполнение следующей команды помогло мне установить необходимые зависимости:

sudo apt-get -f install

В общем, ваш терминал должен выглядеть так:

$ sudo dpkg -i package_with_unsatisfied_dependencies.deb dpkg: dependency problems prevent ... [additional messages] $ sudo apt-get -f install [apt messages] Setting up [dependency]... Setting up package_with_unsatisfied_dependencies...

Обратите внимание на строку Setting up package_with_unsatisfied_dependencies. Это исправляет (и завершает) установку package_with_unsatisfied_dependencies.deb.

339
ответ дан 18 July 2018 в 07:32

После использования dpkg выполнение следующей команды помогло мне установить необходимые зависимости:

sudo apt-get -f install

В общем, ваш терминал должен выглядеть так:

$ sudo dpkg -i package_with_unsatisfied_dependencies.deb dpkg: dependency problems prevent ... [additional messages] $ sudo apt-get -f install [apt messages] Setting up [dependency]... Setting up package_with_unsatisfied_dependencies...

Обратите внимание на строку Setting up package_with_unsatisfied_dependencies. Это исправляет (и завершает) установку package_with_unsatisfied_dependencies.deb.

341
ответ дан 24 July 2018 в 18:49

Я просто столкнулся с этой проблемой. Вызов apt-get install -f не будет устанавливать рекомендуемые зависимости, хотя! Единственным обходным решением для этого было бы создание локального репозитория и добавление к /etc/apt/sources.list, т. Е .:

apt-ftparchive packages . > Packages && gzip < Packages > Packages.gz sudo echo "deb file://$PWD /" >> /etc/apt/sources.list sudo apt-get update
1
ответ дан 18 July 2018 в 07:32

Вы можете установить gdebi-core, это версия командной строки установщика пакета GDebi с 10.04 и ранее. В новых версиях Ubuntu Центр программного обеспечения используется для установки debs, который не имеет эквивалента командной строки.

Чтобы установить пакет deb с помощью gdebi, просто запустите:

sudo gdebi my_package_1.0.deb
107
ответ дан 18 July 2018 в 07:32

running

sudo apt-get install -f

после установки пакета с dpkg может разрешить разбитые зависимости (по крайней мере, man apt-get сказать так ...). Ill update, когда я его проверю.

18
ответ дан 18 July 2018 в 07:32

В качестве альтернативы gdebi-gtk вы можете использовать Ubuntu Software Center.

Двойной щелчок по пакету и кнопка установки должна быть доступна.

3
ответ дан 18 July 2018 в 07:32

dpkg не поддерживает зависимость. Существует способ обойти это, но для этого потребуется создать локальную базу данных (и, следовательно, вы уже знаете зависимости), и считается устаревшей (...).

Должна ли она быть командой линия? (server install?) Если это так, посмотрите на apt-get -f, но будьте осторожны: решение зависимостей после установки может привести к повреждению системы.

gdebi (gui frontend) раньше имел возможность сделайте это, но замените USC.

Как вы загрузили .deb. Некоторые из новых возможностей 11.04 - это обработка .deb, загружаемая с веб-сайта: она открывается в USC, поэтому зависимости будут решены установщиком.

EDIT, основанный на комментарии andrew: sudo gdebi foo-1.2.3.deb сделал бы трюк !!

8
ответ дан 18 July 2018 в 07:32

Вы можете создать файл dpkg-dep-inst со следующим содержимым.

#!/bin/bash DEBIAN_FILE1=$1 dpkg -i $DEBIAN_FILE1 || apt-get --fix-broken install

Предполагаю, что вы создали файл в своей домашней папке. Сделайте это с помощью chmod +x dpkg-dep-inst и переместите его на /usr/local/bin с помощью sudo cp dpkg-dep-inst /usr/local/bin.

Теперь вы можете установить пакет debian с зависимостями автоматически с помощью:

sudo dpkg-dep-inst foo-1.2.3.deb
3
ответ дан 18 July 2018 в 07:32

, начиная с apt 1.1 (доступно в Xenial (16.04), растянуть) apt install также позволяет локальные файлы:

sudo apt install ./foo-1.2.3.deb

. Так проще и чище.

См. релиз объявления

24
ответ дан 18 July 2018 в 07:32

Я просто столкнулся с этой проблемой. Вызов apt-get install -f не будет устанавливать рекомендуемые зависимости, хотя! Единственным обходным решением для этого было бы создание локального репозитория и добавление к /etc/apt/sources.list, т. Е .:

apt-ftparchive packages . > Packages && gzip < Packages > Packages.gz sudo echo "deb file://$PWD /" >> /etc/apt/sources.list sudo apt-get update
1
ответ дан 24 July 2018 в 18:49

Вы можете установить gdebi-core, это версия командной строки установщика пакета GDebi с 10.04 и ранее. В новых версиях Ubuntu Центр программного обеспечения используется для установки debs, который не имеет эквивалента командной строки.

Чтобы установить пакет deb с помощью gdebi, просто запустите:

sudo gdebi my_package_1.0.deb
107
ответ дан 24 July 2018 в 18:49

running

sudo apt-get install -f

после установки пакета с dpkg может разрешить разбитые зависимости (по крайней мере, man apt-get сказать так ...). Ill update, когда я его проверю.

18
ответ дан 24 July 2018 в 18:49
  • 1
    Должен ли я снова запустить sudo dpkg -i mypackage.deb? – Muhammad Gelbana 22 November 2013 в 19:42
  • 2
    apt-get -f install работает, но apt-get install -f не совпадает. – 200_success 13 May 2015 в 03:20
  • 3
    gdebi-gtk не покажет требуемые отпечатки (версия у меня здесь, по крайней мере, и это похоже на ошибку), но в командной строке будет! Если у нас есть другая машина с пакетами, мы можем использовать dpkg-repack на ней на основе такого списка deps :) – Aquarius Power 14 July 2018 в 00:37

В качестве альтернативы gdebi-gtk вы можете использовать Ubuntu Software Center.

Двойной щелчок по пакету и кнопка установки должна быть доступна.

3
ответ дан 24 July 2018 в 18:49

dpkg не поддерживает зависимость. Существует способ обойти это, но для этого потребуется создать локальную базу данных (и, следовательно, вы уже знаете зависимости), и считается устаревшей (...).

Должна ли она быть командой линия? (server install?) Если это так, посмотрите на apt-get -f, но будьте осторожны: решение зависимостей после установки может привести к повреждению системы.

gdebi (gui frontend) раньше имел возможность сделайте это, но замените USC.

Как вы загрузили .deb. Некоторые из новых возможностей 11.04 - это обработка .deb, загружаемая с веб-сайта: она открывается в USC, поэтому зависимости будут решены установщиком.

EDIT, основанный на комментарии andrew: sudo gdebi foo-1.2.3.deb сделал бы трюк !!

8
ответ дан 24 July 2018 в 18:49
  • 1
    gdebi все еще можно использовать для этого. Центр программного обеспечения теперь просто приложение по умолчанию. Кроме того, как отмечает Чэнь Сяо-Лонг, gdebi также можно использовать в командной строке. – andrewsomething 4 May 2011 в 21:26
  • 2
    круто! то вопрос имеет ответ, потому что gdebi можно использовать и в командной строке. – Rinzwind 4 May 2011 в 21:50

Вы можете создать файл dpkg-dep-inst со следующим содержимым.

#!/bin/bash DEBIAN_FILE1=$1 dpkg -i $DEBIAN_FILE1 || apt-get --fix-broken install

Предполагаю, что вы создали файл в своей домашней папке. Сделайте это с помощью chmod +x dpkg-dep-inst и переместите его на /usr/local/bin с помощью sudo cp dpkg-dep-inst /usr/local/bin.

Теперь вы можете установить пакет debian с зависимостями автоматически с помощью:

sudo dpkg-dep-inst foo-1.2.3.deb
3
ответ дан 24 July 2018 в 18:49

, начиная с apt 1.1 (доступно в Xenial (16.04), растянуть) apt install также позволяет локальные файлы:

sudo apt install ./foo-1.2.3.deb

. Так проще и чище.

См. релиз объявления

25
ответ дан 24 July 2018 в 18:49
  • 1
    Пришло время это доступно – Mike 4 August 2016 в 21:13
  • 2
    Это решение не сработало. Все, что произошло, это список ошибок. – Billy S 1 October 2016 в 17:29
  • 3
    @BillyS жаль слышать, что это не сработало для вас, но без версии дистрибутива, которую вы используете, и какие ошибки вы получили, это вообще не подлежит действию. – textshell 3 October 2016 в 13:27
  • 4
    Команда не работала для меня, но apt ./install foo-1.2.3.deb работал. – Cenk Alti 4 August 2017 в 11:19
  • 5
    Исправлена ​​команда, комментарии выше относились к предыдущей версии ответа, которая пропустила необходимый ./ или путь – Zanna 2 September 2017 в 13:36

Другие вопросы по тегам:

Похожие вопросы: