个人工具

“UbuntuHelp:NvidiaManual”的版本间的差异

来自Ubuntu中文

跳转至: 导航, 搜索
第1行: 第1行:
 
{{From|https://help.ubuntu.com/community/NvidiaManual}}
 
{{From|https://help.ubuntu.com/community/NvidiaManual}}
 
{{Languages|UbuntuHelp:NvidiaManual}}
 
{{Languages|UbuntuHelp:NvidiaManual}}
'''This is not the recommended way to install the Nvidia drivers. Please see [[UbuntuHelp:BinaryDriverHowto/Nvidia]] for the supported method'''
+
'''This is not the recommended way to install the NVIDIA drivers - please see [[UbuntuHelp:BinaryDriverHowto/Nvidia]] for the supported method'''. Any problems that occur after using the following instructions should '''not''' be reported to the launchpad bug area. If the drivers were downloaded from the NVIDIA web site then the [http://www.nvnews.net/vbulletin/forumdisplay.php?f=14 NVIDIA Linux web forum] is an appropriate place to report issues. Other places for binary driver manual installation support can be found on the [http://www.ubuntu.com/support/communitysupport Community Support page].
  
Sometimes, using the available nvidia-glx package in Ubuntu is not feasable for the user, either because of bugs that are present in the older version, or because the user will obtain a needed feature using the official drivers. The purpose of this page is to detail the neccessary work to install the official Nvidia drivers from Nvidia.com. Note that this will not fix resolution problems, for that you need to go [[UbuntuHelp:FixVideoResolutionHowto|Here]].
+
Sometimes using the available <code><nowiki>nvidia-glx</nowiki></code> packages provided by Ubuntu is not desirable for NVIDIA card users. If your card is too new it might not be supported by the Ubuntu provided binary packages. Perhaps bugs are present in provided packages that are fixed in later drivers not yet distributed by Ubuntu. Maybe newer drivers provide a new feature not yet available in the Ubuntu packages. The purpose of this page is to detail the necessary work to install the [http://www.nvidia.com/object/unix.html official NVIDIA Linux driver pkg from www.nvidia.com]. Note that this will not fix resolution problems, for that you need to see the FixVideoResolutionHowto.
 +
 
 +
{|border="1" cellspacing="0"
 +
|<tablestyle="width:100%;" style="border:none;" 5%>https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconDialog-Warning1.png%7C%7C%3Cstyle%3D%22border%3Anone%3B%22%3EWhen using manually installed NVIDIA binary drivers you will need to redo some of the following steps '''every time''' packages related to <code><nowiki>mesa</nowiki></code> or <code><nowiki>linux-image</nowiki></code> are updated (see the [[head-be0c72a158dd695c3cc54fbaa2989c272d6fb076 Kernel and Mesa Updates]] section for details). Attempts to revert to the Ubuntu provided NVIDIA binary drivers may prove troublesome and upgrades to the next Ubuntu release (e.g. from 7.04 to 7.10) may fail unless the manual install is correctly uninstalled first.
 +
|}
  
 
=== Obtaining Needed Software ===
 
=== Obtaining Needed Software ===
  
 
Before you begin, it is strongly advised that your already have Xorg working acceptably with the 'nv' drivers included.
 
Before you begin, it is strongly advised that your already have Xorg working acceptably with the 'nv' drivers included.
First, make sure that your '''/etc/X11/xorg.conf''' is backed up.
+
First, make sure that your <code><nowiki>/etc/X11/xorg.conf</nowiki></code> is backed up.
 
<pre><nowiki>
 
<pre><nowiki>
 
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
 
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
 
</nowiki></pre>
 
</nowiki></pre>
  
Next, download the right drivers for your platform from [http://www.nvidia.com/object/unix.html here], and save them to your home directory.   
+
Next, download the right drivers for your platform from the [http://www.nvidia.com/object/unix.html NVIDIA Unix Driver portal] and save them to your home directory.   
  
 
Open a terminal, and run the following command:
 
Open a terminal, and run the following command:
第20行: 第24行:
 
</nowiki></pre>
 
</nowiki></pre>
  
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconDialog-Warning1.png '''This next step is optional.''' Most people willnot need it, and it takes a fair amount of bandwidth and diskspace. It installs the Linux kernel source. If later steps fail, consider this a last resort.
+
{|border="1" cellspacing="0"
 +
|<tablestyle="width:100%;" style="border:none;" 5%>https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconHint2.png%7C%7C%3Cstyle%3D%22 border:none;">'''This next step is optional.''' Most people will not need it, and it takes a fair amount of bandwidth and diskspace. It installs the Linux kernel source. If later steps fail, consider this a last resort.
 +
|}
 
<pre><nowiki>
 
<pre><nowiki>
 
sudo apt-get install linux-source-`uname -r`
 
sudo apt-get install linux-source-`uname -r`
第28行: 第34行:
 
</nowiki></pre>
 
</nowiki></pre>
  
=== Remove Conflicting Software ===
+
The above command might print an error:
 +
<pre><nowiki>
 +
E: Couldn't find package linux-source-2.6.20-16-386
 +
</nowiki></pre>
  
Using Synaptic or Apt, uninstall nvidia-glx, nvidia-settings, and nvidia-kernel-common packages.  These will cause the dreaded "version mismatch" X error.
+
In such case you could try following
 +
<pre><nowiki>
 +
sudo apt-get install linux-source
 +
</nowiki></pre>
 +
The following command will then probably need adjustment also.
  
Alternatively, edit the /etc/default/linux-restricted-modules-common file. Open it with an editor and find the line:
+
=== Disable Conflicting Software ===
 +
 
 +
Using Synaptic or Apt, uninstall <code><nowiki>nvidia-glx</nowiki></code>, <code><nowiki>nvidia-glx-legacy</nowiki></code>, <code><nowiki>nvidia-glx-new</nowiki></code> and <code><nowiki>nvidia-settings</nowiki></code> if they are installed.
 +
 
 +
Open the the <code><nowiki>/etc/default/linux-restricted-modules-common</nowiki></code> file with an editor, in Ubuntu use
 +
<pre><nowiki>
 +
gksudo gedit /etc/default/linux-restricted-modules-common
 +
</nowiki></pre>
 +
and in Kubuntu use
 +
<pre><nowiki>
 +
kdesu kate /etc/default/linux-restricted-modules-common
 +
</nowiki></pre>
 +
 
 +
and find the line:
 
<pre><nowiki>
 
<pre><nowiki>
 
DISABLED_MODULES=""
 
DISABLED_MODULES=""
第38行: 第64行:
 
replace it with:
 
replace it with:
 
<pre><nowiki>
 
<pre><nowiki>
DISABLED_MODULES="nv"
+
DISABLED_MODULES="nv nvidia_new"
 
</nowiki></pre>
 
</nowiki></pre>
 +
 +
Note: In Ubuntu 7.04 the  <code><nowiki>nvidia_new</nowiki></code> is explicitly required in addition to  <code><nowiki>nv</nowiki></code> on the  <code><nowiki>DISABLED_MODULES</nowiki></code> line. See this [https://bugs.launchpad.net/ubuntu/+source/linux-restricted-modules-2.6.20/+bug/105756 launchpad bug about lrm-manager failing to disable the nvidia_new module when nv is specified alone].  Additionally you may need to manually remove the hidden <code><nowiki>/lib/linux-restricted-modules/.nvidia_new_installed</nowiki></code> file.
 +
 +
{|border="1" cellspacing="0"
 +
|<tablestyle="width:100%;" style="border:none;" 5%>https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconDialog-Warning1.png%7C%7C%3Cstyle%3D%22 border:none;">'''Warning:''' Be wary of uninstalling <code><nowiki>nvidia-kernel-common</nowiki></code> or packages starting with the name <code><nowiki>linux-restricted-modules</nowiki></code>. Doing so will cause '''all''' restricted drivers to be uninstalled which may result in other hardware (e.g. certain wireless cards) or other software (e.g. VMware) failing to work after a reboot/kernel update.
 +
|}
  
 
=== Prepare Configuration Files ===
 
=== Prepare Configuration Files ===
  
The next step is to edit your xorg.conf file.  Open it with an editor,
+
The next step is to edit your xorg.conf file.  Open it with an editor, In Ubuntu:
 
<pre><nowiki>
 
<pre><nowiki>
 
gksudo gedit /etc/X11/xorg.conf
 
gksudo gedit /etc/X11/xorg.conf
 +
</nowiki></pre>
 +
Or in Kubuntu:
 +
<pre><nowiki>
 +
kdesu kate /etc/X11/xorg.conf
 
</nowiki></pre>
 
</nowiki></pre>
  
第72行: 第108行:
 
</nowiki></pre>
 
</nowiki></pre>
  
Now that your Xorg.conf is saved, we need to shutdown the X11 server so that we can install the new drivers. To do this, save your work and press <code><nowiki>ctrl-alt-f1</nowiki></code>, and log in.  Then run the following command to shutdown X11. '''Make sure your work is saved, Gnome is going to shutdown too'''.
+
Now that your Xorg.conf is saved, we need to shutdown the X11 server so that we can install the new drivers. To do this, save your work and press <code><nowiki>ctrl-alt-f1</nowiki></code>, and log in.  Then run the following command to shutdown X11. '''Make sure your work is saved, Gnome/KDE is going to shutdown too'''.
 +
For Ubuntu:
 
<pre><nowiki>
 
<pre><nowiki>
 
sudo /etc/init.d/gdm stop
 
sudo /etc/init.d/gdm stop
 +
</nowiki></pre>
 +
For Kubuntu:
 +
<pre><nowiki>
 +
sudo /etc/init.d/kdm stop
 
</nowiki></pre>
 
</nowiki></pre>
  
 
=== Install the Driver ===
 
=== Install the Driver ===
  
Now we need to run the Nvidia installer script.  First, it needs to be made executable.
+
Useful tip, typing the first few letters and hitting the <code><nowiki>tab</nowiki></code> key will auto-complete the name, saving you from using wildcards like *
 +
 
 +
'''For Ubuntu 6.06 (Dapper Drake) or later users:''' you can start the install script with the following command:
 
<pre><nowiki>
 
<pre><nowiki>
sudo chmod +x NVIDIA*
+
sudo sh NVIDIA*
 
</nowiki></pre>
 
</nowiki></pre>
  
Useful tip, typing the first few letters and hitting the <code><nowiki>tab</nowiki></code> key will autocomplete the name, saving you from using wildcards like *
+
'''For Ubuntu 5.10 (Breezy Badger) users:''' you will need to use the following commands '''instead of the one above''':
 +
<pre><nowiki>
 +
sudo apt-get install gcc-3.4
 +
CC=gcc-3.4 sudo sh NVIDIA*
 +
</nowiki></pre>
  
'''For Dapper users:''' now that you can run the script, you do so with the following command; make sure to include the <code><nowiki>./</nowiki></code>:
+
The installer will now walk you through the steps required. Assuming success, you can now restart your X11 server using:
 +
For Ubuntu:
 
<pre><nowiki>
 
<pre><nowiki>
sudo ./NVIDIA*
+
sudo /etc/init.d/gdm start
 
</nowiki></pre>
 
</nowiki></pre>
  
https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconDialog-Warning1.png '''Warning!''' If you're using Breezy Badger (5.10), then you will need to use the following commands '''instead of the one above''':
+
For Kubuntu
 
<pre><nowiki>
 
<pre><nowiki>
sudo apt-get install gcc-3.4
+
sudo /etc/init.d/kdm start
CC=gcc-3.4 sudo ./NVIDIA*
+
 
</nowiki></pre>
 
</nowiki></pre>
  
The installer will now walk you through the steps required. Assuming success, you can now restart your X11 server using
+
=== Kernel and Mesa Updates ===
 +
Every time a new kernel comes out you will have to manually rebuild the NVIDIA binary driver kernel module. This can be done by booting to the new kernel and then running:
 
<pre><nowiki>
 
<pre><nowiki>
sudo /etc/init.d/gdm start
+
sudo sh NVIDIA* -K
 
</nowiki></pre>
 
</nowiki></pre>
 +
on the previously downloaded NVIDIA pkg.
  
=== It didn't work! ===
+
Additionally, any time that the mesa packages are updated you will have to reinstall the NVIDIA pkg again.
 +
 
 +
=== It didn't work! (Troubleshooting) ===
 +
When trying to start X, if you get an error about nvidiactl (you will need to see the X log), try the following:
 +
* sudo update-rc.d -f nvidia-kernel remove
 +
If you want to go back to the Restricted Manager method after performing the above instructions, do this
 +
* sudo update-rc.d nvidia-kernel defaults
  
 
If the installer fails, go through the following checklist
 
If the installer fails, go through the following checklist
  
* Was Xorg already properly configured for the '''nv''' drivers?
+
* Was Xorg already properly configured for the <code><nowiki>nv</nowiki></code> driver?
* Did you remove the nvidia-glx, nvidia-settings, and nvidia-kernel-common packages installed via apt or synaptic?
+
* Did you disable the loading of Ubuntu provided NVIDIA drivers using <code><nowiki>DISABLED_MODULES="nv nvidia_new"</nowiki></code> in <code><nowiki>/etc/default/linux-restricted-modules-common</nowiki></code> ? This is a common cause of driver mismatch errors on manual installations due to conflicts with the Ubuntu provided NVIDIA binary driver.
* Did you read the log found in '''/var/log/nvidia-installer-log''' for errors that can guide you?
+
* You may need to remove the file <code><nowiki>/lib/linux-restricted-modules/.nvidia_new_installed</nowiki></code>
 +
* Did you remove the <code><nowiki>nvidia-glx/nvidia-glx-legacy/nvidia-glx-new</nowiki></code> and <code><nowiki>nvidia-settings</nowiki></code> packages?
 +
* Did you read the log found in <code><nowiki>/var/log/nvidia-installer-log</nowiki></code> for errors that can guide you?
 +
* Did you check the output of <code><nowiki>dmesg</nowiki></code> ?
 
* Did you install the kernel headers (and possibly source package)?
 
* Did you install the kernel headers (and possibly source package)?
* Did you check the Nvidia readme found on their site to make sure your card is supported with that version of driver?
+
* Did you check the NVIDIA readme found on their site to make sure your card is supported with that version of driver?
* Did you check the Nvidia Linux Forums for any current 'known issues' with the latest drivers?
+
* Did you check the [http://www.nvnews.net/vbulletin/forumdisplay.php?f=14 NVIDIA Linux Forums] for any current 'known issues' with the latest drivers?
* Did you ask in #ubuntu on irc.freenode.net?  
+
* Did you ask in #ubuntu on irc.freenode.net or any of the other places mentioned on http://www.ubuntu.com/support/communitysupport ?  
 +
 
 +
=== See Also ===
 +
[[UbuntuHelp:BinaryDriverHowto/Nvidia]]
 +
 
 +
[http://www.albertomilone.com/nvidia_scripts1.html Envy] - Automated script to build and install the latest official NVIDIA binary driver.
 +
 
 +
http://wiki.debian.org/NvidiaGraphicsDrivers
 +
 
 +
[http://www.nvnews.net/vbulletin/showthread.php?t=72490 NVIDIA web forum Ubuntu installation notes] - NVIDIA's guide to installing their binary driver .pkg on Ubuntu.
  
 
[[category:CategoryDocumentation]] [[category:CategoryCleanup]]
 
[[category:CategoryDocumentation]] [[category:CategoryCleanup]]
  
 
[[category:UbuntuHelp]]
 
[[category:UbuntuHelp]]

2007年11月21日 (三) 18:27的版本

This is not the recommended way to install the NVIDIA drivers - please see UbuntuHelp:BinaryDriverHowto/Nvidia for the supported method. Any problems that occur after using the following instructions should not be reported to the launchpad bug area. If the drivers were downloaded from the NVIDIA web site then the NVIDIA Linux web forum is an appropriate place to report issues. Other places for binary driver manual installation support can be found on the Community Support page.

Sometimes using the available nvidia-glx packages provided by Ubuntu is not desirable for NVIDIA card users. If your card is too new it might not be supported by the Ubuntu provided binary packages. Perhaps bugs are present in provided packages that are fixed in later drivers not yet distributed by Ubuntu. Maybe newer drivers provide a new feature not yet available in the Ubuntu packages. The purpose of this page is to detail the necessary work to install the official NVIDIA Linux driver pkg from www.nvidia.com. Note that this will not fix resolution problems, for that you need to see the FixVideoResolutionHowto.

<tablestyle="width:100%;" style="border:none;" 5%>https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconDialog-Warning1.png%7C%7C%3Cstyle%3D%22border%3Anone%3B%22%3EWhen using manually installed NVIDIA binary drivers you will need to redo some of the following steps every time packages related to mesa or linux-image are updated (see the head-be0c72a158dd695c3cc54fbaa2989c272d6fb076 Kernel and Mesa Updates section for details). Attempts to revert to the Ubuntu provided NVIDIA binary drivers may prove troublesome and upgrades to the next Ubuntu release (e.g. from 7.04 to 7.10) may fail unless the manual install is correctly uninstalled first.

Obtaining Needed Software

Before you begin, it is strongly advised that your already have Xorg working acceptably with the 'nv' drivers included. First, make sure that your /etc/X11/xorg.conf is backed up.

sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup

Next, download the right drivers for your platform from the NVIDIA Unix Driver portal and save them to your home directory.

Open a terminal, and run the following command:

sudo apt-get install build-essential linux-headers-`uname -r`
<tablestyle="width:100%;" style="border:none;" 5%>https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconHint2.png%7C%7C%3Cstyle%3D%22 border:none;">This next step is optional. Most people will not need it, and it takes a fair amount of bandwidth and diskspace. It installs the Linux kernel source. If later steps fail, consider this a last resort.
sudo apt-get install linux-source-`uname -r`
cd /usr/src
sudo tar xvjf linux-source-`uname -r`
sudo ln -s linux-source-`uname -r` /usr/src/linux

The above command might print an error:

E: Couldn't find package linux-source-2.6.20-16-386

In such case you could try following

sudo apt-get install linux-source

The following command will then probably need adjustment also.

Disable Conflicting Software

Using Synaptic or Apt, uninstall nvidia-glx, nvidia-glx-legacy, nvidia-glx-new and nvidia-settings if they are installed.

Open the the /etc/default/linux-restricted-modules-common file with an editor, in Ubuntu use

gksudo gedit /etc/default/linux-restricted-modules-common

and in Kubuntu use

kdesu kate /etc/default/linux-restricted-modules-common

and find the line:

DISABLED_MODULES=""

replace it with:

DISABLED_MODULES="nv nvidia_new"

Note: In Ubuntu 7.04 the nvidia_new is explicitly required in addition to nv on the DISABLED_MODULES line. See this launchpad bug about lrm-manager failing to disable the nvidia_new module when nv is specified alone. Additionally you may need to manually remove the hidden /lib/linux-restricted-modules/.nvidia_new_installed file.

<tablestyle="width:100%;" style="border:none;" 5%>https://help.ubuntu.com/community/IconsPage?action=AttachFile&do=get&target=IconDialog-Warning1.png%7C%7C%3Cstyle%3D%22 border:none;">Warning: Be wary of uninstalling nvidia-kernel-common or packages starting with the name linux-restricted-modules. Doing so will cause all restricted drivers to be uninstalled which may result in other hardware (e.g. certain wireless cards) or other software (e.g. VMware) failing to work after a reboot/kernel update.

Prepare Configuration Files

The next step is to edit your xorg.conf file. Open it with an editor, In Ubuntu:

gksudo gedit /etc/X11/xorg.conf

Or in Kubuntu:

kdesu kate /etc/X11/xorg.conf

Find the section Module and comment out DRI using the # symbol, such as in the following example.

Section "Module"
Load    "bitmap"
Load    "dbe"
Load    "ddc"
#       Load    "dri"   <------ this is 'commented'
Load    "extmod"
Load    "freetype"
Load    "glx"
Load    "int10"
Load    "record"
Load    "type1"
Load    "vbe"
EndSection

Now find the section Device, and change the Driver from nv (or vesa, fb, etc) to nvidia, as in the following example, and then save it.

Section "Device"
Identifier      "Card0"
Driver          "nvidia" #This is where you change it
EndSection

Now that your Xorg.conf is saved, we need to shutdown the X11 server so that we can install the new drivers. To do this, save your work and press ctrl-alt-f1, and log in. Then run the following command to shutdown X11. Make sure your work is saved, Gnome/KDE is going to shutdown too. For Ubuntu:

sudo /etc/init.d/gdm stop

For Kubuntu:

sudo /etc/init.d/kdm stop

Install the Driver

Useful tip, typing the first few letters and hitting the tab key will auto-complete the name, saving you from using wildcards like *

For Ubuntu 6.06 (Dapper Drake) or later users: you can start the install script with the following command:

sudo sh NVIDIA*

For Ubuntu 5.10 (Breezy Badger) users: you will need to use the following commands instead of the one above:

sudo apt-get install gcc-3.4
CC=gcc-3.4 sudo sh NVIDIA*

The installer will now walk you through the steps required. Assuming success, you can now restart your X11 server using: For Ubuntu:

sudo /etc/init.d/gdm start

For Kubuntu

sudo /etc/init.d/kdm start

Kernel and Mesa Updates

Every time a new kernel comes out you will have to manually rebuild the NVIDIA binary driver kernel module. This can be done by booting to the new kernel and then running:

sudo sh NVIDIA* -K

on the previously downloaded NVIDIA pkg.

Additionally, any time that the mesa packages are updated you will have to reinstall the NVIDIA pkg again.

It didn't work! (Troubleshooting)

When trying to start X, if you get an error about nvidiactl (you will need to see the X log), try the following:

  • sudo update-rc.d -f nvidia-kernel remove

If you want to go back to the Restricted Manager method after performing the above instructions, do this

  • sudo update-rc.d nvidia-kernel defaults

If the installer fails, go through the following checklist

  • Was Xorg already properly configured for the nv driver?
  • Did you disable the loading of Ubuntu provided NVIDIA drivers using DISABLED_MODULES="nv nvidia_new" in /etc/default/linux-restricted-modules-common ? This is a common cause of driver mismatch errors on manual installations due to conflicts with the Ubuntu provided NVIDIA binary driver.
  • You may need to remove the file /lib/linux-restricted-modules/.nvidia_new_installed
  • Did you remove the nvidia-glx/nvidia-glx-legacy/nvidia-glx-new and nvidia-settings packages?
  • Did you read the log found in /var/log/nvidia-installer-log for errors that can guide you?
  • Did you check the output of dmesg ?
  • Did you install the kernel headers (and possibly source package)?
  • Did you check the NVIDIA readme found on their site to make sure your card is supported with that version of driver?
  • Did you check the NVIDIA Linux Forums for any current 'known issues' with the latest drivers?
  • Did you ask in #ubuntu on irc.freenode.net or any of the other places mentioned on http://www.ubuntu.com/support/communitysupport ?

See Also

UbuntuHelp:BinaryDriverHowto/Nvidia

Envy - Automated script to build and install the latest official NVIDIA binary driver.

http://wiki.debian.org/NvidiaGraphicsDrivers

NVIDIA web forum Ubuntu installation notes - NVIDIA's guide to installing their binary driver .pkg on Ubuntu.