深度学习服务器(Linux)开发环境搭建教程

当你拿到一台服务器的使用权时,最头疼的莫过于登陆服务区并配置开发环境。本文将从0开始,讲述一台刚申请的服务器远程登陆并配置开发环境的全过程。希望对你有所帮助

1.登陆服务器

  • 打开MobaXterm软件,创建一个新的Session,选择SSH登陆。其中Remote host填服务器的IP地址,Specify username填用户名(学校的用户名是u+学号),Port填服务器端口。【SSH信息在学校服务器网站我的资源里可以找到】
  • 信息填写完毕之后,点击OK即可登陆,登陆时需要输入密码,如果忘记密码可以在服务器网站重置
    在这里插入图片描述

2.Pycharm软件安装

  • 在pycharm官网下载安装包(我习惯下载2022.2.5专业版),并上传到服务器,在服务器上解压
tar -vxzf pycharm-professional-2022.2.5.tar.gz
  • 进入到安装界面,使用指令安装
cd pycharm-2022.2.5/bin
sudo ./pycharm.sh
  • 根据提示进行安装即可。社区版直接按照提示即可完成安装。专业版如果使用教育优惠试登陆时,需要进入浏览器,但是此时服务器并没有浏览器,可以点击Troubles进入其它浏览器登陆界面,点击copy the link之后把链接复制到其它本机浏览器中,登陆jetBrains的账号即可获得一串token,将其复制到输入框中并确认即可登陆并使用教育版

在这里插入图片描述

  • 安装完毕之后,由于服务器没有安装中文字体,所以很多中文显示不出来,需要设置一下中文字体,具体操作见这篇博客,操作结束之后重启IDE就可以显示中文字体了。

  • 随后安装中文插件chinese (simplified) Language Pack,可以再plugins里面直接安装。如果加载不出来,就要在https://plugins.jetbrains.com/pycharm离线下载相对应版本的安装包,并上传到服务器,选择离线安装即可。

在这里插入图片描述

  • 每次进入pycharm都要进入bin文件夹,再sudo ./pycharm.sh,很麻烦,下一步就要设置aliases,这样每次在命令行输入pycharm命令时就可以直接打开IDE了!
cd ~
vim .bash_aliases
#在文本中添加以下指令并保存(注意更改具体路径):
alias pycharm="sudo /home/user/pycharm-2022.2.5/bin/pycharm.sh"source ~/.bash_aliases

3.配置conda环境

在服务器中应该默认安装的有conda软件,但是它在/opt路径下,每次服务器到期后,之前安装的环境就会清空,但是/home/user下的数据一般不会清空,所以每次进入服务器都需要重新配置环境。大家知道配置环境是一件很麻烦的事情,所以笔者在这里想到了一个巧妙的方法——移植环境

  • 将之前正在使用的环境压缩(不知道路径可以conda env list查询,环境文件一般在…/conda/envs目录下)
tar -vczf myenv.tar.gz myenv
  • 将压缩好的环境上传至服务器,解压至…/conda/envs目录下
sudo cp myenv.tar.gz /opt/conda/envs
sudo tar -vxzf myenv.tar.gz
sudo rm myenv.tar.gz

最后使用conda env list指令查看当前所有环境,检查环境是否移植成功。

4.上传程序并匹配环境

  • 上传程序所需的数据集(包括训练集、测试集等)

  • 将程序打包,并上传到服务器,并解压,使用pycharm打开

  • 在pycharm设置已经存在的conda环境,设置完成conda环境后就可以跑程序啦!
    【若环境打包出现了问题,可以去网上搜一下相关的博客,找找问题所在】
    在这里插入图片描述

  • 当使用服务器跑程序时,经常会遇到关闭IDE程序就停止运行的问题,我们跑程序一般都是很长时间,总不能一直连接着服务器吧?那也太不方便了吧!一款十分小巧的工具完美地解决了这个问题——screen。详细使用教程见此链接

screen -ls		# 查看当前所有screen
screen -S test	# 创建一个名为test的screen
Ctrl+A+D		# 将当前screen切换至detech状态
screen -r test	# 将名为test的screen恢复至命令行
kill -pid		# 将当前pid杀掉

5.后记

最后总结一下需要准备的文件:

  1. pycharm2022.2.5专业版安装包
  2. pycharm中文语言包222.426
  3. 备份的conda环境
  4. 程序文件
  5. 数据集(训练集、验证集)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/161458.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Web - Servlet详解

目录 前言 一 . Servlet简介 1.1 动态资源和静态资源 1.2 Servlet简介 二 . Servlet开发流程 2.1 目标 2.2 开发过程 三 . Servlet注解方式配置 ​编辑 四 . servlet生命周期 4.1 生命周期简介 4.2 生命周期测试 4.3 生命周期总结 五 . servlet继承结构 5.1 ser…

SpringBoot-WebSocket浏览器-服务器双向通信

文章目录 WebSocket 介绍入门案例 WebSocket 介绍 WebSocket 是基于 TCP 的一种新的网络协议。它实现了浏览器与服务器全双工通信——浏览器和服务器只需要完成一次握手,两者之间就可以创建持久性的连接,并进行双向数据传输。 应用场景: 视…

关系型数据库 期末复习(未完

关系型数据库 绪论概念间的关系数据库的历史信息和数据数据模型 关系模型数据结构关系完整性关系操作语言 关系代数语言 绪论 概念间的关系 数据->数据库->数据库管理系统->数据库系统 数据库的历史 人工管理阶段 -> 文件系统阶段 -> 数据库系统阶段 数据库…

逆向学习记录(1)windows系统基本配置

我的环境:win10系统64位。 可以在虚拟机上操作。改天记录一下如何安装虚拟机及里面的系统。 1、查看windows版本情况 按下winr,输入winver,即可。 2、新装的windows系统,桌面上没有我的电脑图标? 在桌面上右键&…

D-Link账号密码泄露

构造payload: /getcfg.php SERVICESDEVICE.ACCOUNT&attackture%0D%0AAUTHORIZED_GROUP%3D1漏洞证明: 文笔生疏,措辞浅薄,望各位大佬不吝赐教,万分感谢。 免责声明:由于传播或利用此文所提供的信息、技…

shell script函数function篇

function fname(){ 程序段 } #这个比较熟悉了,和其他计算机语言定义函数的格式都是相同的,上案例,自定义printf函数 总结:函数定义的格式,和其他语言大同小异,不同的是在函数调用方面,c和java…

社区牛奶智能售货机为你带来便利与实惠

社区牛奶智能售货机为你带来便利与实惠 低成本:社区牛奶智能货机的最大优势在于成本低廉,租金和人工开支都很少。大部分时间,货柜都是由无人操作来完成销售任务。 购买便利:社区居民只需通过手机扫码支付,支付后即可自…

ICCV2023 Tracking paper汇总(一)(多目标跟随、单目标跟随等)

一、PVT: A Simple End-to-End Latency-Aware Visual Tracking Framework paper: https://openaccess.thecvf.com/content/ICCV2023/papers/Li_PVT_A_Simple_End-to-End_Latency-Aware_Visual_Tracking_Framework_ICCV_2023_paper.pdf github: https://…

阿里云多款ECS产品全面升级 性能最多提升40%

“阿里云始终围绕‘稳定、安全、性能、成本、弹性’的目标不断创新,为客户创造业务价值。”10月31日,杭州云栖大会上,阿里云弹性计算计算产品线负责人张献涛表示,通过持续的产品和技术创新,阿里云发布了HPC优化实例等多…

一个使用uniapp+vue3+ts+pinia+uview-plus开发小程序的基础模板

uniappuviewPlusvue3tspiniavite 开发基础模板 使用 uniapp vue3 ts pinia vite 开发基础模板,拿来即可使用,不要删除 yarn.lock 文件,否则会启动报错,这个可能和 pinia 的版本有关,所以不要随意修改。 拉取代码…

网络资料(忘传了)

1网络分层模型和应用协议 1.1分层模型 1.1.1分层的意义 当遇到一个复杂问题的时候,可以使用分层的思想把问题简单化 比如,你有半杯82年的可乐,想分享给你的朋友王富贵,但你们已经10年没有联系了。要完成这件事,你可…

Spring Boot中解决跨域问题(CORS)

1. 跨域介绍 首先解释什么是跨域,跨域就是前端和后端的端口号不同;会产生跨域问题,这里浏览器的保护机制(同源策略)。 同源策略:前端和后端的协议、域名、端口号三者都相同叫做同源。 我们看一下不同源&am…