问题标签 [device-mapper]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
linux - 从注册表中提取 docker 映像失败
希望对某个问题有所帮助。当我尝试从存储库下载图像时,它失败了,我可以在日志文件中看到以下错误。这是我收到的系统日志
这是来自 docker 的日志
如果需要任何其他数据,请告诉我。我有旧 docker lib 文件夹的备份。
linux - 在启动时挂载映射设备
我有一个 2.4 内核版本的 Linux 系统。我需要通过设备映射器为根分区制作一个映射设备,并在启动时挂载到它。
我需要使用特殊的映射器类型(不是像线性或镜像这样的标准映射器)。因此,我尝试编写自己的内核模块,实现必要的功能(现在它只是将查询传输到真实设备)。
我以这篇文章为起点。我已经对其代码进行了一些更改,所以现在它看起来像这样:
您会看到,主要功能是将目标设备更改为另一个(真实)并重新提交查询:
Rowbh->b_dev = MKDEV(3, 3);
是错误的,但不知道合适的设备号在哪里,所以我尝试自己计算。
我的下一步是更改其中的initrd映像和linuxrc文件:
其中sddm_target - 是我的内核模块。
表文件包含:
映射设备出现在给定的目录中,所以看起来一切都很好。但是当我尝试引导我的系统时,我运行了几次 sddm_target_map函数,并通过设备安装调用,然后引导保持并显示以下消息:
一些谷歌搜索帮助我理解,这条消息是由文件系统检查程序打印的。但它的原因是什么 - 我不知道。
我需要帮助!
docker - 使用的数据空间与 docker 图像输出不匹配
docker info 的输出显示我正在使用 515.1 GB 的 622.8 GB
但是docker images
,docker volume ls
&docker ps
表明我没有在本地存储任何内容。有什么理由会发生这种情况吗?
docker - 如何正确清理 docker devicemapper 文件夹?
我有一些关于存储的问题。文件夹/var/lib/docker/devicemapper/占用了我 50% 的存储空间。
在文件夹/var/lib/docker/devicemapper/mnt中,我有许多空文件夹。
如何正确清理 docker devicemapper并删除所有未使用的映射?
linux - 更改存储驱动程序后删除 devicemapper
长期聆听者,第一次来电者。
我继承了一个运行 docker 的 CI 框,我正在寻找一些空间。运行docker info
告诉我当前的存储驱动程序是overlay
. 尽管如此,我可以看到/var/lib/docker/devicemapper
仍然存在并且它占用了 10G 的空间。
考虑到这一点,删除此文件夹是否安全?我怎么知道是否有任何参考?
谢谢你的帮助!
缺口
linux - Docker devicemapper存储空间
删除容器时出现“设备上没有剩余空间”错误。
这是“df -kh”输出的一个片段。
这是“du -ksh”输出的一个片段。这表明使用了3.8TB。
这是“码头工人信息”输出。
想从以下内容中了解 3.8 TB 是如何计算的(来自“docker info”的片段)
另外,我如何清理 /var/lib/docker 以获得一些可用空间。
docker - `docker cp` 命令如何工作
该命令docker cp
用于将文件从主机复制到容器,反之亦然。即使容器处于停止状态或退出,此命令也有效。Docker 使用分层方法来存储图像,当我们使用该图像运行容器时,它会在其上方再创建一个可写层,该层负责处理容器内完成的所有更改。一旦我们从容器中退出,这个可写层就消失了。在这里,我无法找到 docker 存储该容器的数据的位置,docker cp
即使在容器 exit 之后也可用于命令。我搜索/var/lib/docker
了目录,但没有运气。我正在使用 centos7.2 和 docker 的devicemapper
存储驱动程序。有人知道吗?
docker - docker - 驱动程序“devicemapper”在容器中的进程被杀死后无法删除根文件系统
我在 Redhat 上使用 Docker 版本 17.06.0-ce 和 devicemapper 存储。我正在启动一个运行长期服务的容器。容器内的主进程有时会因为某种原因而死掉。我收到以下错误消息。
/bin/bash: line 1: 40 Killed python -u scripts/server.py start go
我希望容器退出并由 docker 重新启动。但是 docker 永远不会退出。如果我手动执行此操作,则会收到以下错误:
来自守护进程的错误响应:驱动程序“devicemapper”未能删除根文件系统。
谷歌搜索后,我尝试了很多事情:
所有结果都导致设备忙。目前唯一的补救措施是重新启动主机系统,这显然不是一个长期的解决方案。
有任何想法吗?
linux - 设备映射器的“ioctl”签名
这个问题可能看起来很幼稚,但我是内核/驱动程序编程的新手。我在块设备上创建了一个设备映射器,它工作正常。它的构造函数/析构函数和映射方法被调用。
现在,我正在尝试为这个映射器编写一个 ioctl。当为设备编写 ioctl 时,它具有以下签名:
ioctl 中需要一个文件结构/描述符。这可以很容易地被应用程序进程使用,因为它可以访问文件。
但是设备映射器的 ioctl 具有以下签名(在struct target_type中):
用户应用程序如何在不了解struct dm_target的情况下使用 ioctl 访问设备映射器?
encryption - 双层设备映射器 - 自定义 dm-crypt
是否可以在另一个设备映射器上创建设备映射器?
除了加密磁盘上的数据外,我还需要进行一些检查。所以,我想在dm-crypt创建的映射器上创建一个映射器(用于额外的检查),并使用新的映射器的 ioctl 来应用这些检查。
dm-crypt 创建了一个映射器(比如crypt_mapper),其起始扇区和长度分别为 0 和 20000。
当我为此创建一个新的映射器时,系统崩溃了。dmesg 中没有日志。