首先,vga_switcheroo是内核提供的组件,但有这一组件(或者说有下文提到的文件)并不代表其在您的机器上能够正常使用。此外根据,vga_switcheroo仅当KMS开启状态下才可用,所以请首先装好显卡的开源驱动并保持KMS开启。

一、查看当前双显卡使用状态:

终端中输入:

cat /sys/kernel/debug/vgaswitcheroo/switch

这步是要读出/sys/kernel/debug/vgaswitcheroo/switch这一文件的信息。不出意外您可能会看到类似下面(但不完全相同)的内容:

0:IGD:+:Pwr:0000:00:02.0

1:DIS: :Off:0000:01:00.0

其中“IGD”表示集成显卡,“DIS”表示独立显卡;加号(“+”)表示当前用作输出(或称“连接上”(connected))的显卡;“Pwr”代表正在供电,“Off”代表已关闭。如果看到两个显卡都显示“Pwr”,则说明都在消耗着电能。

二、暂时性的关闭某一显卡

注意:下面和内核的交互操作是通过操作/sys/kernel/debug/vgaswitcheroo/switch这个“虚拟文件”实现的,而这一文件每次开机会重新创建,所以您对其所做的修改都是暂时的,重启后会失效。

首先切换到root用户:

su

这步通常是必要的,不可用sudo取代(似乎是因为sudo如果不经设置,是没有“>”操作符权限的)。

打开所有的显卡:

echo ON > /sys/kernel/debug/vgaswitcheroo/switch

这步是给所有显卡加电,使其运行,但不改变当前输出的状态。

切换到集成显卡:

echo IGD > /sys/kernel/debug/vgaswitcheroo/switch

这步表示使用集成显卡作为输出(即“连接上”集成显卡)。同理,将其中的“IGD”换成“DIS”可使用独立显卡。

关闭未使用的显卡:

echo OFF > /sys/kernel/debug/vgaswitcheroo/switch

最后可以再运行一下cat /sys/kernel/debug/vgaswitcheroo/switch,看一看自己的显卡状态。

三、永久性的关闭某一显卡

解决重启后失效的办法就是每次开机时都执行一遍需要的命令,而且越早执行越好。对于这个问题,不同的发行版有不同的解决方案。例如在我所用的Arch Linux中有一个/etc/rc.local文件,把需要开机执行的命令写进去即可。对于ubuntu,可以参考ubuntu documentation上的一个启动脚本。我没有尝试过加环境变量是否有用,但似乎也应该是可以的。

linux开机禁用vga设备,用vga_switcheroo在Linux下(开启KMS)彻底关闭某一可切换显卡的简单教程...相关推荐

  1. linux开机到登陆的流程图,1-描述linux开机到登陆界面的启动过程.docx

    1-描述linux开机到登陆界面的启动过程详解课件 简要描述linux系统从开机到登陆界面的启动过程(面试用)简述:1.开机BIOS自检2.MBR引导3.grub引导菜单4.加载内核kernel5.启 ...

  2. 闲聊linux中的input设备(1)Linux中的设备大家族

    用过linux的哥们都知道,linux所有的设备都是以文件的形式实现的,要访问一个设备,我们只需要以open.read.write的形式对设备的进行操作就可以了.在linux系统的/dev目录下,罗列 ...

  3. linux系统禁用usb设备

    为了保护数据不被泄漏,我们使用软件和硬件防火墙来限制外部未经授权的访问,但是数据泄露也可能发生在内部. 为了消除这种可能性,机构会限制和监测访问互联网,同时禁用 USB 存储设备. 在本教程中,我们将 ...

  4. linux bios 禁用usb设备,当USB在UEFI / BIOS中工作时,为什么USB在Linux中不工作?

    作为背景,我刚刚用现代硬件制造了一台新机器,包括: AMD FX-8350 技嘉GA-990FXA-UD3主板 16GB RAM 英伟达GTX 650 Ti 金士顿固态硬盘 鉴于此,我尝试在SSD上安 ...

  5. linux探针禁用光驱设备,使用devcon禁用任何硬件设备,比如光驱,软驱,摄像头等等 - 死性不改's Blog~...

    @echo off del /q %windir%\禁用摄像头.bat del /q %windir%\启用摄像头.bat del /q %temp%\link1.vbs del /q %temp%\ ...

  6. linux开机自启动tty设备,在 tty 里添加一个开机自启动的任务管理器

    每当感觉到系统卡的时候,最好的方法无外乎进入 tty,登入,打开一个 top 监视.可是每次到了需要的时候才去开,打开的效率自然不敢恭维.于是便想,每次开机的时候,记起来就跑到 tty 下面去先开起来 ...

  7. linux 怎么查看usb设备端口号,嵌入式Linux USB设备检测端口和地址

    我发展我的板USB应用.它有两个USB端口.当我插上USB驱动器在他们每个人我得到控制台以下消息:嵌入式Linux USB设备检测端口和地址 端口1: usb 1-1: new high speed ...

  8. linux系统制作裸设备,在unix下和linux下创建裸设备总结

    (一)AIX下创建裸设备: 1.创建VG卷组: #mkvg -S -y'datavg' -s'128'hdisk1 hdisk2.... 其中:-S表示创建scalable-type的VG:-y表示创 ...

  9. linux开机自动打开全屏,如何修改Linux开机启动logo并使其全屏显示?

    1.制作开机启动logo的图片(my_image.png  ==>  logo_linux_clut224.ppm),要求图片的分辨率要和屏幕大小一致. 使用如下命令: pngtopnm my_ ...

  10. linux 开机自动运行命令_如何在Linux终端同时运行多个Linux命令

    在一行中运行两个或多个命令可以节省大量时间,并在Linux中提高效率.在Linux中,有三种方法可以在一行中运行多个命令: ; Command 1 ; Command 2 首先运行Command1,然 ...

最新文章

  1. r语言echarts画箱线图_echarts学习笔记之箱线图的分析与绘制详解
  2. R语言ggplot2可视化:使用长表数据(窄表数据)( Long Data Format)可视化多个时间序列数据、在同一个可视化图像中可视化多个时间序列数据(Multiple Time Series)
  3. Linux磁盘占用100%解决方法
  4. 如何用python画圆形的代码-简单实现python画圆功能
  5. 服务器控件中js脚本注册方法
  6. php yii框架和laravel,yii2跟laravel的区别是什么?
  7. 蓝桥杯练习系统习题-算法训练6
  8. float类型转integer_Java基础(一)之数据类型——全面,浅显易懂
  9. spring+mybatis实现读写分离
  10. matlab 实验5,MATLAB实验5报告.doc
  11. Linux如何查看所有用户和用户组信息(cat groups whoami)
  12. Centos7 Yum安装 PHP5.5,5.6,7.0
  13. Netty工作笔记0074---handler链调用机制实例1
  14. tcp/ip源代码(17)——ip_fragment
  15. matlab程序 直线插补,用Matlab实现直线插补计算程序
  16. 网络安全(加密技术、数字签名、证书)
  17. 运放参数的详细解释和分析-压摆率(SR)
  18. Jmeter之常用断言总结篇
  19. 高度自适应布局 flew伸缩布局
  20. 计算机快速结束进程,结束进程快捷键,详细教您电脑结束进程快捷键怎么操作...

热门文章

  1. MFC基础之字符集,Unicode字符集,多字节字符集
  2. 【每周论文阅读-第四周】proposal-level 特征聚合视频目标检测方法01
  3. 关于百度移动端搜索中结果聚合的几个常见案例分析
  4. 如何在“文件资源”左侧栏处删除坚果云图标
  5. Unreal 凹多边形三角化
  6. IT大学生成长周报 | 第 1 期
  7. Anaconda安装python包的几种方法
  8. 如何备考系统集成项目管理工程师?
  9. 项目三大文档: 项目章程, 初步的项目范围说明书 ,详细范围说明书,项目计划书
  10. 常见的十几种编程语言介绍