Linux目录结构、Linux分区大小、挂载点和如何分区

二.Linux手动分区标准及建议: 1. boot分区(标准分区):一般300Mb左右作用:引导分区,包含了系统启动的必要内核文件,即使根分区损坏也能正常引导启动,一般这些文件所占空间在200M以内。分区建议:分区的时候可选100M-500M之间,如果空间足够用,建议分300-500M。避免由于长期使用的冗余文件塞满这个分区。分区格式:建议ext4,可按需求更改。2. /boot/efi分区:一般200M左右 作用:对于GPT分区表(UEFI启动模式),efi分区是必须的,它用来存放操作系统的引导器(loader)和启动操作系统所必需的引导文 阅读详情

一、关于硬盘种类、物理几何结构及硬盘容量、分区大小计算;

1、硬盘种类、物理几何结构 
硬盘的种类主要是SCSI 、IDE 、以及现在流行的SATA等;任何一种硬盘的生产都要一定的标准;随着相应的标准的升级,硬盘生产技术也在升级;比如 SCSI标准已经经历了SCSI-1 、SCSI-2、SCSI-3;其中目前咱们经常在服务器网站看到的 Ultral-160就是基于SCSI-3标准的;IDE 遵循的是ATA标准,而目前流行的SATA,是ATA标准的升级版本;IDE是并口设备,而SATA是串口,SATA的发展目的是替换IDE;硬盘的物理几何结构是由盘、磁盘表面、柱面、扇区组成,一个张硬盘内部是由几张碟片叠加在一起,这样形成一个柱体面;每个碟片都有上下表面;磁头和磁盘表面接触从而能读取数据;

2、硬盘容量及分区大小的算法; 
我们通过fdsik -l 可以发现如下的信息:

Disk /dev/hda: 80.0 GB, 80026361856 bytes 
255 heads, 63 sectors/track, 9729 cylinders 
Units = cylinders of 16065 * 512 = 8225280 bytes 
   Device Boot      Start         End      Blocks   Id  System 
/dev/hda1   *           1         765     6144831    7  HPFS/NTFS 
/dev/hda2             766        2805    16386300    c  W95 FAT32 (LBA) 
/dev/hda3            2806        9729    55617030    5  Extended 
/dev/hda5            2806        3825     8193118+  83  Linux 
/dev/hda6            3826        5100    10241406   83  Linux 
/dev/hda7            5101        5198      787153+  82  Linux swap / Solaris 
/dev/hda8            5199        6657    11719386   83  Linux 
/dev/hda9            6658        7751     8787523+  83  Linux 
/dev/hda10           7752        9729    15888253+  83  Linux

其中 heads 是磁盘面;sectors 是扇区;cylinders 是柱面;每个扇区大小是 512byte,也就是0.5K;通过上面的例子,我们发现此硬盘有 255个磁盘面,有63个扇区,有9729个柱面;所以整个硬盘体积换算公式应该是: 
磁面个数 x 扇区个数 x 每个扇区的大小512 x 柱面个数 = 硬盘体积 (单位bytes) 
所以在本例中磁盘的大小应该计算如下: 255 x 63 x 512 x 9729 = 80023749120 bytes 提示:由于硬盘生产商和操作系统换算不太一样,硬盘厂家以10进位的办法来换算,而操作系统是以2进位制来换算,所以在换算成M或者G 时,不同的算法结果却不一样;所以我们的硬盘有时标出的是80G,在操作系统下看却少几M;上面例子中,硬盘厂家算法 和 操作系统算数比较:硬盘厂家: 80023749120 bytes = 80023749.120 K = 80023.749120 M (向大单位换算,每次除以1000) 
操作系统: 80023749120 bytes = 78148192.5 K = 76316.594238281 M (向大单位换算,每次除以1024)我们在查看分区大小的时候,可以用生产厂家提供的算法来简单推算分区的大小;把小数点向前移动六位就是以G表示的大小;比如 hda1 的大小约为 6.144831G ;

二、关于硬盘分区划分标准及合理分区结构; 
1、硬盘分区划分标准 
硬盘的分区由主分区、扩展分区和逻辑分区组成;所以我们在对硬盘分区时要遵循这个标准;主分区(包括扩展分区)的最大个数是四个,主分区(包含扩展分区)的个数硬盘的主引导记录MBR(Master Boot Recorder)决定的,MBR存放启动管理程序(GRUB,LILO,NTLOARDER等)和分区表记录。其中扩展分区也算一个主分区;扩展分区下可以包含更多的逻辑分区;所以主分区(包括扩展分区)范围是从1-4,逻辑分区是从5开始的;比如下面的例子:

   Device Boot      Start         End      Blocks   Id  System 
/dev/hda1   *           1         765     6144831    7  HPFS/NTFS 
/dev/hda2             766        2805    16386300    c  W95 FAT32 (LBA) 
/dev/hda3            2806        9729    55617030    5  Extended 
/dev/hda5            2806        3825     8193118+  83  Linux 
/dev/hda6            3826        5100    10241406   83  Linux 
/dev/hda7            5101        5198      787153+  82  Linux swap / Solaris 
/dev/hda8            5199        6657    11719386   83  Linux 
/dev/hda9            6658        7751     8787523+  83  Linux 
/dev/hda10           7752        9729    15888253+  83  Linux

通过这个例子,我们可以看到主分区有3个,从 hda1-hda3 ,扩展分区由 hda5-hda10 ;此硬盘没有主分区4,所以也没有显示主分区hda4 ;但逻辑分区不可能从4开始,因为那是主分区的位置,明白了吧;

2、硬盘设备(包括移动存储设备)在Linux或者其它类Unix系统的表示; 
IDE 硬盘在Linux或者其它类Unix系统的一般表示为 hd* ,比如hda、hdb ... ... ,我们可以通过 fdisk -l 来查看;有时您可能只有一个硬盘,在操作系统中看到的却是 hdb ,这与硬盘的跳线有关;另外hdc 大多表示是光驱设备;如果您有两块硬盘,大多是 hda和hdb。在这方面说的太多也无用,还是以fdisk -l 为准为好; SCSI 和SATA 硬盘在Linux通常也是表示为 sd* ,比如 sda 、sdb ... ... 以fdisk -l 为准移动存储设备在linux表示为 sd* ,比如 sda 、sdb ... ... 以fdisk -l 为准

3、合理的规划分区; 
关于一个磁盘的分区,一个磁盘应该有四个主分区,其中扩展也算一个主分区;存在以下情况: 
1)分区结构之一:四个主分区,没有扩展分区;

[主|分区1] [主分|区2] [主|分区3] [主|分区4]

这种情况,如果您想在一个磁盘上划分五个以上分区,这样是行不通的; 
三个主分区 一个扩展分区;

[ 主 | 分区1 ] [ 主 | 分区2 ] [ 主 | 分区3 ] [扩展分区]

|

[逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...

这种情况行得通,而且分区的自由度比较大;分区也不受约束,能分超过5个分区;这只是举一个例子; 
2)最合理的的分区方式; 
最合理的分区结构:主分区在前,扩展分区在后,然后在扩展分区中划分逻辑分区;主分区的个数+扩展分区个数要控制在四个之内;比如下面的分区是比较好的;

[主|分区1] [主|分区2] [主|分区3] [扩展分区]

|

[逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...

[主|分区1] [主|分区2] [扩展分区]

|

[逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...

[主|分区1] [扩展分区]

|

[逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...

最不合理的分区结构: 主分区包围扩展分区;比如下面的;

[主|分区1] [主|分区2] [扩展分区] [主|分区4] [空白未分区空间]

|

[逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...

这样 [主|分区2] 和 [主|分区4] 之间的 [扩展分区] 是有自由度,但[主|分区4]后的[空白未分区空间]怎么办?除非把主分区4完全利用扩展分区后的空间,否则您想在主分区4后再划一个分区是不可能的,划分逻辑分区更不可能; 虽然类似此种办法也符合一个磁盘四个主分区的标准,但这样主分区包围扩展分区的分区方法实在不可取;我们根据这个标题,查看一下我们的例子,是不是符合这个标准呢?

   Device Boot      Start         End      Blocks   Id  System 
/dev/hda1   *           1         765     6144831    7  HPFS/NTFS 
/dev/hda2             766        2805    16386300    c  W95 FAT32 (LBA) 
/dev/hda3            2806        9729    55617030    5  Extended 
/dev/hda5            2806        3825     8193118+  83  Linux 
/dev/hda6            3826        5100    10241406   83  Linux 
/dev/hda7            5101        5198      787153+  82  Linux swap / Solaris 
/dev/hda8            5199        6657    11719386   83  Linux 
/dev/hda9            6658        7751     8787523+  83  Linux 
/dev/hda10           7752        9729    15888253+  83  Linux

本文介绍Linux常用分区挂载点常识以及桌面、服务器分区挂载点的推荐配置,当然这个配置是天缘自己写的,分区大小这个话题是仁者见仁智者见智,欢迎大家一起交流这个话题,比如WEB服务、邮件服务、下载服务等,我们一起交流哪种类型服务下某挂载点应该加大就可以了,至于是否独立就看个人的了。

一、Linux分区挂载点介绍

Linux分区挂载点介绍,推荐容量仅供参考不是绝对,跟各系统用途以及硬盘空间配额等因素实际调整:

分区类型

介绍

备注

/boot

启动分区

一般设置100M-200M,boot目录包含了操作系统的内核和在启动系统过程中所要用到的文件。

/

根分区

所有未指定挂载点的目录都会放到这个挂载点下。

/home

用户目录

一般每个用户100M左右,特殊用途,比如放大文件也可再加上G。分区大小取决于用户多少。对于多用户使用的电脑,建议把/home独立出来,而且还可以很好地控制普通用户权限等,比如对用户或者用户组实行磁盘配额限制、用户权限访问等。

/tmp

临时文件

一般设置1-5G,方便加载ISO镜像文件使用,对于多用户系统或者网络服务器来也有独立挂载的必要。临时文件目录,也是最常出现问题的目录之一。

/usr

文件系统

一般设置要3-15G,大部分的用户安装的软件程序都在这里。就像是Windows目录和Program Files目录。很多Linux家族系统有时还会把/usr/local单独作为挂载点使用。

/var

可变数据目录

包含系统运行时要改变的数据。通常这些数据所在的目录的大小是要经常变化的,系统日志记录也在/var/log下。一般多用户系统或者网络服务器要建立这个分区,设立这个分区,对系统日志的维护很有帮助。一般设置2-3G大小,也可以把硬盘余下空间全部分为var。

/srv

系统服务目录

用来存放service服务启动所需的文件资料目录,不常改变。

/opt

附加应用程序

存放可选的安装文件,个人一般把自己下载的软件资料存在里面,比如Office、QQ等等。

swap

交换分区

一般为内存2倍,最大指定2G即可

  

以下为其它常用的分区挂载点

/bin

二进制可执行目录

存放二进制可执行程序,里面的程序可以直接通过命令行调用,而不需要进入程序所在的文件夹。

/sbin

系统管理员命令存放目录

存放标准系统管理员文件

/dev

存放设备文件

驱动文件等

...

 

不再介绍...

当然上面这么多挂载点,实际上是没有比较每个目录都单独进行挂载,我们只需要根据自己的实际使用需要对个别目录进行挂载,这样系统结构看起来也会精简很多。

一般来讲Linux系统最少的挂载点有两个一个是根挂载点/,另一个是swap,虽然swap也可以采用其他方式类似方式替代,但从使用角度,天缘认为没这个必要,把swap单独设置一个挂载点似乎对Linux系统的标准性更好支持。

二、Linux系统桌面、服务器分区推荐方案

下面以80G独立硬盘安装Ubuntu为例,列一下简单的分区方案。

1、普通桌面用户推荐分区方案(示例:80G桌面用户):

clip_image002

2、服务器用户推荐分区方案一(示例:80GWEB服务器用户,用户程序与系统程序合用usr):

clip_image004

2、服务器用户推荐分区方案二(示例:80GWEB服务器用户,用户程序与系统程序分用opt和usr):

clip_image006

分区方案关键点:

——大数据库一般要加大/usr挂载点

——多用户、下载类、多存储文件等要加大/home挂载点

——文件小,用户多要注意/tmp和/var挂载点大小

注:以上资料全互联网上搜集

Linux系统简介,系统分区和目录结构详解 1. Linux系统简介 (1)Linux系统的基本认识 Linux 系统是一套免费使用和自由传播的类 Unix 操作系统(主要用在服务器上),是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX 工具软件、应用程序和网络协议。它支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多... 阅读详情

相关推荐

Linux 磁盘划分规则,如何规范的划分,比如300G, 900G,1T, 2T都是如何划分比较好。

Linux 磁盘划分规则,如何规范的划分,比如300G, 900G,1T, 2T都是如何划分比较好。

leibaiqing的专栏 8018

介绍Linux目录结构 & Linux分区大小、挂载点 和如何分区

一、关于硬盘种类、物理几何结构及硬盘容量、分区大小计算; 1、硬盘种类、物理几何结构硬盘的种类主要是SCSI 、IDE 、以及现在流行的SATA等;任何一种硬盘的生产都要一定的标准;随着相应的标准的升级,硬盘生产技术也在升级;比如 SCSI标准已经经历了SCSI-1 、SCSI-2、SCSI-3;其中目前咱们经常在服务器网站看到的 Ultral-160就是基于SCSI-3标准的;IDE 遵循的是A...

杨泽博客 609

C++总结笔记

/ ++操作 这是因为定义的数组,申请的是连续的内存空间,当ptr++(ptr是int类型的指针变量),地址空间向后偏移是以int类型的大小为单位进行偏移的,相当于int类型数组元素的向后偏移。使用场景:它是最通用的转换形式,用于将一种类型转换为另一种类型,例如基本数据类型的转换(如 float 转 int),指向基类的指针或引用转为指向派生类的指针或引用等。在派生类被调用时会调用派生类中的函数,不会调用基类中的被重写的函数(基类中的函数需要加上virtual才可以,即基类中的函数是虚函数)。

weixin_50890461的博客 5233

linux du命令

linux du命令

我喂自己袋盐 2318

FREERTOS+LWIP+IAP实现TCP、HTTP、网页访问并固件升级、更新配置 (三)lwip实现httpd服务并在web访问

在前两篇文章中配置freeRTOS和,并实现了TCP、UDP的通信协议,现在终于轮到重头戏lwip的httpd服务,LWIP官方例程中是有很多自带的网页的,但是远远不够满足实际项目的使用需求,因此我也是踩了很多坑,从前端网页制作,到网络通信的实现,到后端数据处理,从头开始学起,也是学习到了很多没接触过的东西,本章将搭建LWIP的HTTP服务使得浏览器可以访问WEB。

wangjiaheng0716的博客 2963

华为OD 面试手撕代码真题【判断链表是否有环】

华为OD 面试手撕代码真题【判断链表是否有环】

MISAYAONE的博客 7225

如何在linux系统上找到占用硬盘空间最大的文件

如果你更喜欢使用图形界面来查找占用空间最大的文件,你可以使用诸如Baobab、Filelight、ncdu等图形化工具。这些工具可以可视化地显示文件和目录的大小,并帮助你找到占用空间最大的文件。无论你选择哪种方法,这些命令和工具都可以帮助你快速找到占用硬盘空间最大的文件,从而进行磁盘空间管理和优化。在Linux系统上,有多种方法可以找到占用硬盘空间最大的文件。该命令将递归地查找指定目录下的所有文件,使用。这将显示当前目录下占用空间最大的前5个文件(包括子目录)。命令用于计算当前目录下所有文件和目录的大小,

linux_tcpdump的博客 5459

AUTOSAR SHE 密钥更新协议

依赖内存槽的使用用例,内存槽有不同的保护协议。M2是新的计数值C_ID‘,相应的标志位F_ID',0填充第一个块,以及新的密钥K_ID'的组合的CBC算法加密的消息。例如,我要更新一个MASTER_ECU_KEY, 那么参考上表,我需要知晓Non-volatile的MASTER_ECU_KEY (即授权密文为MASTER_ECU_KEY自己的密文).内存的更新协议分为两部分,第一部分是实际内存更新到发送一个秘密且真实的key到SHE,然后第二部分为验证,即提供给后台一个key更新成功的证据。

weixin_46481662的博客 3274

AC/DC电源模块选型与故障排查实战指南

AC/DC电源转换是嵌入式系统与工业设备可靠运行的基础环节,其本质远超简单整流稳压——涉及电网适应性、负载动态响应、纹波噪声抑制及热管理等多维约束。理解输入电压范围、负载调整率、纹波噪声(Ripple & Noise)、效率曲线与保护机制等核心参数,是规避MCU复位、ADC误采样、LED频闪等典型故障的关键。尤其在电机驱动、医疗监测、户外工控等对供电洁净度与稳定性要求严苛的场景中,纹波噪声超标与温升失控常成为系统失效的隐性诱因。本文聚焦真实工程约束下的AC/DC模块选型逻辑、PCB级物理实现解析与热风枪难拆

weixin_34417200的博客 457

ABAP Bits and Bytes 完全参考,理解内存、字节、位运算与类型解释

ABAP开发中业务代码与底层字节处理的差异:业务层关注采购订单、会计凭证等语义信息,而接口开发需处理十六进制、位运算等底层操作。文章通过整数变量示例说明同一段字节在不同类型解释下会呈现不同值,并介绍x类型、位运算及类型转换的实际应用。这些知识在文件接口、加密传输等场景中尤为重要,开发者需注意字节序、编码等问题。建议将底层协议处理与业务逻辑分离,以保持代码清晰和可维护性。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 141

Spark Catalog详解

旁边的实习生说:我想要用spark代码中对hive库中的内部表和外部表进行删除(包括数据),咋感觉网上搜了一圈都找不到解决方案啊,spark这么鸡肋吗?我:你应该静下心来好好把spark基础知识进行全面学习。实习生:难道spark有这功能,而我没有学习过?咋弄啊?我:学习一下Spark Catalog。实习生:啥是Catalog啊?Spark Catalog是Spark SQL中的一个元数据管理组件,它提供了一个集中化的存储和查询表、视图和函数的位置。

SunnyRivers 1813

介绍Linux目录结构 & Linux分区大小、挂载点 和如何分区

一、关于硬盘种类、物理几何结构及硬盘容量、分区大小计算; 1、硬盘种类、物理几何结构 硬盘的种类主要是SCSI 、IDE 、以及现在流行的SATA等;任何一种硬盘的生产都要一定的标准;随着相应的标准的升级,硬盘生产技术也在升级;比如 SCSI标准已经经历了SCSI-1 、SCSI-2、SCSI-3;其中目前咱们经常在服务器网站看到的 Ultral-160就是基于SCSI-3标准的;IDE

观千剑而后识器,操千曲而后晓声。 1679

SAP 费用化采购订单简介

费用性采购的核心特点费用性采购的流程费用性采购的优势适用场景业务场景前台操作1、创建成本中心---KS012、创建采购订单---ME21N3、采购订单审批---ME29N4、采购订单收货---MIGO5、查看成本中心费用---S_ALR_870136116、控制费用化的采购订单自动带出科目和成本中心SAP费用性采购(Expense Procurement)指的是企业在采购过程中,直接将采购的物料或服务成本计入费用科目,而不是记入库存账户的采购行为。

我小时候很黑的博客 2012

【转】介绍Linux目录结构 & Linux分区大小、挂载点 和如何分区

为什么80%的码农都做不了架构师?>>> ...

weixin_34321977的博客 108

PyTorch实战(4)——卷积神经网络(Convolutional Neural Network,CNN)

卷积神经网络 (Convolutional Neural Network, CNN) 是一种广泛应用的深度学习模型。通过参数共享、局部感知和空间结构等优势,能够更好地处理图像数据,并在图像识别、目标检测和图像生成等任务中展现出强大的能力。在本节中,介绍了卷积的计算方法以及卷积神经网络的基本组件,并使用 PyTorch 构建了卷积神经网络以深入了解其工作原理。

盼小辉丶的博客 1万+

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

上一篇: 图解TCP三次握手和连接终止
下一篇: 给定一个字符串,统计每个字符串出现的频率,并排序
SpaceXFalcon9
博客等级 码龄16年 5粉丝 17原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值