Linux交換分區簡介與實驗場景及過程
想知道到Linux交換分區的真相么,想知道Linux交換分區中藏有的內在奧義么,只有我來給大家全面講解介紹Linux交換分區.有時,有必要在操作系統安裝完成之后添加更多的交換空間。
例如:把系統內存從64MB升級到128MB,但是原有的交換空間只有128MB。如果在系統中執行的是大量使用內存的操作或運行需要大量的內存的程序,把交換空間增加到256MB會更有利。 添加交換空間有兩中選擇:添加Linux交換分區或者是添加交換文件。在這里我們推薦添加一個Linux交換分區。
一、Linux交換分區簡介
Linux系統中的Linux交換分區是當物理內存(RAM)被充滿時,作為物理內存的緩存來使用。當系統需要更多的內存資源,而物理內存已經充滿,內存中不活躍的頁就會被移動到Linux交換分區上。Linux交換分區位于硬盤上,所以它的存取速度比物理內存要慢。
一般情況下,Linux交換分區的大小應當相當于計算機內存的兩倍,但不能超過2048MB(2GB)。
二、實驗場景
資源配置:主機:Virtual Server 2K5 R2內存:512M硬盤:hda 6Ghdb 1G操作系統:Fedora 2實驗要求:在第二塊硬盤中創建Linux交換分區,并添加到系統中。
實驗步驟:
1. 啟動文件系統,刪除當前的Linux交換分區。
2. 使用fdisk創建Linux交換分區。
3. 使用mkswap命令設置Linux交換分區。
4. 啟動(swapon)Linux交換分區。
5. 編輯/etc/fstab文件,使Linux交換分區在引導時啟用。
三、實驗過程
在實驗之前我們先檢查一下系統交換空間的配置情況,使用命令可以查看在硬盤上哪個分區作為Linux交換分區使用。Fdisk –l
得到的結果如下:
- [root@zheng root]#fdisk –l
- Disk /dev/had:8589 MB,858990124 bytes
- 16 heads,63 sectors/track,16644 cylinders
- Units = culinders of 1008 * 512 = 516096 bytes
- Device BootStart End Blocks Id System
- /dev/hda1*1 203 102280+ 83 Linux
- /dev/hda2 204 14564 7237944 83 Linux
- /dev/hda3 14565 16644 1048320 82 Linux swap
- [root@zheng root]#
其中/dev/hda3是正在使用的Linux交換分區,為了添加新的Linux交換分區,需要將現用的Linux交換分區刪除掉,然后再添加新的Linux交換分區。
1.啟動文件系統,刪除當前的Linux交換分區
在Fedora 2操作系統中,可以直接使用命令刪除Linux交換分區。由我們提前知道的信息,可以做如下的操作:用命令swapoff卸載Linux交換分區。Swapoff /dev/hda3
2. 使用fdisk命令創建Linux交換分區
使用fdisk命令創建一個是當前物理內存總容量2倍的Linux交換分區,使用如下的命令:
- [root@zheng root]#fdisk /dev/hdb
- Command ( m for help):n//創建新的分區
- Command action
- E extend
- P primary partition(1-4)
- P //分區類型為主分區
- Partition number(1-4):1
- First cylinder (1-2080,default 1):
- Using default value 1
- Last cylinder or + size or +sizeM or +sizeK(1-2080,default 2080):
- Using default value 2080
- Command(m for help):t //更改分區格式
- Selected partition 1
- Hex code (type L to list codes):82 //Linux swap 的16進制編碼為82
- Command(m for help):p
- Disk /dev/hab:1073 MB,1073479680 bytes
- 16 heads,63 sectors/track,2080 cylinders
- Units = culinders of 1008 * 512 = 516096 bytes
- Device BootStart End Blocks Id System
- /dev/hdb1*1 20801048288+82 Linux swap
- Command(m for help):w//保存分區的信息
- Command(m for help):q
通過使用fdisk命令,我們已經創建了一個Linux交換分區格式的分區/dev/hdb1。
3. 使用mkswap命令設置Linux交換分區
命令為:[root@zheng root]#mkswap /dev/hdb1 //將分區格式化為Linux交換分區格式Setting up swapspace version 1, size = 1073442 kB
4. 啟動(swapon)Linux交換分區
[root@zheng root]#swapon /dev/hdb1//啟用Linux交換分區
5. 編輯/etc/fstab文件,使Linux交換分區在引導時啟用
編輯后的fstab文件關于Linux交換分區的內容為:/deb/hdb1swapswapdefaults 0 0 這樣,我們已經創建了一個新的Linux交換分區。重新啟動系統,驗證Linux交換分區添加是否正確。
在系統重新啟動時會顯示如下的信息:
- Activiting swap partition :[OK]//激活Linux交換分區
- Enabling swap space : [OK]//創建交換空間
當驗證沒有錯誤之后,可以刪除原有的Linux交換分區/dev/hda3。***,我們的到的分區信息如下:
- [root@zheng root]#fdisk –l
- Disk /dev/had:8589 MB,858990124 bytes
- 16 heads,63 sectors/track,16644 cylinders
- Units = culinders of 1008 * 512 = 516096 bytes
- Device BootStart End Blocks Id System
- /dev/hda1* 1 203 102280+ 83 Linux
- /dev/hda2 204145647237944 83 Linux
- Disk /dev/hab:1073 MB,1073479680 bytes
- 16 heads,63 sectors/track,2080 cylinders
- Units = culinders of 1008 * 512 = 516096 bytes
- Device BootStart End Blocks Id System
- /dev/hdb1* 1 20801048288+82 Linux swap
該信息表明,Linux交換分區添加已經成功。說明:參考資料中關于必須使用救援模式啟動在Fedora 2系統中沒有要求,并且使用救援模式也不能添加Linux交換分區,這一點與參考資料中的表述完全不同。
【編輯推薦】