(Nota: embora eu esteja fazendo uma pergunta diferente aqui, isso é essencialmente para diagnosticar o mesmo problema que relatei em esta questão no StackOverflow).
Eu tenho uma máquina virtual do Google Cloud Compute Engine. A imagem usa o Google Container-Optimized OS (se isso atrapalhar a depuração, estou pensando em migrar para o Ubuntu). Segui as instruções na documentação deles para formatar um volume recém-montado na máquina . Especificamente, eu corri:
sudo mkfs.ext4 -m 0 -F -E lazy_itable_init=0,lazy_journal_init=0,discard /dev/[DEVICE_ID]
sudo mkdir -p /mnt/disks/[MNT_DIR]
sudo mount -o discard,defaults /dev/[DEVICE_ID] /mnt/disks/[MNT_DIR]
sudo chmod a+w /mnt/disks/[MNT_DIR]
Onde MNT_DIR
é o diretório que eu estava montando no dispositivo, e DEVICE_ID
é o nome do dispositivo, como por sudo lsblk
(automaticamente sdb
, parece, não que isso importe).
Um rápido ls -l /mnt/
mostra que o volume parece ter sido montado corretamente e que existem permissões de leitura e gravação do mundo para o diretório:
drwxrwxrwx 3 root root 4096 Mar 8 00:00 subway-explorer-datastore
OK, agora gostaria de transferir alguns dados para esta máquina. O GCE inclui um comando google compute scp
( documentado aqui ), que parece ser apenas um invólucro fino o comando scp
do UNIX. Então eu posso usar isso para escrever alguns dados da minha máquina dev local e para este disco na nuvem, certo?
Então eu corro:
gcloud compute scp ~/Desktop/subway-explorer-api/logbooks.sqlite gke-webapp-default-pool-49338587-d78l:/mnt/subway-explorer-datastore --zone us-central1-a
E eu fico muito ocupado com isso.
scp: /mnt/subway-explorer-datastore: Read-only file system
ERROR: (gcloud.compute.scp) [/usr/bin/scp] exited with return code [1].
O resto do sistema de arquivos está bem. Por exemplo, os seguintes sucessos:
gcloud compute scp ~/Desktop/subway-explorer-api/logbooks.sqlite gke-subway-explorer-default-pool-2bef4d1d-f7dn:/dev/null
Este é um erro gerado por scp
, não pelo% fino wrappergcloud
. Para meus olhos inexperientes, as permissões na pasta raiz parecem boas. Então, quais são algumas razões pelas quais scp
pode estar jogando esse erro? Como depuro isso?