Linux磁盘概念及其管理工具fdisk
Linux磁盘概念及其管理工具fdisk
| [日期:2016-08-27] | 来源:Linux社区 作者:chawan | [字体:大 中 小] |
引言:冯诺依曼体系中的数据存储器就是我们常说的磁盘或硬盘,它是计算机不可缺少的一个组件,下面来看看Linux中磁盘的基础概念及管理工具fdisk
实验环境CentOS7.2
磁盘概念
按磁盘属性分类有机械硬盘跟固态硬盘
(1)机械硬盘:内部真空
磁盘:正反面含有磁性物质的盘片,由一个马达固定所有磁盘转动,固定角速度
每个盘片正反面各有一个磁头,所有磁头固定在一个机械臂上
平均寻道时间:5400rpm, 7200rpm, 10000rpm, 15000rpm转速
track(磁道):每个盘片上出厂格式化
sector(扇区):512bytes单位
cylinder(柱面):不同盘面上同一编号的磁道组合在一起,分区划分按照柱面实现
越靠近较外部分区的柱面组成的分区,越快。Windows上c盘在最外面
(2)固态硬盘
类似与多个并行U盘,工作模式上模拟机械硬盘的机制。
电器设备,速度个人笔记本是原来的3到5倍,读400个iops(io per second)、写200iops
在正式介绍Linux设备文件前需先了解一个概念:MBR
MBR(Master Boot Record):主引导分区,为一个编号为0的512字节的扇区
446bytes:bootloader,引导加载器程序,主引导记录,引导启动操作系统的程序;
64bytes:分区表,每16bytes标识一个分区,一共只能有4个分区;
2bytes:表示MBA是否有效;55AA为有效;
注意:
1) 主分区最多四个,扩展分区只能一个
2) 扩展分区不能单独使用,要继续分成逻辑分区,逻辑分区可以由多个
3) 一个分区就是一个独立的文件系统
4) 主分区和扩展分区的标识:1-4;逻辑分区:5+
其在Linux中的创建新磁盘分区会涉及主分区与扩展分区内容
/dev
不管是机械硬盘还是固态硬盘对于Linux看来它都是属于/dev/下的文件
设备文件名
1)磁盘:IDE: /dev/hd[a-z]
SCSI, SATA, USB, SAS: /dev/sd[a-z]
2)分区:/dev/sda#: /dev/sda1, ...
注意:CentOS 6和7统统将硬盘设备文件标识为/dev/sd[a-z]#
/dev设备文件介绍
1)设备文件:关联至设备的驱动程序;设备的访问入口;
2)设备号:
major:主设备号,区分设备类型;用于标明设备所需要的驱动程序;
minor:次设备号,区分同种类型下的不同的设备;是特定设备的访问入口;
比如/dev/sd# :sd为主设备号,#为次设备号。
引用设备的方式:设备文件名,卷标,UUID
磁盘管理工具fdisk:
fdisk:
创建查看分区
(1)查看磁盘的分区信息:
命令使用格式:fdisk -l [-u] [device...]:列出指定磁盘设备上的分区情况;
(2)管理分区
命令使用格式:fdisk /dev/sd# :创建,删除,保存磁盘分区配置。
fdisk提供了一个交互式接口来管理分区,它有许多子命令,分别用于不同的管理功能;所有的操作均在内存中完成,没有直接同步到磁盘;直到使用w命令保存至磁盘上;
以下命令选项为m中的常用选项:
n:创建新分区 d:删除已有分区
t:修改分区类型 l:查看所有已经ID
w:保存并退出 q:不保存并退出
m:查看帮助信息 p:显示现有分区信息
命令演示:
1、对已使用的磁盘设备,创建新分区,若没有可用空间则自动退出。
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
[root@localhost ~]# fdisk /dev/sda欢迎使用 fdisk (util-linux 2.23.2)。更改将停留在内存中,直到您决定将更改写入磁盘。使用写入命令前请三思。命令(输入 m 获取帮助):m命令操作 a toggle a bootable flag b edit bsd disklabel c toggle the dos compatibility flag d delete a partition g create a new empty GPT partition table G create an IRIX (SGI) partition table 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)命令(输入 m 获取帮助):nPartition type: p primary (2 primary, 0 extended, 2 free) e extendedSelect (default p): p分区号 (3,4,默认 3):No free sectors available命令(输入 m 获取帮助): |
2、对新添加的磁盘创建新分区。
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
[root@localhost ~]# fdisk /dev/sdb欢迎使用 fdisk (util-linux 2.23.2)。更改将停留在内存中,直到您决定将更改写入磁盘。使用写入命令前请三思。Device does not contain a recognized partition table使用磁盘标识符 0xd391e822 创建新的 DOS 磁盘标签。命令(输入 m 获取帮助):nPartition type: p primary (0 primary, 0 extended, 4 free) e extendedSelect (default p): p分区号 (1-4,默认 1):起始 扇区 (2048-10485759,默认为 2048):将使用默认值 2048Last 扇区, +扇区 or +size{K,M,G} (2048-10485759,默认为 10485759):+1G分区 1 已设置为 Linux 类型,大小设为 1 GiB命令(输入 m 获取帮助):w[root@localhost ~]# fdisk -l磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区Units = 扇区 of 1 * 512 = 512 bytes扇区大小(逻辑/物理):512 字节 / 512 字节I/O 大小(最小/最佳):512 字节 / 512 字节磁盘标签类型:dos磁盘标识符:0x00036006 设备 Boot Start End Blocks Id System/dev/sda1 * 2048 1026047 512000 83 Linux/dev/sda2 1026048 41943039 20458496 8e Linux LVM磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区Units = 扇区 of 1 * 512 = 512 bytes扇区大小(逻辑/物理):512 字节 / 512 字节I/O 大小(最小/最佳):512 字节 / 512 字节磁盘标签类型:dos磁盘标识符:0xd391e822 设备 Boot Start End Blocks Id System/dev/sdb1 2048 2099199 1048576 83 Linux |
3、创建扩展分区,及删除已存在分区
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
[root@localhost ~]# fdisk /dev/sdb欢迎使用 fdisk (util-linux 2.23.2)。更改将停留在内存中,直到您决定将更改写入磁盘。使用写入命令前请三思。命令(输入 m 获取帮助):nPartition type: p primary (1 primary, 0 extended, 3 free) e extendedSelect (default p): e分区号 (2-4,默认 2):起始 扇区 (2099200-10485759,默认为 2099200):将使用默认值 2099200Last 扇区, +扇区 or +size{K,M,G} (2099200-10485759,默认为 10485759):+1G分区 2 已设置为 Extended 类型,大小设为 1 GiB命令(输入 m 获取帮助):p磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区Units = 扇区 of 1 * 512 = 512 bytes扇区大小(逻辑/物理):512 字节 / 512 字节I/O 大小(最小/最佳):512 字节 / 512 字节磁盘标签类型:dos磁盘标识符:0xd391e822 设备 Boot Start End Blocks Id System/dev/sdb1 2048 2099199 1048576 83 Linux/dev/sdb2 2099200 4196351 1048576 5 Extended扩展分区创建完毕,下面在扩展分区上创建逻辑分区,大家可以看到其标号从5开始命令(输入 m 获取帮助):nPartition type: p primary (1 primary, 1 extended, 2 free) l logical (numbered from 5)Select (default p): l添加逻辑分区 5起始 扇区 (2101248-4196351,默认为 2101248):将使用默认值 2101248Last 扇区, +扇区 or +size{K,M,G} (2101248-4196351,默认为 4196351):+100M分区 5 已设置为 Linux 类型,大小设为 100 MiB命令(输入 m 获取帮助):p磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区Units = 扇区 of 1 * 512 = 512 bytes扇区大小(逻辑/物理):512 字节 / 512 字节I/O 大小(最小/最佳):512 字节 / 512 字节磁盘标签类型:dos磁盘标识符:0xd391e822 设备 Boot Start End Blocks Id System/dev/sdb1 2048 2099199 1048576 83 Linux/dev/sdb2 2099200 4196351 1048576 5 Extended/dev/sdb5 2101248 2306047 102400 83 Linux |
保存退出后,将逻辑分区删除
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
命令(输入 m 获取帮助):wThe partition table has been altered!Calling ioctl() to re-read partition table.正在同步磁盘。[root@localhost ~]# fdisk -l... 设备 Boot Start End Blocks Id System/dev/sdb1 2048 2099199 1048576 83 Linux/dev/sdb2 2099200 4196351 1048576 5 Extended/dev/sdb5 2101248 2306047 102400 83 Linux...[root@localhost ~]# fdisk /dev/sdb欢迎使用 fdisk (util-linux 2.23.2)。更改将停留在内存中,直到您决定将更改写入磁盘。使用写入命令前请三思。命令(输入 m 获取帮助):d分区号 (1,2,5,默认 5):5分区 5 已删除命令(输入 m 获取帮助):p磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区Units = 扇区 of 1 * 512 = 512 bytes扇区大小(逻辑/物理):512 字节 / 512 字节I/O 大小(最小/最佳):512 字节 / 512 字节磁盘标签类型:dos磁盘标识符:0xd391e822 设备 Boot Start End Blocks Id System/dev/sdb1 2048 2099199 1048576 83 Linux/dev/sdb2 2099200 4196351 1048576 5 Extended命令(输入 m 获取帮助):wThe partition table has been altered!Calling ioctl() to re-read partition table.正在同步磁盘。[root@localhost ~]# fdisk -l... 设备 Boot Start End Blocks Id System/dev/sdb1 2048 2099199 1048576 83 Linux/dev/sdb2 2099200 4196351 1048576 5 Extended... |
注意:在已经分区并且已经挂载其中某个分区的磁盘设备上创建的新分区,内核可能在创建完成后无法直接识别;
通知内核强制重读磁盘分区表:
查看:cat /proc/partitions
CentOS 5:partprobe [device]
CentOS 6,7:partx, kpartx
partx -a [device]
kpartx -af [device]
Linux磁盘概念及其管理工具fdisk的更多相关文章
- 【one day one linux】linux下的软件包管理工具
Linux 下的软件包管理工具 linux下的软件安装可以通过两种方式,一种是直接使用自带的软件包管理工具安装,另外一种通过编译源码安装. 1.软件包的种类 Red Hat和Fedora:redhat ...
- linux磁盘存储管理基本命令和工具
1 磁盘在linux表示方法 (1) IDE硬盘:hd[a~z]x,主设备号+次设备号+磁盘分区编号/hd(0-n,y) (2)SCSI硬盘:sd[a~z]x/hd(0-n,y) 注:主设备号可以唯一 ...
- Linux 磁盘原理与管理 (分区 挂载)
目前硬盘与主机系统的联系主要有几种传输介面规格: IDE介面: IDE介面插槽所使用的排线较宽,每条排线上面可以接两个IDE装置,由於可以接两个装置,那为了判别两个装置的主/从架构, ...
- linux的RPM软件包管理工具
RPM(Redhat Package Manage)原本是Red Hat Linux发行版专门用来管理Linux各项套件的程序,由于它遵循GPL规则且功能强大方便,因而广受欢迎.逐渐受到其他发行版的采 ...
- Linux系统——Ansible批量管理工具
批量管理工具: (1)ansible 操作简单(适用于500台以下服务器) (2)saltstack 比较复杂(一般适用于1000-4w台服务器) (3)puppet超级复杂 systemctl(统一 ...
- Linux常用命令-软件包管理工具-rpm
命令简介 rpm(RPM Package Manager)是一个强大的命令行驱动的软件包管理工具,用来安装.卸载.校验.查询和更新 Linux 系统上的软件包. 语法格式 rpm [OPTION... ...
- Linux Kafka集群管理工具kafka-manager的安装使用
一.kafka-manager简介 kafka-manager是目前最受欢迎的kafka集群管理工具,最早由雅虎开源,用户可以在Web界面执行一些简单的集群管理操作.具体支持以下内容: 管理多个集群 ...
- Linux磁盘及文件系统管理 2---- 使用fdisk进行磁盘管理
1 FDISK分区工具 1 fsidk是来自IBM的分区工具,支持绝大多数的操作系统,几乎所有的Linux都装有fdisk 2 fdisk是一个支持MBR的分区工具,如果要使用GPT的话我们无法使用f ...
- Linux下安装MySQL管理工具MySQL Administrator和MySQL Query Browser(转载)
文章来源:http://blog.csdn.net/sunrier/article/details/7572299 Linux下MySQL Administrator和MySQL Query Brow ...
随机推荐
- Python3正则表示式(3)
正则表示式对象 对象1: 案例1: import re example = 'ShanDong Institute of Business and Technology' pattern = re.c ...
- 不在框架中,利用Django的models操作
import os import sys import django sys.path.apprnd(r'路径') os.chdir(r'路径') os.environ.setdefault('DJA ...
- bootstrap中的对话框-dialog-2
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <meta name= ...
- 部分手机(如三星)的Listview列表会自动加上黑线解决办法
部分手机(如三星)的Listview列表会自动加上黑线,这里将其去掉部分手机(如三星)的列表会自动加上黑线. 因为三星手机会自动加上分割线. // 部分手机(如三星C9 Pro)的设置项列表会自动加上 ...
- Problem C: 找气球
Description zstu集训队经常举办月赛,但是气球经常不够.现有多个桶,每个桶有一种颜色,每个桶可能对应多个题,给定每个题对应的桶,打比赛的时候,经常某道题被发现是水题,但是该颜色的气球没有 ...
- 95. 不同的二叉搜索树 II
95. 不同的二叉搜索树 II 题意 给定一个整数 n,生成所有由 1 ... n 为节点所组成的二叉搜索树. 解题思路 这道题目是基于不同的二叉搜索树进行改进的: 对于连续整数序列[left, ri ...
- C# abstract virtual override new finally java final finalize
virtual:声明虚方法.可以被其派生类所重写的.重写方法需要使用override或者new关键字. override:覆盖原方法.可对重写virtual.override.abstract进行重写 ...
- 使用Maven自动部署Java Web项目到Tomcat问题小记
导读 首先说说自己为啥要用maven管理项目,一个直接的原因是:我在自己电脑上开发web项目,每次部署到服务器上时都要经历如下步骤: 首先在Eclipse里将项目打包成war包 将服务器上原来的项目文 ...
- 在AngularJS中使用谷歌地图把当前位置显示出来
如何使用谷歌地图把当前位置显示出来呢? --在html5中,为我们提供了navigator.geolocation.getCurrentPosition(f1, f2)函数,f1是定位成功调用的函数, ...
- TThread深入分析
Delphi中有一个线程类TThread是用来实现多线程编程的,这个绝大多数Delphi书藉都有说到,但基本上都是 对TThread类的几个成员作一简单介绍,再说明一下Execute的实现和Synch ...