4.7/4.8 磁盘挂载
时间:2022-04-27
本文章向大家介绍4.7/4.8 磁盘挂载,主要内容包括只有格式化后,才能挂在文件系统、mount和umount命令、mount命令用法、umount命令、配置文件/etc/fstab、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。
只有格式化后,才能挂在文件系统
- 先把磁盘中的分区删除(不管是否分区,都可格式化)
- 然后格式化文件系统,mkfs.xfs /dev/sdb
[root@hf-01 ~]# mkfs.xfs -f /dev/sdb
meta-data=/dev/sdb isize=256 agcount=4, agsize=1310720 blks
= sectsz=512 attr=2, projid32bit=1
= crc=0
data = bsize=4096 blocks=5242880, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=0
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
- 使用blkid /dev/sdb 命令查看文件系统
[root@hf-01 ~]# blkid /dev/sdb
/dev/sdb: UUID="fdf63a90-eaf9-4cd0-b82c-5afd2965da2a" TYPE="xfs"
- Linux系统中,磁盘要想访问,必须挂载到一个挂载点上(挂载点就是目录)
- 使用mount /dev/sdb /mnt/命令进行挂载
[root@hf-01 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda3 18G 2.4G 16G 14% /
devtmpfs 489M 0 489M 0% /dev
tmpfs 494M 0 494M 0% /dev/shm
tmpfs 494M 6.7M 487M 2% /run
tmpfs 494M 0 494M 0% /sys/fs/cgroup
/dev/sda1 197M 75M 123M 38% /boot
[root@hf-01 ~]# mount /dev/sdb /mnt/
[root@hf-01 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda3 18G 2.4G 16G 14% /
devtmpfs 489M 0 489M 0% /dev
tmpfs 494M 0 494M 0% /dev/shm
tmpfs 494M 6.7M 487M 2% /run
tmpfs 494M 0 494M 0% /sys/fs/cgroup
/dev/sda1 197M 75M 123M 38% /boot
/dev/sdb 20G 33M 20G 1% /mnt
会看到最后一行,多了一个分区,也可称之为磁盘
- 在使用mount命令就可以看到磁盘的文件系统
- 磁盘卸载掉,使用umount命令
[root@hf-01 ~]# cd /mnt/
[root@hf-01 mnt]# ls
[root@hf-01 mnt]# touch 1.txt 2.txt
[root@hf-01 mnt]# mkdir 124
[root@hf-01 mnt]# cd
[root@hf-01 ~]# umount /dev/sdb
[root@hf-01 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda3 18G 2.4G 16G 14% /
devtmpfs 489M 0 489M 0% /dev
tmpfs 494M 0 494M 0% /dev/shm
tmpfs 494M 6.7M 487M 2% /run
tmpfs 494M 0 494M 0% /sys/fs/cgroup
/dev/sda1 197M 75M 123M 38% /boot
[root@hf-01 ~]#
- 若是在当前目录下,可以umount -l /mnt/ 其中 l 表示lazy懒惰的意思
[root@hf-01 ~]# mount /dev/sdb /mnt/
[root@hf-01 ~]# ls /mnt
124 1.txt 2.txt
[root@hf-01 ~]# cd /mnt/
[root@hf-01 mnt]# umount /dev/sdb
umount: /mnt:目标忙。
(有些情况下通过 lsof(8) 或 fuser(1) 可以
找到有关使用该设备的进程的有用信息)
[root@hf-01 mnt]# umount -l /mnt/
[root@hf-01 mnt]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/sda3 18G 2.4G 16G 14% /
devtmpfs 489M 0 489M 0% /dev
tmpfs 494M 0 494M 0% /dev/shm
tmpfs 494M 6.7M 487M 2% /run
tmpfs 494M 0 494M 0% /sys/fs/cgroup
/dev/sda1 197M 75M 123M 38% /boot
mount和umount命令
mount命令
- mount命令,用于加载文件系统到指定的加载点
- 格式: mount /dev/sdb /mnt/ 其中/dev/sdb就是那个磁盘,/mnt/表示挂载点
- 挂载点就是磁盘的入口,没有挂载点就无法在磁盘中进行读写
mount命令用法
- man mount
- 然后 /defaults 去搜索
- 不加任何选项,包含defaults用法,默认包含以下权限
defaults
Use default options: rw, suid, dev, exec, auto, nouser, and async.
- rw,表示可读写
- suid,表示允许这个分区中的文件设置suid权限
- dev 就不用管了
- exec,表示是否可执行。若改为 no exec 那挂载下面的分区文件就没有可执行权限了
- auto,表示自动挂载
- nouser,表示是否允许普通用户去挂载(默认只能是root用户)
- async,表示不会实时同步
- mount -o remount,rw /dev/foo /dir 表示重新挂载
umount命令
- umount命令,用于卸载已经加载的文件系统
- 格式: umount /dev/sdb
- 参数: -l 可以在当前目录下删除磁盘
- umount -l /mnt/
配置文件/etc/fstab
- /etc/fstab配置文件,系统再启动中,默认挂载的磁盘和分区都是在这个文件中去配置的
#
UUID=ce0b257e-62c5-4355-9117-b1edc7085e58 / xfs defaults 1 1
UUID=a9ea9597-52e8-4d73-8975-0ecb3970c760 /boot xfs defaults 1 2
UUID=06c3de3e-7c95-4f75-905e-c5d4fbf4a5fa swap swap defaults 0 0
- 第一列表示为,就是设备号,还可以写成/dev/sdb
- 第二列表示为,挂载点
- 第三列表示为,分区格式
- 第四列表示为,挂载选项(默认为defaults)
- 第五列表示为,是否备份,改为1就是备份,但基本没有用
- 第六列表示为,设置优先级,作用是是否检测。重新启动时,它会检测磁盘是否有错误,在设置成 1 和 2 就是去检测,1 的级别比 2 更高
#
# /etc/fstab
# Created by anaconda on Sun Aug 20 21:03:05 2017
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=ce0b257e-62c5-4355-9117-b1edc7085e58 / xfs defaults 1 1
UUID=a9ea9597-52e8-4d73-8975-0ecb3970c760 /boot xfs defaults 1 2
UUID=06c3de3e-7c95-4f75-905e-c5d4fbf4a5fa swap swap defaults 0 0
这里自己添加的
/dev/sdb /mnt xfs defaults 0 0
若想写UUID,可以使用blkid命令去查看填写
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- Mística:一款支持任意协议的应用程序通信工具
- 为什么阿里巴巴禁止使用BigDecimal的equals方法做等值比较?
- 原创 | codefroces中的病毒,这题有很深的trick,你能解开吗?
- 原创 | git的远程分支是干啥的,和本地的有什么区别?
- 京东技术主导:全新架构的分布式事务Hmily 2.1.1发布
- iOS音视频接入-TRTC接入前期key、秘钥等准备
- 你一定不知道的 Linux 使用技巧
- 当 Python 爬虫搭配起 Bilibili 唧唧,奇怪的生产力出现了
- 一个简单的小技巧,监控网页所有动态标签创建的调用处
- SAP Spartacus storefrontapp index.html的design time和runtime
- OS开发爱好者福利来了:树莓派上编译C语言,顺便掌握一波硬件知识
- 一个简单易用的图标字体库和CSS框架fontawesome
- OLAP 数据平台 Druid 第一步,编写 Spec 配置
- 搭建 Kubernetes 集群 Dashboard 2.0+ 可视化插件
- Kubernetes 集群基本概念