標籤:div toc run ssi pretty wap 設定 line rman
一,/dev/shm 概念
- /dev/shm 是一個tmpfs檔案系統,臨時檔案系統,是基於記憶體的檔案系統,也就是說/dev/shm中的檔案是直接寫入記憶體的,而不佔用硬碟空間。
- 在Centos和Redhat下,/dev/shm目錄是一個連結,指向/run/shm目錄,在Ubuntu系統下tmpfs檔案系統對應的是/run/shm目錄,可以使用df命令查看),因為 /dev/shm/這個目錄不在硬碟上,而是在記憶體裡,它就所謂的tmpfs。
- 在Redhat/CentOS等linux發行版中預設大小為實體記憶體的一半。最大可達到 實體記憶體+SWAP的大小
- /dev/shm不是立即佔用記憶體,而是採用需要才佔用記憶體的方法。在上面的例子中,/dev/shm設定的值是20G,我們看到已用寫入了9.5G的資料,也就是佔用了9.5G的記憶體。
二,特點
1.動態檔案系統
2.tmpfs 檔案系統會完全駐留在記憶體 RAM 中,讀寫速度快
3.tmpfs 資料在重新啟動之後不會保留,例如重啟,重新載入,綁定等操作都會清空/dev/shm下的內容
三,/dev/shm 用途
tmpfs是基於記憶體的,速度是不用說的,硬碟和它沒法比。Oracle 中的Automatic Memory Management特性就使用了/dev/shm。另外如果在網站營運中好好利用tmpfs,將有意想不到的收穫。
四,/dev/shm 設定和修改
For temporary mounting-
mount -o remount,size=5G /dev/shm
For permanent mounting,paste the below given bolded line in /etc/fstab:
vi /etc/fstab**none /dev/shm tmpfs defaults,size=5G 0 0**
save and close the /etc/fstab file.
> # mount -o remount /dev/shm
& Verify the mounting.
# df -Th
五,問題解決:
有時會遇到/dev/shm 卸載不掉的情況
# umount /dev/shm umount: /dev/shm: device is busy.
用fuser處理
# fuser -km /dev/shm # umount /dev/shm # mount /dev/shm
fuser命令
-k:kill processes accessing the named file(殺死所有正在訪問指定檔案的進程 )
-m 表示指定檔案所在的檔案系統或者塊裝置(處於 mount 狀態)。
所有訪問該檔案系統的進程都被列出。
來自為知筆記(Wiz)
淺析/dev/shm