scpはマウントされたボリュームに書き込めず、読み取り専用と文句を言います。 [閉じる]

scpはマウントされたボリュームに書き込めず、読み取り専用と文句を言います。 [閉じる]

(注:ここでは別の質問をしますが、これは本質的に私が現在やっている作業を診断するためのものです)。この問題StackOverflowから)。

Google Cloud Compute Engine 仮想マシンがあります。画像はGoogle Container-Optimized OSを使用しています(デバッグが妨げられている場合はUbuntuに切り替えることを検討しています)。私は以下の指示に従いました。彼らの文書マシンに新しくマウントされたボリュームをフォーマットします。具体的には以下を実行しました。

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]

MNT_DIRデバイスにインストールしたディレクトリとDEVICE_IDデバイス名はどこにありますsudo lsblksdb自動のように見えますが、重要ではありません)。

すばやくls -l /mnt/音量を表示〜らしい正しくインストールされ、ディレクトリに対するグローバルな読み取り、書き込み、および変更権限があります。

drwxrwxrwx 3 root root 4096 Mar  8 00:00 subway-explorer-datastore

いいですね。今、私はいくつかのデータをこのコンピュータに転送したいと思います。 GCEにはgoogle compute scpコマンド(ここに録音してくださいscp)これはUNIXコマンドを囲む薄いラッパーのように見えます。これにより、ローカル開発マシンの一部のデータをこのクラウドディスクに書き込むことができます。そうですか?

だから私は次を実行します。

gcloud compute scp ~/Desktop/subway-explorer-api/logbooks.sqlite gke-webapp-default-pool-49338587-d78l:/mnt/subway-explorer-datastore --zone us-central1-a

私は慎重にしゃがんだ。

scp: /mnt/subway-explorer-datastore: Read-only file system
ERROR: (gcloud.compute.scp) [/usr/bin/scp] exited with return code [1].

残りのファイルシステムは大丈夫です。たとえば、次は成功します。

gcloud compute scp ~/Desktop/subway-explorer-api/logbooks.sqlite gke-subway-explorer-default-pool-2bef4d1d-f7dn:/dev/null

scpこれはThin Wrapperではなく発生したエラーですgcloud。経験のない私の目には、ルートフォルダに対する権限が大丈夫に見えます。それでは、scpこのエラーの考えられる原因は何ですか?どのようにデバッグできますか?

ベストアンサー1

@casがコメントから推測したように存在しないフォルダに書き込んでいます。パスを に変更すると/mnt/subway-explorer-datastore良くなりましたね。

エラーメッセージを思い出してください。

scp: /mnt/subway-explorer-datastore: Read-only file system

これは誤解を招く!この記事を読んで返信を送ってください推定(フォルダを作成できないためscp)フォルダは存在しますが、正しい権限が不足して問題です。

私は新鮮なコーヒーを飲みながら、この間違いを自分でキャッチすると思います。

おすすめ記事