硬盘分区fdisk\gdisk ,挂载mount \swapon

1 dd命令详解

dd:convert and copy a file
dd if=/PATH/SOURCE of=/PATH/DEST bs=1[k|M] count=100
if=file,从文件读入内容。
of=offile,写入文件。
ibs=size 一次读size个byte
obs=size 一次写size个byte
bs=size 指定读写块大小
cbs=size 一次性转化size个大小
skip=blocks 从头忽略blocks个ibs大小的块
seek=blocks 从头忽略bolcks个obs大小的块
////读入硬盘的MBR分区表存档备份,备份要放置在另外一块硬盘。磁盘0磁道0扇区共512bytes,446存放bootloader,64bytes分区信息,最后2bytes存放55aa,已分区标记。

[[email protected] ~]#dd if=/dev/sda of=./fstab_sda.back bs=1  count=64 skip=446
64+0 records in
64+0 records out
64 bytes (64 B) copied, 0.000452712 s, 141 kB/s
[[email protected] ~]#hexdump -C fstab_sda.back
00000000  80 20 21 00 83 aa 28 82  00 08 00 00 00 00 20 00  |. !...(....... .|
00000010  00 aa 29 82 83 fe ff ff  00 08 20 00 00 00 40 01  |..)....... [email protected]|
00000020  00 fe ff ff 83 fe ff ff  00 08 60 01 00 00 40 01  |..........`[email protected]|
00000030  00 fe ff ff 05 fe ff ff  00 08 a0 02 00 f8 9f 03  |................|
00000040
还原时核对硬盘
dd if=/备份的分区表信息 of=/dev/硬盘 bs=1 seek=446

count=n 复制n个bs
conv=conversion[参数] lcase
notrunc 不截断输出,替换的意思

abcdefgh
12345678
[[email protected] xuan]#dd if=f1 of=f2 bs=1 skip=5 seek=2 conv=notrunc    //不截断
4+0 records in
4+0 records out
4 bytes (4 B) copied, 0.000169599 s, 23.6 kB/s
[[email protected] xuan]#cat -A f2
12fgh$
78$
此处换行来源于f1本身

2 分区及文件格式化

查前支持的文件系统:cat /proc/filesystems

2.1 gdisk/fdisk

加入新的硬盘或者原硬盘有剩余空间。若新加入硬盘不识别,则用
echo - - - > /sys/class/scsi_host/host0/scan;
echo - - - > /sys/class/scsi_host/host1/scan;
新加硬盘分区并格式化实例:

[[email protected] ~]#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  100G  0 part /
├─sda3   8:3    0    4G  0 part [SWAP]
├─sda4   8:4    0  512B  0 part             //扩展分区,所以无挂载点
└─sda5   8:5    0   50G  0 part /data       //逻辑分区,编号从**5开始
sdb      8:16   0   20G  0 disk             //新增的硬盘,无挂挂载点,接下来的主角
-------------------------------------------------------------------------------
[[email protected] ~]#gdisk /dev/sdb
GPT fdisk (gdisk) version 0.8.10

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.

Command (? for help): n                                         //n新建分区
Partition number (1-128, default 1): 1                          //默认分区号1
First sector (34-41943006, default = 2048) or {+-}size{KMGTP}:  //其实扇区位置,一般默认。回车即可
Last sector (2048-41943006, default = 41943006) or {+-}size{KMGTP}: +5G         //+5G表示划分5G空间
Command (? for help): p                                           //p打印,核对分区信息
Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048        10487807   5.0 GiB     8300  Linux filesystem

Command (? for help): w                             //w写盘,真正把分区表信息写入硬盘

Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!

Do you want to proceed? (Y/N): Y
OK; writing new GUID partition table (GPT) to /dev/sdb.
The operation has completed successfully.
--------------------------------------------------------------------------------------
[[email protected] ~]#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  100G  0 part /
├─sda3   8:3    0    4G  0 part [SWAP]
├─sda4   8:4    0  512B  0 part
└─sda5   8:5    0   50G  0 part /data
sdb      8:16   0   20G  0 disk
└─sdb1   8:17   0    5G  0 part                     ////lsblk查看,确实分区已经有了
sdc      8:32   0    2G  0 disk 

----------------------------------------------------------------------------------------
[[email protected] ~]#mkfs.ext4 -L gpt_001 /dev/sdb1         //格式化文件系统 -L给个标记,
----------------------------------------------------------------------------------------
[[email protected] ~]#blkid
/dev/sda1: UUID="f3dea6d9-de61-40d2-af58-25fc9e3d9e57" TYPE="xfs"
/dev/sda2: UUID="0a85448e-2b97-4f3a-afc2-f9288c0bd490" TYPE="xfs"
/dev/sda3: UUID="f6c52d33-a0ee-4f65-8fe0-360cd1e20317" TYPE="swap"
/dev/sda5: UUID="2ffec095-ca75-4d76-9303-56bbb23aff73" TYPE="xfs"
/dev/sr0: UUID="2018-11-26-14-22-58-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"
/dev/sdb1: LABEL="gpt_001" UUID="1cbd73f6-0438-4c92-b244-164d3cd6e3f4" TYPE="ext4" PARTLABEL="Linux filesystem" PARTUUID="b7fc8331-eb4c-4d16-b7d4-bc116a26cc9d"
--------------------------------------------------------------------------------------
[[email protected] ~]#tune2fs -l /dev/sdb1                   //查看分区块的详细信息
[[email protected] ~]#dumpe2fs /dev/sdb1 -h                     //显示超级块信息
[[email protected] ~]#tune2fs -m1 /dev/sdb1                      //m1修改默认预留的管理员空间为1%
tune2fs 1.42.9 (28-Dec-2013)
Setting reserved blocks percentage to 1% (13107 blocks)
-------------------------------------------------------
vim /etc/fstab
UUID=1cbd73f6-0438-4c92-b244-164d3cd6e3f4 /gpt001       ext4      acl        0 0 //赋予acl权限
mount -a                                                                       //重读配置文件,挂载
[[email protected] ~]#df -Th
Filesystem     Type      Size  Used Avail Use% Mounted on
/dev/sdb1      ext4      4.8G   20M  4.8G   1% /gpt001
//产看文件系统是否被挂载,若被挂载,再往该目录挂载设备B时候,会挤掉原来的设备A,B卸载后,原来的A还会自动挂载回来。(临时有效)
[[email protected] xuan]#findmnt /home/
TARGET SOURCE    FSTYPE OPTIONS
/home  /dev/sda3 xfs    rw,relatime,attr2,inode64,noquota

格式化完毕,通知内核重读分区表
centos6
新增分区 partx -a /dev/sda5 kpartx -a /dev/sda5 -f
删除分区 partx -d --nr M-N /dev/DEVICE
centos7 使用 partprobe [/dev/DEVICE]

2.2 swap分区使用

创建新的独立swap分区时候要用 t 参数,指定82类型。系统装好后还以用大的空文件,用swap工具格式化成swap格式,用来做swap交换区,这种做法很灵活,不用了,修改fstab挂载信息,nmount,删除大文件即可。

2.2.1 新加硬盘独立分区用作swap使用
#####2.2.1.1 分区---------------------------
[[email protected] ~]#lsblk                                              //查看块设备是否已经识别新加硬盘
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sdc      8:32   0    2G  0 disk
[[email protected] ~]#fdisk /dev/sdc                                     //采用fdisk分区
Command (m for help): n                                             //n 新建分区
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p                                               //p主分区
Partition number (1-4, default 1): 1                                //分区号
First sector (2048-4194303, default 2048):                          //默认起始扇区
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-4194303, default 4194303): //默认终止扇区
Using default value 4194303
Partition 1 of type Linux and of size 2 GiB is set
Command (m for help): t                                             //指定分区类型。
Selected partition 1
Hex code (type L to list all codes): 82                             //82为swap分区
Changed type of partition ‘Linux‘ to ‘Linux swap / Solaris‘

Command (m for help): p                                             //查看分区信息
Disk /dev/sdc: 2147 MB, 2147483648 bytes, 4194304 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: 0x5ea8522e

   Device Boot      Start         End      Blocks   Id  System
/dev/sdc1            2048     4194303     2096128   82  Linux swap / Solaris

Command (m for help): w                                             //分区表写入磁盘
The partition table has been altered!
[[email protected] ~]#partprobe                                          //同步分区信息至内核
#####2.2.1.2-格式化为swap-------------------------------
[[email protected] ~]#mkswap -L extend_swap /dev/sdc1                    //mkswap -L(标签) 格式化成swap
Setting up swapspace version 1, size = 2096124 KiB
LABEL=extend_swap, UUID=8fa013a8-f906-4094-a933-467872df6763
[[email protected] ~]#swapon /dev/sdc1                                   //挂载swap分区
[[email protected] ~]#lsblk
sdc      8:32   0    2G  0 disk
└─sdc1   8:33   0    2G  0 part [SWAP]
[[email protected] ~]#free -h                                            //查看内存,已经启用
              total        used        free      shared  buff/cache   available
Mem:           1.9G        752M        200M         42M        1.0G        963M
Swap:          6.0G          0B        6.0G
2.2.2 建立大文件,用来当swap分区使用
###### 2.2.2.1 建立大文件
[[email protected] data]#dd if=/dev/zero of=./bigfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 5.72137 s, 188 MB/s
[[email protected] data]#ll -h
total 1.1G
-rw-r--r--   1 root root  1.0G Aug 13 12:57 bigfiel
###### 2.2.2.3 格式化文件系统
[[email protected] data]#chmod 0600 bigfile
[[email protected] data]#mkswap -L bigfile_swap bigfile
Setting up swapspace version 1, size = 1048572 KiB
LABEL=bigfile_swap, UUID=c493c55b-6e9d-46bb-9543-38b72f410478
###### 2.2.2.3 挂载swap
[[email protected] data]#swapon /data/bigfile
[[email protected] data]#free -h
              total        used        free      shared  buff/cache   available
Mem:           1.9G        753M         76M         42M        1.1G        965M
Swap:          7.0G          0B        7.0G
[[email protected] data]#echo "/data/bigfile swap swap defaults 0 0 ">> /etc/fstab
//写入分区表,可以开机自动挂载。mount -a 对swap或者文件无效。
/data/bigfile swap swap defaults 0 0 

2.2.3 去除swap分区

确保swap分区没有使用。删除/etc/fstab文件里swap的挂载信息

[[email protected] data]#swapoff /data/bigfile
[[email protected] data]#swapoff /dev/sdc1
[[email protected] data]#free -h
              total        used        free      shared  buff/cache   available
Mem:           1.9G        749M        115M         42M        1.1G        970M
Swap:          4.0G          0B        4.0G
[[email protected] data]#lsblk                           //查看只有一个swap分区了
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  100G  0 part /
├─sda3   8:3    0    4G  0 part [SWAP]

原文地址:https://blog.51cto.com/14420400/2429098

时间: 2024-08-05 09:59:15

硬盘分区fdisk\gdisk ,挂载mount \swapon的相关文章

linux硬盘分区格式化及挂载

linux硬盘分区格式化及挂载 1.硬盘的接口类型 硬盘的接口一般分为两种,一种是IDE并行接口,一种是SATA串行接口, 在linux上面IDE接口的硬盘被识别为/dev/hd[a-z]这样的设备,其中hdc表示光驱设备,这是因为主板上面一般有两个IDE插槽,一个IDE插槽可以接两个硬盘,而光驱是接着IDE的第二个插槽上面的第一个接口上面.其他诸如SCSI,SAS,SATA,USB等接口的设备在linux识别为/dev/sd[a-z]. 2.linux硬盘的分区 磁盘的分区分为: primar

如何避免使用fdisk命令硬盘分区后fstab挂载故障问题

问题: 一般情况我们在使用fdisk命令分区后,挂载时通常使用mount命令进行挂载,但在有些时候添加其他硬盘时,可能导致分区表变化系统无法启动的问题出现. 解决方法: blkid # 获取新分区的uuid:/dev/sdb5: UUID="8f21d155-3cbd-46d3-93df-903937e7b750" TYPE="ext4" vim /etc/fstab #系统开机自动挂载配置文件,添加下条命令参数UUID=8f21d155-3cbd-46d3-93d

多硬盘分区格式化及挂载

有几台dell r720xd的服务器用于hadoop安装,每台机器都有10块3T的硬盘,不需要做raid.由于机器使用的raid卡位dell的r710卡,经咨询dell,r710卡必须做raid才能识别硬盘,其建议将没块盘都做raid0,q...  10块盘整整做了我半个小时. 系统安装完后,需要对sda以外的盘进行挂载,由于单盘容量过大,使用的GPT分区,传统的fdisk不能使用,需要使用parted进行. #GPT分区 parted /dev/sdb #划分所有空间到一个分区 (parted

硬盘分区与挂载

硬件设备与文件名的对应关系 硬盘的结构及硬盘分区 为什么进行硬盘分区 硬盘的逻辑结构 Linux系统中硬盘的分区 硬盘分区的分类 分区数量的约束 使用fdisk和partprobe命令来管理硬盘分区 fdisk 命令的功能 fdisk命令列表中常用的命令 partprobe命令 创建文件系统(数据的管理) 什么是格式化 什么是文件系统 文件系统类型 mkfs命令的功能 mkfs命令的用法举例 为一个分区设定label(分区名) e2label命令的功能 e2label命令的用法举例 课后作业 [

Linux存储管理及硬盘分区、格式化、挂载

下面介绍的是Linux的存储管理基础知识.使用一个新的硬盘设备步骤为(分区.格式化.挂载分区). 一.Linux的存储管理基础知识点 1.硬件组成 计算机基础知识中,各个硬件表示为:运算器(CUP):控制器(MEEM):硬盘(HDisk):网卡(NIC,即net interface card):总线(bus). 2.南北桥芯片 芯片有南桥和北桥两种芯片,南桥芯片链接低速,北桥链接高速,而且数据都要会接到北桥发散.南桥芯片链接光驱.硬盘等:北桥芯片链接内存等.控制器一般位于主板上,是接口后实现功能

Linux硬盘分区挂载及swap分区扩容

本文以纯代码形式书写,请各位同仁在阅读时抓住带颜色字体的位置.这才是重中之重!! (小编也不知道使用代码称呼呢还是用指令称呼 O(∩_∩)O哈哈~) [[email protected] ~]fdisk -l             查看磁盘信息 Disk /dev/sda: 32.2 GB, 32212254720 bytes, 62914560 sectorsUnits = sectors of 1 * 512 = 512 bytesSector size (logical/physical

linux 硬盘分区,分区,删除分区,格式化,挂载,卸载笔记

Linux 虽然一直都有在玩,但是对硬盘操作确实不是很熟悉今天有空,就整理了下. 1, 创建分区 先查看下是否有磁盘没有分区 [html] view plaincopy fdisk -l 其中第一个框和第二个框,是已经分好区的磁盘,第三个硬盘没有分区. 开始分区 [html] view plaincopy fdisk /dev/sdc 输入m,可以查看有哪些操作 输入p 查看当前硬盘分区,目前没有分区. 输入n新建一个分区,输入p 建立分区,输入分区编号 1 然后会让你设置开始扇区(不知道是否这

linux下使用fdisk命令进行硬盘分区

添加一块硬盘 # fdisk -l Disk /dev/vdb: 53.7 GB, 53687091200 bytes 16 heads, 63 sectors/track, 104025 cylinders Units = cylinders of 1008 * 512 = 516096 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512

【转】ubuntu下自动挂载硬盘分区

1, 首先摸清我系统的硬盘分区等使用情况 sudo fdisk -l Disk /dev/sda: 128.0 GB, 128035676160 bytes 255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size