连接服务器
开始
安装教育版 PyCharm
Pycharm-学生免费专业版安装 - 知乎 (zhihu.com)
社区版PyCharm没有远程连接功能,专业版和教育版的才有。
配置项目环境
创建项目文件夹
$ cd YOUR_ROOT_PATH # 一般为PycharmProjects或者桌面
$ mkdir YOUR_PROJECT_DIR
打开 Terminal 新建环境
$ conda create -n YOUR_NAME python=3.x # 创建环境
$ conda activate YOUR_NAME # 激活环境
$ conda deactivate # 退出当前环境
$ conda env list 或 $ conda info -e # 查看当前环境列表
$ conda remove -n YOUR_NAME --all # 删除虚拟环境
新建/打开 项目,选择python解释器
Interpreter Settings 里修改解释器与mapping
装库
$ conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c conda-forge
$ pip3 install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple
运行文件
(1) 右键run, 然后去configurations里删除ip地址
# 过程略
(2) 终端运行
$ python xxx.py
(3) screen 运行(离线)tmux 更好用,所以换了
$ tmux new -s SESSION_NAME
$ tmux ls
$ tmux a -t SESSION_NAME
$ tmux kill-session -t SESSION_NAME
# 分离窗口
# 第一步:输入组合键 Ctrl+B,然后松开。
# 第二步:输入字母 d。
# 复制窗口
# 第一步:按 Ctrl+B 组合键,然后松开。
# 第二步:再单独按一下 c 键。
# 切换窗口
# 第一步:按 Ctrl-B 组合键,然后松开。
# 第二步:按数字 0 键。
按完前缀ctrl+B后,再按冒号:进入命令行模式,
输入以下命令:
$ set -g mouse on
ctrl+B + [ the 'Page Up/Down' 翻页
$ sudo apt-get install screen 或 $ sudo yum install screen
$ screen -S name # 新建窗口并进入
$ screen -ls # 列出窗口
There is a screen on:
2637.count (12/17/2015/10:00:32 AM) (Detached)
$ screen -r 2637 # 进入2637线程,恢复count会话窗口
会话分离 我们在一个窗口运行某个程序之后,想退出登录关闭terminal干点别的事,让程序在后台运行。这时就需要和窗口会话分离,有2种方式:
- 快捷键
Ctrl a
表示进入命令模式 在当前会话窗口中按Ctrl a
+d
快捷键可以实现分离,这时窗口会弹出[detached]的提示,并回到主窗口。screen -d name
# 远程detach某个session,前提是已经跳出了name窗口
杀死会话窗口 如果想关掉一个多余的窗口,有3种方法:
kill -9 threadnum
例如在上面的2637,kill -9 2637
即可杀死线程,并杀死窗口使用
Ctrl a
+k
杀死当前窗口和窗口中运行的程序使用
Ctrl a
然后输入quit
命令退出Screen会话。需要注意的是,这样退出会杀死所有窗口并退出其中运行的所有程序清除死去的窗口 当窗口被杀死后,再用
screen -ls
可以看到该窗口后面的(??? dead)字样,说明窗口死了,但是仍在占用空间。这时需要清除窗口$ screen -wipe #自动清除死去的窗口
2.5.3使用screen进行任务管理 当程序运行时间较长时,我们在当前Linux窗口直接运行程序,程序或许会因为网络问题异常终止。我们可以使用screen来解决本地突然离线的问题,因为screen相当于创建一个后台窗口在服务器,本地连接中断并不会影响正在运行的程序。我们在命令行敲入screen –ls命令,效果如图 2.21所示。
1. # 常用的screen命令
2. screen –S name # 创建一个窗口
3. screen –ls # 查看当前已经创建的窗口
4. screen –d –r name # 回到名字为name的窗口
5. screen –X –S name quit # 关闭名字为name的窗口
远程连接服务器
VSCode更好用
安装教育版 PyCharm
创建项目文件夹
$ cd YOUR_ROOT_PATH # 一般为PycharmProjects或者桌面
$ mkdir YOUR_PROJECT_DIR
打开 Terminal 新建环境
$ conda create -n YOUR_NAME python=3.x # 创建环境
$ conda activate YOUR_NAME # 激活环境
$ conda deactivate # 退出当前环境
$ conda env list 或 $ conda info -e # 查看当前环境列表
$ conda remove -n YOUR_NAME --all # 删除虚拟环境
装库
$ conda install pytorch torchvision torchaudio cudatoolkit=10.1 -c pytorch
新建/打开 项目,选择python解释器
Interpreter Settings 里修改解释器与mapping
1.本地创建项目
File-》New Project...
$ du -sh * # 查看每一个占了空间
$ df # 显示磁盘相关信息
$ ls # 列出当前文件夹内容
$ cd YOUR_DIR_PATH # 进入路径
$ mkdir YOUR_DIR_NAME # 创建文件夹
Root ssh 远程连接
$ apt-get install -y openssh-server
$ sudo vim /etc/ssh/sshd_config
> PermitRootLogin yes
> PermitEmptyPasswords no
$ services ssh restart
免密链接
# 本地终端
$ ssh-keygen -t rsa -C "ANYTHING" # 一路 Enter
$ vim "USERPATH/.ssh/id_rsa.pub" #e.g. /Users/tiumo/.ssh/id_rsa.pub # 打开密钥,手动复制
# 远程终端
$ mkdir .ssh
$ cd .ssh
$ vim authorized_keys #/home/leng/.ssh/authorized_keys #手动粘贴
改变文件用户权限
$ mv /home/guest/Documents/nemo /home/nemo
$ sudo cp /home/guest/.bashrc /home/nemo/.bashrc
$ sudo chown nemo.nemo -R nemo # chown runoob:runoobgroup file1.txt
# -R 表示当前前目录下的所有文件与子目录
sudo chmod 600 ××× (只有所有者有读和写的权限)
sudo chmod 644 ××× (所有者有读和写的权限,组用户只有读的权限)
sudo chmod 700 ××× (只有所有者有读和写以及执行的权限)
sudo chmod 666 ××× (每个人都有读和写的权限)
sudo chmod 777 ××× (每个人都有读和写以及执行的权限)
其中×××指文件名(也可以是文件夹名,不过要在chmod后加-ld)
递归加 -R
创建新用户
$ sudo adduser xxxx
$ usermod -aG sudo username # 添加到 sudo 组
$ su - username # 切换用户
$ sudo whoami # 显示当前
$ sudo ls -l /root # 测试权限
$ sudo deluser `username` sudo
$ sudo deluser --remove-home tt
$ sudo deluser --remove-all-files tt # 删除用户所有