在 Debian Stretch 发行版上,如果我运行uname -a,我将获得:
Linux index 4.9.0-8-amd64 #1 SMP Debian 4.9.144-3.1 (2019-02-19) x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)
如果我运行dpkg -s linux-image-amd64 | grep Version,我会得到:
Version: 4.9+80+deb9u6
Run Code Online (Sandbox Code Playgroud)
上面的命令打印了三个不同的内核版本:
我的问题是:这些不同的版本是什么,它们的含义是什么?
我最近开始了一份新工作,并被告知我需要(通过 shell)登录到特定的 unix 系统。我试图找出系统的一些特性,但首先我需要知道它运行的是哪个版本的 unix。我可以去找系统管理员,但这有点麻烦,因为我实际上不知道谁维护系统。如何使用 shell (ksh) 找出我实际使用的 unix 版本?
我/etc/issue的 Debian测试引用了两个不同的版本:stretch,应该是测试版本,以及sid,又名不稳定版本。这意味着什么?我有他们两个的混合包吗?
$cat /etc/issue
Debian GNU/Linux stretch/sid \n \l
Run Code Online (Sandbox Code Playgroud) 假设我需要一个内核为3.2.63-2+deb7u1i686的 Debian 。
如何找到对应的 Debian 版本?我假设它是 Debian 7,因为该文档指出 Debian 7 的内核版本为 3.2。然而,我可以下载多个iso 映像,例如debian-7.8.0-i386-netinst.iso,debian-7.9.0-i386-netinst.iso等。我如何知道这些iso 中的哪一个会生成具有我需要的确切内核版本3.2 .63-2+deb7u1 的系统?
或者,也许,这是安装与特定版本相对应的 .deb 的问题,即根据需要升级或降级内核?
version debian system-installation linux-kernel debian-installer
我想从包名中只提取包的版本。假设我有一个var包含包名称的变量(例如:)var="nfs-utils-1.2.6-6.fc17.i686.rpm"。提取的字符串将是1.2.6-6. 用于解析的方法可以是任何东西(regex、awk、cut)。
编辑:在上面的例子中,我实际上想提取 1.2.6
在https://nixos.org/,我可以查看 NixOS 的最新版本。
有没有我可以运行的命令来查看我的机器上的版本?
uname -r在我的系统上的输出是4.19.0-kali1-amd64. 我在存储库列表中注意到有多个,linux-image-4.19.0-kali#每个都有不同的编号,从 kali1 到 kali5。
这个数字有什么意义?为什么这些数字中的一些没有所有版本的包?可以换号吗?
有关更多上下文:最近对我的 vmware-workstation 的更新正在linux-headers-4.19.0-kali1-amd64我的系统上寻找 ,但这些在存储库中无处可寻。我可以找到 kali3、4 和 5 的这些图像。
我在 SE 和其他教程上收到了很多关于此的相互矛盾的信息。大多数人似乎认为so版本是语义版本。然后其他人纠正他们,说它必须符合libtools 约定,并继续隐式假设或暗示传递-version-info C:R:A给 libtools 的数字创建名为 的文件libfoo.so.C.R.A。但我在 libtools 手册中没有看到任何地方明确说明文件的命名方式,这与我所看到的行为不匹配。
我正在构建一个第三方包(gdal),在构建过程中,它调用libtool --mode=link -version-info 25:4:5 <many other arguments>,但是构建后留在 .libs 中的 so 文件具有版本 libgdal.20.5.4。
我尝试了同一库的几个其他版本,它们似乎都遵循相同的模式。当您调用 libtools 时,您传入 current:revision:age,它会生成libfoo.so.current-age.age.revision. 这导致 sonamelibfoo.so.current-age始终是库兼容的最小版本,而不是其他帖子建议的最大版本。
我在 RHEL 7 和 Debian 10 上进行了此测试。
这是事情应该如何进行的吗?这个图书馆在做什么奇怪的事情吗?是否有任何地方可以权威地或至少正确地记录这一点?
我的问题适用于 Debian/Ubuntu:
在更新/升级我的 Linux 环境之前,我想通过一个简单的脚本获取组件版本的快照来实现最佳实践程序,该脚本将 OS、mySQL、PHP 等的版本号记录到文本文件中。
不过,我找不到任何地方如何可靠地获得版本号为phpMyAdmin的通过命令行。
如果没有更好的方法,我很乐意 grep 文件,例如
/usr/share/phpmyadmin/Config.php或/usr/share/phpmyadmin/package.json。
我错过了什么吗?
我知道如何通过 phpMyAdmin 的 Web 界面检查版本号,但这对我所需要的没有帮助。
很抱歉问这个可能是菜鸟问题。
我是 GitHub 和 DevOps 环境的新手,我的任务是自动化一些东西。我在 GitHub 上发现了一个仍在维护的项目,并且将来会收到新版本。
我想构建一个管道,在其中我需要从 GitHub 下载适合我的特定环境的最新 exe 版本。
目前,他们的 git 存储库中的 /releases/vX.yz 下有发布包(其中 X、y 和 z 是发布版本),其中包含多个包,名称如下:
ETC。
考虑到版本会及时更改,有什么方法可以通过使用某种模式来获取特定的包吗?
令人高兴的是,链接:https://github.com/some-example-repo/releases/latest重定向到发布的最新版本,所以我在想类似的事情:
wget https://github.com/some-example-repo/download/*????/package.V???*-linux-arm64.tar.gz
Run Code Online (Sandbox Code Playgroud)
想一想,既然我已经把这个作为一个问题了,我认为 wget 不可能自动完成 URL...
version ×10
debian ×4
linux ×2
linux-kernel ×2
bash ×1
command-line ×1
etc ×1
github ×1
gnu ×1
kali-linux ×1
ksh ×1
libtool ×1
nixos ×1
phpmyadmin ×1
rpm ×1
shell-script ×1
ubuntu ×1
wget ×1