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ドキュメント

答え2

2台目のモニタでコンピュータ(ノートブック)を起動すると、Lubuntu 14.04で同じ問題が発生しました。

解決策は、コンピュータの起動時に2番目のモニタを自動的にオフにすることです(/home/user/.config/lxsession/Lubuntuの自動起動ファイルから)。 vgaを使用しているので、xrandr --output VGA1 --offを使用します。第2のプレゼンテーションにはモニターを使用した。

次に、bashファイルを呼び出すデスクトップファイルを実行し(少し過剰になる可能性があります)、xrandrを私が望む方法に設定します。

重要なことは、1つのモニター(基本モニター)を最初に使用してから2番目のモニターを起動する必要があることです。これにより、デスクトップイメージファイルが正しく使用され、私のpcmanfm CPU%は決して高くなりません。

フィル

関連情報