Openwrt /tmp used 46% where is the files?
Table of Contents
2 background
The AP's cached memory cannot be dropped.
And I noticed the /tmp occupation reached 47%, 28.3M has been used.
root@xx:/tmp# df -h | grep \/tmp tmpfs 60.4M 28.3M 32.2M 47% /tmp
But there is no big file larger than 1MB exist in /tmp, how could it be?
3 analysis
3.1 use `lsof' for analysis
You should use
# lsof /tmp
to see currently opened file. If you delete a file, while a software still have a lock on it,
you won't see it anymore, but it will still have hd space assigned to it.
When you check the LSOF result, the `deleted' give you an idea of which file now only exist in
memory. Stopping the relevant process should free the space.
3.2 do check
root@xx:~# ./lsof /tmp/ COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME a_manage 1815 root 3u REG 0,12 513310 4493690 /tmp/log/a_manage.log (deleted) a_manage 1815 root 6u REG 0,12 396153 12136888 /tmp/log/a_manage.log (deleted) a_manage 1815 root 8u REG 0,12 90211 12386852 /tmp/log/a_manage.log (deleted) a_manage 1815 root 10u REG 0,12 90581 12658636 /tmp/log/a_manage.log (deleted) a_manage 1815 root 11u REG 0,12 50707 12929050 /tmp/log/a_manage.log (deleted) a_manage 1815 root 12u REG 0,12 19560 13077672 /tmp/log/a_manage.log (deleted) a_manage 1815 root 13u REG 0,12 30767 13139143 /tmp/log/a_manage.log (deleted) a_manage 1815 root 14u REG 0,12 19560 13228409 /tmp/log/a_manage.log (deleted) a_manage 1815 root 15u REG 0,12 31146 13286211 /tmp/log/a_manage.log (deleted) a_manage 1815 root 16u REG 0,12 19560 13377152 /tmp/log/a_manage.log (deleted) a_manage 1815 root 17u REG 0,12 31147 13436140 /tmp/log/a_manage.log (deleted) a_manage 1815 root 18u REG 0,12 9166 13531208 /tmp/log/a_manage.log (deleted) a_manage 1815 root 19u REG 0,12 30254 13565102 /tmp/log/a_manage.log (deleted) a_manage 1815 root 20u REG 0,12 10735 13667063 /tmp/log/a_manage.log (deleted) a_manage 1815 root 21u REG 0,12 10869 13701469 /tmp/log/a_manage.log (deleted) a_manage 1815 root 22u REG 0,12 9169 13736800 /tmp/log/a_manage.log (deleted) a_manage 1815 root 23u REG 0,12 24591 13774431 /tmp/log/a_manage.log wxm 3949 root 3w REG 0,12 23098781 4047 /tmp/log/wxm.log (deleted)
When I kill the a_manage, and wxm, I can drop the cached memory now.
So, the logs operation of wxm and a_manage should be verified to fix this issue.