1、磁盘分区

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

未经过分类整理的药箱

有明显分类的药箱

比如:我们有一堆中药材要进行存储,如果我们把所有的药材都放到一个大的箱子里,有一天我要用的时候我可能要把箱子打开一样一样的查找才能找到我想要找的药材。可是如果我们把一个大的箱子分成许多个小的抽屉每个抽屉放一种药材,并且在抽屉上贴上药材的名称,这样找起来就易如反掌了。我们做磁盘分区也就是基于这样的目的。

2、分区的类型

  • 主分区

    最多只能有4个

  • 扩展分区

    最多只能有1个

    主分区加扩展分区最多有4个

    不能写入数据、不能格式化,只能用来包含逻辑分区

  • 逻辑分区

    可以正常分区,可以格式化、可以写入数据。

    当我们需要更多的磁盘分区的时候可以按照下面的方式进行操作。

1

(主)

2

(主)

3

(主)

4
(扩展)

5

(逻辑)

6

(逻辑)

这种分区的限制不是操作系统的限制而是硬盘本身的限制。

分盘分区必须格式化后才可以写入数据。

3、格式化

  • 高级格式化

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

  • 低级格式化

    低级格式化就是将空白的磁盘划分出柱面和磁道,再将磁道划分为若干个扇区,每个扇区又划分出标识部分ID、间隔区GAP和数据区DATA等。低级格式化是一种对硬盘的操作,他会格式化掉磁盘内的所有分区信息。

格式化最主要的目的是写入数据,在高级格式化的时候主要做了两个工作。将硬盘分成等大小的数据块,同时建立一个Inode列表。当读取文件的时候是通过Inode号来找到文件的条款,从而知道这个文件保存在了哪几个数据块当中,然后打开各个数据库块,拼接成需要读取的完整的文件。

4、硬件设备文件名

对于LInux来说硬盘格式化后还需要给每个分区起一个设备文件名,在Linux中所有的硬件设备都有一个设备文件名

硬件

设备文件名

IDE硬盘(133MB/S)

/dev/hd[a-d]

SCSI(200MB/S)/SATA(3代500MB/S)/USB硬盘

/dev/sd[a-p]

光驱

/dev/cdrom或/dev/sr0

软盘

/dev/fd[0-1]

打印机(25针)

/dev/lp[0-2]

打印机(USB)

/dev/usb/lp[0-15]

鼠标

/dev/mouse

可以看下Window和Linux在分区、格式化时有什么不同

Windows

Linux

分区-->格式化-->分配盘符

分区-->格式化-->建立设备文件名(由Linux系统自动指定)-->写入挂载点

分区的设备文件名

针对硬盘的不同分区也由系统来分配设备文件名

/dev/hda1 (IDE硬盘接口上的第一块硬盘的第一个分区)

/dev/sda1 (SCSI/SATA硬盘接口上的第一块硬盘的第一分区)

注:1~4的分区号只能给主分区和扩展分区使用,即使某磁盘的主加扩展没有达到4个那么他的逻辑分区号也是从5开始的,即所有的逻辑分区号多是从5开始的

1

(主)

2

(扩展)

5

(逻辑)

6

(逻辑)

7

(逻辑)

5、挂载

在Linux中把给分区分配盘符的过程称为挂载,与Windows不同的是在Linux中以空的目录名称来作为盘符。理论上任何一个目录都可以作为一个盘符。

  • 必须分区

    (1)/ (根分区)

    (2)swap分区(交换分区,等同于虚拟内存,内存的两倍,不超过2GB)

  • 推荐分区

    /boot (启动分区,200MB)Linux系统的启动目录,为保证系统能够正常启动建议单独分区,避免磁盘空间不足。

6、Linux文件系统结构

在Linux下根目录("/")是目录结构的最顶层,它对应到磁盘上有单独的分区,理论上写入到根目录的数据都会写到根分区上。但是我们可以给根节点的子目录指定自己的分区这样写入到该子目录中的内容就会写入到它所指定的分区中,当然如果子目录没有指定分区还是会写在根分区中。

Linux学习2-Linux分区方式的更多相关文章

  1. Linux学习之三-Linux系统的一些重要配置文件

    Linux学习之三-Linux系统的一些重要配置文件 1.网卡配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0 说明: DEVICE=eth0        ...

  2. Linux学习笔记-Linux系统简介

    Linux学习笔记-Linux系统简介 UNIX与Linux发展史 UNIX是父亲,Linux是儿子. UNIX发行版本 操作系统 公司 硬件平台 AIX IBM PowerPC HP-UX HP P ...

  3. Linux 学习 (一) Linux简介

    Linux达人养成计划 I 学习笔记 Linux 内核官网:www.kernel.org 内核版本说明:主版本.次版本.末版本,如2.6.18 Linux 主要发行版本 RedHat: 服务器领域,部 ...

  4. Linux学习笔记—Linux磁盘与文件系统管理(转载)

    认识EXT2文件系统 文件的系统特性 Linux的正规文件系统为Ext2 文件数据除了文件实际内容外,还包括其他属性(文件权限.文件属性). 文件系统将这两部分数据分别存放在不同的块,权限和属性放在i ...

  5. Linux学习之四-Linux发行版及版本比较

    Linux发行版及版本比较 三大家族: Fedora是基于RHEL,CentOS,Scientific Linux, 和Oracle Linux的社区版本.相比RHEL,Fedora打包了显著的更多的 ...

  6. 【Linux学习】Linux文件系统4—Linux文件硬链接与软连接

    Linux文件系统4-Linux文件硬链接与软连接 inode:索引节点 (连接文件)link 一.文件硬链接 1.Linux文件系统中,inode只相同的文件是硬链接文件 2.不同文件名,inode ...

  7. 【Linux学习】Linux文件系统2—linux常用目录结构、绝对路径、相对路径

    Linux文件系统2-linux常用目录结构.绝对路径.相对路径 一. 常见目录结构总结 Linux目录结构就是"树形结构",常见的目录结构: /bin  系统需要的命令位于此目录 ...

  8. Linux学习(CentOS-7)---磁盘分区(概念、分区方法、分区方案)

    1磁盘分区相关的概念 1.1什么是磁盘 磁盘就是计算机的外部存储器设备,即将圆形的磁性盘片装在一个方的密封盒子里,这样做的目的是为了防止磁盘表面划伤,导致数据丢失.简单地讲,就是一种计算机信息载体,也 ...

  9. Linux学习--第二天--分区、格式化、系统安装、vmware、远程管理工具

    分区 主分区加上扩展分区只能有四个,其中扩展分区只能有一个,扩展分区不能写入数据,不能格式化,只能包含逻辑分区.这是硬盘的限制. 格式化 分为高级与低级.文件系统是高级格式化.低级是硬盘操作. 扩展分 ...

  10. Linux学习之linux目录

    文件系统的类型 LINUX有四种基本文件系统类型:普通文件.目录文件.连接文件和特殊文件,可用file命令来识别. 普通文件:如文本文件.C语言元代码.SHELL脚本.二进制的可执行文件等,可用cat ...

随机推荐

  1. Code Chef GEOCHEAT(凸包+旋转卡壳+随机化)

    题面 传送门 题解 以下记\(S_i=\{1,2,3,...,i\}\) 我们先用凸包+旋转卡壳求出直径的长度,并记直径的两个端点为\(i,j\)(如果有多条直径随机取两个端点) 因为这个序列被\(r ...

  2. Breadth-first Search-690. Employee Importance

    You are given a data structure of employee information, which includes the employee's unique id, his ...

  3. pythonweb框架Flask学习笔记04-模板继承

    # -*- coding:utf-8 -*- from flask import render_template,Flask app=Flask(__name__) @app.route('/hell ...

  4. 逆向工程生成的Mapper.xml以及*Example.java详解

    逆向工程生成的接口中的方法详解 在我上一篇的博客中讲解了如何使用Mybayis逆向工程针对单表自动生成mapper.java.mapper.xml.实体类,今天我们先针对mapper.java接口中的 ...

  5. 【LeetCode】 617. 合并二叉树

    题目 给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠. 你需要将他们合并为一个新的二叉树.合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否 ...

  6. numpy的ravel()和flatten()函数比较

    功能 两个函数的功能都是将多维数组降为一维. 用法 import numpy as np arr = np.array([[1, 2],[3, 4]]) arr.flatten() arr.ravel ...

  7. PriorityQueue实现大顶堆

    在做一道算法时需要使用大顶堆,所以查了一下记录. 使用PriorityQueue实现大顶堆 PriorityQueue默认是一个小顶堆,然而可以通过传入自定义的Comparator函数来实现大顶堆.如 ...

  8. (转)MYSQL线程池总结(一)

    MYSQL线程池总结(一)  原文:http://www.cnblogs.com/cchust/p/4510039.html 线程池是Mysql5.6的一个核心功能,对于服务器应用而言,无论是web应 ...

  9. Linux的帮助文档命令

    Linux的帮助文档命令 1.man page man是manual(操作手册)的简写,使用方式: man [指令] man date 在显示的内容中查找内容: / + 搜索你的关键字 上下左右键来查 ...

  10. Form表单如何可以传递多个值传递List数组对象到后台的解决办法

    举例说明: 后台有一个对象 User ,结构如下: 后台有一个对象 User ,结构如下: public class User{ private String username; private Li ...