我搞砸了,/var/lib/kubelet
没有挂载到服务器上。所以它在根目录上。我注意到了这一点,我想修复它。我做了一件愚蠢的事情,只是尝试停止相关服务(kubelet),将现有目录重命名为/var/lib/old_kubelet
,挂载/var/lib/kubelet
,然后尝试mv /var/lib/old_kubelet/* /var/lib/kubelet
。
事实证明,下面有很多 (20 个) 挂载点/var/lib/kubelet
。IE/var/lib/kubelet/pods/30014089-3398-4e78-b176-ea651739a5f6/volumes/kubernetes.io~secret/default-token-g7vwq
因此,当我尝试移动或复制时,它实际上尝试复制这些挂载点的内容!
在不复制子挂载点的情况下移动内容的简单且最安全的方法是什么?
其他可能不相关的信息:挂载点应该指向的块设备是 LUKS 卷
答案1
如果你绑定挂载一个目录,那么子挂载将不会被绑定。因此,在某处创建一个虚拟目录,然后执行
mount --bind /var/lib/kubelet/ /mnt/tmptmp_dummy/
然后目录的内容/var/lib/kubelet/
将在中可用/mnt/tmptmp_dummy/
,而无需挂载的目录(它们将为空)。