私はこれを使ってdf
マウントされたファイルシステムがいっぱいであることを確認します。私はそのうちの1つでも90%以上の使用量を得たら私に電子メールを送るcronタスクを持っています。
問題は、一部のアプリケーション(Ubuntuディストリビューション)がスナップを使用して、そのアプリケーション用に特別にマウントされた読み取り専用ファイルシステムを作成することです。報告されているように常に100%いっぱいですdf
。読み取り専用で完璧にできないので、これは適切だと思います。df
出力から除外したいです。
df
-x, --exclude-type=TYPE
役に立つコマンドラインフラグがありますが、マニュアルページには可能な値が文書化されていないため、TYPE
それを使用して読み取り専用ファイルシステムを除外できるかどうかはわかりません。
df
以下は私のシステムの1つの出力例です。
$ df --output=pcent,target
Use% Mounted on
0% /dev
1% /run
7% /
1% /dev/shm
1% /run/lock
0% /sys/fs/cgroup
100% /snap/gnome-3-26-1604/74
100% /snap/gnome-characters/139
100% /snap/core/5662
100% /snap/gnome-system-monitor/57
100% /snap/gnome-calculator/238
100% /snap/gnome-logs/45
100% /snap/gtk-common-themes/701
100% /snap/core/5742
cronが実行するスクリプトは次のとおりです。
#!/bin/bash
set -e
THRESHOLD_PERCENT=90
host=`hostname -f`
df --output=pcent,target | while read line
do
if [[ "$line" != Use* ]]
then
percent=${line/\%*/};
if (( percent >= THRESHOLD_PERCENT ))
then
file=${line/* /}
echo "$percent% disk usage on $host:$file"
fi
fi
done
これらのフルスナップショットエントリと、後で読み取り専用でマウントできる他のファイルシステムの両方を削除したいと思います。
ベストアンサー1
はい、ファイルシステムのリストに対するスナップの侵入は迷惑になる可能性があります。
あなたは正しいですdf -x
-スナップクラフトすべてのスナップショットは読み取り専用のSquashfsファイルシステムを使用するため、以下を使用してすべてをフィルタリングできます。
df -xsquashfs