|NO.Z.00045|——————————|LinuxBasicEnd|——|Linux&磁盘管理.V04|

一、fdisk 命令手工分区
 
fdisk交互指令说明
a 设置可引导标记
b 设置bsd磁盘标签
c 设置DOS操作系统兼容标记
d 删除一个分区
I 显示已知的文件系统类型,82为Linux swap分区,83为Linux分区
m 显示帮助菜单
n 新建分区
o 建立空白DOS分区表
p 显示分区列表
q 不保存退出
s 新建空白SUN磁盘标签
t 改变一个分区的系统ID
u 改变显示记录单位
v 验证分区表
w 保存退出
x 附加功能(仅专家)
 
二、fdisk 命令手工分区
### --- fdisk 命令手工分区

~~~     n---p 主----1 分区号----1 起始柱面-----分区大小+100M-----w
~~~     n---e 扩展---2 分区号---124 起始柱面----1024 柱面(所有剩余空间都分配给扩展分区)
~~~     n---l 逻辑---不用指定分区号---124 起始柱面----+100M(指定大小)-----w
 
### --- 有时因为系统的分区表正忙,则需要重新启动系统之后才能使新的分区表生效。

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.                  // 要求重启动,才能格式化
Syncing disks.

三、partprobe

### --- partprobe

~~~     强制重读所有分区文件,重新挂载分区文件内所有分区。
~~~     这不是分区必须命令,如果没有提示重启,可以不执行,
~~~     也可以重启系统(Warning: Unable to open /dev/hdc read-write (Read-only file system). /dev/hdc hasbeen opened read-only.
~~~     光盘只读挂载,不是错误,不用紧张)
~~~     如果这个命令不存在请安装 parted-2.1-18.el6.i686 这个软件包
 
### --- 格式化        建立文件系统        ext3 是 linux 默认文件系统
~~~     mkfs 命令非常简单易用,
~~~     不过是不能调整分区的默认参数的(比如块大小是 4096),这些默认
~~~     参数除非特殊情况,否则不需要调整,
~~~     如果想要调整就需要使用 mke2fs 命令进行重新格式化,命令

mkfs -t ext4 /dev/sdb1
mkfs -t ext4 /dev/sdb5
 
### --- 格式如下:
### --- 选项:
~~~     -t 文件系统:    指定格式化成哪个文件系统,如 ext2,ext3,ext4
~~~     -b 字节:        指定 block 块的大小
~~~     -i 字节:        指定“字节/inode”的比例,也就是多少个字节分配一个 inode
~~~     -j:            建立带有 ext3 日志功能的文件系统
~~~     -L 卷标名:      给文件系统设置卷标名,就不使用 e2label 命令设定了

[root@localhost ~]# mke2fs [选项] 分区设备文件名
 
### --- 举个例子:
~~~     格式化分区,并指定 block 的大小为 2048

[root@localhost ~]# mke2fs -t ext4
### --- 建立挂载点
~~~     mkdir /disk1-----------------/dev/sdb1  把 sdb1 打算挂载到/disk1 目录中

mkdir /disk5----------------/dev/sdb5
### --- 挂载

mount /dev/sdb1 /disk1
mount /dev/sdb5 /disk5
 
### --- 查看

mount                                                           // 查看所有已经挂载的分区和光盘
fdisk -l                                                        // 查看系统分区
df                                                              // 查看分区占用百分比
### --- 自动挂载
~~~     修改分区自动挂载文件

vi /etc/fstab                                                   // 注意:此文件直接参与系统启动,如果修改错误,系统启动报错
/dev/sdb1       /disk1      ext3        defaults        1 2
~~~     第一列:        设备文件名
~~~     第二列         挂载点
~~~     第三列         文件系统
~~~     第四列         挂载选项
~~~     第五列     1   是否可以被备份         0 不备份       1 每天备份 2 不定期备份
~~~     第六列     2   是否检测磁盘 fsck      0 不检测      1 启动时检测 2 启动后检测
~~~     也可以使用 UUID 进行挂载,UUID(硬盘通用唯一识别码,可以理解为硬盘的 ID)
~~~     这个字段在 CentOS 5.5 的系统当中是写入分区的卷标名或分区设备文件名的,
~~~     现在变成了硬盘的 UUID。这样做的好处是当硬盘增加了新的分区,
~~~     或者分区的顺序改变,再或者内核升级后,任然能够保证分区能够正确的加载,
~~~     而不至于造成启动障碍那么每个分区的 UUID 到底是什么呢?
~~~     我们讲过的 dumpe2fs 命令是可以查看到的,命令
 
### --- 如下:

[root@localhost ~]# dumpe2fs /dev/sdb5
~~~     或
[root@localhost ~]# ls -l /dev/disk/by-uuid/
重启测试

~~~     或 mount -a
~~~     重新挂载所有内容,用它进行测试

四、实验专题;手工分区

### --- 添加一块新的硬盘:

[root@server21 ~]# lsblk
sdb      8:16   0  100G  0 disk                                 // sdb是一块全新的硬盘,没有做任何分区
 
### --- 为sdb2分区

[root@server21 ~]# fdisk /dev/sdb       
~~~     分主分区
Command (m for help):m                                          // m表示获取帮助
Command (m for help): p                                         // 打印分区信息
Command (m for help): l                                         // l可以查看到分区号是哪一个;默认不写就是标准分区,83ID号
Command (m for help): n                                         // n新建分区
Command action                      
   e   extended                                                 // 扩展分区
   p   primary partition (1-4)                                  // 主分区1个主分区,在主分区下新建扩展分区
p                                                               // 新建主分区
Partition number (1-4): 1                                       // 选择主分区号,建议不要跳,若是跳过前面的会不可以使用,最好从1开始
First cylinder (1-13054, default 1):                            // 选择其实柱面;一圈柱面大概80多兆;默认是从第1个柱面开始分
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-13054, default 13054): +20G // 允许可以写成字节数,柱面大小自己可以定义;最小分区单位是81个兆;加字节单位才是按大小来算的,若是不加柱面是按柱面来算
Command (m for help): p
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        2612    20980858+  83  Linux   // 第一个新建完成
~~~     分扩展分区;把剩余所有空间给扩展分区
e
Partition number (1-4): 2
First cylinder (2613-13054, default 2613): 
Using default value 2613
Last cylinder, +cylinders or +size{K,M,G} (2613-13054, default 13054): 
Using default value 13054
Command (m for help): p
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        2612    20980858+  83  Linux
/dev/sdb2            2613       13054    83875365    5  Extended
~~~     逻辑分区
Command (m for help): n
Command action
   l   logical (5 or over)                                      // 创建完扩展分区,就会显示l逻辑分区
   p   primary partition (1-4)   
~~~     省略了选择磁盘ID号的过程
Command (m for help): n
Command action
   l   logical (5 or over)
   p   primary partition (1-4)
l
First cylinder (2613-13054, default 2613): 
Using default value 2613
Last cylinder, +cylinders or +size{K,M,G} (2613-13054, default 13054): +2G
Command (m for help): p
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        2612    20980858+  83  Linux
/dev/sdb2            2613       13054    83875365    5  Extended
/dev/sdb5            2613        2874     2104483+  83  Linux
Command (m for help): w                                         // 保存退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
 
### --- 报错:Device or resource busy:需要重启后会生效,说明分区表正忙。
### --- 但是不会影响分区操作

[root@server21 ~]# lsblk
sdb      8:16   0  100G  0 disk 
├─sdb1   8:17   0   20G  0 part 
├─sdb2   8:18   0    1K  0 part 
└─sdb5   8:21   0    2G  0 part 
[root@server21 ~]# fdisk -l 
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        2612    20980858+  83  Linux    // 可以格式化
/dev/sdb2            2613       13054    83875365    5  Extended // 不可以格式化;因为它是扩展分区
/dev/sdb5            2613        2874     2104483+  83  Linux    // 可以格式化
 
### --- 格式化

[root@server21 ~]# mkfs -t ext4 /dev/sdb1                        // mkfs不可以调整数据库大小
Writing inode tables: done                            
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done 
[root@server21 ~]# mkfs -t ext4 /dev/sdb5
~~~     mke2fs                                                  // 可以调整数据块大小
[root@server21 ~]# fdisk -l
   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1        2612    20980858+  83  Linux
/dev/sdb2            2613       13054    83875365    5  Extended
/dev/sdb5            2613        2874     2104483+  83  Linux 
 
### --- 挂载

[root@server21 ~]# mkdir /disk1
[root@server21 ~]# mkdir /disk5
[root@server21 ~]# mount /dev/sdb1 /disk1
[root@server21 ~]# mount /dev/sdb1 /disk5
[root@server21 ~]# mount
/dev/sdb1 on /disk1 type ext4 (rw)
/dev/sdb1 on /disk5 type ext4 (rw)
[root@server21 ~]# df -h
/dev/sdb1        20G   44M   19G   1% /disk1
/dev/sdb1        20G   44M   19G   1% /disk5
~~~     分区分号之后,理论上分区大小是不可以调整的
### --- 添加自动挂载
~~~     自动挂载,只允许把固定设备添加自动挂载;挂载可以为磁盘分区号或者UUID
~~~     查询磁盘的UUID

[root@server21 ~]# vim /etc/fstab 
[root@server21 ~]# ll /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 root root 10 Feb  4 10:14 11baea76-8f6e-4a32-acd5-3a269ca6b319 -> ../../sdb5
lrwxrwxrwx 1 root root 10 Feb  4 10:14 c0f09e0d-9507-4083-bfd7-4ae872021028 -> ../../sdb1
[root@server21 ~]# vim /etc/fstab 
UUID=c0f09e0d-9507-4083-bfd7-4ae872021028 /disk1                 ext4    defaults        0 0
UUID=11baea76-8f6e-4a32-acd5-3a269ca6b319 /disk5                 ext4    defaults        0 0 
OR
/dev/sdb1 /disk1                 ext4    defaults        0 0
/dev/sdb5 /disk5                 ext4    defaults        0 0 
~~~     设备文件名:挂载点:文件系统:挂载选项:1是否可以被备份,0不备份,1每天备份,
~~~     2不定期备份:2是否检测磁盘fsck,0不检测,1启动时检测2启动后检测;   
~~~     #只有/分区在启动时会去检测,其他磁盘不需要添加检测
### --- 重启验证

[root@server21 ~]# mount
/dev/sdb1 on /disk1 type ext4 (rw)
/dev/sdb5 on /disk5 type ext4 (rw)

 
 
 
 
 
 
 
 
 

Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
                                                                                                                                                   ——W.S.Landor

 

posted on 2022-03-23 18:37  yanqi_vip  阅读(50)  评论(0)    收藏  举报

导航