Jak zmusić 16.04 do dodania repozytorium, nawet jeśli nie jest wystarczająco bezpieczne?
9
Naprawdę muszę zainstalować Nvidię Cuda, ale pojawia się błąd
E: Failed to fetch file:/var/cuda-repo-7-5-local/Release No Hash entry in Release file /var/lib/apt/lists/partial/_var_cuda-repo-7-5-local_Release which is considered strong enough for security purposes
Czy mimo to mogę go zmusić do zainstalowania? Naprawdę muszę go użyć, nawet jeśli jest to niepewne. Wątpię, aby Nvidia zaktualizowała repozytorium do pracy z 16.04 w najbliższym czasie.
Miałem ten sam problem, próbując zainstalować CUDA 7.5 w Ubuntu 16.04. Wynika to z brakującego wpisu SHA256 lub SHA512 w pakiecie CUDA (jak donosi zespół Debiana tutaj ).
Wygląda na to, że nie możemy zmusić aktualizacji apt-get do pobrania „niezabezpieczonego repozytorium”, ale mogę całkowicie uniknąć tego problemu, używając pliku .run. Oto co zrobiłem krok po kroku:
Zamiast pobierać pakiet .deb, pobierz plik .run (z
tej strony )
Zainstaluj kompatybilny kompilator (wygląda na to, że cuda 7.5 nie jest kompatybilny z domyślnym kompilatorem Ubuntu 16.04):
sudo apt-get install gcc-4.9 g++-4.9
Może być konieczne zainstalowanie dodatkowych pakietów (w zależności od konfiguracji):
Uruchom plik uruchamiania i postępuj zgodnie z instrukcjami:
sudo sh cuda_7.5.18_linux.run
Działa to dla mnie dobrze (nie zapomnij zainstalować sterownika NVIDIA)
EDYCJA: Po kroku 2 i 3, jeśli instalator CUDA spróbuje użyć gcc 5.3.1 (domyślnie dla Ubuntu 16.04) jako kompilatora zamiast wersji 4.9, możesz spróbować usunąć wersję 5.3.1, zainstalować CUDA, a następnie ponownie zainstalować najnowszą gcc wersja.
Nie wiem czy jest nowy, ale po zobaczeniu mojej „złej” wersji gcc, skrypt instalacyjny faktycznie zasugerował, aby uruchomić go ponownie z flagą „--override”. Więc uruchomiłem go ponownie, ponieważ sh cuda_7.5.18_linux.run --overridewydaje się, że na razie wszystko działa dobrze: mogę uruchomić prosty kod TensorFlow przy użyciu mojej karty NVidia. Instalacja jest prawie natychmiastowa i nie wydaje mi się, żeby coś kompilowała. Nie jestem pewien, dlaczego należy określić kompilator ... Mogę później mieć problemy.
toto2
Powinienem określić, że pominąłem instalację sterownika, ponieważ była już zainstalowana. Nie jestem pewien, czy to mogło ominąć kompilację.
toto2
Myślałem, że sterownik Nvidia nie jest instalowany automatycznie w 16.04? Poprosiłem również programistów Nvidii o naprawienie problemu z repozytorium Cuda .deb, ale powiedzieli, że Cuda 7.5 nie jest jeszcze obsługiwany 16.04. Wydaje się to dziwne, ponieważ przy użyciu instalatora .sh działa dobrze i mogę nawet używać go z tensorflow
Amine Horseman
Sterownik NVidia rzeczywiście nie jest domyślnie instalowany. Próbowałem zainstalować go bezpośrednio z NVidii i zepsułem mój system. Ale potem zdałem sobie sprawę, że możesz go łatwo zainstalować, przechodząc do aplikacji Ustawienia> Oprogramowanie i aktualizacje> Dodatkowe sterowniki. To może nie być najnowszy, ale jest dość prosty.
Nie mogę komentować, ale dodaję do odpowiedzi @ Horse-man: Nie musisz odinstalowywać / ponownie instalować gcc, jeśli masz już zainstalowany gcc 4.9. Dla mnie to wystarczyło
sh cuda_7.5.18_linux.run --override
wydaje się, że na razie wszystko działa dobrze: mogę uruchomić prosty kod TensorFlow przy użyciu mojej karty NVidia. Instalacja jest prawie natychmiastowa i nie wydaje mi się, żeby coś kompilowała. Nie jestem pewien, dlaczego należy określić kompilator ... Mogę później mieć problemy.Zmień
/var/cuda-repo-7-5-local/Release
na następujące:Uruchom
sudo apt-get update
ignorowanie ostrzeżeń o nieprawidłowych podpisach i gotowe.Jeśli to się nie powiedzie, zamień sumę SHA256 na wynik
i
źródło
Obecnie możesz użyć następujących poleceń w systemie Ubuntu 16.04, aby zainstalować CUDA Toolkit 7.5:
źródło
Nie mogę komentować, ale dodaję do odpowiedzi @ Horse-man: Nie musisz odinstalowywać / ponownie instalować gcc, jeśli masz już zainstalowany gcc 4.9. Dla mnie to wystarczyło
Mój gcc-4.9 miał naprawdę 4.9.3, co nie podobało się instalatorowi CUDA, więc go uruchomiłem
I zainstalował się poprawnie.
źródło
Rozwiązanie jest proste:
źródło