Linuxqq shell腳本安裝后的卸載


官方下載和幫助頁面: 傳送門

linuxqq_2.0.0-b1 的時候,並沒有發布 MIPS64 的 DEB 包,只能用 .sh 安裝,需要手動刪除卸載。愚人節發布的 beta2 新增了 MIPS64 的 DEB 包,本以為會直接覆蓋,然而 beta2 的安裝目錄變了。安裝后原來的 beta1 並沒有被覆蓋,而是可以共存, beta1 依舊需要手動刪除。

  • 思路

得到安裝文件目錄並手動刪除。

  • 探索

用 vim 打開 .sh 腳本,可以看到前 33 行是安裝腳本,33 行后是一個 linuxqq.tar.gz 包。

檢查是否以 root 權限運行

if [[ $USER != "root" ]]; then
  echo 'need root access to install'
  exit 1
fi

創建 linuxqq.tar.gz 並計算 md5

lines=33 # |lines| equals to line number of this script plus 1
tarball_md5=9d6b52c9ea4f256f249cd8726328352d

tail -n+$lines $0 > linuxqq.tar.gz
md5=$(md5sum linuxqq.tar.gz | cut -d' ' -f1)

檢查 md5,如果不正確就退出

if [[ "$md5" != "$tarball_md5" ]]; then
  echo "checksum fail"
  exit 1
fi

解壓安裝並刪除臨時文件

export -f do_install
tar zxf linuxqq.tar.gz
find linuxqq/ -type f -exec bash -c 'do_install "{}"' \;
rm -rf linuxqq linuxqq.tar.gz
  • 實施

我們可以注釋掉用於 “解壓安裝並刪除臨時文件” 的四行和 “檢查是否以 root 權限運行” 的四行,保存后運行。

運行后報 checksum fail ,忽略它,可以看到程序目錄下多出了 linuxqq.tar.gz 這個文件,打開即可看到安裝文件的文件組成,顯然我們只要刪除 /usr/share/tencent-qq 即可:

sudo rm -r /usr/share/tencent-qq/

新版的 linuxqq 的 shell 腳本安裝后的卸載方法類似。

by SDUST weilinfox
本文地址:https://www.cnblogs.com/weilinfox/p/12619135.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM