`
zengshaotao
  • 浏览: 792662 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

【Linux学习笔记】分区与目录

 
阅读更多

原文地址:http://www.blogjava.net/pengpenglin/archive/2008/12/01/243810.html

【1. 分区与目录概念理解】


 Linux的分区是物理上的概念,就像我们把一块硬盘分成C:,D:,E:三个区一样,物理上将存储空间分开
 Linux的目录是逻辑上的概念,Linux的目录树实际上是一个分区之间的数据逻辑结构关系,不是物理结构

【2. 分区与目录的关系】


 一个分区必须挂载到一个目录下才能使用。分区可以挂载到任何目录。比如说下面我们看到的例子(以RHEL4为例) 

[root@localhost ~]# df -lh
Filesystem            容量  已用 可用 已用%     挂载点
/dev/sda3             
6.4G  4.8G  1.3G  80%   /
/dev/sda1              99M  
8.4M   86M   9%  /boot
none                    494M  
0      494M   0%  /dev/shm
/dev/hdc              105M  105M     
0  100% /media/cdrom


df命令是用来汇报磁盘文件系统的空间使用情况的,参数l表示本地文件系统,h表示以人可识别的方式表示(实际上就是以M/G单位来表示,而不是纯粹的数字,难以理解)。我们看到上面命令的结果是:

①左边的信息代表了磁盘文件系统分区:/dev/sda1, /dev/sda3等
②右边的信息分别代表了容量,已用空间,可用空间,百分比,挂载点
③特别注意的是挂载点,它就是我们前面所说的将分区挂载到某一个目录的“那个目录”
④我们看到分区sda1挂载到/boot目录下,而分区sda3挂载到根目录/下

这里我们可以这样理解:

分区是真正存放数据的地方,只有一份数据
目录是分区数据的逻辑映射,就像Windows系统中的快捷方式一样
分区的数据可以挂载到任意多个不同目录,这些目录就像不同名的快捷方式,都指向同样的分区数据

例如下面这样:

[root@localhost /]# df -lh
Filesystem            容量  已用 可用 已用% 挂载点
/dev/sda3             
6.4G  4.8G  1.3G  80% /
/dev/sda1              99M  
8.4M   86M   9% /boot
none                  494M     
0  494M   0% /dev/shm
/dev/hdc              105M  105M     
0 100% /media/cdrom

   [root@localhost /]# cd /
[root@localhost /]# ls
bin   dev  home    lib         media  mnt  paul  root  selinux  sys  u01  var
boot  etc  initrd  lost+found  misc   opt  proc  sbin  srv      tmp  usr

   [root@localhost /]# mount /dev/sda1 paul
[root@localhost /]# ls paul
config-
2.6.9-5.EL  initrd-2.6.9-5.EL.img  message     System.map-2.6.9-5.EL
grub               lost+found             message.ja  vmlinuz-
2.6.9-5.EL


可以看到原来/dev/sda1分区是挂载到/boot目录下的,现在我把他也挂载到/paul目录下,这样我们就可以在/paul目录下看到和/boot目录同样的内容了,但实际上数据还是只有一份。

【3. 分区的mount和umount】


 前面我们提到分区必须挂载到某个特定的目录才能使用,那么假如我们把Linux最重要的分区boot分区和根分区/都不挂载到相应的目录,结果会如何呢?

 测试一:卸载/分区

[root@localhost /]# umount /
umount: /: device is busy
umount: /: device is busy


很明显,/分区是不能被umount的。那么boot分区呢?

测试二:卸载boot分区

[root@localhost /]# ls
bin   dev  home    lib         media  mnt  paul  root  selinux  sys  u01  var
boot  etc  initrd  lost+found  misc   opt  proc  sbin  srv      tmp  usr
[root@localhost /]# umount boot
[root@localhost /]#


测试成功,可见boot分区也是可以被umount的,而/实际上代表了硬盘,所以不能被umount。

【4. umount了boot分区还能再正常启动吗】


 前面我们看到了既然boot分区可以被umount掉,那么假如我们umount了boot分区后重启,会不会导致系统启动不了呢?答案是不会。

 我们可以到Linux下的/etc/fstab命令来查看Linux启动时的挂载情况及顺序

[root@localhost boot]# cat /etc/fstab
# This file is edited by fstab-sync - see 'man fstab-sync' for details
LABEL=/                    /                       ext3    defaults       1 1
LABEL=/boot             /boot                  ext3    defaults        1 2
none                       /dev/pts              devpts  gid
=5,mode=620  0 0
none                       /dev/shm             tmpfs   defaults        
0 0
none                       /proc                   proc    defaults        
0 0
none                       /sys                    sysfs   defaults        
0 0
LABEL
=SWAP-sda2    swap                   swap    defaults       0 0

# Beginning of the block added by the VMware software
.host:/                 /mnt/hgfs               vmhgfs  defaults
,ttl=5     0 0

# End of the block added by the VMware software
/dev/hdc                /media/cdrom          auto    pamconsole
,exec,noauto,m anaged 0 0
/dev/fd0                /media/floppy           auto    pamconsole
,exec,noauto,


可以看到在该文件中,已经定义了在启动时默认到/boot目录下去寻找启动文件,所以即便我们把boot分区umount掉了,重启后还是能够正常进入的。它是靠什么自动加载的呢?其实fstab 文件中的 defaults 就包含了 "auto" 功能,除非明确指定 noauto ,否则开机都会自动挂载。

注意:这里的前提条件是不改变fstab文件的内容,如果我们把/boot那一行注释掉了,那么就真的启动不了了。
 

分享到:
评论

相关推荐

    Linux学习笔记(强悍总结值得一看)_linux_linux学习笔记_

    这份"Linux学习笔记(强悍总结值得一看)"是Linux初学者的宝贵资源,也适合有经验的用户作为参考手册。以下是对笔记内容的详细概述: 1. **Linux常用命令**: Linux命令行是其强大的工具,掌握常用命令是Linux学习...

    Linux学习笔记,分区与远程登录

    ### Linux学习笔记:分区与远程登录 #### 一、分区基础 **分区**是指将物理硬盘划分成多个逻辑部分的过程,这些逻辑部分被称为分区。在Linux系统中,正确的分区策略对于系统的稳定运行至关重要。 1. **分区过程**...

    linux学习笔记--很经典

    本篇“Linux学习笔记”详细介绍了Linux的基本目录结构及其各自的功能,这对于初学者理解Linux系统的核心概念非常重要。 #### 二、Linux目录结构解析 1. **/(根目录)** - 根目录是Linux文件系统的起点,所有的...

    linux学习基础笔记

    这份“Linux学习笔记.doc”文档可能会详细讲解以上各点,对于初学者来说是一份非常实用的学习资料。通过深入学习,你可以掌握Linux操作系统的核心技能,为后续的系统管理、开发或运维工作打下坚实基础。

    Linux学习笔记整理

    - 交换分区 (`swap`):当物理内存不足时,Linux会将部分不常使用的内存内容移动到此分区。 6. **网络配置**:可以通过DHCP自动获取IP地址,或者手动配置IPv4地址和子网掩码。 7. **时区设置**:文档中选择了“亚洲/...

    Linux学习笔记

    ### Linux学习笔记 #### 常用命令及命令选项注释 **1. `ls`:显示文件** - `-a`:查看所有文件,包括隐藏文件。 - `-l`:查看详细信息。 - `-h`:人性化显示。 - `-d`:查看目录属性。 示例: ```bash ls -d ...

    Linux学习笔记.docx

    Linux 学习笔记是 Linux 学习的详细笔记整理,分九章,涵盖了 vim 和 vi 编辑器、实用指令、组管理和权限管理、crond 任务调度、Linux 磁盘分区挂载、网络配置、进程管理、服务管理、shell 编程等内容。 1. vi 和 ...

    linux学习笔记 linux学习笔记

    ### Linux学习笔记知识点详解 #### 一、Ubuntu 8.04 学习入门 **知识点1:系统安装与磁盘格式化** - **安装前准备**:在安装Ubuntu 8.04之前,需要准备好相应的安装介质(如光盘或USB启动盘),并确保计算机硬件...

    centos linux学习笔记

    【CentOS Linux学习笔记】 CentOS 是一个基于Linux的开源操作系统,被广泛用于服务器环境。在学习CentOS的过程中,了解其基本操作、安装过程、文件系统管理以及权限控制至关重要。 安装CentOS 5.3时,通常需要通过...

    linux 学习笔记 .

    这只是Linux学习笔记的冰山一角。Linux系统还包括包管理、网络配置、进程管理、权限控制、脚本编程等多个方面。熟练掌握这些基本命令和概念是成为Linux高手的第一步。随着经验的积累,你还可以学习更高级的主题,如...

    马哥linux手写笔记

    【马哥Linux手写笔记】是一份由知名IT教育专家马永亮,即"马哥"编撰的Linux学习资料,这份笔记以其详实、深入和实用的特点深受广大Linux爱好者和学习者的推崇。马哥在业界享有盛誉,他的教学风格以通俗易懂和实战性...

    Linux学习笔记(关于linux系统的一点学习心得)

    ### Linux学习笔记——深入探索Linux系统管理与应用 #### 核心知识点概览: 1. **Linux系统安装与配置** 2. **理解Linux文件系统结构** 3. **关键目录及其重要性** 4. **系统安全与用户管理** 5. **服务配置与管理...

    linux学习笔记纪录

    从给定的文件信息中,我们可以提炼出一系列与Linux系统管理相关的知识点,这些知识点涵盖了Linux基本目录的理解、硬盘分区配置、Red Hat安装过程中的注意事项、以及Linux启动加载器LILO的管理和配置。以下是对这些...

    linux-常用命令学习笔记.pdf

    以上就是Linux系统中一些常用命令的学习笔记。每个命令后面通常可以跟上不同的选项和参数,来满足不同的需求。掌握这些命令,对于Linux系统的日常运维工作至关重要。随着时间的推移,建议持续学习和实践,不断提高对...

    Linux学习笔记完整版

    Linux操作系统学习笔记详细地记录了从基础概念到高级应用的多个方面,...通过上述的详细知识点梳理,可以看出Linux学习笔记完整版涵盖了从基础到高级的丰富内容,适用于不同层次的学习者逐步深入理解Linux操作系统。

Global site tag (gtag.js) - Google Analytics