zoukankan      html  css  js  c++  java
  • 磁盘构造/msdos分区(fdisk)格式化(mkfs)和挂载

    分区不是必要的,分区是与系统盘分开,防止数据丢失。

    磁盘使用流程:查看磁盘(fdisk -l---分区---格式化(创建文件系统)----挂载(自动挂载)

    分区表类型:msdos(一般是系统分区 gpt(一般是数据分区)

    Msdos(Microsoft Disk Operating System,):最多支持4个分区,单分区最大2T.

    GptGUID Partition Table,其含义为“全局唯一标识磁盘分区表”):没有分区数量限制,单分区最大18EB

    msdos只支持4个分区,所以若需多个分区,可以用扩展分区.主分区分完后,其他是扩展分区,在扩展分区里区分逻辑分区,由扩展分区管理.扩展分区只能有一个,负责管理逻辑分区,不能进行格式化.主分区能当引导分区用,逻辑分区不能,其他存储数据都一样.主分区和逻辑分区可以格式化.主分区不是必须的,一般会将硬盘所有容量给扩展分区.

    Msdos分区表类型:分区表信息会写在磁盘头,容量有限,故最多只支持4个分区.而在扩展分区里会记录分区表,就可以建多个逻辑分区了.一般都是分一个主分区,其他全部空间给扩展分区,然后在里面分配逻辑分区

    主分区和扩展分区编号是1-4,逻辑分区时5-over...

    针对新的磁盘,创建完成保存退出后,会自动更新分区表信息,故旧磁盘需partx -a device_name  (a --add )

    查看磁盘:ll  /dev/sd*

    查看磁盘:fdisk -l 

    [root@lbg ~]# ll /dev/sd*

    brw-rw---- 1 root disk 8,  0 Oct  4 16:30 /dev/sda

    brw-rw---- 1 root disk 8,  1 Oct  4 16:30 /dev/sda1

    brw-rw---- 1 root disk 8,  2 Oct  4 16:30 /dev/sda2

    brw-rw---- 1 root disk 8,  3 Oct  4 16:30 /dev/sda3

    brw-rw---- 1 root disk 8, 16 Oct  4 16:30 /dev/sdb

    [root@lbg udev]# fdisk -l

    Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors

    Units = sectors of 1 * 512 = 512 bytes

    Sector size (logical/physical): 512 bytes / 512 bytes

    I/O size (minimum/optimal): 512 bytes / 512 bytes

    Disk label type: dos

    Disk identifier: 0x000c5fa7

       Device Boot      Start         End      Blocks   Id  System

    /dev/sda1   *      2048      821247      409600   83  Linux

    /dev/sda2          821248     1230847      204800   82  Linux swap / Solaris

    /dev/sda3         1230848    41943039    20356096   83  Linux

    介绍说明:Disk /dev/sda: 21.5 GB, 21474836480 bytesbytes=B代表字节,bit=b代表位), 41943040 sectors(扇区)

    heads:表示磁头数。   sectors:扇区   track:磁道。cylinders:柱面。

    磁盘的大小=一个柱面大小*柱面的总数=磁头数量*每个磁道上的扇区数*一个扇区大小*柱面总数

    文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"Sector)。每个扇区储存512字节(相当于0.5KB.操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即一次性读取一个""block)。这种由多个扇区组成的"",是文件存取的最小单位。""的大小,最常见的是4KB,即连续八个 sector组成一个 block

    磁盘正在使用(有挂载就表示正在使用)不能用不同的方式分区,需先卸载(umount).但用同一种分区方法时,当前设备是否在用不受影响.

    查看文件系统磁盘使用情况: df  -Th  (-T  type  -h  human-readable)

    [root@lbg udev]# df -Th

    Filesystem     Type      Size  Used Avail Use% Mounted on

    /dev/sda3      xfs        20G  3.3G   17G  17% /

    devtmpfs       devtmpfs  478M     0  478M   0% /dev

    tmpfs          tmpfs     493M     0  493M   0% /dev/shm

    /dev/sr0       iso9660   4.3G  4.3G     0 100% /mnt/rhel

    /dev/sda1      xfs       397M  146M  251M  37% /boot


    磁盘分区步骤:

    [root@lbg ~]# fdisk -l           --显示已格式化的磁盘

    [root@lbg ~]# ll /dev/sd*        ---显示所有磁盘

    通过上面两个命令的对比可查看没有分区的磁盘。

    sdb分区:   fdisk   /dev/sdb

    其中:d(删除分区)  n(添加分区) p(打印现有分区表) q(退出不保存) w(保存并退出)

    帮助(menu)

    n  创建分区(new partition)

    p  分区表信息(partition table)

    q  quit

    w  write

    d-> delete

    l--> 列出已知分区类型

    Command (m for help): n            --添加分区

    Partition type:

       p   primary (0 primary, 0 extended, 4 free)

       e   extended

    其中 extended:是扩展分区,primary 是主分区.

    其中给定分区大小时:+加单位就是容量,不加单位就是用柱面算.

    Select (default p): p

    Partition number (1-4, default 1): 1

    Last sector, +sectors or +size{K,M,G} (2048-4194303, default 4194303): +1G

    Partition 1 of type Linux and of size 1 GiB is set

       Device Boot      Start         End      Blocks   Id  System

    /dev/sdb1         2097152     4194303     1048576   83  Linux

    Select (default p): e       ----设置扩展分区,一般将剩下的所有容量都给扩展分区,故一直直接回车就行

    Partition number (2-4, default 2): 

    First sector (2099200-4194303, default 2099200): 

    Using default value 2099200

    Last sector, +sectors or +size{K,M,G} (2099200-4194303, default 4194303): 

    Using default value 4194303

    Partition 2 of type Extended and of size 1023 MiB is set

       Device Boot      Start         End      Blocks   Id  System

    /dev/sdb1            2048     2099199     1048576   83  Linux

    /dev/sdb2         2099200     4194303     1047552    5  Extended

    Command (m for help): n       ----再添加新的分区--逻辑分区

    Partition type:

       p   primary (1 primary, 1 extended, 2 free)

       l   logical (numbered from 5)                -----有了扩展分区后,再分区就有逻辑分区 

    Adding logical partition 5

    First sector (2101248-4194303, default 2101248): 

    Last sector, +sectors or +size{K,M,G} (2101248-4194303, default 4194303): +500M

    Partition 5 of type Linux and of size 500 MiB is set

       Device Boot      Start         End      Blocks   Id  System

    /dev/sdb1            2048     2099199     1048576   83  Linux

    /dev/sdb2         2099200     4194303     1047552    5  Extended

    /dev/sdb5         2101248     3125247      512000   83  Linux

    刷新分区表:partx -a /dev/sdb

    查看分区命令 fdisk -l /dev/sdb(从内存看 fdisk /dev/sdb(从磁盘里看) p查看的结果不同的话, partx -a /dev/sdb (刷新分区表a--add).不一致的原因可能是旧磁盘以前有分区表.


    格式化步骤:

    mkfs命令(make file system)格式化就是创建文件系统。(文件系统类型:6ext4 ,7xfs )

    一个分区一个分区地格式化:

    mkfs.ext4  /dev/sdb1  或者 mkfs -t ext4  /dev/sdb1                          --- (t--type)

    创建文件系统相当于在物理分区制作了一层内容,用来记录文件的存放位置等等这些信息。你会发现创建了文件系统的磁盘你还没用空间就少了十几M,,就是这个原因.

    判断格式化是否成功:

    格式化后就可查看该块设备信息:blkid, 有了该设备就说明格式化成功.没格式化的不在其中显示.(blkidblockid)

    [root@lbg ~]# blkid

    /dev/sda1: UUID="83d6abb5-1bda-497d-a33e-f11e601a6ff0" TYPE="xfs" 

    /dev/sda2: UUID="957ffd57-d1fc-40d5-87c2-5f57f15d6a11" TYPE="swap" 

    /dev/sda3: UUID="37765c8e-208a-4358-b643-7beeca05683c" TYPE="xfs" 

    /dev/sdb1: UUID="3c914c37-dc34-4fcf-932d-f4ea7753d2dc" TYPE="xfs" 

    /dev/sr0: UUID="2017-09-06-10-51-00-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"

     

    挂载:

    创建空目录然后挂载mount /dev/sdb1  /mnt/cs (手动挂载临时生效,重启失效.)

    再红帽系统里有lost+found 文件夹说明挂载成功.或者直接mount查看是否挂载成功。

    设置开机自动挂载:

    挂载的本质是挂载设备上的文件系统,将挂载命令写到下面两种配置文件都可:

    [root@lbg rhel]# vim /etc/rc.d/rc.local

    [root@lbg rhel]# vim /etc/fstab 

    /etc/rc.d/rc.local是操作系统启动最后一个读取的脚本文件,操作系统基本已经启动了,命令写在这里面,可以开机自动挂载.开机挂载,能挂,但是不太合适,可以在这里挂载镜像,挂载磁盘,可能启动软件需要的服务需要用到磁盘中的东西,这时候就不合适了.

    /etc/fstab 中内容大致如下:

    UUID=37765c8e-208a-4358-b643-7beeca05683c      /      xfs     defaults        0 0

    UUID=83d6abb5-1bda-497d-a33e-f11e601a6ff0      /boot   xfs     defaults        0 0

    UUID=957ffd57-d1fc-40d5-87c2-5f57f15d6a11      swap  swap       defaults       0 0

    /dev/sr0                     /mnt/rhel     iso9660     defaults       0 0

    依次是:设备,挂载点,文件系统类型,文件系统挂载属性(默认defaults),是否备份(0就行),是否进行文件系统检查(0,不检查就行,否则开机时间过长)0 ---不检查  1 ---优先度高的检查   2----优先度低的检查

    其中 UUid的值可以通过blkid查看.记着后面三个 defaults 0 0 .  /etc/fstab 里面挂载点有/boot,故开机运行时很早,专门用来做自动挂载./etc/rc.d/rc.local可以写很多其他命令,比如启动服务.挂载镜像.


    检测/etc/fstab修改是否正确:

    注意:vim  /etc/fstab.--系统重启生效.若写错了,则系统无法正常开机,必须测,若写错了,则操作系统只能看,root用户也无法改,检测时  umount /dev/sdb1mount -a --检测/etc/fatab是否正确.mount -a 是自动挂载 /etc/fstab 里面的东西,若无任何报错输出则表示/etc/fstab修改无问题。)


    修复文件系统

    #fsck   -a      /dev/sdb1        

    #fsck   -y      /dev/sdb1

     

     

     

  • 相关阅读:
    JAVA软件工程师应该具备哪些基本素质?
    java编程题(一)
    js继承之Object.create()
    【3D计算机图形学】变换矩阵、欧拉角、四元数
    JS的get和set使用示例
    深入浅析JavaScript中的constructor
    图片预加载之模拟img.load()
    threejs里面的vector3源码解析
    javascript事件轮询
    关于URL编码的一些结论
  • 原文地址:https://www.cnblogs.com/lbg-database/p/10109968.html
Copyright © 2011-2022 走看看