linux下磁盘分区、挂载实操

文章目录

      • 一、磁盘分区
        • 1.查看磁盘分区情况
        • 2.使用fdisk进行分区(2T以下)
        • 3.删除分区
        • 4.使用parted对磁盘进行分区(大于2T)
      • 二、磁盘格式化
        • 1.格式化文件系统
        • 2.关闭文件系统自检
        • 3.禁止检查磁盘文件系统,开机修复错误
      • 三、磁盘挂载
        • 1. mount命令介绍
        • 2. 挂载/dev/sdb2 到/mnt文件夹下
        • 3.取消挂载

一、磁盘分区

1.查看磁盘分区情况
[root@fan102 ~]# fdisk -l | grep sd

linux下磁盘分区、挂载实操_第1张图片
从图中得出,目前有两块磁盘,一个做了分区,一个还未做分区

2.使用fdisk进行分区(2T以下)

2.1 新增主分区

[root@fan102 ~]# fdisk /dev/sdb


2.2 新增扩展分区

2.3 新增逻辑分区

2.4 再新增一个逻辑分区,最后信息写入,使用分区生效


3.再次查看磁盘分区

[root@fan102 ~]# fdisk -l | grep sd


4.重读分区表

[root@fan102 ~]# partx -a /dev/sdb

linux下磁盘分区、挂载实操_第2张图片

3.删除分区

3.1 输入d一直回车,也可以通过 (d 分区名)来指定删除
相关命令如下

[root@fan102 ~]# fdisk /dev/sdb
[root@fan102 ~]# fdisk -l | grep sd

4.使用parted对磁盘进行分区(大于2T)

使用parted分区,需要先将磁盘转换成GPT格式(GPT格式没有extend类型)
相关命令如下

[root@fan102 ~]# parted /dev/sdb


开机自动挂载文件
由于mount命令直接输入是临时生效,下次重启挂载的设备分区就无法使用了。
/etc/fstab文件,存放系统一些静态文件的地方,在系统启动的时候,系统默认的读取这个文件的信息,将指定的挂载点,进行挂载

[root@fan102 ~]# vim /etc/fstab
添加以下内容
/dev/sdb2 /mnt xfs defaults 0 0

解释一下每列的意义

/dev/sdb2 /mnt xfs defaults 0 0
第一列: 是一个设备的名字,可以是文件系统,也可以是设备名称,NFS远程网络文件系统
mount /dev/sdb2 /mnt # 种写法
mount 192.168.11.15:/home/nfs /mnt/ -o nolock #把本地的/mnt文件夹挂载到nfs文件系统上,且不加锁
第二列:挂载点
就是自己创建的一个目录,是一个已经存在的目录
第三列,linux能够支持的文件系统类型
ext3 ext4 nfs swap
第四列: 挂载的功能选项,有很多,默认是用 defaults
第五列: dump
表示将整个文件夹内从备份一般不对挂载点备份,默认都是0
第六列: fsck 磁盘检查
默认都是0,不对磁盘检查,根文件系统,默认是检查的

查看磁盘信息
相关命令如下

[root@fan102 ~]# fdisk -l

二、磁盘格式化

1.格式化文件系统

查看磁盘情况(文件系统、挂载信息)

linux下磁盘分区、挂载实操_第3张图片
注意看sdb1,目前文件系统类型是空,表示没有格式化

通过mkfs.ext4 /dev/sdb1 将改分区进行格式化
相关命令如下

[root@fan102 ~]# mkfs.ext4 /dev/sdb1


再次查看,就会发现sdb1的文件系统类型变成了ext4
相关命令如下

[root@fan102 ~]# lsblk -f

2.关闭文件系统自检

相关命令如下

[root@fan102 ~]# tune2fs -c -1 /dev/sdb1

linux下磁盘分区、挂载实操_第4张图片

3.禁止检查磁盘文件系统,开机修复错误

查看是否为开机自检
相关命令如下

[root@fan102 ~]# cat /etc/fstab

修改/etc/fstab文件,然后改成如下设置
结尾的数字是0就不检查错误,1就检查错误
linux下磁盘分区、挂载实操_第5张图片
扩展:用fsck命令针对磁盘进行修复检查
相关命令如下

[root@fan102 ~]# fsck -t ext4 /dev/sdb1

linux下磁盘分区、挂载实操_第6张图片

三、磁盘挂载

1. mount命令介绍

mount命令能够将指定的文件系统挂载到指定的目录上 (挂载点,linux系统上的一个文件夹)
1一个新的硬盘插到机器上,分区之后,针对分区格式化文件系统 ntfs,ext3,ext4,xfs

2.此时还未挂载分区,分区还只是一个封闭的空间,无法读写

3.针对分区和Linux的文件夹,合并,关联,挂载,即可通过访问被挂载的文件夹看到磁盘的数据

mount命令常用参数
-l 显示系统所有挂载的设备信息
-t 指定设备的文件系统类型,如果不指定,mount自动选择挂载的文件系统类型
-o 添加挂载的功能选项 ,用的很多
	-r read,挂载后的设备,是只读的
	-w write,读写参数,-o rw权限,允许挂载后读写操作
mount的-o参数详解
async 以异步的方式处理文件系统I0,加速写入,数据不会同步的写入到磁盘,写入到一个缓冲区的,提高系统性能,损失数据安全性
sync 所有的I0操作同步处理,数据同步写入到磁盘,性能较弱,提高数据读写的安全性
atime/noatime 文件被访问的时候,是否修改其时间戳,能够提升磁盘IO速度 
auto/noauto 可以通过-a参数自动挂载,不自动挂载
defaults这个默认参数,涵盖了 rw,suid,dev,exec,auto,nouser,async,等等参数exec/noexec ,是否允许执行挂载点内的可执行命令,使用了noexec,提升磁盘安全性
ro 只读
rw 读写

对于centos7新出现的mount选项有
att2 在磁盘上存储内连扩展属性,提升磁盘性能
inode64 允许在文件系统的任意位置创建inode
noquota 强制关闭文件系统的限额功能
2. 挂载/dev/sdb2 到/mnt文件夹下
# 格式化磁盘
[root@fan102 ~]# mkfs.xfs /dev/sdb2
# 查看磁盘信息
[root@fan102 ~]# lsblk -f
# 挂载(必须注意/dev/sdb2是分区格式化文件系统之后才能使用 mkfs.xfs /dev/sdb2,挂载完成之后,磁盘就可以写入数据了)
[root@fan102 ~]# mount /dev.sdb2 /mnt
# 查看挂载信息
[root@fan102 ~]# mount -l | grep /dev/sdb2


磁盘挂载完成后,就可以写入数据了

查看磁盘情况
命令如下

[root@fan102 ~]# df -hT
-hT , T参数会输出类型

linux下磁盘分区、挂载实操_第7张图片

3.取消挂载

命令如下

# 取消挂载(注意此时/dev/sdb2设备必须没有人在用 才能取消挂载)
[root@fan102 ~]# umount /mnt


另附一个案例

# 以只读的形式挂载设备
[root@fan102 ~]# mount -o ro /dev/sdb5 /mnt
# 禁止挂载的设备执行二进制文件
#挂载的时候,添加了noexec参数,是无法执行脚本文件的,只能在挂载的时候,是允许exec才行
[root@fan102 ~]# mount -o noexec /dev/sdb5 /mnt 

文章有用的话,请点赞+关注,您的鼓励是我最大的动力,更多好帖敬请期待,加油

+++++++++++++++++++++++++++++++++++++++++
如有问题可+Q:1602701980 共同探讨
+++++++++++++++++++++++++++++++++++++++++

你可能感兴趣的:(linux,服务器,运维)