Este é o comando kdb-elektrify-getenv que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS
PROGRAMA:
NOME
kdb-elektrify-getenv - elektrify o ambiente de aplicativos
SINOPSE
kdb eletrificar-getenv Formulário on line opções
DESCRIÇÃO
Quando um aplicativo é elektrified usando libelektragetenv, ele não apenas solicita
ambiente, mas também Elektra para cada getenv(3) e seguro_getenv(3) chamada de biblioteca.
Seu principal objetivo é:
· Têm formas padronizadas de modificar o ambiente
· Tornar desnecessário o relogin (ou mesmo reiniciar!) De aplicativos
· Permitir uma estrutura hierárquica para o ambiente
· Permitir que as configurações se apliquem apenas a aplicativos individuais ou apenas em um contexto especial
· Ainda preserva as vantagens (herança de meio ambiente para subprocessos)
· Disponibilidade em at, cron e scripts semelhantes.
É implementado usando uma técnica LD_PRELOAD, consulte USO abaixo para ativação global.
PESQUISAS
O principal objetivo desta abordagem é finalmente ter uma maneira bem definida de definir e obter
variáveis ambientais. As variáveis da Elektra estarão em uso imediatamente para cada novo
aplicativo iniciado (não é necessário fazer login novamente).
Para fazer isso, getenv(3) irá pesquisar fontes múltiplas ao lado de pesquisar no ambiente
(ambiente). Como exemplo de execução, usaremos getenv ("CASA") -> / caminho / para / casa:
1. Os parâmetros de linha de comando dados sempre serão preferidos (consulte OPÇÕES abaixo).
Por exemplo kdb eletrificar-getenv --elektra: HOME = / caminho / para / casa
2. Então / env / override / será procurado, onde chave é o parâmetro para getenv. Se
encontrada, a chave será retornada, se for uma chave nula, getenv retornará NULL.
Por exemplo kdb conjunto usuário / env / override / HOME / caminho / para / casa
3. Então o ambiente será solicitado.
Por exemplo HOME = / caminho / para / casa kdb eletrificar-getenv
4. Então / env / fallback / será pesquisado. Se encontrada, a chave será devolvida, se for
é uma chave nula, getenv retornará NULL.
Por exemplo kdb conjunto usuário / env / fallback / HOME / caminho / para / casa
OPÇÕES
Quando eletrificar-getenv está ativo, cada aplicativo aceita adicionalmente getenv da Elektra
opções. É permitido intercalar as opções do Elektra e da aplicação. Elektra vai
analise suas opções (começando com --elektra) primeiro e descarte-as antes do outro
o aplicativo é iniciado. Portanto, o aplicativo não verá que eles existiam,
por exemplo: dado kdb eletrificar-getenv -V --elektra-depurar -L o aplicativo irá
ser chamado com -V -L.
Interno Opções
--elektra-ajuda
Produz esta ajuda.
--elektra-versão
Dá informações sobre a versão.
--elektra-debug = arquivo, ELEKTRA_DEBUG or / env / opção / debug
Rastreie tudo getenv(3) chamadas para um arquivo. stderr se nenhum arquivo for fornecido, por exemplo kdb conjunto
usuário / env / opção / depuração "". Observe que os valores nulos (sem o quarto argumento) desabilitarão
depurar mensagens. Veja os exemplos abaixo.
--elektra-clearenv, ELEKTRA_CLEARENV or / env / opção / clearenv
Ligar Clearenv(3) antes de entrar no principal. Este é um recurso de segurança recomendado.
A própria Elektra, se configurada dessa forma, ainda será capaz de usar o ambiente.
--elektra-reload-timeout = time_in_ms, ELEKTRA_RELOAD_TIMEOUT or / env / option / reload_timeout
Ative um recurso baseado em tempo limite quando um tempo é fornecido em ms (e não é 0).
As opções internas estão disponíveis em três variantes diferentes:
1. como parâmetro de linha de comando: --elektra-, que são não passou através exec(3)
chamadas.
2. como variável de ambiente: ELEKTRA_. que pode ser passado por exec(3)
chamadas, mas são removidos por Clearenv(3) chamadas.
3. como entrada Elektra KDB: / env / opção /, que são a maneira de conseguir uma opção para
ser habilitado para cada aplicativo.
Por exemplo kdb conjunto usuário / env / opção / clearenv "" para limpar o ambiente para todos os aplicativos
iniciado por esse usuário (observe que pelo menos PATH deve ser definido usando kdb conjunto
usuário / env / fallback / PATH "/ bin:/ usr / bin" então).
Observe que as chaves nulas são iguais às opções não definidas. Por exemplo kdb conjunto
sistema / env / opção / depuração "/tmp/elektra.log" e kdb conjunto usuário / env / opção / depuração precisarão
ative o registro para o sistema, exceto para o usuário atual.
Contextual Opções
--elektra% % = or / env / layer /
Adicione as informações contextuais (= camada) % % com o seu valor . Observe que
% Nome% é predefinido com argv [0] e % basename% com nome de base (argv [0]).
Os valores podem conter / para formar hierarquias, por exemplo --elektra% name% = aplicativo / perfil
Opções for Aplicações
--elektra: key = value, / env / override / or / env / fallback /
defina uma chave / valor a ser preferido, ou seja, o primeiro a ser considerado conforme explicado em
OLHO PARA CIMA.
As chaves podem conter / para formar hierarquias, por exemplo --elektra: my / HOME = / path / to / home.
USO
Para usar sempre o ambiente getenv da Elektra, basta adicionar a saída ao arquivo:
kdb elektrify-getenv | cauda -1 | sudo tee -a /etc/ld.so.preload
isso também pode ser feito usando Elektra:
sudo kdb mount /etc/ld.so.preload system / ld / preload linha null
sudo kdb set "system / ld / preload / new" `kdb elektrify-getenv | cauda -1`
CONTEXTO
Os metadados contexto na especificação pode ser usado para facilitar um contexto dependente
olho para cima. Em seu metavalor todas as substituições de % % será substituído pelo dado
opções contextuais --elektra% % = e / env / layer / chaves.
Por exemplo, ter um diretório inicial diferente para qualquer usuário e aplicativo:
kdb definir usuário / env / camada / usuário markus
kdb definir usuário / usuários / markus / konqueror / HOME / home / download
kdb setmeta spec / env / override / HOME context / users /% user% /% name% / HOME
Use kdb-elektrify-getenv online usando serviços onworks.net