FreeBSD 已从 Linux 移植了显卡驱动,理论上,A 卡 N 卡均可在 amd64 架构上正常运行。

支持情况

对于 FreeBSD 11,支持情况同 Linux 内核 4.11;

对于 FreeBSD 12,支持情况同 Linux 内核 4.16;

对于 FreeBSD 13,支持情况同 Linux 5.4,最高可以支持 Intel 第十二代处理器。

详细情况可以看

Graphics - FreeBSD Wiki

英特尔核显 / AMD 独显

安装驱动

注意,如果要通过 ports 安装必须先取得系统源代码。请见第二十一章。

  • FreeBSD 12.0: #pkg install drm-fbsd12.0-kmod

注意:除了 12.0,对于任意 12.X 均应该安装 drm-fbsd12.0-kmod ,但应该使用 port 在本地重新构建而不应该使用 pkg 进行安装,否则不会正常运行。

  • FreeBSD 13:# pkg install drm-fbsd13-kmod
  • FreeBSD 14: # cd /usr/ports/graphics/drm-kmod/ && make BATCH=yes install clean

加载显卡

打开/etc/rc.conf:

  • 如果为 intel 核芯显卡,添加 kld_list="i915kms"
  • 如果为 HD7000 以后的 AMD 显卡,添加 kld_list="amdgpu"
  • 如果为 HD7000 以前的 AMD 显卡,添加 kld_list="radeonkms"

视频硬解

# pkg install xf86-video-intel libva-intel-driver

英伟达显卡

#安装几个 nvidia 相关的包

# pkg install nvidia-driver nvidia-settings nvidia-xconfig

#配置驱动

# sysrc kld_list+="nvidia-modeset"

重启 这时候应该已经可以点亮图形界面了……

# 查看驱动信息

$ nvidia-smi

如果发现系统没有使用 nvidia 驱动 需要自动生成配置文件

# Xorg -configure #生成配置文件。注意,该步骤不是必要!

# cp /root/xorg.conf.new /etc/X11/xorg.conf

然后重新启动就可以发现正常使用 nvidia 驱动了

注意: 默认情况下,通过 pkg 安装的 nvidia-driver 是包含 linux 兼容层支持的, 如果要使用 Linux 软件,需要执行以下命令,(实际上使用linux兼容层,以下命令是必须的。) 如果不需要使用 Linux 兼容层,则不需要执行。

# sysrc linux_enable="YES"

当然如果使用官方的 pkg 包,安装好驱动重启后

$ kldstat

会发现系统自动加载 linux.ko 模块。如果觉得太臃肿,不需要 Linux 兼容层 可以自己编译 nvidia-driver ports,去掉 linux compatibility support

FreeBSD 物理机下显卡的配置的更多相关文章

  1. 利用Openvswitch实现不同物理机中的Docker容器互连

    1. 测试环境 75机(10.11.150.75):Red Hat Enterprise Linux Server 7.0,无外网访问权限,已安装Docker Server 74机(10.11.150 ...

  2. CentOS7.0 内核(3.10.0-123.el7.x86_64)bug导致KVM物理机重启

    一.问题描述 服务器硬件:DELL R720 系统版本:CentOS7.0 内核版本:3.10.0-123.el7.x86_64 故障现象:偶尔会重启 二.问题原因 经查看dmesg日志发现是kern ...

  3. VMware网络配置 实现与物理机互访

    虚拟机和物理主机互访,两台机器可以互访并可以被局域网内其他机器访问,可以ping通并可以访问网站. 这几天正好有空搞个虚拟机,并装了不同系统,以备不同部署环境需要.明明是搞编程的,却不得不学各种知识, ...

  4. 做双网卡绑定_______物理机在双网卡的情况下做多IP绑定

    公司的环境是这样的: 一台物理机需要做双网卡绑定,同时呢,在双网卡绑定的同时还要做多IP. 其实整个过程可以分为两个步骤: 第一个,物理机先做双网卡. 第二个,在bond上做多IP实例. 双网卡绑定的 ...

  5. PXE 自动安装物理机 (DHCP服务由路由提供, 不能再配置)

    目录 1. PXE 自动安装物理机 (DHCP服务由路由提供, 不能再配置) 1.1. 需要的软件 1.2. 启动 proxy dhcp 服务 1.3. 关键的几个配置文件 PXE 自动安装物理机 ( ...

  6. 如何配置 Oracle VirtualBox 中的客户机与物理机网络

    当你在 Oracle VirtualBox 虚拟机软件 中安装了各种操作系统时,你可能需要实现物理机与虚拟机之间的相互访问. 在这篇文章中,我们将会以最简单明了的方式来说明如何配置客户机与 Linux ...

  7. VM Fusion配置静态IP和物理机通讯

    Vm虚拟机在WIndow系统上和物理机进行通讯很方便,但是在Mac上简直跟吃了屎一样难用的要死,物理机断了网以后还不能和虚拟机通讯, 如果在windows上做开发,也是简直和吃了屎一样,难用的要屎,这 ...

  8. 关于在win8系统下用VMware 9.0装系统导致物理机不断重启的解决办法

    一.问题描述 前段时间将操作系统换成了Win8,安装上VMware 9.0英文版.然后在VMware中安装centos系统,结果每次到安装系统的时候,物理机系统就会莫名其妙地自动重启,毫无征兆地出现, ...

  9. openvswitch vlan下的虚拟机与物理机通信

    1,安装openvswitch ,图形界面显示等用到的安装包. yum install libvirt openvswitch python-virtinst xauth tigervnc -y 2, ...

随机推荐

  1. Hbase(6)【Java Api Phoenix操作Hbase】

    目录 两种方式操作Phoenix 1.Thick Driver 2.Thin Driver 3.注意事项 两种方式操作Phoenix 官网:http://phoenix.apache.org/faq. ...

  2. set、multiset深度探索

    set/multiset的底层是rb_tree,因此它有自动排序特性.set中的元素不允许重复必须独一无二,key与value值相同,multiset中的元素允许重复. set的模板参数key即为关键 ...

  3. Android 百度地图用法

    一.展示百度地图,并将一个指定的点(根据经纬度确定)展示在手机屏幕中心 1.下载百度地图移动版API(Android)开发包 要在Android应用中使用百度地图API,就要在工程中引入百度地图API ...

  4. SQL count和sum

    count(1).count(*)与count(列名)的执行区别 count(1) and count(字段) 两者的主要区别是 (1) count(1) 会统计表中的所有的记录数,包含字段为null ...

  5. 【科研工具】MathType7.2的安装破解与使用

    亲测可用,可以嵌入word. [我们为什么要用MathType] tex不香嘛,但是学校给的模板只有word,word输入公式点起来实在是太麻烦了. 有了这个就可以直接输入公式转换啦. [安装破解教程 ...

  6. 带你揭开WebSerivce的面纱

    最近在工作中遇到这样的一个项目(暂且定为项目A),项目A本身是用PHP开发的,但是其数据是来自于另一个使用java开发的项目(暂且定为项目B),项目A不能操作项目B的数据库,它有其自己的一套数据库,只 ...

  7. Mysql资料 主键

    目录 一.简介 二.操作 三.技巧 一.简介 主键意味着表中每一行都应该有可以唯一标识自己的一列(或一组列). 一个顾客可以使用顾客编号列,而订单可以使用订单ID,雇员可以使用雇员ID 或 雇员社会保 ...

  8. shell脚本 微信/钉钉验证登录服务器

    一.简介 登录用户需要二次验证码进行验证 可以配合 监控用户登录,发送通知给企业微信/钉钉 来使用 脚本放到/etc/profile.d/ 目录,登录的时候自动触发 二.微信脚本 1.需要修改Crop ...

  9. Hadoop分布式文件系统(HDFS)设计

    Hadoop分布式文件系统是设计初衷是可靠的存储大数据集,并且使应用程序高带宽的流式处理存储的大数据集.在一个成千个server的大集群中,每个server不仅要管理存储的这些数据,而且可以执行应用程 ...

  10. 粒子群优化算法—Matlab

    PSO算法 clc; clear ; close ; %% Problem Definition CostFunction = @(x) sphere(x); % Cost Function nVar ...