Linux

需要有關在 unix 上創建交換記憶體的資訊

  • May 6, 2017

我正在使用fallocate -l "$memory" "$swapfilename"命令創建交換文件。

我有一些疑問:

  1. 如果存在多個文件系統,則在哪個文件系統上創建交換文件?我們可以從外部指定從哪個文件系統獲取嗎?
  2. 我有兩個文件系統tmpfsrootfs,預設情況下交換文件是使用 rootfs 記憶體創建的;甚至 tmpfs 的大小也更大。什麼是 tmpfs?
  3. 在創建交換文件之前如何檢查是否有空間?
[root@rhev6 scripts]# df -h
Filesystem      Size  Used Avail Use% Mounted on
rootfs          3.1G  2.8G  123M  96% /
tmpfs           1.5G   76K  1.5G   1% /dev/shm

該文件在 指示的目錄中創建$swapfilename,預設為目前目錄。該命令fallocate不知道您要對文件做什麼;它只是創建它並分配請求的空間量。要將文件用作分頁區域,您需要在其上執行mkswap

tmpfs是用於(小)臨時文件的基於記憶體的文件系統。由於它是基於記憶體的,tmpfs文件系統中很少有大量空間。rootfs是另一個基於記憶體的文件系統,僅用於在安裝根目錄之前保存根目錄。在生產環境中,通常有一個基於磁碟的文件系統安裝在/.

您希望在基於磁碟的文件系統(例如ext4文件系統)上創建交換文件。

引用自:https://unix.stackexchange.com/questions/336217