阿王弓 發表於 2020-8-3 14:43:00

ubuntu下安装navicat

<h1 id="ubuntu下安装navicat破解版">ubuntu下安装navicat破解版</h1>
<h2 id="1-从官方网站下载navicat">1. 从官方网站下载navicat。</h2>
<p>你会得到一个AppImage文件。例如 <code>navicat15-premium-en.AppImage</code>。</p>
<p>我假定这个AppImage文件在 <code>~/Desktop</code> 文件夹下。</p>
<h2 id="2提取appimage文件里的所有文件到一个文件夹例如">2.提取AppImage文件里的所有文件到一个文件夹。例如:</h2>
<pre><code>$ mkdir ~/Desktop/navicat15-premium-en
$ sudo mount -o loop ~/Desktop/navicat15-premium-en.AppImage ~/Desktop/navicat15-premium-en
$ cp -r ~/Desktop/navicat15-premium-en ~/Desktop/navicat15-premium-en-patched
$ sudo umount ~/Desktop/navicat15-premium-en
$ rm -rf ~/Desktop/navicat15-premium-en
</code></pre>
<h2 id="3-编译patcher和keygen">3. 编译patcher和keygen</h2>
<ol>
<li>
<p>请确保你安装了下面几个库:</p>
<ul>
<li><code>capstone</code></li>
<li><code>keystone</code></li>
<li><code>rapidjson</code></li>
</ul>
<p>你可以通过下面的命令来安装它们:</p>
<pre><code># install capstone
$ sudo apt-get install libcapstone-dev

# install keystone
$ sudo apt-get install cmake
$ git clone https://github.com/keystone-engine/keystone.git
$ cd keystone
$ mkdir build
$ cd build
$ ../make-share.sh
$ sudo make install
$ sudo ldconfig

# install rapidjson
$ sudo apt-get install rapidjson-dev
</code></pre>
</li>
<li>
<p>你的gcc支持C++17特性。</p>
</li>
<li>
<p>编译</p>
</li>
</ol>
<pre><code>$ git clone -b linux --single-branch https://gitee.com/andisolo/navicat-keygen.git
$ cd navicat-keygen
$ make all
</code></pre>
<p>生成完成后,你会在 <code>bin/</code> 文件夹下看到编译后的keygen/patcher。</p>
<h2 id="4-使用-navicat-patcher-替换官方公钥">4. 使用 <code>navicat-patcher</code> 替换官方公钥。</h2>
<pre><code>Usage:
    navicat-patcher [--dry-run] &lt;Navicat Installation Path&gt;

      [--dry-run]                   Run patcher without applying any patches.
                                    This parameter is optional.

      &lt;Navicat Installation Path&gt;   Path to a directory where Navicat locates
                                    This parameter must be specified.

         Path to a PEM-format RSA-2048 private key file.
                                    This parameter is optional.
</code></pre>
<p><strong>例如:</strong></p>
<pre><code>$ ./bin/navicat-patcher ~/Desktop/navicat15-premium-en-patched
</code></pre>
<p><strong>Navicat Premium 15.0.3 Linux 英文版</strong> 已经通过测试。</p>
<p>下面是一份样例输出:</p>
<pre><code>**********************************************************
*       Navicat Patcher (Linux) by @DoubleLabyrinth      *
*                  Version: 1.0                        *
**********************************************************

Press ENTER to continue or Ctrl + C to abort.

[+] Try to open libcc.so ... Ok!

[+] PatchSolution0 ...... Ready to apply
   RefSegment      =1
   MachineCodeRva=0x0000000001413e10
   PatchMarkOffset = +0x00000000029ecf40

[*] Generating new RSA private key, it may take a long time...
[*] Your RSA private key:
   -----BEGIN RSA PRIVATE KEY-----
   MIIEowIBAAKCAQEArRsg1+6JZxZNMhGyuM8d+Ue/ky9LSv/XyKh+wppQMS5wx7QE
   XFcdDgaByNZeLMenh8sgungahWbPo/5jmkDuuHHrVMU748q2JLL1E3nFraPZqoRD
   ...
   ...
   B1Z5AoGBAK8cWMvNYf1pfQ9w6nD4gc3NgRVYLctxFLmkGylqrzs8faoLLBkFq3iI
   s2vdYwF//wuN2aq8JHldGriyb6xkDjdqiEk+0c98LmyKNmEVt8XghjrZuUrn8dA0
   0hfInLdRpaB7b+UeIQavw9yLH0ilijAcMkGzzom7vdqDPizoLpXQ
   -----END RSA PRIVATE KEY-----
[*] Your RSA public key:
   -----BEGIN PUBLIC KEY-----
   MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArRsg1+6JZxZNMhGyuM8d
   +Ue/ky9LSv/XyKh+wppQMS5wx7QEXFcdDgaByNZeLMenh8sgungahWbPo/5jmkDu
   ...
   ...
   GrVJ3o8aDm35EzGymp4ON+A0fdAkweqKV6FqxEJqLWIDRYh+Z01JXUZIrKmnCkgf
   QQIDAQAB
   -----END PUBLIC KEY-----

*******************************************************
*                   PatchSolution0                  *
*******************************************************
[*] Previous:
+0x0000000000000070                        01 00 00 00 05 00 00 00          ........
+0x000000000000008000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00................
+0x000000000000009000 00 00 00 00 00 00 00 40 cf 9e 02 00 00 00 00........@.......
+0x00000000000000a040 cf 9e 02 00 00 00 00 00 10 00 00 00 00 00 00@...............
[*] After:
+0x0000000000000070                        01 00 00 00 05 00 00 00          ........
+0x000000000000008000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00................
+0x000000000000009000 00 00 00 00 00 00 00 d0 d0 9e 02 00 00 00 00................
+0x00000000000000a0d0 d0 9e 02 00 00 00 00 00 10 00 00 00 00 00 00................

[*] Previous:
+0x00000000029ecf4000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00................
+0x00000000029ecf5000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00................
+0x00000000029ecf6000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00................
...
...
+0x00000000029ed0c000 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00................
[*] After:
+0x00000000029ecf40ef be ad de 4d 49 49 42 49 6a 41 4e 42 67 6b 71....MIIBIjANBgkq
+0x00000000029ecf5068 6b 69 47 39 77 30 42 41 51 45 46 41 41 4f 43hkiG9w0BAQEFAAOC
+0x00000000029ecf6041 51 38 41 4d 49 49 42 43 67 4b 43 41 51 45 41AQ8AMIIBCgKCAQEA
...
...
...
+0x00000000029ed0c043 6b 67 66 51 51 49 44 41 51 41 42 ad de ef beCkgfQQIDAQAB....

[*] Previous:
+0x0000000001413e1044 0f b6 24 18 48 8b 44 24 28 8b 50 f8 85 d2 79D..$.H.D$(.P...y
+0x0000000001413e206f                                             o               
[*] After:
+0x0000000001413e1045 31 e4 48 8d 05 2a 91 5d 01 90 90 90 90 90 90E1.H..*.].......
+0x0000000001413e2090                                             .               

[*] New RSA-2048 private key has been saved to
   /home/doublesine/github.com/navicat-keygen/RegPrivateKey.pem

*******************************************************
*         PATCH HAS BEEN DONE SUCCESSFULLY!         *
*                  HAVE FUN AND ENJOY~                *
*******************************************************
</code></pre>
<h2 id="5-将文件重新打包成appimage">5. 将文件重新打包成AppImage:</h2>
<p><strong>例如:</strong></p>
<pre><code>   $ wget 'https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage'
   $ chmod +x appimagetool-x86_64.AppImage
   $ ./appimagetool-x86_64.AppImage ~/Desktop/navicat15-premium-en-patched ~/Desktop/navicat15-premium-en-patched.AppImage
</code></pre>
<h2 id="6-运行刚生成的appimage">6. 运行刚生成的AppImage:</h2>
<pre><code>$ chmod +x ~/Desktop/navicat15-premium-en-patched.AppImage
$ ~/Desktop/navicat15-premium-en-patched.AppImage
</code></pre>
<h2 id="7-使用-navicat-keygen-来生成-序列号-和-激活码">7. 使用 <code>navicat-keygen</code> 来生成 <strong>序列号</strong> 和 <strong>激活码</strong>。</h2>
<pre><code>Usage:
    navicat-keygen &lt;--bin|--text&gt; [--adv] &lt;RSA-2048 Private Key File&gt;

      &lt;--bin|--text&gt;    Specify "--bin" to generate "license_file" used by Navicat 11.
                        Specify "--text" to generate base64-encoded activation code.
                        This parameter must be specified.

      [--adv]                     Enable advance mode.
                                    This parameter is optional.

      &lt;RSA-2048 Private Key File&gt;   A path to an RSA-2048 private key file.
                                    This parameter must be specified.
</code></pre>
<p><strong>例如:</strong></p>
<pre><code>$ ./bin/navicat-keygen --text ./RegPrivateKey.pem
</code></pre>
<p>你会被要求选择Navicat产品类别、Navicat语言版本和填写主版本号。之后一个随机生成的 <strong>序列号</strong> 将会给出。</p>
<pre><code>$ ./bin/navicat-keygen --text ./RegPrivateKey.pem
**********************************************************
*       Navicat Keygen (Linux) by @DoubleLabyrinth       *
*                   Version: 1.0                         *
**********************************************************

[*] Select Navicat product:
0. DataModeler
1. Premium
2. MySQL
3. PostgreSQL
4. Oracle
5. SQLServer
6. SQLite
7. MariaDB
8. MongoDB
9. ReportViewer

(Input index)&gt; 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)&gt; 0

[*] Input major version number:
(range: 0 ~ 15, default: 12)&gt; 15

[*] Serial number:
NAVM-RTVJ-EO42-IODD

[*] Your name:
</code></pre>
<p>你可以使用这个 <strong>序列号</strong> 来暂时激活Navicat。</p>
<p>之后你会被要求填写 <strong>用户名</strong> 和 <strong>组织名</strong>。你可以随意填写,但别太长。</p>
<pre><code>[*] Your name: DoubleLabyrinth
[*] Your organization: DoubleLabyrinth

[*] Input request code in Base64: (Double press ENTER to end)
</code></pre>
<p>之后你会被要求填写请求码。<strong>注意不要关闭keygen。</strong></p>
<h2 id="8-断开网络-找到注册窗口填写keygen给你的-序列号然后点击-激活">8. <strong>断开网络</strong>. 找到注册窗口,填写keygen给你的 <strong>序列号</strong>,然后点击 <code>激活</code>。</h2>
<h2 id="9-通常在线激活会失败所以在弹出的提示中选择-手动激活">9. 通常在线激活会失败,所以在弹出的提示中选择 <code>手动激活</code>。</h2>
<h2 id="10-复制-请求码-到keygen连按两次回车结束">10. 复制 <strong>请求码</strong> 到keygen,连按两次回车结束。</h2>
<pre><code>[*] Input request code in Base64: (Double press ENTER to end)
OaGPC3MNjJ/pINbajFzLRkrV2OaSXYLr2tNLDW0fIthPOJQFXr84OOroCY1XN8R2xl2j7epZ182PL6q+BRaSC6hnHev/cZwhq/4LFNcLu0T0D/QUhEEBJl4QzFr8TlFSYI1qhWGLIxkGZggA8vMLMb/sLHYn9QebBigvleP9dNCS4sO82bilFrKFUtq3ch8r7V3mbcbXJCfLhXgrHRvT2FV/s1BFuZzuWZUujxlp37U6Y2PFD8fQgsgBUwrxYbF0XxnXKbCmvtgh2yaB3w9YnQLoDiipKp7io1IxEFMYHCpjmfTGk4WU01mSbdi2OS/wm9pq2Y62xvwawsq1WQJoMg==

[*] Request Info:
{"K":"NAVMRTVJEO42IODD", "DI":"4A12F84C6A088104D23E", "P":"linux"}

[*] Response Info:
{"K":"NAVMRTVJEO42IODD","DI":"4A12F84C6A088104D23E","N":"DoubleLabyrinth","O":"DoubleLabyrinth","T":1575543648}

[*] Activation Code:
i45HIr7T1g69Cm9g3bN1DBpM/Zio8idBw3LOFGXFQjXj0nPfy9yRGuxaUBQkWXSOWa5EAv7S9Z1sljlkZP6cKdfDGYsBb/4N1W5Oj1qogzNtRo5LGwKe9Re3zPY3SO8RXACfpNaKjdjpoOQa9GjQ/igDVH8r1k+Oc7nEnRPZBm0w9aJIM9kS42lbjynVuOJMZIotZbk1NloCodNyRQw3vEEP7kq6bRZsQFp2qF/mr+hIPH8lo/WF3hh+2NivdrzmrKKhPnoqSgSsEttL9a6ueGOP7Io3j2lAFqb9hEj1uC3tPRpYcBpTZX7GAloAENSasFwMdBIdszifDrRW42wzXw==
</code></pre>
<h2 id="11-最终你会得到一个base64编码的-激活码">11. 最终你会得到一个base64编码的 <strong>激活码</strong>。</h2>
<p>将之复制到 <code>手动激活</code> 的窗口,然后点击 <code>激活</code>。</p>
<p>如果没有什么意外,应该可以成功激活。</p>
<h2 id="12-最后的清理">12. 最后的清理:</h2>
<p>可以将破解的navicat文件放到习惯的文件安装位置,我这里放到了/usr/local/navicate下</p>
<p>该文件夹下文件结构:</p>
<pre><code>navicat15-premium-cs.AppImage//破解后的navicat文件
Navicat.png//navicat图标,见下图
navicat.sh //navicat启动文件内容为:sh ./navicat15-premium-cs.AppImage
</code></pre>
<p>根据该文件夹下文件制作桌面启动图标</p>
<pre><code>sudo gedit /usr/share/applications/navicat.desktop

//复制以下内容

Version=15#版本号
Name=Navicat  #显示的名称
Comment=Back up your data with one click
Exec=/usr/local/navicat/navicat15-premium-cs.AppImage #启动脚本的位置
Icon=/usr/local/navicat/Navicat.png   #图标的位置
Terminal=false
Type=Application
Categories=Utility;Application;
</code></pre>
<p>最后清理过程中产生的文件</p>
<pre><code>$ rm ~/Desktop/navicat15-premium-en.AppImage
$ rm -rf ~/Desktop/navicat15-premium-en-patched
$ mv ~/Desktop/navicat15-premium-en-patched.AppImage ~/Desktop/navicat15-premium-en.AppImage
</code></pre><br><br>
来源:https://www.cnblogs.com/zj420255586/p/13426201.html
頁: [1]
查看完整版本: ubuntu下安装navicat