[心得] checkinstall 輕鬆移除安裝自源碼的套件

看板Linux作者 (方方)時間6年前 (2017/06/18 02:10), 編輯推噓15(1503)
留言18則, 15人參與, 最新討論串1/1
今天如果你從源碼透過 >> make install 安裝了一個套件, 當你想移除他的時候該怎麼辦呢? 如果你運氣很好, 源碼的 Makefile 有 uninstall 這個 target 的話, 你只需要執行 >> make uninstall 就能夠達成你的目的. 然而並不是所有的套件都有這個功能. 當 make uninstall 無法使用的時候該怎麼辦呢? 土法煉鋼的方式就是一步一步拆回去. >> make -n install 這個指令會顯示你在 make install 過程中每一步發生的事情, 你需要做的事情很簡單 -- 逆著步驟「肅清」就可以了. 但有的時候, 這個過程很繁冗, 甚至會出現一些莫名的問題, 這時 checkinstall 就派上用場了! checkinstall 執行的事情可以簡單理解成: 把 make install 過程中的所有檔案都包裝成一個 .deb 檔 (以 Debian 系列為例) 舉個小小的例子 假設今天你透過原始碼及 make install 安裝了一個套件, 你不知道要如何移除它. 過程如下: (以 Debian 系列為例) 1. 透過 apt-get 安裝 checkinstall >> sudo apt-get install checkinstall 2. 進入原始碼的路徑下, 用 checkinstall 把整個套件包裝成 .deb 檔 >> cd $PACKAGE_SOURCE_DIR >> sudo checkinstall 這個步驟其實是「重新安裝一次」套件. sudo checkinstall 這個指令等同於 make install 後 再把套件的所有檔案包裝成一個 .deb 檔 3. 如果上一步成功的話, 可以透過 dpkg -L $PACKAGE_NAME 檢查. 如果有的話 -- 恭喜你可以透過 >> sudo dpkg -r $PACKAGE_NAME 來移除這個套件了! 為了方便管理這些用 make install 安裝自源碼的套件, 可以考慮未來要 make install 時全部使用 checkinstall 來取代喔! 更多關於 checkinstall 的資訊可以參考 https://help.ubuntu.com/community/CheckInstall -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 106.1.101.166 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1497723043.A.002.html

06/18 03:11, , 1F
好用推
06/18 03:11, 1F

06/18 03:44, , 2F
詳細推。想當初有人在ptt只推了一個checkinstall,我還以為
06/18 03:44, 2F

06/18 03:44, , 3F
他在發廢文XD
06/18 03:44, 3F

06/18 08:08, , 4F
debian系限定?
06/18 08:08, 4F

06/18 09:33, , 5F
AUR表示:
06/18 09:33, 5F

06/18 09:35, , 6F
這其實就跟AUR做一樣的事情了??
06/18 09:35, 6F

06/18 10:04, , 7F
推個,希望之後有更多分享
06/18 10:04, 7F

06/18 12:14, , 8F
OrzOGC 是喔
06/18 12:14, 8F

06/18 15:42, , 9F
rpm也可以
06/18 15:42, 9F

06/19 02:52, , 10F
推薦文章。
06/19 02:52, 10F

06/19 03:05, , 11F
push
06/19 03:05, 11F

06/19 07:59, , 12F
06/19 07:59, 12F

06/19 12:51, , 13F
好像很厲害!
06/19 12:51, 13F

06/19 14:18, , 14F
這個太棒了!感謝分享
06/19 14:18, 14F

06/20 02:01, , 15F
跟 SlackBuild 有 8 成像
06/20 02:01, 15F

06/20 11:27, , 16F
06/20 11:27, 16F

06/29 14:51, , 17F
這個工具拿來應急還可以,如果是長久的維護不建議用
06/29 14:51, 17F

07/12 16:10, , 18F
checkinstall好用耶,感謝
07/12 16:10, 18F
文章代碼(AID): #1PHN2Z02 (Linux)