臨時想要做個 RAM Disk, 就去翻以前寫的文章, 發現以前的 Blog 寫的真的是很亂, 還是重新整理一下好了.
-
- 目前的作法如下:
- 首先在/dev/shm建個tmp文件夾,然後與實際/tmp綁定
- mkdir /dev/shm/tmp
- chmod 1777 /dev/shm/tmp
- mount --bind /dev/shm/tmp /tmp
-
- 方法2:
- mkdir /mnt/ramfs
- vi /etc/fstab
- none /mnt/ramfs tmpfs defaults 0 0
- mount /mnt/ramfs
- 這樣就可以用這個 ramfs 來放一些有的沒有的, 可 man mount, man fstab
-
- 方法3:
- mount -t tmpfs -o size=200m none /mnt/tmpfs
- 200m 是 200Mb 的意思, 詳情請看 man mount 裡的 tmpfs
-
- 方法4:
- 設定 /etc/default/tmpfs default shm 大小(系統會自動用此值去當硬碟)
- 設定 /etc/fstab: tmpfs /tmp tmpfs size=100m,mode=1777 0 0 設讓 RAM 掛 100Mb 在 /tmp
- 方法5:(我目前都用此方法)
- 直接設定 vim /etc/fstab 寫入下面那行
- tmpfs /tmp tmpfs size=100m,mode=1777 0 0
- # 設讓 RAM 掛 100Mb 在 /tmp
- 註:2022年 Ubuntu 預設這種設定會 mount 在 root 下,可以增加 UID來解決視窗都會跳出警告訊息的狀況
- tmpfs /tmp tmpfs size=100m,mode=1777,uid=1000 0 0
- 其它方法: 可參見下面連結, "有趣的 tmpfs" 中, 有提供很多更好用的方法
參考文件:
mkdir /dev/shm/tmp
chmod 1777 /dev/shm/tmp
mount --bind /dev/shm/tmp /tmp
寫入 /etc/rc.local 後,凡是有開啟 XWin 為預設的 Server,會出現以下錯誤而無法順利開機 XWin。
Aug 20 20:30:42 test gdm[3029]: gdm_slave_xioerror_handler: Fatal X error - Restarting :0
Aug 20 20:30:52 test gdm[3279]: gdm_slave_xioerror_handler: Fatal X error - Restarting :0
Aug 20 20:31:01 test gdm[3414]: gdm_slave_xioerror_handler: Fatal X error - Restarting :0
Aug 20 20:31:01 test gdm[2772]: deal_with_x_crashes: Running the XKeepsCrashing script
如果將 /etc/rc.local 新增的指令拿掉,重開後系統又會恢復正常。
OS 為 Red Hat AS 4,測試手邊的三台機器,都會發生這樣的情形,不知道前輩您是否有碰過呢?
我更新這篇文章了, 看起來會造成誤解...
使用方法1的狀況, 這三個步驟只有第一次 initial 的時後要做,
所以寫進 rc.local 應該只有這行 "mount --bind /dev/shm/tmp /tmp".
然後因為我沒有 Redhat AS 4, 所以沒辦法測試, 只能大概猜測一下狀況 Orz..