4.5/4.6 磁盤格式化 4.7/4.8 磁盤掛載 4.9 手動增長swap空間

 

查看系統支持的文件系統格式:node

"/"和"/boot"都是xfs格式!linux

一,命令mke2fs

1.語法 安全

         mke2fs [選項] [參數]服務器

mke2fs、mkfs.ext二、mkfs.ext三、mkfs.ext4都可用於磁盤格式化!(mkfs.ext4=mke2fs -t ext4)app

 

3.命令選項async

        -L:=label,預設該分區的標籤
        -t:用來指定文件系統的類型(xfs、ext四、ext三、ext2等)
        -b:分區時指定每一個數據塊的大小,目前支持102四、24八、4096 bytes每一個塊
        -i:指定inode大小,默認單位是byte
        -N:設定inode數量,有時候默認的數量不夠用,因此須要本身設定inode數量
        -c:在格式化以前先檢測一下磁盤是否有問題,加上這個選項後會很是慢
        -m:格式化時,指定預留給管理員的磁盤比例,是一個百分比,只針對mke2fs命令ide

 

實例:磁盤格式化ui

mke2fs不支持 xfs,    spa

[root@cham2 ~]# mke2fs -t ext4 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系統標籤=
OS type: Linux
塊大小=4096 (log=2)
分塊大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
196608 inodes, 786432 blocks
39321 blocks (5.00%) reserved for the super user
第一個數據塊=0
Maximum filesystem blocks=805306368
24 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 
	32768, 98304, 163840, 229376, 294912

Allocating group tables: 完成                            
正在寫入inode表: 完成                            
Creating journal (16384 blocks): 完成
Writing superblocks and filesystem accounting information: 完成

建立xfs格式分區:debug

[root@cham2 ~]# mkfs.xfs /dev/sdb1
mkfs.xfs: /dev/sdb1 appears to contain an existing filesystem (ext4).
mkfs.xfs: Use the -f option to force overwrite.
[root@cham2 ~]# mkfs.xfs -f /dev/sdb1
meta-data=/dev/sdb1              isize=512    agcount=4, agsize=196608 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=786432, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

格式化過的磁盤能夠再次進行格式化!

[root@cham2 ~]# fdisk -l

磁盤 /dev/sdb:10.7 GB, 10737418240 字節,20971520 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):512 字節 / 512 字節
磁盤標籤類型:dos
磁盤標識符:0x8b812750

   設備 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     6293503     3145728   83  Linux

磁盤 /dev/sda:21.5 GB, 21474836480 字節,41943040 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):512 字節 / 512 字節
磁盤標籤類型:dos
磁盤標識符:0x000aed5a

   設備 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      391167      194560   83  Linux
/dev/sda2          391168     8202239     3905536   82  Linux swap / Solaris
/dev/sda3         8202240    41943039    16870400   83  Linux

[root@cham2 ~]# mkfs.xfs -f /dev/sdb
meta-data=/dev/sdb               isize=512    agcount=4, agsize=655360 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=2621440, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

即,磁盤不分區也能夠進行格式化 格式成xfs!

[root@cham2 ~]# fdisk -l

磁盤 /dev/sdb:10.7 GB, 10737418240 字節,20971520 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):512 字節 / 512 字節


磁盤 /dev/sda:21.5 GB, 21474836480 字節,41943040 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):512 字節 / 512 字節
磁盤標籤類型:dos
磁盤標識符:0x000aed5a

   設備 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      391167      194560   83  Linux
/dev/sda2          391168     8202239     3905536   82  Linux swap / Solaris
/dev/sda3         8202240    41943039    16870400   83  Linux
[root@cham2 ~]# mkfs.xfs -f /dev/sdb
meta-data=/dev/sdb               isize=512    agcount=4, agsize=655360 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=2621440, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
[root@cham2 ~]# blkid /dev/sdb
/dev/sdb: UUID="269a8837-e75f-4224-84f2-9985eb1ef9d7" TYPE="xfs"

 

  • 查看一個未掛載的分區: blkid命令
[root@cham2 ~]# blkid
/dev/sdb: UUID="9d5c1aa5-035b-497f-a2cc-54447e4762d8" TYPE="xfs" 
/dev/sda1: UUID="027d84b6-814c-4460-ad23-4034087440be" TYPE="xfs" 
/dev/sda2: UUID="3f3e4ba7-330f-44c7-859e-008dfad35343" TYPE="swap" 
/dev/sda3: UUID="0a03c026-1b9f-4f12-aafc-be8b5b50a8d6" TYPE="xfs"

也能夠查看指定磁盤的信息:

[root@cham2 ~]# blkid /dev/sda1
/dev/sda1: UUID="027d84b6-814c-4460-ad23-4034087440be" TYPE="xfs"

 

磁盤掛載

磁盤格式化完成後須要掛載後才能進行是使用。
在掛載某個分區前須要先創建一個掛載點,這個掛載點是以目錄的形式出現的。一旦把某一個分區掛載到了這個掛載點(目錄)下,那麼再往這個目錄寫數據時,則都會寫到該分區中。
注意:在磁盤掛載分區前,掛載點下必須是空目錄,由於磁盤掛載後該目錄下以前的東西就看不到了,只有卸載分區後才能看到。

 mount命令、umount命令

        語法: mount [選項] [盤符] [掛載點]

        選項:
        -a:把/etc/fstab中出現的全部磁盤分區掛載上
        -t:指定分區類型,默認不指定會自動識別
        -o:=options指定掛載分區特性(分區表第四列那些)

        描述 :掛載點至關於磁盤的入口,沒有掛載點就沒有辦法在磁盤裏寫東西

mount命令不加任何選項時,該命令可查看當前系統已經掛載的全部分區及其文件系統的類型、掛載點和一些選項信息。

[root@cham2 ~]# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=494396k,nr_inodes=123599,mode=755)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,seclabel,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_prio,net_cls)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
configfs on /sys/kernel/config type configfs (rw,relatime)
/dev/sda3 on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=31,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)
mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=100844k,mode=700)
/dev/sdb on /mnt type xfs (rw,relatime,seclabel,attr2,inode64,noquota)

 

fstab分區表 vi /etc/fstab

#
# /etc/fstab
# Created by anaconda on Thu Oct 19 06:55:53 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=0a03c026-1b9f-4f12-aafc-be8b5b50a8d6 /                       xfs     defaults        0 0
UUID=027d84b6-814c-4460-ad23-4034087440be /boot                   xfs     defaults        0 0
UUID=3f3e4ba7-330f-44c7-859e-008dfad35343 swap                    swap    defaults        0 0

fstab,分區表解讀

mark

關於第四列mount的掛載參數:

  • async/sync:磁盤和內存是否同步,默認async不一樣步;
  • auto/noauto:開機自動掛載/不自動掛載;
  • default:按着大多數永久文件系統的缺省值設置掛載定義,包含rw,suid,dev,exec,auto,nouser,async等
    • ro:按只讀權限掛載
    • rw:按讀寫權限掛載
    • exec/noexec:容許/不容許可執行文件執行,千萬不要把根分區掛載爲noexec。
    • user/nouser:容許/不容許root外其餘用戶掛載分區,爲了安全考慮,使用nouser
    • suid/nosuid:容許/不容許分區有suid屬性,通常設置nosuid
    • usrquota:啓動使用者磁盤配額模式,可針對用戶限定他們的使用額度
    • grquota:啓動羣組磁盤配額模式

說明: 若是一臺服務器上有多塊磁盤,進行掛載時優先選用UUID,避免發生硬件維修更換磁盤位置後磁盤分區名發生變化而影響系統啓動。

實例:mount掛在到mnt下,再umount刪除,再掛在到mut下再umount -l 懶人刪除

[root@cham2 ~]# mount /dev/sdb /mnt/
[root@cham2 ~]# df -h
文件系統        容量  已用  可用 已用% 掛載點
/dev/sda3        17G  1.1G   16G    7% /
devtmpfs        483M     0  483M    0% /dev
tmpfs           493M     0  493M    0% /dev/shm
tmpfs           493M  6.8M  486M    2% /run
tmpfs           493M     0  493M    0% /sys/fs/cgroup
/dev/sda1       187M  109M   79M   59% /boot
tmpfs            99M     0   99M    0% /run/user/0
/dev/sdb         10G   33M   10G    1% /mnt
[root@cham2 ~]# mount
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
devtmpfs on /dev type devtmpfs (rw,nosuid,seclabel,size=494396k,nr_inodes=123599,mode=755)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,seclabel,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,nodev,seclabel,mode=755)
tmpfs on /sys/fs/cgroup type tmpfs (ro,nosuid,nodev,noexec,seclabel,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/usr/lib/systemd/systemd-cgroups-agent,name=systemd)
pstore on /sys/fs/pstore type pstore (rw,nosuid,nodev,noexec,relatime)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
cgroup on /sys/fs/cgroup/freezer type cgroup (rw,nosuid,nodev,noexec,relatime,freezer)
cgroup on /sys/fs/cgroup/perf_event type cgroup (rw,nosuid,nodev,noexec,relatime,perf_event)
cgroup on /sys/fs/cgroup/cpu,cpuacct type cgroup (rw,nosuid,nodev,noexec,relatime,cpuacct,cpu)
cgroup on /sys/fs/cgroup/pids type cgroup (rw,nosuid,nodev,noexec,relatime,pids)
cgroup on /sys/fs/cgroup/blkio type cgroup (rw,nosuid,nodev,noexec,relatime,blkio)
cgroup on /sys/fs/cgroup/hugetlb type cgroup (rw,nosuid,nodev,noexec,relatime,hugetlb)
cgroup on /sys/fs/cgroup/memory type cgroup (rw,nosuid,nodev,noexec,relatime,memory)
cgroup on /sys/fs/cgroup/net_cls,net_prio type cgroup (rw,nosuid,nodev,noexec,relatime,net_prio,net_cls)
cgroup on /sys/fs/cgroup/cpuset type cgroup (rw,nosuid,nodev,noexec,relatime,cpuset)
configfs on /sys/kernel/config type configfs (rw,relatime)
/dev/sda3 on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=31,pgrp=1,timeout=300,minproto=5,maxproto=5,direct)
mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=100844k,mode=700)
/dev/sdb on /mnt type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
[root@cham2 ~]# cd /mnt/
[root@cham2 mnt]# ls
[root@cham2 mnt]# touch 1.txt 2.txt
[root@cham2 mnt]# mkdir 234
[root@cham2 mnt]# ls
1.txt  234  2.txt
[root@cham2 mnt]# umount /dev/sdb
umount: /mnt:目標忙。
        (有些狀況下經過 lsof(8) 或 fuser(1) 能夠
         找到有關使用該設備的進程的有用信息)
[root@cham2 mnt]# pwd
/mnt
[root@cham2 mnt]# cd
[root@cham2 ~]# umount /dev/sdb
[root@cham2 ~]# df -h
文件系統        容量  已用  可用 已用% 掛載點
/dev/sda3        17G  1.1G   16G    7% /
devtmpfs        483M     0  483M    0% /dev
tmpfs           493M     0  493M    0% /dev/shm
tmpfs           493M  6.8M  486M    2% /run
tmpfs           493M     0  493M    0% /sys/fs/cgroup
/dev/sda1       187M  109M   79M   59% /boot
tmpfs            99M     0   99M    0% /run/user/0
[root@cham2 ~]# mount /dev/sdb /mnt/
[root@cham2 ~]# ls /mnt
1.txt  234  2.txt
[root@cham2 ~]# cd /mnt/
[root@cham2 mnt]# umount /dev/sdb
umount: /mnt:目標忙。
        (有些狀況下經過 lsof(8) 或 fuser(1) 能夠
         找到有關使用該設備的進程的有用信息)
[root@cham2 mnt]# umount -l /dev/sdb
[root@cham2 mnt]# df -h
文件系統        容量  已用  可用 已用% 掛載點
/dev/sda3        17G  1.1G   16G    7% /
devtmpfs        483M     0  483M    0% /dev
tmpfs           493M     0  493M    0% /dev/shm
tmpfs           493M  6.8M  486M    2% /run
tmpfs           493M     0  493M    0% /sys/fs/cgroup
/dev/sda1       187M  109M   79M   59% /boot
tmpfs            99M     0   99M    0% /run/user/0
  • 進行磁盤掛載,目錄下原有內容被覆蓋!
[root@cham2 ~]# mkdir /newdir
[root@cham2 ~]# touch /newdir/ch.txt
[root@cham2 ~]# ls
anaconda-ks.cfg
[root@cham2 ~]# ls /newdir
ch.txt
[root@cham2 ~]# ls /newdir/
ch.txt
[root@cham2 ~]# mount /dev/sdb /newdir/
將/dev/sdb/掛載到/newdir/
[root@cham2 ~]# df -h
文件系統        容量  已用  可用 已用% 掛載點
/dev/sda3        17G  1.1G   16G    7% /
devtmpfs        483M     0  483M    0% /dev
tmpfs           493M     0  493M    0% /dev/shm
tmpfs           493M  6.7M  486M    2% /run
tmpfs           493M     0  493M    0% /sys/fs/cgroup
/dev/sda1       187M  109M   79M   59% /boot
tmpfs            99M     0   99M    0% /run/user/0
/dev/sdb         10G   33M   10G    1% /newdir

[root@cham2 ~]# ls -l /newdir/
總用量 0
目錄下原有內容被覆蓋!

 umount命令

語法: umount(選項)(參數)

選項: -l:= lazy( 懶惰) 卸載分區時沒必要退出分區所在目錄
注: 當在要卸載的分區所在目錄進行卸載時是沒法直接完成的,解決辦法有兩種,第一,退出當前目錄再卸載;第二,使用‘umount -l’

[root@cham2 mnt]# umount /dev/sdb
[root@cham2 mnt]# df -h
文件系統        容量  已用  可用 已用% 掛載點
/dev/sda3        17G  1.1G   16G    7% /
devtmpfs        483M     0  483M    0% /dev
tmpfs           493M     0  493M    0% /dev/shm
tmpfs           493M  6.8M  486M    2% /run
tmpfs           493M     0  493M    0% /sys/fs/cgroup
/dev/sda1       187M  109M   79M   59% /boot
tmpfs            99M     0   99M    0% /run/user/0

開機自動掛載分區

使某分區開機自動掛載的辦法:

  • 在/etc/fstab中添加一行代碼‘UUID=abb35b1c-5bb9-4e78-a6c2-4d4d30ab74c0 /boot xfs defaults 0 0’
  • 把掛載命令寫到/etc/rc.d/rc/local文件中。

 

手動增長swap空間

[root@cham2 ~]# dd if=/dev/zero of=/tmp/newdisk  bs=1M count=100    手動建立一個新分區
記錄了100+0 的讀入
記錄了100+0 的寫出
104857600字節(105 MB)已複製,0.69836 秒,150 MB/秒
[root@cham2 ~]# du -sh /tmp/newdisk
100M	/tmp/newdisk
[root@cham2 ~]# mkswap -f /tmp/newdisk  格式化該swap分區
正在設置交換空間版本 1,大小 = 102396 KiB
無標籤,UUID=fc904317-0b4b-49ba-bdc0-357d757180d9
[root@cham2 ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            984         106         643           6         234         718
Swap:          3813           0        3813
[root@cham2 ~]# swapon /tmp/newdisk      掛載到原swap分區
swapon: /tmp/newdisk:不安全的權限 0644,建議使用 0600。
[root@cham2 ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            984         107         642           6         234         717
Swap:          3913           0        3913
[root@cham2 ~]# chmod 0600 /tmp/newdisk   更改權限以保安全
[root@cham2 ~]# swapoff /tmp/newdisk      卸載分區
[root@cham2 ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            984         106         642           6         234         718
Swap:          3813           0        3813
[root@cham2 ~]# rm -f /tmp/newdisk
[root@cham2 ~]#

 「dd」:用於操做磁盤的命令(可讀可寫) if:讀取位置 of:寫入位置 bs:=block size 塊大小 count:磁盤大小(此處=100*1M)

相關文章
相關標籤/搜索