pcmanfmを使用して大容量ファイルをコピーすると「メモリ不足」エラーが発生する

pcmanfmを使用して大容量ファイルをコピーすると「メモリ不足」エラーが発生する

lxdeこれはDebianベースのディストリビューションを実行し、pcmanfmファイルマネージャとして使用される古いコンピュータです。pcmanfmコピーを除いて、通常はうまく機能します。非常に大容量ファイル(例:*.VOB圧縮されていないDVDのファイル)まあ、実際には私はそれが私の能力を使うと思いました。交換(3.5GBに設定)残念ながら、スワップは常に薬を示しています。12MB
これもこうだpcmanfm 無視するファイルを交換しますか?残念ながら、このマシンのRAMモジュールの1つにエラーがあり、それを取り除く必要がありました。したがって、現在の物理RAMは1GBしか残っていません。 :(. しかし、スワップの問題が正しく解決された場合、問題はありません!

次の例syslog:

[40398.719466] Out of memory: Kill process 21573 (compiz) score 2 or sacrifice child

代わりに、次回何が得られるかに応じて(通常などcompiz)、カーネルによって最も多くのリソースが必要なプロセスが偶然終了します。dbus

pcmanfmにスワップスペースを使用するように「通知する」方法はありますか?

ベストアンサー1

より一般的な質問にお答えします。

スワップスペースを使用するようにプロセスに「通知する」方法はありますか?

Linuxカーネルは以下を提供します。/プロセス/システムインターフェイスメモリページ(匿名のみ)がディスクにどれだけ積極的にスワップされるかを定義する属性。

これ仮想マシンの切り替え可能性属性はシステムごとにグローバルに適用されますが、プロセスごとには適用されません。この値を設定低い可能な限り交換を避けたい場合。システムプロセスが長時間休止状態になっている場合は、この値を増やすことで積極的なスワッピング動作によって利点を得ることができます。このグローバルプロパティはツールとして利用可能で、ツール/proc/sys/vm/swappinesssysctl調整できます。

カーネル2.6.24の導入により、cgroupsさらに細分化することができます。 メモリサブシステム利用可能なcgroup階層があると仮定メモリサブシステム(/cgroups/mem)とcgroup(/cgroups/mem/your_cgroup)が接続され、ジョブ/プロセス()が定義されます/cgroups/mem/your_cgroup/tasks。それでは変えることができます。交換性このワークセットは次のように動作します。

cd /cgroups/mem/your_cgroup
echo 90 > memory.swappiness

このcgroupにプロセスを自動的に割り当てるにはどうすればよいですか?/etc/cgrules.confファイルに簡単なルールを作成します。

your_user:pcmanfm   memory  /your_cgroup

cgredその後、このファイルは自動プロセス分類のためにcgroupルールエンジンデーモン(サービス)によって使用されます。

詳細については、以下を確認してください。Linuxカーネルcgroupドキュメント

おすすめ記事