小编Gre*_*ake的帖子

重新导入的 docker 镜像/容器中的“未指定命令”

我试图从一台机器上获取一个 docker 容器并在另一台机器上运行它并遇到此错误:“来自守护进程的错误响应:未指定命令”。

下面是一个显示问题的简化示例:

docker --version
Docker version 1.10.1, build 9e83765
docker pull ubuntu
docker run --name u1 -dit ubuntu:latest
docker export -o exported u1
docker stop u1
docker rm u1
docker import exported ubuntu:imported
docker run --name u1 -dit ubuntu:imported
docker: Error response from daemon: No command specified.
Run Code Online (Sandbox Code Playgroud)

在那个例子中,我们首先拉取一个镜像 (ubuntu) 并u1从它成功创建/运行容器。然后我们将该容器导出到文件 ( exported),停止/删除容器,将文件导入新映像 ( ubuntu:imported) 并尝试从中运行新容器。它失败。

docker

30
推荐指数
2
解决办法
7万
查看次数

KVM 来宾无法写入非 root 用户拥有的 9p 共享

我的目标是为 KVM 来宾设置对 9p 共享的完全写入访问权限。主机和来宾都具有相同 ID 的相同用户/组。主机和来宾都应该能够使用相同的用户名写入共享,我不想区分文件是由主机写入还是由来宾写入。kvm 进程以 root 身份运行——我在 /etc/libvirt/qemu.conf 中设置了usergroupto root

在主机上的guest定义中,共享定义如下:

<filesystem type='mount' accessmode='passthrough'>
  <source dir='/mnt/storage/data'/>
  <target dir='data'/>
  <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</filesystem>
Run Code Online (Sandbox Code Playgroud)

在来宾中,共享安装为:

mount -t 9p -o rw,trans=virtio,version=9p2000.L,msize=262144 data /mnt/data
Run Code Online (Sandbox Code Playgroud)

问题是来宾中的 root 用户无法写入主机上非 root 用户拥有的文件/文件夹。更奇怪的是,guest 的 root 可以重命名和删除此类文件。也就是说,当我在主机上以非 root 用户身份创建文件时,即使我可以重命名和删除它,我也无法以访客的 root 用户身份编辑它!

我还发现,在主机上以非 root 用户创建的文件夹的权限设置为 777,来宾的 root 可以写入(即在其中创建文件)。但是,这不适用于文件 - 无论权限如何,它们仍然无法编辑。

主机和来宾都运行 Linux 服务器 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux。在 Debian 中,SELinux 默认是禁用的,我没有启用它。我尝试了所有三种可用的 9p 访问模式(passthroughmapped和 …

permissions qemu kvm-virtualization 9p

17
推荐指数
1
解决办法
5996
查看次数

添加 CPU 会降低 MySQL 5.5 (Debian) 的性能

我即将在 OpenVZ 容器中设置一个数据库服务器 (MySQL),我一直想知道应该为它分配多少 CPU。我决定对其进行基准测试。我比较了两个 OS/MySQL 发行版,并测试了它们在 1、2、3 和 4 个 CPU 上的表现。

第一个软件配置是:

  • CentOS 6.5 版(最终版)
  • mysql Ver 14.14 Distrib 5.1.71, for redhat-linux-gnu (x86_64) using readline 5.1

第二:

  • Debian GNU/Linux 7 \n \l
  • mysql Ver 14.14 Distrib 5.5.31,用于 debian-linux-gnu (x86_64) 使用 readline 6.2

两者都在同一内核上运行 - 2.6.32-openvz-042stab083.2-amd64 #1 SMP Fri Nov 8 17:59:25 MSK 2013 x86_64 GNU/Linux。

所有软件都是从软件包中安装的,开箱即用,无需任何自定义配置调整。

硬件:6GB RAM,1-4 个 CPU 3.5 GHz。

对于基准测试,我在以下场景中使用了 sysbench:

sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --db-driver=mysql --mysql-password=d prepare
sysbench --test=oltp --oltp-table-size=1000000 --mysql-db=test --mysql-user=root --db-driver=mysql …
Run Code Online (Sandbox Code Playgroud)

mysql performance debian-wheezy benchmark

8
推荐指数
1
解决办法
679
查看次数

cryptsetup luksOpen 密钥文件不起作用

我在尝试时收到“此密码没有可用的密钥。 ”:

sudo cryptsetup open --type luks /dev/sdc storage --key-file=/path/to/keyfile

/path/to/keyfile文件仅包含纯文本形式的密码。

如果我在交互式询问时输入相同的密码:

sudo cryptsetup open --type luks /dev/sdc storage

然后就可以了。

为什么--key-file在这种情况下不起作用?这是 Ubuntu 14.04 @ Linux 3.13.0-68。

disk-encryption luks

3
推荐指数
1
解决办法
1万
查看次数

为什么 AWS EC2 实例在重新启动时会迁移到新的底层主机?

根据 AWS文档

当您停止正在运行的实例时……该实例在启动时会迁移到新的底层主机。

来自同一文档的声明也略有不同:

当您启动实例时,它会进入挂起状态,并且在大多数情况下,我们会将实例移动到新的主机上。(如果主机没有问题,您的实例可能会保留在同一台主机上。)

那么,在重新启动实例时需要将实例移动到新主机背后的基本原理是什么?

出现这个问题的唯一原因是我在 AWS 认证考试样本中发现了一个问题,该问题询问是否会迁移到新主机,目前无法猜测正确答案。

amazon-ec2 amazon-web-services

1
推荐指数
1
解决办法
1322
查看次数