Problemas con la CLI de Migrate to Containers
En este documento, se describen las soluciones alternativas para algunos problemas que podrías encontrar mientras trabajas con la CLI de Migrate to Containers.
La operación de copia falla debido a errores de permisos
Para obtener acceso de lectura en todo el sistema de archivos, el comando copy
se ejecuta con un superusuario en la máquina de origen. Sin embargo, a veces, la operación de copia falla debido a errores de permisos. Este problema se produce porque, en algunos casos, incluso el superusuario no tiene acceso de lectura a algunos directorios de la máquina de origen.
En esos casos, puedes ver un mensaje de error similar al siguiente:
E rsync rsync: send_files failed to open "/var/lib/lxcfs/cgroup/blkio/blkio.reset_stats": Permission denied (13)
...
E rsync rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1865) [generator=3.2.7]
Error: failed to copy fs from GCP VM "petclinic-springboot": failed copying vm to "/tmp/copy-1411243774": exit status 23
Como solución alternativa a este problema, crea un filtro personalizado para excluir esos directorios de la operación de copia.
Por ejemplo, para excluir el directorio /var/lib/lxcfs
de la operación de copia, agrega el siguiente filtro personalizado en el archivo de filtros:
- /var/lib/lxcfs
Para obtener más información, consulta Reduce el tamaño del sistema de archivos copiado.
La operación de copia mediante gcloud
no se puede autenticar en la máquina.
Si usas gcloud
para ejecutar el comando copy
con sudo
, en algunos casos, es posible que la operación de copia no se autentique en la máquina de origen. Este problema ocurre porque gcloud
se ejecuta con el mismo superusuario que ejecuta la CLI de Migrate to Containers, y el superusuario no tiene las mismas credenciales que el usuario estándar.
En esos casos, puedes ver un mensaje de error similar al siguiente:
E ssh init ERROR: (gcloud.compute.ssh) There was a problem refreshing your current auth tokens: ('Failed to retrieve TOKEN from the Google Compute Engine metadata service. Status: 404 Response:\nb\'"No service account scopes specified."\'', <google.auth.transport.requests._Response object at 0x7fecf5c75550>)
E ssh init Please run:
E ssh init
E ssh init $ gcloud auth login
E ssh init
E ssh init to obtain new credentials.
E ssh init
E ssh init If you have already logged in with a different account:
E ssh init
E ssh init $ gcloud config set account ACCOUNT
E ssh init
E ssh init to select an already authenticated account to use.
Error: failed to initiate a connection with GCP VM "tomcat-server": exit status 1
Como solución alternativa a este problema, intenta ejecutar el comando copy
con gcloud
sin sudo
.
El comando analyze
falla cuando se usa la versión de Docker de Snap.
Si usas la versión de Snap, el comando analyze
falla.
En esos casos, puedes ver un mensaje de error similar al siguiente:
I Unpacking file system...
I Running analysis...
Error: running analysis failed: failed to run container: Error response from daemon: invalid mount config for type "bind": bind source path does not exist: PATH
Como solución alternativa a este problema, vuelve a instalar Docker sin usar Snap. Para obtener más información, consulta Cómo instalar Docker Engine.