Встановлення nvidia-opencl-icd-367 порушує менеджер пакунків


14

Я використовую графічні драйвери ppa. Сьогодні я отримав діалог оновлення, в якому сказано, що я можу оновити драйвер nvidia до 367.18 (~ gpu16.04.6). Я почав оновлення, як і кожного разу, але це не вдалося

Failed to get unit file state for var-lib-snapd-lib-gl.mount

Після перезавантаження мій графічний драйвер зламався, і я був змушений перейти в режим відновлення.

Як зазвичай, коли мій драйвер Nvidia ламається, я просто видаляю його, sudo apt purge nvidia*щоб потім перевстановити його чистим.

Виконуючи це в режимі відновлення, вилучили всі, крім nvidia-opencl-icd-367пакету, який не вдався з помилкою, наведеною вище.

Спроба видалити цей пакет вручну закінчується цими помилками:

введіть тут опис зображення введіть тут опис зображення


Оновлення @ 20160605 - Рішення:

Після відповіді V ідеонаута нижче вирішується питання. Пройдіть усі кроки та переконайтесь, що перезавантажтесь після того, як вилучили все NVIDIA за допомогою sudo apt purge nvidia*успішного без проблем та після перевстановлення драйвера через sudo apt install nvidia-367.

Це призведе до того, що ваш водій знову запрацює.

Якщо це не допомагає, спробуйте видалити всі старі конфігурації xorg вручну sudo rm /etc/X11/xorg.conf* && sudo rm /etc/X11/xorg.confта знову встановити драйвер sudo apt install nvidia-367 --reinstall.

Якщо це все ще не дозволяє ввійти назад (Типова помилка: екран входу -> введений пароль, введіть натиснуто -> повертається на екран входу), спробуйте повністю видалити драйвер Nvidia знову, перейшовши на текстову консоль із logscreen Ctrl+ Alt+ F1, увійдіть із своїм ім’ям і паролем облікового запису, завантажте відповідний драйвер для вашої відеокарти звідси в консолі, зупиніть lightdm:

sudo service lightdm

Встановіть бінарний драйвер Nvidia за допомогою sudo ./NVIDIA-VERSION...

і перезавантажте систему:

sudo reboot now

Система:

Ubuntu 16.04 64bit

Linux 4.4.0-22


1
У мене була така ж проблема, як у вас, але з nvidia-340. ! Я використав метод №2 Videonauth, і наприкінці цього у мене виникли додаткові проблеми: nvidia-361 не вдалося встановити через помилку libcuda1-340. не вдалося стерти libcuda1-340. Я змусив видалити libcuda1 так само, як і з nvidia-opencl-icd-340. Після цього nvidia-361встановлено штраф. Дякую Videonauth за радикальний підхід!
ipse лютня

Я можу підтвердити цю проблему. І я бачу поки що один спосіб: відключення ppa-repo для nvidia.
ipeacocks

Якщо ваша проблема була вирішена у відповідь, будь ласка, не повторюйте кроки у вашому запитанні. Натомість прийміть відповідь і проголосуйте за неї. Якщо ви хочете запропонувати зміни у відповіді, натисніть посилання редагування під нею, щоб запропонувати зміни.
Девід Фоерстер

Відповіді:


17

Гаразд, щоб виправити це (у мене були ті ж проблеми сьогодні вранці) у вас є два способи:

1. Чистий спосіб, запропонований мені командою стартових панелей за електронною поштою:

Щоб обійти цю проблему, ви можете спочатку переключитися в текстову консоль, натиснувши Ctrl+ Alt+ F1, а потім зупиніть менеджер дисплея , використовуючи sudo systemctl stop <displaymanager>, де lightdm, gdm, sddm, або в залежності від того іншого менеджера дисплеїв ви використовуєте.

Припинення X очищує відключену помилку, що дозволяє успішно оновити до ~ gpu16.04.6, який більше не містить несправний патч, використовуючи sudo apt upgrade. Після цього можна запустити sudo systemctl rebootперезавантаження системи, яка повинна повернути її до нормального функціоналу.

Якщо ви все-таки отримаєте помилку із зазначенням

Unit var-lib-snapd-lib-gl.mount not loaded.

Ви можете подолати цю проблему, запустивши

sudo touch /lib/systemd/system/var-lib-snapd-lib-gl.mount && sudo systemctl daemon-reload

перш ніж спробувати повторити оновлення. Після завершення оновлення запустіть очищення

sudo touch /lib/systemd/system/var-lib-snapd-lib-gl.mount

2. Те, як я підійшов до нього сьогодні вранці, змусивши повне видалення:

Щоб вирішити цю проблему, ви можете спочатку переключитися на текстову консоль, натиснувши Ctrl+ Alt+ F1, а потім почати знову

sudo apt-get remove --purge nvidia*

слідом за ним

sudo dpkg --remove --force-all nvidia-opencl-icd-367`

Потім sudo apt-get autoremoveслідує a sudo apt-get clean, і знову a sudo apt-get remove --purge nvidia.

Тепер слід все ще згадати будь-які пакунки, які ви не можете видалити, а потім перейти до /var/lib/dpkg/infoта знайти файли, що називаються <packagename>.prerm, <packagename>.postinstі <packagename>.postrm, для всіх цих файлів, виконайте наступні дії ( будьте обережні, це не розумний спосіб щось видалити ):

sudo su
> <packagename>.prerm
> <packagename>.postinst
> <packagename>.postrm
exit

Після цього почніть видалення, як зазвичай

sudo apt-get remove <packagename>

робіть це, поки все не очиститься

sudo apt-get update && sudo apt-get dist-upgrade

а потім знову встановіть драйвер nvidia, який до цього часу слід виправити

sudo apt-get install nvidia-367

Дякую, мені вдалося повністю видалити драйвер Nvidia за вашою другою пропозицією. Я все ще не на своєму робочому столі ("типовий" логін -> повернення до екрана входу), наразі я намагаюся встановити бінарний драйвер NVIDIA (який генерує новий x11.conf, який зазвичай працює)
Flatron

1
Щасливий, я міг допомогти :) У мене було це сьогодні вранці і мені було дуже важко, поки я не з'ясував спосіб виправити. Надіслав електронною поштою екіпажу з ПП про це, і запропоновані 1. рішення є від них, друге рішення - це те, що я зробив сьогодні вранці, щоб виправити це.
Videonauth

Ідеальний, єдиний клопот з Linux - це завжди драйвер графіки. Здебільшого немає проблем з Edger ppa, але іноді це може зробити ваш недільний ранок боротьбою;)
Flatron

1
У мене єдність, у мене була та сама проблема, і я використовував звичайну програму Graphics Driver Team ppa, тому я видалив тег edgers з вашого запитання, все це відбувається з несправного патча, який потрапив вгору, упакований і висунутий.
Videonauth

Спасибі. Дотик зробив трюк. Дуже нерозумно, якщо це може вийти з ладу таким фатальним чином лише тому, що відсутній якийсь явно неважливий файл?
бінаномалія
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.