ここにあるいくつかの投稿に基づいて、再起動と終了時に一時コンテンツを含むフォルダを整理する簡単なスクリプトを実行してみました。
指示と追加情報に従って、次のスクリプトを作成しました。
/etc/init.d/cleantmp
#!/bin/sh
### BEGIN INIT INFO
# Provides: cleantmp
# Required-Start:
# Required-Stop: $local_fs
# Default-Start:
# Default-Stop: 0 1 6
# Short-Description: clean temporary folders
# Description:
### END INIT INFO
PATH=/sbin:/usr/sbin:/bin:/usr/bin
echo "Clean up temporary folders"
rm -rf /home/user/tmp/*
それから実行権限を与えました。
$ sudo chmod +x /etc/init.d/cleantmp
$ ls -l /etc/init.d/cleantmp
-rwxr-xr-x 1 root root 329 Dec 19 12:50 /etc/init.d/cleantmp
次にrcを更新します。
$ sudo update-rc.d cleantmp defaults
$ ls -l /etc/rc?.d/*cleantmp
lrwxrwxrwx 1 root root 18 Dec 19 13:12 /etc/rc0.d/K01cleantmp -> ../init.d/cleantmp
lrwxrwxrwx 1 root root 18 Dec 19 13:12 /etc/rc1.d/K01cleantmp -> ../init.d/cleantmp
lrwxrwxrwx 1 root root 18 Dec 19 13:12 /etc/rc6.d/K01cleantmp -> ../init.d/cleantmp
今まではそんなに良くなった。ただし、シャットダウン、開始、または再起動後も一時ファイルはそのまま残ります。sudo
ファイルを使用してシンボリックリンクの1つを直接呼び出すと、正しく消えます。
ここに問題がありますか?
オペレーティングシステム: Linux 4.4.0-104-一般 #127-Ubuntu Ubuntu Gnome 16.04.3 LTS 64ビット
答え1
3つの主なエラーがあります。
rc
Ubuntu 16がシステムOSで、実際にその上にあったときにvan Smoorenburgスクリプトを作成しました。第二rc
van Smoorenburgが10年以上前に使用して以来、initシステムが使用されてきました。rc
Ubuntu Linuxで新しい作業をしている場合は、van Smoorenburgで始めないでください。- あなたはVan Smulenbergの
rc
脚本を書いた。真剣に、いいえinit-d-script
(5) マニュアルページの指示や例に従ってください。まず、rc
スクリプトはそのようなスクリプトを呼び出すさまざまなサブコマンドに正しく応答せず、Debian / Ubuntu標準関数ライブラリにアクセスすることもできません。 - LSBヘッダーが無効です。
原則としてUbuntu Linuxで10年以上になったことから始めてしまわないでください。
- 直接
clean-user-tmp.conf
ファイルを作成する/etc/tmpfiles.d
か /etc/systemd/system/clean-user-tmp.service
自分に次のようなことを書いてください[単位] ドキュメント=https://unix.stackexchange.com/a/411804/5132 説明=削除〜ユーザー/tmp/ [提供する] ユーザー=ユーザー ;避けるべき一般的な間違い: ;* または ~ が拡張されると予想 ;コマンドの絶対パス名を使用しないでください ; safe-rmがインストールされていない場合は、/ bin / rmを交換してください。 ExecStart=/usr/bin/rm -r -f -- ${HOME}/tmp/ [インストールする] WantedBy =マルチユーザー。ターゲット
有効にしてsystemctl は clean-user-tmp.service を有効にします。
または- 自分で作成し
/home/user/.local/share/systemd/user/clean-tmp.service
て有効にしてください。systemctl - ユーザーがclean-tmp.serviceを有効にします。
。