我想检查在给我的远程 linux 机器上运行的是哪个 linux 发行版。我在超级用户上看到了这个答案,上面写着
LSB 工具提供此信息
然后它继续说,在大多数流行的发行版没有安装 LSB 的系统上,以下方法可以解决问题:
cat /etc/*{release,version}
Run Code Online (Sandbox Code Playgroud)
现在这是我使用这两种技术所看到的:
[subhrcho@slc04lyo pcbpel]$ lsb_release -irc
Distributor ID: EnterpriseEnterpriseServer
Release: 5.8
Codename: Carthage
[subhrcho@slc04lyo pcbpel]$ cat /etc/redhat-release
Red Hat Enterprise Linux Server release 5.8 (Tikanga)
Run Code Online (Sandbox Code Playgroud)
我的问题为什么我从运行这些命令中得到相互矛盾的信息?我在这里错过了什么?
附加信息:发出 uname -or 命令时,我得到以下信息:
2.6.18-308.4.1.0.1.el5xen GNU/Linux
Run Code Online (Sandbox Code Playgroud) Currently, Debian testing codename is buster, and next-stable will be buster.
我已经安装了 Debian 测试来保持软件包是最新的。我的问题是:我的 Debian稳定stable版后会成为 Debian 的发行版buster吗?如果答案是肯定的:我想让我的 Debian 保持测试版本并保持软件包是最新的,我该怎么办?
我正在尝试验证为我的 Ubuntu 选择 Docker 容器映像文件时,我需要在它们之间匹配什么?
在 Lubuntu 上,一个 CentOS 容器说它是 CentOS,由
$ sudo docker run centos bash -c "cat /etc/*-release "
CentOS Linux release 7.6.1810 (Core)
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
CentOS Linux release 7.6.1810 (Core)
CentOS Linux release 7.6.1810 (Core)
Run Code Online (Sandbox Code Playgroud)
但也说它与主机是相同的 Ubuntu:
$ sudo docker run centos bash -c "cat /proc/version"
Linux version 4.15.0-46-generic (buildd@lgw01-amd64-038) (gcc version 7.3.0 (Ubuntu 7.3.0-16ubuntu3)) #49-Ubuntu SMP Wed …Run Code Online (Sandbox Code Playgroud) Debian 提供了一种使用命令来比较 Debian 兼容版本的方法,dpkg如下所示:
dpkg --compare-versions <version> <operator> <version>
Run Code Online (Sandbox Code Playgroud)
例如,如果你想知道给定的版本是否在 1.0 之前,那么你可以使用:
# gather VERSION from somewhere...
VERSION=0.9
if dpkg --compare-versions "${VERSION}" lt 1.0
then
echo "unacceptable version as per policy"
exit 1
fi
Run Code Online (Sandbox Code Playgroud)
基于 RPM(RedHat/Fedora)系统下的等效命令是什么?
我的操作系统是从 debian 8.5.0 amd64 安装的。
安装后执行命令。
cat /etc/issue
Debian GNU/Linux 8 \n \l
Run Code Online (Sandbox Code Playgroud)
这里没有 8.5。
cat /proc/version
Linux version 3.16.0-4-amd64 (debian-kernel@lists.debian.org) (gcc version 4.8.4 (Debian 4.8.4-1) ) #1 SMP Debian 3.16.43-2+deb8u2 (2017-06-26)
Run Code Online (Sandbox Code Playgroud)
这里也没有 8.5。
deb8u2 是否意味着 debian 8.5?