个人工具

UbuntuHelp:BinaryDriverHowto/ATI/zh

来自Ubuntu中文

(重定向自ATI显卡安装配置指南
跳转至: 导航, 搜索

By default Ubuntu will use the open source 'ati' or 'radeon' driver for cards manufactured by ATI. Some users however prefer the proprietary 'fglrx' driver for various reasons. The instructions on this page will tell you how to use this driver.

默认情况下Ubuntu将使用开源的“ati”或者“radeon”等由ati制作的半成品驱动。一些用户因为某些原因选择私有的“fglrx”驱动.这份指南会告诉你如何使用这个驱动。

There are 2 ways you can install proprietary fglrx drivers. The preferred way is to use the drivers provided via the Ubuntu repositories. More advanced users can also try the drivers from ati.com. Both approaches are documented below and you need to take only one of them. The Ubuntu-provided ones are the safest bet, the ati.com ones however may be needed (eg: when you need hibernation).

有两种方式安装私有的fglrx驱动。首选方式是使用Ubuntu软件源中的通用受限驱动管理器更高级一点的用户同样能尝试从ati.com下载安装。这两种方法都记录在下面,你需要选择其中之一使用。Ubuntu提供的受限管理器是最安全的方法,ati.com的方法可能你需要(比如,当你想尝鲜时)。

As mentioned elsewhere, if you encounter bugs with these closed-source drivers, developers will not be willing or even able to assist you in resolving your issues. Use at your own risk. We encourage our users to prefer open source drivers.

这里所述的任何内容,如果对于闭源驱动来说,你如果遇到BUG,开发者将不会或者说不可能帮助你解决你遇到的情况。使用风险只能由你自己来承担。我们鼓励我们的使用者选择开源驱动。

准备工作

Make sure the following things are true about your video card: 确定对于你的显卡来说下面的情况是真实的:

  • It is a 'Radeon' card
  • 它是“Radeon”卡
  • The model of the card is in the 9xxx series, 9500 or higher, or it is in the X series (e.g. X300), or it has TV-Out capability. The 'fglrx' driver does not support cards earlier than the 9500.
  • 显卡类型是9XXX系列,9500或者更高,或者是X系列里(如X300),或者它拥有TV-Out功能。“fglrx”驱动不支持9500以前的更早的显卡。
  • The command lspci reveals a card with "ATI" in its name
  • 使用lspci命令显示名子为“ati”
  • You need hardware-accelerated 3D support, or display refresh rates higher than 60 Hz. The open source drivers are fine for all other areas.
  • 你需要3D硬件加速支持,或者刷新率高于60Hz。对于其他情况来说开源驱动更好。
  • Some basic knowledge of a Linux command line (see UsingTheTerminal)
  • 对Linux内核的一些命令行知识(使用终端)

Note that if you own an ATI card from the R400 series or below, you already have working 2D and may have accelerated 3D with the default drivers. These cards include:

  • R400 series Xnnn (X800, X700, etc) (3D works)
  • R300 series (9300+) (3D works)
  • R200 and R100 series (9200 and below)

注意如果你的ATI显卡从R400系列或者往后,你一直使用2D工作并且可能默认驱动使用3D加速。这些显卡包括:

  • R400 系列Xnnn(X800, X700等)(3D可用)
  • R300 系列 (X900,X700等)(3D可用)
  • R400 和 R100系列(9200和其它)

For specific chipsets and models, see the Xorg 7.0 Release Notes.

The TV-Out functionality in the open source "ati" driver has improved in Ubuntu 7.10; if it works well enough you might not need to use fglrx.

对于特别的芯片和模块,请查看Xorg.7.0的发行注记。

TV-Out功能在开源的"ati"驱动在7.10中包含;如果它能很好的工作,你可能不需要使用fglrx。

从Ubuntu软件源安装 (容易的)

Kubuntu 7.10 (Gutsy)安装指南

First make sure linux-restricted-modules-generic and restricted-manager-kde are both installed

首先请确定“linux-restricted-modules-generic”和“restricted-manager-kde”都已安装。

sudo apt-get install linux-restricted-modules-generic restricted-manager-kde

Open the restricted drivers manager from KMenu → System Settings → Advanced → Restricted Drivers and select "ATI accelerated graphics driver". This will hopefully enable fglrx in a painless way. If not, follow the instructions for Feisty.

开源的受限驱动管理器从这里进入KMenu→ 系统设置 → 高级 → 受限驱动这将是你启用fglrx的一种方式,如果没有,接下来请看针对Feisty的指南。

Ubuntu 7.04 (Feisty) 和Ubuntu 7.10 (Gutsy)安装指南

  • Install linux-restricted-modules and restricted-manager provided in the restricted repositories:
sudo apt-get update
sudo apt-get install linux-restricted-modules-generic restricted-manager

Open the restricted drivers manager in "System -> Administration -> Restricted Drivers Manager" and select "ATI accelerated graphics driver". This will hopefully enable fglrx in a painless way. If not, follow the instructions for Edgy.

Kubuntu 7.04 (Feisty)安装指南

  • Install linux-restricted-modules from the restricted repositories:
sudo apt-get update
sudo apt-get install linux-restricted-modules-generic
  • Install the driver provided by ati included in the repositories:
sudo apt-get update
sudo apt-get install xorg-driver-fglrx
  • You might also want to install a control panel for your graphic card. Please note that I do not recommend it, as it seems to be buggy, and generally doesnt work.
sudo apt-get install fglrx-control
  • Make sure fglrx is not disabled in the DISABLED_MODULES part: kdesu kate /etc/default/linux-restricted-modules-common.
  • Generate a new set of module dependencies so the fglrx driver starts properly.
sudo depmod -a
  • You now have to configure xorg to use your graphic card. The aticonfig tool, provided with the driver, will do that for you (aticonfig does not seem to work for Gutsy Gibbons):
sudo aticonfig --initial
sudo aticonfig --overlay-type=Xv
  • ATI are well known not to be able to provide correct drivers for their hardware so you will have to deactivate the composite extension in /etc/X11/xorg.conf , otherwise you will get a jerky video display: kdesu kate /etc/X11/xorg.conf, and add the following lines at the end of the file:
Section "Extensions"
	Option	    "Composite" "disable"
EndSection

// After making all those modifications, your X server might not want to start again. Don't worry, you can still modify xorg.conf using nano sudo nano /etc/X11/xorg.conf. To save changes press Ctrl-O and to quit press Ctrl-X. To start X again type startx // Save and restart the X server by logging out and selecting Restart X Server from the menu or press Alt+E Confirm it worked, by issuing the "fglrxinfo" command: Note: fglrxinfo/glxinfo may not work properly for you via SSH and via the console when logged in as root. Output should be similar to this:

$ fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: RADEON 9700 Generic
OpenGL version string: 2.0.5755 (8.24.8)

6.10 (Edgy)安装指南

  • Install the driver provided by ati included in the repositories:
sudo apt-get update
sudo apt-get install xorg-driver-fglrx
  • You might also want to install a control panel for your graphic card. Please note that I do not recommend it, as it seems to be buggy, and generally doesnt work.
sudo apt-get install fglrx-control
  • Make sure fglrx is not disabled: gksudo gedit /etc/default/linux-restricted-modules-common, or in Kubuntu kdesu kate /etc/default/linux-restricted-modules-common.
  • Generate a new set of module dependencies so the fglrx driver starts properly.
sudo depmod -a
  • You now have to configure xorg to use your graphic card. The aticonfig tool, provided with the driver, will do that for you:
sudo aticonfig --initial
sudo aticonfig --overlay-type=Xv
  • ATI are well known not to be able to provide correct drivers for their hardware so you will have to deactivate the composite extension in /etc/X11/xorg.conf , otherwise you will get a jerky video display: gksudo gedit /etc/X11/xorg.conf or if on Kubuntu: kdesu kate /etc/X11/xorg.conf, and add the following lines at the end of the file:
Section "Extensions"
	Option	    "Composite" "disable"
EndSection

// After making all those modifications, your X server might not want to start again. Don't worry, you can still modify xorg.conf using nano sudo nano /etc/X11/xorg.conf. To save changes press Ctrl-O and to quit press Ctrl-X. To start X again type startx // Save and restart xorg by pressing Ctrl Alt and Backspace simultaneously. Confirm it worked, by issuing the "fglrxinfo" command:

  • fglrxinfo/glxinfo may not work properly for you via SSH and via the console when logged in as root.
$ fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: RADEON 9700 Generic
OpenGL version string: 2.0.5755 (8.24.8)

疑难问题解决

If fglrxinfo gives you the following, your installation is not completed correctly:

$ fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: Mesa project: www.mesa3d.org
OpenGL renderer string: Mesa GLX Indirect
OpenGL version string: 1.2 (1.5 Mesa 6.4.1)

These two commands might fix your installation, try this, reboot, and run fglrxinfo again:

sudo mkdir -p /usr/X11R6/lib/modules/dri 
sudo ln -s /usr/lib/dri/fglrx_dri.so /usr/X11R6/lib/modules/dri 

Source for the Mesa fix, with in-depth explanation If the above fix did not work, watch for these things:

  • As fglrx is proprietary, just like many other proprietary software you might want to try to reboot your machine.
  • Make sure that the resctricted-modules package installed correspond to the kernel your are running and that you can load the fglrx driver, either by issuing the command "sudo modprobe fglrx" or by verifying that the module appears in the list of loaded modules, by issuing the command "lsmod";
  • It may be necessary to establish a symbolic link for the /usr/lib/dri folder, by issuing the following command: "sudo ln -s /usr/lib/dri /usr/lib/xorg/modules/dri";
  • You may have to unload the radeon and dri modules, by issuing "sudo rmmod radeon" and "sudo rmmod dri";
  • Make sure you unload the module ati-agp by issuing "sudo rmmod ati-agp" and blacklist it in /etc/modprobe.d/blacklist.
  • Check the /etc/X11/xorg.conf in Section "Module" to have this line: Load "dri" and it is not commented.
  • Check the /var/log/Xorg.0.log file for errors. Firstly, search for (EE) (You can probably ignore any wacom entries). If you find the following then the Composite extension has been enabled (on my system it seems to be enabled by default, and must be explicitly disabled):
(II) fglrx(0): Composite extension enabled, disabling direct rendering
(WW) fglrx(0): ***********************************************
(WW) fglrx(0): * DRI initialization failed!                  *
(WW) fglrx(0): * (maybe driver kernel module missing or bad) *
(WW) fglrx(0): * 2D acceleraton available (MMIO)             *
(WW) fglrx(0): * no 3D acceleration available                *
(WW) fglrx(0): ********************************************* *

The ATI binary drivers do not support Composite. Ensure that the following entry is not in your xorg.conf:

Section "Extensions"
    Option "Composite" "true"
EndSection

If there is no Composite entry, add one specifying "false" rather than true. This was necessary on my system. If you are looking for a specific video configuration please read the driver's manual. It will tell you all about dual-head configurations for example :) .

man fglrx

If you suffer from a "white screen" overlayed onto gdm upon logout and the system seizing up, i.e., if you share the Ubuntu system with multiple users, then modify the file /etc/X11/gdm/gdm.conf and either add or change the AlwaysRestartServer option:

AlwaysRestartServer=true

6.06 (Dapper)安装指南

Install the kernel drivers. These drivers should be installed by default, but it's better to make sure they are installed. You need the package linux-$arch, where you replace $arch by the CPU architecture for the machine. This is 386 for Intel Pentium, 686 for Celeron, Pentium Pro, Pentium II, Pentium III, and Pentium 4 without Hyper-Threading. 686-smp for Pentium 4 with Hyper-Threading, or k7 or k7-smp for AMD athlon. On 64-bit systems, this may be amd64-generic, amd64-k8, amd64-k8-smp, or amd64-xeon.
sudo apt-get install linux-686
or
sudo apt-get install linux-k7
or
...

You also need to install the restricted-modules package that match ***exactly*** the kernel you are running, as well as specific required packages: (if you ran the previous command, make sure to reboot on your new kernel, otherwise this will install the wrong kernel modules !)

sudo apt-get update
sudo apt-get install linux-restricted-modules-$(uname -r)
sudo apt-get install xorg-driver-fglrx fglrx-control

Please note that the fglrx-control package is not compulsory as it seems to be buggy (but wont affect your machine in anyway :) ). If the restricted-modules package for the kernel you are running is not available (it happens sometimes with K/Ubuntu), you may have to opt for running a kernel for which this package is available or to install the drivers directly from the setup script provided by ATI (https://support.ati.com/ics/support/default.asp?deptID=894&task=knowledge&folderID=27) Once the above packages are correctly installed, run these commands:

sudo aticonfig --initial
sudo aticonfig --overlay-type=Xv
Then go back and edit xorg.conf with your favorite editor, perhaps:
gksudo gedit /etc/X11/xorg.conf
or:
kdesu kate /etc/X11/xorg.conf

and make sure that under the "Device" section, the Driver is set to

Driver "fglrx"

You will have 2 device sections related to your graphic card, one is the pre-aticonfig one, and should use the ati or radeon driver. No need to change this part as it is not used by xorg anymore. The other device section however will have to use the fglrx driver. It appears that fglrx is often unstable, at least on AMD64. System may lock on 8.25 driver. 3D accell may not work on 8.28. The 8.26.18 driver may be your best bet, as of Sept2006. Instructions for updating drivers are at: http://wiki.cchtml.com/index.php/Ubuntu_Dapper_Installation_Guide#Method_2:_Generating.2FInstalling_Ubuntu_packages_for_the_8.28.8_drivers_in_Ubuntu_Dapper_Manually But I recommend 8.26 at this time, not 8.28. Reboot. Confirm it worked, by issuing the "fglrxinfo" command:

  • fglrxinfo/glxinfo may not work properly for you via SSH and via the console when logged in as root.
$ fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: ATI Technologies Inc.
OpenGL renderer string: RADEON 9700 Generic
OpenGL version string: 2.0.5755 (8.24.8)

Source: http://wiki.cchtml.com/index.php/Ubuntu_Dapper_Installation_Guide

疑难问题解决

You may see a message Xlib: extension "XFree86-DRI" missing on display ":1.0. If the line load "dri" in Section "Module" is missing from your /etc/X11/xorg.conf then add it. However this message does not necessarily indicate a problem. If fglrxinfo gives you the following, your installation is not completed correctly:

  • fglrxinfo/glxinfo may not work properly for you via SSH and via the console when logged in as root.
$ fglrxinfo
display: :0.0  screen: 0
OpenGL vendor string: Mesa project: www.mesa3d.org
OpenGL renderer string: Mesa GLX Indirect
OpenGL version string: 1.2 (1.5 Mesa 6.4.1)

In this case, watch for these things:

  • Make sure that the resctricted-modules package installed correspond to the kernel your are running and that you can load the fglrx driver, wether by issuing the command "sudo modprobe fglrx" or by verifying that the module appears in the list of loaded modules, by issuing the command "lsmod";
  • It may be necessary to establish a symbolic link for the /usr/lib/dri folder, by issuing the following command: "sudo ln -s /usr/lib/dri /usr/lib/xorg/modules/dri";
  • You may have to deload the radeon and dri modules, by issuing "sudo rmmod radeon" and "sudo rmmod dri";
  • Make sure you deload the module ati-agp by issuing "sudo rmmod ati-agp" and blacklist it in /etc/modprobe.d/blacklist.
  • Check the /etc/X11/xorg.conf in Section "Module" to have this line: Load "dri" and it is not commented.

从ati.com安装 (最新版本驱动)

Ubuntu 7.10 (Gutsy)安装指南 =

A bit of work is required, but it is worth it if the window-resizing bug is a pain for you. See this post: http://combatwombat.7doves.com/index.php/2007/10/31/gutsy_effort_in_new_ati_driver Also contains details on fixing the MESA problem that are not mentioned below.

7.04 (Feisty)安装指南

In order to properly install the latest drivers from ati.amd.com, their executable installer needs to be converted into a .deb package file that can then be installed using the package system. In order to perform this conversion, some basic developer tools need to be installed.

  1. Install Developer Tools
  • Ensure the Universe and Restricted repositories are enabled (See AddingRepositoriesHowto for more help)
  • Run the following command to download all the necessary tools:
sudo apt-get install module-assistant build-essential debhelper debconf dh-make fakeroot libstdc++5 linux-headers-generic
  1. Create the .deb Package File
  • Navigate to the directory that contains the downloaded driver file.
  • Run the following command to perform the conversion:
bash ./ati-driver-installer-<version>.run --buildpkg Ubuntu/feisty

Note: Replace the <version> portion with the matching version number of the driver downloaded.

  • After successfully completing, there should now be several .deb package files in the directory.
  1. Install the .deb Packages
  • Run the following command to install the driver kernel module source.
sudo dpkg -i fglrx-kernel-source_<version>.deb
  • Run the following command to install the Xorg driver
sudo dpkg -i xorg-driver-fglrx_<version>.deb
  • Keep in mind that the filenames listed in the examples are not exact, as the .deb files created typically have an architecture suffix on the end of them, such as i386. Modify the filename as necessary.
  • The remaining .deb files are unnecessary and can be removed.
  1. Compile and Install the Kernel Module

Although the Xorg driver is installed, fglrx does not run without an accompanying kernel driver. In the previous step, the kernel driver's source was installed, but the source now needs to be compiled.

  • Prepare and update module-assistant so it's current.
 
sudo m-a prepare,update
  • Build and Install the kernel module
sudo m-a build,install fglrx-kernel

Note: Add the -f switch to force a rebuild if necessary.

  • Update the system's module dependencies.
sudo depmod -a
  • Remove the now-unnecessary fglrx source .deb file.
sudo rm -f /usr/src/fglrx-kernel*.deb
  • Add 'fglrx' to the modules blacklist so that Ubuntu does not try to update it.
  • Open /etc/default/linux-restricted-modules-common using your favorite editor.
  • If it is does not already exist, then edit the line starting with DISABLED_MODULES so that fglrx is included in the list.
  • Modules are separated using spaces. For example: DISABLED_MODULES="fglrx atheros"
  1. Finishing the Installation

With the driver and kernel modules now added to the system, there's a few miscellaneous tasks left to get it properly loaded.

  • If you need your xorg.conf file updated, then install and run Ubuntu's Restricted Drivers Manager (restricted-manager and linux-restricted-modules-generic).
  • Make sure your xorg.conf has the Composite extension disabled. If the following doesn't exist in your xorg.conf, add it at the bottom of the file.
Section "Extensions"
        Option  "Composite" "Disable"
EndSection
  • Reboot to load the new driver.
  1. Kernel Updates
  • Because the driver depends on a custom built kernel module, anytime you update to a new kernel you will need to recompile the driver kernel module as detailed in the Compile and Install the Kernel Module section. This will require that you also have installed the linux-headers package that corresponds to the new kernel prior to rebuilding the driver module.
  • After the module has been rebuilt and installed, you can regain direct rendering by performing the following:
  • Log into a console (ctrl+alt+f1)
  • Type the following commands:
sudo /etc/init.d/gdm stop
sudo rmmod fglrx
sudo modprobe fglrx
sudo /etc/init.d/gdm start

Note: You may ignore any errors resulting from the rmmod command. Note: KDE users will want to replace gdm with kdm

  1. Troubleshooting

With any luck, after rebooting the fglrx driver should be working properly. If not, refer to the Troubleshooting sections of this guide or the Ubuntu forums.

6.10 (Edgy)安装指南

Download what's needed:

  • Download the appropiate drivers from ati.amd.com. You will need the ATI Driver Installer, not the separate XFree86/X.org rpm packages. Save the installer into an empty directory (or at least one containing no *.deb files), since it will create some new files.
  • Make sure the universe section of the Ubuntu repositories is enabled (See the AddingRepositoriesHowto), and then run:
 sudo aptitude install module-assistant build-essential debhelper debconf dh-make fakeroot libstdc++5 linux-headers-$(uname -r)

Disable Composite Extension: In Ubuntu Edgy the Composite extension is enabled by default, however, fglrx does not yet support Composite with DRI. To disable Composite you must edit the /etc/X11/xorg.conf file, so add these lines at the end of xorg.conf:

Section "Extensions"
        Option  "Composite" "Disable"
EndSection

Blacklist old fglrx module from linux-restricted-modules As ubuntu's linux-restricted-modules package includes the fglrx module from an old driver version (8.28.8), we have to blacklist this module to make sure the new kernel module which is needed by the new driver will be used instead.

gksudo gedit /etc/default/linux-restricted-modules-common
or, on Kubuntu,
kdesu kate /etc/default/linux-restricted-modules-common

We need to add fglrx (only! don't remove anything!) to this:
DISABLED_MODULES="somemodule2 fglrx"

Next,

  • Perform the following commands (where <version> is the version number of the installer):
sudo ln -sf bash /bin/sh
bash ./ati-driver-installer-<version>.run --buildpkg Ubuntu/edgy
sudo ln -sf dash /bin/sh
You may need to wait a few mintues for this to complete.

This will create a number of .deb files in the current directory. next,

sudo dpkg -i *.deb

next you build the kernel module - (also note, this has to be done every time you upgrade the kernel)

sudo module-assistant prepare,update
sudo module-assistant build,install fglrx-kernel (or module-assistant -f to force a rebuild if needed)
sudo depmod
sudo rm -f /usr/src/fglrx-kernel*.deb

now see Modifying xorg.conf. Skip the "lrm-manager" and "depmod" commands. After a reboot, confirm that it worked, by issuing the "fglrxinfo" command, as mentioned elsewhere on this page. Look at the troubleshooting sections to confirm if the output of the command is correct.

6.06 (Dapper)安装指南

  1. Download the apropiate drivers from ati.com. You will need the ATI Driver Installer, not the seperate XFree86/X.org rpm packages. Save the installer into an empty directory (or at least one containing no *.deb files), since it will create several new files.
  2. Make sure the universe section of the Ubuntu repositories is enabled (See the AddingRepositoriesHowto)
  3. Perform the following commands (where <version> is the version number of the installer):
    $ sudo apt-get install fakeroot gcc-3.4 module-assistant build-essential debhelper
    $ fakeroot sh ./ati-driver-installer-<version>.run --buildpkg Ubuntu/edgy
    You may need to wait a few mintues for this to complete.
    

This will create a number of .deb files in the current directory. note: If you run Dapper, replace "edgy" (above) with "dapper".

1 sudo dpkg -i *.deb
2 sudo module-assistant prepare,update
3 sudo module-assistant build,install fglrx-kernel
4 sudo depmod
note: You need to repeat steps 2-4 - building the kernel module - 
everytime you upgrade the kernel.

Seveas Repository

You do not need to take all these steps if you run an up-to-date Dapper installation on a 32 bit system. Dennis Kaarsemaker provides these packages in a repository. Add the following line to /etc/apt/sources.list:

deb http://mirror.ubuntulinux.nl/ dapper-seveas drivers

(There also is breezy-seveas for the Breezy users) Then you can simply install the ubuntu-fglrx-$arch (see above for the meaning of $arch) package. /!\ The fglrx driver on Dapper (8.26.18-1) can cause rss-glx screensavers to run very slowly.

修改xorg.conf

When you install from ati.com drivers or the dapper-seveas repository, you still need to change xorg.conf and add the fglrx module to /etc/modules as described under "Ubuntu provided drivers". There are scripts from ATI that may or may not work for you. They will backup xorg.conf before modifying it.

$ sudo aticonfig --initial
$ sudo aticonfig --overlay-type=Xv

/!\ Whether you install manually or from dapper-seveas, you MUST disable the Ubuntu-provided fglrx by performing these actions:

  • Disable fglrx in /etc/default/linux-restricted-modules-common
  • Run sudo /sbin/lrm-manager
  • Run sudo depmod -a
  • Reboot

There is a forum thread on installing ATI drivers from ati.com. Look there if you have trouble, and if your problem isn't already solved there, post a question.

疑难问题解决

  • If you run Edgy, you might get something like ./ati-installer.sh: 156: Syntax error: Bad substitution while trying to run the installer. This is because Edgy replaced the Shell sh with dash. Here you can see my very brutal solution (take care!):
$ sudo mv /bin/sh /bin/sh.old
$ sudo ln -s /bin/bash /bin/sh
$ fakeroot sh ./ati-driver-installer-<version>.run --buildpkg Ubuntu/edgy
$ sudo rm /bin/sh
$ sudo mv /bin/sh.old /bin/sh
  • At the moment (Aug 14th, 2006), the installer can only build packages for dapper, not edgy. That's no problem, it'll still work. If the driver still doesn't run correctly, you might repeat the same steps like above, but with --extract instead of --buildpkg Ubuntu/dapper:
  • With 8.30.3 (Nov 08th, 2006) --buildpkg Ubuntu/edgy worked. -- i cannot confirm that, i have 6.10 and it still doesn't work (error in line 999)
$ sudo mv /bin/sh /bin/sh.old
$ sudo ln -s /bin/bash /bin/sh
$ fakeroot sh ./ati-driver-installer-<version>.run --extract
$ sudo rm /bin/sh
$ sudo mv /bin/sh.old /bin/sh

A new directory appears. Copy the X.org drivers where they belong to:

$ sudo cp fglrx-install/x710/usr/X11R6/lib/modules/drivers/fglrx_drv.so /usr/lib/xorg/modules/drivers/fglrx_drv.so
$ sudo cp fglrx-install/x710/usr/X11R6/lib/modules/linux/libfglrxdrm.so /usr/lib/xorg/modules/linux/libfglrxdrm.so

Ok, that's it. Time to clean up:

$ rm -rf fglrx-install fglrx-installer_8.27.10-1_i386.changes

Good Luck!

更多疑难问题

  • If after everything you still get indirect rendering when typing "fglrxinfo" run:
$ depmod -ae

Now reboot and hope for the best.

  • If you're using an AMD64 configuration and your Xorg.0.log mentions a 'duplicate symbol rol_long' message, comment out the 'Load "int10"' line in the Module section of /etc/X11/xorg.conf
  • If you are using an ATI Radeon Xpress 200M on an AMD64 CPU and the fglrx driver crashes with a blank screen on startup, change your BIOS settings to use the UMA+Sideport Video Mode with 128MB of Shared Video Memory. See http://ensode.net/ati_radeon_xpress_200m_linux.html
  • If you are going to compile 3d applications, you will want to install the `fglrx-driver-dev` package
  • The fglrx doesn't support 16 bit colour on some chip sets, if you have problems with X locking up on boot try setting this in your xorg.conf file to 24
  • If you are having problems related to DRI or 3d acceleration and the following lines show up in your /var/log/Xorg.0.log
(WW) fglrx(0): Kernel Module version does *not* match driver. (EE) fglrx(0): incompatible kernel module detected - HW accelerated OpenGL will not work then make sure you installed either linux-$arch or ubuntu-fglrx-$arch.

Another reason for either this error message, or incorrect driver information when running fglrxinfo (reports that the mesa driver is still being used) could be that the (K)Ubuntu fglrx drivers were not uninstalled before installing the ATI driver, or that the restricted-modules package is installed. To fix this issue, start Adept or Synaptic and remove the fglrx packages supplied with (K)Ubuntu as well as the restricted-modules package. Quit KDE and go to a console.

$ sudo modprobe -r fglrx
$ gksudo gedit /etc/X11R6/xorg.conf
or
$ kdesu kate /etc/X11R6/xorg.conf

Change the driver for the device to 'ati' instead of fglrx to use the standard Xorg supplied driver.

$ startx

Now re-run the ATI driver installation

  • If there are no obvious error messages in Xorg.0.log but 3D acceleration is still not working, you should look at glxinfo output in debug mode:
LIBGL_DEBUG=verbose glxinfo

Possibly there are some errors in the beginning concerning not found drivers in /usr/X11R6/lib/modules/dri/. This could be the case if you used the driver from ATI and are now using again the provided fglrx driver. ATI's fglrx driver installs a script in /etc/X11/Xsession.d/10fglrx which changes the search path for libraries, causing 3D-related errors. In this case just remove the script:

$ sudo rm /etc/X11/Xsession.d/10fglrx
  • Sometimes 2D acceleration with xv is not enabled. You need this for smooth video playback among other things. In this case you should check if your /etc/X11/xorg.conf contains the line Option "VideoOverlay" "on" in the corresponding section:
Section "Device"
        Identifier      "ATI Radeon"
        Driver          "fglrx"
        Option          "VideoOverlay" "on"
        BusID           "PCI:1:0:0"
EndSection
  • You might want to install the fglrx-control package, which provides a control panel to configure graphics card options such as dual-head display (two monitors) and TV out.
  • Some people might experience random hangups. I heard that this might help: Edit /etc/X11/xorg.conf and add the following options in the corresponding section:
Section "Device"
   Identifier  "ATI Technologies, Inc. ATI Default Card"
   Driver      "fglrx"
   Option       "no_accel" "no"
   Option       "no_dri" "no"
   Option       "DynamicClocks" "on"
   Option       "mtrr" "on"
   Option       "DesktopSetup" "Single"
   Option       "ScreenOverlap" "0"
   Option       "Capabilities" "0x00000000"
   Option       "CapabilitiesEx" "0x00000000"
   Option       "VideoOverlay" "on"
   Option       "OpenGLOverlay" "off"
   Option       "CenterMode" "off"
   Option       "PseudoColorVisuals" "off"
   Option       "Stereo" "off"
   Option       "StereoSyncEnable" "1"
   Option       "FSAAEnable" "no"
   Option       "FSAAScale" "1"
   Option       "FSAADisableGamma" "no"
   Option       "FSAACustomizeMSPos" "no"
   Option       "FSAAMSPosX0" "0.000000"
   Option       "FSAAMSPosY0" "0.000000"
   Option       "FSAAMSPosX1" "0.000000"
   Option       "FSAAMSPosY1" "0.000000"
   Option       "FSAAMSPosX2" "0.000000"
   Option       "FSAAMSPosY2" "0.000000"
   Option       "FSAAMSPosX3" "0.000000"
   Option       "FSAAMSPosY3" "0.000000"
   Option       "FSAAMSPosX4" "0.000000"
   Option       "FSAAMSPosY4" "0.000000"
   Option       "FSAAMSPosX5" "0.000000"
   Option       "FSAAMSPosY5" "0.000000"
   Option       "UseFastTLS" "0"
   Option       "BlockSignalsOnLock" "on"
   Option       "UseInternalAGPGART" "no"
   Option       "ForceGenericCPU" "no"
   Option       "KernelModuleParm" "agplock=0"
   Option       "PowerState" "1"
   BusID       "PCI:1:0:0"
EndSection
  • On laptops, in /etc/default/acpi-support, consider setting
ENABLE_LAPTOP_MODE=true

The comments in that file mention that this setting can cause mysterious hangs, but battery life is considerably improved. If you don't mind tinkering, you can get an ACPI capable laptop boot in lower power mode, as described here: BinaryDriverHowto/Fglrx lowpower Note: fglrx: version magic '2.6.17-10-generic SMP mod_unload 586 REGPARM gcc-3.3' should be '2.6.17-10-generic SMP mod_unload 586 REGPARM gcc-4.1' - if you get errors similar to this (check via dmesg|grep -i fglr) and maybe if modprobe fglrx returns "FATAL: Error running install command for fglrx" then this means you did not compile the fglrx kernel module using the correct GCC version. In this example, gcc3.3 was used, while gcc4.1 is required.

To fix:
sudo aptitude install gcc-4.1
sudo ln -s /usr/bin/gcc-4.1 /usr/bin/gcc

Now you should rebuild the fglrx kernel module. 
For example: 
sudo module-assistant -f build,install fglrx-kernel
If you need to remove the fglrx source code before rebuilding for some reason, you can try:
 sudo apt-get remove fglrx-kernel-source fglrx-kernel fglrx-kernel-$(uname -r)
you'll then need to again get the fglrx deb files (from the ATI installer) before you can build again.

after all this, reboot.

  • Check the AGP aperture size.
 $ dmesg | grep aperture
 [    30.1234] agppart: AGP aperture is 512M @ 0x0000000
 or
 [    30.1234] agppart: AGP aperture is 4M @ 0x0000000
 

I have a Asus K8S-MX and a Radeon R350 (Radeon 9800 pro). I just had 4M. There is a know bug in the sis760 driver. I found some information here: https://bugs.launchpad.net/ubuntu/+source/linux-source-2.6.20/+bug/34144

the AGP aperture is only 4M this is never going to be big enough for the radeon driver
you should check your BIOS to see if you can increase it.. that or the sis driver is getting the wrong size somehow..

a link to https://bugs.launchpad.net/ubuntu/+source/linux-restricted-modules-2.6.20/+bug/45942 gives this 'solution' I just renamed 'sis-agp.ko' to 'sis-agp.ko.bak' and everything worked. I did the same and now I have xgl and beryl running.

相关链接

ATI HD系列显卡驱动安装简便方法(只有1条命令)

作者:caryloo

登陆http://support.amd.com/us/gpudownload/Pages/index.aspx 选择自己的显卡型号(HD)系列的驱动程序

以Linux(x86)的平台为例,分别点击 “Linux(x86)" --> "Radeon"-->"ATI Radion HD 4350 Series"--->Go

下载的文件为ati-driver-installer-9-7-x86.x86_64.run,放到你的home文件夹或者其他某个文件夹里

在终端模式下进入该文件夹,运行以下命令:

sudo sh ati-driver-installer-9-7-x86.x86_64.run

即可进入ATI显卡的图形安装模式。顺利安装完成以后,重新启动计算机,就能实现compiz里所有能够实现的特效了。