【发布时间】:2023-04-09 03:37:01
【问题描述】:
我在将文件从 kubernetes pod 容器(windows 节点)复制到 Windows 10 上的本地 linux 子系统时遇到了一些困难:
t@11DT:/mnt/c/dev/auto$ kubectl cp a8677:c:\testlog2.txt .
tar: Removing leading drive letter from member names
error: tar contents corrupted
t@11DT:/mnt/c/dev/auto$ kubectl cp a8677:/c/testlog2.txt ./
tar: /c/testlog2.txt: Couldn't find file: No such file or directory
tar: Error exit delayed from previous errors.
t@11DT:/mnt/c/dev/auto$ kubectl cp a8677:c:\testlog2.txt ./
tar: Removing leading drive letter from member names
error: tar contents corrupted
t@11DT:/mnt/c/dev/auto$ kubectl cp a8677:c:/testlog2.txt ./
tar: Removing leading drive letter from member names
error: tar contents corrupted
t@11DT:/mnt/c/dev/auto$ kubectl cp a8677:c:/testlog2.txt ./t2.txt
tar: Removing leading drive letter from member names
error: tar contents corrupted
t@11DT:/mnt/c/dev/auto$ kubectl cp a8677:c:\testlog2.txt ./t2.txt
tar: Removing leading drive letter from member names
error: tar contents corrupted
文件c:\testlog2.txt 肯定存在于 pod a8677 中。但是如何恰当地称呼c:\testlog2.txt呢?
注意:
一些版主建议关闭此问题,因为它与 How to copy files from kubernetes Pods to local system 重复。现有的问题是关于如何在 kubernetes 集群中的 linux 节点和 linux 本地系统之间复制文件。此信息包含在 Kubernetes 文档 (https://kubectl.docs.kubernetes.io/pages/container_debugging/copying_container_files.html) 中。
这里的这个问题专门针对 windows 容器。它似乎既不在 kubernetes 文档中,也不在我在 stackoverflow 上找到的任何其他问题中。许多在 kubernetes linux 节点中简单明了的东西需要对 windows 节点进行一些额外的研究。
因此我认为它不是重复的。
【问题讨论】:
-
否 - 更新帖子。
-
现在看起来是一个限制:github.com/kubernetes/kubernetes/issues/77310 我的解决方法是将文件复制到“当前目录”,然后复制出:1. 在容器文件中复制/移动(使用 kubectl exec ) ; 2. kubectl cp a8677:testlog2.txt .
标签: windows kubernetes