Linux磁盘分区与挂载

磁盘分区

磁盘分区是使用分区编辑器(partition editor)在磁盘上划分几个逻辑部分。碟片一旦划分成数个分区(partion),不同类的目录与文件可以存储进不同的分区。

分区模式之MBR分区

  • 主分区不超过4个

  • 单个分区容量最大2TB

  • 使用fdisk命令进行分区

  • 使用msdos分区表类型

硬盘使用MBR分区模式分区的特点:

1、主分区:最多只能有4个,且主分区和扩展分区之和最多有4个
2、扩展分区:

  • 最多只能有一个,可以没有
  • 主分区加扩展分区最多有4个
  • 不能写入数据,只能分配逻辑分区来存储数据

2.1、逻辑分区:扩展分区可划分成多个逻辑分区

注:详细可参考硬盘分区表知识——详解硬盘MBR

分区模式之GPT分区

  • 主分区个数“几乎”没有限制,在GPT的分区表中最多可以支持128个主分区,没有主分区和扩展分区的概念

  • 单个分区容量“几乎”没有限制,在GPT的分区模式中,每个分区的大小突破了MBR分区的2TB限制;每个分区大小可以达到18EB=18874368TB

  • GPT的主分区中,不适合安装X86架构的系统(32位操作系统)

  • 使用parted命令可以进行MBR分区和GPT分区

  • 使用parted命令指定gpt分区表类型

格式化

格式化(高级格式化)又称逻辑格式化,它是指根据用户选定的文件系统(如FAT16、FAT32、NTFS、EXT2、EXT3、EXT4等),在磁盘的特定区域写入特定数据,在分区中划出一片用于存放文件分配表、目录表等用于文件管理的磁盘空间。

注:格式化的根本目的是写入文件系统,方便读取和写入数据。

// 使用mkfs命令格式化指定分区
// 1 只能格式化主分区和逻辑分区
// 2 可以格式化msdos和gpt分区方式产生的分区

// 使用mkfs命令有两种方式格式化分区
// 第一种方式
#mkfs.ext3 /dev/sdb2
// 第二种方式
#mkfs -t ext3 /dev/sdb2

分区设备文件名

硬件设备文件名

硬件 设备文件名
IDE硬盘 /dev/hd[a-d]
SCSI/SATA/USB硬盘 /dev/sd[a-p]
光驱 /dev/cdrom或/dev/hdc或/dev/sr0
软盘 /dev/fd[0-1]
打印机(25针) /dev/lp[0-2]
打印机(USB) /dev/usb/lp[0-15]
鼠标 /dev/mouse

硬盘设备文件名

  • /dev/hda1(IDE硬盘接口,速度133Mb/s)
  • /dev/sda1(SCSI硬盘接口,速度200Mb/s、SATA硬盘接口,速度500Mb/s,主流使用SATA串口硬盘)

注:多个IDE硬盘则用/dev/hda、/dev/hdb….同理,多个STAT硬盘用/dev/sda、/dev/sdb、…表示

挂载

必须挂载的分区

  • /(根分区)
  • swap分区(交换分区,4G内存以内,swap大小为内存2倍,4G内存以上,swap大小和内存一样大)

推荐挂载的分区

  • /boot(启动分区,200MB),是硬盘的第一个分区

注1:当根分区和boot分区都在同一分区内时,当整个分区被写满后,机器因没有boot空间而无法启动,所以推荐boot分区单独进行磁盘分区并挂载。

注2:这里的 / 表示根目录,/boot表示根目录下的boot目录,它们都是挂载点,然后把分配好的分区挂载到指定的目录;例如:把分配好200MB的分区挂载到/boot目录,因此可以把这个分区叫做/boot分区。

挂载分区方法

// 临时挂载区分到指定目录
#mount /dev/sdb2 /mnt/imooc
// 卸载挂载分区
#unmount /dev/sdb2

// 永久挂载需要写入/etc/fstab文件
#vim + /etc/fstab
/dev/sdb2 /mnt/imooc ext3 defaults 0 0
// 保存退出即可

添加swap分区的方法

怎么给硬盘添加swap交换分区?

  1. 建立一个普通的Linux分区,主分区或逻辑分区都可以

  2. 修改分区类型的16进制编码

  3. 格式化交换分区

  4. 启用交换分区

// 把linux 分区/dev/sdb3转换为交换分区
#fdisk /dev/sdb3
p // 查看当前分区信息,选择/dev/sdb3这个分区为交换分区
t // 选择一个分区编号3
L // 查看所有分区的编码(Id), 例如:82为Linux swap分区的编码
82 // 输入82,即转换/dev/sdb3的编码82为交换分区编码83
p // 查看分区信息,选择的分区已变成交换分区
w // 写入分区表
// 格式化交换分区
#mkswap /dev/sdb3
// 开启交换分区
#swapon /dev/sdb3
// 查看交换分区
#free
// 关闭交换分区
#swapoff /dev/sdb3

总结

  1. 分区:把硬盘分为小的逻辑分区
  2. 格式化:写入文件系统
  3. 分区设备文件名:给每个分区定义设备文件名
  4. 挂载:给每个分区分配挂载点

磁盘管理

  • df 查看磁盘分区使用状况
    -l 仅显示本地磁盘
    -a 显示所有文件系统的磁盘使用情况,包含比如/proc
    -h 以1024进制计算最合适的单位显示磁盘容量
    -H 以1000进制计算最合适的单位显示磁盘容量
    -T 显示磁盘分区类型
    -t 显示指定类型文件系统的磁盘分区
    -x 不显示指定类型文件系统的磁盘分区
  • du 统计磁盘上的文件大小
    -b 以byte为单位统计文件
    -k 以KB为单位统计文件
    -m 以MB为单位统计文件
    -h 按照1024进制以最适合的单位统计文件
    -H 按照1000进制以最适合的单位统计文件
    -s 指定统计目标

参考

慕课网Linux达人养成计划

你可能感兴趣的:(Linux磁盘分区与挂载)