一个人的行走范围,就是他的世界。——《青灯》
安装svn
brew install svn
然后验证:
https://streampark.apache.org/zh-CN/community/release/how_to_verify_release/
大概全程如下:
mkdir streampark
- 创建一个名为"streampark"的新文件夹。cd streampark/
- 进入这个新创建的"streampark"文件夹。svn co https://dist.apache.org/repos/dist/dev/incubator/streampark/2.1.4-RC1/
- 通过Subversion(svn)从Apache的服务器上检出(下载)版本为"2.1.4-RC1"的streampark项目文件。curl https://downloads.apache.org/incubator/streampark/KEYS > KEYS
- 使用curl命令下载streampark项目的密钥文件,并将其保存为本地文件"KEYS"。gpg --import KEYS
- 将下载的密钥文件导入到GPG密钥库中,用于后续的安全验证。gpg --edit-key lvshaokang
- 打开GPG密钥编辑界面,用于管理名为"lvshaokang"的密钥。ls
- 列出当前目录中的所有文件。cd 2.1.4-RC1/
- 进入下载的"2.1.4-RC1"文件夹。vim verify.sh
- 使用vim文本编辑器创建或编辑一个名为"verify.sh"的脚本文件。chmod x verify.sh
- 更改"verify.sh"脚本的权限,使其变为可执行文件。sudo ./verify.sh
- 以管理员权限执行"verify.sh"脚本,通常用于验证下载文件的完整性和安全性。brew install coreutils
- 使用Homebrew包管理器安装GNU Core Utilities,这是一组在Unix-like系统上常用的工具集合。- 执行脚本
完整过程:
代码语言:javascript复制GithubIireAchao:Downloads achao$ mkdir streampark
GithubIireAchao:Downloads achao$ cd streampark/
GithubIireAchao:streampark achao$ svn co https://dist.apache.org/repos/dist/dev/incubator/streampark/2.1.4-RC1/
A 2.1.4-RC1/apache-streampark-2.1.4-incubating-src.tar.gz
A 2.1.4-RC1/apache-streampark-2.1.4-incubating-src.tar.gz.asc
A 2.1.4-RC1/apache-streampark-2.1.4-incubating-src.tar.gz.sha512
A 2.1.4-RC1/apache-streampark_2.11-2.1.4-incubating-bin.tar.gz
A 2.1.4-RC1/apache-streampark_2.11-2.1.4-incubating-bin.tar.gz.asc
A 2.1.4-RC1/apache-streampark_2.11-2.1.4-incubating-bin.tar.gz.sha512
A 2.1.4-RC1/apache-streampark_2.12-2.1.4-incubating-bin.tar.gz
A 2.1.4-RC1/apache-streampark_2.12-2.1.4-incubating-bin.tar.gz.asc
A 2.1.4-RC1/apache-streampark_2.12-2.1.4-incubating-bin.tar.gz.sha512
取出版本 68745。
GithubIireAchao:streampark achao$ curl https://downloads.apache.org/incubator/streampark/KEYS > KEYS # 下载KEYS
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 21577 100 21577 0 0 33413 0 --:--:-- --:--:-- --:--:-- 33452
GithubIireAchao:streampark achao$ gpg --import KEYS # 导入KEYS到本地
gpg: 密钥 E7AAF6555AE01B8E:公钥 “benjobs (benjobs apache keys) <benjobs@apache.org>” 已导入
gpg: 密钥 ACFB69E705016886:公钥 “muchunjin (for apache StreamPark release create at 20230501) <muchunjin@apache.org>” 已导入
gpg: 密钥 479E570AE3E3F36B:公钥 “muchunjin (for apache StreamPark release create at 20230621) <muchunjin@apache.org>” 已导入
gpg: 密钥 D5C228A4FAB07811:公钥 “gongzhongqiang (for apache StreamPark release create at 20231024) <gongzhongqiang@apache.org>” 已导入
gpg: 密钥 5C08953040EE71A2:公钥 “wangqingrong (for apache StreamPark release 2.1.3 create at 20240103) <monreid@apache.org>” 已导入
gpg: 密钥 5CEB5ECFD38791FF:公钥 “lvshaokang (for apache StreamPark release create at 20240421) <lvshaokang@apache.org>” 已导入
gpg: 处理的总数:6
gpg: 已导入:6
GithubIireAchao:streampark achao$ gpg --edit-key lvshaokang
gpg (GnuPG/MacGPG2) 2.2.41; Copyright (C) 2022 g10 Code GmbH
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
pub rsa4096/5CEB5ECFD38791FF
创建于:2024-04-21 有效至:永不 可用于:SC
信任度:未知 有效性:未知
sub rsa4096/730E450AC03B374F
创建于:2024-04-21 有效至:永不 可用于:E
[ 未知 ] (1). lvshaokang (for apache StreamPark release create at 20240421) <lvshaokang@apache.org>
gpg> trust
pub rsa4096/5CEB5ECFD38791FF
创建于:2024-04-21 有效至:永不 可用于:SC
信任度:未知 有效性:未知
sub rsa4096/730E450AC03B374F
创建于:2024-04-21 有效至:永不 可用于:E
[ 未知 ] (1). lvshaokang (for apache StreamPark release create at 20240421) <lvshaokang@apache.org>
请决定您对这名用户能否正确地验证其他用户密钥
(通过查看护照,检查不同来源的的指纹等等)的相信程度
1 = 我不知道或不作答
2 = 我不相信
3 = 我勉强相信
4 = 我完全相信
5 = 我绝对相信
m = 回到主菜单
您的决定是什么? 5
您真的要把这个密钥设置成绝对信任?(y/N) y
pub rsa4096/5CEB5ECFD38791FF
创建于:2024-04-21 有效至:永不 可用于:SC
信任度:绝对 有效性:未知
sub rsa4096/730E450AC03B374F
创建于:2024-04-21 有效至:永不 可用于:E
[ 未知 ] (1). lvshaokang (for apache StreamPark release create at 20240421) <lvshaokang@apache.org>
请注意,在您重启程序之前,所显示的密钥有效性不一定正确。
gpg>
gpg: signal Interrupt caught ... exiting
GithubIireAchao:streampark achao$ ls
2.1.4-RC1 KEYS verify.sh
GithubIireAchao:streampark achao$ cd 2.1.4-RC1/
GithubIireAchao:2.1.4-RC1 achao$ vim verify.sh
GithubIireAchao:2.1.4-RC1 achao$ chmod x verify.sh
GithubIireAchao:2.1.4-RC1 achao$ sudo ./verify.sh
apache-streampark-2.1.4-incubating-src.tar.gz
gpg: 警告:家目录‘/Users/achao/.gnupg’的所有权不安全
gpg: 签名建立于 一 4/22 00:02:13 2024 CST
gpg: 使用 RSA 密钥 B0AD51795657CF5C303FE79B5CEB5ECFD38791FF
gpg: 完好的签名,来自于 “lvshaokang (for apache StreamPark release create at 20240421) <lvshaokang@apache.org>” [绝对]
apache-streampark_2.11-2.1.4-incubating-bin.tar.gz
gpg: 警告:家目录‘/Users/achao/.gnupg’的所有权不安全
gpg: 签名建立于 一 4/22 00:02:19 2024 CST
gpg: 使用 RSA 密钥 B0AD51795657CF5C303FE79B5CEB5ECFD38791FF
gpg: 完好的签名,来自于 “lvshaokang (for apache StreamPark release create at 20240421) <lvshaokang@apache.org>” [绝对]
apache-streampark_2.12-2.1.4-incubating-bin.tar.gz
gpg: 警告:家目录‘/Users/achao/.gnupg’的所有权不安全
gpg: 签名建立于 一 4/22 00:02:20 2024 CST
gpg: 使用 RSA 密钥 B0AD51795657CF5C303FE79B5CEB5ECFD38791FF
gpg: 完好的签名,来自于 “lvshaokang (for apache StreamPark release create at 20240421) <lvshaokang@apache.org>” [绝对]
GithubIireAchao:2.1.4-RC1 achao$ touch verifysha512hash.sh
GithubIireAchao:2.1.4-RC1 achao$ vim verifysha512hash.sh
GithubIireAchao:2.1.4-RC1 achao$ chmod x verifysha512hash.sh
GithubIireAchao:2.1.4-RC1 achao$ sudo ./verifysha512hash.sh
Password:
apache-streampark-2.1.4-incubating-src.tar.gz
./verifysha512hash.sh: line 1: sha512sum: command not found
apache-streampark_2.11-2.1.4-incubating-bin.tar.gz
./verifysha512hash.sh: line 1: sha512sum: command not found
apache-streampark_2.12-2.1.4-incubating-bin.tar.gz
./verifysha512hash.sh: line 1: sha512sum: command not found
GithubIireAchao:2.1.4-RC1 achao$ brew install coreutils
HOMEBREW_BREW_GIT_REMOTE set: using https://mirrors.ustc.edu.cn/brew.git as the Homebrew/brew Git remote.
remote: Enumerating objects: 3575, done.
remote: Counting objects: 100% (649/649), done.
remote: Total 3575 (delta 649), reused 649 (delta 649), pack-reused 2926
Receiving objects: 100% (3575/3575), 2.71 MiB | 12.91 MiB/s, done.
Resolving deltas: 100% (2190/2190), completed with 202 local objects.
From https://mirrors.ustc.edu.cn/brew
4fa7264a52..e3e927f688 master -> origin/master
* [new tag] 4.2.16 -> 4.2.16
* [new tag] 4.2.17 -> 4.2.17
* [new tag] 4.2.18 -> 4.2.18
* [new tag] 4.2.19 -> 4.2.19
==> Auto-updating Homebrew...
Adjust how often this is run with HOMEBREW_AUTO_UPDATE_SECS or disable with
HOMEBREW_NO_AUTO_UPDATE. Hide these hints with HOMEBREW_NO_ENV_HINTS (see `man brew`).
==> Auto-updated Homebrew!
Updated 4 taps (jetbrains/utils, homebrew-ffmpeg/ffmpeg, homebrew/core and homebrew/cask).
==> New Formulae
beakerlib llvm@17 policy_sentry
beancount-language-server logdy promptfoo
descope manim rage
dpcmd mantra redict
ffmpeg@6 mdformat rustcat
gitu morpheus superfile
jtbl msieve sysaidmin
kubecolor navidrome uni-algo
lexido oj valkey
liblc3 overarch vfox
libscfg parsedmarc
==> New Casks
arctic flox outfox
arm-performance-libraries fujifilm-x-raw-studio phoenix-code
automattic-texts halloy requestly
boltai hhkb-studio starnet2
capcut limitless toneprint
clearvpn metarename viable
darkmodebuddy metavideo yandex-music
ente-auth obs-backgroundremoval
You have 43 outdated formulae and 1 outdated cask installed.
==> Fetching coreutils
==> Downloading https://mirrors.ustc.edu.cn/homebrew-bottles/bottles/coreutils-9
######################################################################### 100.0%
==> Pouring coreutils-9.5.arm64_sonoma.bottle.tar.gz
==> Caveats
Commands also provided by macOS and the commands dir, dircolors, vdir have been installed with the prefix "g".
If you need to use these commands with their normal names, you can add a "gnubin" directory to your PATH with:
PATH="/opt/homebrew/opt/coreutils/libexec/gnubin:$PATH"
==> Summary