origem
A razão é que o servidor de treinamento está impedido de acessar a Internet durante o período de segurança. Além disso, o servidor de treinamento que deseja se conectar à placa gráfica A100 deve estar conectado através do bastion host (ou seja, o servidor de destino não pode estar conectado à Internet, nem está no mesmo segmento de rede que a máquina local)
Ferramentas de instalação
Primeiro, use conda env list
para visualizar todos os ambientes. Certifique-se de que o ambiente a ser migrado não seja o ambiente base padrão (se for um ambiente base, use o conda clone
comando para copiá-lo para outro nome)
Em seguida, ative o ambiente a ser migrado. Meu ambiente aqui se chama chatGLM
, então o comando de ativação correspondente éconda activate chatGLM
Em seguida, use o comando pip para instalarpip install conda-pack
Embale o ambiente original
Use conda pack -n <环境名>
para empacotar o ambiente (a velocidade de empacotamento é bastante rápida), e um arquivo tar.gz será gerado após o empacotamento.
Levei apenas 3 minutos para arrumar o ambiente que instalei por um dia.
Carregar o ambiente da máquina virtual para a máquina local
Nota: Ambos os ambientes devem ser o mesmo sistema. Por exemplo, meu computador local é centos e o host de destino também é centos (se o seu computador local for janela, o pacote instalado pode não ser aplicável ao centos, o que fará com que ele não funcione corretamente após a migração)
Embora minha máquina nativa seja Widnows, usei o Virtual box para construir uma máquina virtual centos, instalei o anaconda na máquina virtual e depois usei o pip para instalar as respectivas dependências.
Opção 1: fazer upload de sz diretamente
Comandos de upload/download de arquivos suportados pelo terminal Tabby
- sz: Protocolo ZModem para transferir arquivos do servidor Linux para o local
- rz: Para fazer upload de arquivos do servidor local para Linux, você pode usar o comando rz
Use sz <待拉取的文件路径>
para puxar arquivos para local
Opção 2: após dividir e fatiar, carregue sz
Observação: o arquivo é relativamente grande. O comando sz pode relatar um erro após a conclusão de todas as transmissões. Você pode usar split
o comando para dividi-lo.
split -b 512M -d -a 1 chatGLM.tar.gz
- -b 4096M O tamanho de cada pacote compactado dividido é 4G
- O parâmetro -d especifica que o sufixo do pacote segmentado gerado está na forma de um número.
- -ax para definir o comprimento da sequência (o valor padrão é 2), aqui o comprimento da sequência é definido como 1
Depois de mudar para 512M, ele pode ser carregado, mas ocasionalmente um erro ainda será relatado, o que é muito inconveniente. Embora curingas sejam suportados, você ainda será solicitado a informar a pasta que deseja salvar sempre (você não pode defini-la uma vez e a pasta será usada por padrão posteriormente, o que é inconveniente)
Solução três: o Virtualbox instala plug-ins auxiliares e pastas compartilhadas
O Virtual não consegue instalar diretamente o assistente aprimorado, mesmo depois de consultar vários blogs, consegui seguir este artigo. O endereço é: https://zhuanlan.zhihu.com/p/633877183
Exceto para caracteres ilegíveis chineses, o inglês é normal (usando Tabby ou XShell para conectar, não haverá problema de caracteres ilegíveis)
Em seguida, use mv
o comando para copiar o arquivo para o diretório compartilhado. Após copiar, mude para o lado da janela e veja que ela aparece instantaneamente (muito mais rápido que o comando sz anterior)
Faça upload do pacote compactado do ambiente local para o servidor de destino
Tabby então muda para o servidor de destino e rz
carrega o arquivo para o servidor usando o comando
Exclua o ambiente com o mesmo nome no servidor de destino
Agora vá para o host de destino e use conda env list
para visualizar todos os ambientes atuais
Em seguida, use conda env remove -p <环境路径>
para excluir o ambiente com o mesmo nome
restaurar ambiente
Em seguida, conda env list
liste os caminhos para todos os ambientes virtuais usando
Aqui, o caminho da variável de ambiente do anaconda3 é:/opt/anaconda3/envs/
Crie uma nova pasta com “nome do ambiente virtual” neste caminhomkdir /opt/anaconda3/envs/<虚拟环境名>
Todas as permissões serão concedidaschmod 777 /opt/anaconda3/envs/<虚拟环境名>
Em seguida, descompacte o pacote compactado que acabou de ser carregado neste diretório e use o seguinte comando
tar -xzvf <环境变量压缩包>.tar.gz -C /opt/anaconda3/envs/<虚拟环境名>
Ver resultados
Após a modificação, use conda env list
para visualizar o ambiente recém-adicionado
Em seguida, use conda activate <虚拟环境名>
para ativar a variável de ambiente
Use conda list
o comando para verificar se todas as bibliotecas que instalamos antes existem.