linux - 列出可用于软件包的先前版本并通过 apt-get 安装其中一个
问题描述
来自存储库的版本10.5-2
有
问题,我想返回到我知道以我想要的方式工作的版本。postgresql
deb http://apt.postgresql.org/pub/repos/apt/ stretch-pgdg main
10.4
向apt-cache madison postgresql-10
我返回这些信息 atm :
postgresql-10 | 10.5-2.pgdg90+1 | http://apt.postgresql.org/pub/repos/apt stretch-pgdg/main amd64 Packages
postgresql-10 | 10.5-2.pgdg90+1 | http://apt.postgresql.org/pub/repos/apt stretch-pgdg/main Sources
我怎样才能找到存在的以前的包版本10.4
?
当我尝试使用我在某处找到的版本号时(在巧克力网站上:我不知道如何搜索并且有点迷路),它没有成功:
sudo apt-get install postgresql-10=10.4.0.20180721
E: Version '10.4.0.20180721' for 'postgresql-10' was not found
转到postgresql
存储库http://apt.postgresql.org/pub/repos/apt/dists/stretch-pgdg/,我没有找到有关如何获取任何先前版本的线索。
更一般地说,通过命令行和 aptitude 命令列出可以为软件包安装哪些先前版本的方法是什么?
例如,是否有一个标准为以前的版本设置了另一个位置,比如我应该始终以http://../archive/../或其他形式找到的存档存储库?
谢谢 !
解决方案
apt-cache showpkg <package-name>
将列出所有可用的版本
这些中的任何一个
apt install <package-name>=<package-version-number>
apt -t=<target release> install <package-name>
apt-mark hold <package-name>
将阻止自动升级
postgresql 现在是第 11 版,可从主网站获得。
在 github 上,在 "make a pull request" 旁边单击 master,将选择更改为 '10 stable',然后发出 pull request。如果 10 stable 为 10.5,则需要修复该错误。如果这并不容易,您可以比较 9.5 stable 中的代码 - 只有 1066 个已更改的文件并通过更改它们。他们实际上并没有为其他版本保留标签。
资料来源:https ://askubuntu.com/questions/138284/how-to-downgrade-a-package-via-apt-get#138327
编辑:在检查可用包之前不要忘记更新。
推荐阅读
- spring - Spring Batch remote partitioning how to shutdown slaves
- r - 将具有因子级别的 JSON 解析为 data.frame
- python - Put a XML file inside a Python script?
- jenkins - 询问 Jenkins/Groovy 相关问题的最佳地点
- c++ - 为什么 boost PreProcessor 和 QT 给了我一个“未定义的对 vtable for XXX 的引用”错误?
- html - 无法多次选择下拉选项
- javascript - 从 MySQL 导出到 PHP 和 JavaScript 中的对象数组
- c# - 将记录插入查找表
- xamarin.ios - AVCaptureSession OnFrame Event?
- sql - 在一个查询中需要这两行