close

情況是這樣的.. 有一台老舊機器 . 前一陣子reboot 之後過沒多久出現 /tmp filesystem is full 的訊息..

df 一看.

Filesystem                1K-blocks          Used      Avail Capacity  Mounted on
/dev/da0s1a                  65492960    19219560   41033964    32%    /
devfs                               1           1          0   100%    /dev
/dev/md0                            19566 17972 30  100%      /tmp 

為啥會冒出md0 ???

md 通常是 ramdisk , 有mdconfig 或是 tmpmfs , tmpfs 這幾個指令生成的./etc/rc.*也沒有看到設定跟這些有關 ,

然後找到 /etc/defaults/rc.conf 有相關的東西 , 而且 size 也符合. 應該是它了.

tmpmfs="AUTO"           # Set to YES to always create an mfs /tmp, NO to never
tmpsize="20m"           # Size of mfs /tmp if created
tmpmfs_flags="-S"       # Extra mdmfs options for the mfs /tmp

但這是 defaults 的設定 , 沒事應該不會跑起來.. 應該找出原因 , 而不是改 defaults/rc.conf

先umount  /tmp , 看一下 localdisk 裡面的 /tmp 是發生什麼事了.

進去 ls -l 就先卡了10秒. 看起來是裡面檔案太多造成的 ? 

再進一步去看 , 目錄很多.. 算了一下,, 32768個 .....   !!?

好像中了什麼神秘數字...

 

UFS的 filesystem 一個目錄底下一層最多32768個子目錄.. 所以/tmp 無法再建新目錄.
系統開機時就自動開了tmpmfs 掛起來了...

真相大白啊.

 

arrow
arrow
    全站熱搜

    mool 發表在 痞客邦 留言(0) 人氣()