ubuntu開機自動關閉獨顯,使用集成顯卡


我的本子是聯想y470p-ise,因為是有雙顯卡,而ubuntu在開機后,雙顯卡默認是同時工作,會產生巨大的發熱,導致很不爽。而且在ubuntu下基本我也不用獨顯,所以有開機關閉獨顯的需求。

ubuntu自己就就可以驅動我的顯卡,可以通過cat來查看顯卡信息

elta@elta:~$ sudo cat /sys/kernel/debug/vgaswitcheroo/switch
[sudo] password for elta: 
0:IGD:+:Pwr:0000:00:02.0
1:DIS: :Off:0000:01:00.0

IGD是集顯,DIS是獨顯。現在可以看到我集成顯卡的狀態是Pwr,就是開啟;獨顯的狀態是off,就是關閉。

 

以前知道關閉集顯的命令,加了個腳本,每次開機要手動敲(因為要sudo權限運行,導致我之前一直都不知道怎么給它加成開機啟動)。現在創建了一個系統服務,讓它每次可以開機自動運行。

我就簡單的貼一下代碼吧。

文件路徑為:elta@elta:~$ cat /etc/init.d/graphic

#!/bin/sh


PATH=/sbin:/bin:/usr/sbin:/usr/bin
NAME=graphic
DESC="config graphic to use iga only"

case "$1" in
  igd)
        echo "Turn on all graphic"
        (echo ON  > /sys/kernel/debug/vgaswitcheroo/switch && echo "done") || echo "Failed"
        echo "Use IGD"
        (echo DIGD > /sys/kernel/debug/vgaswitcheroo/switch && echo "done ") || echo "Failed"
        sleep 0.2
        echo "Turn DIS OFF"
        (echo OFF  > /sys/kernel/debug/vgaswitcheroo/switch && echo "done") || echo "Failed"
        sleep 0.2
        cat /sys/kernel/debug/vgaswitcheroo/switch
        ;;
  both)
        echo "Turn on all graphic"
        (echo ON  > /sys/kernel/debug/vgaswitcheroo/switch && echo "done") || echo "Failed"
        echo "Use DIS"
        (echo DDIS > /sys/kernel/debug/vgaswitcheroo/switch && echo "done ") || echo "Failed"
        sleep 0.2
        echo "Use IGD"
        (echo DIGD > /sys/kernel/debug/vgaswitcheroo/switch && echo "done ") || echo "Failed"
        sleep 0.2
        cat /sys/kernel/debug/vgaswitcheroo/switch
        ;;
  status)
        cat /sys/kernel/debug/vgaswitcheroo/switch
        ;;
  stop)
        ;;
  *)
        echo "Usage: $NAME {igd|both|status}" >&2
        exit 1
        ;;
esac

exit 0

通過創建上面的文件,就創建了一個叫graphic的系統服務。這個名字是可以隨便改的。然后我們通過運行

elta@elta:~$ sudo service graphic start
Use IGD
done
Turn DIS OFF
done
0:IGD:+:Pwr:0000:00:02.0
1:DIS: :Off:0000:01:00.0

但是現在仍然是需要手動的,為了實現自動運行,我們在文件/etc/rc.local中加入服務啟動命令service graphic start ,以后每次開機系統就會自動關閉獨顯了。

 

下面是我的rc.local文件

elta@elta:~$ cat /etc/rc.local 
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.

service graphic igd

exit 0

 

修改記錄:

13.08.30:修改graphic文件和rc.local文件內容,修改了命令名稱,添加了both命令,用戶恢復雙顯卡同時使用,但這並沒有實際意義,因為active的顯卡仍然是集顯。但是發現了一個問題,我用的內核是3.8.0-25,這個內核無法切換到只用獨顯,獨顯的active沒有辦法啟用。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM