由于我装的linux(centos)在虚拟机里,开始分的磁盘空间太小,我就想添加一块新的磁盘,顺便学习学习linux的磁盘操作,下面先贴点关于linux分区的知识

分区概念首先我们需要知道,硬盘分区的存在,是由硬盘的物理特性决定的,并不会因为操作系统的不同而有所改变。请您把一块硬盘想象为一本书……即便您不喜欢读书,您也一定非常熟悉它,所有的书都是相同的,包括我们使用的课本……您肯定非常熟悉一本完整的书,通常包括书名、目录和正文。如果您需要Linux,您首先需要找到一本书名为《linux》的书,书名相当于硬盘中的MBR,也就是主引导纪录。不同的是,MBR可以是几个书名合在一起,类似于《XX合订本》。这部分内容暂时还没有什么实用价值,您只需要大概的了解。而正文,就是硬盘中纪录的数据,这也非常容易理解,且对于安装系统并没有什么影响,所以现在我们来了解目录:目录相当于硬盘中的分区表,书中的每一个章节,相当于硬盘中的一个分区,它起始和结束的页次,都可以在目录中找到。试想,如果阅读一本撕掉目录的书,您将很难找到您想阅读的部分。同样,如果没有分区表,操作系统也不能够在硬盘上定位数据的位置。由于历史的原因,硬盘中的分区表大小受到了限制,最多只可以容纳四个分区(主分区)。如果一本书,它的目录最多只能有四个章节,那不是太可怕了么?很多书的内容远远不止四个章节啊!于是聪明的人们想到了一个变通的办法,就是利用其中的一个章节,来存储其它部分的目录。比如第一章是前言,第二章是其它部分的目录,我们翻到第二章,呵呵,这里是第二个目录,因为只有第一个目录受四个章节的限制,所以这个目录的内容可以非常的详尽。第二个目录就是分区表中的扩展分区了,其中定义的章节,就是硬盘中的逻辑分区,不是很难理解吧?明白了这一点,我们来看看Linux和Windows对于分区不同的表示方法:可能您已经很熟悉Windows了,它使用盘符来表示分区,比如 C: D: E:,每一个分区使用一个盘符来标识,而且顺序可以颠倒, D: 并不一定就是您系统中的第二个分区。(如果您给第二个分区分配最后一个硬盘盘符,把所有的盘符按顺序排列好,并且重装一次系统,您就会理解什么叫作“头疼”了)而在Linux中,分区是这样表示的/dev/hda    /dev/hda1    /dev/hda2    /dev/hda5    /dev/sdb1  [/pre]以 /dev/hda5 为例:因为在Linux中,每一个设备都是用 /dev/ 文件夹下的一个文件来表示,所以 /dev/hda5 中, /dev/ 表示的是根目录下的dev目录,我们来看剩下的部分 hda5 。前两位的字母 hd 表示这是一块IDE硬盘,如果是 sd ,则代表SATA硬盘,或者闪存等外设。第三位的字母 a 表示这是该类型接口上的第一个设备。同理, b、c、d…… 分别代表该类型接口上的第二三四……个设备。例如 hdc 表示第二个IDE接口上的主硬盘(每个IDE接口上允许一个主设备和一个从设备)。第四位的数字 5 ,并不表示这是该硬盘中的第5个分区,而是第一个逻辑分区。因为在Linux中,为了避免不必要的混乱,分区的顺序是不能改变的,分区标识则由它们在硬盘中的位置决定。系统又要为所有可能的主分区预留标识,所以 1-4 一定不会是逻辑分区, 5 则是第一个逻辑分区,以此类推。

LVM 是逻辑盘卷管理器( Logical Volume Manager )的简称,是一种分区管理机制。 LVM 是建立在硬盘 和分区 之上的一个逻辑层,为文件系统屏蔽下层磁盘分区布局,从而提高磁盘分区管理的灵活性。

具体思路是:将若干个磁盘分区连接为一个整块的卷组( Vloume group ),管理员可以在卷组上随意创建逻辑卷( logical volumes ),并进一步在逻辑卷上创建文件系统。

卷的概念

1.       物理卷( Physical Volume , PV )

PV 在 LVM 系统中处于最底层PV 一般是整个硬盘、或硬盘上一个可用分区2.       卷组( Volume Group , VG )建立在 PV 之上,可以由多个 PV 组成一个 VG ,也可以是单个VG 创建之后,可以动态地添加 PV 到 VG 中,在 VG 上一个创建多个 LVM 分区(逻辑卷)一个 LVM 系统中可以包含多个 VG(注释:在这 LVM 系统中你可以把 VG 理解为实际的物理硬盘)3.       逻辑卷( Logical Volume , LV )LV 建立在 LV 之上(类似于 Windows 下的对物理硬盘分区,或者是 Linux 下分出 /boot 、 / 、 Swap 、 /usr 、 /var 、 /tmp 、 /home 等区域)

LV 创建后,大小可以改变在 LV 上可以建立文件系统用于不同的分区,如 /usr 、 /home1.1    物理区域( Physical Extent , PE )每个 PV 又是由 PE 组成                     ←这类似于 Windows 下的分区格式化中的“簇”概念PE 的大小默认为 4MBPE 的大小一旦确定不能改变,同一 LG 中的所有 PV 的 PE 的大小又要一致1.1.1          逻辑区域( Logical Extent , LE )LE 一一对映 PE ,所以 PE 单元为多大,映射到 LE 单元就是多大当 LVM 执行完成之后, LV 及 VG 的相关元数据保留在位于 PV 起始处的卷组描述符区域 Volume Group Descriptor Area         ←这和 Windows 下的分区表是一样的/boot 分区不能位于 LG 中,因为引导装载程序无法从逻辑卷中读取。必须为 /boot 单独分配一个主分区CentOS 系统分区规划:

/boot                 [ext3 ]                 →单独的 /boot 分区                  [256MB]

将剩余的可利用空间创建为一个 PV

将此 PV 加入到名为 VolGroup00 的 VG 中

在此 VG 中分别创建名为 LogVol100 和 LogVol101 和 LogVol102 和 LogVol103 和 LogVol104 和 LogVol105 和 LogVol106 的 LVLV root:            [ext3 ]                 LogVol100         → /                      [20GB]

LV swap:          [ext3 ]                 LogVol101         → swap             [ 物理内存的两倍 ]

LV usr:               [ext3 ]                 LogVol102         → /usr                [20GB]

LV tmp:              [ext3 ]                 LogVol103         → /tmp              [10GB]

LV var:               [ext3 ]                 LogVol104         → /var                [10GB]

LV home:           [ext3 ]                 LogVol105         → /home           [20GB]

(注意:如 LogVol100 这样的名称是系统默认分配的,最好别去重命名)

如果以上全部创建完成,并且安装完了系统,可以在 /dev/ 下查看磁盘分区信息,你将会看到类似如下:/dev/VolGropu00/LogVol100/dev/VolGropu00/LogVol101/dev/VolGropu00/LogVol102/dev/VolGropu00/LogVol103/dev/VolGropu00/LogVol104/dev/VolGropu00/LogVol105

挂载分区在Linux系统的安装过程中,您需要选择系统目录的挂载点。我们知道,安装Windows时,我们可以选择把系统安装在哪一个分区,把系统挂载到分区上。而在Linux中则相反,我们要把分区挂载到系统中。当我们使用Windows的安装方式,把系统挂载到分区上,我们就不可能把Windows目录放在C盘,而把MyDocuments目录放到其它分区。您或者出于习惯,或者出于数据安全方面的考虑,通常把文档放到其它分区中。但是Windows下很多软件保存文件的默认目录就是MyDocument 目录,这就比较不方便。在系统安装完成后,我们还是可以将MyDocuments目录转移到其它分区中,不过有点麻烦,可能许多朋友还不知道怎么去做……而任何一种Linux系统时,我们可以在系统安装时就把分区挂载到目录下, /home 目录相当于Windows的 MyDocuments ,我们可以把 /dev/hda5 挂载到此目录下,这样我们往 /home 目录里存东西的时候,其实保存在第一个扩展分区中。如果再一次安装系统,只要把这个分区挂载到 /home 目录下,那么进入新系统就像回家一样,真是太棒了。理论上来讲,您可以将分区挂载到任何目录下面,您可以自定义挂载的路径。但是我们并不推荐您这么作,因为那没有任何意义。系统安装程序向您建议的挂载目录,通常也是我们向您建议的,现在我们来了解一下,这些目录通常都是用来作什么的:/ 根目录,唯一必须挂载的目录。不要有任何的犹豫,选一个分区,挂载它!(在绝大多数情况下,有2G的容量应该是够用了。当然了,很多东西都是×××的)swap 交换分区,可能不是必须的,不过按照传统,并且照顾到您的安全感,还是挂载它吧。它的容量只要大于您的物理内存就可以了,如果超过了您物理内存两倍的容量,那绝对是一种浪费。/home 前面已经介绍过了,这是您的家目录,通常您自己创建的文件,都保存在这里,您最好给它分配一个分区/usr 应用程序目录。大部分的软件都安装在这里。如果您计划安装许多软件,建议您也给它分配一个分区/var 如果您要作一些服务器方面的应用,可以考虑给它分配一个较大的分区/boot 如果您的硬盘不支持LBA模式(我想那不太可能:),您最好挂载它,如果挂载硬盘的第一个分区,应该比较稳妥。一般来说,挂载的分区只要100M大小就足够了

提示

也许您注意到了,Windows中,盘符既用于表示硬件(硬盘上的分区),又用于表示系统中的路径。而Linux中,硬件就是硬件,路径就是路径,不会混淆在一起,简单直接!

linux分区文件 pe,关于linux的磁盘和分区的操作(一)相关推荐

  1. linux中文件链接,关于Linux中文件,链接的一些思考

    在Unix系统中,操作系统为磁盘上的文本与图像,鼠标键盘操作,网络交互等IO操作设计了一组通用API. 使他们被处理的时候可统一用字节流的方式.所以说,除了进程之外,其他的一切均可看做文件. Linu ...

  2. linux命令删除的文件怎么找回来,linux误删文件怎么恢复 linux误删命令行文件怎么恢复...

    linux误删文件怎么恢复 linux误删命令行文件怎么恢复 linux系统是不同于windows系统和mac系统的,它独特的系统操作深受广大网友喜爱.有的朋友在使用linux系统的时候,不小心把一些 ...

  3. Linux数据文件自动迁移,linux下增加磁盘改变指定文件路径分区挂载点和迁移数据...

    Centos7 系统上原有目录/data 挂载根目录下,空间有点小,我们需要把/data目录挂载到另一个磁盘,同时把数据迁移. 1.查看分区情况 fdisk -l 2.查看路径对应分区情况 df -l ...

  4. linux 的文件软链接隐藏,Linux inode及硬链接软链接详解

    Linux inode及硬链接软链接详解 York • 2020 年 09 月 28 日 Loading... 操作系统的文件数据除了实际内容之外,通常含有非常多的属性,例如 `Linux`操作系统的 ...

  5. linux 识别文件类型,技术|Linux 中 7 个判断文件系统类型的方法

    文件通过文件系统在磁盘及分区上命名.存储.检索以及更新,文件系统是在磁盘上组织文件的方式. 文件系统分为两个部分:用户数据和元数据(文件名.创建时间.修改时间.大小以及目录层次结构中的位置等). 在本 ...

  6. linux修改文件元信息,Linux 文件元数据详细讲解

    已知linux上文件有两种数据: 1.元数据(metadata):用来描述一个文件的特征的系统数据 2.数据:泛指普通文件中的实际数据: 硬盘格式化的时候,操作系统自动将硬盘分成两个区域.一个是数据区 ...

  7. Linux写文件断电保存,linux 写文件操作,异常掉电后,文件损坏丢失(0kb)

    今天调试程序,在做异常断电测试时,再开机发现文件是0 kb, 通过log查询,文件已经写入完成.不明白为何掉电之后文件就没了. 查到下面的博文解决了该问题. 通过 fflush->fsync-& ...

  8. linux删除文件_【Linux实战】Vim编辑器和恢复ext4下误删除的文件

    学神IT教育:XueGod-IT 良心教育 贴心服务 1.  vim主要模式介绍,vim命令模式. 确保系统已经安装了VIM工具 [root@panda ~]# rpm -qf `which vim` ...

  9. linux根文件系统配置,嵌入式Linux的Cramfs根文件系统配置的解决方案

    1 引言 随着电子产业的不断发展,基于 ARM 技术的系统设计和开发平台越来越多地在控制 类.消费类.通信类等电子产品中广泛应用.从软件角度上看,构建基于ARM 技术的linux 系统要涉及到引导加载 ...

最新文章

  1. 国内研究生不小心跟了一个水货导师是什么样的体验?
  2. JavaScript 异常处理
  3. 斯坦福《编程方法学》 笔记与资源
  4. cisco 《连接网络》实验wan综合实验_GNS3实验环境优化与安装
  5. C++学习笔记:(九)输入/输出流
  6. csc.exe已退出,代码为-532462766
  7. MapReduce综合学习含Wordcount案例
  8. 操作系统系统调用_操作系统中的系统调用
  9. 北上深 | 商汤招聘智能视频和数字人算法研究员(全职/实习)
  10. Linux服务器集群系统(二)——LVS集群的体系结构
  11. sqlserver数据库 表中字段值有空格,如何去除空格(例如char (5) 存入数据不足5位时sqlserver会自动补空格)...
  12. 【Java必备技能四】如何使用泛型?
  13. 电子技术基础(三)__具有无关项逻辑函数的化简
  14. python的logo的代码_简单几步,100行代码用Python画一个蝙蝠侠的logo
  15. cpu亲和力总结taskset和setcpu及其他相关
  16. 读书百客:《双双燕·咏燕》赏析
  17. 【读后感】《关键对话》
  18. 【SoC FPGA】外设PIO按键点灯
  19. 阅读摘抄——把时间当做朋友
  20. linux下编译zip,C++中ZipArchive压缩与解压的编译安装与使用

热门文章

  1. 【英语学习】【WOTD】 putsch 释义/词源/示例
  2. Intel 64/x86_64/x86/IA-32处理器标志寄存器详解(5) - 32位EFLAGS - 系统标志
  3. python f.write 保存图片到路径_装逼篇 | 抖音超火的九宫格视频是如何生成的,Python 告诉你答案...
  4. java枚举来实现单例_枚举实现单例模式
  5. PyCharm编辑器的安装
  6. redis 分页_Redis排行榜的设计与实现
  7. U3D性能分析 Profiling
  8. 文艺编程 Literate Programming (原文中英文对照)
  9. WPF特效-粒子动画
  10. 《Python从小白到大牛》第5章 Python编码规范