Centos7.6离线安装显卡驱动

Centos7.6离线安装显卡驱动

背景:今天要给客户的机器远程装一个需要GPU才能跑的服务,客户是台干干净净刚虚拟化过的服务器,没有网路的单机环境。

1、查看显卡有关的信息

lshw -numeric -C display

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-N97zltii-1609298294905)(F:\百答\部署\客户机部署文档\图片内容审核服务部署文档\显卡驱动安装记录\查看显卡信息.jpg)]

可以看到客户的显卡是Matrox G200eW3,然后可以到官网上去找对应驱动网址:https://www.nvidia.cn/Download/index.aspx?lang=cn

当然这个Matrox G200eW3是找不到的(至少我找了好久,大佬请下面评论支招),我用的是人家运维人员有提前在服务器内准备好了的驱动文件

在这里插入图片描述

2、禁用自带的驱动项目nouveau

先查看nouveau驱动是否开启

lsmod | grep nouveau

在这里插入图片描述

执行以下动作:

修改dist-blacklist.conf文件
vim /lib/modprobe.d/dist-blacklist.conf

注释blacklist nvidiafb 
#blacklist nvidiafb 

添加下面两句:
blacklist nouveau
options nouveau modeset=0

3、重建initramfs image

执行如下步骤

#备份一份成bak文件
mv /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
#重启镜像
dracut /boot/initramfs-$(uname -r).img $(uname -r)
#修改运行级别为文本模式
systemctl set-default multi-user.target

然后重启服务器

reboot

重启后:

在这里插入图片描述

4、安装kernel-devel、gcc

kernel-devel的版本一定要和内核版本一致,由于是离线安装,这里推荐一个网站搜索离线包:https://pkgs.org/

使用rmp安装方式需要很多依赖包,由于我没网我的方式是在一模一样的有网络的系统上执行以下动作

yum list | grep gcc

得到yum可以装的gcc的版本
在这里插入图片描述

由于之前用https://pkgs.org/这个网站,我知道了我要装的是 gcc-4.8.5-44.el7.x86_64,所以执行

yum deplist gcc-4.8.5-44.el7.x86_64

可以得到该gcc对应版本所需要的依赖以及顺序

在这里插入图片描述

列出来这么多包,有可能本机上有一些已经有了,可以通过以下命令查一查,比如查询有没有cpp,这类可以参看以下博客:http://www.51sjk.com/b1b101857/

rpm -qa | grep binutils

如果没有弹出搜索结果信息,证明没有这个依赖包,那么我们有三种方式可以下载我们所需要的依赖包,下面以搜索:binutils.x86_64 2.27-44.base.el7这个包为例(但事实上我在按此驱动的时候并不需要这个,我只是举个栗子)

1、使用网站下载

可以使用https://pkgs.org/网站搜索binutils,然后找到对应版本下载,这里不赘述

2、yumdownloader

yumdownloader --resolve --destdir=./ binutils

只出现了一个包,但似乎用这种方式不全,可能是由于我当前机器的依赖包已经满足直接安装了,所以只能找这个包自己而已

3、repotrack(最优)

repotrack binutils

在这里插入图片描述

可以看到出现了很多rpm包,这种方式就是把所有的可能需要的包都下载好了,包括支持binutils需要的包的包都列出

然后根据之前的yum deplist命令查找的需要的包单独放到某个文件夹下,等全部工作做好了后在该文件夹下执行以下命令安装gcc以及其依赖

rpm -Uvh *.rpm --nodeps --force

注:–force强制安装,具体使不适用force还请酌情处理

验证有没有成功:

gcc -v

kernel-devel请依照上面的方法安装,不再赘述。

不用装dkms,别装。

5、执行安装文件

将显卡安装文件的执行权限调至可运行

chmod u+x NVIDIA-Linux-x86_64-415.13.run

执行安装脚本

./NVIDIA-Linux-x86_64-375.39.run --kernel-source-path=/usr/src/kernels/3.10.0-862.el7.x86_64

请将上面内容改成你自己的位置,不要直接复制

开始安装

在这里插入图片描述

在这里插入图片描述

然后出现警告:

在这里插入图片描述

然后报错

在这里插入图片描述

(PS:navida安装报错的log地址:/var/log/nvidia-installer.log)

反复研究了一下报错的信息,然后仔细研究了一下kernel-devel的版本,发现我用的版本是kernel-devel-3.10.0-957.XXX.el7.x86_64,然而我的内核版本是3.10.0-957.el7.x86_64,我没有用内核版本,于是费尽周折找到了这些文件

在这里插入图片描述

安装这些文件后你可以再装一个libglvnd,装显卡的驱动运行的时候需要这个但由于离线环境是没网下不了的,你可以提前准备

在这里插入图片描述

这一切都搞完了之后再执行:

./NVIDIA-Linux-x86_64-450.80.02.run

安装完毕

安装这些文件后你可以再装一个libglvnd,装显卡的驱动运行的时候需要这个但由于离线环境是没网下不了的,你可以提前准备

[外链图片转存中…(img-sqAZdSKR-1609298294919)]

这一切都搞完了之后再执行:

./NVIDIA-Linux-x86_64-450.80.02.run

安装完毕

如有问题还请不吝赐教

  • 2
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 离线安装VNCServer需要先下载所需的软件包。你可以通过官方网站或镜像站点下载CentOS 7.6的VNCServer软件包,解压后将软件包放置在本地电脑。接着,按照以下步骤进行安装: 1. 首先,通过SSH远程登录到CentOS 7.6的服务器。确保你没有安装任何VNC相关的软件。 2. 使用以下命令安装VNCServer软件包: ```bash rpm -ivh /path/to/vncserver.rpm ``` 其中,/path/to/是VNCServer软件包所在路径。你需要将此路径替换为你自己的路径。 3. 安装完成后,使用以下命令启动VNCServer: ```bash vncserver :1 ``` 其中,:1是VNCServer的显示号码。你可以根据需要更改此参数。 4. 启动VNCServer后,你需要设置VNCServer的密码。使用以下命令设置: ```bash vncpasswd ``` 按照提示输入VNCServer密码并确认。 5. 启用防火墙以允许VNC连接。使用以下命令打开端口: ```bash firewall-cmd --add-port=5901/tcp --permanent ``` 6. 最后,重启防火墙使更改生效: ```bash firewall-cmd --reload ``` 至此,你已经成功在CentOS 7.6上离线安装并启动了VNCServer。你现在可以通过任何VNC客户端连接到服务器了。 ### 回答2: CentOS7.6离线安装VNCServer需要下载安装包以及依赖包,步骤如下: 1. 在其他联网的机器上下载所需的安装包和依赖包,在CentOS7.6上通过U盘等方式将文件复制到服务器。 2. 安装必要的依赖包,包括: - gcc - libXtst-devel - libXt-devel - libXfont - twm 3. 安装VNCServer,执行命令: rpm -Uvh tigervnc-server-*.rpm rpm -Uvh tigervnc-server-module*.rpm rpm -Uvh pixman*.rpm rpm -Uvh xorg-x11-fonts-100dpi*.rpm 4. 配置VNCServer,编辑/etc/systemd/system/vncserver@.service文件并设置相关参数,然后重启systemd: [Unit] Description=Remote desktop service (VNC) After=syslog.target network.target [Service] Type=forking ExecStart=/usr/sbin/runuser -l ${USER} -c "/usr/bin/vncserver %i" ExecStop=/usr/sbin/runuser -l ${USER} -c "/usr/bin/vncserver -kill %i" PIDFile=/home/${USER}/.vnc/%H%i.pid EnvironmentFile=/etc/sysconfig/vncservers [Install] WantedBy=multi-user.target 5. 创建VNC用户账号和密码,执行命令: useradd vncuser passwd vncuser 6. 启动VNCServer,执行命令: systemctl start vncserver@:1.service 7. 设置VNCServer开机自启,执行命令: systemctl enable vncserver@:1.service 以上就是CentOS7.6离线安装VNCServer的全部步骤,如果需要在多用户环境中使用,可以根据实际需求进行用户账号和VNCServer端口的配置。 ### 回答3: 首先,需要在centos7.6上安装vncserver。由于需要离线安装,因此需要先下载vncserver的rpm安装包。可以从官网下载适用于centos7.6的vncserver的安装包,在本地进行存储。然后,执行以下操作: 1. 首先,需要安装依赖库。 yum -y install pixman pixman-devel libXfont 2. 执行vncserver的安装命令。其中,安装包的名称根据实际情况进行更改。 rpm -ivh vncserver-6.7.11-2.x86_64.rpm 3. 安装成功后,需要进行配置。进入/etc/sysconfig,找到vncservers文件。 cd /etc/sysconfig vim vncservers 4. 修改vncserver配置文件。在文件末尾添加以下内容,其中1代表端口号,可根据需要进行修改。此外,需要设置vnc密码,可通过 vncpasswd 命令设置,然后将生成的文件名填写在下面的-vncpasswd选项中。 VNCSERVERS="1:root" VNCSERVERARGS[1]="-geometry 1280x1024 -depth 16 -randr 1 -noxdamage -alwaysshared -localhost -SecurityTypes VncAuth -vncpasswd /root/.vnc/passwd" 5. 配置完成后,启动vncserver。 vncserver 到此,centos7.6离线安装vncserver就配置完成了。可以使用vncviewer工具来进行连接测试,输入IP地址+端口号并输入密码即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值