Ubuntu Linux 22.04 Navicat 16 激活教程
激活 Navicat 16 详细步骤
1、下载必要工具包
下载安装包后解压,进入到解压后的目录,假设解压后的目录为 navicat16。在命令行中进入该目录,使用 ls -l
命令应该能看到以下内容:
工具包链接: https://pan.baidu.com/s/1fIkXvXLcwXlw9Wp4zEHRMA?pwd=u8a3 提取码: u8a3
2、 解压 AppImage 以便之后重新打包
mkdir n16
sudo mount -o loop ./navicat16-premium-cs.AppImage ./n16
cp -r n16 n16p
sudo umount n16 && rm -rf n16
至此,在 navicat16 目录下应该多了一个 n16p 目录,之后我们会使用对该目录 patch 并重新打包。
3、编译 keygen 和 patcher
cd navicat-keygen
mkdir build && cd build
cmake -DCAME_BUILD_TYPE=Release ..
cmake --build . -- -j8
编译成功后,应该会看到类似以下输出,由于输出内容过多,这里仅摘录了最后的输出内容。
...
[ 99%] Building CXX object CMakeFiles/navicat-patcher.dir/navicat-patcher/elf64_interpreter.cpp.o
[100%] Building CXX object CMakeFiles/navicat-patcher.dir/navicat-patcher/main.cpp.o
[100%] Linking CXX executable navicat-patcher
[100%] Built target navicat-patcher
这一步可能会发生以很多问题,比如我在编译的时候就遇到了下面的错误:
大部分情况下,遇到错误都是缺少相关的包导致的,所以不用慌张,搜索一下都可以解决,比如以上问题就可以通过安装 libfmt-dev 解决。
sudo apt-get install libfmt-dev
在编译的时候可能会卡住,这是因为 CMakeLists.txt 需要访问 github 下载编译需要的依赖。这时你需要解决 github 不能访问的问题,或者可以通过科学上网解决。
4、Patch 并重新打包 Navicat
注意当前你在 build 目录下,这时候我们回到 navicat16 目录下 并执行以下命令:
patch n16p,目的是为了替换官方公钥。
navicat-keygen/build/navicat-patcher ./n16p
patch 成功后,在控制台应该会看到以下内容,由于输出内容很多,以下仅摘录了一点内容。
[*] Your RSA private key:
...
[*] patch_solution_since<16, 0, 7, 0>: Patch has been done.
[*] New RSA-2048 private key has been saved to
/home/vstar/path/RegPrivateKey.pem
*******************************************************
* PATCH HAS BEEN DONE SUCCESSFULLY!*
*HAVE FUN AND ENJOY~ *
*******************************************************
这一步完成之后,我们就可以使用 navicat16 目录下的 appimagetools 重新打包 navicat。
./appimagetool-x86_64.AppImage ./n16p ./navicat16.AppImage
打包完成后,运行 navicat16.AppImage,然后将它晾在一边,不要关闭。
./navicat16.AppImage
如果没有执行权限,可以通过 sudo chmod +x navicat16.AppImage
赋予执行权限后再运行 navicat16.AppImage。
5、生成注册码并完成激活
./navicat-keygen/build/navicat-keygen --text ./RegPrivateKey.pem
运行上面的命令后会选择Navicat产品类别、Navicat语言版本和填写主版本号。
***************************************************
* navicat-keygen by @DoubleLabyrinth *
* version: 16.0.7.0 *
***************************************************
[*] Select Navicat product:
0. DataModeler
1. Premium
2. MySQL
3. PostgreSQL
4. Oracle
5. SQLServer
6. SQLite
7. MariaDB
8. MongoDB
9. ReportViewer
10. ChartsCreator
11. ChartsViewer
(Input index)> 1
[*] Select product language:
0. English
1. Simplified Chinese
2. Traditional Chinese
3. Japanese
4. Polish
5. Spanish
6. French
7. German
8. Korean
9. Russian
10. Portuguese
(Input index)> 1
[*] Input major version number:
(range: 11 ~ 16, default: 16)> 16
[*] Serial number:
NAV9-7AYF-HGE4-TEVR
[*] Your name: fox
[*] Your organization: fox
[*] Input request code in Base64: (Double press ENTER to end)
命令运行这里,你会看到要求你输入 request code,request code 之后会说明,暂时晾在一边。
另外上面选择完 major version number 之后,输出的最重要的内容便是 Serial number,复制该内容,然后回到之前被我们晾在一边的 Navicat 界面,然后断网!注意必须断网!。进入注册界面,粘贴 Serial number,然后点击激活按钮。
为什么需要断网?因为断网之后,点击激活按钮,我们可以选择手动激活,界面如下。可以看到界面上有一个请求码,已经默认填上了内容,还有一个激活码需要我们输入。
复制请求码,也就是 request code,粘贴到之前的命令行中,然后按两次回车键,便可生成激活码。复制激活码填到激活码输入框中。点击 OK 按钮完成激活。
温馨提示:反馈需要登录