实验室服务器使用指南

如何通过 VSCode 使用 SSH 连接到实验室的服务器的详细步骤:

步骤1: 安装 VSCode 和 Remote - SSH 扩展

在vscode里面安装 Remote - SSH 扩展:

  • 打开 VSCode,转到左侧的扩展栏(或者按下 Ctrl+Shift+X)。
  • 在搜索框中输入 “Remote - SSH”,找到并安装这个扩展。

步骤2: 设置 SSH 密钥

  1. 首先查找你的 Windows 用户名:
    • 在 PowerShell 窗口中输入以下命令并按回车:

      whoami
      
    • 这个命令将显示你当前登录的完整用户名,通常是 计算机名\用户名 的格式。

      示例
      PS E:\24暑假实习\AutoStudio-main> whoami
      >>
      pc578578578\wuqingman
      

      那么 wuqingman 就是你的用户名。

  2. 更新 icacls 命令:
    • 一旦你知道了你的用户名,你就可以使用它来更新 icacls 命令,为你的 SSH 私钥文件设置适当的权限。假设你的用户名是 wuqingman,那么命令将是:
      icacls "E:\24暑假实习\id_rsa_21073_lihanhui_svg" /reset
      icacls "E:\24暑假实习\id_rsa_21073_lihanhui_svg" /grant:r wuqingman:(R)
      icacls "E:\24暑假实习\id_rsa_21073_lihanhui_svg" /inheritance:r
      
    • 这些命令会重置你的私钥文件的权限,只授予你(wuqingman)读取权限,并禁止权限继承。
    • 运行完这些命令后,你的私钥文件就只对你自己可读,这样可以安全地用于 SSH 连接。

步骤3: 配置 SSH 连接

  1. 打开 VSCode 命令面板:

    • 按下 F1Ctrl+Shift+P 打开命令面板。
  2. 输入并选择:

    • 输入 “Remote-SSH: Connect to Host…” 然后选择它。
  3. 添加 SSH 主机:

    • 选择 “+ Add New SSH Host…”
    • 输入你的 SSH 连接命令,如下所示:
      ssh -i /path/to/your/id_rsa_21073_lihanhui_svg -p 21073 lihanhui_svg@121.46.19.2
      
    • 确保替换密钥路径为正确的路径。
  4. 保存并连接:

    • 将该配置保存到推荐的 SSH 配置文件中(通常是 ~/.ssh/config)。
    • 完成后,系统会自动提示你选择要连接的主机,选择你刚添加的服务器。
    • 首次连接时,可能会要求你验证并接受服务器的公钥。

注意:我们实验室要求有:如果您是初次登录本服务器,请在数据盘(通过 df -h查找)下创建一个与您用户名同名的文件夹,作为您在本服务器的工作区。建议您将所有的数据都放在此文件夹下面。/home路径容量较小,请您不要在/home路径下存放程序与数据。否则,可能影响其他用户的正常使用;一旦系统崩溃,您/home路径下的所有数据将不复存在!

说明解释:

  1. 初次登录服务器
    如果这是你第一次登录这台服务器,建议你在服务器的“数据盘”上创建一个新的文件夹。这个文件夹应该以你的用户名命名,用作你个人的工作空间。

  2. 查找数据盘
    使用 df -h 命令可以查看服务器上各个磁盘分区的使用情况和剩余空间。这有助于你找到合适的位置创建你的工作文件夹。
    像我第一次输出 df -h 命令后,最合适的位置是 /data1 分区:

    • 分区 /data1:容量为15TB,已用6.5TB,可用7.3TB,使用率48%。
  3. 创建个人工作目录
    /data1 分区下创建一个与你用户名相同的目录。这样可以帮助你组织你的工作数据和项目。可以使用以下命令:

    mkdir /data1/wuqingman_place
    

    注意,运行这个命令的时候要回到根目录

  4. 改变目录权限
    确保你对这个新创建的目录有读写权限。可以使用上面提到的icacls命令来设置适当的权限。

  5. 开始使用你的工作目录
    由于你已经在正确的位置(/data1/wuqingman_place),可以继续进行 git clone 操作来下载你需要的项目。命令如下:

    git clone https://github.com/cszy98/PLACE.git
    

    这将会在你的 wuqingman_place 目录下创建一个名为 PLACE 的子目录,其中包含从 GitHub 上克隆下来的所有项目文件。

其他问题1:我的文件夹目录在哪?

如果你刚连上服务器位于家目录(如 /home/lihanhui_svg),但是你想使得你的左边文件夹目录是 /data1/wuqingman_place ,你需要做以下几步:

  1. 改变目录到 /data1/wuqingman_place
    在终端中输入以下命令:
    cd /data1/wuqingman_place
    
    这将切换到你之前创建的工作目录。
  2. 在VSCode中打开这个目录
    • 一旦你在终端中切换到了该目录,你可以在终端中运行 code . 命令,这将在 VSCode 中打开当前目录,使你能够浏览所有文件和子目录。

其他问题2: conda怎么装?装哪里?

首先,先输入 df -h ,可以看到不同的文件系统和它们的容量、使用情况。例如我输出后,发现最适合存放我的数据和安装大型软件环境(如 Conda)的位置是 /data1 分区,这个分区有足够的空间(15TB 总容量,7.3TB 可用),并且使用率为 48%。

  1. 下载 Miniconda 安装脚本

    wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
    
  2. 添加执行权限并运行安装脚本

    chmod +x Miniconda3-latest-Linux-x86_64.sh
    ./Miniconda3-latest-Linux-x86_64.sh
    
  3. 在安装过程中指定安装位置
    在安装 Miniconda 的过程中,安装程序会提示你选择安装目录。默认情况下,它会建议将 Miniconda 安装在用户的家目录下(如 /home/lihanhui_svg/miniconda3)。你可以通过手动输入路径来指定安装位置。
    在我们刚刚运行完这句话后:

    ./Miniconda3-latest-Linux-x86_64.sh
    

    它会显示一个提示,类似如下内容:

Miniconda3 will now be installed into this location:
/home/lihanhui_svg/miniconda3

  - Press ENTER to confirm the location
  - Press CTRL-C to abort the installation
  - Or specify a different location below

[/home/lihanhui_svg/miniconda3] >>>

在这里,你可以选择:

  1. 按下 ENTER 来确认默认安装路径(通常是家目录),但这不是我们希望的选择,因为你需要将它安装在 /data1 分区。

  2. 指定新路径

    • 手动输入你想要的安装路径。例如,如果你想将 Miniconda 安装到 /data1/miniconda3 目录,你可以直接在提示符后输入该路径:
      /data1/miniconda3
      
    • 然后按下 ENTER 键确认。

3.但是我在运行时出现了下面的问题:

Miniconda3 will now be installed into this location:
/home/lihanhui_svg/miniconda3

  - Press ENTER to confirm the location
  - Press CTRL-C to abort the installation
  - Or specify a different location below

[/home/lihanhui_svg/miniconda3] >>> /data1/miniconda3
ERROR: File or directory already exists: '/data1/miniconda3'
If you want to update an existing installation, use the -u option.
lihanhui_svg@ubuntu1:/data1/wuqingman_place$ 

这个错误信息说明在你指定的路径 /data1/miniconda3 下已经存在一个目录或文件。

解决方法
检查现有安装:

  • 首先,你可以检查 /data1/miniconda3 下是否已经有一个有效的 Miniconda 安装。如果是,可以直接使用这个安装,而不需要重新安装。
  • 你可以运行以下命令来查看目录内容:
    ls -la /data1/miniconda3
    
    如果目录中有 Conda 的相关文件和目录(如 bin, envs, etc 等),说明已经有一个 Miniconda 安装在这里。
    我实际运行这句话后,发现/data1/miniconda3 目录中已经有一个现有的 Miniconda 安装,并且它属于用户 wenyoupeng_m22。我有以下几种选择:

选项 1: 使用现有的 Miniconda 安装
如果你愿意共享这个安装,并且你有权限访问和使用它,你可以直接使用这个现有的 Miniconda 环境。这包括创建你自己的 Conda 环境来满足你的特定需求。你可以执行以下操作来使用现有的 Conda 安装:

  1. 加载 Conda 环境
    在你的 shell 中运行以下命令(假设 Miniconda 的 bin 目录已经在 PATH 中):

    source /data1/miniconda3/bin/activate
    

    如果 conda 命令可用,那么你可以继续使用它。

  2. 创建自己的 Conda 环境
    如果你需要一个独立的环境,可以使用以下命令:

    conda create -n myenv python=3.x
    

    然后激活你的环境:

    conda activate myenv
    

选项 2: 独立安装 Miniconda
如果你希望拥有一个完全独立的 Miniconda 安装,可以选择在另一个目录中安装。你可以在 /data1 的子目录中选择一个新的路径,例如 /data1/wuqingman_conda,然后在该路径下安装:

  1. 选择新目录
    在安装 Miniconda 时指定新的安装路径,例如 /data1/wuqingman_conda

  2. 执行安装
    如果已经下载了 Miniconda 安装脚本,可以运行以下命令并指定新的路径:

    ./Miniconda3-latest-Linux-x86_64.sh
    

    在安装路径提示时,输入新的路径 /data1/wuqingman_conda

我的选择:
我选择了选项一:

lihanhui_svg@ubuntu1:/data1/wuqingman_place$ source /data1/miniconda3/bin/activate
(base) lihanhui_svg@ubuntu1:/data1/wuqingman_place$ 

接下来就是我创建新的 Conda 环境并激活:

conda create -n PLACE python=3.x
conda activate PLACE

接着,在这个新环境中,我可以使用 Conda 安装所需的包,例如:

conda install numpy pandas
或者像本项目的readme一样:
 conda env create -f environment.yaml

注意上述命令确保: environment.yaml 文件位于当前目录下(/data1/wuqingman_place)。

其他问题3:服务器出现了CUDA error: out of memory怎么办?

最简单的解决方案——使用空闲的GPU
使用 nvidia-smi 命令查看当前 GPU 的内存使用情况:
bash nvidia-smi
像我现在使用的服务器, nvidia-smi 输出表明当前服务器上共有 6 张 NVIDIA GeForce RTX 3090 显卡,每张显卡有 24GB 的内存。

由于 GPU 1 到 GPU 5 基本处于空闲状态,你可以在运行程序时指定使用这些 GPU 而不是 GPU 0。你可以通过设置 CUDA_VISIBLE_DEVICES 环境变量来指定要使用的 GPU。例如,使用 GPU 1 运行程序:

CUDA_VISIBLE_DEVICES=1 ./run_inference_ADE20K.sh

这将使你的程序只使用 GPU 1,从而避免内存不足的问题。

其他问题4:如何查看自己下载的权重文件大小:

 ls -lh checkpoints/stable-diffusion-v1-5

即可查看该文件夹下面所有文件大小,对比一下就知道有没有上传完全

其他问题5:如何使用modelscope下载模型


from modelscope.models import Model
from modelscope.hub.snapshot_download import snapshot_download

# 下载到指定路径
model_dir = snapshot_download('iic/cv_anytext_text_generation_editing', cache_dir='/data1/wuqingman_place/AnyText/damo')

# 加载模型
model = Model.from_pretrained(model_dir)

print(f'Model downloaded to: {model.local_model_dir}')

其他问题6:发现环境安装在了根目录?

在虚拟环境里安装软件包发现空间不足:
在这里插入图片描述

这意味着设备存储空间已满,无法继续下载或安装新的软件包。
1. 先检查磁盘空间使用情况

  • 使用命令 df -h 查看各个分区的磁盘使用情况,找到已满的分区。
  • 输出部分为:

2. 接着确定 wordasimage 环境的位置

在激活的环境中,运行 echo $CONDA_PREFIX,输出为:

/home/lihanhui_svg/.conda/envs/wordasimage

这表示您的环境位于 /home/lihanhui_svg/.conda/envs/wordasimage,也就是根文件系统上。


3. 在 /data1 上创建一个用于存放 Conda 环境的目录

mkdir -p /data1/conda_envs

4. 配置 Conda 在 /data1 上创建环境
4.1 创建或修改 .condarc 文件

在您的主目录下创建或编辑 .condarc 文件:

nano ~/.condarc

添加以下内容:

envs_dirs:
  - /data1/conda_envs

这将告诉 Conda 将新的环境创建在 /data1/conda_envs 目录下。

4.2 验证配置

conda config --show envs_dirs

输出应包含 /data1/conda_envs,确认配置已生效。

5. 创建新的 wordasimage 环境在 /data1

conda create -n wordasimage python=3.8

注意:根据您的项目需要,您可以选择合适的 Python 版本。

6. 激活新的环境

conda activate wordasimage

7. 设置 pip 的临时目录和缓存目录

为了避免在根文件系统上使用临时空间,设置以下环境变量:

export TMPDIR=/data1/conda_envs/tmp
export PIP_CACHE_DIR=/data1/conda_envs/pip_cache

创建对应的目录:

mkdir -p /data1/conda_envs/tmp
mkdir -p /data1/conda_envs/pip_cache

8. 安装所需的软件包

例如运行:

pip install --no-cache-dir -r requirements.txt

以后安装环境目录:

输入conda config --show envs_dirs,以后我的环境都安装在data1/wuqingman_place/miniconda3/envs下面
在这里插入图片描述
为了将新虚拟环境安装在特定的路径 /data1/wuqingman_place/miniconda3/envs 下,您只需要在创建虚拟环境时指定该路径。可以通过以下步骤完成:

  1. 创建指定路径的环境:

    conda create --prefix /data1/wuqingman_place/miniconda3/envs/svgrender python=3.10
    
  2. 激活环境:

    conda activate /data1/wuqingman_place/miniconda3/envs/svgrender
    
  3. 安装其他所需的软件包:

    conda install <package_name>
    

这样,您的虚拟环境就会安装在指定的路径 /data1/wuqingman_place/miniconda3/envs/ 下。

如果是通过脚本形式安装环境,要是想指定环境安装位置,需要:

方法 1:修改 install.sh 脚本

查看 install.sh 脚本中的环境创建部分,看看是否有类似如下的 conda create 语句:

conda create -n svgrender python=3.10

您可以将这部分改为指定路径的创建方式:

conda create --prefix /data1/wuqingman_place/miniconda3/envs/svgrender python=3.10

这样,环境会被创建在您指定的目录中。

方法 2:手动设置环境变量

如果您不想修改脚本,可以通过设置 CONDA_ENVS_PATH 环境变量来指定环境的安装路径。

  1. 在运行脚本之前,先设置 CONDA_ENVS_PATH

    export CONDA_ENVS_PATH=/data1/wuqingman_place/miniconda3/envs
    
  2. 运行 install.sh 脚本:

    sh script/install.sh
    

通过设置 CONDA_ENVS_PATH,所有新的环境都会安装到 /data1/wuqingman_place/miniconda3/envs 中。

方法 3:修改 Conda 配置

您还可以通过永久修改 Conda 的配置,确保新的环境默认安装在 /data1/wuqingman_place/miniconda3/envs 中。

  1. 修改 Conda 配置,优先使用您想要的路径:

    conda config --add envs_dirs /data1/wuqingman_place/miniconda3/envs
    
  2. 运行脚本:

    sh script/install.sh
    

这样,Conda 会优先将新环境安装到指定的路径。


(/data1/conda_envs/wordasimage) lihanhui_svg@ubuntu1:/data1/wuqingman_place$ mkdir -p /data1/tmp
(/data1/conda_envs/wordasimage) lihanhui_svg@ubuntu1:/data1/wuqingman_place$ export TMPDIR=/data1/tmp
(/data1/conda_envs/wordasimage) lihanhui_svg@ubuntu1:/data1/wuqingman_place$ export TEMP=/data1/tmp
(/data1/conda_envs/wordasimage) lihanhui_svg@ubuntu1:/data1/wuqingman_place$ export TMP=/data1/tmp

其他问题7:pip的时候出现空间不足,原因是pip在了根目录,而不是虚拟环境目录里面

如果在虚拟环境中 pip 仍然指向用户目录(/home/lihanhui_svg/.local/bin/pip),有可能是系统的 PATH 设置导致的优先级问题。可以尝试修改 PATH 变量,将虚拟环境的 pip 优先于系统的 pip

export PATH=/data1/wuqingman_place/miniconda3/envs/svgrender/bin:$PATH

修复方法:

  1. 你需要确保使用虚拟环境中的 pip,可以通过以下命令来明确指定 pip 路径:

    /data1/wuqingman_place/miniconda3/envs/svgrender/bin/pip install --upgrade pip
    

    这样可以确保 pip 是虚拟环境中的版本。

  2. 然后检查当前的 pip 路径是否已更改:

    which pip
    

    它应该输出 /data1/wuqingman_place/miniconda3/envs/svgrender/bin/pip,如果输出还是 /home/lihanhui_svg/.local/bin/pip,请检查你的虚拟环境是否正确激活。

  3. 再次激活虚拟环境:

    conda deactivate
    conda activate svgrender
    
  4. 激活后,再次运行 which pip,确保它指向虚拟环境中的 pip,如果指向正确,再进行包的安装。

其他问题…(后续出现继续补充~ )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值