2.6. Configurando a Variável $LFS e o Umask

Ao longo deste livro, a variável de ambiente LFS será usada muitas vezes. Você deveria se assegurar de que essa variável sempre está definida no decorrer do processo de construção do LFS. Ela deveria ser configurada para o nome do diretório onde você estará construindo seu sistema LFS - nós usaremos /mnt/lfs como um exemplo, porém você possivelmente escolha qualquer nome de diretório que queira. Se você está construindo o LFS em uma partição separada, [então] esse diretório será o ponto de montagem para a partição. Escolha um local de diretório e configure a variável com o seguinte comando:

export LFS=/mnt/lfs

Ter essa variável configurada é benéfico naqueles comandos, tais como mkdir -v $LFS/tools, que podem ser digitados literalmente. O shell automaticamente substituirá $LFS por /mnt/lfs (ou para o que a variável foi configurada) quando processar a linha de comando.

Agora configure a máscara de criação do modo de arquivo (umask) para 022 caso a distribuição anfitriã use um padrão diferente:

umask 022

Configurar o umask como 022 garante que os arquivos e diretórios recém-criados sejam escrevíveis somente pelos(as) donos(as) deles, mas sejam legíveis e pesquisáveis (somente para diretórios) por qualquer pessoa (assumindo que os modos padrão são usados pela chamada de sistema open(2), novos arquivos acabarão com o modo de permissão 644 e diretórios com o modo 755). Um padrão excessivamente permissivo pode deixar buracos de segurança no sistema LFS, e um padrão excessivamente restritivo pode causar problemas estranhos ao construir ou usar o sistema LFS.

[Cuidado]

Cuidado

Não se esqueça de verificar se LFS está configurada e se o umask está configurado como 022 sempre que você sair e reentrar no ambiente de trabalho atual (como ao fazer um su para root ou outro(a) usuário(a)). Verifique se a variável LFS está configurada corretamente com:

echo $LFS

Certifique-se de que a saída gerada mostre o caminho para o local de construção do teu sistema LFS, que é /mnt/lfs se o exemplo fornecido foi seguido.

Verifique se o umask está configurado corretamente com:

umask

A saída gerada possivelmente seja 0022 ou 022 (o número de zeros à esquerda depende da distribuição anfitriã).

Se qualquer saída gerada desses dois comandos estiver incorreta, use o comando dado anteriormente nesta página para configurar $LFS como o nome correto de diretório e configurar umask como 022.

[Nota]

Nota

Uma maneira de garantir que a variável LFS e o umask estejam sempre configuradas corretamente é a de editar o arquivo .bash_profile em teu diretório pessoal e em /root/.bash_profile e inserir os comandos export e umask acima. Além disso, o shell especificado no arquivo /etc/passwd para todos(as) os(as) usuários(as) que precisam da variável LFS precisa ser bash para garantir que o arquivo .bash_profile seja incorporado como parte do processo de login.

Outra consideração é o método que é usado para logar no sistema anfitrião. Se logar por intermédio de um gerenciador gráfico de tela, o .bash_profile do(a) usuário(a) normalmente não é usado quando um terminal virtual for iniciado. Nesse caso, adicione os comandos ao arquivo .bashrc para o(a) usuário(a) e root. Adicionalmente, algumas distribuições usam um teste "if" e não executam as instruções restantes do .bashrc para uma invocação não interativa do bash. Certifique-se de colocar os comandos antes do teste para uso não interativo.