MacPorts 中安装高/低版本软件方式,以 RabbitMQ 为例

查询信息

这里以 RabbitMQ 为例,通过搜索得到默认安装版本信息:

bash 复制代码
port search rabbitmq-server

结果

复制代码
~/Downloads> port search rabbitmq-server
rabbitmq-server @3.11.15 (net)
    The RabbitMQ AMQP Server
~/Downloads>

获取二进制文件

但当前官网已更新到 4.x 版本,例如我们需要安装 4.0.4 版本,首先去到 RabbitMQ 的 GitHub release 页:https://github.com/rabbitmq/rabbitmq-server/releases

下载 rabbitmq-server-generic-unix-4.0.4.tar.xz 文件,以便获取相关指纹进行替换

修改 Portfile

所在目录

在查询结果中我们注意到 rabbitmq-server @3.11.15 (net),括号内是 net

而 MacPorts 对应的软件相关 Portfile 存储于 /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports

因为 RabbitMQ 属于 net,这里我们还需要进入 net 目录才能找到 rabbitmq-server

所以其最终对应的路径为 /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/net/rabbitmq-server

获取 rmd160、sha256 和文件大小

sha256 非常好获取,在文件所在目录直接运行即可

bash 复制代码
$ sha256 ./rabbitmq-server-generic-unix-4.0.4.tar.xz

SHA256 (./rabbitmq-server-generic-unix-4.0.4.tar.xz) = b024b75935bc9b30597b3ea5c5d3846b8a8f887e0f1d5703f00974ea481342f3

而 rmd160 则需要利用 openssl 命令(如果没有可以先通过 port 安装):

复制代码
$ openssl dgst -rmd160 ./rabbitmq-server-generic-unix-4.0.4.tar.xz

RIPEMD-160(./rabbitmq-server-generic-unix-4.0.4.tar.xz)= 90dd6e7a4ce6a34cd3ec0af62995cdecc5812b4e

文件大小直接通过 ls -l 命令即可:

bash 复制代码
$ ls -l ./rabbitmq-server-generic-unix-4.0.4.tar.xz

-rw-r--r--@ 1 maxsky  staff  16236548 12 18 14:43 ./rabbitmq-server-generic-unix-4.0.4.tar.xz

其中 16236548 就是文件字节大小

替换对应内容

原内容

复制代码
github.setup        rabbitmq rabbitmq-server 3.11.15 v

checksums           rmd160  c30a5ee11a501b8a271bda39f92dd8125230f4c6 \
                    sha256  538be3c85e8cad10de62705714f71eaacb04339f73a81477c91478600bb8253c \
                    size    20897748

将原内容中的版本号以及两个指纹值修改保存即可

复制代码
github.setup        rabbitmq rabbitmq-server 4.0.4 v

checksums           rmd160  90dd6e7a4ce6a34cd3ec0af62995cdecc5812b4e \
                    sha256  b024b75935bc9b30597b3ea5c5d3846b8a8f887e0f1d5703f00974ea481342f3 \
                    size    16236548

执行安装/更新

低版本升级直接运行 upgrade,安装就直接 install

bash 复制代码
sudo port upgrade rabbitmq-server
相关推荐
e***28291 小时前
RabbitMQ 客户端 连接、发送、接收处理消息
分布式·rabbitmq·ruby
2***57421 小时前
后端消息中间件对比,RabbitMQ与RocketMQ
分布式·rabbitmq·rocketmq
百***26631 小时前
RabbitMQ高级特性----生产者确认机制
分布式·rabbitmq
Q***f6351 小时前
后端消息队列学习资源,RabbitMQ+Kafka
学习·kafka·rabbitmq
sg_knight1 小时前
RabbitMQ 中的预取值(prefetch)详解:如何真正提升消费端性能?
java·spring boot·spring·spring cloud·消息队列·rabbitmq·预取值
小二·5 小时前
RabbitMQ面试题(22道含答案)
分布式·rabbitmq
晚枫~7 小时前
不同浏览器在Windows和Mac上的跨域配置方法
windows·macos
denggun123459 小时前
Xcode的App Thinning Size Report分析包体积
macos·蓝桥杯·xcode
醇氧13 小时前
MAC安装 Notepad Next
macos
c***V32313 小时前
后端消息队列选型:RabbitMQ与Kafka
分布式·kafka·rabbitmq