Pakiet php7.2-mbstring nie spełnia zależności w Ubuntu 18.04

8

Spróbuj zainstalować php-mbstring dla instalacji mediawiki.

już dodane po repozytorium wszechświata pierwszej próby: brak pakietu php7.2-mbstring w Ubuntu 18.04

Ale sprawia mi trudność Oto szczegóły:

usertilo@myserver4:~$ sudo apt-get install php-mbstring
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 php-mbstring : Depends: php7.2-mbstring but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

usertilo@myserver4:~$ sudo apt-get install php7.2-mbstring
Reading package lists... Done
Building dependency tree
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 php7.2-mbstring : Depends: php7.2-common (= 7.2.3-1ubuntu1) but 7.2.7-0ubuntu0.18.04.2 is to be installed
E: Unable to correct problems, you have held broken packages.

usertilo@myserver4:~$ uname -a
Linux myserver4 4.15.0-29-generic #31-Ubuntu SMP Tue Jul 17 15:39:52 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

usertilo@myserver4:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.1 LTS
Release:        18.04
Codename:       bionic

usertilo@myserver4:~$ sudo apt-get install -f
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

usertilo@server4:~$ sudo apt-get install php7.2-common
Reading package lists... Done
Building dependency tree
Reading state information... Done
php7.2-common is already the newest version (7.2.7-0ubuntu0.18.04.2).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
  • aktualizacja dodaj informacje wymagane z komentarzy
usertilo@myserver4:~$ sudo apt-cache policy php7.2-common php7.2-mbstring
php7.2-common:
  Installed: 7.2.7-0ubuntu0.18.04.2
  Candidate: 7.2.7-0ubuntu0.18.04.2
  Version table:
 *** 7.2.7-0ubuntu0.18.04.2 500
        500 http://archive.ubuntu.com/ubuntu bionic-security/main amd64 Packages
        500 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages
        100 /var/lib/dpkg/status
     7.2.3-1ubuntu1 500
        500 http://archive.ubuntu.com/ubuntu bionic/main amd64 Packages
php7.2-mbstring:
  Installed: (none)
  Candidate: 7.2.3-1ubuntu1
  Version table:
     7.2.3-1ubuntu1 500
        500 http://archive.ubuntu.com/ubuntu bionic/universe amd64 Packages

usertilo@myserver4:~$ cat /etc/apt/sources.list
deb http://archive.ubuntu.com/ubuntu bionic main universe
deb http://archive.ubuntu.com/ubuntu bionic-security main
# deb-src http://archive.ubuntu.com/ubuntu bionic universe
deb http://archive.ubuntu.com/ubuntu bionic-updates main

usertilo@myserver4:~$ cat /etc/apt/sources.list.d/*
cat: '/etc/apt/sources.list.d/*': No such file or directory
TiloBunt
źródło
1
Pokaż nam następujące wyniki. Chciałbym sprawdzić, czy włączenie lub wyłączenie różnych repozytoriów może być przyczyną twoich problemów, a to pomoże rzucić nieco światła: apt-cache policy php7.2-common php7.2-mbstring (FYI, Wszechświat jest domyślnie włączony Ubuntu 18.04)
Thomas Ward
@TiloBunt W jakich źródłach masz /etc/apt/sources.list? I to samo pytanie dla źródeł w /etc/apt/sources.list.d/*. Są to źródła, z których otrzymujesz wszystkie swoje pakiety. Upewnij się więc, że wszystko wygląda dobrze. Pobierz repozytorium pakietu, który chcesz zainstalować i sprawdź, czy masz jego źródło na wymienionych listach.
Sokrates
@ThomasWard and Socrates, dodał informacje do mojego pytania. daj mi znać, czy powinienem sprawdzić coś jeszcze. To zupełnie nowa instalacja
TiloBunt

Odpowiedzi:

16

Brakuje niektórych niezbędnych kanałów z sources.list. Zrób sudo gedit /etc/apt/sources.listi spraw, aby wyglądało to tak:

deb http://archive.ubuntu.com/ubuntu bionic main multiverse restricted universe
deb http://archive.ubuntu.com/ubuntu bionic-security main multiverse restricted universe
deb http://archive.ubuntu.com/ubuntu bionic-updates main multiverse restricted universe

Zapisz i wyjdź. Następnie zaktualizuj swoje repozytorium:

sudo apt update

Następnie zainstaluj php-mbstring:

sudo apt install php7.2-mbstring
Olimjon
źródło
Te polecenia mi nie działały. Błąd jest taki sam. Musiałem pobrać http://security.ubuntu.com/ubuntu/pool/universe/p/php7.2/php7.2-mbstring_7.2.15-0ubuntu0.18.04.1_amd64.debi zainstalować za pomocą dpkg -ikomendy
Redbob
Dziękuję za tę poprawkę, zajęło mi tylko kilka godzin, aby dowiedzieć się, że to było rozwiązanie.
Jeff Lange
0

Informacje o paczce, o których aptwie, są nieaktualne.

Za pomocą tego rmadisonnarzędzia możemy zobaczyć wszystkie wersje php7.2-mbstringrepozytoriów:

 php7.2-mbstring | 7.2.3-1ubuntu1         | bionic/universe          | amd64, arm64, armhf, i386, ppc64el, s390x
 php7.2-mbstring | 7.2.7-0ubuntu0.18.04.2 | bionic-security/universe | amd64, arm64, armhf, i386, ppc64el, s390x
 php7.2-mbstring | 7.2.7-0ubuntu0.18.04.2 | bionic-updates/universe  | amd64, arm64, armhf, i386, ppc64el, s390x

chociaż tutaj pokazuję tylko przedmioty Bionic.

Ponieważ twój system nie wie o php7.2-mbstringnowościach w repozytoriach zabezpieczeń lub aktualizacji, otrzymujesz niezgodność wersji.

Uruchomić to:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install php7.2-mbstring

Powinno to pomóc w przywróceniu twoich wersji tam, gdzie powinny być. (Uwaga: możesz użyć dist-upgradezamiast tego upgrade, aby pakiety takie jak zaktualizowane pakiety jądra również zostały zainstalowane i zaktualizowane)

Thomas Ward
źródło
próbowałem tego, ale ten sam wynik.
TiloBunt,
1
Wygląda na to, że Twój system nie jest odpowiednio skonfigurowany. Pokaż nam ponownie dane apt-cache policywyjściowe tego samego polecenia, o które prosiłem w komentarzach, jako edycję Twojego pytania, ponieważ wygląda na to, że Twoje repozytoria nie są aktualizowane
Thomas Ward
doceniam Twoją pomoc. Dodanie restrictednaprawiłem to na razie i jestem dobry. System był nową instalacją na maszynie wirtualnej, więc nie jestem pewien, jak mogę zepsuć konfigurację tak szybko, ale mogło być. Pozdrawiam
TiloBunt,