linux磁盘管理

189 阅读4分钟

磁盘管理:

扇区:每个扇区存放512字节的数据(扇区越多容量越大)

前446字节记录系统文件位置

分区 文件系统 挂载

管理文件的程序 叫文件系统(增删改查)

MBR分区 前446字节记录系统文件位置

分区的作用;

主分区:可以直接使用,可以装系统

扩展分区:不可以直接使用,必须要分逻辑分区

逻辑分区:依托于扩展分区,使用的是扩展分区中的空间(装操作系统的)

MBR分区

主分区 序号1-4

逻辑分区 序号从 5开始

扩展分区 一定是主分区

主分区不一定是逻辑分区

逻辑分区一定不是主分区

image.png

image.png

image.png

fdisk

[root@localhost ~]#fdisk /dev/sda #只看sda硬盘

[root@localhost ~]#fdisk -l #看所有

image.png

mkfs.xfs 分区名 来建立文件系统

虚拟机中先加磁盘:

[root@localhost ~]#echo "- - -" > /sys/class/scsi_host/host0/scan

[root@localhost ~]#echo "- - -" > /sys/class/scsi_host/host1/scan

[root@localhost ~]#echo "- - -" > /sys/class/scsi_host/host2/scan

alias scan='echo "- - -" > /sys/class/scsi_host/host0/scan;echo "- - -" > /sys/class/scsi_host/host1/scan;echo "- - -" > /sys/class/scsi_host/host2/scan'

image.png

image.png

partprobe 同步刷新

建立特殊分区 swap

分区 一定要将 分区类型 改为 82 (swap)分区 t 改变

建立文件系统:mkswap 分区名

例子:mkswap/dev/sdd1

启用:swapon 分区名

例子:swapon /dev/sdd

swapon -a 启用所有

swapoff -a 停用

主分区,扩展分区,逻辑分区,swap分区过程:

image.png

image.png

永久挂载

image.png

tip:还有一个0代表开机检测

mount -a 重新加载 报错 千万不要重启

df -T 文件系统的类型

df -h人性化显示

image.png

image.png

总结:

MBR 主引导记录 前446 引导程序 后64 分区表 2 标记位

image.png

image.png

df du有什么不同:

du命令: 简单的说,du和df一样,只不过是它不统计已经删除了的文件。比如删除1.txt,无论这个文件现在是否被使用,它都认为被删除了,此时运行du命令,查到的就是剩余空间是10G。

parted磁盘分区

全局唯一标识分区表(GUID Partition Table,缩写:GPT)

GPT是一个实体硬盘的分区结构。它是可扩展固件接口标准的一部分,用来替代BIOS中的主引导记录分区表。 传统的主启动记录(MBR)磁盘分区支持最大卷为2.2TB,每个磁盘最多有4个主分区,或3个主分区、1个扩展分区和在扩展分区里面分多个逻辑分区。 与MBR分区方法相比,GPT具有更多的优点,因为它允许每个磁盘有多达128个分区,支持高达18EB(千兆兆字节)的卷大小,允许将主磁盘分区表和备份磁盘分区表用于冗余,还支持唯一的磁盘和分区 ID (GUID)。

1.若磁盘小于2TB,可用fdisk /dev/sdb 进行分区,即MBR 分区格式

2.若磁盘大于2TB,可用parted /dev/sdb 进行分区,因为MBR分区磁盘是不能大于2.2TB,所以超过2TB一般使用GPT 分区格式

操作实例:

1、选择分区硬盘 首先类似fdisk一样,先选择要分区的硬盘,此处为/dev/hdd: ((parted)表示在parted中输入的命令,其他为自动打印的信息)

parted /dev/hdd

GNU Parted 1.8.1

Using /dev/hdd

Welcome to GNU Parted! Type 'help' to view a list of commands.

2、创建分区 选择了/dev/hdd作为我们操作的磁盘,接下来需要创建一个分区表(在parted中可以使用help命令打印帮助信息):

(parted) mklabel

New disk label type? gpt #我们要正确分区大于2TB的磁盘,应该使用gpt方式的分区表,输入gpt后回车

3、完成分区操作 创建好分区表以后,接下来就可以进行分区操作了,执行mkpart命令,分别输入分区名称,文件系统和分区 的起止位置

(parted) mkpart

Partition name? []? dp1

File system type? [ext2]? ext4

Start? 0 (可以用百分比表示,比如Start? 0% , End? 50%)

End? 500GB

4、验证分区信息 分好区后可以使用print命令打印分区信息,下面是一个print的样例

(parted) print

Model: VBOX HARDDISK (ide)

Disk /dev/hdd: 2199GB

Sector size (logical/physical): 512B/512B

Partition Table: gpt

Number Start End Size File system Name Flags

1 17.4kB 500GB 500GB dp1

5、删除分区示例 如果分区错了,可以使用rm命令删除分区,比如我们要删除上面的分区,然后打印删除后的结果

(parted) rm 1 #rm后面使用分区的号码,就是用print打印出来的Number

(parted) print

Model: VBOX HARDDISK (ide)

Disk /dev/hdd: 2199GB

Sector size (logical/physical): 512B/512B

Partition Table: gpt

Number Start End Size File system Name Flags

6.格式化操作,完成后即可挂载使用

mkfs.ext4 /dev/hdd1

mkdir /data

mount /dev/hdd1 /data

7.最后加入/etc/fstab自动挂载

vi /etc/fstab

/dev/sdd1 /data ext4 defaults 0 0