¿Cuál es la diferencia entre los siguientes archivos en CentOS 7?
/etc/locale.conf
/etc/environment
~/.bashrc
Respuesta1
Para cualquier programa que simplemente necesiteleerla configuración de las variables de entorno, /etc/locale.conf
y /etc/environment
son básicamente las mismas; en un sistema integrado muy simplificado, puede omitir /etc/locale.conf
y colocar en su lugar cualquier variable local requerida /etc/environment
.
La diferencia está principalmente en cómo lidiar conactualizandoLos archivos.
Para /etc/locale.conf
, el conjunto de variables que se espera definir en el archivo es finito y su sintaxis está bien definida. Esto permite una modificación más sencilla por parte de los programas. Por ejemplo, una aplicación GUI de "configuración de idioma/localización" puede leer fácilmente las configuraciones existentes, presentarlas al usuario y luegoreescribir el archivo completosi el usuario toma nuevas decisiones.
La recuperación de errores de sintaxis también es sencilla: si la aplicación de configuración detecta un error de sintaxis en el archivo, puede simplemente presentar la configuración que logró leer, permitir que el usuario acepte la configuración actual o realice cambios y luego vuelva a escribir el archivo. basado en alguna plantilla integrada en la aplicación, y el error se soluciona de forma transparente.
Para /etc/environment
, el conjunto de variables de entorno que se pueden definir allí es ilimitado, por lo que cualquier manipulación programática del archivo debe realizarse con mucho más cuidado.
Además, /etc/environment
y /etc/locale.conf
definetodo el sistemavalores predeterminados, mientras que ~/.bashrc
esespecíficopara el usuario: al utilizar ~/.bashrc
, el usuario puede anular los valores predeterminados del sistema solo para sus propias sesiones, si lo desea.