`
tiankefeng0520
  • 浏览: 147246 次
  • 性别: Icon_minigender_1
  • 来自: 长春
社区版块
存档分类
最新评论

Linux学习记录--磁盘分区,格式化与检验

阅读更多

磁盘分区,格式化与检验

 

磁盘分区:fdisk

磁盘格式化:mkfs,mke2fs

磁盘检测:fsck

大容量磁盘分区:parted

 

磁盘分区

 

语法:fdisk[-l] 设备名称

-l:输出系统内所有分区

 

举例:

[root@localhost ~]# fdisk -l
 
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
 
  Device Boot      Start         End      Blocks  Id  System
/dev/sda1  *           1          13     104391   83  Linux
/dev/sda2              14        1288   10241437+  83  Linux
/dev/sda3            1289        1925    5116702+  83  Linux
/dev/sda4            1926        2610    5502262+   5  Extended
/dev/sda5            1926        2052    1020096   82 Linux swap / Solaris
/dev/sda6            2053        2302    2008093+  83  Linux


1.       查看磁盘文件名

[root@localhost ~]# df /

文件系统               1K-块        已用     可用 已用% 挂载点

/dev/sda2              9920624   4329108  5079448  47% /

 

2.       查看磁盘分区功能

[root@localhost ~]# fdisk /dev/sda  //这里不带数字
 
The number of cylinders for this disk isset to 2610.
There is nothing wrong with that, but thisis larger than 1024,
and could in certain setups cause problemswith:
1) software that runs at boot time (e.g.,old versions of LILO)
2) booting and partitioning software fromother OSs
  (e.g., DOS FDISK, OS/2 FDISK)
 
Command (m for help): m
Command action
  a   toggle a bootable flag
  b   edit bsd disklabel
  c   toggle the dos compatibilityflag
  d   delete a partition //删除磁盘分区
  l   list known partition types
  m   print this menu  //查看磁盘分区功能
  n   add a new partition //增加一个磁盘分区
  o   create a new empty DOSpartition table
  p   print the partition table //查看磁盘分区
  q   quit without saving changes
  s   create a new empty Sundisklabel
  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 (expertsonly)

 

删除磁盘分区

[root@localhost ~]# fdisk /dev/sda
 
The number of cylinders for this disk isset to 2610.
There is nothing wrong with that, but thisis larger than 1024,
and could in certain setups cause problemswith:
1) software that runs at boot time (e.g.,old versions of LILO)
2) booting and partitioning software fromother OSs
  (e.g., DOS FDISK, OS/2 FDISK)
 
Command (m for help): p
 
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
 
  Device Boot      Start         End     Blocks   Id  System
/dev/sda1  *           1          13      104391  83  Linux
/dev/sda2              14        1288   10241437+  83  Linux
/dev/sda3            1289        1925    5116702+  83  Linux
/dev/sda4            1926        2610    5502262+   5  Extended
/dev/sda5            1926        2052    1020096   82  Linux swap / Solaris
/dev/sda6            2053        2302    2008093+  83  Linux

由上可知我的磁盘主要分为6个分区,1,2,3为主分区,4为扩展分区,5为swap分区,6是逻辑分区

 

Command (m for help): d
Partition number (1-6): 3
 
Command (m for help): p
 
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
 
  Device Boot      Start         End      Blocks  Id  System
/dev/sda1  *           1          13      104391  83  Linux
/dev/sda2              14        1288   10241437+  83  Linux
/dev/sda4            1926        2610    5502262+   5  Extended
/dev/sda5            1926        2052    1020096   82  Linux swap / Solaris
/dev/sda6            2053        2302    2008093+  83  Linux
 
删除主分区sad3 后可以看到磁盘信息不在包含sad3
Command (m for help): d
Partition number (1-6): 4
 
Command (m for help): p
 
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
 
  Device Boot      Start         End      Blocks  Id  System
/dev/sda1  *           1          13      104391  83  Linux
/dev/sda2              14        1288   10241437+  83  Linux

删除扩展分区sad4 后可以看到扩展分区,逻辑分区都被删除(因为逻辑分区是由扩展分区衍生而来的)。

 

增加磁盘分区

磁盘分区最多只能有4个主分区+扩展分区组成,其中扩展分区最多只能有一个,剩下在创建的分区都是由扩展分区衍生出来的逻辑分区

 举例1. 由于磁盘现分区分为3个主分区,1个扩展分区。因此在创建时将直接创建逻辑分区,而不在询问是否创建主分区或者扩展分区

[root@localhost ~]# fdisk /dev/sda
 
The number of cylinders for this disk isset to 2610.
There is nothing wrong with that, but thisis larger than 1024,
and could in certain setups cause problemswith:
1) software that runs at boot time (e.g.,old versions of LILO)
2) booting and partitioning software fromother OSs
  (e.g., DOS FDISK, OS/2 FDISK)
 
Command (m for help): p
 
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
 
  Device Boot      Start         End      Blocks  Id  System
/dev/sda1  *           1          13      104391  83  Linux
/dev/sda2              14        1288   10241437+  83  Linux
/dev/sda3            1289        1925    5116702+  83  Linux
/dev/sda4            1926        2610    5502262+   5  Extended
/dev/sda5            1926        2052    1020096   82 Linux swap / Solaris
/dev/sda6            2053        2302    2008093+  83  Linux
 
Command (m for help): n
First cylinder (2303-2610, default 2303):


举例2:创建主/扩展分区

[root@localhost ~]# fdisk /dev/sda
 
The number of cylinders for this disk isset to 2610.
There is nothing wrong with that, but thisis larger than 1024,
and could in certain setups cause problemswith:
1) software that runs at boot time (e.g.,old versions of LILO)
2) booting and partitioning software fromother OSs
  (e.g., DOS FDISK, OS/2 FDISK)
 
Command (m for help): d //先将主分区和逻辑分区删除(如果为4个则默认创建逻辑分区)
Partition number (1-6): 2
 
Command (m for help): d
Partition number (1-6): 4
 
Command (m for help): p
 
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
 
  Device Boot      Start         End      Blocks  Id  System
/dev/sda1  *           1          13      104391  83  Linux
/dev/sda3            1289        1925    5116702+  83  Linux
 
Command (m for help): n
Command action
   e  extended
   p  primary partition (1-4)

 

提示用户选择是是创建主分区还是扩展分区

 

举例3.创建逻辑分区与扩展分区

root@localhost ~]# fdisk /dev/sda
 
The number of cylinders for this disk isset to 2610.
There is nothing wrong with that, but thisis larger than 1024,
and could in certain setups cause problemswith:
1) software that runs at boot time (e.g.,old versions of LILO)
2) booting and partitioning software fromother OSs
  (e.g., DOS FDISK, OS/2 FDISK)
 
Command (m for help): p
 
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
 
  Device Boot      Start         End      Blocks  Id  System
/dev/sda1  *           1          13      104391  83  Linux
/dev/sda2             14        1288   10241437+  83  Linux
/dev/sda3            1289        1925    5116702+  83  Linux
/dev/sda4            1926        2610    5502262+   5  Extended
/dev/sda5            1926        2052    1020096   82  Linux swap / Solaris
/dev/sda6            2053        2302    2008093+  83  Linux
 
Command (m for help): d
Partition number (1-6): 4
 
Command (m for help): n
Command action
  e   extended
  p   primary partition (1-4)
e
Selected partition 4
First cylinder (1926-2610, default 1926):
Using default value 1926
Last cylinder or +size or +sizeM or +sizeK(1926-2610, default 2610):
Using default value 2610
 
Command (m for help): p
 
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
 
  Device Boot      Start         End      Blocks  Id  System
/dev/sda1  *           1          13      104391  83  Linux
/dev/sda2              14        1288   10241437+  83  Linux
/dev/sda3            1289        1925    5116702+  83  Linux
/dev/sda4            1926        2610    5502262+   5  Extended

 

sd4为新创建的扩展分区,大小为从柱面1926到2610

 

Command (m for help): nFirstcylinder (1926-2610, default 1926):
Usingdefault value 1926
Lastcylinder or +size or +sizeM or +sizeK (1926-2610, default 2610): +500M

 

对于此处可以指定柱面号码,以可以通过+XXM指定大小,让其自动分配柱面

 

Command (m for help): p
 
Disk /dev/sda: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
 
  Device Boot      Start         End      Blocks  Id  System
/dev/sda1  *           1          13      104391  83  Linux
/dev/sda2              14        1288   10241437+  83  Linux
/dev/sda3            1289        1925    5116702+  83  Linux
/dev/sda4            1926        2610    5502262+   5  Extended
/dev/sda5            1926        1987      497983+ 83  Linux

 

sd5为新创建的逻辑分区,大小为500M

 

内核查找分区

当我们增加分区后,系统让我们reboot 以加载分区。也可以不用重启,只需要通知内容重新查找分区即可

The partition table has been altered!
 
Calling ioctl() to re-read partition table.
 
WARNING: Re-reading the partition tablefailed with error 16: 设备或资源忙.
The kernel still uses the old table.
The new table will be used at the nextreboot.
Syncing disks.[root@localhost~]# partprobe

 

 

磁盘格式化

分区完毕后要进行文件系统的格式化

 

mkfs

语法:mkfs[-t 文件系统格式] 设备文件名

选项与参数:

-t:文件系统格式,例如ext3,ext2,vfat等

 

举例

[root@localhost ~]# mkfs -t ext3 /dev/sda7
mke2fs 1.39 (29-May-2006)
Filesystemlabel=
OS type: Linux
Blocksize=1024 (log=0)
Fragment size=1024 (log=0)
50200 inodes, 200780 blocks
10039 blocks (5.00%) reserved for the superuser
First data block=1
Maximum filesystem blocks=67371008
25 block groups
8192 blocks per group, 8192 fragments pergroup
2008 inodes per group
Superblock backups stored on blocks:
       8193, 24577, 40961, 57345, 73729
 
Writing inode tables: done                           
Creating journal (4096 blocks): done
Writing superblocks and filesystemaccounting information: done
 
This filesystem will be automaticallychecked every 37 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

 

其中文件系统Label 以及iBLOCK大小均采用默认大小。如果对于EXT2/EXT3 我们对这些信息由特殊的需求,可以使用mke2fs

 

mke2fs

语法:mke2fs[-b block大小] [-i inode 大小] [-L 卷标] [-cj] 设备

选项与参数:

-b:设置block大小,目前支持1024,2048,4096

-i:多少容量给予一个inode

-c:检查磁盘错误

-L:卷标名称(Label)

-j:自动加入日志系统成为EXT3文件系统,不加在默认为EXT2

举例

[root@localhost ~]# mke2fs -b 2048 -i 4096-L "TKFDISK" -j /dev/sda7
mke2fs 1.39 (29-May-2006)
Filesystemlabel=TKFDISK
OS type: Linux
Blocksize=2048 (log=1)
Fragment size=2048 (log=1)
50288 inodes, 100390 blocks
5019 blocks (5.00%) reserved for the superuser
First data block=0
Maximum filesystem blocks=103809024
7 block groups
16384 blocks per group, 16384 fragments pergroup
7184 inodes per group
Superblock backups stored on blocks:
       16384, 49152, 81920
 
Writing inode tables: done                           
Creatingjournal (4096 blocks): done
Writing superblocks and filesystemaccounting information: done
 
This filesystem will be automaticallychecked every 31 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

 

磁盘检测(fsck)

语法: fsck [-t 文件系统格式] [-ACay]

选项与参数

-t  :文件系统格式。

-A  :依据/etc/fstab 的内容,将需要的装置扫瞄一次。

-a  :自动修复检查到的有问题的扇区.

-y  :与 -a 类似,但是某些filesystem 仅支持 -y 这个参数

-C  :可以在检验的过程当中,使用一个直方图来显示目前的进度!

 

EXT2/EXT3 的额外选项功能:(e2fsck 这支命令所提供)

-f  :强制检查!一般来说,如果 fsck 没有发现任何 unclean 的旗标,不会主动进入细部检查的,如果您想要强制 fsck 进入细部检查,就得加上 -f

-D  :针对文件系统下的目录进行优化配置。

 

举例

[root@localhost ~]# fsck -Cf /dev/sda7
fsck 1.39 (29-May-2006)
e2fsck 1.39 (29-May-2006)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure                                          
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
TKFDISK: 11/50288 files (9.1%non-contiguous), 7673/100390 blocks       

说明:需要磁盘检查的分区不能挂载在系统上,需要先被卸载才能磁盘检测

 

大容量磁盘分区(parted)

由于fdisk无法支持到高于2TB以上的分区,此时就需要parted来处理了

 

语法:parted [设备] [命令 [参数]]

选项与参数:

新增分区:mkpart [primary|logical|extended] [ext3|vfat]开始结束

分区表:print

删除分区:rm [partition]

 

举例1:查看分区表

[root@bogon ~]# parted /dev/sda print

Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system  标志
 1      32.3kB  107MB   107MB   主分区    ext3         启动
 2      107MB   10.6GB  10.5GB  主分区    ext3             
 3      10.6GB  15.8GB  5240MB  主分区    ext3             
 4      15.8GB  21.5GB  5634MB  扩展分区                   
 5      15.8GB  16.9GB  1045MB  逻辑分区  linux-swap       

信息: 如果必要,不要忘记更新 /etc/fstab。  


 

通过以上信息可以看出,扩展分区到21.5G,逻辑分区使用到16.9G,那么16.9G~21.5G只部分空间还为被使用(未被分区)

 

举例2:新增分区

[root@bogon ~]# parted /dev/sda mkpart logical ext3 16.9G 18.9G
信息: 如果必要,不要忘记更新 /etc/fstab。                                 

[root@bogon ~]# parted /dev/sda print

Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system  标志
 1      32.3kB  107MB   107MB   主分区    ext3         启动
 2      107MB   10.6GB  10.5GB  主分区    ext3             
 3      10.6GB  15.8GB  5240MB  主分区    ext3             
 4      15.8GB  21.5GB  5634MB  扩展分区                   
 5      15.8GB  16.9GB  1045MB  逻辑分区  linux-swap       
 6      16.9GB  18.9GB  2023MB  逻辑分区                   


 

举例3:删除分区

[root@bogon ~]# parted /dev/sda rm 6
信息: 如果必要,不要忘记更新 /etc/fstab。                                 

[root@bogon ~]# parted /dev/sda print

Model: VMware, VMware Virtual S (scsi)
Disk /dev/sda: 21.5GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system  标志
 1      32.3kB  107MB   107MB   主分区    ext3         启动
 2      107MB   10.6GB  10.5GB  主分区    ext3             
 3      10.6GB  15.8GB  5240MB  主分区    ext3             
 4      15.8GB  21.5GB  5634MB  扩展分区                   
 5      15.8GB  16.9GB  1045MB  逻辑分区  linux-swap       

信息: 如果必要,不要忘记更新 /etc/fstab。 
说明:parted分区提交即执行,因此使用起来需小心    
0
0
分享到:
评论

相关推荐

    Linux分区脚本

    ### Linux分区脚本知识点 ...综上所述,该脚本提供了基础的Linux磁盘分区功能,并通过简单的用户交互来指导用户完成整个分区过程。对于需要快速对Linux系统下的磁盘进行分区的场景来说,这是一个实用的工具。

    完整版磁盘格式化模块 1.0.rar

    5. **磁盘分区与格式化**:在操作系统安装或磁盘管理中,我们常常先创建分区,然后对每个分区进行格式化。这允许我们为不同用途(如操作系统、应用程序、个人文件等)分配不同的存储空间。 6. **命令行格式化**:...

    arm磁盘工具_可以格式化flash盘_分区等

    在提供的文件名"arm-fdisk-3.0.6"中,"fdisk"是Linux环境下常用的磁盘分区工具,用于创建、修改和删除磁盘分区。版本号"3.0.6"表示这是该工具的一个特定发行版。在ARM系统上,fdisk工具可能经过优化以适应硬件和内存...

    linux硬盘分区工具

    Linux提供了多种硬盘分区工具,其中GParted(全称GNU Partition Editor)是广泛使用的一款图形化界面工具,它允许用户创建、删除、调整大小、移动、检查和格式化磁盘分区。在本篇文章中,我们将深入探讨Linux硬盘...

    linux磁盘分区扩容

    总结来说,Linux磁盘分区扩容主要涉及以下步骤: 1. **查看磁盘状态**:使用`df -h`和`df -Th`查看磁盘分区和文件系统信息。 2. **确认文件系统类型**:不同的文件系统有不同的扩容策略,如XFS需要先释放空间。 3. ...

    盘分区格式化类

    在IT领域,盘分区格式化类是一门涉及操作系统、存储管理和程序设计的重要技术。本文将深入探讨这个主题,包括汇编语言的应用、盘分区的概念、格式化的原理以及如何在程序设计中实现这些功能。 首先,我们要理解什么...

    Linux基础知识(3-10)-分区.pdf

    Linux操作系统的基础知识中,磁盘分区是一个至关重要的概念。分区是指在物理磁盘上划分逻辑空间,以便管理和组织数据。本文将深入探讨两种主要的分区表格式:MBR(主引导记录)和GPT(GUID分区表),以及与之相关的...

    util-linux-2.24.tar.gz

    - **磁盘和文件系统管理**:`fdisk`用于分区管理,`mkfs`用于格式化文件系统,`mount`和`umount`用于挂载和卸载文件系统。 - **进程和系统管理**:`kill`, `killall`用于发送信号到进程,`hostname`用于设置或查看...

    LinuxRaid、分区格式对比分析

    ### Linux RAID 分区格式对比分析 #### RAID 概述 RAID(Redundant Array of Independent Disks,独立磁盘冗余阵列)是一种通过在多个磁盘上分配数据来提高存储性能和/或数据可靠性的技术。它可以分为不同的级别,...

    计算机组装与维护-BIOS分区格式化系统安装注册表与维护.pptx

    【计算机组装与维护-BIOS分区格式化系统安装注册表与维护】 BIOS(Basic Input/Output System)是计算机系统中的核心组件,它包含了初始化硬件、提供低级输入输出服务等功能。BIOS设置允许用户对硬件参数进行调整,...

    格式化format

    5. **格式化与分区的区别** - 分区是将硬盘划分为多个逻辑区域,每个区域可以单独格式化,而格式化是针对已经分区的区域进行操作。 6. **恢复误格式化** - 如果意外格式化了磁盘,可以通过数据恢复软件尝试恢复未...

    硬盘格式化模拟练习

    5. **磁盘检查与修复**:在格式化前,可以使用`chkdsk`(Windows)或`fsck`(Linux)检查硬盘的健康状况。如果发现错误,这些工具也能尝试修复。 6. **数据安全与备份**:格式化会永久删除数据,因此在进行格式化...

    计算机BIOS设置与硬盘分区格式化PPT学习教案.pptx

    【计算机BIOS设置与硬盘分区格式化】 计算机BIOS(Basic Input Output System)是计算机启动时首先运行的一段固件程序,它包含了控制硬件的基本功能和初始化过程。BIOS是计算机硬件与操作系统之间的桥梁,负责在...

    linux MD5更换磁盘

    - 对新创建的阵列进行格式化,并挂载到 `/test` 目录下: ```bash mkfs.ext4 /dev/md0 mount /dev/md0 /test ``` **步骤2:处理损坏的磁盘** - 当 `/dev/sdb1` 发生故障时,首先将其标记为失败状态,并从阵列...

    linux操作系统-Ylmf-OS-30-安装说明-安装教程.docx

    - **磁盘分区**:根据用户需求选择自动或手动分区,自动分区适合新手,手动分区则更灵活,适用于有特定需求的用户。 - **用户设置**:创建管理员账户和普通用户,设置密码。 - **安装类型**:选择升级现有系统还是...

    Gparted 磁盘分区编辑器操作基础

    标题 "Gparted 磁盘分区编辑器操作基础" 提供了我们即将探讨的核心工具——Gparted,这是一个在Ubuntu和Linux系统中广泛使用的图形界面磁盘分区管理软件。这个教程由6个部分组成,旨在帮助用户了解并熟练掌握Gparted...

    testdisk-7.1磁盘恢复助手

    1. 分区检测与恢复:testdisk能够深度扫描硬盘,识别出被删除、隐藏或格式化的分区。它使用低级磁盘扫描技术,查找分区表中的残留信息,重建丢失的分区结构。 2. 文件系统修复:如果分区本身存在问题,testdisk可以...

    LInux磁盘与文件系统管理-7th1

    本文将详细讲解Linux磁盘管理、文件系统挂载、磁盘容量检查、链接类型、磁盘分区、格式化、检验、挂载原则以及相关的命令工具。 首先,让我们了解一下文件系统的挂载。挂载是指将文件系统与Linux目录树相结合,使得...

Global site tag (gtag.js) - Google Analytics