实验室服务器使用进阶
password
icon
AI summary
type
status
date
slug
summary
tags
category
Property
Nov 22, 2024 02:45 AM
零、服务器联网1. 服务器联校园网2. 通过本地局域网代理一、VSCode远程开发下载安装VSCodeVSCode中安装Remote Deveploment插件VSCode远程服务器免密登录配置本地环境生成密钥对拷贝到远程服务器本地配置文件更改VSCode直连VSCode 运行PythonVSCode Python可能遇到的问题Pycharm远程开发二、Github 学生认证及Copilot使用三、服务器图形界面远程四、必备工具:tmux的使用
零、服务器联网
有两种方式,选择其中一种即可,推荐第二种
1. 服务器联校园网
两种方式
- 命令行方式:
把卡号和密码替换成自己的
- 图形化方式:命令行输入
firefox
打开火狐浏览器,图形化登录校园网
2. 通过本地局域网代理
- 在本地的Clash打开Allow LAN开关
- 在终端家目录
vim ~/.bashrc
按
G
光标定位到最后,按i
进入编辑模式,添加如下两行按
ESC
进入vim的命令模式,再输入:wq
即可保存退出其中IPV4地址可以从本地命令行使用
ipconfig
看到- 执行
source ~/.bashrc
使其生效
- 验证能否上网
curl
www.baidu.com
,返回一堆html表明已联网
- 取消联网:
更加具体的参考这篇:
一、VSCode远程开发
VS Code 可以装很多很好用的插件
下载安装VSCode
VSCode中安装Remote Deveploment插件
VSCode远程服务器免密登录配置
本地环境生成密钥对
打开本地的Powershell或者cmd之类的终端执行
ssh-keygen -t rsa
提示按回车即可生成
密钥文件信息一般生成在用户.ssh文件下:
C:\Users\${用户名}\.ssh
拷贝到远程服务器
本地环境里的公钥
id_rsa.pub
用记事本打开后,将内容拷贝到远端服务器的~/.ssh/authorized_keys
文件(没有就创建一个)本地配置文件更改
更新本地的.ssh下的配置文件config,按如下格式添加
IdentityFile
即可实现免密登录VSCode直连
接着就可以在VSCode远程资源管理器连接服务器了,首次连接时服务器最好先联网,因为它会在服务器端下载一些必要的东西放在
~./vscode
文件夹下以上过程也可参考这篇教程:
VSCode 运行Python
拓展商店搜
python
,安装完即可运行VSCode Python可能遇到的问题
若无法连接到拓展商店,或者装了某个插件以后某个插件无法联网,可以尝试配置VSCode软件的代理:
配置完以后整个VSCode应该都能正常上网。
还要一些其它常见问题:
Pycharm远程开发
也可以不用VSCode,使用Pycharm,具体教程参考这篇:
使用pycharm2023.3远程连接二、Github 学生认证及Copilot使用
注:
- 申请过程中可能会遇到一些问题,多试几次
- approved以后可能需要三到四天收到一封邮件
之后再插件商店搜索github copilot 和 github copilot chat安装即可免费使用
- copilot 演示 ,写注释按Tab即可自动补全
- copilot chat 在侧边栏,应该是一个在github代码语料上训练过的GPT,代码类的问题回答得很好
三、服务器图形界面远程
用Windows自带的即可,Win搜索 远程桌面连接
输入IP
选择 是
输入用户名,密码
即可进入Ubuntu的图形界面
首次使用会自动在家目录下添加一些桌面需要用到的文件夹,是正常的
四、必备工具:tmux的使用
Tmux 是一个终端复用器(terminal multiplexer),非常有用,属于常用的开发工具。类似的工具还有Screen等
比如我们在跑训练代码时,需要很长时间,这时可以放在tmux内执行,这样即使意外断开服务器连接,代码依然在服务器后台执行,训练不会断开,再次连接回服务器时仍可以找回上次的会话。
简单使用:
- 安装:
sudo apt-get install tmux
- 确认一下tmux版本
tmux -V
,是>=2.6
- 将配置按照Oh my tmux库更改一下,后续操作更方便.tmuxgpakosz • Updated Dec 10, 2024
命令/快捷键 | 描述 | 备注 |
tmux | 创建新session | name是tmux默认生成的 |
tmux new -s xxname | 新建时指定session名称 | |
tmux ls | 查看已经存在的session列表 | |
tmux a -t xxname
tmux a | 连接指定的session
只有一个则不用指定 | 常用 |
<prefix> s | session列表 | |
<prefix> $ | 关闭当前session | 如果当前session中的所有window都关闭了,当前session也会随之关闭 |
<prefix> d | 分离当前session与terminal窗口 | 常用 |
<prefix> c | 创建新窗口 | |
<prefix> m | 切换鼠标模式 | 基本一直开着 |
<prefix> n | 下一个window | |
<prefix> p | 上一个window | |
<prefix> w | window窗口列表 | |
<prefix> & | 关闭window | |
<prefix> , | 重命名window | |
<prefix> % | 左右分割pane | 常用 |
<prefix> " | 上下分割pane | 常用 |
<prefix> o | 切换到下一个pane | |
<prefix> ! | 将pane升级为window | |
<prefix> x
或者 Ctrl + d | 关闭pane | 常用 |
<prefix> z | 全屏pane/恢复原状 | 常用 |
<prefix> [ | 进入复制模式 | 开启了鼠标模式可以直接用鼠标选择内容,并自动将选择内容放入缓冲区
有没有开启鼠标模式都可以,上、下、左、右、PgUp、PgDn、home和end按键移动光标位置到开始位置,
ctrl+space,移动光标开始选择, alt+w 将选择的内容复制到缓冲区
注意,进入复制模式后,上面的所有按键都不需要加<prefix> |
<prefix> PgUp | 进入复制模式并向上翻一页 | ㅤ |
<prefix> = | 缓存区列表 | |
<prefix> ] | 粘贴最后一个缓存区内容 | |
<prefix> t | 显示时间 | 花里胡哨,没啥用 |
<prefix> ? | 命令列表 | 忘记快捷键了,现场学习下 |
shift+鼠标选中,Ctrl + Insert | 复制到系统剪贴板 | ㅤ |
<prefix> e | 进入.local配置文件 | 只更改.tmux.conf.local,确保不要更改.tmux.conf |
默认的pane边界线太淡,可以在.local的配置文件改一下后面的数字:
上一篇
NeoVim入坑以及Windows Terminal美化
下一篇
站点开发日志
Loading...