swap分區擴容

swap分區是在內存不夠用時才使用的,swap分區不夠時能夠擴容linux


方法1:使用獨立的分區來實現vim


1. lsblk 查看是否有可用的磁盤分區,使用fdsik劃分磁盤分區centos


2. fdisk /dev/sdc 建立後的分區爲/dev/sdc2,注意使用t選項修改分區id爲82async

3. 建立swap文件系統ide

   mkswap /dev/sdc2 -L swap_sdc2測試

4. vim /etc/fstabui

   :r!blkid /dev/sdc2       #讀取命令輸出至文件,再次進行編輯centos7

   UUID="6f50983b-1452-41fc-8efd-2151e4613959" swap                  swap     defaults       0 0 spa

5. swapon -a  讓編輯後的/etc/fstab中的swap 分區生效內存

   發散思惟: 其實執行mount -a 是否生效不仍是看選項是否有auto嗎,man 5 fstab中找到的(學會使用man 5 配置文件 來查看配置信息,你值得擁有!)

   defaults

                     use default options: rw, suid, dev, exec, auto, nouser, and async.


   noauto do not mount when "mount -a" is given (e.g., at boot time)


   提取關鍵信息:defaults: rw, suid, dev, exec, auto, nouser, and async. 

   noauto: do not mount when "mount -a" is given (e.g., at boot time)   這句話取反你就知道啥意思了!


6. 從新讀取掛載信息後,使用swapon -s 查看swap文件系統的信息

   [root@centos7 ~]#swapon -s

Filename Type Size Used Priority

/dev/sda3                              partition 2047996 2800 -1

/dev/sdc2                              partition 10484732 0 -2


注意一下還有優先級的,數值越大優先級越高

發散思惟: 在使用是swap分區的時候要使用外磁道來使用(即磁道號較小的,最外圈的是0磁道),由於這樣數據的訪問效率會比內圈磁道高,具體的緣由在此再也不贅述。

7. 查看swap分區的狀態也能夠使用 lsblk 

   [root@centos7 ~]#lsblk 

NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT

sda      8:0    0  100G  0 disk 

├─sda1   8:1    0 1000M  0 part /boot

├─sda2   8:2    0  9.8G  0 part /

├─sda3   8:3    0    2G  0 part [SWAP]        #原來的swap分區大小

├─sda4   8:4    0    1K  0 part 

└─sda5   8:5    0 48.8G  0 part /data

sdb      8:16   0   20G  0 disk 

├─sdb1   8:17   0    2G  0 part 

├─sdb2   8:18   0    2G  0 part 

├─sdb3   8:19   0    3G  0 part 

├─sdb4   8:20   0    1K  0 part 

└─sdb5   8:21   0    2G  0 part 

sdc      8:32   0   20G  0 disk 

├─sdc1   8:33   0   10G  0 part 

└─sdc2   8:34   0   10G  0 part [SWAP]      #新增長的swap分區的大小

sr0     11:0    1  3.7G  0 rom  /run/media/root/CentOS_6.9_Final

sr1     11:1    1  8.1G  0 rom  /run/media/root/CentOS 7 x86_64

8. 禁用新增的swap分

   # swapoff  /dev/sdc1


總結記憶:  swapon -a  生效/etc/fstab 添加swap分區

          fdisk分區的時候注意使用t 修改磁盤的id 爲82

          swpaon -s 查看swap分區信息

          swapoff /dev/sdc1 禁用swap分區


方法2: 文件模擬分區建立swap文件系統


1. dd if=dev/zero of=/data/swap_file bs=1G count=5   建立5G空間的大小的文件

  發散思惟: dd if=/dev/zero of=/dev/sdc1 bs=512 count=1  能夠幹掉MBR的信息,你能夠這樣刪除分區信息,也能夠使用fdisk /dev/sdc 來使用d選項來刪除

           固然也能夠不刪除bootloader的信息(446bytes),直接將64bytes的分區表信息填零,如:

           dd if=/dev/zero of=/dev/sdc1 bs=1 count=64 seek=446  直接填充64bytes至 分區表,跳過目標 /dev/sdc1的前446bytes

           注意不能使用 dd if=/dev/zero of=/dev/sdc1 bs=64 count=1 seek=446

           hexdump -C /dev/sda -n 512 -v  顯示sda分區的前512字節信息

           葵花寶典的套路: 記住玩以前先要備份MBR啊!哈哈哈,dd if=/dev/sdc1 count=/data/mbr.bak bs=512 count=1 (默認單位是字節)

           恢復的時候 能夠直接 dd if=/dev/mbr.bak of=/dev/sdc1 不用給出bs和count了,由於只有512字節的備份信息,是吧。

           也能夠使用dd if=/dev/zero of=/dev/null bs=1G count=2 這方法能夠測試磁盤的讀寫速度,有興趣的能夠試試

2. mkswap -L swap_file /data/swap_file  建立swap文件系統

3. 爲了永久生效,編輯配置文件/etc/fstab,永久生效配置修改配置文件彷佛是linux的鐵律,大家以爲呢?由於使用的是文件模擬的分區,因此不要使用UUID喲!

   vim /etc/fstab

   /data/file2   swap                  swap     defaults       0 0  

4.swapon -a  讀取/etc/fstab中的swap分區信息

5.swapon -s  查看swap分區的信息,順便看看本身剛剛建立的swap分區是否生效

6.swapoff /data/swap_file 不想玩了,能夠直接禁用

相關文章
相關標籤/搜索