Fichier d'environnement

Objectif

Définit l'environnement utilisateur.

Descriptif

Le fichier /etc/environment contient des variables spécifiant l'environnement de base de tous les processus. When a new process begins, the Exec subroutine makes an array of strings available that have the form Nom=Valeur. Ce tableau de chaînes est appelé environnement. Chaque nom défini par l'une des chaînes est appelé une variable d'environnement ou une variable de shell. La sous-routine Exec permet de définir l'intégralité de l'environnement à la fois.

Les variables d'environnement sont examinées lorsqu'une commande démarre. L'environnement d'un processus n'est pas modifié en modifiant le fichier /etc/environment . Tous les processus démarrés avant la modification du fichier /etc/environment doivent être redémarrés si la modification doit être appliquée à ces processus. Si la variable TZ est modifiée, le démon Cron doit être redémarré car cette variable est utilisée pour déterminer l'heure locale en cours.

Les restrictions suivantes s'appliquent lors de la modification du fichier Environnement :

  • Vérifiez que les variables d'environnement nouvellement créées ne sont pas en conflit avec des variables standard telles que COURRIER, PS1, PS2et IFS.
  • Ensure that the information in the Environnement file is in the Nom=Valeur format. Unlike Profil scripts, the Environnement file is not a shell script and does not accept data in any format other than the Nom=Valeur format.

L'environnement de base

Lorsque vous vous connectez, le système définit des variables d'environnement à partir du fichier Environnement avant de lire votre profil de connexion, .profile.

Les variables suivantes constituent l'environnement de base :

Variables Descriptif
HOME Nom de chemin complet du nom de connexion utilisateur ou du répertoire ACCUEIL . Le programme login lui attribue le nom spécifié dans le fichier /etc/passwd .
LANG Nom de l'environnement local en vigueur. La variable LANG est définie dans le fichier /etc/environment lors de l'installation.
NLSPATH Nom de chemin complet des catalogues de messages. La valeur par défaut est:

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

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

%L est la valeur de la catégorie LC_MESSAGES et %N est le nom du fichier de catalogue.
Remarque: Pour plus d'informations sur la modification des catalogues de messages, voir la commande Chlang .
LC__FASTMSG Si LC_FASTMEG est défini sur false, le traitement des messages conformes à POSIXest effectué. Si LC__FASTMSG est défini sur true, il indique que les messages par défaut doivent être utilisés pour les environnements locaux C et POSIX et que NLSPATH est ignoré. Si cette variable est définie sur une valeur autre que Faux ou Non défini, elle est considérée comme la même que celle définie sur True. La valeur par défaut est LC__FASTMSG=true dans le fichier /etc/environment .
LOCPATH Nom de chemin complet de l'emplacement des tables de support de langue nationale. La valeur par défaut est /usr/lib/nls/loc et est définie dans le fichier /etc/profile . Si la variable CHEMIN D'ACCÈS LOCAL est une valeur NULL, elle suppose que le répertoire en cours contient les fichiers d'environnement local.
Remarque: All Setuid and Setgid programs will ignore the CHEMIN D'ACCÈS LOCAL environment variable.
PATH Séquence de répertoires que les commandes telles que les commandes Sh, Heure, Gentile et Nohup recherchent lorsque vous recherchez une commande dont le nom de chemin est incomplet. Les noms de répertoire sont séparés par deux points.
TZ Informations de fuseau horaire. La variable d'environnement TZ est définie par le fichier /etc/environment . La variable d'environnement TZ a le format suivant (espaces insérés pour la lisibilité):
std offset dst offset , rule

Les zones de la variable d'environnement TZ sont définies comme suit:

Std et Dst
Désigniez les fuseaux horaires standard (Std) et d'été (Dst). Seule la valeur Std avec la valeur Décalage appropriée est requise. Si la valeur Dst n'est pas spécifiée, le temps d'été ne s'applique pas. Les valeurs spécifiées peuvent ne pas être inférieures à trois et pas plus de TZNAME_MAX octets. La longueur des variables correspond à la%ZDe la commande Date ; pour Libc et Libbsd, TZNAME_MAX est égal à trois caractères. Tous les caractères ASCII non numériques sauf les suivants peuvent être entrés dans chaque zone: un début: (deux points), un, (virgule), un (signe moins), un signe + (signe plus) ou un caractère ASCII nul.
Remarque: POSIX 1.0 réserve l'élément principal: (deux points) pour une spécification TZ définie par l'implémentation. Le système d'exploitation interdit le signe deux-points de début, en sélectionnant CUT0 et en définissant%Zà une chaîne vide.

Voici un exemple de format Std et Dst :

EST5EDT 
Remarque: Si l'ensemble de valeurs est non valide ou non reconnu, le fuseau horaire est défini par défaut sur UTC/GMT.
EST Indique l'heure standard de l'Est des U.S.
5 Indique le décalage, qui est de 5 heures derrière le temps universel coordonné (CUT).
EDT
Indique l'abréviation de fuseau horaire correspondant.
Remarque: Voir "Fuseaux horaires" pour une liste des noms de fuseau horaire définis pour le système.
Décalage
Indique la valeur ajoutée à l'heure locale à l'heure UTC (Coordinated Universal Time). Le CUT est la norme internationale de temps qui a largement remplacé le temps moyen de Greenwich. La variable Décalage a le format suivant:
hh:mm:ss

Les zones de la variable Décalage sont définies comme suit:

hh Indique le décalage Dst en heures. Cette zone est obligatoire. :NONE.hhPeut être comprise entre les entiers -12 et +11. Une valeur négative indique que le fuseau horaire est à l'est du méridien principal ; une valeur positive ou aucune valeur indique que le fuseau horaire est à l'ouest du méridien principal.
mm Indique le décalage Dst détaillé à la minute. Ce champ est facultatif Si la commandemmEst présente, elle doit être spécifiée entre 0 et 59 et précédée d'une: (deux points).
ss
Indique le décalage Dst détaillé à la seconde. :NONE.ssEst facultative. Si la commandessEst présente, elle doit être spécifiée entre 0 et 59 et précédée d'une: (deux points).

Une variable Décalage doit être spécifiée avec la variable Std . Une variable Décalage pour la variable Dst est facultative. Si aucun décalage n'est spécifié avec la variable Dst , le système suppose que l'heure d'été est une heure avant l'heure normale.

A titre d'exemple de syntaxe de décalage, Zurich est en avance d'une heure sur CUT, son décalage est donc -1. Terre-Neuve a 1.5 heures d'avance sur les fuseaux horaires standard de l'est U.S. Sa syntaxe peut être indiquée comme n'importe lequel des éléments suivants: 3:30, 03:30, + 3:30 ou 3:30:00.

règle
La variable Règle indique à quel moment changer pour revenir et revenir à partir de l'heure d'été. La variable Règle a le format suivant:
start/time,end/time

Les zones de la variable Règle sont définies comme suit:

start Indique le passage de la norme à l'heure d'été.
end Indique le retour à l'heure standard à partir de l'heure d'été.
time Indique quand les changements de temps se produisent dans le fuseau horaire. Par exemple, si latimeest codée pour 2 a.m. l'heure change lorsque le fuseau horaire atteint 2 a.m. à la date spécifiée dans lestartVariable.
/ Détermine la date de début, la date de fin et les variables d'heure.
,
(Comma) Delimses deux paires date et heure.
:NONE.startetendLes variables prennent en charge une syntaxe pour le temps julien (J) Et une syntaxe pour les années bissanaux (M):
Jn
Mm.n.d

Dans leJSyntaxe, lanVariable a la valeur de 1 à 365. Les jours de la carte ne sont pas comptés. Dans leMSyntaxe,mEst le mois,nLa semaine, etdLe jour de la semaine commençant le jour 0 (dimanche).

La variable Règle a le même format que la variable Décalage , sauf qu'aucun signe (signe moins) ou + (signe plus) n'est autorisé. La valeur par défaut destartLa variable est 02:00:00 (2 a.m.).
Remarque: Le décalage horaire et les points de changement de temps sont interdépendants et dépendent du contexte. La sémantique d'exécution de la variable Règle change en fonction des décalés. Par exemple, si la zone de temps d'été change une heure, comme dansCST6CDT5, (la valeur par défaut est 2 a.m.) l'heure d'été change instantanément à partir de 2 a.m. à 3 a.m. CDT. Le changement d'automne est à partir de 2 a.m. CDT à 1 a.m. LE GEND. Les modifications respectives pour un fuseau horaire deCST6CDT4sont 2 a.m. CST à 4 a.m. CDT et 2 a.m. CDT à 12 a.m. LE GEND.

Dans un exemple de variable Règle , si la loi a changé de sorte que les Etats-Unis d'Amérique centrale ont connu un temps d'été entre Julian 129 et Julian 131, la variable TZ se présente comme suit:

TZ=CST6CDT5,J129,J131

Dans cet exemple, les dates indiquées sont le 09 mai et le 11 mai 1993, respectivement. (Utilisez la commande Date +%j pour obtenir le numéro de date Julien.)

Dans un autre exemple, si les changements d'heure devaient se produire à 2 a.m. CST et 19:30 CDT, respectivement, les variables seraient indiquées comme suit:

TZ=CST6CDT5,J129,J131/19:30

Dans les années non bissbissannées, le changement de temps de repli serait de 19:30 CDT à 18:30 CST le 11 mai (1993).

Pour l'année bissavant (M) , la date du printemps à venir serait le 2 mai et la date de repli est le 9 mai. Les variables sont les suivantes:

TZ=CST6CDT5,M5.1.0,M5.2.0

Fuseaux horaires

Le système définit les fuseaux horaires et les noms de fuseau horaire suivants:

Remarque: Temps universel coordonné (CUT) est la norme temporelle internationale.
Tableau 1. Fuseaux horaires définis sur le système
Nom Fuseau horaire Décalage CUT
CUT0GDT Temps Universel coordonné SUPPRESSION
GMT0BST Royaume-Uni SUPPRESSION
WET0WEST Europe occidentale SUPPRESSION
AZOREST1AZOREDT Açores, Cap-Vert CUT -1
FALKST2FALKDT Îles Malouines CUT -2
GRNLNDST3GRNLNDDT Groenland, Brésil oriental CUT -3
AST4ADT Brésil central CUT -4
EST5EDT États-Unis d'Amérique, Colombie CUT -4
CST6CDT États-Unis d'Amérique, Honduras CUT -6
MST7MDT Montagne des États-Unis CUT -7
PST8PDT Pacifique États-Unis (Yukon) CUT -8
AST9ADT Alaska CUT -9
HST10HDT Hawaii, îles Aléoutiennes COUPER -10
BST11BDT Détroit de Béring COUPER -11
NZST-12NZDT Nouvelle-Zélande COUPER +12
Article Descriptif
MET-11METDT Îles Salomon COUPER +11
EET-10EETDT Australie orientale COUPER +10
JST-9JSTDT Japonais COUPER + 9
KORST-9KORDT Corée COUPER + 9
WAUST-8WAUDT Australie-Occidentale COUPER + 8
TAIST-8TAIDT Taïwan COUPER + 8
THAIST-7THAIDT Thaïlande COUPER + 7
TASHST-6TASHDT Asie centrale COUPER + 6
PAKST-5PAKDT Pakistan COUPER + 5
WST-4WDT Gorki, Asie centrale, Oman COUPER + 4
MEST-3MEDT Turquie COUPER + 3
SAUST-3SAUDT Arabie saoudite COUPER + 3
EET-2EEST Europe de l'Est COUPER + 2
USAST-2USADT Afrique du Sud COUPER + 2
CET-1CEST Europe centrale COUPER + 1

Fichiers

Article Descriptif
/etc/profile Indique les variables à ajouter à l'environnement par l'interpréteur de commandes.
/etc/environment Indique l'environnement de base pour tous les processus.
$HOME/.profile Indique l'environnement pour les besoins spécifiques de l'utilisateur.
/etc/passwd Indique les ID utilisateur.