キャッシュをクリアするために次のコマンドを実行しています:
$ sync; sudo sh -c "echo 3 > /proc/sys/vm/drop_caches"
sh: 1: cannot create /proc/sys/vm/drop_caches: Operation not permitted
$ free
total used free shared buff/cache available
Mem: 7.9G 5.7G 2.0G 17M 230M 2.1G
Swap: 13G 445M 13G
キャッシュに 230M があるので、明らかに機能していません。/proc/sys/vm/ に移動すると、「drop_caches」というファイルはありません。
何が起こっているのか?
Windows Linux Subsystem 経由で Ubuntu 16.04 を使用しています。
答え1
ファイルを作成できない根/proc/sys/vm
権限により:
dr-xr-xr-x 1 root root 0 Jun 9 21:46 /proc/sys/vm
あなたもそれがわかるでしょう根書き込み権限がないので、根このディレクトリ内のファイルを削除、名前変更、または作成することはできません。
/proc/sys/vm
ただし、ファイルの権限自体が十分であれば、既存のファイルは編集できる可能性があります。
以下のファイルは/proc
カーネルによって提供されます。WSL を使用する場合、Linux カーネルではなくエミュレーション (lxss.sys、lxcore.sys) を使用します。以下のファイルが/proc
存在しない場合は、カーネルまたは (この場合は) エミュレーションによって提供されていないことを意味します。
答え2
[ 編集済み ]
前に約束した通り、解決策を見つけました。
WSL 2をインストールする
WSL 2をインストールする必要がありますWSL 1 は Systemd のような機能をサポートしていないため、実行時にバッファ キャッシュを削除することはできません。
Ubuntuプレビューをインストールする
WSL2がインストールされていても、Ubuntuの現在のバージョンではSystemdはサポートされていません。そのため、Ubuntuプレビューをインストールする必要があります。
結果
● DESKTOP-E8H5RD4
State: running
Units: 308 loaded (incl. loaded aliases)
Jobs: 0 queued
Failed: 0 units
Since: Thu 2022-12-01 14:03:05 GMT; 1h 36min ago
systemd: 251.4-1ubuntu7
Tainted: cgroupsv1
CGroup: /
c_sharp_man@DESKTOP-E8H5RD4:/mnt/c/Windows/system32$ free
total used free shared buff/cache available
Mem: 7815484 484724 7191488 3352 139272 7128876
Swap: 2097152 268 2096884
c_sharp_man@DESKTOP-E8H5RD4:/mnt/c/Windows/system32$ sudo sh -c "echo 3 > /proc/sys/vm/drop_caches"
[sudo] password for c_sharp_man:
c_sharp_man@DESKTOP-E8H5RD4:/mnt/c/Windows/system32$ free
total used free shared buff/cache available
Mem: 7815484 486760 7192304 3352 136420 7128140
Swap: 2097152 268 2096884
c_sharp_man@DESKTOP-E8H5RD4:/mnt/c/Windows/system32$
余分な
Windowsターミナルをカスタムスタートアップバナーでカスタマイズしたい場合は、私が作成したこの投稿は、ステップバイステップでガイドします。