linux 4.6 Kernel 安裝 nvidia 驅動 340 / 304 版

其他Linux/Unix/BSD/OSX等发行版讨论
回复
头像
torachiyo
帖子: 81
注册时间: 2015-11-29 8:32
系统: Kali Linux

linux 4.6 Kernel 安裝 nvidia 驅動 340 / 304 版

#1

帖子 torachiyo » 2016-07-31 22:05

linux 4.6 Kernel 安裝 nvidia 驅動 340.96 版

debian / Kali

nvidia 340.96 硬體支援
http://www.geforce.com.tw/drivers/results/95165
GeForce 8 Series - GeForce 800 Series

有些舊卡比如 geforce 210 ... 最高只能裝 nvidia 340.96 版的驅動

但是安裝 nvidia 340.96 版的驅動在 4.6 kernel 無法完成安裝, 原因就是 kms 在 4.6 kernel 下無法編譯.

所以 kms 的原始碼必須在安裝後打補釘

不管是那一版的 debian 或 Kali 把源換到有 nvidia 340.96 的套件庫. 例如 debian jessie
先備份 /etc/apt/sources.list 或 /etc/apt/sources.list.d/official-package-repositories.list
然後把 sources.list 換成 deb http://ftp.us.debian.org/debian/ jessie main contrib non-free

代码: 全选

sudo sh -c 'echo "deb http://ftp.us.debian.org/debian/ jessie main contrib non-free" > /etc/apt/sources.list.d/official-package-repositories.list'
清除 apt cache 然後重建

代码: 全选

sudo rm /var/lib/apt/lists/*
sudo apt-get update
安裝方法照舊
NVIDIA 安裝方法:

代码: 全选

sudo apt-get install nvidia-driver nvidia-settings nvidia-xconfig
NVIDIA Optimus 安裝方法:

代码: 全选

sudo apt-get install bumblebee-nvidia primus nvidia-settings mesa-utils
執行後會無法完成安裝設定
這時候在kms原始碼打補釘

代码: 全选

cd /usr/src/
sudo wget https://github.com/Mint-Fans/linux-package/raw/kali/nvidia-340.96-patch-4.6.diff
sudo patch -p0 -i nvidia-340.96-patch-4.6.diff
sudo rm nvidia-340.96-patch-4.6.diff
然後修復安裝

代码: 全选

sudo apt-get -f install
如果執行 sudo apt-get -f install 沒有編譯kms, 執行下面指令編譯並安裝 nvidia kms

代码: 全选

sudo dkms install -k $(uname -r) -m nvidia-current -v 340.96
安裝後的設定:
NVIDIA

代码: 全选

nvidia-xconfig
然後重新啟動系統, 以完成安裝.

NVIDIA Optimus

代码: 全选

sudo gpasswd -a $USER bumblebee
sudo systemctl enable bumblebeed.service
sudo sed -i 's/Exec=nvidia-settings/Exec=sudo optirun -b none nvidia-settings -c :8/g' /usr/lib/nvidia/current/nvidia-settings.desktop
然後重新啟動系統, 以完成安裝.

成果 :Haha
NVIDIA Optimus Geforce 820M + Intel HD
图片
NVIDIA Geforce 210
图片
头像
torachiyo
帖子: 81
注册时间: 2015-11-29 8:32
系统: Kali Linux

Re: linux 4.6 Kernel 安裝 nvidia 驅動 340 / 304 版

#2

帖子 torachiyo » 2016-08-01 19:28

linux 4.6 Kernel 安裝 nvidia 驅動 304.131 版

debian / Kali

nvidia 304.131 硬體支援
http://www.geforce.com.tw/drivers/results/95154
GeForce 6 Series - GeForce 600 Series

NVIDIA Optimus 從 GeForce 200M 開始, 雖然 nvidia 304版有支援, 但套件庫沒有 bumblebee.

nvidia 340版也支援最早的 NVIDIA Optimus, 所以 NVIDIA Optimus 乾脆就裝 340 版即可.

由於依賴問題無法直接用 apt 安裝, 所以在4.6核心下重新編譯 nvidia 驅動與修正kms原始碼. glx-alternative 替換成0.5.1版.

預先安裝依賴

代码: 全选

sudo apt-get install libx11-6 libxext6 libxv1 libxvmc1 dkms kmod pkg-config libgdk-pixbuf2.0-0 libglib2.0-0 libgtk2.0-0 libpango-1.0-0 libxxf86vm1 debconf libvdpau1 x11-common
下載與安裝驅動
==================
64-bit
==================
驅動

代码: 全选

wgte https://github.com/Mint-Fans/linux-package/raw/kali/nvidia-304-amd64.tar.gz
tar zxvf nvidia-304-amd64.tar.gz
cd nvidia-304-amd64
sudo dpkg -i nvidia-installer-cleanup_20120630+3_amd64.deb
sudo dpkg -i nvidia/*.deb
extra(可選): opencl, nvidia-detect, cuda
https://github.com/Mint-Fans/linux-pack ... tra.tar.gz

==================
32-bit
==================
驅動

代码: 全选

wgte https://github.com/Mint-Fans/linux-package/raw/kali/nvidia-304-i386.tar.gz
tar zxvf nvidia-304-i386.tar.gz
cd nvidia-304-i386
sudo dpkg -i nvidia-installer-cleanup_20120630+3_i386.deb
sudo dpkg -i nvidia/*.deb
extra(可選): opencl, nvidia-detect, cuda
https://github.com/Mint-Fans/linux-pack ... tra.tar.gz


安裝完成後記得執行:

代码: 全选

sudo nvidia-xconfig
重開機完成安裝

成果
GeForce 6800GS
图片

GeForce 7025
图片

在沒硬體支援清單內的 GeForce 210 也能裝 304.131版驅動 :Haha
图片
头像
torachiyo
帖子: 81
注册时间: 2015-11-29 8:32
系统: Kali Linux

Re: linux 4.6 Kernel 安裝 nvidia 驅動 340 / 304 版

#3

帖子 torachiyo » 2016-08-01 19:51

安裝 nVidia 驅動後 Plymouth 主題修復

NVIDIA 顯示卡 (不含 NVIDIA Optimus)

方法一:

/etc/default/grub 加入這三行
GRUB_GFXPAYLOAD_LINUX="keep"
GRUB_VIDEO_BACKEND="vbe"
GRUB_GFXMODE="1280x1024x32" //螢幕大小自行修改

GRUB_CMDLINE_LINUX_DEFAULT 改為 GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

代码: 全选

sudo sh -c "echo FRAMEBUFFER=y > /etc/initramfs-tools/conf.d/splash"
sudo update-initramfs -u
sudo update-grub

方法二:

代码: 全选

sudo apt-get install plymouth-x11
/etc/default/grub
加入
GRUB_GFXPAYLOAD_LINUX=auto
GRUB_GFXMODE=xxx 改為 # GRUB_GFXMODE=xxx

代码: 全选

sudo update-grub
头像
torachiyo
帖子: 81
注册时间: 2015-11-29 8:32
系统: Kali Linux

Re: linux 4.6 Kernel 安裝 nvidia 驅動 340 / 304 版

#4

帖子 torachiyo » 2016-08-02 9:24

nvidia 361.45 硬體支援
http://www.geforce.com.tw/drivers/results/103306
GeForce 400 Series - GeForce 900 Series

debian sid 套件相關說明
https://packages.debian.org/sid/nvidia-driver
Building the kernel module has been tested up to Linux 4.7

實際測試 Linux 4.6 核心也能用 :-)

debian 版本 nvidia-driver (361.45.18-2) 2016/08/02

kernel module 多了一個 nvidia-current-modeset
不知是不是取代 modeset 修復 plymouth 的, 不過 NVIDIA Optimus 應該用不到 :-D
图片
回复