︿
Top

1、前言

若 CentOS 主機空間容量或 SWAP 不足時,可以事後增加硬碟進行掛載後使用,以達到空間利用的彈性,接下來將進行此二項實作,分別將新增空間 1GB 進行「分割、格式化、掛載」等程序後進行空間使用。


文章目錄

1、前言
2、新增掛載點
3、增加 SWAP 空間



2、新增掛載點

首先使用 「df -h」 指令查看目前檔案系統的掛載情況,接著使用 「fdisk -l」 指令查看新加入的硬碟資訊,確定目前的硬碟及新加入硬碟的編號,本例為 sda (10 GB 目前檔案系統) 及 sdb (1 GB 新加入空間)。
df -h       //查看目前檔案系統的掛載情況
  Filesystem                       Size   Used   Avail   Use%   Mounted on
  /dev/mapper/vg_centos6-lv_root   7.5G   2.1G    5.0G    30%   /
  tmpfs                            504M   420K    504M     1%   /dev/shm
  /dev/sda1                        485M    29M    431M     7%   /boot
fdisk -l    //查看硬碟資訊
  Disk /dev/sda: 10.7 GB, 10737418240 bytes
  ...略...
  Disk /dev/sdb: 1073 MB, 1073741824 bytes
  ...略...

確定硬碟代號後即可利用 fdisk 指令來進行新增分割區及掛載點 (Mount Point) 的動作,此實作中掛載點名稱為 /backup 分配空間為 1 GB,下列為將硬碟進行分割所使用到的相關資訊:

fdisk /dev/sdb:進入 fdisk 互動模式
  • p:列出目前硬碟使用狀況。
  • n:新增分割區。
  • First cylinder: 分割區開始磁柱數 (按 Enter 即則預設值開始)。
  • Last cylinder: 分割區結束磁柱數 (可輸入人類方便辨識的單位例如 +1GB)。
  • w:將變更寫入硬碟內。
fdisk /dev/sdb                      //進入 fdisk 互動模式
  Command (m for help): n             //輸入 n 新增掛載點
  Command action
    e   extended
    p   primary partition (1-4) p     //輸入 p 建立主要分割區
  Partition number (1-4): 1           //使用第 1 個主要分割區
  First cylinder (1-1011, default 1): //掛載點開始磁柱數 (按 Enter 即則預設值開始)
  Using default value 1
  Last cylinder, +cylinders or +size{K,M,G} (1-1011, default 1011):  //掛載點結束磁柱數 (可輸入人類方便辨識的單位例如 +1GB)
  Using default value 1011
  Command (m for help): p             //輸入 p 列出目前硬碟使用狀況 (確定剛才新增空間的代號,此例為 sda1)
  Disk /dev/sdb: 1073 MB, 1073741824 bytes
  34 heads, 61 sectors/track, 1011 cylinders
  Units = cylinders of 2074 * 512 = 1061888 bytes
  Sector size (logical/physical): 512 bytes / 512 bytes
  I/O size (minimum/optimal): 512 bytes / 512 bytes
  Disk identifier: 0xebcc9d05
   Device Boot   Start   End   Blocks   Id  System
  /dev/sdb1       1     1011   1048376+ 83  Linux
  Command (m for help): w             //將變更寫入硬碟內
  The partition table has been altered!
  Calling ioctl() to re-read partition table.
  Syncing disks.

新增掛載點完成後 CentOS 6 會自動辨識到分割區,若是舊版 CentOS 5.x 則需要手動輸入 「partprobe」 指令套用生效讓系統知道新增此一分割區:
cat /proc/partitions         //查看系統分割區資訊
  major minor #blocks  name
    8        0   10485760 sda
    8        1     512000 sda1
    8        2    9972736 sda2
  253        0    7905280 dm-0
  253        1    2064384 dm-1
    8       16    1048576 sdb
    8       17    1048376 sdb1   //系統正確辨識到新增分割區

系統可辨別新增的分割區後再來就是對該分割區進行格式化,執行「mkfs.ext4」 指令對新增的分割區進行格式化硬碟標籤為「backup」:
mkfs.ext4 -L backup /dev/sdb1   //格式化
  mke2fs 1.41.12 (17-May-2010)
  Filesystem label=backup
  OS type: Linux
  Block size=4096 (log=2)
  ...略...
blkid          //查看 Block ID 資訊
  /dev/sda1: UUID="a97f2169-c9d0-4877-85c3-0f2b208499b9" TYPE="ext4"
  /dev/sda2: UUID="v7c3jj-66BU-aZun-MvBB-iqI1-hm4h-zqQBhq" TYPE="LVM2_member"
  /dev/mapper/vg_centos6-lv_root: UUID="370b1658-b489-45ae-bf3f-1842708f6eb1" TYPE="ext4"
  /dev/mapper/vg_centos6-lv_swap: UUID="7a40333d-92be-4d75-89c1-340a57072a75" TYPE="swap"
  /dev/sdb1: LABEL="backup" UUID="35a64a6a-f73f-4cfe-88ef-5f72bfbccae3" TYPE="ext4"
vi /etc/fstab  //修改掛載點設定檔 (新增如下一行,擇一即可)
  /dev/sdb1     /backup   ext4  defaults   1 2  (方式一 掛載點採硬碟裝置名稱)
  LABEL=backup  /backup   ext4  defaults   1 2  (方式二 掛載點採硬碟標籤)

最後則是建立資料夾以及進行掛載的動作,掛載完成後便可開始存取資料了!!
mkdir /backup  //建立 backup 資料夾
mount -a       //套用 (重新讀取 /etc/fstab)
df -h
  Filesystem                      Size   Used   Avail   Use%   Mounted on
  /dev/mapper/vg_centos6-lv_root  7.5G   2.1G    5.0G    30%   /
  tmpfs                           504M   420K    504M     1%   /dev/shm
  /dev/sda1                       485M    29M    431M     7%   /boot
  /dev/sdb1                      1008M    18M    940M     2%   /backup   //新增的掛載點




3、增加 SWAP 空間

同樣的方式我們可以為系統增加 SWAP 空間,使用「fdisk -l」指令查看新加入的硬碟資訊,確定目前的硬碟及新加入硬碟的編號本例為 sdc (1 GB 新加入),確定硬碟代號後即可利用 fdisk 指令來進行新增分割區及掛載點的動作,此例為 1gswap 分配空間為 1 GB,與先前不同的是必須修改硬碟的格式 ID 為 「82」 也就是 SWAP:
fdisk /dev/sdc   //進入 fdisk 互動模式,互動操作如下
  n > p > 1 > enter > enter > t > 82
  Command (m for help): p
  Disk /dev/sdb: 1073 MB, 1073741824 bytes
  34 heads, 61 sectors/track, 1011 cylinders
  Units = cylinders of 2074 * 512 = 1061888 bytes
  Sector size (logical/physical): 512 bytes / 512 bytes
  I/O size (minimum/optimal): 512 bytes / 512 bytes
  Disk identifier: 0xebcc9d05
    Device Boot  Start  End   Blocks   Id  System
  /dev/sdb1       1    1011  1048376+  82  Linux swap / Solaris
  Command (m for help): w
  The partition table has been altered!
  Calling ioctl() to re-read partition table.
  Syncing disks.

查看系統分割區資訊以及格式化為 SWAP 格式,並查看 Block ID 資訊以及修改 /etc/fstab 設定檔:
cat /proc/partitions | grep sdc
     8       32    1048576 sdc
     8       33    1048376 sdc1
mkswap -L 1gswap /dev/sdc1
   Setting up swapspace version 1, size = 1048372 KiB
   LABEL=1gswap, UUID=bae05b65-de40-453c-ac08-e69ad6208623
blkid |grep sdc
   /dev/sdc1: LABEL="1gswap" UUID="bae05b65-de40-453c-ac08-e69ad6208623" TYPE="swap"
vi /etc/fstab
   LABEL=1gswap   swap  swap  defaults  0 0   //新增此行

最後則是將新建立的 SWAP 空間利用指令 「swapon -a」 加入至目前系統中,之後您可利用 「swapoff -a」 指令來關閉系統中所有 SWAP 使用空間。
swapon -a    //套用 (重新讀取 /etc/fstab)
swapon -s    //查看 SWAP 使用資訊
   Filename    Type       Size     Used  Priority
   /dev/dm-1   partition  2064376   0    -1   //原本 SWAP 空間 (2GB)
   /dev/sdc1   partition  1048368   0    -2   //新加入的 SWAP 空間 (1GB)
# free
                        total      used  free   shared  buffers  cached
  Mem:       1031320   507648    523672     0     4368   324944
  -/+ buffers/cache:   178336    852984
  Swap:      3112744        0   3112744     //目前系統中有 3GB SWAP 空間
文章標籤: