Linuxのcronでメモリ開放を定期実行したい

ubuntu20.04を使用しています。

cronで定期的にメモリ開放(キャッシュ削除?)したいと思い、
以下のコードを書いてターミナルから実行しました。

echo 1 | sudo tee /proc/sys/vm/drop_caches > /dev/null

free -h コマンドにて、
無事実行した事が確認できました。

次にこれをシェルスクリプト化するべく
memory_release.shファイルを作成しました。

#!/bin/bash
echo 1 | sudo tee /proc/sys/vm/drop_caches > /dev/null
echo "OK"

こちらもターミナルから実行し、
free -h コマンドにて無事実行を確認できました。
(sudo bash memory_release.sh)→ "OK"と表示される

そしてcronにこのシェルスクリプトの実行を指定したのですが、
cronで実行した時のみ上記のメモリ開放のコマンドが動きません…

(cronに設定した内容)

          • /usr/bin/bash /home/ubuntu/memory_release.sh >/tmp/memory_release.log 2>&1

実行後にcat memory_release.log にて表示された内容
: Permission denied_release.sh: line 2: /dev/null
OK

ls -l /dev/nullはこのように表示されます
crw-rw-rw- 1 root root 1, 3 Jan 24 18:16 /dev/null

「permission Denied /dev/null」
というキーワードにて検索を試みたのですが、
どうにも解決方法がわからずこちらに質問させていただきました。

どなたかおわかりの方がいらっしゃいましたら、
ご教授いただきたくよろしくお願い致します。

コメントを投稿

0 コメント