Qual é a diferença entre os seguintes arquivos no CentOS 7?
/etc/locale.conf
/etc/environment
~/.bashrc
Responder1
Para qualquer programa que simplesmente preciseleras configurações das variáveis de ambiente /etc/locale.conf
e /etc/environment
são basicamente as mesmas; em um sistema embarcado muito simplificado, você pode omitir /etc/locale.conf
e colocar quaisquer variáveis de localidade necessárias /etc/environment
.
A diferença está principalmente em como lidar comatualizandoos arquivos.
Para /etc/locale.conf
, o conjunto de variáveis que se espera definir no arquivo é finito e sua sintaxe é bem definida. Isso permite uma modificação mais fácil por programas. Por exemplo, um aplicativo GUI de "configurações de idioma/localidade" pode ler facilmente as configurações existentes, apresentá-las ao usuário e, em seguida,reescrever o arquivo inteirose o usuário fizer novas escolhas.
A recuperação de erros de sintaxe também é simples: se o aplicativo de configurações detectar um erro de sintaxe no arquivo, ele poderá apenas apresentar as configurações que conseguiu ler, permitir que o usuário aceite a configuração atual ou faça alterações e, em seguida, reescreva o arquivo com base em algum modelo integrado ao aplicativo, e o erro é corrigido de forma transparente.
Pois /etc/environment
, o conjunto de variáveis de ambiente que podem ser definidas ali é ilimitado, portanto qualquer manipulação programática do arquivo deve ser feita com muito mais cuidado.
Além disso, /etc/environment
e /etc/locale.conf
definaNo âmbito do sistemapadrões, enquanto ~/.bashrc
éespecíficopara o usuário: usando ~/.bashrc
, o usuário pode substituir os padrões do sistema apenas para sua(s) própria(s) sessão(ões), se desejar.