update-binfmts: warning: qemu-aarch64 already enabled in kernel
时间: 2024-02-09 15:07:34 浏览: 396
这是一个关于 binfmts 工具的警告信息。binfmts 工具是用于在 Linux 系统中注册二进制文件格式的工具。警告信息中的 qemu-aarch64 是一种基于 QEMU 的模拟器,用于模拟 ARMv8-A 架构的处理器。警告信息的意思是说,qemu-aarch64 已经在内核中启用了,因此不需要再次启用。这通常是在安装 QEMU 或者其他模拟器时出现的。
相关问题
Ubuntu x86 docker arm64 image
如果你想在 Ubuntu x86 架构下运行 arm64 的 Docker 镜像,你需要使用 QEMU 进行模拟,具体步骤如下:
1. 安装 QEMU
在 Ubuntu 中,可以使用以下命令安装 QEMU:
```
sudo apt-get install qemu qemu-user-static qemu-user
```
2. 配置 QEMU
使用以下命令配置 QEMU:
```
sudo update-binfmts --enable qemu-aarch64
```
3. 下载 arm64 的 Docker 镜像
使用以下命令从 Docker Hub 下载 arm64 的 Ubuntu 镜像:
```
docker pull arm64v8/ubuntu
```
4. 运行容器
使用以下命令启动容器:
```
docker run -it --rm --name my-arm64-container --platform linux/arm64 arm64v8/ubuntu /bin/bash
```
这样就可以在 Ubuntu x86 架构下运行 arm64 的 Docker 镜像了。注意,如果你要在容器中运行 arm64 的二进制文件,需要使用 QEMU 进行模拟。可以使用以下命令启动容器并在容器中运行 arm64 的二进制文件:
```
docker run -it --rm --name my-arm64-container --platform linux/arm64 \
-v /usr/bin/qemu-aarch64-static:/usr/bin/qemu-aarch64-static \
arm64v8/ubuntu \
qemu-aarch64-static /path/to/arm64/binary
```
其中,`/usr/bin/qemu-aarch64-static` 是在第 1 步中安装的 QEMU 二进制文件的路径,`/path/to/arm64/binary` 是 arm64 的二进制文件的路径。
arm64 ububunt1804运行x86容器
在ARM64 Ubuntu 18.04上运行x86容器,需要使用一个名为QEMU的虚拟机,它可以模拟x86系统。具体步骤如下:
1. 安装QEMU和binfmt-support:
```
sudo apt-get install qemu binfmt-support qemu-user-static
```
2. 挂载binfmt_misc文件系统:
```
sudo mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc
```
3. 启用x86架构支持:
```
sudo update-binfmts --enable qemu-x86_64
```
4. 将x86容器的可执行文件标记为可执行并启用解释器:
```
sudo chmod +x /path/to/x86/container
sudo echo ':i386:M::\x7f\x45\x4c\x46\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x03\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/usr/bin/qemu-x86_64-static:' > /proc/sys/fs/binfmt_misc/register
```
5. 启动x86容器:
```
/usr/bin/qemu-x86_64-static /path/to/x86/container
```
这样就可以在ARM64 Ubuntu 18.04上运行x86容器了。需要注意的是,由于是在虚拟机中模拟x86系统,因此性能可能会受到影响。
阅读全文