arquivo de ambiente

Propósito

Configura o ambiente do usuário.

Descrição

O arquivo /etc/environment contém variáveis especificando o ambiente básico para todos os processos. Quando um novo processo se inicia, o subroutine exec disponibiliza uma matriz de strings que possuem o formato Nome=Valor. Essa matriz de strings é chamada de ambiente. Cada nome definido por uma das strings é chamado de variável de ambiente ou variável de shell. A subroutine exec permite que todo o ambiente seja configurado de uma só vez.

As variáveis de ambiente são examinadas quando um comando começa a ser executado. O ambiente de um processo não é alterado alterando-se o arquivo /etc/environment . Quaisquer processos que foram iniciados antes da mudança para o arquivo /etc/environment devem ser reiniciados se a mudança for efetivar para esses processos. Se a variável TZ for alterada, o daemon cron deve ser reiniciado, pois esta variável é usada para determinar o horário local atual.

Aplicam-se as seguintes restrições, ao modificar o arquivo ambiente :

  • Certise-se de que as variáveis de ambiente recém-criadas não entram em conflito com variáveis padrão como CORREIO, PS1, PS2e IFS.
  • Certifica-se de que as informações no arquivo ambiente estão no formato Nome=Valor . Ao contrário dos scripts perfil , o arquivo ambiente não é um shell script e não aceita dados em nenhum formato diferente do formato Nome=Valor .

O Ambiente Fundamental

Ao fazer o login, o sistema define variáveis de ambiente do arquivo ambiente antes de ler seu perfil de login, .perfil.

As variáveis a seguir compõem o ambiente básico:

Variável Descrição
INICIAL O nome completo do caminho do diretório de login ou HOME do usuário. O programa login define isso para o nome especificado no arquivo /etc/passwd .
Lang O nome locale atualmente em vigor. A variável LANG é definida no arquivo /etc/environment no momento da instalação.
NLSPATH O nome completo do caminho para catálogos de mensagens. O padrão é:

/usr/lib/nls/msg/%L/%N:

/usr/lib/nls/msg/%L/%N.cat:

onde %L é o valor da categoria LC_MENSAGENS e %N é o nome do arquivo de catálogo.
Nota: Veja o comando chlang para obter mais informações sobre alteração de catálogos de mensagens.
LC__FASTMSG Se LC_FASTMEG for configurado como false, o POSIX-compatível com manipulação de mensagens é realizado. Se LC__FASTMSG for configurado como true, ele especifica que as mensagens padrão devem ser usadas para as locales C e POSIX e que o NLSPATH é ignorado. Se essa variável for configurada para qualquer coisa diferente de falso ou desconfigurar, ela é considerada a mesma que está sendo configurada como true. O valor padrão é LC__FASTMSG=true no arquivo /etc/environment .
LOCPATH O nome completo do caminho da localização das tabelas de Suporte da Língua Nacional. O padrão é /usr/lib/nls/loc e é configurado no arquivo /etc/profile . Se a variável LOCPATH for um valor nulo, ele assume que o diretório atual contém os arquivos locale.
Nota: Todos os programas setuid e setgid ignorarão a variável de ambiente LOCPATH .
Caminho A sequência de diretórios que comanda tais como os comandos sh, tempo, legal e nohup procura quando procurar um comando cujo nome de caminho esteja incompleto. Os nomes de diretórios são separados por colons.
TZ As informações de fuso horário. A variável de ambiente TZ é configurada pelo arquivo /etc/environment . A variável de ambiente TZ tem o seguinte formato (espaços inseridos para a legibilidade):
std offset dst offset , rule

Os campos dentro da variável de ambiente TZ são definidos da seguinte forma:

std e dst
Designar os fusos horários padrão (std) e verão (dst). Apenas o valor std junto com o valor deslocamento apropriado é necessário. Se o valor dst não for especificado, o horário de verão não se aplica. Os valores especificados podem ser não menos de três e não mais do que TZNAME_MAX bytes de comprimento. O comprimento das variáveis corresponde ao%Zcampo do comando data ; para libc e libbsd, TZNAME_MAX é igual a três caracteres. Quaisquer caracteres ASCII não numéricos, exceto os seguintes podem ser inseridos em cada campo: uma liderança: (colon), a, (vírgula), a-(sinal de menos), a + (mais sinal) ou o caractere nulo ASCII.
Nota: POSIX 1.0 reserva o início: (dois pontos) para uma especificação TZ definida pela implementação. O sistema operacional desaprova os dois pontos iniciais, selecionando CUT0 e configurando o%Zcampo para uma string nula.

Um exemplo de formato std e dst é o seguinte:

EST5EDT 
Nota: Se o conjunto de valor for inválido ou não reconhecido, o fuso horário será padronizado para UTC/GMT.
EST Especifica o horário padrão do Leste U.S.
5 Especifica o deslocamento, que fica 5 horas atrás do Horário Universal Coordenado (CUT).
EDT
Especifica a abreviação de fuso horário de verão correspondente.
Nota: Veja "Fusos Horários" para uma lista de nomes de fuso horário definidos para o sistema.
Descolamento
Denota o valor agregado ao tempo local para igual Tempo Universal Coordenado (CUT). A CUT é o padrão de tempo internacional que substituiu em grande parte o Greenwich Mean Time. A variável deslocamento tem o seguinte formato:
hh:mm:ss

Os campos dentro da variável deslocamento são definidos da seguinte forma:

hh Especifica o deslocamento dst em horas. Esse campo é obrigatório. Os comandoshhvalor pode variar entre os números inteiros -12 e +11. Um valor negativo indica que o fuso horário é a leste do meridiano primeridiano; um valor positivo ou nenhum valor indica o fuso horário está a oeste do meridiano.
mm Especifica o deslocamento dst detalhado ao minuto. Esse campo é opcional. Caso o comandommvalor está presente, deve ser especificado entre 0 e 59 e precedido de um: (colon).
ss
Especifica o deslocamento dst detalhado para o segundo. Os comandossscampo é opcional. Caso o comandossvalor está presente, deve ser especificado entre 0 e 59 e precedido de um: (colon).

Uma variável deslocamento deve ser especificada com a variável std . Uma variável deslocamento para a variável dst é opcional. Se nenhum deslocamento for especificado com a variável dst , o sistema assume que o horário de verão é de uma hora antes do horário padrão.

Como exemplo de sintaxe de desvio, Zurique está uma hora à frente do CUT, portanto seu desvio é -1. Terra Nova está 1.5 horas à frente do horário padrão do leste U.S. Sua sintaxe pode ser declarada como qualquer um dos seguintes: 3:30, 03:30, + 3:30, ou 3:30:00.

regra
A variável regra indica quando alterar para e voltar do horário de verão. A variável regra tem o seguinte formato:
start/time,end/time

Os campos dentro da variável regra são definidos da seguinte forma:

start Especifica a mudança de padrão para o horário de verão.
end Especifica o retorno ao horário padrão a partir do horário de verão.
time Especifica quando as alterações de horário ocorrem dentro do fuso horário. Por exemplo, se otimeé codificada para 2 a.m. então o horário muda quando o fuso horário atinge 2 a.m. na data especificada nostartvariável.
/ Delimita a data de início, data de encerramento e variáveis de tempo.
,
(Comma) Delimita dois pares de data e hora.
Os comandosstarteendvariáveis suportam uma sintaxe para o tempo de Julian (J) e uma sintaxe para anos bissexto (M):
Jn
Mm.n.d

No noJsintaxe, onvariável tem o valor de 1 até 365. Os dias bissexto não são contados. No noMsintaxe,mé o mês,na semana, edo dia da semana a partir do dia 0 (domingo).

A variável regra tem o mesmo formato que a variável deslocamento , exceto sem liderar-(sinal de menos) ou + (sinal de mais) é permitido. A inadimplência dostarté 02:00:00 (2 a.m.).
Nota: Os deslocamentos de fuso horário e os pontos de mudança de tempo estão inter-relacionados e dependentes de contexto. A mudança semântica de execução de tempo de execução da variável regra como uma função dos deslocamentos. Por exemplo, se o fuso horário de verão mudar uma hora, como emCST6CDT5, (o padrão 2 a.m.) A hora de verão muda instantaneamente de 2 a.m. para 3 a.m. CDT. A mudança de outono é de 2 a.m. CDT para 1 a.m. CST. As respectivas alterações para um fuso horário deCST6CDT4são 2 a.m. CST para 4 a.m. CDT e 2 a.m. CDT para 12 a.m. CST.

Em um exemplo da variável regra , se a lei mudasse para que os Estados Unidos da América Central experimentaram o horário de verão entre Julian 129 e Julian 131, a variável TZ seria declarada da seguinte forma:

TZ=CST6CDT5,J129,J131

Neste exemplo, as datas indicadas são maio de 09 e maio de 11,1993, respectivamente. (Use o comando data +%j para obter o número da data Juliana.)

Em outro exemplo, se as mudanças de tempo ocorrerem às 2 a.m. CST e 19:30 CDT, respectivamente, as variáveis seriam indicadas da seguinte forma:

TZ=CST6CDT5,J129,J131/19:30

Em anos não bissexto, a mudança de tempo de fallback seria de 19:30 CDT às 18:30 CST em 11 de maio (1993).

Para o ano bissexto (M) sintaxe, a data de início da primavera seria 2 de maio e a data de fallback é 9 de maio. As variáveis são indicadas da seguinte forma:

TZ=CST6CDT5,M5.1.0,M5.2.0

Fusos horários

O sistema define os seguintes fusos horários e nomes de fuso horário:

Nota: Tempo Universal Coordenado (CUT) é o padrão de tempo internacional.
Tabela 1. Fusos Horários Definidos no Sistema
Nome Fuso horário Deslocamento CUT
CUT0GDT Hora Universal Coordenada CORTAR
GMT0BST Reino Unido CORTAR
WET0WEST Europa Ocidental CORTAR
AZOREST1AZOREDT Açores, Cabo Verde CORTAR -1
FALKST2FALKDT Ilhas Malvinas CORTAR -2
GRNLNDST3GRNLNDDT Groelândia, Leste do Brasil CORTAR -3
AST4ADT Central Brasil CORTAR -4
EST5EDT Leste dos Estados Unidos, Colômbia CORTAR -4
CST6CDT Centro dos Estados Unidos, Honduras CORTAR -6
MST7MDT Montanha Estados Unidos CORTAR -7
PST8PDT Pacífico dos Estados Unidos, Yukon CORTAR -8
AST9ADT Alasca CORTAR -9
HST10HDT Havaí, Ilhas Aleutas CUT -10
BST11BDT Estreito de Bering CUT -11
NZST-12NZDT Nova Zelândia CORTAR +12
Item Descrição
MET-11METDT Ilhas Salomão CORTAR +11
EET-10EETDT Austrália Oriental CORTAR +10
JST-9JSTDT Japão CUT + 9
KORST-9KORDT Coreia CUT + 9
WAUST-8WAUDT Western Australia CUT + 8
TAIST-8TAIDT Taiwan CUT + 8
THAIST-7THAIDT Tailândia CUT + 7
TASHST-6TASHDT Ásia Central CUT + 6
PAKST-5PAKDT Paquistão CUT + 5
WST-4WDT Gorki, Ásia Central, Omã CUT + 4
MEST-3MEDT Turquia CUT + 3
SAUST-3SAUDT Arábia Saudita CUT + 3
EET-2EEST Europa Oriental CUT + 2
USAST-2USADT África do Sul CUT + 2
CET-1CEST Europa Central CUT + 1

Arquivos

Item Descrição
/etc/profile Especifica variáveis a serem adicionadas ao ambiente pelo shell.
/etc/environment Especifica o ambiente básico para todos os processos.
$HOME/.profile Especifica o ambiente para necessidades específicas do usuário.
/etc/passwd Especifica IDs de usuários.