ディスクスペースが非常に限られている組み込みシステムでは、フォルダ/var/cache/apt
に約700MBといくつかsrcpkgcache.bin.*
の大きな*.bin
ファイルがいっぱいです。
実行sudo apt-get clean
しても目に見える違いはありませんでした。
これらの*.bin*
ファイルを手動で削除しても安全ですか?
archives
内のサブディレクトリに関するもので/var/cache/apt/
、これは*.bin*
ファイルに関するものです。
ディスクスペースが非常に限られている組み込みシステムでは、フォルダ/var/cache/apt
に約700MBといくつかsrcpkgcache.bin.*
の大きな*.bin
ファイルがいっぱいです。
実行sudo apt-get clean
しても目に見える違いはありませんでした。
これらの*.bin*
ファイルを手動で削除しても安全ですか?
archives
内のサブディレクトリに関するもので/var/cache/apt/
、これは*.bin*
ファイルに関するものです。
回答:
あんまり。これらのファイルは、システムが利用可能なものとそうでないものを判断するのに役立ちます。そのディレクトリを空にすると、apt-getシステムが破損します。ここにいくつかのヒントがあります。
まず、自動クリーニング
を追加
DPkg::Post-Invoke { "apt-get clean"; };
の終わりまで/etc/apt/apt.conf
。これにより、aptおよびdpkgプロセスに時間がかかりますが、キャッシュディレクトリが常にクリーンになるようになります。
次に、アーカイブを削除します
(使用していない)すべてのソースアーカイブを削除して無効にすることから始めます。組み込みシステムでは、おそらくそれらは必要ありません。次に、使用されていないすべてのアーカイブを削除します。apt-cache policy
よくわからない場合は、実行してパッケージのリポジトリを確認できます。
アーカイブの追加削除
一部のPPAでは、必要なパッケージが1つまたは2つだけの場合に膨大な数のパッケージを使用することを恐れています。これらのPPAを無効にして、debファイルを手動でインストールしてみてください。これらの場合はスペースを節約できますが、自動更新は失われます。dpkgは依存関係を処理するため、thing-with-tons-of-deps.debをインストールapt-get -f install
してから依存関係を取得するために実行できることに注意してください。
完全に極端な回答1
組み込みシステムについて話していたので、メインのレポジトリの90%は役に立たないでしょう。これを処理するには、独自のapt-getリポジトリサーバーを実行します(このリンクを参照)。簡単ではありません。1台のマシンのPIAです。しかし、これらのマシンがいくつかある場合、それは完全に価値があります。(aptリポジトリサーバーは、実際に使用するパッケージのサブセットのみをホストできます。すべてをミラーリングする必要はありません)
完全に極端な回答2
スペースが本当に大きな問題である場合は、aptをすべて無効にして、dpkgを使用した手動インストールに戻すことができます。いくつかの組み込みシステムでこれをしなければなりませんでした。動作しますが、管理者にとっては悪夢です。
*.bin
ファイルを削除するのは安全ではないと書いているのですか?を実行すると、apt-get update
これらのファイルが最初から再生成されます(テスト済み)。たとえば、私のユースケースは、LXCコンテナテンプレートを作成し、可能な限りアーカイブを削除することです。安全でない理由はわかりません。そして、あなたの答えは理由を示すものではなく、単に安全でないと述べているだけです。Ubuntu 14.04で完全に安全であることをテストしました。
apt-cache clean
dpkg呼び出しに含めるとキャッシュがapt-cache clean
きれいになると言っていますが、ユーザーは何もきれいにしていないと言います。また、あなたの答えは完全に間違って dpkgのは、使用しないので/var/cache/apt/*
、パッケージ統計のための通知を取得するコンテンツを。
clean
取得したパッケージのローカルリポジトリうち*クリーンクリアとして。/ var / cache / apt / archives /および/var/cache/apt/archives/partial/.*からロックファイルを除くすべてを削除します。*危険な場合、そのような機能はありません。
あなたはもちろん、削除することができますpkgcache.bin
とsrcpkgcache.bin
、何も起こりません。apt-get update
それらを再作成するために実行します。
.deb
ファイルの削除とは無関係に本当ですか?
キープpkgcache.bin
とsrcpkgcache.bin
、あなたは安全に他の人を削除することができます。ディレクトリに触れないでください!
*bin.*
ファイルを一時的にバックアップフォルダーに移動しました。しかし、apt-getがキャッシュ内のキャッシュを管理するのはなぜですか?キャッシュディレクトリは、本来一時ストレージである必要があります。
もちろん、このためにNFS共有(ネットワークファイルシステム)を作成できます。これらのファイルをサーバーに残し、パッケージを更新/インストールする場合にのみ共有をマウントします。組み込み環境では、通常、インストールは比較的静的です。
sshfsはもう1つの優れたオプションで、セットアップがはるかに簡単です(基本的には標準のSSHのみが必要です)が、オーバーヘッドが大きくなります(遅い)。
*.bin
、上記のフォルダー内のファイルを完全に削除できます-現在apt関連のプロセスが実行されていないことを前提としています。次apt-get update
は*.bin
ファイルを再生成します。この質問は明らかにされていない内のファイルについては/var/cache/apt/archives
、しかし、ファイル/var/cache/apt/*.bin
。大きな違い。apt-get clean
前者はを発行することでクリーニングできますが、後者は手動で削除する必要があります。明らかに、質問を終了する投票者は質問を適切に読んでいない。残念ながら、賞金で私の担当者の一部を授与した後、再開するには投票できません。