Ubuntu Desktop 22.04の/tmpの削除の設定を確認します。
記事の目次
systemdへの登録有無を確認する!
systemdに/tmp削除のサービスが登録されていることを確認します。
# systemctl list-unit-files | grep systemd-tmpfiles | sort systemd-tmpfiles-clean.service static - systemd-tmpfiles-clean.timer static - systemd-tmpfiles-setup-dev.service static - systemd-tmpfiles-setup.service static -
サービスの起動状態を確認する!
/tmpの削除に関しては、「systemd-tmpfiles-clean.service」と「systemd-tmpfiles-clean.timer」が担っています。
# systemctl status systemd-tmpfiles-clean.service ○ systemd-tmpfiles-clean.service - Cleanup of Temporary Directories Loaded: loaded (/lib/systemd/system/systemd-tmpfiles-clean.service; static) Active: inactive (dead) TriggeredBy: ● systemd-tmpfiles-clean.timer Docs: man:tmpfiles.d(5) man:systemd-tmpfiles(8) # systemctl status systemd-tmpfiles-clean.timer ● systemd-tmpfiles-clean.timer - Daily Cleanup of Temporary Directories Loaded: loaded (/lib/systemd/system/systemd-tmpfiles-clean.timer; static) Active: active (waiting) since Sun 2023-05-07 23:07:57 JST; 8h ago Trigger: Mon 2023-05-08 07:32:48 JST; 12min left Triggers: ● systemd-tmpfiles-clean.service Docs: man:tmpfiles.d(5) man:systemd-tmpfiles(8) 5月 07 23:07:57 vmsubu01.loc.lab4ict.com systemd[1]: Started Daily Cleanup of Temporary Directories. # systemctl status systemd-tmpfiles-setup-dev.service ● systemd-tmpfiles-setup-dev.service - Create Static Device Nodes in /dev Loaded: loaded (/lib/systemd/system/systemd-tmpfiles-setup-dev.service; static) Active: active (exited) since Sun 2023-05-07 23:07:55 JST; 8h ago Docs: man:tmpfiles.d(5) man:systemd-tmpfiles(8) Process: 258 ExecStart=systemd-tmpfiles --prefix=/dev --create --boot (code=exited, status=0/SUCCESS) Main PID: 258 (code=exited, status=0/SUCCESS) CPU: 6ms 5月 07 23:07:55 vmsubu01.loc.lab4ict.com systemd[1]: Starting Create Static Device Nodes in /dev... 5月 07 23:07:55 vmsubu01.loc.lab4ict.com systemd[1]: Finished Create Static Device Nodes in /dev. # systemctl status systemd-tmpfiles-setup.service ● systemd-tmpfiles-setup.service - Create Volatile Files and Directories Loaded: loaded (/lib/systemd/system/systemd-tmpfiles-setup.service; static) Active: active (exited) since Sun 2023-05-07 23:07:56 JST; 8h ago Docs: man:tmpfiles.d(5) man:systemd-tmpfiles(8) Process: 420 ExecStart=systemd-tmpfiles --create --remove --boot --exclude-prefix=/dev (code=exited, status=0/SUCCE> Main PID: 420 (code=exited, status=0/SUCCESS) CPU: 12ms 5月 07 23:07:56 vmsubu01.loc.lab4ict.com systemd[1]: Starting Create Volatile Files and Directories... 5月 07 23:07:56 vmsubu01.loc.lab4ict.com systemd[1]: Finished Create Volatile Files and Directories.
serviceへの登録内容を確認する!
「systemd-tmpfiles --clean」を実行していることが分かります。
# cat /usr/lib/systemd/system/systemd-tmpfiles-clean.service # SPDX-License-Identifier: LGPL-2.1-or-later # # This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # (at your option) any later version. [Unit] Description=Cleanup of Temporary Directories Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8) DefaultDependencies=no Conflicts=shutdown.target After=local-fs.target time-set.target Before=shutdown.target [Service] Type=oneshot ExecStart=systemd-tmpfiles --clean SuccessExitStatus=DATAERR IOSchedulingClass=idle
起動タイミングを確認する!
起動タイミングは、ブート後15分とその後1日おきになります。
# cat /usr/lib/systemd/system/systemd-tmpfiles-clean.timer # SPDX-License-Identifier: LGPL-2.1-or-later # # This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # (at your option) any later version. [Unit] Description=Daily Cleanup of Temporary Directories Documentation=man:tmpfiles.d(5) man:systemd-tmpfiles(8) ConditionPathExists=!/etc/initrd-release [Timer] OnBootSec=15min OnUnitActiveSec=1d
削除の設定を確認する!
# cat /usr/lib/tmpfiles.d/tmp.conf # This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # (at your option) any later version. # See tmpfiles.d(5) for details # Clear tmp directories separately, to make them easier to override D /tmp 1777 root root - #q /var/tmp 1777 root root 30d
/tmpの状態を確認する!
/tmpを確認すると、1日以内に作成されたファイルしか存在していないことが分かります。
# date 2023年 5月 8日 月曜日 07:23:45 JST root@vmsubu01:~# ls -l /tmp total 48 drwx------ 3 root root 4096 5月 7 23:08 snap-private-tmp drwx------ 3 root root 4096 5月 7 23:08 systemd-private-06100f338c1c4d1b931c3ffb1bf1092c-colord.service-sRYkLi drwx------ 3 root root 4096 5月 7 23:07 systemd-private-06100f338c1c4d1b931c3ffb1bf1092c-ModemManager.service-5i2vyN drwx------ 3 root root 4096 5月 7 23:07 systemd-private-06100f338c1c4d1b931c3ffb1bf1092c-power-profiles-daemon.service-hiN4a3 drwx------ 3 root root 4096 5月 7 23:07 systemd-private-06100f338c1c4d1b931c3ffb1bf1092c-switcheroo-control.service-0BcbmK drwx------ 3 root root 4096 5月 7 23:07 systemd-private-06100f338c1c4d1b931c3ffb1bf1092c-systemd-logind.service-QAlYIc drwx------ 3 root root 4096 5月 7 23:07 systemd-private-06100f338c1c4d1b931c3ffb1bf1092c-systemd-oomd.service-JPoa4o drwx------ 3 root root 4096 5月 7 23:07 systemd-private-06100f338c1c4d1b931c3ffb1bf1092c-systemd-resolved.service-NGcqFf drwx------ 3 root root 4096 5月 7 23:07 systemd-private-06100f338c1c4d1b931c3ffb1bf1092c-systemd-timesyncd.service-0lDJ1B drwx------ 3 root root 4096 5月 7 23:08 systemd-private-06100f338c1c4d1b931c3ffb1bf1092c-upower.service-YziVfF drwx------ 2 usradmin usradmin 4096 5月 7 23:08 tracker-extract-3-files.1000 drwxrwxrwt 2 root root 4096 5月 7 23:07 VMwareDnD
tmp.confの設定方法を確認する!
manコマンドで、「tmp.conf」の設定方法を確認できます。様々なタイプの一時ファイルの作成と削除を、「tmp.conf」の設定で行うことができます。
# man tmpfiles.d
おわりに
/tmpの配下のファイルは、systemdで管理されたサービスにより自動で削除されていきます。
関連記事
関連書籍(Amazon)