一、MBR主引导记录
MBR有512个字节,分为三个部分:第一部分446个字节,存储了引导分区;第二部分64字节为分区表;第三部分2个字节结束符;每个分区需16个字节,所以MBR的模式下只能划分4个主分区或3个主分区和扩展分区;主分区可以直接使用,扩展分区不能直接使用,在扩展分区上划分逻辑分区再使用;
[root@wk ~]# cat /proc/partitions
major minor #blocks name
8 16 20971520 sdb
8 0 26214400 sda
8 1 1024000 sda1
8 2 18432000 sda2
8 3 1024000 sda3
11 0 3655680 sr0
二、GPT
GPT可以记录128个主分区;
三、使用命令管理磁盘分区
1、fdisk命令
使用fdisk划分磁盘,默认会划分为MBR格式的磁盘
fdisk -l 查看当前的磁盘和分区情况:
[root@wk ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x39c77fae.
Command (m for help): m
Command action
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 退出并保存,然后使用partprobe或partx /dev/sdX刷新
x extra functionality (experts only)
添加分区:
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1):
First sector (2048-41943039, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +2G
Partition 1 of type Linux and of size 2 GiB is set
Command (m for help):p
Disk /dev/sdb: 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: 0x39c77fae
Device Boot Start End Blocks Id System
/dev/sdb1 2048 4196351 2097152 83 Linux
Command (m for help):
只能划分四个主分区,如果要划分多余四个分区,则需要在第四个分区创建扩展分区,在扩展分区上创建逻辑分区:
Device Boot Start End Blocks Id System
/dev/sdb1 2048 4196351 2097152 83 Linux
/dev/sdb2 4196352 8390655 2097152 83 Linux
/dev/sdb3 8390656 12584959 2097152 83 Linux
/dev/sdb4 12584960 41943039 14679040 5 Extended
/dev/sdb5 12587008 16781311 2097152 83 Linux
[root@wk ~]# fdisk -l /dev/sda
有*标识代表的是启动分区:
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 2050047 1024000 83 Linux
/dev/sda2 2050048 38914047 18432000 83 Linux
/dev/sda3 38914048 40962047 1024000 82 Linux swap / Solaris
分区类型,使用t命令可以修改分区的类型:
Command (m for help): l
0 Empty 24 NEC DOS 81 Minix / old Lin bf Solaris
1 FAT12 27 Hidden NTFS Win 82 Linux swap / So c1 DRDOS/sec (FAT-
2 XENIX root 39 Plan 9 83 Linux c4 DRDOS/sec (FAT-
3 XENIX usr 3c PartitionMagic 84 OS/2 hidden C: c6 DRDOS/sec (FAT-
4 FAT16 <32M 40 Venix 80286 85 Linux extended c7 Syrinx
5 Extended 41 PPC PReP Boot 86 NTFS volume set da Non-FS data
....省略
2、gdisk命令
使用gdisk划分磁盘,默认划分为GPT格式的磁盘
[root@wk ~]# gdisk /dev/sdb
GPT fdisk (gdisk) version 0.8.6
Partition table scan:
MBR: not present
BSD: not present
APM: not present
GPT: not present
Creating new GPT entries.
Command (? for help):
使用方法与fdisk基本相同,这里不在复述。
3、parted命令:可以自行选择划分格式
parted命令可以将MBR结构修改为GPT结构,但是要慎重,因为分区表会丢失:
[root@wk ~]# parted /dev/sdb
GNU Parted 3.1
Using /dev/sdb
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) help------------查看下帮助吧,不常用记不住。
使用mklabel转换分区类型:
aix amiga bsd dvh gpt loop mac msdos pc98 sun
(parted) mklabel
New disk label type? gpt
(parted)
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@wk ~]# partprobe 或 [root@wk ~]# partx -a
4、使用mkfs给分区设置文件系统:
[root@wk ~]# mkfs -t xfs /dev/sdb1
meta-data=/dev/sdb1 isize=256 agcount=4, agsize=131072 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0
data = bsize=4096 blocks=524288, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=0
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
指定block size大小:
[root@wk ~]# mkfs.xfs -b size=1024 /dev/sdb2
挂载分区到文件系统:
[root@wk ~]# mkdir /aa
[root@wk ~]# mount /dev/sdb1 /aa
[root@wk ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 18G 14G 3.8G 79% /
devtmpfs 482M 0 482M 0% /dev
tmpfs 490M 0 490M 0% /dev/shm
tmpfs 490M 6.9M 484M 2% /run
tmpfs 490M 0 490M 0% /sys/fs/cgroup
/dev/sda1 997M 123M 875M 13% /boot
/dev/sdb1 2.0G 33M 2.0G 2% /aa
可以使用xfs_info查看文件系统信息:
[root@wk ~]# xfs_info /aa
meta-data=/dev/sdb1 isize=256 agcount=4, agsize=131072 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0
data = bsize=4096 blocks=524288, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=0
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
使用xfs_admin查看分区的blkid:
[root@wk ~]# xfs_admin -u /dev/sdb1
UUID = 12d99538-2241-42b0-b873-6406266cc8e2
也可以使用blkid查看:
[root@wk ~]# blkid
/dev/sdb1: UUID="12d99538-2241-42b0-b873-6406266cc8e2" TYPE="xfs" PARTUUID="e71103e9-668d-444b-bc96-70501467cc43"
/dev/sdb2: UUID="9a951c66-78e1-416e-aa0e-7d41a55efc6d" TYPE="xfs" PARTUUID="38a4a2ea-2571-419d-b80f-8ea801f4291e"
/dev/sda1: UUID="7dfc741a-395f-46d9-ba69-a037f24ae107" TYPE="xfs"
/dev/sda2: UUID="82934945-3802-4f45-ada3-1d43f0b2a1c5" TYPE="xfs"
/dev/sda3: UUID="6dde9ce3-2757-4c88-b082-5665daa2d584" TYPE="swap"
/dev/sr0: UUID="2014-05-07-03-58-46-00" LABEL="RHEL-7.0 Server.x86_64" TYPE="iso9660" PTTYPE="dos"
一个分区如果不格式的话,没有文件系统那么就不会有UUID:
可以使用xfs_admin -U修改分区的UUID:
[root@wk ~]# uuidgen
292e2919-11fa-4f1c-8006-4a506095d377
[root@wk ~]# xfs_admin -U 292e2919-11fa-4f1c-8006-4a506095d377 /dev/sdb1
Clearing log and setting UUID
writing all SBs
new UUID = 292e2919-11fa-4f1c-8006-4a506095d377
xfs文件系统大小可以增加,但是不能减少
Swap交换分区,类似于Windows的虚拟内存:
就是利用磁盘里面的一部分空间,来模拟内存:
1、使用分区;
2、创建文件;
查看Swap分区:
[root@wk ~]# cat /proc/swaps
Filename Type Size Used Priority
/dev/sda3 partition 1023996 0 -1
命令t修改分区为swap格式:
Command (m for help): t
Selected partition 1
Partition type (type L to list all types): 14
Changed type of partition 'EFI System' to 'Linux swap'
格式化swap分区:
[root@wk ~]# mkswap /dev/sdb1
mkswap: /dev/sdb1: warning: wiping old xfs signature.
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=b633a131-d314-487b-b1f8-a5516626c081
使用Swapon 和 Swapoff 启用或关闭swap分区:
[root@wk ~]# swapon /dev/sdb1
[root@wk ~]# free
total used free shared buffers cached
Mem: 1003456 420340 583116 7020 1328 138184
-/+ buffers/cache: 280828 722628
Swap: 2072568 0 2072568
[root@wk ~]# swapoff /dev/sdb1
[root@wk ~]# free
total used free shared buffers cached
Mem: 1003456 419936 583520 7020 1324 138220
-/+ buffers/cache: 280392 723064
Swap: 1023996 0 1023996
创建文件作为swap分区:
[root@wk ~]# dd if=/dev/zero of=/swapfile bs=1M count=200
[root@wk ~]# mkswap /swapfile
Setting up swapspace version 1, size = 204796 KiB
no label, UUID=630ac3d6-94fd-4b68-8148-00f0b780bb2d
[root@wk ~]# chmod 0600 /swapfile
[root@wk ~]# swapon /swapfile
[root@wk ~]# free
total used free shared buffers cached
Mem: 1003456 630596 372860 7016 1328 343160
-/+ buffers/cache: 286108 717348
Swap: 1228792 0 1228792
[root@wk ~]# swapoff /swapfile
[root@wk ~]# free
total used free shared buffers cached
Mem: 1003456 630556 372900 7016 1328 343160
-/+ buffers/cache: 286068 717388
Swap: 1023996 0 1023996
最后,记得在 /etc/fstab中添加相应参数
[root@wk ~]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Fri Jan 1 11:14:17 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=82934945-3802-4f45-ada3-1d43f0b2a1c5 / xfs defaults 1 1
UUID=7dfc741a-395f-46d9-ba69-a037f24ae107 /boot xfs defaults 1 2
UUID=6dde9ce3-2757-4c88-b082-5665daa2d584 swap swap defaults 0 0
这部分就不介绍了,查一下吧。
- KVM -> 虚拟机磁盘管理_03
1.KVM磁盘管理 1.KVM qcow2.raw.vmdk等镜像格式说明:http://blog.csdn.net/zhengmx100/article/details/53887162 raw: ...
- kvm磁盘管理
kvm磁盘管理 kvm虚拟机虚拟磁盘格式转换 各种格式说明介绍 row:裸格式,占用空间较大,不支持快照功能,性能较好,不方便传输(顺序读写) 50G 2G 传输50G qcow2:cow 占用空间小 ...
- liunx 磁盘管理命令记录
Linux磁盘管理好坏管理直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 fdisk:用于磁盘分 ...
- Windows Server 2012 磁盘管理之 简单卷、跨区卷、带区卷、镜像卷和RAID-5卷
今天给客户配置故障转移群集,在Windows Server 2012 R2的系统上,通过iSCSI连接上DELL的SAN存储后,在磁盘管理里面发现可以新建 简单卷.跨区卷.带区卷.镜像卷.RAID-5 ...
- Linux常用命令学习7---(磁盘管理df du、磁盘的分区和格式化fdisk parted)
1.磁盘管理 在服务器的维护中,我们需要关心服务器的磁盘使用了多少.还有多少的剩余空间.某个文件有多大.某个文件夹内的所有文件在一起一共占用的多少空间……问题.以便我们在合适的时机为服务器添加硬 ...
- LINUX的磁盘管理du命令详解
LINUX的磁盘管理du命令详解 du(disk usage)命令可以计算文件或目录所占的磁盘空间.没有指定任何选项时, 它会测量当前工作目录与其所有子目录,分别显示各个目录所占的快数,最后才显示工作 ...
- 用Win7自带的磁盘管理工具给硬盘分区
最近新买了一台笔记本,要给硬盘分几个区,心想还是用个工具方便点,于是就上网准备下个“硬盘分区魔术师”,但是看到有一篇文章介绍Win7系统也自带了硬盘分区工具,这我以前倒没听说过,试了一下,还挺方便好用 ...
- Linux_磁盘管理
一.linux磁盘管理 命令:fdisk -l brwx-rw--- 其中b(占位符)代表block,块设备文件 sda,sdb... --> 硬盘 其中sda1,sda2..sdb1,sdb2 ...
- Linux 磁盘管理
Linux磁盘管理好坏管理直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 fdisk:用于磁盘分 ...
随机推荐
- 1-自己动手编写ArrayList集合
学习集合的原理,这是一个很简单的代码,没有索引下标越界判断,异常处理等,不够健壮,后面会继续更新完善代码..... 只是入门学习一下 package my; /*** * 自己动手编写一个ArrayL ...
- Unity读取Android SDcard文件
一.添加权限 权限添加 :Player settings -- Other settings -- write permission的设置 Sdcard.这个是在Unity编辑器里打包的情况. 如果导 ...
- 为什么使能RPS/RFS, 或者RSS/网卡多队列后,QPS反而下降?
http://laoar.github.io/blog/2017/05/07/rps/ TL;DR RPS 即receive side steering,利用网卡的多队列特性,将每个核分别跟网卡的一个 ...
- SQL with(unlock)与with(readpast)
所有Select加 With (NoLock)解决阻塞死锁,在查询语句中使用 NOLOCK 和 READPAST 处理一个数据库死锁的异常时候,其中一个建议就是使用 NOLOCK 或者 READPAS ...
- Spring Boot 整合mybatis-generator
Maven 引入 mybatis-generator插件 <build> <plugins> <plugin> <groupId>org.springf ...
- mybatis-plus 从2.x到3.x升级指南
Mybatis-Plus mybatis-plus 2.x 到 3.x 有以下改进 分页查询可以直接返回Ipage<T>的子类(下面会有详细使用说明) Wrapper<T> ...
- iOS保存gif动态图
- (void)saveImageToPhotos:(NSData*)gifData { /***注意先倒入库 #import <AssetsLibrary/AssetsLibrary.h> ...
- jquery的ajax,请求JSON数据。
第一个页面:1.htm <!DOCTYPE html> <html> <head> <title></title> <script t ...
- 1.js简介
1.JavaScript 诞生于1995年,起初主要用于处理网页中的前端验证. 2.前端验证:指检查用户输入的内容是否符合一定规则. 3.JavaScript 由网景公司发明. 4.JS 的标准命名为 ...
- 《算法》第一章部分程序 part 2
▶ 书中第一章部分程序,加上自己补充的代码,包括简单的计时器,链表背包迭代器,表达式计算相关 ● 简单的计时器,分别记录墙上时间和 CPU 时间. package package01; import ...