Questions tagged «lxc»

Linux容器(LXC)是用户空间接口,用于主线Linux内核中的操作系统级虚拟化功能,例如内核名称空间和控制组(cgroup)。这些允许在单个内核上运行多个不同的用户空间实例。注意:3个字母的“ lxc”命令是LXD的一部分,而不是LXC。如果您的问题是关于LXD而不是仅关于LXC,请使用LXD标签。



1
LXC容器内部和外部的用户权限?
我正在服务器上的Docker LXC容器内部运行某些服务,并且我开始对它们进行认真的处理。 我尚不清楚的一件事是容器内部和外部用户权限的工作方式。例如,如果我在一个容器中运行MySQL并将其数据目录设置为/dataDocker卷(即Docker卷),那么该容器内部和外部的权限如何影响访问策略? 显然,其想法是在容器(即mysql:mysql)中以其自己的用户身份运行MySQL,并赋予其对该目录的读写权限。我认为这将非常简单,只需chmod进入目录等即可。但是,这在容器外如何工作?现在我有了这个名为“数据”的Docker共享卷,如何管理对它的访问控制? 我特别希望能够在Docker容器外部运行非特权用户,该用户将定期访问MySQL共享卷并备份数据。 如何设置权限,用户和组,以便主机上的特定用户可以读取/写入Docker共享卷中的文件和文件夹?

4
如何在Linux中列出名称空间?
这个问题是从Server Fault 迁移过来的,因为可以在Unix&Linux Stack Exchange上回答。 迁移 5年前。 Linux中是否有任何方法可以列出正在运行的主机上的所有名称空间?我需要检查特定进程的名称空间(例如,在LXC容器中运行的进程以及主机上的所有其他进程),然后找出它们的cgroup。
24 linux  lxc  namespace 

6
LXC:如何将文件夹从主机安装到容器?
我正在尝试将主机上的文件夹安装到LXC容器。 主机已/mnt/ssd/solr_data创建一个文件夹(该文件夹当前位于根文件系统上,但是稍后我将在其中安装SSD驱动器,因此我为此作了准备)。 我希望将该文件夹安装/data在容器中。 因此,在容器fstab文件中,我具有以下内容: /mnt/ssd/solr_data /var/lib/lxc/Solr4StandAlone/rootfs/data ext4 defaults,noatime 0 0 但这是不行的,启动容器时出现此错误: lxc-start: No such file or directory - failed to mount '/mnt/ssd/solr_data' on '/usr/lib/x86_64-linux-gnu/lxc//data' lxc-start: failed to setup the mounts for 'Solr4StandAlone' lxc-start: failed to setup the container lxc-start: invalid sequence number 1. expected 2 lxc-start: failed to spawn 'Solr4StandAlone'
24 ubuntu  mount  lxc 

1
是什么使systemd-nspawn仍然“不适合安全容器设置”?
这在systemd-nspawn的手册页中有所说明 请注意,即使采取了这些安全预防措施,systemd-nspawn也不适用于安全的容器设置。许多安全功能可能会被规避,因此主要用于避免容器对主机系统的意外更改。该程序的预期用途是调试和测试,以及构建与引导和系统管理有关的软件包,发行版和软件。 随后在2011年的邮件列表中提出了这个问题,但答案似乎已经过时了。 systemd-nspawn包含现在CLONE_NEWNET使用该--private-network选项执行的代码。这似乎涵盖了私有AF_UNIX名称空间问题,我想提到了CAP_NET_RAW和CAP_NET_BIND问题。 此时仍存在哪些问题,例如LXC除了systemd-nspawn当前可以做什么以外还做什么?
21 security  systemd  lxc 


2
Linux-LXC; 部署尽可能小的X11映像
当前是否可以设置具有X11功能的LXC容器?我期待有最轻巧的X11容器(在内存方面),硬件加速是一个加分,但不是必需的。 如果当前不可能或不容易获得,是否知道还需要实现哪些功能来支持它?
19 linux  x11  xorg  lxc  container 

2
在正在运行的LXC内执行命令
我想在现有的lxc中执行命令,而无需通过常规的Linux初始化。lxc-execute该命令是针对我的猜测,但是在现有的测试lxc上运行此命令时出现以下错误。 sudo lxc-execute -n test -- service apache2 start 我收到以下错误: lxc-execute: Failed to find an lxc-init lxc-execute: invalid sequence number 1. expected 4 lxc-execute: failed to spawn 'test'
18 linux  lxc 

3
如何为LXC guest虚拟机配置外部IP地址?
我正在探索Ubuntu 12.04中的LXC功能,我真的想建立一个像这样的网络: client1: 192.168.56.101/24 lxc-host: 192.168.56.102/24 guest1 192.168.56.201/24 guest2 192.168.56.202/24 guest3 192.166.56.203/24 我只需要一个“扁平”网络,来宾可以完全访问LAN,并且可以从客户端看到它们。我习惯使用libvirt / KVM桥接网络,如下所述:http : //libvirt.org/formatdomain.html#elementsNICSBridge 在主机上: # /etc/network/interfaces auto br0 iface br0 inet static address 192.168.56.102 netmask 255.255.255.0 broadcast 192.168.56.255 bridge_ports eth1 第一个访客的lxc.conf: # /var/lib/lxc/guest1/config: lxc.network.type=veth lxc.network.link=br0 lxc.network.flags=up lxc.network.hwaddr=00:16:3e:13:48:4e lxc.network.ipv4=192.168.56.201/24 看来192.168.56.201对外界不可见,这不是我想要的。似乎我必须执行以下操作之一: 1)在主机和来宾上手动设置路由 2)进行一些操作...提前在主机上创建虚拟接口,并配置guest虚拟机以使用它们lxc.network.type=phys。我不知道这是否真的有效。 我专注于Ubuntu,但是针对RHEL / Fedora的答案也将非常有用。
18 ubuntu  networking  lxc 


5
为什么Docker容器在Ubuntu 12.04上没有启动脚本的情况下无法在启动时启动?
使用有关在运行Ubuntu 12.04和Docker 0.8.1的Linode VPS上自动启动 Docker的说明,指定的容器不会在重新启动时启动。 一旦启动,我就能 ~$ sudo start [service-name] 一切都按计划进行,但我也想让容器在重启后重启。 教程中的脚本是否不旨在处理重启? / etc / default / docker文件包含一行: DOCKER_OPTS="-r=false" /etc/init/service-name.conf直接来自docker页面: description "service description" author "me" start on filesystem and started docker stop on runlevel [!2345] respawn script # Wait for docker to finish starting up first. FILE=/var/run/docker.sock while [ ! …
15 ubuntu  upstart  lxc 

3
在Linux上“离线”运行子进程的命令(无外部网络)
我有一个程序要在脱机模式下进行测试,而又不中断我的实际网络。该程序仍然需要连接到本地套接字,包括Unix域套接字和环回。它还需要侦听回送并且对其他应用程序可见。 但是尝试连接到远程计算机应该失败。 我想有一个工具,它的工作原理是strace/ unshare/ sudo,只是运行在互联网(和LAN)隐蔽和一切仍在工作的命令: $ offline my-program-to-test 该问题的答案提示:阻止进程的网络访问? 那里有一些建议,例如以其他用户身份运行然后操纵iptables或unshare -n。但是在两种情况下,我都不知道要与主系统共享unix域套接字和环回的诱惑-该问题的答案仅告诉我如何取消共享整个网络。 我正在测试的程序仍然需要连接到我的X服务器和dbus,甚至还能够在环回侦听来自系统上其他应用程序的连接。 理想情况下,我想避免创建chroot或用户或VM等,因为它就像拔掉网络电缆一样令人讨厌。即问题的关键是我怎样才能使它简单如一个sudo。 我希望该过程能够正常运行100%,除了指定非本地地址的网络调用会失败。理想情况下,保持相同的uid,相同的homedir,相同的pwd,相同的所有内容,除了...离线。 我使用的是Fedora 18,因此无法移植的Linux回答就很好(甚至期望)。 我什至很乐意通过编写C程序来解决此问题,如果涉及到这一点,那么涉及编写C的答案就可以了。我只是不知道C程序在保留本地网络的同时撤销外部网络访问权限时需要执行什么系统调用。 任何尝试支持“离线模式”的开发人员都可能会喜欢此实用程序!

3
如何使用systemd创建用户cgroup
我在中使用非特权lxc容器Arch Linux。以下是基本的系统信息: [chb@conventiont ~]$ uname -a Linux conventiont 3.17.4-Chb #1 SMP PREEMPT Fri Nov 28 12:39:54 UTC 2014 x86_64 GNU/Linux 这是一个具有以下内容的自定义/编译内核user namespace enabled: [chb@conventiont ~]$ lxc-checkconfig --- Namespaces --- Namespaces: enabled Utsname namespace: enabled Ipc namespace: enabled Pid namespace: enabled User namespace: enabled Network namespace: enabled Multiple /dev/pts instances: enabled …

2
本地主机上的LXC来宾的快速X?
如何有效地在LXC容器中运行X应用程序? ssh -Y guest 太慢-没有图形加速ssh -Y-一切都必须使用传统的X11协议在虚拟网络上传输。 能够在主机和来宾应用程序之间复制粘贴是理想的,但不是必需的。(出于我的目的)运行两台X服务器(一台用于主机,一台用于来宾)是必不可少的。 我无法在guest虚拟机内部运行本机Xorg,因为它抱怨/dev/tty0丢失,并且无法在guest虚拟机中运行mknod该设备,因为我拒绝了权限,即使以root身份进行操作也是如此。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.