«nvidia-settings» получила системную ошибку X Window (ошибка была «BadValue (целочисленный параметр вне диапазона для операции)».)

Со времени последнего apt-get dist-upgrade этим утром я начал видеть сбой nvidia-settings, когда я пытаюсь установить что-то с ошибкой ниже:

$ The program 'nvidia-settings' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadValue (integer parameter out of range for operation)'.
  (Details: serial 666 error_code 2 request_code 139 minor_code 25)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)

Потратив несколько часов, я пытался несколько вещей ниже и не повезло:

  • Переименовать ~/.nvidia-settings-rc -> В какой-то момент был создан новый файл, я не уверен.
  • Переименовать /etc/X11/xorg.conf -> Новый файл не был создан.
  • Установите bumblebee -> В той же ситуации с этот билет и сдался. Инсталлированных.
  • Попытка установки и / или удаления библиотек nvidia (пробные версии: 304, 319, 331 afai запомнить)

Так как похоже, что последний драйвер nvidia 331.20 был просто выпущенный рано утром , я подозреваю, что недавно установленная библиотека содержит злоумышленника. Но есть ли у кого-нибудь идея исправить это?

Системные журналы:

$ cat /etc/issue
Ubuntu 12.04.4 LTS \n \l

$ uname -a
Linux 130s-serval 3.2.0-58-generic #88-Ubuntu SMP Tue Dec 3 17:37:58 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

$ for keyword in baseboard-manufacturer baseboard-product-name baseboard-version system-manufacturer system-product-name system-version bios-vendor bios-version bios-release-date; done
>     printf "%-22s: " "$keyword";
>     sudo dmidecode -s "$keyword";
> done
System76, Inc.                            
baseboard-product-name: Serval Professional
baseboard-version     : serp7                    
system-manufacturer   : System76, Inc.                          
system-product-name   : Serval Professional
system-version        : serp7                    
bios-vendor           : American Megatrends Inc.
bios-version          : 4.6.4
bios-release-date     : 06/01/2011

$ dpkg -p nvidia-settings |grep Version
Version: 331.20-0ubuntu0.0.1

Спасибо!

3
задан 29 January 2014 в 04:19

2 ответа

Да, как @Eric предложил понизить до 304.88 работ. Поскольку я был на i386 и пропускал несколько зависимостей, пришлось пройти еще несколько шагов. Следующее должно решить это для людей, использующих i386.

Сначала загрузите пакет i386

wget http://http.us.debian.org/debian/pool/contrib/n/nvidia-settings/nvidia-settings_304.88-1_i386.deb

Пакет имеет несколько зависимостей, нам нужно их установить перед dpkg вышеупомянутым пакетом. (В моем случае я пропустил nvidia-installer-cleanup и libxnvctrl0):

wget http://http.us.debian.org/debian/pool/contrib/n/nvidia-support/nvidia-installer-cleanup_20131102+1_i386.deb
wget http://http.us.debian.org/debian/pool/contrib/n/nvidia-settings/libxnvctrl0_319.72-1_i386.deb

Для того чтобы dpkg - nvidia-installer-cleanup нам нужно сделать небольшую очистку.

sudo apt-get remove nvidia-current nvidia-current-updates nvidia-common

После удаления вышеуказанных пакетов вы можете dpkg загружать пакеты один за другим.

sudo -i
dpkg nvidia-installer-cleanup_20131102+1_i386.deb
dpkg libxnvctrl0
dpkg nvidia-settings_304.88-1_i386.deb

После того, как вы откатились до версии 304.88 и не хотите, чтобы она обновлялась, вы можете заблокировать версию следующим образом:

echo “nvidia-settings-304 hold” | dpkg --set-selections

В будущем, если вы захотите снять удержание, вы можете сделать:

echo “nvidia-settings-304 install” | dpkg --set-selections

ПРИМЕЧАНИЕ: вы также можете использовать менеджер пакетов synaptic. Просто выберите ваш пакет и в меню пакетов выберите Lock Version.

0
ответ дан 29 January 2014 в 04:19

Я видел ту же проблему вчера. Понижение с 331.20 до 304.88 сработало для меня:

wget https://launchpad.net/~ubuntu-security/+archive/ppa/+build/4479926/+files/nvidia-settings_304.88-0ubuntu0.2_amd64.deb
sudo dpkg -i nvidia-settings_304.88-0ubuntu0.2_amd64.deb
0
ответ дан 29 January 2014 в 04:19

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

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