您好,登錄后才能下訂單哦!
Linux怎樣查看和修改SWAP大小,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
1 查看swap 空間大小(總計):
total used free shared buffers cached Mem: 377 180 197 0 19 110 -/+ buffers/cache: 50 327 Swap: 572 0 572
2 查看swap 空間(file(s)/partition(s)):
包括 文件 和 分區 的詳細信息
# swapon -s
等價于
# cat /proc/swaps
3 添加交換空間
兩種選擇:添加一個交換分區或添加一個交換文件。推薦你添加一個交換分區;不過,若你沒有多少空閑空間可用,則添加交換文件。
3.1 添加一個交換分區
步驟如下:
a 使用fdisk來創建交換分區(假設 /dev/sdb2 是創建的交換分區)
b 使用 mkswap 命令來設置交換分區:
# mkswap /dev/sdb2
c 啟用交換分區:
# swapon /dev/sdb2
d 寫入/etc/fstab,以便在引導時啟用:
/dev/sdb2 swap swap defaults 0 0
3.2 添加一個交換文件
a 創建大小為512M的交換文件:
# dd if=/dev/zero of=/swapfile1 bs=1024k count=512
b 使用 mkswap 命令來設置交換文件:
# mkswap /swapfile1
c 啟用交換分區:
# swapon /swapfile1
d 寫入/etc/fstab,以便在引導時啟用:
/swapfile1 swap swap defaults 0 0
新添了交換分區并啟用它之后,請查看 cat /proc/swaps 或 free 命令的輸出來確保交換分區已被啟用了。
4 刪除交換空間:
a 禁用交換分區:
# swapoff /dev/sdb2
b 從 /etc/fstab 中刪除項目;
c 使用fdisk或yast工具刪除分區。
刪除交換文件步驟同上。
——————————————————————————–
# free -m
total used free shared buffers cached Mem: 377 180 197 0 19 110 -/+ buffers/cache: 50 327 Swap: 572 0 572
Mem 行顯示了從系統角度看來內存使用的情況, total是系統可用的內存大小, 數量上等于系統物理內存減去內核保留的內存.
buffers和cached是系統用做緩沖的內存. buffers與某個塊設備關聯, 包含了文件系統元數據, 并且跟蹤了塊的變化. cache只包含了文件本身.
-/+ buffers/cache 行則從用戶角度顯示內存信息, 可用內存從數量上等于mem行used列值減去buffers和cached內存的大小.
因為buffers和cached是操作系統為加快系統運行而設置的, 當用戶需要時, 可以只接為用戶使用.
top 顯示系統運行時的各進程動態、實時的狀態(cpu、內存)
top 中有3個列 VIRT RES SHR, 標示了進程使用的內存情況.
VIRT 標識這個進程可以使用的內存總大小, 包括這個進程真實使用的內存, 映射過的文件, 和別的進程共享的內存等.
RES 標識這個這個進程真實占用內存的大小.
SHR 標識可以和別的進程共享的內存和庫大小.
vmstat 顯示內存的使用情況
這些命令都是從/proc/meminfo中讀取內存信息.
關于/proc/meminfo中各行的含意, 在內核源代碼的Documentation/filesystems/proc.txt文件中有敘述
系統的真實內存大小可以用 dmesg | grep [mM][eE][mM]看到
/proc/pid/status顯示一個進程的詳細狀態 \# cat /proc/5346/status Name: bash State: S (sleeping) SleepAVG: 98% Tgid: 5346 Pid: 5346 PPid: 5343 TracerPid: 0 Uid: 1000 1000 1000 1000 Gid: 104 104 104 104 FDSize: 256 Groups: 6 24 29 44 104 113 1000 1001 VmPeak: 6528 kB VmSize: 6528 kB VmLck: 0 kB VmHWM: 1976 kB VmRSS: 1976 kB VmData: 752 kB VmStk: 84 kB VmExe: 644 kB VmLib: 1788 kB VmPTE: 16 kB Threads: 1 SigQ: 0/4294967295 SigPnd: 0000000000000000 ShdPnd: 0000000000000000 SigBlk: 0000000000000000 SigIgn: 0000000000384004 SigCgt: 000000004b813efb CapInh: 0000000000000000 CapPrm: 0000000000000000 CapEff: 0000000000000000
VmSize即為該進程內存總大小, 和top輸出中的VIRT一致.
Linux是一種免費使用和自由傳播的類UNIX操作系統,是一個基于POSIX的多用戶、多任務、支持多線程和多CPU的操作系統,使用Linux能運行主要的Unix工具軟件、應用程序和網絡協議。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。