jak uniknąć tego błędu instalującego PHPMyAdmin na Ubuntu 16.04?

3

Niedawno zaktualizowałem swój serwer z Ubuntu 14.04 do Ubuntu 16.04, ale wersja phpmyadmin to wciąż 4.5, podczas gdy chcę zainstalować 4.6 (w celu obsługi nowego typu JSON).

Najczęstsze instrukcje, które znajduję w Internecie, to dodawanie repozytorium nijel/phpmyadminza pomocą apt-add-repository, ale to daje mi dziwny błąd.

root@myserver:~# add-apt-repository ppa:nijel/phpmyadmin
 Latest phpMyAdmin packages - https://www.phpmyadmin.net/. Based on packages available in Debian.

There are some notable changes:

* it currently requires updated PHP packages, you can get packages from https://launchpad.net/~ondrej/+archive/ubuntu/php/
* it does include embedded copies of PHP libraries

If you like phpMyAdmin, you can support it's further development at https://www.phpmyadmin.net/donate/ or https://www.phpmyadmin.net/sponsors/, thanks!
 More info: https://launchpad.net/~nijel/+archive/ubuntu/phpmyadmin
Press [ENTER] to continue or ctrl-c to cancel adding it

gpg: keyring `/tmp/tmp9zj2r1n2/secring.gpg' created
gpg: keyring `/tmp/tmp9zj2r1n2/pubring.gpg' created
gpg: requesting key 06ED541C from hkp server keyserver.ubuntu.com
gpg: /tmp/tmp9zj2r1n2/trustdb.gpg: trustdb created
gpg: key 06ED541C: public key "Launchpad PPA for Michal \xc4\x8ciha\xc5\x99" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)
Exception in thread Thread-1:
Traceback (most recent call last):
  File "/usr/lib/python3.5/threading.py", line 914, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.5/threading.py", line 862, in run
    self._target(*self._args, **self._kwargs)
  File "/usr/lib/python3/dist-packages/softwareproperties/SoftwareProperties.py", line 688, in addkey_func
    func(**kwargs)
  File "/usr/lib/python3/dist-packages/softwareproperties/ppa.py", line 401, in add_key
    return apsk.add_ppa_signing_key()
  File "/usr/lib/python3/dist-packages/softwareproperties/ppa.py", line 271, in add_ppa_signing_key
    tmp_export_keyring, signing_key_fingerprint, tmp_keyring_dir):
  File "/usr/lib/python3/dist-packages/softwareproperties/ppa.py", line 220, in _verify_fingerprint
    got_fingerprints = self._get_fingerprints(keyring, keyring_dir)
  File "/usr/lib/python3/dist-packages/softwareproperties/ppa.py", line 212, in _get_fingerprints
    output = subprocess.check_output(cmd, universal_newlines=True)
  File "/usr/lib/python3.5/subprocess.py", line 626, in check_output
    **kwargs).stdout
  File "/usr/lib/python3.5/subprocess.py", line 695, in run
    stdout, stderr = process.communicate(input, timeout=timeout)
  File "/usr/lib/python3.5/subprocess.py", line 1059, in communicate
    stdout = self.stdout.read()
  File "/usr/lib/python3.5/encodings/ascii.py", line 26, in decode
    return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc4 in position 96: ordinal not in range(128)

wygląda to na błąd w oprogramowaniu ppa, ale nie wiem, jak to rozwiązać.

użytkownik1111929
źródło

Odpowiedzi:

2

Znalazłem rozwiązanie. Najwyraźniej jest to problem z lokalizacją systemu. Pobiegłem

sudo locale-gen en_US.UTF-8
export LANG=en_US.UTF-8

i ppa może być używane bez problemu.

użytkownik1111929
źródło
Ach tak, powinienem był
zdać
1

Spróbuj ponownie? Można to naprawić, ponieważ otrzymuję to:

$ sudo add-apt-repository ppa:nijel/phpmyadmin
[sudo] password for rinzwind: 
 Latest phpMyAdmin packages - https://www.phpmyadmin.net/. Based on packages available in Debian.

There are some notable changes:

* it currently requires updated PHP packages, you can get packages from https://launchpad.net/~ondrej/+archive/ubuntu/php/
* it does include embedded copies of PHP libraries

If you like phpMyAdmin, you can support it's further development at https://www.phpmyadmin.net/donate/ or https://www.phpmyadmin.net/sponsors/, thanks!
 More info: https://launchpad.net/~nijel/+archive/ubuntu/phpmyadmin
Press [ENTER] to continue or ctrl-c to cancel adding it

gpg: keybox '/tmp/tmpzsijcqvx/pubring.gpg' created
gpg: /tmp/tmpzsijcqvx/trustdb.gpg: trustdb created
gpg: key 80E7349A06ED541C: public key "Launchpad PPA for Michal Čihař" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1
OK

Widzisz imię? Dostaję Čihař Gdzie masz \ xc4 \ x8ciha \ xc5 \ x99. Jest to więc problem kodowania / dekodowania znaku spoza ASCII.

Jeśli to nie działa, zgłoś to na stronie startera: https://launchpad.net/~nijel/+archive/ubuntu/phpmyadmin

Rinzwind
źródło
Nie, wciąż tam jestem. Jakiej wersji repozytorium add-apt używasz? Wydaje się, że jest to błąd w module obsługi, a nie w jego kodzie. Jeśli korzystasz z nowszej wersji (np. W Ubuntu 16.10), może ona być już naprawiona. W każdym razie dam mu znać.
user1111929
Trochę googlowania po twoim wkładzie pomogło mi rozwiązać problem, zobacz inny post. Dzięki!
user1111929
1

W odpowiedzi na twoje pytanie dodałem PPA i uruchomiłem go, aby zobaczyć, co się stanie. Podczas jego uruchamiania otrzymałem wiele komunikatów o błędach. Ale potem pojawiła się sama aktualizacja oprogramowania Ubuntu i uruchomiłem ją. To zaktualizowane phpMyAdmindo4.6.5.2deb1+deb.cihar.com~xenial.3

Spowodowało to jednak następujące ostrzeżenie: „ Tajne hasło w konfiguracji (blowfish_secret) jest za krótkie ”.

Aby rozwiązać ten problem, musisz zmodyfikować plik: /var/lib/phpmyadmin/blowfish_secret.inc.php.

 <?php
// $cfg['blowfish_secret'] = 'U0v9kMkdKICvsc6NYgfqryAu';
// modified 1/7/2017
// http://serverfault.com/questions/615550/phpmyadmin-error-the-configuration-file-now-needs-a-secret-passphrase
$cfg['blowfish_secret'] = 'mrgQxxk8C-y}U7ji2BO9o5jLf}Qhe-BI[~6SUa';

phpMyAdmin ładuje się teraz bez żadnego ostrzeżenia.

Steve R.
źródło