##管理系统中的简单分区和文件系统##


##学习目标

**添加文件系统空间

**添加swap交换分区

**对系统分区加密

##1.简单分区和文件系统

**存储是每个计算机系统的基本需求。 Red Hat EnterpriseLinux 提供了一些强大的工具,它们能在大量的场景中管理多种类型的存储设备

**disk 是用于管理磁盘分区的实用程序。您可以通过选择 -l选项和指定磁盘名称( fdisk -cul /dev/vda ) 运行该实用程序,以查看磁盘及其分区。您可以通过交互式地运行该实用程序,并选择相应的菜单选项( fdisk -cu /dev/vda ) 进行更改。 -c 禁用旧的 DOS 兼容模式 , -u 以扇区 (而不是柱

面,已经过时)的格式显示输出


##2.查看系统设备信息

**fdisk -l

–显示系统中所有可以使用的设备信息

2-4. 管理系统中的简单分区和文件系统_学习

**blkid

–显示系统正在使用的设备id

2-4. 管理系统中的简单分区和文件系统_学习_02

##3.创建新分区

2-4. 管理系统中的简单分区和文件系统_学习_03


2-4. 管理系统中的简单分区和文件系统_学习_04

2-4. 管理系统中的简单分区和文件系统_学习_05

[root@localhost ~]# fdisk /dev/vdb  ##分区管理
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): m  ##帮助
Command action
   a  toggle a bootable flag
   b  edit bsd disklabel
  c   toggle the dos compatibilityflag
   d  delete a partition  ##删除分区
   g  create a new empty GPT partition table
   G  create an IRIX (SGI) partition table
   l  list known partition types   ##列出系统可用的分区类型
   m  print this menu    ##帮助菜单
   n  add a new partition  ##新建分区
   o  create a new empty DOS partition table
   p  print the partition table   ##显示分区
   q  quit without saving changes    ##退出
   s  create a new empty Sun disklabel
   t  change a partition's system id    ##修改分区功能id
   u  change display/entry units
   v  verify the partition table
   w  write table to disk and exit   ##保存更改到分区表中
   x  extra functionality (experts only)
Command (m for help): n  ##新建分区
Partition type:
   p  primary (0 primary, 0 extended, 4 free)
   e  extended    ##分区类型为扩展分区
Select (default p):     ##分区类型为主分区
Using default response p
Partition number (1-4, default 1):   ##新建第一分区
First sector (2048-20971519, default 2048):   ##分区起始字节
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519):+100M   ##分区大小
Partition 1 of type Linux and of size 100 MiB is set
Command (m for help): W   ##保存分区
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@localhost ~]# partprobe  ##更新分区表
[root@localhost ~]# cat /proc/partitions   ##查看分区
major minor  #blocks  name

 253        0  10485760 vda
 253        1  10484142 vda1
 253      16   10485760 vdb
 253      17     102400 vdb1
[root@localhost ~]#


##4.文件系统比较

**ext4 是 Red Hat Enterprise Linux 6 的标准文件系统。它非常强大可靠,具有多项可以提高现代工作量处理性能的功能

**ext2 是常用于 Linux 中的较旧的文件系统。它简单可靠 ,非常适合小型存储设备 ,但是效率低于 ext4

**vfat 支持包括一系列相关文件系统 ( VFAT/FAT16 和FAT32 ),这些文件系统针对较旧版本的 Microsoft Windows开发,在大量的系统和设备上受支持

**xfs在Red Hat Enterprise Linux 7 的标准文件系统其具备数据完全性 、性能稳定、扩展性强( 18eb)、传输速率高( 7G/s)


##5.文件系统创建示例

# mkfs -t ext4|xfs /dev/vda3

# blkid /dev/vda3

/dev/vda3: UUID="cffde973-ab02-4b52-a09c-2a7ee610255c"TYPE="ext4"

# mkdir /test

向 /etc/fstab 添加一个条目 :

UUID="cffde973-ab02-4b52-a09c-2a7ee610255c" /test [ext4|xfs] 

defaults 1 2


##命令:mkfs.xfs /dev/vdb1  ##格式化/dev/vdb1

2-4. 管理系统中的简单分区和文件系统_学习_06测试挂载:

# mount /test

删除现有文件系统

1. 通过使用 umount /mountpoint 卸载文件系统。

2. 在 /etc/fstab 中删除相应条目。

3. 删除挂载点目录: rmdir /mountpoint

##命令:mount /dev/vdb1 /mnt  ##临时挂载/dev/vdb1 到/mnt

##命令:umount /mnt  ##卸载

2-4. 管理系统中的简单分区和文件系统_学习_07

##命令:vim   /etc/fstab   ##开机自动挂载

##命令:mount   -a   ##挂载更新

2-4. 管理系统中的简单分区和文件系统_linux_08

##vim  /etc/fstab

2-4. 管理系统中的简单分区和文件系统_学习_09


##自动新建立分区脚本

2-4. 管理系统中的简单分区和文件系统_linux_10

2-4. 管理系统中的简单分区和文件系统_linux_11

2-4. 管理系统中的简单分区和文件系统_linux_12


##6.swap交换分区

**换空间或交换区是磁盘驱动器上的空间,用作当前未使用部分内存的溢出。这样,系统就能在主内存中留出空间用于储存当前正在处理的数据,并在系统面临主内存空间不足的风险时提供应急溢出

[root@localhost ~]# swapon -s   ##显示交换区
[root@localhost ~]# fdisk /dev/vdb
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): n
Partition type:
   p  primary (0 primary, 0 extended, 4 free)
   e  extended
Select (default p):
Using default response p
Partition number (1-4, default 1):
First sector (2048-20971519, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519):+4G
Partition 1 of type Linux and of size 4 GiB is set

Command (m for help): p

Disk /dev/vdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xbdda21ba

   Device Boot      Start         End      Blocks  Id  System
/dev/vdb1            2048     8390655    4194304   83  Linux

Command (m for help): t    ##修改分区功能id
Selected partition 1
Hex code (type L to list all codes): l  ##列出系统可用的分区类型

 0 Empty           24  NEC DOS         81 Minix / old Lin bf  Solaris       
 1 FAT12           27  Hidden NTFS Win 82  Linux swap / So c1  DRDOS/sec (FAT-
 2 XENIX root      39  Plan 9          83 Linux           c4  DRDOS/sec (FAT-
 3 XENIX usr       3c  PartitionMagic  84 OS/2 hidden C:  c6  DRDOS/sec (FAT-
 4 FAT16 <32M      40  Venix 80286     85 Linux extended  c7  Syrinx        
 5 Extended        41  PPC PReP Boot   86 NTFS volume set da  Non-FSdata   
 6  FAT16          42  SFS             87 NTFS volume set db  CP/M / CTOS /.
 7 HPFS/NTFS/exFAT 4d  QNX4.x          88 Linux plaintext de  DellUtility  
 8 AIX             4e  QNX4.x 2nd part 8e  Linux LVM       df BootIt        
 9 AIX bootable    4f QNX4.x 3rd part 93  Amoeba          e1 DOS access    
 a OS/2 Boot Manag 50  OnTrackDM      94  Amoeba BBT      e3 DOS R/O       
 b W95 FAT32       51  OnTrack DM6 Aux 9f  BSD/OS          e4 SpeedStor     
 c W95 FAT32 (LBA) 52  CP/M            a0 IBM Thinkpad hi eb  BeOS fs       
 e W95 FAT16 (LBA) 53  OnTrack DM6Aux a5  FreeBSD         ee GPT           
 f W95 Ext'd (LBA) 54 OnTrackDM6      a6  OpenBSD         ef EFI (FAT-12/16/
10  OPUS            55 EZ-Drive        a7  NeXTSTEP        f0 Linux/PA-RISC b
11  Hidden FAT12    56 Golden Bow      a8  Darwin UFS      f1 SpeedStor     
12  Compaq diagnost 5c  Priam Edisk     a9 NetBSD          f4  SpeedStor     
14  Hidden FAT16 <3 61  SpeedStor       ab Darwin boot     f2  DOS secondary 
16  Hidden FAT16    63 GNU HURD or Sys af  HFS /HFS+      fb  VMware VMFS   
17  Hidden HPFS/NTF 64  Novell Netware  b7 BSDI fs         fc  VMware VMKCORE
18  AST SmartSleep  65 Novell Netware  b8  BSDI swap       fd Linux raid auto
1b  Hidden W95 FAT3 70  DiskSecure Mult bb  Boot Wizard hid fe  LANstep       
1c  Hidden W95 FAT3 75  PC/IX           be Solaris boot    ff  BBT           
1e  Hidden W95 FAT1 80  Old Minix     
Hex code (type L to list all codes): 82  ##修改分区id
Changed type of partition 'Linux' to 'Linux swap / Solaris'

Command (m for help): p  ##显示新建分区

Disk /dev/vdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xbdda21ba

   Device Boot      Start         End      Blocks  Id  System
/dev/vdb1            2048     8390655    4194304   82  Linux swap / Solaris

Command (m for help): wq
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[root@localhost ~]#


##7.管理交换分区

**使用 fdisk 创建新分区。此外 ,在用 fdisk 保存更改之前 ,将分区类型更改为“ 0x82 LinuxSwap”

**mkswap /dev/vdaN 会准备好将分区用作交换区

**blkid /dev/vdaN 将确定 UUID

**将新交换空间添加到 /etc/fstab :UUID=uuid swap swap defaults 0 0

**swapon -a 将激活新交换区

**swapon -s 将显示当前交换区的状态

**swapoff /dev/vdaN 将停用该特定交换区


##新建立分区vdb1和vdb2

2-4. 管理系统中的简单分区和文件系统_linux_13

2-4. 管理系统中的简单分区和文件系统_学习_14

2-4. 管理系统中的简单分区和文件系统_学习_15

##命令:swapon -a /dev/vdb2 -p 2   ##修改/dev/vdb2权限

2-4. 管理系统中的简单分区和文件系统_学习_16

##自动修改权限

2-4. 管理系统中的简单分区和文件系统_linux_17

2-4. 管理系统中的简单分区和文件系统_学习_18

##自动新建swap分区

2-4. 管理系统中的简单分区和文件系统_linux_19

2-4. 管理系统中的简单分区和文件系统_学习_20

##8.swap交换分区建议设定

2-4. 管理系统中的简单分区和文件系统_学习_21

##9.磁盘加密保护

**LUKS ( Linux 统一密钥设置)是标准的设备加密格式

**LUKS 可以对分区或卷进行加密

**必须首先对加密的卷进行解密,才能挂载其中的文件系统


##10.创建新加密的卷

**使用 fdisk 创建新分区

**cryptsetup luksFormat /dev/vdaN 可对新分区进行加密,并设置解密密码

**您输入正确的解密密码之后, cryptsetup luksOpen /dev/vdaN name 会将加密的卷 /dev/vdaN 解锁为/dev/mapper/name

**解密的卷上创建 xfs文件系统 : mkfs -t xfs /dev/mapper/name

**创建目录挂载点,并挂载文件系统: mkdir /secret

– mount /dev/mapper/name /secret

**完成之后 , umount /dev/mapper/name 并运行

cryptsetup luksClose name 以锁定加密的卷


##创建加密的卷

命令:cryptsetup luksFormat /dev/vdb1  ##对新分区进行加密 ,并设置解密密码

2-4. 管理系统中的简单分区和文件系统_学习_22

## 命令:cryptsetup open /dev/vdb1 westos  ##会将加密的卷 /dev/vdb1 解锁为/dev/mapper/westos

2-4. 管理系统中的简单分区和文件系统_linux_23

##命令:mkfs.xfs /dev/mapper/westos   ##格式化分区为xfs格式

2-4. 管理系统中的简单分区和文件系统_linux_24

##命令:mount /dev/mapper/westos /mnt  ##挂载文件

2-4. 管理系统中的简单分区和文件系统_linux_25

##命令:umount /mnt   ##卸掉挂载

2-4. 管理系统中的简单分区和文件系统_linux_26

2-4. 管理系统中的简单分区和文件系统_学习_27

##命令:cryptsetup close westos  ##锁定加密的卷

2-4. 管理系统中的简单分区和文件系统_linux_28

**测试

2-4. 管理系统中的简单分区和文件系统_linux_29

##自动加密

##命令:vim /etc/fstab    ##设置自动挂载

2-4. 管理系统中的简单分区和文件系统_学习_30

**内容

2-4. 管理系统中的简单分区和文件系统_linux_31

##命令:vim /etc/crypttab  ##配置分区加密文件

2-4. 管理系统中的简单分区和文件系统_linux_32

**内容

2-4. 管理系统中的简单分区和文件系统_学习_33

##命令:vim /root/diskpass  ##配置密码

2-4. 管理系统中的简单分区和文件系统_linux_34

**内容

2-4. 管理系统中的简单分区和文件系统_linux_35

##命令: chmod 600 /root/diskpass

##命令:cryptsetup luksAddKey /dev/vdb1 /root/diskpass ##给文件添加密码

2-4. 管理系统中的简单分区和文件系统_linux_36



11.用户配额

命令:mount -o usrquota,grpquota /dev/vdb1 /pub  ##挂载文件,用户配额,组配额

quotaon -ugv /dev/vdb1 ##开启用户配额和组配额

2-4. 管理系统中的简单分区和文件系统_linux_37

命令:edquota -u student   ##给student用户配额

2-4. 管理系统中的简单分区和文件系统_学习_38

2-4. 管理系统中的简单分区和文件系统_linux_39

  **测试

2-4. 管理系统中的简单分区和文件系统_linux_40

12.阵列管理

 命令:mdadm -C /dev/md0 -a yes -l 1 -n 2 -x 1 /dev/vdb{1..3}  ##建立阵列

2-4. 管理系统中的简单分区和文件系统_学习_412-4. 管理系统中的简单分区和文件系统_学习_42

  命令:mffs.xfs /dev/md0  ##格式化md0 2-4. 管理系统中的简单分区和文件系统_linux_43

  命令:mount /dev/md0 /mnt  ##挂载md0

2-4. 管理系统中的简单分区和文件系统_学习_44

  命令:mdadm -D /dev/md0  ##查看md0状态

2-4. 管理系统中的简单分区和文件系统_学习_45

  命令:mdadm -f /dev/md0/ /dev/vdb2  ##让vdb2失效

2-4. 管理系统中的简单分区和文件系统_学习_46

  命令:mdadm -r /dev/md0/ /dev/vdb2  ##删除vdb2

2-4. 管理系统中的简单分区和文件系统_学习_47

  命令:mdadm -a /dev/md0/ /dev/vdb2  ##添加vdb2

2-4. 管理系统中的简单分区和文件系统_学习_48

 命令:mdadm -S /dev/md0/  ##停止md0

2-4. 管理系统中的简单分区和文件系统_linux_49