1、硬盘的接口类型

硬盘的接口一般分为两种,一种是IDE并行接口,一种是SATA串行接口, 在linux上面IDE接口的硬盘被识别为/dev/hd[a-z]这样的设备,其中hdc表示光驱设备,这是因为主板上面一般有两个IDE插槽,一个IDE插槽可以接两个硬盘,而光驱是接着IDE的第二个插槽上面的第一个接口上面。其他诸如SCSI,SAS,SATA,USB等接口的设备在linux识别为/dev/sd[a-z]。

2、linux硬盘的分区

磁盘的分区分为: primary(主分区)、extended(扩展分区)、Logical (逻辑分区)且主分区加上扩展分区的个数小于等于4个。且扩展分区最多只有一个,扩展分区是不能直接在里面写入数据的,扩展分区里面新建逻辑分区才能读写数据。如果看见一个硬盘有很多分区,则其实是在扩展分区里面新建的逻辑分区。

主分区从 sdb1--sdb4

逻辑分区是从 sdb5--sdbN

如果所示linux硬盘分区之间的关系

第一种情况为:四个主分区

第二种情况为:三个主分区+一个扩展分区(扩展分区里面包括逻辑分区)

3、linux上如何实现分区

linux上面实现分区的命令: fdisk

1)fdisk -l [DEVICE]

查看linux某个硬盘的信息 fdisk -l /dev/[hs]d[a-z],不接设备名称,默认是查看所有硬盘的信息。

2)fdisk  DEVICE 可以对硬盘进行分区操作

[root@Redhat5 ~ ~]# fdisk /dev/sda

Command (m for help): m  (输入m查看可以操作的菜单)

Command action

a   toggle a bootable flag

b   edit bsd disklabel

c   toggle the dos compatibility flag

d   delete a partition     //删除一个分区

l   list known partition types  //已知的分区类型列表

m   print this menu

n   add a new partition     //添加一个新的分区

o   create a new empty DOS partition table

p   print the partition table  //打印分区表

q   quit without saving changes  //退出但不保存配置

s   create a new empty Sun disklabel

t   change a partition's system id  //改变一个分区的系统标识

u   change display/entry units     //改变显示/条目单位

v   verify the partition table     //验证分区表

w   write table to disk and exit   //保存退出

x   extra functionality (experts only)

常见linux支持的分区类型为82 swap交换分区、83 linux分区、8e LVM逻辑卷组。

分区修改完成后键入w保存退出。这时分区还不能使用,因为linux的内核还没有识别分区的信息

4、使linux内核识别分区信息

cat /proc/partitions  查看内核识别的分区信息

[root@Redhat5 ~]# cat /proc/partitions

major minor  #blocks  name

8     0  125829120 sda

8     1     104391 sda1

8     2   41945715 sda2

8     3    1052257 sda3

253     0   30703616 dm-0

253     1    5111808 dm-1

让内核重新读取硬件分区表有两个命令

partprobe /dev/sda ------> redhat 5.x ,redhat 6.x需要重启

partx -a /dev/sda5 /dev/sda------->redhat 6.x

内核加载分区信息之后再查看

[root@Redhat5 ~]# cat /proc/partitions

major minor  #blocks  name

8     0  125829120 sda

8     1     104391 sda1

8     2   41945715 sda2

8     3    1052257 sda3

8     4          0 sda4

8     5    1959898 sda5

8     6    3911796 sda6

253     0   30703616 dm-0

253     1    5111808 dm-1

5、格式化分区

格式化分区的命令

mkfs   -t  fstype /dev/part   -t选择格式化的类型,然后是那个分区

mkfs.ext2  /dev/part      格式化为ext2的类型,然后是接那个分区

mkfs.ext3  /dev/part      格式化为ext3的类型,然后是接那个分区

mkfs.ext4  /dev/part      格式化为ext4的类型,然后是接那个分区

mke2fs 比之前几个更加强大的格式化分区的命令

这几个命令之间相关的关系

mkfs -t ext4 = mkfs.ext4 = mke2fs -t ext4

mkfs -t ext3 = mkfs.ext3 = mke2fs -j = mke2fs -t ext3

mkfs -t ext2 = mkfs.ext2 = mke2fs = mke2fs -t ext2

mke2fs (man mke2fs):创建文件类型--->/etc/mke2fs.conf 配置文件

-t:文件类型

-j:相当于 ext3

-b:指定块大小{1024|2048|4096byte},块大小取决cpu对内存页框大小的支持,x86系统默认页

大小是4096,4k

-L: label 设定卷标

-m: #预留给管理使用的块所占的比率  一般用在分区很大的时候,#为数字

1
2
3
4
mke2fs -t ext3 /dev/sda5                     #把分区格式为ext3格式的
mke2fs  -t ext3 -b  2048  /dev/sda5     # 把分区的块改成2048字节,一般用于系统中小文件很多的情况
mke2fs -t ext3 -m 3   /dev/sda5           #把分区预留的空间改为所占总空间的3%,默认为5%,因为当某个分区足够大的时候,可以减少空间
mke2fs -t ext3 -L  DATE   /dev/sda5     #把分区的卷标设置为DATE

tune2fs  命令可以查看分区的详细信息,mke2fs 与 tune2fs的关系和useradd与usermod的关系很类似。mke2fs支持的参数tune2fs大多数都支持,详情请man tune2fs查看相关的帮助。

option

-l: 显示文件系统超级块信息;

-L label:重新设定卷标;

-m #: 调整预留给管理使用的块所占据总体空间的比例;

-r #: 调整预留给管理使用的块个数;

-o:设定挂载默认选项

-O: 设定文件系统默认特性

-E: 调整文件系统的扩展属性

tune2fs不支持-b参数改变块的大小。

tune2fs   -l  /dev/sda5  可以详细查看分区的信息

1
2
3
4
5
6
7
[root@Redhat5 ~]# tune2fs -l /dev/sda5 | grep "^Block size"     //显示sda5分区块的大小
Block size:               4096
[root@Redhat5 ~]# tune2fs -l /dev/sda5 | grep "^Reserved"      //显示sda5预留空间
Reserved block count:     24498
Reserved GDT blocks:      119
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
1
2
tune2fs -L DATE /dev/sda5   #修改卷标
tune2fs -m 3 /dev/sda5       #修改预留给管理使用的块所占据总体空间的比例

e2label:显示或设定卷标

1
e2label /dev/sda5 MYDATE

blkid :显示设备的UUID及文件系统类型,及卷标

6、挂载

mount 挂载------>显示的是/etc/mtab文件里面的内容

mount [-t fstype]     DEVICE                        MOUNT_POINT

命令                           设备                                  挂载点

mount [-t fstype]    LABEL="卷标"              MOUNT_POINT  -->e2label查看标签

mount [-t fstype]     UUID="UUID"            MOUNT_POINT ---->blkid可以查看UUID

options:

    -o:用于指定挂着选项,常用的挂着选项,选项有很多用逗号隔开

    ro:只读挂载

    rw:读写挂载(默认)

    noatime:关闭更新访问时间

    auto:是否能够由"mount -a"挂载

    defaults:相当于rw, suid, dev, exec, auto, nouser, async.

    sync:同步

    async:异步

    noexec:不容易设备中的二进制直接运行

   remount:重新挂载

   loop:本地回环设备:  挂载系统已经存在的镜像

   -t:

   -v:verbose 显示详细信息

   -n:挂载文件系统时,不更新/etc/mtab文件

   -r:只读挂载相当于"-o ro"

挂载的几种方式

显示系统已经挂载的文件

挂载分区sda5到/mnt/sda5目录下

[root@Redhat5 ~]# mkdir /mnt/sda5       #创建一个挂载目录

[root@Redhat5 ~]# mount /dev/sda5 /mnt/sda5/ #把分区挂载到新建的目录里面

[root@Redhat5 ~]# mount | grep "/dev/sda5"      #查看分区是否挂载

/dev/sda5 on /mnt/sda5 type ext3 (rw)               #显示分区已经挂载

[root@Redhat5 ~]# umount /dev/sda5               #卸载分区

[root@Redhat5 ~]#mount | grep "/dev/sda5"     #发现分区已经被卸载

[root@Redhat5 ~]# blkid       #显示设备的UUID及文件系统类型,及卷标

/dev/mapper/vol0-home: UUID="d1aeef77-bb47-4718-a91c-d4870b536440" TYPE="ext3"

/dev/sda3: LABEL="SWAP-sda3" TYPE="swap"

/dev/sda1: LABEL="/boot" UUID="5e5eaaac-cc56-42da-81eb-9adebff0fa2e" TYPE="ext3"

/dev/vol0/root: UUID="4302a528-e88e-43d3-b3cc-1c2b29cda656" TYPE="ext3"

/dev/sda5: LABEL="DATE" UUID="8f4f9b53-0bf0-4ce9-9665-bd4c7ae9ce59" TYPE="ext3"

[root@Redhat5 ~]# mount  LABEL="DATE"  /mnt/sda5/   #可以查到到分区5的标签为DATE,通

过挂载标签来挂载分区

[root@Redhat5 ~]# mount | grep "/dev/sda5"         #查看分区是否挂载

/dev/sda5 on /mnt/sda5 type ext3 (rw)

[root@Redhat5 ~]# umount /dev/sda5    #卸载分区

[root@Redhat5 ~]#mount | grep "/dev/sda5"

[root@Redhat5 ~]# mount UUID="8f4f9b53-0bf0-4ce9-9665-bd4c7ae9ce59" /mnt/sda5/

#通过挂载UUID来挂载分区

[root@Redhat5 ~]#mount | grep "/dev/sda5"

/dev/sda5 on /mnt/sda5 type ext3 (rw)

用mount命令挂载的文件在系统开机的时候是不能自动挂载的,想要系统开机就挂载写到配置文件即可/etc/fstab

echo "LABEL=DATE  /mnt/sde5  ext3 defaults  0 0" >> /etc/fstab

/etc/fstab文件的格式

[root@Redhat5 ~]# cat /etc/fstab

/dev/vol0/root          /                       ext3    defaults        1 1

/dev/vol0/home          /home                   ext3    defaults        1 2

LABEL=/boot             /boot                   ext3    defaults        1 2

tmpfs                   /dev/shm                tmpfs   defaults        0 0

字段以空格分隔

1、挂载的设备:设备文件、卷标、UUID

2、挂载点:  与跟相关联的目录

3、文件系统类型:ext3,ext4

4、挂载选项:defaults表示使用默认选项,多个选项彼此间逗号分隔

5、转储频率:0:从不备份、1:每日备份、2:每隔一日备份

6、自检次序:0:不检测、1:第一个检测,一般只能为根文件系统第一个检测 2 ...9

linux硬盘分区格式化及挂载的更多相关文章

  1. linux增加硬盘 磁盘分区格式化及挂载

    nux磁盘分区格式化及挂载 意义: 给linux 系统服务器扩容, 加一块硬盘 实验环境: virtualBox虚拟软件  + centos6.5 第一步: 添加硬件 硬盘 (我这里用virtualB ...

  2. linux硬盘分区与格式化

    linux硬盘分区与格式化: 1. 设备管理 在 Linux 中,每一个硬件设备都映射到一个系统的文件,对于硬盘.光驱等 IDE 或 SCSI 设备也不例外. Linux 把各种 IDE 设备分配了一 ...

  3. 9.2 Linux硬盘分区和挂载

    一块新的硬盘存储设备后,先需要分区,然后再格式化文件系统,最后才能挂载并正常使用. 分区:根据需求和硬盘大小划分空间 格式化:对分区安装文件系统 挂载:将设备文件与一个目录关联的动作叫挂载 硬盘分区格 ...

  4. linux 硬盘分区,分区,删除分区,格式化,挂载,卸载笔记

    linux 虽然一直都有在玩,但是对硬盘操作确实不是很熟悉今天有空,就整理了下. 1, 创建分区 先查看下是否有磁盘没有分区 fdisk -l 其中第一个框和第二个框,是已经分好区的磁盘,第三个硬盘没 ...

  5. Linux 硬盘分区、分区、删除分区、格式化、挂载、卸载

    Linux 虽然一直都有在玩,但是对硬盘操作确实不是很熟悉今天有空,就整理了下. 1,创建分区 先查看下是否有磁盘没有分区 fdisk -l 其中第一个框和第二个框,是已经分好区的磁盘,第三个硬盘没有 ...

  6. Linux磁盘分区/格式化/挂载(树莓派3挂载硬盘)

    [前言] 本文将要讲解的功能为Linux环境下对磁盘进行操作.包括分区.格式化.挂载外接移动存储设备等. 该文的写作背景为本人的树莓派需要外接一个固态硬盘作为存储设备,因此,便开始了一系列的折腾. [ ...

  7. linux 硬盘分区与格式化挂载 (二)

    1. 文件系统的挂载与卸载(详见linux系统管理P406)1) 掌握挂载的定义:挂载指将一个设备(通常是存储设备)挂接到一个已存在的目录上.2) 掌握mount命令的功能:实现文件系统的挂载.3) ...

  8. linux 硬盘分区与格式化挂载

    1. 硬件设备与文件名的对应关系(详见linux系统管理P297)1) 掌握在Linux系统中,每个设备都被当初一个文件来对待.2) 掌握各种设备在Linux中的文件名 2. 硬盘的结构及硬盘分区(详 ...

  9. linux硬盘分区及挂载

    今天买的一台服务器发现其硬盘容量与购买界面的描述不符,于是我去问了客服才知道有一块硬盘需要自己挂载,所以记录自己硬盘分区以及挂载操作得此文. 测试环境 ​ 由于时间限制,本人仅在centos 8下测试 ...

随机推荐

  1. C++的STL在C#中的应用

    这里主要讲几个重要的STL在C#中的应用:vector, map, hash_map, queue, set, stack, list. vector: 在C#中换成了list using Syste ...

  2. HDU 4897 Little Devil I(树链剖分)(2014 Multi-University Training Contest 4)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4897 Problem Description There is an old country and ...

  3. Linux mysql 主从复制

    主:192.168.246.130 从:192.168.246.131 主配制:my.conf server_id log-bin=mysql-bin binlog-format=mixed 从配制: ...

  4. oracle的例程

    oracle只有在具备sysoper和sysdba权限下才能启动和关闭例程 关闭例程: --正常关闭(等待当前连接的所有用户与数据库断开) shutdown normal; --立即关闭(回退活动的事 ...

  5. linux下的网络配置

    临时生效的命令: 设置静态ip: ip addr add 192.168.1.2/24 dev eth0 设置网关: ip route add default via 192.168.1.1 启动某个 ...

  6. 如何通过类找到对应的jar包

    ctrl+shift+T 然后输入对应类  

  7. django ORM model filter 条件过滤,及多表连接查询、反向查询,某字段的distinct

    版权归作者所有,任何形式转载请联系作者.作者:petanne(来自豆瓣)来源:https://www.douban.com/note/301166150/ 1.多表连接查询:感觉django太NX了. ...

  8. scala泛型

    package com.ming.test /** * scala泛型 * 类型参数测试 */ object TypeParamsTest { //泛型函数 def getMiddle[T](a:Ar ...

  9. shell if

    shell中if做比较 比较两个字符串是否相等的办法是: if [ "$test"x = "test"x ]; then 这里的关键有几点: 1 使用单个等号 ...

  10. linux下共享内存mmap和DMA(直接访问内存)的使用 【转】

    转自:http://blog.chinaunix.net/uid-7374279-id-4413316.html 介绍Linux内存管理和内存映射的奥秘.同时讲述设备驱动程序是如何使用“直接内存访问” ...