我需要使用bash找出我正在运行的Linux发行版。找到this page,这非常有帮助。
但是我的系统有twp / etc / * - 发布文件
/etc/lsb-release
/etc/os-release
似乎os-release
有更多信息,但看起来这两个文件基本上都做同样的事情。有谁知道它们之间有什么区别?我们在谈论它时,lsb
中的lsb-release
代表什么?
答案 0 :(得分:3)
/etc/lsb-release
文件是一些(但不是全部)Linux发行版中存放的文件,供较旧的程序使用。 “ lsb”是指Linux Standard Base,该项目致力于为所有Linux发行版定义一套通用的标准,包括文件系统布局之类的东西。但是,该文件/etc/lsb-release
不是标准的一部分。有些发行版使用的是额外的东西,但不是全部。
/etc/os-release
文件是的标准。必须具有该systemd的任何基于systemd的发行版,包括Red Hat Enterprise Linux,CentOS,Fedora,Gentoo,Debian,Mint,Ubuntu和许多其他发行版。不使用systemd的发行版也可能包含该文件。
如果您需要一种可靠的方式来检测正在运行的发行版,那么最好的选择是阅读/ etc / os-release文件。如果不存在,则可以尝试运行名为lsb_release
的程序。但只需忽略/etc/lsb-release
文件。
您可以阅读有关操作系统发行版here和here的更多信息。只是为了好玩,看看Linux发行版曾经使用过的all the different files!