深入分析Linux分区基础

系统 Linux
Linux分区对于初学Linux的人有点难以理解,这里就把学习Linux分区一点基础的东西拿出来给大家分享一下,帮助初学者理解Linux分区。

Linux分区在初学Linux时可能会因为windows的影响而搞得很迷惑,因为windows只承认一个主分区。这里先介绍一下Linux分区概念而后开始试着对Ubantu Linux进行一下分区,加深对Linux分区的理解。

一、Linux分区概念

首先介绍一下linux中的分区概念,这个可是把一开始学习的我害苦了。在 Linux 中规定,每一个硬盘设备最多能有 4 个主分区(其中包含扩展分区)构成,任何一个扩展分区都要占用一个主分区号码,也就是在一个硬盘中,主分区和扩展分区一共最多是 4 个。对于早期的 DOS 和 Windows(Windows 2000 以前的版本),系统只承认一个主分区,可以通过在扩展分区上增加逻辑盘符(逻辑分区)的方法,进一步地细化分区。

主分区的作用就是计算机用来进行启动操作系统的,因此每一个操作系统的启动,或者称作是引导程序,都应该存放在主分区上。这就是主分区和扩展分区及逻辑分区 的***区别。我们在指定安装引导 Linux 的 bootloader 的时候,都要指定在主分区上,就是***的例证。

Linux规定了主分区(或者扩展分区)占用 1 至 16 号码中的前 4 个号码。以***个 IDE 硬盘为例说明,主分区(或者扩展分区)占用了 hda1、hda2、hda3、hda4,而逻辑分区占用了 hda5 到 hda16 等 12 个号码。因此,Linux 下面每一个硬盘总共最多有 16 个分区。

对于逻辑分区,Linux 规定它们必须建立在扩展分区上(在 DOS 和 Windows 系统上也是如此规定),而不是主分区上。因此,我们可以看到扩展分区能够提供更加灵活的分区模式,但不能用来作为操作系统的引导。

以前对这些概念不熟,分区上走了很多弯路。那么,到底什么样是一个好的分区方案,我认为见仁见智,我是这样分的。原则上/ 和/home基本上***是要单独挂载两个分区,因为home可以看成是windows中的my document,自己个人资料多的话home要大一些。/小一点无所谓,据说至少2G,我也没有试验过。其他的诸如/tmp和/var由于活动文件特别多,为了避免他们的文件碎片对其他区的影响,***他们挂一个区。***/opt主要安装大型软件,如果有多余的分区就给他挂一个吧。

二、开始分区

ok, 我就这样看,首先分一个100M的主分区出来,挂载boot。grub启动时需要的文件都在/ b o o t 目录。这样就算工作分区出了问题,只要这个分区没有问题,同样可以启动。因此***的办法就是专门为根文件分一个区,大小一般最多64M,我为了保险给了 100M。

之后的分区全部以扩展分区形式存在,扩展分区下很多逻辑分区。

首先创建一个交换分区,大小是无力内存的一倍到两倍大。如果你的内存和我一样是1G,就划1G好了。事实上基本用不到这么大。分区格式记着改成linux-swap。

然后创建一个尽量大的分区,给/usr,因为这里存放有大部分的系统软件,包括X Server等图形界面程序。我分了20G。

接下来创建/home的挂载分区。考虑到我的工作文档比较多,源代码和程序也经常放到这里,所以给了10G。

其他的诸如tmp,var等来说,单用户工作机是不用考虑的。当然不知道我的机器以后会不会有服务器应用,我还是给var分了2G的空间。

其他空间就全部挂载给/。虽然一般2G就够了,但是多多益善么。

注意:很多时候,如果你使用了ubuntu光盘自带的安装工具分区,会出现很多问题。如果遇到问题过不去,推荐两个办法:

1 在live CD的环境中,在终端下直接用sudo fdisk /dev/xxx

来分区,然后w保存后reboot,之后再进安装工具,手工编辑注册表时它认得的就是你编辑的分区表,不用修改直接下一步即可。

2 你也可以同样用livecd的fdisk分好区后,用光盘上的livecd

installer程序,在命令行下安装。不过这个安装程序只需要你挂载/和swap。那么其他分区怎么办呢?可以先在分好,也可以安装完系统再分。如果将其他分区挂载到希望的目录下?举个例子。如果你想把/

home/user挂载到新的sda8分区下,可以这样做:

首先,将/dev/sda8 mount到 /mnt/sda8中。如果没有这个目录就自己mkdir。

然后,cp -R /home/user/* /mnt/sda8/user ,和cp -R /home/user/.* /mnt/sda8/user

***修改/etc/fstab,增加一行/dev/sda8 /home ext3 defaults 0 2(参数自己确定)即可。

到这里大家对Linux分区的相关知识是否有了一个全面的了解。

【编辑推荐】

  1. 详细剖析Linux进程调度时机
  2. 详细解析Linux scp命令的应用
  3. 怎么检查Linux安全漏洞
  4. 详细介绍Linux man命令的使用方法
  5. 剖析Linux文件编码的查看及修改
责任编辑:小霞 来源: 互联网
相关推荐

2009-07-03 11:14:57

2010-09-07 14:21:22

PPPoE协议

2022-04-12 08:30:45

TomcatWeb 应用Servlet

2011-03-23 11:01:55

LAMP 架构

2009-12-21 15:58:08

路由器基础知识

2009-12-11 09:42:54

Linux内核源码进程调度

2009-12-11 09:47:23

Linux内核源码进程调度

2023-02-01 08:13:30

Redis内存碎片

2011-09-01 13:51:52

JavaScript

2009-12-14 14:50:46

Ruby传参数

2009-06-10 18:12:38

Equinox动态化OSGi动态化

2009-12-16 16:39:01

Visual Stud

2022-08-30 07:00:18

执行引擎Hotspot虚拟机

2021-10-29 16:36:53

AMSAndroidActivityMan

2018-10-25 15:24:10

ThreadLocal内存泄漏Java

2021-04-13 12:55:06

SpringMVC解析器接口

2015-08-03 09:54:26

Java线程Java

2018-12-18 10:11:37

软件复杂度软件系统软件开发

2011-09-13 09:08:22

架构

2020-12-07 06:23:48

Java内存
点赞
收藏

51CTO技术栈公众号