落書き帖  古事記  いろは歌  日 記

パッケージ削除覚え書き

2016年03月28日
debianパッケージのインストールとアンインストールを繰り返していて思った…。

…apt−get remove は設定ファイルを削除して無いじゃん

そう思う様になったきっかけは…、
apache2をインストールしたりアンインストールしていた時…、
インストール後、apache2がうまく起動しなくなった事でした。
その時の経緯を書いていくと長くなりそうなので、気になる方は下の記事を…↓

ローカルサーバーを作ってシェルスクリプトでCGI

apt−get purge の説明に「設定ファイルも含めて削除する」、って書いてあるのかな?
でも何か違う気がするんですよね…。
オイラの考えてる設定ファイルの認識が違うのか…、
それとも、日本語訳が違うのか…、
それとも、パッケージによっても違うのか…。
とりあえず、言葉で説明するより下の結果をみて下さい。↓
(1)(2)(4)の結果は locate apache2 の出力から

(1) apacheをインストール後のapache関連ファイルリスト


(2) apacheと関連パッケージを apt−get purge と apt−get autoremove で削除後に残ったapache関連ファイルリスト


(3) (1)と(2)の差分(purgeで削除されたファイルリスト)



apt−get purge で削除されたのは、モジュール・画像ファイルがほとんどで、(2)からも分かるように相変わらず…、/etc/apache2 以下の設定ファイルとかは残ってます。

…設定ファイルの定義が違うのかな?

えぇ…、オイラみたいなオバカは、purge後に残ったファイルを見つけると、rmで躊躇なく消しちゃうんです…。
そしてたまに何かトラブルんです…。


apt−get purge と apt−get autoremove 後にも削除したパッケージの関連ファイルが残っている、のが嫌なら、とりあえず…、

dpkg --get-selection | grep パッケージ名

すると良いかも知れません…。
apacheの場合だと…、

apache2         deinstall
apache2-bin     deinstall

みたいな出力があります。
deinstall で一見何もインストールしてないっぽいんですが…、
purgeでパッケージを削除後にも /var/lib/dpkg/status (debianの場合)の中には設定が残ってます。
/var/lib/dpkg/status の設定を削除するのが…、

sudo dpkg -P apache2 apache2-bin
または
sudo dpkg --purge apache2 apache2-bin

っぽいです。
出力のあったパッケージ名でdpkgから削除してやると…、
/var/lib/dpkg/status の設定が削除され、沢山残っていた関連ファイルの殆ども削除されてました…。

(4) dpkg ーP 後に残ったapache関連ファイルリスト



最後まで残ったのが、展開されてない素のパッケージそのもの…。

…何でこんなもんあるんだろ?

これもいらなかったら…(オイラはいらない)、

sudo apt-get clean

ただこれは…、
/var/cache/apt/archives 配下にある素のパッケージを全部消してくれる。(オイラみたいな小市民には多分いらない物かな?)
オイラは、apt−get clean じゃなくて直に消してたけど(知らなかった)…、
とりあえず、今の所問題は起きてない…、
と思う…。

あっ、あと…、debianのapache2だと…、
/var/www/html が残ってるかも知れないけど…、
apt−get purge か dpkg ーp の時に消せなかったよって教えてくれる…。
オイラは今日気付いた…。

自分用にもう一つメモ…、

dpkg --get-selections | grep deinstall | cut -f1

で、最初のフィールドだけ切り出してくれる。