有时,当我通过 SSH 登录到系统(例如生产服务器)时,我拥有可以安装某些软件的权限,但要做到这一点,我需要知道我正在处理的系统。
我可以检查系统是如何安装在那里的。
有没有办法从 CLI 确定正在运行的 Unix/Linux 发行版?
答案1
尝试:
uname -a
它会给你输出,例如:
Linux debianhost 3.16.0-4-686-pae #1 SMP Debian 3.16.36-1+deb8u2 (2016-10-19) i686 GNU/Linux
您还可以使用:
cat /etc/*release*
PRETTY_NAME="Debian GNU/Linux 8 (jessie)"
NAME="Debian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=debian
HOME_URL="http://www.debian.org/"
SUPPORT_URL="http://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"
答案2
要获取主机名、内核版本和有关系统的其他有用信息:
uname -a
要获取 Linux 发行版的版本,没有唯一的命令。每个发行版的实现方式都不同。在 Debian 和 Ubuntu 上:
cat /etc/debian_version
在红帽上:
cat /etc/redhat-release
cat /etc/lsb-release
lsb_release -a
在费多拉上:
cat /etc/fedora-release
答案3
对于 Linux,您可以尝试 lsb_release 命令,它提供 Linux 标准库和发行版特定信息。尝试:
lsb_release -d
另请检查man
页面中的其他选项
答案4
以一种简洁的方式,你可以这样做(谢谢@daemontosh回答):
lsb_release -a
...显示所有信息。
另一种获取信息的简洁方法是(谢谢@HeathRaftery和@JourneymanGeek答案):
cat /proc/version
但有许多 Unix 不支持/proc
伪文件系统。