1.校外登录校内服务器需要连接VPN使用
打开easyconnect工具(用于连接校园网VPN),服务器网址为vpn.sz.tsinghua.edu.cn
用户名和密码为清华大学深圳研究生院的登录信息:
用户名:2020214314(学号)
密码:07264016(身份证后八位)
2.远程服务器基本介绍:
远程服务器自己的文件夹为/home/chuqs,使用的语言是linux语言,服务器自带conda
服务器有一个base环境:自带torch、tensorboard等扩展包
使用命令source activate即可进入base环境
在base环境内安装其它的扩展包,使用命令:pip install --user package(package是我们要安装的包的名称,例如numpy等,user是固定的)
我们也可以自己创建一个自己的环境:注意由于是共用服务器,必须是创造自己的环境
命令为:conda create -n name python=x.x (其中name为自己创造的环境名称,可以选择python版本为x.x)
自己创建的环境会存放在home/chuqs/conda/envs下方,构成一个环境文件夹。
我们同样可以使用命令:conda activate name进入我们自己创造的环境
在该环境内,我们可以使用pip命令或者conda install命令下载自己的扩展包
在我们自己构建的conda环境内,不同于本地conda环境(本地conda的python解释器python.exe就在环境文件夹的下方),远程服务器的conda环境的python解释器python.exe在环境目录的子文件夹bin下方
本地conda的python解释器:miniconda/envs/test_env(本地环境文件夹)/python.exe
远程服务器的python解释器:home/chuqs/conda/envs/test(服务器环境文件夹)/bin/python
linux下conda的一些命令:
查看当前路径:pwd
进入服务器的base环境(自带torch):source activate
查看当前conda的环境列表:conda env list
进入某个环境:conda activate env_name 退出某个环境:conda deactivate
创建环境:conda create --name env_name(环境名) python = x.x package_name(变量名)
注意--name 等价于 -n
例:conda create -n test_env python=3.8 numpy torch
创建一个名称为test_env的环境 python解释器版本为3.8 安装numpy和torch两个包(多个包用空格隔开)
查看当前环境的所有包:conda list
安装包:pip install package(必须先进入环境内)
更新所有包:conda update --all 更新某个包:conda update package
常见的Linux命令:
切换目录:cd 目录 切换到上一级目录:cd ../ 切换到根目录: cd /
相对路径的概念中,上一级目录为../ 当前目录为./ 根目录为/
例如当前路径为c:\program files\common files 绝对路径为:C:\windows\system32\cmd.exe
相对路径可以表示为:..\..\windows\system32\cmd.exe
查看当前目录下的所有目录和文件:ls
查看指定目录下的所有目录和文件:ls /dir
在当前目录下创建一个名为aaa的目录:mkdir aaa
删除当前目录以及目录下的所有文件:rm -rf 目录
删除当前目录下的文件:rm 文件
剪切目录(移动目录):mv 目录名称 目录的新位置
例如:将/usr/tmp目录下的aaa目录剪切到 /usr目录下面 mv /usr/tmp/aaa /usr
mv语法不仅可以对目录进行剪切操作,对文件和压缩包等都可执行剪切操作
打开文件:vi 文件名
例:打开当前目录下的aa.txt文件 vi aa.txt 或者 vim aa.txt
3.利用Pycharm登录服务器并运行代码
在我们的工程中点击File->Settings,在左侧找到我们的工程,点击下方的python inerpreter,为我们的工程Project_test_1选择python解释器。Pycharm所谓使用远程服务器就是使用远程服务器的python解释器作为这个工程的解释器。
点击右侧的add选项,选择SSH Interpreter(远程解释器),选择新建立一个New Sever Configuration并且输入host:10.103.11.57
用户名:chuqs
点击Next后,输入密码:chuqs.**!%*
进入下图这个界面:我们在这里可以选择远程服务器上的python解释器
根据第二部分讲的,我们将路径设置为远程服务器的python解释器:home/chuqs/conda/envs/test(服务器环境文件夹)/bin/python,修改后如下图:
下面有一个Sync Folders选项,它可以将本地工程文件和远程服务器的文件夹链接起来。点击右侧的文件夹图标
Local Path就是本地的工程文件夹存放地址,右侧Remote Path就是远程服务器的文件夹存放地址,将其存放到我们自己的文件夹下。下方有一个主动将工程文件上载到远程服务器。
我们在home/chuqs/code/test_code文件夹下新建一个Directory命名为remote_Project_test_1与本地的Project_test_1作为区分,注意是Directory不是File,File是带后缀的文件而Directory是文件夹。
Remote Path更改为下图:
选择Finish即可看到我们的解释器已经变成了下图所示:包含Remote Python解释器以及Path_mappings(远程服务器对应的工程文件存放处)
在Python右侧的Remote Host可以看到我们的服务器文件夹:
在下面的File Transfer可以看到文件上载的情况,还有debug等选项
下面还有一个Terminal选项,但是打开之后只有Local的终端,我们可以在Tools->Start SSH Session打开远程服务器的Terminal
选择我们的服务器Host:
这样就可以在Terminal窗口内看到我们的远程终端(这里中文乱码了):输入pwd命令,看到终端正常输出当前路径
我们也可以正常进入base或者test环境:完全和终端一样
在test环境下pip install matplotlib,运行test程序,发现可以正常输出图形。选择服务器的本质是用服务器的计算能力运行我们的代码,而debug操作以及输出图形等完全都可以由本地来操作。
注意这里pycharm虽然可以运行但还是在import处报错了,是因为pycahrm本地没有matplotlib而远程服务器才有,pycharm的system path中不会添加远程服务器的文件路径,因此找不到扩展包,但是在远程服务器运行的时候是可以正常输出的。可以通过sys.path.join(".")等方式来解决。
4.选择MobaXterm登录服务器
左上角选择Session(开启会话)->SSH(远程) 输入地址信息
服务器地址为:10.103.11.57 端口号为22
登陆后输入用户名与密码即可进入会话:
用户名:chuqs
密码:chuqs.**!%*
在里面我们可以完全像pycharm的终端一样对文件进行操作,左侧是服务器所有文件夹里表,借助MobaXterm我们可以用鼠标轻松对文件夹进行删除、新建等操作。