上一次谈完了硬盘与分区的基础知识,下面谈一下Linux如何管理分区。

Linux管理硬件和windows完全不同。任何东西(包括硬件)在Linux看来都是文件设备,有字符和二进制形式的设备。如打印机、键盘都是字符设备,打印机、光驱是块设备。当成文件处理的好处就是编程简单,只需针对文件编程就可以了。

在Linux中,机器中所有设备叫什么名都是固定的。Linux中硬盘的分区叫什么名字,取决于硬盘插在主板哪个接口上。

Linux没有C盘、D盘、F盘等等,只有一个“/”,代表整个存储空间。

接下来我们启动VMware虚拟机,启动在虚拟机中安装的Linux系统(这里我安装的是CentOS6.5,大家可以根据自己的喜好安装相应版本)。

Linux有一个超级管理员root,和若干个用户账号,自己可以在装机的时候设置一个用户账号,也可以在以后的使用中在系统创建。
建议进入系统的时候,我们使用root管理员账号,因为普通用户会由于权限限制有些功能不能使用。

我们启动之后,有可能进入图形界面(如果装了的话)


我们按Ctrl+Alt+F2进入控制台


按Ctrl+Alt+F2回到图形化界面
当然,在图形化界面依然可以调取控制台,具体方法:

将鼠标从虚拟机切出来,按Ctrl+Alt。

我们就按上面的方法调出Linux的控制台,然后在实际操作中,了解一下各个分区。

1.dev

装所有硬件设备的目录。
我们首先进入跟目录,然后打开dev目录:
[root@localhost Desktop]# cd /
[root@localhost /]# cd dev
[root@localhost dev]#

注:如果不知道当前位于哪一个目录,输入pwd即可:
[root@localhost dev]# pwd
/dev
注:如果不知道当前登录的是哪一个用户,输入who am i即可:
[root@localhost dev]# whoami
root

输入“ls”指令,可以查看当前该文件夹下(目前是dev下)所有文件:
[root@localhost dev]# ls
agpgart          loop4               ram3      tty12  tty41  uinput
block            loop5               ram4      tty13  tty42  urandom
bsg              loop6               ram5      tty14  tty43  usbmon0
bus              loop7               ram6      tty15  tty44  usbmon1
cdrom1           lp0                 ram7      tty16  tty45  usbmon2
cdrw1            lp1                 ram8      tty17  tty46  vcs
char             lp2                 ram9      tty18  tty47  vcs1
console          lp3                 random    tty19  tty48  vcs2
core             MAKEDEV             raw       tty2   tty49  vcs3
cpu              mapper              root      tty20  tty5   vcs4
cpu_dma_latency  mcelog              rtc       tty21  tty50  vcs5
crash            mem                 rtc0      tty22  tty51  vcs6
disk             midi                scd0      tty23  tty52  vcs7
dmmidi           net                 sda       tty24  tty53  vcs8
dvd1             network_latency     sda1      tty25  tty54  vcs9
dvdrw1           network_throughput  sda2      tty26  tty55  vcsa
fb               null                sda3      tty27  tty56  vcsa1
fb0              nvram               sg0       tty28  tty57  vcsa2
fd               oldmem              sg1       tty29  tty58  vcsa3
full             port                shm       tty3   tty59  vcsa4
fuse             ppp                 snapshot  tty30  tty6   vcsa5
hidraw0          ptmx                snd       tty31  tty60  vcsa6
hpet             pts                 sr0       tty32  tty61  vcsa7
hugepages        ram0                stderr    tty33  tty62  vcsa8
hvc0             ram1                stdin     tty34  tty63  vcsa9
input            ram10               stdout    tty35  tty7   vga_arbiter
kmsg             ram11               systty    tty36  tty8   vmci
log              ram12               tty       tty37  tty9   vsock
loop0            ram13               tty0      tty38  ttyS0  zero
loop1            ram14               tty1      tty39  ttyS1
loop2            ram15               tty10     tty4   ttyS2
loop3            ram2                tty11     tty40  ttyS3

可以看到,里面有cpu(中央处理器)、cdrom1(光驱)、raw(内存)等硬件设备的名称,所以以后看Linux的硬件信息就到dev下去看,这就验证了“Linux下的所有硬件设备都是以目录或文件的形式存放”的说法。

2.Linux硬盘的命名规则:

/dev/xxyN
其中xx:
分区名的前两个字母表名分区所在设备的类型,通常是hd(IDE磁盘)或sd(SCSI磁盘)。
y:
这个字母标明分区所在的设备。例如,/dev/hda(第一个IDE磁盘)或/dev/sdb(第二个SCSI磁盘)
N:
最后的数字代表分区。前四个分区(主分区或拓展分区),使用数字1排列到4.逻辑分区从5开始。例如,/dev/hda3是在第一个IDE硬盘上的第三个主分区或拓展分区;dev/sdb6是在第二个SCSI硬盘上的第二个逻辑分区。

扫盲自测题
下面哪一个是第二个IDE驱动器上第四个逻辑分区的设备名称?
A.hdb4
B.hdb8
C.sdb4
D.hdb9

答案:B

3.磁盘分区和mount point(挂载点)

什么是挂载?我们先用一个实例来让大家理解的更深刻:
现在我要访问光盘驱动器的内容。我们之前知道Linux的所有硬件设备都在dev文件夹中存储,很多人可以立马想到在dev下直接访问光盘驱动器:
[root@localhost dev]# cd cdrom1
但是最终会返回:
bash: cd: cdrom1: 不是目录

也就是说,在Linux看来,这是一个整个的设备,不是一个目录。
那我们如何访问这个设备?
把我们实际当中自己建立的目录,和这个设备关联到一起,这个时候就可以把其当成一个文件夹来访问了。

我们一般把硬件对应的目录,放在根路径下面的mnt目录下面:
[root@localhost dev]# cd /mnt
[root@localhost mnt]# ls
下面是空的(如果有东西可能是系统装的)

我们在其下建立一个文件夹,叫cdr:
[root@localhost mnt]# mkdir cdr
[root@localhost mnt]# ls
cdr  
我们可以把cdr目录看成是一个光驱,就要使用挂载来完成。
我们使用mount指令进行挂载,将/dev/cdrom1与mnt/cdr关联起来:
[root@localhost mnt]# mount /dev/cdrom1 /mnt/cdr

关联成功,
然后我们打开cdr,查看光驱的内容:
[root@localhost mnt]# cd cdr
[root@localhost cdr]# ls
EULA GPL CentOS PRM-GPG-KEY TRANS.TBL

取消挂载的操作:
[root@localhost cdr]# cd ..
[root@localhost mnt]# umount /dev/cdrom1

注意:如果提示:
[root@localhost dev]# mount /dev/cdrom /mnt/cdrom
mount: you must specify the filesystem type
处理方法:
虚拟机-〉setting->cd/dvd-〉device status-.connected前面的勾打上

大家是不是对挂载稍微有点理解了,下面是官方解释:
令许多Linux的新用户感到困惑的一个地方是各个分区是如何被Linux操作系统使用及访问的。它在DOS/Windows中相对来说较为简单。每一个分区有一个“驱动器字母”,你用恰当的驱动器字母来指代相应分区上的文件和目录。
这与Linux处理分区以及磁盘存储问题的方法截然不同。其主要区别在于,Linux中的每一个分区都是构成支持一组文件和目录所必须的贮存区的一部分。它是通过挂载(mounting)来实现的,挂载是将分区关联到某一目录的过程。挂载分区使起始于这个指定目录(通称为挂载点,mount point)的贮存区能够被使用。

4.分区介绍

分区方式:自动分区和手动分区
(1)手动分区:
/:根分区
/usr:应用软件存放位置
/home:用户宿主目录的父目录
/var:临时存放文件
/boot:存放启动文件128M is enough
SWAP:交换分区。此分区单独拿出来,把硬盘当内存用,实际上就是一个虚拟内存区域。大小应该是实际物理内存的两倍,可以不建(但是不建议,系统中有些应用程序会默认使用SWAP分区)。Windows中有PAGEFILE.SYS的文件相当于交换分区。

(2)磁盘分区方案
至少两个分区
/分区
SWAP分区

个人桌面分区
/分区
/boot 分区
/usr 分区
SWAP分区
光盘刻录再加一个/tmp分区

3.Linux如何管理分区的更多相关文章

  1. 7.linux磁盘管理 分区 建立文件系统 挂载使用

    一.磁盘管理 分区  建立文件系统  挂载使用   逻辑卷建立  磁盘阵列的建立  磁盘配额设定     fdisk -l       查看磁盘信息     df -Th        查看硬盘对应的 ...

  2. Linux磁盘管理——分区和文件系统

    1.分区类型 (1)主分区:最多只能有四个(主分区加扩展分区一共有四个). (2)扩展分区:最多有一个,是主分区中的其中一个.不能存储数据也不能格式化,必须再分成逻辑分区才能使用. (3)逻辑分区:是 ...

  3. linux 磁盘管理三部曲——(2)管理分区,文件系统类型格式化

    上篇小编给大家讲解了磁盘结构和分区的介绍,这篇小编就给大家演示如何管理分区和文件系统类型格式化. 小编上篇已经提到如何使用磁盘,今天这两步,就是其中很重要的两步.(前几天写的有点急,有点乱,今天又整理 ...

  4. linux磁盘管理与分区 转载

    原文:http://zhengjianglong.leanote.com/post/linux%E7%A3%81%E7%9B%98%E5%88%86%E5%8C%BA 一.基础知识 一块磁盘可以分为多 ...

  5. Linux 磁盘管理及分区

    硬盘结构和基础知识  扇区(Sector)为最小的物理储存单位,每个扇区为512 bytes,将扇区组成一个圆就是磁道(track),不同磁盘的相同磁道组成磁柱(Cylinder),磁柱是分区(par ...

  6. linux 磁盘管理三部曲——(1)磁盘结构,认识分区

    最近小编整理了磁盘管理的相关知识,发现还是挺多的,所有就分了三个部分来给大家分享一下: 1.磁盘结构,认识分区 2.管理分区,文件系统格式化 3.mount挂载,/etc/fstab配置文件 这篇就先 ...

  7. Linux磁盘管理——swap分区

    转自:Linux Swap交换分区设置 对swap分区的误解 一种流行的.以讹传讹的说法是,安装Linux系统时,交换分区swap的大小应该是内存的两倍.也就是说,如果内存是2G,那么就应该分出4G的 ...

  8. linux 磁盘管理2-硬盘分区

    不重启添加硬盘. echo '- - -' > /sys/class/scsi_host/host2/scan       #centos7有效 列出块设备 lsblk 显示块设备列表      ...

  9. 浅谈Linux内存管理机制

    经常遇到一些刚接触Linux的新手会问内存占用怎么那么多?在Linux中经常发现空闲内存很少,似乎所有的内存都被系统占用了,表面感觉是内存不够用了,其实不然.这是Linux内存管理的一个优秀特性,在这 ...

随机推荐

  1. C#时间与时间戳格式互相转化

    C#时间格式转换为时间戳(互转) 时间戳定义为从格林威治时间 1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起至现在的总秒数. using UnityEn ...

  2. 图论--2-SAT--POJ 3905 Perfect Election

    Perfect Election Time Limit: 5000MS         Memory Limit: 65536K Total Submissions: 964         Acce ...

  3. Android EventBus踩坑,Activity接收不了粘性事件。

    注解问题 EventBus 的 粘性事件,可以让 成功注册后的 Activity.Fragment 后再接收处理 这一事件. 但是今晚写代码时,突然发现粘性事件,发送不成功了.??? 具体情况是:我在 ...

  4. visibility: hidden 和 display: none的区别

    相同点: 两者都可以将dom元素隐藏 不同点: 1.display: none 隐藏之后不占用文档流,而visibility: hidden却会占用文档流,如果要在隐藏元素的同时获取其尺寸信息,那就可 ...

  5. Course Selection System ZOJ - 3956 01背包+思维

    Course Selection System ZOJ - 3956 这个题目居然是一个01背包,我觉得好难想啊,根本就没有想到. 这个题目把题目给的转化为  ans = a*a-a*b-b*b 这个 ...

  6. c#实现生成PDF的底层方法

    在用uwp生成pdf的时候,发展此类类库有限,有的也需要钱,我最后实现pdf的底层方法生成pdf,代码如下 private async void GeneratePdf() { var file = ...

  7. 关于redis内存分析,内存优化

    对于redis来说,什么是最重要的? 毋庸置疑,是内存. 一.reids 内存分析 redis内存使用情况:info memory 示例: 可以看到,当前节点内存碎片率为226893824/20952 ...

  8. 【比赛随笔】2020.4.25NOIonline2

    之前许多比赛没有统一记录,可能从这次开始会认真打比赛的博客了. p.s.这里的数据是洛谷上的民间数据. T1 涂色游戏 这题据说是cf的原题,不过作为蒟蒻的我,没有打过. 题目链接在这里 题意分析 这 ...

  9. 2020版Adobe全家桶介绍及免费下载安装

    前言 Adobe公司创建于1982年,是世界领先的数字媒体和在线营销解决方案供应商.公司总部位于美国加利福尼亚州圣何塞.Adobe 的 客户包括世界各地的企业.知识工作者.创意人士和设计者.OEM合作 ...

  10. ip变动时 wordpress 需要修改一个东西。

    搞了大半天,还把mysql 重装了一遍,装的过程中还有这样那样的问题.直到今天总算把网页搞正常了. 主机从6楼搬下来以后,ip就变了.但是很奇怪,用新ip 去访问,能访问,但总觉得很卡的样子.然后会跳 ...