Building Up Servicer
背景
在做项目的我正为自己的显卡太小跑不了预测而发愁的时候,由于非常微妙的缘分,我白嫖到一个装有GeForce GTX 1060显卡的主机,更令人高兴的是这个主机装上的系统就是Manjaro!
怎么做?
这个系统已经基本把绝大多数事都做好了,因此我们只需要做一点点工作就行。首先要明确一点:这个主机是用作服务器的,不作日常使用。
前期工作
由于这个系统有较长时间没有使用,因此需要像刚安装好系统那样做一切前期准备,详细步骤请阅读我之前的文章。
搭建虚拟内网
为了能在各地自由使用,我决定使用ZeroTier-One来构建一个虚拟内网,然后将我目前使用的两个设备jion到同一个内网即可。服务器上只消执行:
sudo pacman -S zerotier-one
sudo systemctl enable zerotier-one.service
sudo systemctl start zerotier-one.service
zerotier-cli join {YOUR_NETWORK_ID}
这样就可以搭建好一个虚拟内网了。
建立SSH连接
做好上一步之后,可以根据情况自己设定好IP「更具体的内容请移步至这篇文章」,需要记好服务器的IP,并且编辑SSH配置文件:
sudo vim /etc/ssh/ssh_config
需要将Port 22
前的#去掉,当然如果你愿意也可以直接修改Port后面的值。
保存后需要重启一下服务,执行:
sudo restart sshd.service
但为了保证开机就能使用SSH,还需要执行:
sudo enable sshd.service
最后你就可以执行:
ssh USERNAME@IP
来远程连接服务器了。
但这里要注意的是,如果前面你设定的port不是默认值22,则需要使用p参数,即执行:
ssh -p YOUR_PORT USERNAME@IP
关闭图形桌面
因为我不喜欢总是去插拔鼠标接收器来在两台电脑之间使用,而且服务器我也是只可能使用命令行形式,而最重要的原因是它打开的图形桌面Xorg服务是要占用显卡的,这个就阻挠了我进一步的安装驱动,于是我执行了如下指令来关掉这个多余的东西:
sudo systemctl set-default multi-user.target
sudo reboot
这样你就可以开机就进入命令行模式了,其实就是tty模式。
如果你有一天想用回这个桌面系统,那就执行:
sudo systemctl set-default graphics.target
sudo reboot
安装Nvidia驱动
依旧根据inxi -G
给出的显卡信息到Nvidia官网选择合适的驱动程序下载过来,然后用sudo bash NVIDIA…….sh
即可。
但要注意的是如果安装失败并报错提示缺少kernel的话,你需要根据系统内核版本来安装linux-headers,查看系统版本的方法有三个:一是执行username -a
来查看内核版本;二是执行neofetch
,不过这个需要提前安装好neofetch才行;三则是直接运行系统自带的screenfetch
,因此本人最推荐这个方法,当然第一个方法非常简洁,也足够使用。如你所见,Kernel后跟的数字就意味着你要安装的linux-headers的版本,比如我的就是5.11.22-2-MANJARO
,那我就要安装linux510-headers,为什么不是511,因为没有啊~安装好Kernel Headers之后再重新安装显卡,就万事大吉了。
安装cuda系列
安装之前一定要检查一下你的系统驱动版本是否与你将要安装的cuda版本匹配,由于我这里的版本是470.63.01,对应应该装的CUDA版本要高于11.2(包括11.2)。而我这恰好一切都满足,就很顺利,执行一个语句即可:
sudo pacman -S cuda cuda-tools cudnn
结束
现在你的服务器已经搭好了,一切都可以正常使用咯~