如何从零连接远程Linux服务器
前言
家人们,谁懂啊!!!熟悉我的小伙伴都知道,我做科研一直都是在老师电脑上做,如果和老师在同一个办公室做科研的话那也太恐怖了……所以远程操控软件一直是我科研道路上的好伙伴,嘿嘿~ BUT!最近学校里在排查网络的安全性,因此防火墙好像出了点我也不知道啥原因的原因,紧接着远程操控软件用不了啦,真的是无语了…… 在我本就艰辛的科研道路上又挖了一个大坑……
都已经这样了,那还能怎么办呢,只能用实验室的多人行服务器了…… 也不是说实验室服务器不行,只是说要和好多人一起用,有的时候得排队,并且我是做图像的,使用起来就更难了,呜呜呜~
抱怨完了,开始正题,这篇博客介绍一下怎么用自己的电脑连远程的Linux服务器,然后正常跑代码。
1、前提
如果我们想要连接远程Linux服务器,那么需要提前有以下东西:
(1)有一台远程的Linux服务器(这话好像有些多余,哈哈);
(2)让管理这台服务器的管理员给你分配一个账号和密码;
2、连接步骤
首先大致地说一下过程哈,如果我们需要在远程Linux服务器运行我们的代码,那我们得保证两件事:一个就是远程服务器有我们代码所需要的运行环境,包括编译器(Anaconda或者Python等)、虚拟环境(需要自己根据代码要求新建);二是服务器上有咱们的代码。所以我们就按照这两个需求来进行配置,来吧,家人们~
(1)登录远程服务器
首先,咱们需要通过远程终端控制软件(如MobileXterm等)登录上我们的远程服务器。
Ps:远程终端控制软件就是能够在本地通过账号、密码来连接上远程服务器,并可视化和操控远程服务器的一款软件。比如我用的是MobileXterm。至于下载和使用可以参考一下这篇博客,我大致看了一下还阔以。
MobileXterm: https://zhuanlan.zhihu.com/p/61013117
打开MobileXterm后,点击下图中我用红色方框画出来的Session。
接着点这个SSH
在下面这个界面输入远程的IP和你得登录账号就可以了
(2)下载并安装Anaconda
登录上远程服务器后,咱们还需要安装一下Anaconda。大致流程就是先到网站去下载.sh脚本,然后在远程服务器上用bash命令执行这个脚本文件。因为我用的服务器上的Anaconda管理员直接安装好了,所以我就不说了哈~~ 家人们如果不会的话可以找个博客或视频看一看。
(3)新建虚拟环境
在远程服务器上安装好编译器后,我们需要在自己对应的目录下建立自己项目的虚拟环境。
conda create -n “虚拟环境名” python=3.8 # pyhton版本根据自己需要选择
(4)安装相应的torch和需要的包
我们的虚拟环境建好之后,我们需要到pytorch官网去下载与服务器的显卡版本相对应的torch,之后我们还需要使用conda命令来下载我们所需要的包。这些内容在我的另一个博客里有,我就不重复啦~
(5)本地Pycharm与远程服务器建立连接
在前面我们已经通过远程终端控制软件与服务器建立了连接,目的是在远程服务器中配置虚拟环境。将本地Pycharm与远程服务器连接是为了更方便的上传代码和操作代码。
首先点击Add Interpreter
其次点击这里的SSH Interpreter
在Host中填远程服务器的IP,Username填自己的账号
之后在Password中填自己的密码
在Interpreter中选择刚刚所创建的虚拟环境的编译器,一般的路径是:虚拟环境名/bin/python.exe
然后在上面的Sync folders中填本地目录与远程服务器目录的对应映射,以下图为例。左边的是本地的文件夹路径,右边是远程的文件夹路径。
【注意】本地与远程服务器的最终文件夹里的内容需要一直,比如这里的最终文件夹都是u2net,此文件夹里的内容需要一致
然后点击OK就好了。之后就是等待一段时间,如编译器的准备和本地数据与代码的上传,这些都是自动弄的,我们只需要等待就好啦
3、总结
本地连接远程Linux服务器需要有一些前提条件之外,我们需要做的就是在远程服务器中建立虚拟环境,以及将我们的代码和数据上传即可。
至此大功告成啦,看到这里,家人们不妨点个赞关注一波噻,阿里嘎多~