谁说玩嘻哈的不会搞服务器?
在家的时候想炼丹,不太好意思用公司的或者学校的,于是。
攒了一年的钱用来买显卡了,准备吃土了。。。。。。
顺便证明一下,嘻哈路线的阿chai也是懂点技术的
。
属于自己的GPU服务器
在开心之前还是先放一下大概的配置:
CPU:牙膏厂11代i7GPU:GeForce RTX 3090(非矿)内存:32G DDR4(狗粮)硬盘:三星SSD 1T(狗粮)电源:老年战斗机
其实攒的大部分钱都用来买显卡和电源了,至于机箱,凑活一下吧。
阿chai弄自己的服务器主要是方便自己做一些小模型的训练和推理,顺便给小伙伴们增加元宇宙中的素材。
PS:算法模型是在浏览器上做的推理(tensorflow.js YYDS)。
基本环境安装
Linux的安装的流程相对的简单很多,阿chai选择经典的Ubuntu 18.0.4。我们准备的工具如下:
1.一台windows系统的电脑2.一个32G的U盘3.Ubuntu 18.0.4的镜像文件4.启动盘制作工具5.一台用来远程访问的笔记本
Mac其实也可以,但是折腾比较麻烦一些。
1.烧写
阿chai烧写用的是ventoy,比较无脑,小伙伴们下载后会看到使用说明。
2.U盘启动
根据自己的主板去百度查找进入BIOS的方法,开启允许U盘启动的选项,然后选择U盘引导即可。
3.安装
断了主机的网线,根据提示配置即可。一定要断网线,设置名字的地方一定要删除多余的字符。
显卡驱动
显卡驱动是比较麻烦的地方,就算是装好了,一不小心更新,或者频繁重启都会出问题,这里建议大家一步步来。
1.SSH
刚开始画面会显示不全,但是我们配置一下ssh就可以:
安装ssh:
$ sudo apt-get install openssh-server
$ sudo apt-get install openssh-client
查看ssh是否启动:
ps -e |grep ssh
启动后通过ifconfig查看主机的IP地址,然后我们用准备的笔记本远程登录即可。
2.换源
登录后我们首先换源,首先打开配置文件:
$ sudo vim /etc/apt/sources.list
注释或者删除之后(最好注释),复制进去如下镜像地址(阿里):
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
更新并应用更换过的源:
$ sudo apt-get update
$ sudo apt-get upgrade
3.安装基础的软件
需要用到的基础软件可以先安装一下:
$ sudo apt-get install vim make gcc
4.安装驱动
我们首先下载驱动文件,然后用U盘copy到我们的主机上即可。
重新启动后我们进入命令交互模式,然后开始进行如下操作(在主机上操作)。
$ sudo telinit 3
我们输入自己的账号密码。
设置文件权限并安装;
$ sudo chmod 777 xxxxxxxx.run
$ sudo ./NVIDIA
一直下一步即可完成,在完成重启一下,显示器正常显示那就安装成功了。
CUDA、cudnn
做机器学习肯定少不了CUDA和cudnn,Python的安装可以参考阿chai之前写的教程:
cuda
1.下载
由于使用的是RTX3090,因此仅支持cuda11以上的版本。
本地使用时输入如下命令查看:
$ nvidia-smi
下载请参nvidia官网,可能需要代理,可以复制到迅雷下载。
2.安装
联网下载与安装的命令如下:
$ wget https://developer.download.nvidia.com/compute/cuda/11.3.0/local_installers/cuda_11.3.0_465.19.01_linux.run
$ sudo sh cuda_11.3.0_465.19.01_linux.run
warning:环境以配置好,就最好不要折腾环境了。在安装的时候,terminal中的显卡驱动的选项要记得关闭。
3.PATH配置
CUDA安装好之后一般是不能使用的,需要在添加到PATH。
大家账户的user_path一般在~/.bashrc文件中。
将如下路径添加到自己的PATH中:
# CUDA 11.3
export PATH=/usr/local/cuda-11.3/bin${PATH:+:$PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-11.3/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
配置完成后输入如下命令激活:
$ source ~/.bashrc
可输入如下命令测试:
$ nvcc --version
也可以通过docker之类的容器使用。
cudnn
cudnn可以理解是NV的设备上真对机器学习相关的依赖。
下载完成后输入如下命令操作(注意自己的版本):
$ tar -xzvf cudnn-11.4-linux-x64-v8.2.2.26.tgz
输入如下命令添加对应的库文件:
$ sudo cp cuda/include/cudnn.* /usr/local/cuda-11.3/include
$ sudo cp cuda/lib64/libcudnn* /usr/local/cudacuda-11.3/lib64
$ sudo chmod a+r /usr/local/cuda-11.3/include/cudnn.h
$ sudo chmod a+r /usr/local/cuda-11.3/lib64/libcudnn*
可通过命令编译测试,一般不会出问题(cuda10和11的命令不同,要注意)。
远程连接
远程连接是大事,周末背着本本去星爸爸点杯咖啡岂不美滋滋?
1.有钱就上花生壳
如果资金充裕,那花生壳肯定是比较好的选择,一般来说最便宜的套餐就够了,还有各种加速棒、远程开机盒子,非常方便。
远程开机的话,一定要在BIOS中开启网络唤醒或者电源唤醒的功能。
2.小米YYDS
在电源唤醒后,可以买小米智能插座,远程控制通电(一定几得先用命令关机)。
3.frp穿透
frp是重点要说的一种方式,通过一个有公网的云服务器来搞就行,推荐阿里云。
a.下载安装文件
frp的源码地址如下(服务端和客户端要版本要对应):
https://link.zhihu.com/?target=https%3A//github.com/fatedier/frp/releases
b.服务端
首先在服务器上删除客户端:
rm -f frpc*
修改服务端的配置文件:
bind_port = xxxx ----客户端和服务端连接的端口
token = abc123 ----客户端和服务端连接的口令
dashboard_port = xxxx
dashboard_user = user ----用户id
dashboard_pwd = password ----密码
vhost_http_port = xxxxx ----对应开启的http端口
vhost_https_port = xxxxx ----对应开启的https端口
启动服务端命令:
$ ./frps -c frps.ini
设置开机启动:
$ sudo systemctl enable frps
c.客户端
修改客户端的配置文件:
server_addr = xx.xx.xx.xx ----服务器的公网IP
server_port = xxxx ----与bind_port一致
type = tcp
local_ip = 127.0.0.1
local_port = xxxx ----默认端口号
remote_port = xxxx ----共享时使用的端口号
启动客户端程序完成。不知道为什么感觉阿里云最稳定(记得开端口),很玄学。。。。
多用户操作
如果无私一点,是不是可以让小伙伴们一起用服务器呢?当然是不可以。
在配置好之后,我们打开terminal。
创建用户组:
$ sudo groupadd a
创建用户实例以及设置密码:
$ sudo useradd -d "/home/xxx" -m -g a -s "/bin/bash" xxx
$ sudo passwd xxx
这样通过condo等创建环境也不会收到影响,不过实例并没有root权限,权限设置需要修改,但是并不影响做机器学习。
账户中安装的软件是相同的,比如安装的vim以及配置好的库,若没有只需要在自己的用户变量中添加即可。
推荐阅读
关键词
文件
命令
端口
用户
配置文件
最新评论
推荐文章
作者最新文章
你可能感兴趣的文章
Copyright Disclaimer: The copyright of contents (including texts, images, videos and audios) posted above belong to the User who shared or the third-party website which the User shared from. If you found your copyright have been infringed, please send a DMCA takedown notice to [email protected]. For more detail of the source, please click on the button "Read Original Post" below. For other communications, please send to [email protected].
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。
版权声明:以上内容为用户推荐收藏至CareerEngine平台,其内容(含文字、图片、视频、音频等)及知识版权均属用户或用户转发自的第三方网站,如涉嫌侵权,请通知[email protected]进行信息删除。如需查看信息来源,请点击“查看原文”。如需洽谈其它事宜,请联系[email protected]。