磁盘空间管理、MBR与GPT分区模式、fdisk命令使用、件系统、开机自动挂载 GPT分区模式划分、parted使用、交换空间

1 往日再来:仰天大笑出门去,我辈岂是蓬蒿人

1.1 基本权限的分类?归属关系分为 那几种?

1.2 Linux中如何查看一个文件或目录的权限?

1.3 修改权限的命令是什么?修改归属关系的命令是什么?

1.4 一位用户能否切换到一个目录里面,只和什么权限有关?

1.5 一位用户对目录具备w权限,该用户对目录进行哪些操作?

1.6 Linux中SGID权限用什么符号表示?出现的位置?有什么作用?

1.7 Linux中t权限出现的位置?有什么作用?

1.8 查看数据的ACL策略,使用什么命令

1.9 实现用户lisi可以读取/etc/shadow文件内容,你有几种办法,请写出(至少写出三种)

查看本机识别的新的硬盘

VMware虚拟机:

 
  1. [root@localhost ~]# lsblk
  2. NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
  3. sr0 11:0 1 10.5G 0 rom
  4. /dev/sda 259:0 0 20G 0 disk
  5. ├─sda1 259:1 0 1G 0 part /boot
  6. └─sda2 259:2 0 19G 0 part
  7. ├─rl-root 253:0 0 17G 0 lvm /
  8. └─rl-swap 253:1 0 2G 0 lvm [SWAP]
  9. /dev/sdb 259:3 0 20G 0 disk
  10. /dev/sdc 259:4 0 20G 0 disk
  11. [root@localhost ~]

KVM虚拟机:

 
  1. [root@localhost ~]# ls /dev/vda #虚拟接口第一块
  2. [root@localhost ~]# ls /dev/vdb #虚拟接口第二块
  3. [root@localhost ~]# ls /dev/vdc #虚拟接口第三块
  4. [root@localhost ~]# lsblk #列出当前系统识别的硬盘

计算机容量单位:

一般用B,KB,MB,GB,TB,PB,EB,ZB,YB,BB来表示,它们之间的关系是:

1KB (Kilobyte 千字节)=1024B,

1MB (Megabyte 兆字节 简称“兆”)=1024KB,

1GB (Gigabyte 吉字节 又称“千兆”)=1024MB,

1TB (Terabyte 万亿字节 太字节)=1024GB,

1PB (Petabyte 千万亿字节 拍字节)=1024TB,

1EB (Exabyte 百亿亿字节 艾字节)=1024PB,

1ZB (Zettabyte 十万亿亿字节 泽字节)= 1024 EB,

1YB (Yottabyte 一亿亿亿字节 尧字节)= 1024 ZB,

1BB (Brontobyte 一千亿亿亿字节)= 1024 YB.

4 硬盘分区思路

一块硬盘的“艺术”之旅(硬盘空间使用,经历的步骤)

•识别硬盘 => 分区规划 => 格式化 => 挂载使用

5 识别硬盘

[root@localhost ~]# lsblk #列出当前系统识别的硬盘

6 分区规划

•分区方案(分区模式): MBR与GPT

•MBR(msdos)分区模式(如图-12所示)

–分区类型:主分区、扩展分区(占用所有剩余空间)、逻辑分区

–最多只能有4个主分区

–扩展分区可以没有,至多有一个

–1~4个主分区,或者 3个主分区+1个扩展分区(n个逻辑分区)

–最大支持容量为 2.2TB 的磁盘

–扩展分区不能格式化,空间不能直接存储数据

–可以用于存储数据的分区:主分区与逻辑分区

 

fdisk常用交互指令:专门用来划分MBR分区模式

  • m 列出指令帮助
  • p 查看现有的分区表(存放分区信息的表格)
  • n 新建分区
  • d 删除分区
  • q 放弃更改并退出
  • w 保存更改并退出
 
  1. [root@localhost ~]# fdisk /dev/vdb
  2. n 创建新的分区----->分区类型 回车----->分区编号 回车---->起始扇区 回车----->在last结束时 +2G
  3. p 查看分区表
  4. n 创建新的分区----->分区类型 回车----->分区编号 回车---->起始扇区 回车----->在last结束时 +1G
  5. w 保存并退出
  6. [root@localhost ~]# lsblk
  7. [root@localhost ~]# ls /dev/vdb[1-2]

7 格式化:赋予空间文件系统的过程

文件系统:数据在空间中,存放的规则

Windows常见的文件系统:NTFS FAT(兼容性强)

Linux常见的文件系统:ext4(6系列) xfs(7系列以上) FAT

 
  1. [root@localhost ~]# mkfs.(tab)(tab) #连续按两次tab键
  2. [root@localhost ~]# mkfs.ext4 /dev/vdb1 #格式化文件系统ext4
  3. [root@localhost ~]# mkfs.xfs /dev/vdb2 #格式化文件系统xfs
  4. [root@localhost ~]# blkid /dev/vdb1 #查看文件系统类型
  5. [root@localhost ~]# blkid /dev/vdb2 #查看文件系统类型
  6. [root@localhost ~]# mkfs.xfs -f /dev/vdb2 #强制格式化文件系统xfs

8 临时挂载使用

 
  1. [root@localhost ~]# mkdir /mypart1
  2. [root@localhost ~]# mount /dev/vdb1 /mypart1
  3. [root@localhost ~]# df -h /mypart1 #显示正在挂载设备的使用情况显示
  4. [root@localhost ~]# mkdir /mypart2
  5. [root@localhost ~]# mount /dev/vdb2 /mypart2
  6. [root@localhost ~]# df -h /mypart1 /mypart2
  7. #显示正在挂载的设备信息,使用情况的显示

9 开机自动挂载/etc/fstab

设备路径 挂载点 文件系统类型  参数 备份标记   检测顺序

 
  1. [root@localhost ~]# blkid /dev/vdb1 #查看文件系统类型
  2. [root@localhost ~]# blkid /dev/vdb2 #查看文件系统类型
  3. [root@localhost ~]# vim /etc/fstab #vmware虚拟机
  4. /dev/sdb1 /mypart1 ext4 defaults 0 0
  5. /dev/sdb2 /mypart2 xfs defaults 0 0
  6. [root@localhost ~]# vim /etc/fstab #KVM虚拟机
  7. /dev/vdb1 /mypart1 ext4 defaults 0 0
  8. /dev/vdb2 /mypart2 xfs defaults 0 0

10 开机自动挂载/etc/fstab 测试

设备路径 挂载点 文件系统类型  参数 备份标记   检测顺序

 
  1. [root@localhost ~]# umount /mypart1 #卸载
  2. [root@localhost ~]# umount /mypart2 #卸载
  3. [root@localhost ~]# df -h | grep mypart #没有输出
  4. [root@localhost ~]# mount -a
  5. 检测/etc/fstab开机自动挂载配置文件,格式是否正确
  6. 检测/etc/fstab中,书写完成,但当前没有挂载的设备,进行挂载
  7. [root@localhost ~]# df -h | grep mypart #有输出
  8. [root@localhost ~]# reboot #不是必须的

12 综合分区

 
  1. [root@localhost ~]# fdisk /dev/vdb
  2. p 查看分区表
  3. n 创建主分区--->回车--->回车--->回车--->在last结束时 +2G
  4. p 查看分区表
  5. n 创建主分区--->p回车 --->起始回车--->结束回车 将所有剩余空间给最后一个分区
  6. p 查看分区表
  7. w 保存并退出
  8. [root@localhost ~]# lsblk

练习逻辑分区划分

 
  1. [root@localhost ~]# fdisk /dev/vdc
  2. p 查看分区表
  3. n 创建主分区--->回车--->回车--->回车--->在last结束时 +2G
  4. n 创建主分区--->回车--->回车--->回车--->在last结束时 +2G
  5. n 创建主分区--->回车--->回车--->回车--->在last结束时 +2G
  6. p 查看分区表
  7. n 创建扩展分区 --->回车--->起始回车--->结束回车 将所有剩余空间给扩展分区
  8. p 查看分区表
  9. n 创建逻辑分区----->起始回车------>在last结束时+2G
  10. n 创建逻辑分区----->起始回车------>在last结束时+2G
  11. n 创建逻辑分区----->起始回车------>在last结束时回车
  12. p 查看分区表
  13. w 保存并退出
  14. [root@localhost ~]# lsblk
  15. [root@localhost ~]# parted /dev/vdc print #查看分区类型

13 补充命令partprobe刷新分区表

14 分区模式GPT

1.关闭虚拟机,添加新的20G硬盘

 
  1. [root@localhost ~]# poweroff
  2. [root@localhost ~]# lsblk

2.分区模式GPT

•GPT,GUID Partition Table

–全局唯一标识分区表

–突破固定大小64字节的分区表限制

–可支持4个以上的主分区,最大支持18EB容量

** 1 EB = 1024 PB = 1024 x 1024 TB

•parted常用分区指令

–help    //查看指令帮助

–mktable  gpt    //建立指定模式分区表

–mkpart  分区的名称  文件系统类型  start  end //指定大小或百分比%作为起始、结束位置

–print   //查看分区表

–rm  序号    //删除指定的分区

–quit   //退出交互环境

•parted进行分区

 
  1. [root@localhost ~]# parted /dev/vdd
  2. (parted) mktable gpt #指定分区模式
  3. (parted) mkpart #划分新的分区
  4. 分区名称? []? haha #随意写,不写也可以
  5. 文件系统类型? [ext2]? ext4 #随意写,不会进行格式化
  6. 起始点? 0
  7. 结束点? 5G
  8. 忽略/Ignore/放弃/Cancel? Ignore #选择忽略,输入i(tab)补全
  9. (parted) print #查看分区表信息
  10. (parted) unit GB #使用GB作为单位
  11. (parted) print
  12. (parted) mkpart #划分新的分区
  13. 分区名称? []? haha
  14. 文件系统类型? [ext2]? ext4
  15. 起始点? 5G #为上一个分区的结束
  16. 结束点? 100% #全部空间
  17. (parted) print
  18. (parted) quit #退出
  19. [root@localhost ~]# lsblk

•parted进行分区使用

 
  1. [root@localhost ~]# mkfs.xfs /dev/vdd1 #格式化文件系统
  2. [root@localhost ~]# blkid /dev/vdd1
  3. [root@localhost ~]# vim /etc/fstab #增加一行信息
  4. /dev/vdd1 /mypart3 xfs defaults 0 0
  5. [root@localhost ~]# mkdir /mypart3
  6. [root@localhost ~]# mount -a
  7. [root@localhost ~]# df -h /mypart3

15 分区总结

  1. 识别硬盘 :lsblk 查看识别的硬盘
  2. 硬盘分区 :fdisk命令 parted命令
  3. 分区模式:MBR分区方案 GPT分区方案
  4. 格式化 :mkfs.ext4 mkfs.xfs blkid
  5. 挂在使用:mount 手动挂载 与/etc/fstab开机自动挂载
  6. 利用mount -a检测开机自动挂载

16 交换空间(虚拟内存)

利用硬盘的空间,充当内存的空间

比如:CPU(喝水)----->内存(水缸)----->硬盘(水井)

当物理内存占满了,可以将内存的中数据,暂时放入交换空间中,缓解真实物理内存的压力

利用硬盘分区制作交换空间

 
  1. [root@localhost ~]# ls /dev/vdc1
  2. [root@localhost ~]# mkswap /dev/vdc1 #格式化交换文件系统
  3. [root@localhost ~]# blkid /dev/vdc1 #查看文件系统类型
  4. [root@localhost ~]# swapon #查看交换空间组成的成员信息
  5. [root@localhost ~]# swapon /dev/vdc1 #启用交换分区
  6. [root@localhost ~]# swapon #查看交换空间组成的成员信息
  7. [root@localhost ~]# free -h #查看交换空间的大小
  8. [root@localhost ~]# swapoff /dev/vdc1 #停用交换分区
  9. [root@localhost ~]# swapon #查看交换空间组成的成员信息
  10. [root@localhost ~]# free -h #查看交换空间的大小

开机自动启用交换分区

 
  1. [root@localhost ~]# vim /etc/fstab #增加一行信息
  2. /dev/vdc1 swap swap defaults 0 0
  3. [root@localhost ~]# swapon #查看交换空间组成的成员信息
  4. [root@localhost ~]# swapon -a #专门检测交换分区的书写
  5. [root@localhost ~]# swapon #查看交换空间组成的成员信息
  6. [root@localhost ~]# reboot #进行测试(不是必须的)

 案例1:硬盘分区及格式化

18.1 问题

本例要求熟悉硬盘分区结构,使用fdisk分区工具在磁盘 /dev/vde上按以下要求建立分区:

  1. 采用默认的 msdos 分区模式
  2. 第1个分区 /dev/vde1 的大小为 200MiB
  3. 第2个分区 /dev/vde2 的大小为 2000MiB
  4. 第3个分区 /dev/vde3 的大小为 1000MiB

完成分区后,能够配置开机自动挂载 /dev/vde2 分区:

  1. 文件系统类型为 EXT4
  2. 将其挂载到 /mnt/part2 目录

18.2 方案

fdisk分区工具用来建立msdos分区方案,其交互模式中的主要指令如下:

  • m:列出指令帮助
  • p:查看当前的分区表信息
  • n:新建分区
  • d:删除分区
  • q:放弃分区更改并退出
  • w:保存对分区表所做的更改

18.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:新建分区表

1)打开fdisk工具,操作磁盘/dev/vde

 
  1. [root@server0 ~]# fdisk /dev/vde
  2. Welcome to fdisk (util-linux 2.23.2).
  3. Changes will remain in memory only, until you decide to write them.
  4. Be careful before using the write command.
  5. Device does not contain a recognized partition table
  6. Building a new DOS disklabel with disk identifier 0x9ac1bc10.
  7. Command (m for help):                         //交互操作提示信息

2)新建第1个分区/dev/vde1

 
  1. Command (m for help): n                                 //新建分区
  2. Partition type:
  3. p primary (0 primary, 0 extended, 4 free)
  4. e extended
  5. Select (default p): p                                 //类型为p(主分区)
  6. Partition number (1-4, default 1): 1                     //分区编号1
  7. First sector (2048-20971519, default 2048):             //起始位置默认
  8. Using default value 2048
  9. Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +200M
  10. Partition 1 of type Linux and of size 200 MiB is set     //结束位置+200MiB大小
  11. Command (m for help): p                             //确认当前分区表
  12. .. ..
  13. Device Boot Start End Blocks Id System
  14. /dev/vde1 2048 411647 204800 83 Linux

3)新建第2个分区/dev/vde2

 
  1. Command (m for help): n
  2. Partition type:
  3. p primary (1 primary, 0 extended, 3 free)
  4. e extended
  5. Select (default p): p                                 //类型为p(主分区)
  6. Partition number (2-4, default 2): 2                    //分区编号2
  7. First sector (411648-20971519, default 411648):         //起始位置默认
  8. Using default value 411648
  9. Last sector, +sectors or +size{K,M,G} (411648-20971519, default 20971519): +2000M
  10. Partition 2 of type Linux and of size 2 GiB is set     //结束位置+2000MiB大小
  11. Command (m for help): p                             //确认当前分区表
  12. .. ..
  13. Device Boot Start End Blocks Id System
  14. /dev/vde1 2048 411647 204800 83 Linux
  15. /dev/vde2 411648 4507647 2048000 83 Linux

4)新建第3个分区/dev/vde3

 
  1. Command (m for help): n
  2. Partition type:
  3. p primary (2 primary, 0 extended, 2 free)
  4. e extended
  5. Select (default p): p
  6. Partition number (3,4, default 3): 3
  7. First sector (4507648-20971519, default 4507648):
  8. Using default value 4507648
  9. Last sector, +sectors or +size{K,M,G} (4507648-20971519, default 20971519): +1000M
  10. Partition 3 of type Linux and of size 1000 MiB is set
  11. Command (m for help): p                             //确认当前分区表
  12. .. ..
  13. Device Boot Start End Blocks Id System
  14. /dev/vde1 2048 411647 204800 83 Linux
  15. /dev/vde2 411648 4507647 2048000 83 Linux
  16. /dev/vde3 4507648 6555647 1024000 83 Linux

5)保存分区更改,退出fdisk分区工具

 
  1. Command (m for help): w                                 //保存并退出
  2. The partition table has been altered!
  3. Calling ioctl() to re-read partition table.
  4. Syncing disks.

步骤二:格式化及挂载分区

1)将分区/dev/vdb2格式化为EXT4文件系统

 
  1. [root@server0 ~]# mkfs.ext4 /dev/vde2
  2. .. ..
  3. Allocating group tables: done
  4. Writing inode tables: done
  5. Creating journal (8192 blocks): done
  6. Writing superblocks and filesystem accounting information: done

2)配置开机自动挂载

 
  1. [root@server0 ~]# vim /etc/fstab
  2. .. ..
  3. /dev/vde2 /mnt/part2 ext4 defaults 0 0

3)创建挂载点,并验证挂载配置

 
  1. [root@server0 ~]# mkdir /mnt/part2                 //创建挂载点
  2. [root@server0 ~]# mount -a                         //挂载fstab中的可用设备
  3. [root@server0 ~]# df -hT /mnt/part2/                 //检查文档所在的文件系统及设备
  4. Filesystem Type Size Used Avail Use% Mounted on
  5. /dev/vde2 ext4 1.9G 5.9M 1.8G 1% /mnt/part2

19 案例2:分区扩展Swap空间

19.1 问题

  1. 添加新硬盘上划分一个2G的分区vdf1
  2. 将/dev/vdf1格式化为Swap文件系统
  3. 启用/dev/vdf1分区,查看Swap空间大小
  4. 停用/dev/vdf1分区,查看Swap空间大小

19.2 方案

首先要明白Swap分区空间是来源于硬盘,而要想扩充Swap空间的大小,思路很简单就是把硬盘的分区格式成Swap文件系统,再扩充到Swap空间中区。

对于Swap分区有它独立的格式化命令和扩充命令,这里要和普通分区的格式化命令和挂载命令区分开。此外它还有独立查看Swap空间组成的命令。

19.3 步骤

实现此案例需要按照如下步骤进行。

步骤一:从磁盘vdf上划分一个2G的分区vdf1

命令操作如下所示:

 
  1. [root@localhost ~]# fdisk /dev/vdf
  2. 欢迎使用 fdisk (util-linux 2.23.2)。
  3. 更改将停留在内存中,直到您决定将更改写入磁盘。
  4. 使用写入命令前请三思。
  5. Device does not contain a recognized partition table
  6. 使用磁盘标识符 0x6faf1c3f 创建新的 DOS 磁盘标签。
  7. 命令(输入 m 获取帮助):n
  8. Partition type:
  9. p primary (0 primary, 0 extended, 4 free)
  10. e extended
  11. Select (default p): #回车
  12. Using default response p
  13. 分区号 (1-4,默认 1): #回车
  14. 起始 扇区 (2048-41943039,默认为 2048): #回车
  15. 将使用默认值 2048
  16. Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+2G
  17. 分区 1 已设置为 Linux 类型,大小设为 2 GiB
  18. 命令(输入 m 获取帮助):p
  19. 磁盘 /dev/sdd:21.5 GB, 21474836480 字节,41943040 个扇区
  20. Units = 扇区 of 1 * 512 = 512 bytes
  21. 扇区大小(逻辑/物理):512 字节 / 512 字节
  22. I/O 大小(最小/最佳):512 字节 / 512 字节
  23. 磁盘标签类型:dos
  24. 磁盘标识符:0x6faf1c3f
  25. 设备 Boot Start End Blocks Id System
  26. /dev/vdf1 2048 4196351 2097152 83 Linux
  27. 命令(输入 m 获取帮助):w
  28. The partition table has been altered!
  29. Calling ioctl() to re-read partition table.
  30. 正在同步磁盘。
  31. [root@localhost ~]#

步骤二:将/dev/vdf1格式化为swap文件系统

命令操作如下所示:

 
  1. [root@localhost ~]# mkswap /dev/vdf1 //格式化为swap文件系统
  2. Setting up swapspace version 1, size = 1951740 KiB
  3. no label, UUID=848ca15c-a03e-4e0b-9ac0-bfd6507d0b7e

步骤三:启用/dev/vdf1分区,查看swap空间大小

命令操作如下所示:

 
  1. [root@localhost ~]# swapon –s //未启用之前,查看swap空间组成成员
  2. Filename Type Size Used Priority
  3. /dev/dm-1 partition 8388600 0 -1
  4. [root@localhost ~]# swapon /dev/vdf1 //启用/dev/sdd1交换分区
  5. [root@localhost ~]# swapon –s //启用之后,查看swap空间组成成员
  6. Filename Type Size Used Priority
  7. /dev/dm-1 partition 8388600 0 -1
  8. /dev/vdf1 partition 1951736 0 -2
  9. [root@localhost ~]#

步骤四:停用/dev/vdf1分区,查看swap空间大小

命令操作如下所示:

 
  1. [root@localhost ~]# swapoff /dev/vdf1 //停用/dev/sdd1交换分区
  2. [root@localhost ~]# swapon -s
  3. Filename Type Size Used Priority
  4. /dev/dm-1 partition 8388600 0 -1
  5. [root@localhost ~]#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值