Linux系统分区管理

管理分区

 

 

查看系统中的分区4种方式

[root@localhost ~]# ls /dev/sd* [来自内存]

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

[root@localhost ~]# lsblk

/dev/sda  /dev/sda1  /dev/sda2  /dev/sda3  /dev/sda4  /dev/sda5

 

[root@localhost ~]# fdisk -l 看磁盘中的分区表

磁盘中的分区表可能和内存中的分区表是不同步的

 

parted命令

  1. parted的操作都是实时生效的,小心使用
  2. 用法:parted [选项]… [设备 [命令 [参数]…]…]
  3. parted /dev/sdb  mklabel gpt|msdos
  4. parted /dev/sdb  print
  5. parted /dev/sdb  mkpart primary 1 200 (默认M)
  6. parted /dev/sdb  rm 1
  7. parted -l
  • mklabel gpt|msdos 用于指定创建的是GPT分区还是MBR分区

 

  • 创建分区

[root@localhost app]# parted /dev/sdb mkpart primary  1 1000

Information: You may need to update /etc/fstab.

 

[root@localhost app]# lsblk

NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT

sda      8:0    0  200G  0 disk

├─sda1   8:1    0    1G  0 part /boot

├─sda2   8:2    0   50G  0 part /

├─sda3   8:3    0   20G  0 part /app

├─sda4   8:4    0    1K  0 part

└─sda5   8:5    0    2G  0 part [SWAP]

sdb      8:16   0   20G  0 disk

└─sdb1   8:17   0  953M  0 part

GPT分区和MBR分区是互不兼容的,也不存在转换的问题,一旦设置了GPT分区或者MBR分区,要想装换只能重新分区

 

 

分区工具fdisk和gdisk

 

  1. gdisk /dev/sdb 类fdisk 的GPT分区工具
  2. fdisk -l [-u] [device…] 查看分区
  3. fdisk /dev/sdb  管理分区
  4. 子命令:
  5. p 分区列表
  6. t 更改分区类型
  7. n 创建新分区
  8. d 删除分区
  9. v 校验分区
  10. u 转换单位
  11. w 保存并退出
  12. q 不保存并退出

 

 

[root@localhost app]# gdisk /dev/sdb

GPT fdisk (gdisk) version 0.8.6

 

Partition table scan:

MBR: protective

BSD: not present

APM: not present

GPT: present

 

Found valid GPT with protective MBR; using GPT.

#gdisk的帮助信息

Command (? for help): ?

b back up GPT data to a file        备份GPT分区

c change a partition’s name       修改分区名

d delete a partition       删除分区

i show detailed information on a partition

l list known partition types

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

o create a new empty GUID partition table (GPT)        创建一个GUID分区表

p print the partition table        打印分区表

q quit without saving changes不保存退出

r recovery and transformation options (experts only)       恢复修改的选项

s sort partitions       分区排序

t change a partition’s type code       修改分区类型代码

v verify disk        验证磁盘

w write table to disk and exit写入磁盘并且退出

x extra functionality (experts only)        扩展选项

? print this menu        打印出菜单

 

Command (? for help):

 

#把分区表转换为MBR类型

[root@localhost ~]# parted /dev/sdb mklabel msdos

Warning: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do

you want to continue?

Yes/No? yes

Information: You may need to update /etc/fstab.

 

[root@localhost ~]#

 

fdisk分区工具的使用

[root@localhost ~]# 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.

 

 

Command (m for help): m

Command action

a   toggle a bootable flag

b   edit bsd disklabel

c   toggle the dos compatibility flag 不以dos兼容的模式

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 以扇区为单位进行显示(单位为K)

v   verify the partition table

w   write table to disk and exit

x   extra functionality (experts only)

 

Command (m for help):

 

在CentOS6中:

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

 

WARNING: DOS-compatible mode is deprecated. It’s strongly recommended to

switch off the mode (command ‘c’) and change display units to

sectors (command ‘u’).基于dos兼容模式是弃用。这是强烈推荐关掉模式(命令“c”)和改变显示单位部门(命令“u”)。也就是用传统的柱面的方式来划分去分区,并且要求以整柱面位单位进行划分,

 

 

Command (m for help): p

 

Disk /dev/sda: 214.7 GB, 214748364800 bytes

255 heads, 63 sectors/track, 26108 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

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

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

Disk identifier: 0x0008cdd6

 

Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *           1         131     1048576   83  Linux

Partition 1 does not end on cylinder boundary. 默认以柱面为单位进行划分,不在整柱面上会提示

/dev/sda2             131        6658    52428800   83  Linux

/dev/sda3            6658        9269    20971520   83  Linux

/dev/sda4            9269       26109   135265280    5  Extended

/dev/sda5            9269        9530     2097152   82  Linux swap / Solaris

 

Command (m for help):

CentOS6默认以dos模式柱面为单位

CentOS7默认就是以非dos模式以扇区为单位,默认相当于已经加了c u 了,但也是可以改为以柱面为单位进行显示,例如打开的时候以柱面为单位进行显示

[root@localhost ~]# fdisk -h

Usage:

fdisk [options] <disk>    change partition table

fdisk [options] -l <disk> list partition table(s)

fdisk -s <partition>      give partition size(s) in blocks

 

Options:

-b <size>             sector size (512, 1024, 2048 or 4096)

-c[=<mode>]           compatible mode: ‘dos’ or ‘nondos’ (default)

-h                    print this help text

-u[=<unit>]           display units: ‘cylinders’ or ‘sectors’ (default)

-v                    print program version

-C <number>           specify the number of cylinders

-H <number>           specify the number of heads

-S <number>           specify the number of sectors per track

 

[root@localhost ~]# fdisk -u=cylinders /dev/sda

 

WARNING: cylinders as display units are deprecated. Use command ‘u’ to

change units to sectors.

Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *           1         131     1048576   83  Linux

/dev/sda5            9269        9530     2097152   82  Linux swap / Solaris

 

注意:注意不要在一个分区中的夹缝中分区,避免分出来的空间过小,或者分区的时候空间过大进行报错提示

Device Boot      Start         End      Blocks   Id  System

/dev/sdc1            2048        8192        3072+  83  Linux

/dev/sdc2           10240    62914559    31452160   83  Linux

Last sector, +sectors or +size{K,M,G} (8193-10239, default 10239): +10G

Value out of range.

分区不能调大调小,只能重头开始分区。例如删除分区6,分区7会变成分区6。

 

分区的标识、设备名是不稳定的,带来的问题就是将来在磁盘上进行分区配置文件的修改,写/sda5 sda6这样的名字,万一删掉了分区,设备名就变了,数据就找不到了配置文件就会出问题,不推荐写设备名称,分区完成后会生成UUID号,是唯一且不变的,建议写UUID号

 

在6中创建分区表同步失败

Command (m for help): n

First sector (148899903-419430399, default 148899903):

Using default value 148899903

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

Using default value 148903935

 

Command (m for help): w

The partition table has been altered!

 

Calling ioctl() to re-read partition table.

 

WARNING: Re-reading the partition table failed with error 16: Device or resource busy.

The kernel still uses the old table. The new table will be used at

the next reboot or after you run partprobe(8) or kpartx(8)

Syncing disks.

[root@localhost ~]#

 

需要手动同步分区表

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/89200

(0)
无言胜千言无言胜千言
上一篇 2017-12-02 19:49
下一篇 2017-12-02 20:23

相关推荐

  • linux进程管理及计划任务

    进程管理: 什么是进程?   在Linux系统当中:触法任何一个事件时,系统都会将它定义成为一个进程,并且给予这个进程一个ID,称为PID,同时依据触发这个进程的用户与相关属性关系,给予这个PID一组有效的权限设置。 进程与程序: 程序(program):通常为二进制程序放置在存储媒介中,以物理文件的形式存在。 进程(process):程序被触发后…

    Linux干货 2016-09-13
  • 信息论的熵

    1.  前言    熵的概念最早起源于物理学,用于度量一个热力学系统的无序程度。    在信息论里则叫信息量,即熵是对不确定性的度量。从控制论的角度来看,应叫不确定性。信息论的创始人香农在其著作《通信的数学理论》中提出了建立在概率统计模型上的信息度量。他把信息定义为“用来消除不确定性的东西”。在信息世界,熵越…

    Linux干货 2016-03-27
  • 教你如何在Fedora,CentOS,RHEL中检查RPM包的依赖性

    我们都知道,在基于红帽的Linux系统中,一个RPM包,需要把先将它依赖的其他包安装好才能正常的工作。对于终端用户,RPM的安装、更新、删除中存在的依赖关系已经被工具透明化了(如 yum或 DNF等)。但如果你是系统管理员或者RPM包的管理员,你需要谙熟RPM包的依赖关系,以便及时更新、删除适当的包来保证系统的正常运行。 在本教程中,我将教大家如何检查RPM…

    Linux干货 2015-02-10
  • 马哥教育网络班N22期+第8周课程练习

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 网桥:是连接两个局域网的基于MAC地址数据存储转发设备,工作于数据链路层集线器:所有端口处于同一个广播域和冲突域中,带宽共享,工作于物理层二层交换机:多端口网桥,一个端口一个冲突域,默认所有端口位于同一个广播域中,可以划分vlan,隔离广播域,带宽独享三层交换机:具有路由功能的二…

    Linux干货 2016-10-19
  • 一位老it工程师的忠告,新手进来学习,老手进来体会,收获很大。

    诸位,咱当电子工程师也是十余年了,不算有出息,环顾四面,也没有看见几个有出息的!回顾工程师生涯,感慨万千,愿意讲几句掏心窝子的话,也算给咱们师弟师妹们提个醒,希望他们比咱们强! [1]好好规划自己的路,不要跟着感觉走!根据个人的理想决策安排,绝大部分人并不指望成为什么院士或教授,而是希望活得滋润一些,爽一些。那么,就需要慎重安排自己的轨迹。从哪个行业入手,逐…

    Linux干货 2015-02-26
  • 常见RAID总结

    RAID浅析 目录索引 一、定义 二、特点 三、常用RAID级别      四、RAID实现方式 五、实际环境测试 一、定义: 磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意。 独立磁盘冗余阵列(RAID,redundant array…

    Linux干货 2016-04-12