Linux磁盘分区和挂载

一、分区概念

1、基本概念

(1) 一块硬盘最多只能有4个主分区
(2) 其中一个(且最多只能有一个)主分区能作为扩展分区,而扩展分区不能写入数据,只能包含逻辑分区

Linux磁盘分区和挂载_第1张图片

 2、格式化

分区之后的磁盘并不能直接使用,而是需要先进行格式化,又称为逻辑格式化。它是指根据用户选定的文件系统(FAT16、FAT32、NTFS、EXT2、EXT3、EXT4等),在磁盘的特定区域写入特定数据,在分区中划出一片用于存放文件分配表、目录表(主要用于标识文件的各个block在磁盘中的位置,相当于索引)等用于文件管理的磁盘空间。粗略来说,就是将磁盘进一步按照指定格式划分成block块(4kb)

Linux磁盘分区和挂载_第2张图片

 3、硬件设备文件名

与Window不同的是,Linux磁盘分区之后,并不能直接分配盘符,而是需要先对硬件设备本身进行命名(这个过程是系统自动完成的)。不同的设备有固定的命名规则和样式。如下图所示:

硬件 设备文件名
IDE硬盘 /dev/hd[a-d]
SCSI/SATA/USB硬盘 /dev/sd[a-p]
Virtl/O界面 /dev/vd[a-p] 用于虚拟机内
光驱 /dev/cdrom或/dev/sr0
软盘 /dev/fd[0-1]
打印机(USB) /dev/usb/lp[0-15]
鼠标 /dev/mouse

以两块硬盘为例,展示硬件设备的分区和命名规则:

Linux磁盘分区和挂载_第3张图片

特别注意:因为1、2、3、4分区号是分配给主分区的,所以尽管硬盘b只有两个主分区(sdb1和sdb2),但是其逻辑分区仍然是从5开始编号(sdb5、sdb6和sdb7)。

 4、挂载

将硬件设备名和Linux目录(借用windows的说法是盘符)关联的过程。也就是将硬件设备名挂载到Linux某个目录,之后就可以通过该目录访问硬件设备中的数据。

Linux中必须挂载的两个分区目录包括:根分区(/)和swap分区(作为交换分区,即内存不够用时,临时借用的硬盘上的一部分空间)。

推荐挂载的分区目录:/boot,作为系统启动分区。

二、文件系统结构

硬盘分区之后,Linux文件系统结构示例如下:

1、目录逻辑结构

Linux磁盘分区和挂载_第4张图片

2、目录物理结构

Linux磁盘分区和挂载_第5张图片

由上图可知,物理结构和逻辑结构可能是分裂的。在实际物理存储时,我们会为/boot和/home单独分配一片磁盘空间,作为单独的分区,虽然在逻辑上,/boot和/home都属于/下面的子目录。通俗来说,根目录下的/boot子目录中的数据会存储到sda1分区,/home子目录中的数据则会存储到sda2分区,而根目录下其它子目录文件则会存储到sda3分区。

三、文件系统查看命令

1、df命令

[root@master ~]# df -h

Linux磁盘分区和挂载_第6张图片

重点关注/dev/vda3和/dev/vda2, 表明该云服务器(aliyun)上有两个硬盘分区,然后挂载点(目录)分别是根目录(/)和/boot/efi。

2、du命令

用于查看目录(递归其所有子目录和文件)磁盘占用空间大小:

du [选项] [目录或文件名]

-a 显示每个子文件的磁盘占用量,默认值统计子目录的磁盘占用量

-h 使用习惯单位显示磁盘占用量,如KB,MB或GB等

-s 统计总占用量,而不列出子目录和子文件的占用量

 (1) 显示etc目录下每个子文件夹的磁盘占用量

[root@master ~]# du -h /etc

Linux磁盘分区和挂载_第7张图片

 (2) 显示etc目录总的磁盘占用量

# 查看etc目录下所有文件的大小
[root@master ~]# du -sh /etc
24M	/etc

3、挂载命令

(1)mount基本用法

   显示挂载信息

[root@master /]# mount

Linux磁盘分区和挂载_第8张图片

(2)mount完整命令

mount [-t文件系统][-L 卷标名][-o特殊选项] 设备文件名 挂载点

选项:

-t 文件系统,加入文件系统类型来指定挂载的类型,可以是ext3、ext4、iso9660等文件系统

-L 卷标名:挂载指定卷标的分区,而不是安装设备文件名挂载

-o 特殊选项:可以指定挂载的额外选项

 常用的特殊选项(-o):

Linux磁盘分区和挂载_第9张图片

Linux磁盘分区和挂载_第10张图片

示例:
mount -o remount,noexec /home/

这样设置后,/home/目录下的文件将不具备可执行权限。

(3)mount挂载和卸载示例

>>挂载光盘

1. 挂载

# 1.建立挂载点

[root@master /]# mkdir /mnt/cdrom

# 2.挂载光盘

[root@master /]# mount -t iso9660 /dev/cdrom/ /mnt/cdrom

2. 卸载

umount 设备文件名或挂载点

[root@master /]#umount /mnt/cdrom

>>挂载U盘

# 查看U盘设备文件名

[root@master /]#fdisk -l

# 挂载U盘

[root@master /]#mount -t vfat /dev/sdb1 /mnt/usb/

你可能感兴趣的:(Linux,linux,运维,服务器)