UPDATE 16/01/2014: If you’re using Kali Linux v1.0.6 with Kernel 3.12-6, there’s yet no solution to suite everyone’s need. I am working hard to find a solution and a generic method of implementation that can be followed easily by everyone. If you come across a solution, please let me know. Following guide works flawlessly with Kernel v3.7.
I always had issues with ATI/Intel gfx cards in pretty much every version of Linux I’ve used. Kali is no different. Following guide would help to resolve the problem for everyone with similar issues. Many thanks to ‘Sani Morphic’ for his original post. Also big thanks goes to “http://wiki.debian.org/ATIProprietary” for their updates on Linux Header and ATIEventSD notes. This post will guide you through installation of AMD ATI Driver in Kali Linux 1.x.
This guide (Install AMD ATI Driver (fglrx) in Kali Linux 1.x) is part of a series that guides readers on How to install FGLRX, AMD APP SDK, CAL++ and Pyrit in Kali Linux. The idea is to install correct drivers in Kali Linux for your GPU and use CPU+GPU combination with Pyrit to make raw data crunching faster. An example would be to utilize this combined processing power to crunch though WPA/WPA2 capture file to find Wifi password.
Check AMD APP SDK Installation
Check if AMD APP SDK is installed. If not installed, follow this guide to install it.
How to install AMD APP SDK in Kali Linux?
Check CAL++ Installation
Check if CAL++ is installed. If not installed, follow this guide to install it.
How to install CAL++ in Kali Linux?
How to install Pyrit in Kali Linux?
Check if Pyrit is installed. If not installed, follow this guide to install it.
How to install Pyrit in Kali Linux
Readers, please follow this series in the following order:
- Install AMD ATI Driver (fglrx) in Kali Linux 1.x
- How to install AMD APP SDK in Kali Linux?
- How to install CAL++ in Kali Linux?
- How to install Pyrit in Kali Linux?
Install AMD ATI Driver (fglrx) in Kali Linux
Following instructions are for Kali Linux 1.0
lsb_release -a
Output:
No LSB modules are available.
Distributor ID: Debian
Description: Debian GNU/Linux Kali Linux 1.0
Release: Kali Linux 1.0
Codename: n/a
Step 1 (remove old or unused drivers and fix source file)
apt-get remove --purge fglrx fglrx_* fglrx-amdcccle* fglrx-dev* xorg-driver-fglrx
Check your /etc/apt/sources.list. If it’s anything different to the following, you need to fix it.
There’s another post with how to update your srouces.list ..
How to add official Kali Linux Repositories?
# deb cdrom:[Debian GNU/Linux 7.0 _Kali_ - Official Snapshot amd64 LIVE/INSTALL Binary 20130315-11:02]/ kali contrib main non-free
# deb cdrom:[Debian GNU/Linux 7.0 _Kali_ - Official Snapshot amd64 LIVE/INSTALL Binary 20130315-11:02]/ kali contrib main non-free
deb http://http.kali.org/kali kali main non-free contrib
deb-src http://http.kali.org/kali kali main non-free contrib
## Security updates
deb http://security.kali.org/kali-security kali/updates main contrib non-free
deb-src http://security.kali.org/kali-security kali/updates main contrib non-free
Step 2 (update with apt-get)
apt-get update
Stop: NVIDIA users after driver installation and cuda/pyrit related issues go here: How to Install Nvidia Kernel Module Cuda and Pyrit in Kali Linux
Also those who would like to use Graphics card processing power to crunch data (such as cracking wii password faster) see the following posts:
- Helpful ATIconfig fglrx commands
- How to install Pyrit in Kali Linux?
- How to install CAL++ in Kali Linux?
- How to install AMD APP SDK in Kali Linux?
Step 3 (install linux headers and necessary drivers)
apt-get install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,')
apt-get install fglrx-driver fglrx-control fglrx-glx fglrx-atieventsd fglrx-modules-dkms
apt-get install fglrx-glx-ia32
At this point, you will see the following error message. This is why I had to write this guide to fix and patch kernel which allows you to install official AMD Catalyst Center.
...
Error! Bad return status for module build on kernel: 3.7-trunk-amd64 (x86_64)
Consult /var/lib/dkms/fglrx/12-6+point/build/make.log for more information.
Step 4 (download patch and patch)
Now we need to patch the kernel
Download fglrx-3.7.patch (I’ve personally used this path but users are advised to check/verify it before installing.)
Download and “fglrx-3.7.patch“ and copy to /root
Copy the file fglrx-modules-dkms_1%3a12-6+point-3_amd64.deb
(check if amd64 architecture or i386, based on which version you’re using file-names might be slightly different)
to /root
from
/var/cache/apt/archives
cp /var/cache/apt/archives/fglrx-modules-dkms_1%3a12-6+point-3_amd64.deb /root
Step 5 (patch and repack)
At this point we are making folders and unpacking the downloaded .deb file so that we can patch it and re-pack it.
First we make a directory so that all of our work is in that folder. Don’t want to mess up /root folder
mkdir -p extract/DEBIAN
Now unpack .deb file.
dpkg-deb -x fglrx-modules-dkms_1%3a12-6+point-3_amd64.deb extract/
dpkg-deb -e fglrx-modules-dkms_1%3a12-6+point-3_amd64.deb extract/DEBIAN
Copy patch to correct directory and patch it.
cp fglrx-3.7.patch extract/usr/src/fglrx-12-6+point/
cp Downloads/fglrx-3.7.patch extract/usr/src/fglrx-12-6+point/
cd extract/usr/src/fglrx-12-6+point/
patch -p0 < fglrx-3.7.patch
You will see the following output
patching file firegl_public.c
Hunk #1 succeeded at 3890 (offset -2 lines).
Hunk #2 succeeded at 3920 (offset -2 lines).
Hunk #3 succeeded at 3935 (offset -2 lines).
Hunk #4 succeeded at 3944 (offset -2 lines).
Hunk #5 succeeded at 3982 (offset -2 lines).
Hunk #6 succeeded at 4013 (offset -2 lines).
Hunk #7 succeeded at 4023 (offset -2 lines).
Hunk #8 succeeded at 4044 (offset -2 lines).
Once patching is done, we need to re-build the package, pack it again for installation.
cd /root
mkdir build
dpkg-deb -b extract/ build/
dpkg-deb will show you the following output. This also creates the necessary .deb packages.
dpkg-deb: building package `fglrx-modules-dkms' in `build//fglrx-modules-dkms_1%3a12-6+point-3_amd64.deb'.
Time to install our newly patched .deb package.
cd build
dpkg -i *.deb
And the final output is as follows:
...
DKMS: install completed.
Now we generate a xorg configuration file which will be in /etc/X11
folder.
aticonfig --initial -f
Step 6 (radeon and reboot)
Almost there. AMD cards needs the following parameters passed into grub.cfg
during boot. Let’s do that: Edit the grub.cfg
file:
leafpad /boot/grub/grub.cfg
you see this:
### BEGIN /etc/grub.d/10_linux ###
menuentry 'Debian GNU/Linux, with Linux 3.7-trunk-amd64' --class debian --class gnu-linux --class gnu --class os {
load_video
insmod gzio
insmod part_msdos
insmod ext2
set root='(hd0,msdos5)'
search --no-floppy --fs-uuid --set=root 7f79eea2-1668-407f-b7ed-d5613fecd26c
echo 'Loading Linux 3.7-trunk-amd64 ...'
linux /boot/vmlinuz-3.7-trunk-amd64 root=UUID=7f79eea2-1668-407f-b7ed-d5613fecd26c ro initrd=/install/gtk/initrd.gz quiet
echo 'Loading initial ramdisk ...'
initrd /boot/initrd.img-3.7-trunk-amd64
}
add radeon.modeset=0
in the end of the following line
linux /boot/vmlinuz-3.7-trunk-amd64 root=UUID=7f79eea2-1668-407f-b7ed-d5613fecd26c ro initrd=/install/gtk/initrd.gz quiet
So the line above becomes this:
linux /boot/vmlinuz-3.7-trunk-amd64 root=UUID=7f79eea2-1668-407f-b7ed-d5613fecd26c ro initrd=/install/gtk/initrd.gz quiet radeon.modeset=0
Note: fee64a58-2e36-43f5-962d-8c33f936d452
UUID would be different for every PC. Use your one here.
Save and exit. Then reboot.
reboot
Enjoy your AMD ATI fglrx driver in Kali Linux 3.7-trunk Kernel.
No comments:
Post a Comment