使用Linux服务器的详细方法:进行文件上传下载以及使用服务器运行python程序

使用Linux服务器(Mac版)

  • 一.连接Linux服务器
  • 二.本地文件与服务器文件交互
  • 三、在服务器上运行python代码

一.连接Linux服务器

辣鸡小白,现在读研一,做的是数据挖掘方向,而之前从未有过接触服务器甚至连C语言都不太会,我本科都干了些什么? 目前刚接触算法半年,模型也逐渐地从logistic回归到3D卷积神经网络,复杂度不断地增加,我的低配可爱小Mac pro已经不能支撑我的数据训练了,于是腆着脸可怜巴巴地找老师要了一个服务器。其实,之前用自己的电脑跑模型就有点跑不动了,但是因为害怕服务器操作太复杂本着就地取材的缘故,还是坚持没用服务器。直到最近使用了之后,才有种悔不早识君的感觉,用服务器太方便了吧!而且操作就是最基本的Linux系统操作,什么?你不会用Linux系统,没事,我也不会我刚好总结了一点点,对于使用服务器进行简单的操作应该还是足够了,大佬们不要来嘲笑本小白

OK,下面正式开始:
首先,需要注意的是,Mac连接服务器具有优势,不需要安装任何软件,利用终端即可。Mac对程序员真的太友好了
使用终端有两种方式:
1.直接在终端输入命令行:

ssh 账户名@服务器地址(例如10.111.111.111

之后回车,会提示输入密码,输入之后回车即可(此处密码不可见)
这种方式太麻烦了,每次都要输入这个命令行
2.右键点击终端,点击新建远程链接:
使用Linux服务器的详细方法:进行文件上传下载以及使用服务器运行python程序_第1张图片
之后在弹出的窗口点击右侧的+号(注意:是右半边的+号):
使用Linux服务器的详细方法:进行文件上传下载以及使用服务器运行python程序_第2张图片
之后,在弹出的窗口中填入账户名@服务器地址 即可。
然后就会发现右边出现了填入的服务器连接,点击右下方的连接:
使用Linux服务器的详细方法:进行文件上传下载以及使用服务器运行python程序_第3张图片
之后会弹出一个单独的登陆窗口,输入密码回车即可登录成功。
(注意:有的服务器是不能直接连接上的,比如很多学校的服务器需要通过VPN连上校园网才能接入,不要问我为什么强调一下这点,我第一次连服务器那一天很开心,不停地修改电脑配置和搜索解决问题的方法,咦?奇怪的知识增加了,开心到爆炸

二.本地文件与服务器文件交互

在发现能成功连接到服务器之后,我们就正式踏上了修仙之路冒险的旅程,为了能够在服务器上训练,首先肯定需要把我们的python文件和数据文件上传到服务器上,其实上传文件也很简单:

cd /Users/bbb/Downloads/ # 先到需要上传的文件的存放位置
scp xxx.py 帐户@10.111.111.111:~/KTcount/ # 上传单个文件
scp -r xxx 帐户@10.111.111.111:~/KTcount/# 上传文件夹

这里的xxx就是我们要上传的文件,而KTcount是服务器上用来存储我们上传文件的文件夹,如果服务器本来没有这个文件夹,那么会新生成这样一个文件夹。
也可以直接输入所在的路径,例如scp /User/bbb/Downloads/xxx.py
注意:这里的命令行是在本地终端输入的,可不是在连接服务器之后的窗口输入的,毕竟你是要把本地的文件上传
如果想要看是否传输文件正确,需要连接上服务器之后,输入命令行ls,即可查看目前所含有的文件,如果不出意外,能看见一个KTcount(也就是你刚刚命令行里的用于存储上传文件的文件夹)

ls

使用Linux服务器的详细方法:进行文件上传下载以及使用服务器运行python程序_第4张图片那么上传文件之后,我们模型训练出的结果我们有时候也需要下载下来,下载文件类似于上传文件:

scp 帐户@10.111.111.111:~/KTcount/nohup.out /Users/bbb/Downloads/

这里面的~/KTcount/nohup.out就是我们需要下载的服务器里的文件,后面的是我们下载之后存储在本地的路径。
注意:这里仍然是在本地终端窗口输入命令行

三、在服务器上运行python代码

那么在上传文件成功之后,我们要开始重中之重了,那就是运行我们的模型,因为服务器不如咱们本地能够使用pycharm这类可视化程序方便,但是我们也只是为了能跑出个结果,就认命吧不挑剔了。

python -V # 查看当前服务器使用的python版本,大家每个程序运用的包可能对python版本有挑剔,所以可以先看一下python版本是否匹配

如果版本不匹配,我们可以使用下列命令查看服务器都有什么版本:

ls /usr/bin/python*

之后,我们就能看到多个python的地址:
使用Linux服务器的详细方法:进行文件上传下载以及使用服务器运行python程序_第5张图片
然后根据自己想要的版本来重新设置,例如我们设置python3.6:

alias python='usr/bin/python3.6'

设置好之后,我们要运行程序,但是因为我第一次在终端运行python,之前都是用pycharm所以,发现运行之后显示我的py文件中读取csv文件时找不到这个csv文件,不管我把文件路径如何修改都没办法解决,后面直接先到py文件所在的文件夹再运行就没有问题了。

cd ~/KTcount/  # 到文件所在的文件夹 
python3 xx.py  # 运行py文件

注意:如果程序中使用了tensorflow,需要在运行python3 xxx.py之前先激活tensorflow环境,否则会提示没有tensorflow这个模块,但实际上服务器上已经安装过了,如果没有安装过,那就安装一下

conda activate tensorflow

这样,我们就能在服务器上运行我们的模型代码了,但是因为如果模型训练需要很久,我们可能要中断与服务器的连接,这个时候就会导致服务器上的进程也停止,所以我们需要加一个nohup:

nohup python3 xx.py # 输出会存储在一个nohup.out文件中

为了验证我们的程序是否在中断连接之后还能运行,我们可以在运行程序之后,重新连接一次服务器,然后查看服务器正在运行的进程:

ps -ef |grep python # 查看服务器后台有关python运行的程序

至此,我们就可以关上终端窗口去 推塔和吃鸡 学习其他知识了
做完这些,是不是忽然发现使用服务器居然特别简单?!
有时候人生就是这样,大家总是习惯于对未知的事情存在恐惧,其实真正面对它时会发现这只是一只纸老虎,只有敢于挑战才能发现原来它如此不堪一击

你可能感兴趣的:(数据处理,python环境,服务器,大数据,tensorflow,数据挖掘,机器学习,深度学习)