1. 程式人生 > >三周第五次課

三周第五次課

mkfs mount

4.5/4.6 磁盤格式化

df -tH 查看分區的文件系統
du -sh 文件 查看文件占用的空間大小

mke2fs
-t 指定文件系統 xfs ext4
-b 指定塊大小
mke2fs -t ext4 -b 2048 /dev/sdb1 格式化成ext4
mkfs.ext4 /dev/sdb1格式化成ext4
mkfs.xfs /dev/sdb4

df -hT 只可以查看已經掛載的分區和文件系統類型。
fdisk -l 可以顯示出所有掛載和未掛載的分區,但不顯示文件系統類型。
parted -l 可以查看未掛載的文件系統類型,以及哪些分區尚未格式化。

lsblk -f 也可以查看未掛載的文件系統類型

blkid查看已格式化分區的UUID和文件系統

技術分享圖片

大的文件可以指定大一點的塊,塊小可以節省空間

mke2fs -m 0.1 /dev/sdb5 -m預留空間百分比
mke2fs -i 8192 -t ext4 /dev/sdb5 -i,指定多少塊對應一個inode,這裏是2:1
mke2fs -t ext4 -b 2048 /dev/sdb1 -b指定塊大小,為2048字節

4.7/4.8 磁盤掛載

mkfs.xfs -f /dev/sdb單個硬盤可以不分區直接格式化然後掛載
mount /dev/sdb /mnt/掛載分區
umount /dev/sdb卸載分區
umount /mnt/卸載分區
umount -l /mnt/ 強制卸載分區,即使分區提示忙

一、格式化
查看當前磁盤支持的文件系統

[root@aiker01 mnt]# cat /etc/filesystems
xfs
ext4
ext3
ext2
nodev proc
nodev devpts
iso9660
vfat
hfs
hfsplus

*
查看分區文件系統:lsblk -f

[root@aiker01 mnt]# lsblk -f
NAME        FSTYPE      LABEL UUID                                   MOUNTPOINT
sda                                                                  
├─sda1                                                               
├─sda2      xfs               460aa503-2017-41c1-a406-c94f8b1097b7   /boot
└─sda3      LVM2_member       KzLxC5-B3g0-qvz5-4Bsf-Neaq-y3f1-cmRV0I 
  ├─cl-root xfs               16cc098f-10c5-4b7d-9a3a-cfd0289a0e12   /
  ├─cl-swap swap              542d997a-3a61-4e10-afe5-f4f96277eba9   [SWAP]
  ├─cl-var  xfs               2b8c9632-31ea-4299-9cb3-aa8d6d9c030e   /var
  └─cl-home xfs               b7a246f3-746e-49e4-bab0-4def83faaa26   /home
sdb         
sr0

可以看到sdb還沒有格式化
mke2fs格式化分區(但不支持xfs)
-t:指定文件系統(如果不指定默認是ext2)
-b:指定塊大小
-m:指定分區預留大小(給root用戶預留的空間)
[root@aiker01 ~]# mke2fs -t ext4 -i 8192 -m 0.1 /dev/sdb #同時我們還可以設定inodes多少,如下圖,四個塊對應一個inodes,也就是16k對應一個inodes,如果你想要更多的inodes,那麽就用-i選項。
-i:多少個字節對應一個inodes,設定8k對應一個inodes,inodes數量就變多了。(對少一個快對應一個inodes)
用mke2fs方法也能實現,事實上mke2fs和mkfs.ext4基本上是等同的。默認的塊大小是4096。

mke2fs 1.42.9 (28-Dec-2013)
/dev/sdb is entire device, not just one partition!
Proceed anyway? (y,n) y
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
2621440 inodes, 5242880 blocks
5242 blocks (0.10%) reserved for the super user
First data block=0
Maximum filesystem blocks=2153775104
160 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks: 
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 
        4096000
Allocating group tables: done                            
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
[root@aiker01 ~]# parted -l /dev/sdb
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 
Number  Start   End     Size    Type     File system  Flags
 1      1049kB  3146kB  2097kB  primary
 2      3146kB  527MB   524MB   primary  xfs          boot
 3      527MB   21.5GB  20.9GB  primary               lvm
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Disk Flags: 
Number  Start  End     Size    File system  Flags
 1      0.00B  21.5GB  21.5GB  ext4

mkfs.ext4相當於是mke2fs -t ext4,並且也支持上面的幾個選項,不過mkfs.xfs不支持上面的幾個選項。
這裏格式化成xfs文件系統我們使用mkfs.xfs

[root@aiker01 ~]# mkfs.xfs -f /dev/sdb
meta-data=/dev/sdb               isize=512    agcount=4, agsize=1310720 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=5242880, 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

格式化後可以用以下兩個命令查看文件系統和uuid,我們已經格式化未了xfs文件系統

[root@aiker01 ~]# blkid /dev/sdb
/dev/sdb: UUID="514ac48b-a5e8-4dd7-8907-16d75cf99cae" TYPE="xfs" 
[root@aiker01 ~]# lsblk -f
NAME        FSTYPE      LABEL UUID                                   MOUNTPOINT
sda                                                                  
├─sda1                                                               
├─sda2      xfs               460aa503-2017-41c1-a406-c94f8b1097b7   /boot
└─sda3      LVM2_member       KzLxC5-B3g0-qvz5-4Bsf-Neaq-y3f1-cmRV0I 
  ├─cl-root xfs               16cc098f-10c5-4b7d-9a3a-cfd0289a0e12   /
  ├─cl-swap swap              542d997a-3a61-4e10-afe5-f4f96277eba9   [SWAP]
  ├─cl-var  xfs               2b8c9632-31ea-4299-9cb3-aa8d6d9c030e   /var
  └─cl-home xfs               b7a246f3-746e-49e4-bab0-4def83faaa26   /home
sdb         xfs               514ac48b-a5e8-4dd7-8907-16d75cf99cae   
sr0

二、掛載
mount:掛載分區
用法:mount (盤符) (掛載的目錄)

[root@aiker01 ~]# mount /dev/sdb /mnt/

-o:可以掛載成只讀的
用法:mount -o rw (盤符或掛載點)
remount:重新掛載
umount:卸載分區(如果當前就在要卸載分區的掛載點裏會提示忙,退出該目錄即可)
用法:umount (盤符或掛載點)
強制卸載:
umout -l 掛載點 #可以不用退出就能卸載當前的掛載點,或者提示忙時也可以強制卸載
新加入的磁盤要加入開機自動掛載的方法:
vim /etc/fstab
技術分享圖片

最後一行是新添加的
一共是六列,
第一列是設備號,可以是UUID也可以是盤符,第二列是掛載點,
第三列是文件格式,第四列是掛載選項,第五列是否備份,第六列優先級
UUID的獲取:可以使用blkid 或者lsblk -f

4.9 手動增加swap空間

一般swap的大小是內存大小的2倍。如果內存為4G,我們最多分配8G的swap空間。如果某些應用程序要求使用那麽大的空間,我們可以進行手動擴容,比如oracle在安裝配置的時候就會要嚴格的swap大小匹配
1.創建虛擬磁盤
[root@aiker01 ~]# dd if=/dev/zero of=/tmp/ramdisk bs=1M count=2000 #dd命令的 if參數的意思是:數據源從哪裏來。/dev/zero是個造零器。of的意思是到那裏去。bs是塊的大小。count是多少塊。
mkswap是將造的空間轉換成swap空間。
2000+0 records in
2000+0 records out
2097152000 bytes (2.1 GB) copied, 18.0467 s, 116 MB/s
[root@aiker01 ~]# ls -dl /tmp/ramdisk
drwxr-xr-x. 3 root root 28 Dec 2 16:15 /tmp/ramdisk
[root@aiker01 ~]# mkswap /tmp/ramdisk
Setting up swapspace version 1, size = 2047996 KiB
no label, UUID=56383424-697b-4587-ac00-0330d141cef9
2、把虛擬磁盤的空間增加到swap:
[root@aiker01 ~]# free -h
total used free shared buff/cache available
Mem: 4.7G 163M 2.2G 8.6M 2.3G 4.2G
Swap: 4.0G 0B 4.0G


[root@aiker01 ~]# swapon !$
swapon /tmp/ramdisk
swapon: /tmp/ramdisk: insecure permissions 0644, 0600 suggested. #swapon: /tmp/testdisk:不安全的權限 0644,建議使用 0600。
[root@aiker01 ~]# chmod 0600 !$
chmod 0600 /tmp/ramdisk
[root@aiker01 ~]# swapon /tmp/ramdisk
swapon: /tmp/ramdisk: swapon failed: Device or resource busy
[root@aiker01 ~]# free -h
total used free shared buff/cache available
Mem: 4.7G 165M 180M 8.6M 4.3G 4.2G
Swap: 6.0G 0B 6.0G
如果要刪除新增的空間,使用命令:
[root@aiker01 ~]# swapoff /tmp/ramdisk
[root@aiker01 ~]# !fr
free -h
total used free shared buff/cache available
Mem: 4.7G 163M 181M 8.6M 4.3G 4.2G
Swap: 4.0G 0B 4.0G

三周第五次課