Estoy tratando de encontrar una manera de determinar el nombre y la versión de la distribución de Linux que funciona en la mayoría (o, idealmente, todas las distribuciones modernas). Noté que /etc/os-release
contiene la información que necesita sobre las distribuciones que probé (CentOS, Debian), pero ¿Es seguro que depender de la presencia de la misma? Comandos como uname -a
realmente no contienen la misma información, y lsb_release
no es aparentemente presentes en CentOS por ejemplo mínimos.
¿Hay una forma rápida de averiguar exactamente lo que las distribuciones vienen con /etc/os-release
? Por otra parte, se /etc/os-release
garantiza que contiene NAME
, VERSION
y los PRETTY_NAME
campos?
linux
distributions
w128
fuente
fuente
Respuestas:
Cualquier sistema que ejecute systemd debería tener
/etc/os-release
, que se especifica como parte de systemd. Algunos sistemas sin systemd podrían también lo tienen ( por ejemplo Debian 8, donde systemd es opcional, pero/etc/os-release
se instala en todos los casos).Según la especificación, todos los campos son opcionales y algunos tienen valores predeterminados ("Linux" para
NAME
yPRETTY_NAME
).Encontrarás más antecedentes en el
/etc/os-release
anuncio .fuente