Я не могу получить команду в свой контейнер lxc или попасть в свой контейнер вообще (говорит: ошибка: не найдено)

Новичок пытается использовать контейнер lxc 16.04. Он работает, но я не могу выполнить в нем команду или вообще войти в него (здесь пробовал «время безотказной работы», но все команды такие же). Кроме того, похоже, что у него нет IP-адреса, который, как я «думаю» (ничего не зная!), Он должен иметь. Любая помощь очень ценится ...

$
$ lxc-info --name myBusyBox
Name:           myBusyBox
State:          RUNNING
PID:            19826
Memory use:     248.00 KiB
KMem use:       0 bytes
Link:           veth4OF01M
 TX bytes:      0 bytes
 RX bytes:      0 bytes
 Total bytes:   0 bytes
$ 
$
$ lxc exec myBusyBox -- uptime
error: not found
$
$ lxc exec myBusyBox -- sudo --login --user fred
error: not found
$ lxc exec myBusyBox -- sudo --login --user root
error: not found
$ 
$
$ lxc exec --debug myBusyBox -- uptime
DBUG[04-29|19:03:33] Connecting to a local LXD over a Unix socket 
DBUG[04-29|19:03:33] Sending request to LXD                   etag= method=GET url=http://unix.socket/1.0
DBUG[04-29|19:03:33] Got response struct from LXD 
DBUG[04-29|19:03:33] 
    {
        "config": {},
        "api_extensions": [
            "id_map",
            "id_map_base",
            "resource_limits"
        ],
        "api_status": "stable",
        "api_version": "1.0",
        "auth": "trusted",
        "auth_methods": null,
        "public": false,
        "environment": {
            "addresses": [],
            "architectures": [
                "x86_64",
                "i686"
            ],
            "certificate": "-----BEGIN CERTIFICATE-----\nMIIFgzCCbla..bla..blaEYn5/TQjrObuGJCQ=\n-----END CERTIFICATE-----\n",
            "certificate_fingerprint": "08a74b..bla..bla..7d75a",
            "driver": "lxc",
            "driver_version": "2.0.8",
            "kernel": "Linux",
            "kernel_architecture": "x86_64",
            "kernel_version": "4.4.0-121-generic",
            "server": "lxd",
            "server_pid": 13686,
            "server_version": "2.0.11",
            "storage": "dir",
            "storage_version": ""
        }
    } 
DBUG[04-29|19:03:33] Connected to the websocket 
DBUG[04-29|19:03:33] Sending request to LXD
                   etag= method=POST url=http://unix.socket/1.0/containers/myBusyBox/exec
DBUG[04-29|19:03:33] 
    {
        "command": [
            "uptime"
            ],
        "wait-for-websocket": true,
        "interactive": true,
        "environment": {
            "HOME": "/root",
            "TERM": "xterm",
            "USER": "root"
        },
        "width": 248,
        "height": 76,
        "record-output": false
    } 
error: not found
$
$ cat .config/lxc/default.conf 
lxc.id_map = u 0 362144 65536
lxc.id_map = g 0 362144 65536
lxc.network.type = veth
lxc.network.link = lxcbr0
$ 
$ ifconfig
eth0      Link encap:Ethernet  HWaddr dc:4a:3e:3d:38:fa  
          inet addr:192.168.69.28  Bcast:192.168.69.255  Mask:255.255.255.0
          inet6 addr: fe80::b776:cc17:bfde:7c50/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1947862 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1602785 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:904087759 (904.0 MB)  TX bytes:224598229 (224.5 MB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:65536  Metric:1
          RX packets:24177 errors:0 dropped:0 overruns:0 frame:0
          TX packets:24177 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1 
          RX bytes:2465959 (2.4 MB)  TX bytes:2465959 (2.4 MB)

lxcbr0    Link encap:Ethernet  HWaddr 00:16:3e:00:00:00  
          inet addr:10.0.3.1  Bcast:0.0.0.0  Mask:255.255.255.0
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lxdbr0    Link encap:Ethernet  HWaddr 6a:dc:61:40:be:3c  
          inet addr:10.114.49.1  Bcast:0.0.0.0  Mask:255.255.255.0
          inet6 addr: fe80::68dc:61ff:fe40:be3c/64 Scope:Link
          inet6 addr: fdbc:db09:9173:641c::1/64 Scope:Global
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:1359 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:314674 (314.6 KB)

veth4OF01M Link encap:Ethernet  HWaddr fe:7f:6e:24:b3:db  
          UP BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

$ 
$ lxc list
+------+-------+------+------+------+-----------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
+------+-------+------+------+------+-----------+
$ 
$
0
задан 29 April 2018 в 12:08

1 ответ

Существует важное различие между LXC и LXD.

LXC оригинал, более старый (но все еще поддерживаемый) способ создать и управлять контейнерами. Инструменты командной строки для LXC команды как lxc-create и lxc-info. Таким образом, они - только команды, которые запускаются с lxc-.

LXD новый путь состоит в том, чтобы создать и управлять контейнерами, и это намного легче и удобно для пользователя, чем LXC. С LXD, Вы используете lxc команда для всех задач управления. Например, lxc launch ubuntu:18.04 mycontainer создаст новый контейнер, названный mycontainer с Ubuntu 18.04. lxc info mycontainer покажет информацию о контейнере. Кроме того, LXD предварительно установлен на Ubuntu. LXC не.

Существует довольно много людей, которые запутываются когда LXD использование lxc команда.

Можно читать больше о различиях в https://discuss.linuxcontainers.org/t/comparing-lxd-vs-lxc/24

Возвратиться к Вашему вопросу. Вы использовали LXD команда lxc для контейнера, который был создан с LXC.

0
ответ дан 30 October 2019 в 00:27

Другие вопросы по тегам:

Похожие вопросы: