[シナリオ]
取付作業、およびインストール・スクリプト・ファイルのためのいくつかは、インストールパッケージの唯一のビンで実行可能ファイルにパッケージ化した後スクリプトは、二つの部品を必要とする含める必要があり、操作を簡素化します。
コード保護機能は、多くの場合、我々はこのケースでは、我々はよりインストールするには、binファイルにパッケージ化必要がある、コード部分へのユーザーの直接のアクセスを望んでいません。
[理由]
実際には、それは簡単ですが、ビンの実行可能ファイルは、実際には、その内部に同時に同じファイルを置く、とするために必要なインストールスクリプトファイルとスクリプトは、スクリプト内の最後尾のbinファイル内のセクションを読み取ります。
スクリプトの正常な実行を読み出した後。
その後、削除します。
次のように:
#!/ binに/ shを
dir_installation = /ルート/ create_bin ます。mkdir $ dir_installation sedの-n -e '1、/ ^退出0 $ /!P' $ 0> "$ {} dir_installation /abc.rpm" 2>を/ dev / null CDの$のdir_installation RPM -ivh abc.rpm RM -y abc.rpm RM -y $ dir_installation
終了0 |
赤の最も重要な部分は、その主な目的は、0コンテンツのバックが抽出されて終了したrpmパッケージとして保存、およびインストールはRPMを削除した後、その後、インストールを実行することです。
緑色の部分は、私たちのスクリプトの実際の実行です。
[作成]
さらに簡単な作成プロセス:
猫install.sh ./abc.rpm> install.binを |
その後のvimを使ってインストール開く。、ビンファイルを最初は、私たちのスクリプトの一部、私たちのファイルの後半で見つけます。
[コード保護]
コード保護について、私たちは、SHCツールを使用することができます。
./shc -f install.binを |
スクリプトファイルは、スクリプトの内容を隠し、SHCしてバイナリファイルにコンパイルすることができます。
当然这并不是一个完美无缺的方案,linux也提供了方法对二进制文件进行反编译,但是至少普通用户是没有办法去查看相关代码内容了。