Linux基础_磁盘分区

如果在系统中新增一块硬盘时,我们得完成下方的工作

1:对磁盘进行分区

2:对该分区进行格式化

3:对新建好的文件系统进行检验

4:创建挂载点

一,磁盘分区

 # 为什么要进行磁盘分区

1:更容易进行管理和控制系统(相关的文件和目录都在同一个分区中)

2:系统的效率更高

3:可以限制用户使用磁盘的大小

4:更容易进行备份和恢复

# 硬盘的逻辑结构

一个硬盘在逻辑上可以分为块,磁道,磁柱,分区

块:盘片上最小的寻址单位,一个块可存储一定字节的数据

磁道:由一系列头尾相连的块组成的圆圈

磁柱:由多个磁道重叠在一起,由具有相同半径的盘面上的磁道组成

分区:分区由一组相邻的磁柱组成

# Linux系统中硬盘的分区

硬盘分区的分类:主分区,扩展分区,逻辑分区

主分区:一个硬盘最多只能有4个主分区

## 利用 fdisk和partprobe命令来进行硬盘分区管理

# fidsk

# fdisk -l 设备名称(如/dev/sdb)
[[email protected] 桌面]# fdisk -l /dev/sdb

Disk /dev/sdb: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 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: 0x00000000

-l    # 输出后面接的设备所有分区内容,当只输入fdisk -l时,输出系统中所有设备的分区

# fdisk中的参数
d    # 删除一个已经存在的分区 d=>delete
l    # 列出已知分区类型 l=>list
m    # 列出fdisk中所有的命令
n    # 添加新分区
p    # 打印分区表
q    # 不保存更改就退出
t    # 更改分区的系统ID
w    # 将表写入磁盘并退出
b    # 编辑BSD磁盘标签
c    # 切换DOS兼容性标志
o    # 创建新的空DOS分区表
s    # 创建新的空Sun磁盘标签
u    # 更改显示/输入单位
v    # 验证分区表
x    # 额外功能(仅限专家)

# 找出可用磁盘文件名称 df

[[email protected] 桌面]# df
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda2       14987656 7256016   6963640  52% /
tmpfs             502068      76    501992   1% /dev/shm
/dev/sda1         487652   34962    427090   8% /boot
/dev/sr0         3824484 3824484         0 100% /media/CentOS_6.8_Final

 # 新建磁盘分区

# 1 进入fdisk界面中

[[email protected] 桌面]# fdisk /dev/sdb

# 2 查看帮助(输入m)

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                    # 删除分区
   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)

# 3 输入n新建一个分区

Command (m for help): n
Command action
   e   extended                    # 副分区(扩展分区,逻辑上的,只能一个)
   p   primary partition (1-4)     # 主分区(最多能创建4个)
p                                  # 输入p来新建一个主分区
Partition number (1-4): 1          # 输入1表示新建第一个主分区
First cylinder (1-2610, default 1):     # 第一个不必输入分区编号,直接按下回车键(如若只创建一个分区,那么该分区从1-2610)
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-2610, default 2610): +5G    ## 第一个分区为一开始的大小到5G

# 4 查看当前分区信息

Command (m for help): p            # 查看当前的分区信息

Disk /dev/sdb: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 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: 0x3329997a

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         654     5253223+  83  Linux        # 此处为第一个分区
Device      # 设备文件名称,
Boot        # 表示是否为开机引导模块
Start End      # 表示这个分区在哪个柱面号码之间,可以决定次分区的大小
Blocks       # 以1K为单位的容量
ID          #
System        # 所属系统

# 5 创建第二个分区,并查看分区信息

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (655-2610, default 655):
Using default value 655
Last cylinder, +cylinders or +size{K,M,G} (655-2610, default 2610): +5G

Command (m for help): p

Disk /dev/sdb: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 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: 0x3329997a

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         654     5253223+  83  Linux
/dev/sdb2             655        1308     5253255   83  Linux

# 6 当根据上方操作新建了4个主分区后,打印当前分区情况(不能再新建主分区,只能创建4个主分区)

Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         654     5253223+  83  Linux
/dev/sdb2             655        1308     5253255   83  Linux
/dev/sdb3            1309        1962     5253255   83  Linux
/dev/sdb4            1963        2610     5205060   83  Linux

# 7 删除一个分区

# 删除一个分区
Command (m for help): d
Partition number (1-4): 4    # 输入要删除的分区的编号

# 再次查看有没有删除分区
Command (m for help): p
(前面省略)
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         654     5253223+  83  Linux
/dev/sdb2             655        1308     5253255   83  Linux
/dev/sdb3            1309        1962     5253255   83  Linux

# 8 创建扩展分区(在扩展分区中再新建分区)

扩展分区:扩展分区只是逻辑上的概念,表示扩展分区将剩下的空间打包好了,可以再在扩展分区的基础上新建分区(扩展分区本身不用来存储文件,就是一个逻辑上的概念)

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
e        # 选择创建扩展分区
Selected partition 4
First cylinder (1963-2610, default 1963):
Using default value 1963
Last cylinder, +cylinders or +size{K,M,G} (1963-2610, default 2610):
Using default value 2610

# 再次查看当前新建的扩展分区
Command (m for help): p
(前面省略)
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         654     5253223+  83  Linux
/dev/sdb2             655        1308     5253255   83  Linux
/dev/sdb3            1309        1962     5253255   83  Linux
/dev/sdb4            1963        2610     5205060    5  Extended

# 9 再扩展分区的基础上新建分区

Command (m for help): p
(前面省略)
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1         654     5253223+  83  Linux
/dev/sdb2             655        1308     5253255   83  Linux
/dev/sdb3            1309        1962     5253255   83  Linux
/dev/sdb4            1963        2610     5205060    5  Extended
/dev/sdb5            1963        2094     1060258+  83  Linux        # 扩展分区上新建的分区(称为逻辑分区)

# 10 保存分区

Command (m for help): w                        # 保存分区
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.
[[email protected] 桌面]# partprobe             # 更新当前分区
Warning: WARNING: the kernel failed to re-read the partition table on /dev/sda (设备或资源忙).  As a result, it may not reflect all of your changes until after reboot.
[[email protected] 桌面]# ls /dev/sdb            # 查看分区情况
/dev/sdb    

二,格式化

 # mkfs

# 2 多种格式化方法
[email protected] 桌面]# mkfs
mkfs          mkfs.ext2     mkfs.ext4     mkfs.msdos
mkfs.cramfs   mkfs.ext3     mkfs.ext4dev  mkfs.vfat
# 3 格式化分区例子 格式化sdb3
[[email protected] 桌面]# mkfs.ext4 /dev/sdb2
mke2fs 1.41.12 (17-May-2010)
文件系统标签=            # 指的是分区的名称
操作系统:Linux
块大小=4096 (log=2)        # block的大小设置为4K
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
328656 inodes, 1313313 blocks        # 该行决定inode/block数量
65665 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=1346371584
41 block groups
32768 blocks per group, 32768 fragments per group
8016 inodes per group
Superblock backups stored on blocks:
    32768, 98304, 163840, 229376, 294912, 819200, 884736

正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成

This filesystem will be automatically checked every 24 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.

# -t:可以接文件系统进行格式,如ext2

# mke2fs 可以用来指定格式化时的的各项参数

[[email protected] 桌面]# mke2fs -j -L "doaoao1" -b 2048 -i 8192 /dev/sdb3
mke2fs 1.41.12 (17-May-2010)
文件系统标签=doaoao1
操作系统:Linux
块大小=2048 (log=1)
分块大小=2048 (log=1)
Stride=0 blocks, Stripe width=0 blocks
656880 inodes, 2626626 blocks
131331 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=540016640
161 block groups
16384 blocks per group, 16384 fragments per group
4080 inodes per group

# 卷标设置为doaoao1
# block大小指定为2048
# 每8192bytes分配一个node
# 构建journal为EXT3文件系统
# 格式化分区 /dev/sdb3 

三,磁盘检验

 # fsck

-t    #
-A    # 依据/etc/fstab的内容,将需要的设备扫描一遍
-a    # 自动修复检查到的有问题的扇区
-y    # 与a类似
-C    # 可以再检验过程中使用一个直方图来显示目前进度

EXT2/EXT3的额外功能
-f    # 强制检查
-D    # 针对文件系统下的目录进行优化配置

# 检验 /dev/sdb2[[email protected] 桌面]# fsck -Cf /dev/sdb2
fsck from util-linux-ng 2.17.2
e2fsck 1.41.12 (17-May-2010)
第一步: 检查inode,块,和大小
第二步: 检查目录结构
第3步: 检查目录连接性
/lost+found未找到.创建<y>?
(下面省略)

 # badblocks

用来检擦硬盘或者软盘扇区有没有环轨的命令

[[email protected] 桌面]# badblocks -xxx [设备名称]
-s    # 在屏幕上列出进度
-v    # 可以在屏幕上看到进度
-w    # 使用写入的方式来测试

# 例子

[[email protected] 桌面]# badblocks -sv /dev/sdb2

四,挂载/卸载

 # 挂载

[[email protected] 桌面]# mount /dev/sdb2 /test_sdb1/
[[email protected] ~]# mkdir /test1                // 创建用来挂载的文件夹
[[email protected] ~]# mkdir /test2                // 创建用来挂载的文件夹
[[email protected] ~]# mkdir /test3                // 创建用来挂载的文件夹
[[email protected] ~]# mount /dev/sdb3 /test1/        // 挂载
[[email protected] ~]# mount /dev/sdb3 /test2/
[[email protected] ~]# mount /dev/sdb3 /test3/
[[email protected] ~]# mount /dev/sdb3 /opt/
[[email protected] ~]# df
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda2       14987656 4414456   9805200  32% /
tmpfs             502068     224    501844   1% /dev/shm
/dev/sda1         487652   34962    427090   8% /boot
/dev/sdb2        5039624   10248   4766716   1% /test_sdb1
/dev/sdb3        5039624   10264   4766700   1% /test1
/dev/sdb3        5039624   10264   4766700   1% /test2
/dev/sdb3        5039624   10264   4766700   1% /test3
/dev/sdb3        5039624   10264   4766700   1% /opt

# 当在挂载目录/opt下创建一个文件时,其它挂载目录下也会跟着创建

# 进入目录/opt/
[[email protected] ~]# cd /opt/

# 在/opt/下创建一个文件a.txt
[[email protected] opt]# touch a.txt
[[email protected] opt]# cd
[[email protected] ~]# ls /opt/
a.txt  lost+found
[[email protected] ~]# ls /test1/
a.txt  lost+found
[[email protected] ~]# ls /test2/
a.txt  lost+found

# 将文件a.txt删除
[[email protected] ~]# rm -rf /test1/a.txt
[[email protected] ~]# ls /opt
lost+found
[[email protected] ~]# ls /test3
lost+found

# 在/opt/下创建一个文件abc.txt
[[email protected] ~]# touch /test3/abc.txt
[[email protected] ~]# ls /opt/
abc.txt  lost+found
[[email protected] ~]# ls /test2/
abc.txt  lost+found

# 卸载

[[email protected] ~]# umount /test3
[[email protected] ~]# df
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda2       14987656 4414480   9805176  32% /
tmpfs             502068     224    501844   1% /dev/shm
/dev/sda1         487652   34962    427090   8% /boot
/dev/sdb2        5039624   10248   4766716   1% /test_sdb1
/dev/sdb3        5039624   10264   4766700   1% /test1
/dev/sdb3        5039624   10264   4766700   1% /test2
/dev/sdb3        5039624   10264   4766700   1% /opt

## 当opt的源设备被卸载时,再在opt中新建文件时,系统就会去找opt的上一层目录(根目录),看根目录挂载在哪个分区中,将新建的文件放在该分区中

[[email protected] ~]# umount /opt
[[email protected] ~]# ls /opt
rh
[[email protected] ~]# touch /opt/abc.txt
[[email protected] ~]# ls /opt
abc.txt  rh
[[email protected] ~]#
[[email protected] ~]# df
Filesystem     1K-blocks    Used Available Use% Mounted on
/dev/sda2       14987656 4414480   9805176  32% /            # 根目录在sda2上
tmpfs             502068     224    501844   1% /dev/shm
/dev/sda1         487652   34962    427090   8% /boot
/dev/sdb2        5039624   10248   4766716   1% /test_sdb1
/dev/sdb3        5039624   10264   4766700   1% /test1
/dev/sdb3        5039624   10264   4766700   1% /test2

待补充...

原文地址:https://www.cnblogs.com/Doaoao/p/10344436.html

时间: 2024-08-04 04:27:50

Linux基础_磁盘分区的相关文章

【Red Hat Linux基础】 磁盘分区详细教程

实验内容: 1.磁盘分区 2.格式化文件系统 3.挂载与卸载文件系统 4.文件系统自动挂载 实验步骤: Linux中挂接好新的硬盘设备并启动主机后,系统会自动检测并加载该硬盘,无需额外安装驱动. 执行命令"fdisk -l"列出系统中所有硬盘设备及分区信息 从上图可以看出我的系统检测出了2块硬盘分别是"sda"和"sdb"都在dev目录下,其中sda硬盘以经进行了分区. sdb硬盘还未分区. 图中: Device:表示分区的设备文件名称. Boo

linux笔记_磁盘分区

一.分区的意义 1.不同操作系统往往不可以同时装载在同一个分区,分区解决了不同操作系统装载在同一个物理硬盘的兼容性问题 2.机械硬盘盘片外圈读写速度相对内圈要快,分区可以把常用数据限制在读写速度较快的盘片外圈 3.分区会减少文件系统的文件碎片,提高磁盘子系统工作效率 4.方便文件分类管理,提高磁盘空间的使用效率 5.分区可提高数据的安全性,防止数据丢失 一块硬盘最多只能有四个主分区(主分区+扩展分区最多只能有四个),分区号也是1到4,逻辑分区要等扩展分区建立后才能创建,逻辑分区的分区号从5开始,

Linux基础之磁盘管理

 Linux基础之磁盘管理         关于Linux中磁盘管理我们应该从以下四个方面入手,去了解和学习磁盘管理的知识. 第一点 磁盘的结构--硬盘         硬盘的参数 结构:磁盘的盘片,磁头,马达(机械键盘) 类型:固态硬盘(SSB)和机械硬盘 接口:早期的IDE接口,现在的SATA,SCSI,SAS 还有容量,转速,传输速度,缓存等. 硬盘存储术语 head: 磁头 track: 磁道 cylinder: 柱面 secotr: 扇区  512bytes(字节) 第二点 磁盘的分区

Linux基础之磁盘的挂载与卸载

在linux系统中,挂载是指将一个设备(通常是存储设备)挂接到一个已存在的目录上.我们要访问存储设备中的文件,必须将文件所在的分区挂载到一个已存在的目录上,然后通过访问这个目录来访问存储设备.比如访问光盘,u盘,磁盘分区都需要通过挂载的方式才可以正常访问和使用. 在挂载之前需要确定的有: 单一文件系统不应该被重复挂载在不同的挂载点中 单一目录不应该重复挂载多个文件系统 作为挂载点的目录理论上应该都是空目录才行 mount命令 mount可将指定设备中的指定的文件系统加载到linux目录下.可将经

linux Centos下磁盘分区及文件系统创建与挂载

linux Centos下磁盘分区及文件系统创建与挂载 MBR(Master Boot Record)是传统的分区机制,应用于绝大多数使用BIOS的PC设备. 1.MBR支持32bit和64bit系统 2.MBR支持分区数量有限 3.MBR只支持不超过2T的硬盘,超过2T的硬盘只能使用2T空间(使用其他方法) 1.主分区:最多只能创建4个主分区(可使用) 2.扩展分区:一个扩展分区会占用一个主分区位置(不可使用,可化为逻辑分区) 3.逻辑分区:Linux最多支持63个IDE分区和15个SCSI分

linux初学者-普通磁盘分区篇

linux初学者-普通磁盘分区篇 磁盘是计算机的重要组成部分,是记录数据的场所.在使用磁盘时,经常需要对其进行分区来实现不同的用途.下文将介绍在linux系统中普通磁盘分区的方法. "fdisk -l"命令可以查看系统中所有的磁盘设备,"df -Th"可以查看系统中正在挂载的磁盘设备,与"df"相同,"blkid"可以看到系统中可以挂载的设备.这些命令在磁盘分区之前和之后都是很有帮助的. 磁盘分区是通过命令"fdis

Linux系统下磁盘分区与管理

磁盘分区与管理 1.Linux系统设备文件 crw-rw----. 1 root root    253,  0 Apr 18 15:31 rtc0   #字符文件 lrwxrwxrwx. 1 root root           3 Apr 18 15:31 scd0 -> sr0 brw-rw----. 1 root disk      8,  0 Apr 18 15:31 sda    #设备文件 brw-rw----. 1 root disk      8,  1 Apr 18 15:

Linux基础之磁盘概念及其管理工具fdisk

引言:冯诺依曼体系中的数据存储器就是我们常说的磁盘或硬盘,它是计算机不可缺少的一个组件,下面来看看Linux中磁盘的基础概念及管理工具fdisk 实验环境CentOS7.2 磁盘概念 按磁盘属性分类有机械硬盘跟固态硬盘 (1)机械硬盘:内部真空 磁盘:正反面含有磁性物质的盘片,由一个马达固定所有磁盘转动,固定角速度 每个盘片正反面各有一个磁头,所有磁头固定在一个机械臂上 平均寻道时间:5400rpm, 7200rpm, 10000rpm, 15000rpm转速 track(磁道):每个盘片上出厂

Linux crond任务调度 磁盘分区和挂载 网络环境 进程管理 服务(service)管理 动态监控进程 rpm和yum

crond任务调度 1.基本语法 1.crontab [选项] -e : bianji crontab定时任务 -l : 查询crontab -r : 删除当前用户所有的crontab任务2.编辑模式:时间格式 命令或脚本路径 参数说明 示例: 例子: 每分钟执行查看一次/ect目录,把目录内容写进/tml/a.txt下 具体实现步骤: 1.crontab -e 2.*/1 * * * * ls -l /etc >> /tmp/a.txt 3.保存退出 上述权限示例 Linux 磁盘分区.挂载