Gentoo Archives: gentoo-user-br

From: nunojsilva@ist.utl.pt (Nuno J. Silva)
To: gentoo-user-br@l.g.o
Subject: [gentoo-user-br] Re: Sobre o Erro no env + chroot
Date: Sun, 24 Oct 2010 14:12:02
Message-Id: 87ocaju1ax.fsf@ist.utl.pt
In Reply to: Re: [gentoo-user-br] Re: Sobre o Erro no env + chroot by Thiago Nunes
1 Thiago Nunes <thiagonunesrs@×××××.com>
2 writes:
3
4 > Em 24 de outubro de 2010 10:05, Nuno J. Silva <nunojsilva@×××××××.pt> escreveu:
5 >
6 >> Ele não encontra porque o $PATH está vazio. Isso não me passou pela
7 >> cabeça, quando respondi na outra thread, mas o que o "-i" faz é ignorar
8 >> as variáveis que já estão definidas, pelo que quando "chroot" é avaliado
9 >> o ambiente só tem HOME e TERM, e *não* tem PATH.
10 >
11 > Hm...
12 >
13 >> A não ser que me escape alguma ordem de avaliação da BASH, isto deve
14 >> funcionar
15 >>
16 >>  env -i HOME=$HOME TERM=$TERM `which chroot` /mnt/gentoo /bin/bash
17 >
18 > Então na verdade isso é automatizar o que eu tinha dito anteriormente
19 > de colocar o caminho completo do chroot. Porém se o env não tem $PATH
20 > ele provavelmente não vai encontrar nem o "which". Por exemplo:
21 >
22 > D520 ~ # which chroot
23 > /usr/bin/chroot
24 > D520 ~ # unset PATH
25 > D520 ~ # which chroot
26 > bash: which: Arquivo ou diretório não encontrado
27
28 A minha dúvida da ordem de avaliação é se funciona sempre como
29 aqui. Aqui o que está entre os acentos agudos é avaliado *antes* de
30 executar o comando, no ambiente actual, onde ainda existe PATH.
31
32 $ env -i which chroot
33 which: no chroot in ((null))
34
35 $ env -i echo `which chroot`
36 /usr/bin/chroot
37
38
39 >> Erro da documentação, não?
40 >
41 > Não exatamente porque o que a documentação indica funciona, mas em
42 > alguns casos o env rateia, então um comando mais completo vai
43 > funcionar nos casos onde o que a documentação sugere hoje não
44 > funciona.
45
46 Mas se o env -i limpa o path, isto só deve funcionar quando estamos na
47 pasta onde se encontra o chroot.
48
49 --
50 Nuno J. Silva
51 gopher://sdf-eu.org/1/users/njsg