Groups | Search | Server Info | Keyboard shortcuts | Login | Register


Groups > pt.comp.so.linux > #2838

Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico?

From Patricia Ferreira <pferreira@example.com>
Newsgroups pt.comp.so.linux
Subject Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico?
Date 2020-07-01 22:54 -0300
Organization Aioe.org NNTP Server
Message-ID <86blkylm0w.fsf@example.com> (permalink)
References <rdiscd$1rab$1@gioia.aioe.org>

Show all headers | View raw


Ninguém <usenet@rasparta.org> writes:

> Eu tenho feito assim:
> Com debootstrap instalo uma versão mínima do debian numa diretoria e
> depois consigo arrancá-la com systemd-nspawn.

Por que você faz isso?  Qual o problema que se resolve com essa solução?

> Mas não sei como fazer algumas coisas:
> - Como configurar vários sistemas semelhantes e ligá-los todos como se
> estivessem ligados a um switch virtual (como se fosse um laboratório
> virtual, com uma rede diferenciada)?

O debootstrap parece automatizar uma série de operações num certo
diretório (como baixar vários pacotes pra dentro desse diretório) e
termina lhe concedendo um shell dentro desse diretório logo depois de
alterar a raiz do processo do shell pra apontar pra esse diretório.  O
efeito é um shell que não consegue escapar desse diretório.  É por isso
que você tem a solução de que está num novo sistema, mas é só um
diretório no seu velho sistema.

Pra você compreender o debootstrap, é educacional que você estude o
chroot isoladamente.  Obtenha um shell S estático (isto é, não
dinamicamente montável pra que ele possa ser executado sem requerer
qualquer biblioteca), crie um diretório novo d/ e coloque S dentro de
d/.  Em seguida, peça ao super usuário pra fazer um chroot em d/ e
executar o shell que você colocou lá.  Assim:

%file /bin/sh
/bin/sh: ELF 32-bit LSB executable, Intel 80386, version 1, for OpenBSD,
statically linked, stripped

Note que o shell é estático.

%mkdir d
%cp /bin/sh d/

Criei d e coloquei o shell estático em d/sh.

%sudo chroot d/ /sh
/sh: No controlling tty (open /dev/tty: No such file or directory)
/sh: warning: won't have full job control
#

O shell não encontra o /dev/tty.  Claro, não existe esse arquivo ali.
Tem apenas o sh lá dentro.  Onde estou?

# pwd
/

Na raiz.  É isso que o chroot faz.  It [ch]anges the ]root] of the file
system --- e em seguida executa um processo.  Note que nem conseguimos
listar arquivos usando esse shell porque não um ls.

# ls
/sh: ls: not found

A alternativa é usar a capacidade do próprio shell de ler um diretório.
Podemos usar a expansão de expressões regulares, uma solução útil quando
o ls não está por perto pra ajudar.

# echo *
sh
#

> Presumo que tenha que configurar uma placa de rede virtual... mas e
> depois não há o perigo de os sistemas "virtuais" "verem" o sistema
> real? Não queria isso!  - Como fazer para que tenha um ambiente
> gráfico (wayland) e que, ao arrancar, me arranque numa janela à
> semelhança do virtualbox?  - Como configurar os cgroups de forma a
> proteger ao máximo o sistema anfitrião?

Você parece estar em busca de uma solução como o Docker.  Um kernel como
o Linux primeiro permitiu que você alterasse a raiz do sistema de
arquivos em cada processo.  É o que permite o chroot.  Depois eles
implementaram o que é chamado hoje de namespaces.  Um sistema de
arquivos é um namespace.  Você parece interessado em compreender o que é
um namespace e o Docker seria a solução que você busca.  (Já que você
não está interessado num isolamento total como os providos por um
virtualizador.)  O Docker vai lhe dar a sensação de que você está de
fato isolado num sistema novo, mas é nada mais que a ilusão do chroot
porque seus processos estarão todos sendo executados pelo seu próprio
sistema.

> Penso que o qubes faz algo semelhante, mas recorre ao xen ou ao
> kvm... eu pretendia algo mais ligeiro.

Xen e KVM funcionam são hypervisors.  Uma forma mais eficiente de se
executar máquinas virtuais.  Pela descrição que você faz, o Docker
parece ser o que mais se adapta a sua necessidade.

Back to pt.comp.so.linux | Previous | NextPrevious in thread | Next in thread | Find similar


Thread

Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Ninguém <usenet@rasparta.org> - 2020-07-01 21:40 +0100
  Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Paulo da Silva <p_d_a_s_i_l_v_a_ns@nonetnoaddress.pt> - 2020-07-01 22:33 +0100
    Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Ninguém <usenet@rasparta.org> - 2020-07-02 09:33 +0100
      Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Patricia Ferreira <pferreira@example.com> - 2020-07-02 08:38 -0300
  Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Patricia Ferreira <pferreira@example.com> - 2020-07-01 22:54 -0300
    Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Ninguém <usenet@rasparta.org> - 2020-07-02 10:04 +0100
      Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Patricia Ferreira <pferreira@example.com> - 2020-07-02 08:59 -0300
        Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Ninguém <usenet@rasparta.org> - 2020-07-02 14:43 +0100
          Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Paulo da Silva <p_d_a_s_i_l_v_a_ns@nonetnoaddress.pt> - 2020-07-03 03:34 +0100
            Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Ninguém <usenet@rasparta.org> - 2020-07-03 08:09 +0100
              Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Ninguém <usenet@rasparta.org> - 2020-07-03 08:31 +0100
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Patricia Ferreira <pferreira@example.com> - 2020-07-03 06:16 -0300
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Ninguém <usenet@rasparta.org> - 2020-07-03 15:42 +0100
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Patricia Ferreira <pferreira@example.com> - 2020-07-03 17:04 -0300
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Paulo da Silva <p_d_a_s_i_l_v_a_ns@nonetnoaddress.pt> - 2020-07-04 05:29 +0100
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Ninguém <usenet@rasparta.org> - 2020-07-04 09:02 +0100
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Paulo da Silva <p_d_a_s_i_l_v_a_ns@nonetnoaddress.pt> - 2020-07-04 19:12 +0100
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Ninguém <usenet@rasparta.org> - 2020-07-04 08:58 +0100
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Patricia Ferreira <pferreira@example.com> - 2020-07-04 10:40 -0300
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Ninguém <usenet@rasparta.org> - 2020-07-03 15:53 +0100
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Paulo da Silva <p_d_a_s_i_l_v_a_ns@nonetnoaddress.pt> - 2020-07-03 19:39 +0100
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? João Jerónimo <jj.mailspam@yahoo.com> - 2020-07-15 10:19 +0100
              Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Paulo da Silva <p_d_a_s_i_l_v_a_ns@nonetnoaddress.pt> - 2020-07-03 19:37 +0100
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Ninguém <usenet@rasparta.org> - 2020-07-04 09:40 +0100
                Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Paulo da Silva <p_d_a_s_i_l_v_a_ns@nonetnoaddress.pt> - 2020-07-04 19:25 +0100
              Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Paulo da Silva <p_d_a_s_i_l_v_a_ns@nonetnoaddress.pt> - 2020-07-05 08:08 +0100
            Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Patricia Ferreira <pferreira@example.com> - 2020-07-03 05:56 -0300
  Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? João Jerónimo <jj.mailspam@yahoo.com> - 2020-07-13 12:16 +0100
    Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? Ninguém <usenet@rasparta.org> - 2020-07-15 10:31 +0100
      Re: Como criar um sistema mínimo para systemd-nspawn com modo gráfico? João Jerónimo <jj.mailspam@yahoo.com> - 2020-07-17 12:01 +0100

csiph-web