メンテナンス・トラブルシュート - pkg ports 関連コマンド - 古い distfiles を削除する
- 1. 概要
- 2. portsclean
- 3. portmaster
- 4. 試してみた
1. 概要
「FreeBSD」のマシンで、「ports」でパッケージ管理していて、長年使っていると、明示的に削除しないと。
/usr/ports/distfiles/
の下に、ファイルが溜まりに溜まっちゃいます。
長いこと、ほったらかしてあったマシンで、ふと上記を「tree」コマンドで見てみたら。
「56 directories, 2588 files」ですって(笑)。
本ページは、下記のサイトを参考にさせていただきました。
「第4章 アプリケーションのインストール - packages と ports」
2. portsclean
これは、おそらく、「FreeBSD」にデフォルトで、備わっているコマンドではないかな。
いくつか、参考サイトに紹介されているものを。
すべてのワークを削除するには。
portsclean -C
ですって。
わたしは、まぁ上記は使わないでしょう。
どの「ports」からも使われていない、すべての「distfiles」を削除するには。
portsclean -D
上記は、使いそう。
システムにインストールされている「port」から使われていない、「distfiles」をすべて削除するには。
portsclean -DD
ですと。
これが、一番、使い勝手がよさそうです。
3. portmaster
もし、「portmaster」をインストールしているならば。
(わたしは、たいがい、インストールするようにおすすめしております)
portmaster --clean-distfiles
とすれば、インタラクティブな動作になります。
試しにやると
===>>> Gathering distinfo list for installed ports
===>>> Checking for stale distfiles
===>>> Delete stale file: Cython-0.29.34.tar.gz? y/n [n]
てな具合に、プロンプトが表示され、ひとつずつ、消す消さないを決めることができます。
とはいえ、これ、いちいちファイルまで覚えていないので、前項の方が楽かもですね。
4. 試してみた
冒頭の「56 directories, 2588 files」溜まっている状態で。
「portsclean -D」を試してみました。
Detecting unreferenced distfiles...
[Reading data from pkg(8) ... - 592 packages found - done]
Delete /usr/ports/distfiles/0001-refs-extract-packed_refs_delete_refs-to-allow-contro.patch
Delete /usr/ports/distfiles/0002-refs-allow-passing-flags-when-beginning-transactions.patch
Delete /usr/ports/distfiles/0003-refs-allow-skipping-the-reference-transaction-hook.patch
Delete /usr/ports/distfiles/0004-refs-demonstrate-excessive-execution-of-the-referenc.patch
Delete /usr/ports/distfiles/0005-refs-do-not-execute-reference-transaction-hook-on-pa.patch
Delete /usr/ports/distfiles/0006-refs-skip-hooks-when-deleting-uncovered-packed-refs.patch
Delete /usr/ports/distfiles/1f35c466aaa9444335a1b854b0b7223b0d2346c2.patch
Delete /usr/ports/distfiles/2340cdb5f0c2.patch
Delete /usr/ports/distfiles/36391cda3d4e4fb3269a2ce310e6e0f634729f0b.patch
Delete /usr/ports/distfiles/4ec3bb5bf198.patch
・・・ 略 ・・・
Delete /usr/ports/distfiles/composer-2.4.3
Delete /usr/ports/distfiles/KDE/Qt/5.15.7
Delete /usr/ports/distfiles/KDE/Qt/5.15.5
2行目で、少し考えていたようですが。
その後は、一気に進みました。
削除したものは、出力するので、記録しておけば、間違って消しても、安心ですね。
「56 directories, 2588 files」あったものが、「36 directories, 820 files」になりました。
|
|