Linux 挂载管理(mount)

简介:
2016-01-04 09:06 by pursuer.chen, 9325 阅读, 2 评论, 收藏, 编辑

标签:mount,umount

概述  

在上一章增加linux操作系统空间中已经使用过了mount命令对分区进行挂载,这一章详细介绍挂载管理,该命令涉及的知识点也挺多的而且也还比较重要,是需要掌握的一个命令。

 

挂载分区

mount基本语法

mount [参数]  /dev/sdb1(需要挂载的分区) /sdb1(挂载目录)

参数是可选的,也可以不带参数,参数的使用方法(-o ro,sync,atime)。

参数:

-t:指定文件系统类型

mount -t ext4 /dev/sdb1 /sdb1

-o:指定挂载选项

    ro,rw:只读或者读写的方式挂载,默认是rw.

    sync:不适用缓存,所有操作直接读写磁盘。

    async:适用缓存,默认方式。

    noatime:每次访问文件时不更新文件的访问时间。

    atime:每次访问文件时更新文件的访问时间,默认方式。

    user:任何用户都可以挂载

    nouser:只有超级用户才可以挂载

    auto:系统开机自动挂载

    noauto:系统开机不自动挂载

    remount:重新挂载文件系统。

 

查看当前已挂载的分区

mount

通过mount不带参数命令可以查看当前系统的所有挂载分区情况,包括分区的挂载点、分区类型、参数等。

查看挂载分区下的文件
ls /sdb1

 每个挂载分区下面都会有一个Lost+found文件夹,该文件夹用来存放文件的损坏数据,例如使用fsck检查分区命令的错误信息就写入该文件夹(命令:fsck /dev/sdb1)。

修改分区只读  

mount -o remount,ro /dev/sdb1 /sdb1

 把sdb1修改为只读后,使用touch无法创建文件。

不更新文件访问时间

mount -o remount,rw,noatime /dev/sdb1 /sdb1

特别是对性能要求很高的系统中,可以将文件系统设为不更新访问文件的时间,比如存放数据库文件的分区,由于访问非常频繁,如果每次访问都更新访问时间对性能会造成一定的影响,这时我们可以将该分区设置成不更新访问文件的时间来提高性能。

stat命令

可以使用stat命令查看文件的访问时间

stat test

这里是因为我后面对参数做过修改,加上noatime参数后确实不会对访问时间进行修改,大家可以试一下;

不使用缓存

开启缓存的目的是为了提高读写的性能,即你对一个数据的读写先读写缓存,因为缓存的读写速度要远远高于磁盘,这样就会提高读写的性能,但是带来性能的同时也会存在丢失修改的风险,当写入缓存的时候突然断电那么这个时候缓存的数据就有可能会丢失了,造成没有写入磁盘。不过现在linux文件系统类型比如ext3,ext4默认都会记录日志,即分区中会存在128M大小的日志空间用来记录对磁盘的读写操作,这也是为了保证数据的丢失修改的一个措施。如果对数据要求很严格的系统可以不适用缓存,但是绝大多数情况下都是适用缓存,这也是linux默认的方式。

mount -o remount,rw,noatime,sync /dev/sdb1 /sdb1

卸载分区

umount语法

umount /dev/sdb1(分区)
或者
umount /sdb1(挂载点)

卸载sdb1分区

 卸载失败,这里提示设备繁忙

fuser命令

可以使用fuser命令查看文件系统占用的进程

fuser -m /sdb1(挂载点)
或者
fuser -m /dev/sdb1(分区)

 

可以看到2821进程正在占用。

lsof命令

查看正在被使用的文件,losf命令是list open file的缩写。

lsof /sdb1(挂载点)

 

通过losf命令可以查看正在被使用的文件,可以看到是bash正在使用,因为当前我就是在sdb1文件夹下面,当前的命令窗口正在使用,切换到别的目录下面

当切换到别的路径下面后,再使用umount命令就可以卸载分区,使用mount查看分区信息可以看到sdb1分区已经被卸载了.

修改配置文件

 mount挂载分区在系统重启之后需要重新挂载,修改/etc/fstab文件可使挂载永久生效

vim /etc/fstab
复制代码
# <file system>          <mount point>          <type>  <options>      <dump> <pass>
UUID=9905757a-a2a3-4a4a-abc7-ece61efeb531 /                       ext4    defaults        1 1
UUID=7981f23f-e636-474c-bf10-65adc5c56397 /boot                   ext4    defaults        1 2
UUID=d0000d2a-a161-4961-b843-d4ba060ad24c swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/dev/sdb6               /sdb6                   ext4    sync,noatime    0 0 

复制代码

file system:第一列是分区号

mount point:挂载点

type:文件类型

option:-o参数,defaults: rw, suid, dev, exec, auto, nouser, and async

复制代码
 如果不使用default默认参数,那么可以使用逗号分隔指定参数   
   ro,rw:只读或者读写的方式挂载,默认是rw.

    sync:不适用缓存,所有操作直接读写磁盘。

    async:适用缓存,默认方式。

    noatime:每次访问文件时不更新文件的访问时间。

    atime:每次访问文件时更新文件的访问时间,默认方式。

    user:任何用户都可以挂载

    nouser:只有超级用户才可以挂载

    auto:系统开机自动挂载

    noauto:系统开机不自动挂载
复制代码

dump:当其值设置为1时,将允许dump备份程序备份;设置为0时,忽略备份操作

pass:fsck磁盘检查设置,其值是一个顺序。当其值为0时,永远不检查;而 / 根目录分区永远都为1。其它分区从2开始,数字越小越先检查,如果两个分区的数字相同,则同时检查。

通过mont和df命令查看到的逻辑分区名和配置文件中配置的逻辑分区名不一样,但是二者的意思是一样的,不要被误解

 

补充

挂载ios镜像文件

mount -o loop iso镜像文件   挂载点

 例:

mount -o loop CentOS-6.7-x86_64-bin-DVD1.iso  /iso

 使挂载立即生效

sync

总结

mount命令比较重要的知识点就是合理的使用参数,当然同样要记住mount挂载在服务器重新启动后又需要重新挂载,如果想永久挂载还是需要去修改/etc/fstab文件,因为这些参数会对我们系统的性能造成影响。一天连续写了两篇文章真的很累,现在已经凌晨了,洗洗睡。 

 

 





本文转自pursuer.chen(陈敏华)博客园博客,原文链接:http://www.cnblogs.com/chenmh/p/5097530.html,如需转载请自行联系原作者

目录
相关文章
|
14天前
|
缓存 Linux 测试技术
安装【银河麒麟V10】linux系统--并挂载镜像
安装【银河麒麟V10】linux系统--并挂载镜像
72 0
|
17天前
|
存储 安全 数据管理
探索Linux的挂载操作🌈
在Linux这个强大的操作系统中,挂载操作是一个基本而重要的概念。它涉及到文件系统、设备和数据访问,对于理解Linux的工作方式至关重要。那么,挂载操作究竟是什么,为什么我们需要它,如果没有它,我们将面临什么问题呢?让我们一起深入探讨。
探索Linux的挂载操作🌈
|
1月前
|
监控 Linux Shell
【Shell 命令集合 网络通讯 】Linux 配置和管理网络流量的形状 shapecfg命令 使用指南
【Shell 命令集合 网络通讯 】Linux 配置和管理网络流量的形状 shapecfg命令 使用指南
38 0
|
27天前
|
存储 算法 Linux
【Linux 应用开发 共享内存】深入理解和实践 ftruncate:共享内存的有效管理
【Linux 应用开发 共享内存】深入理解和实践 ftruncate:共享内存的有效管理
60 5
|
1月前
|
域名解析 网络协议 Linux
【Shell 命令集合 网络通讯 】Linux 设置和管理网络接口配置信息 netconfig命令 使用指南
【Shell 命令集合 网络通讯 】Linux 设置和管理网络接口配置信息 netconfig命令 使用指南
53 1
|
1月前
|
搜索推荐 Shell Linux
【Shell 命令集合 系统管理 】Linux 管理用户配置文件 userconf命令 使用指南
【Shell 命令集合 系统管理 】Linux 管理用户配置文件 userconf命令 使用指南
37 2
|
14天前
|
网络协议 Linux
在Linux中,管理和配置网络接口
在Linux中管理网络接口涉及多个命令,如`ifconfig`(在新版本中被`ip`取代)、`ip`(用于网络设备配置)、`nmcli`(NetworkManager的CLI工具)、`nmtui`(文本界面配置)、`route/ip route`(处理路由表)、`netstat/ss`(显示网络状态)和`hostnamectl/systemctl`(主机名和服务管理)。这些命令帮助用户启动接口、设置IP地址、查看连接和路由信息。不同发行版可能有差异,建议参考相应文档。
19 4
|
8天前
|
消息中间件 监控 Linux
Linux进程和计划任务管理
通过这些命令和工具,你可以有效地管理Linux系统中的进程和计划任务,监控系统的运行状态并保持系统的稳定和可靠性。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
101 2
|
14天前
|
缓存 Linux
linux centos7 挂载本地iso yum源
linux centos7 挂载本地iso yum源
64 0
|
15天前
|
存储 缓存 监控
Linux内存和硬盘空间管理技巧
了解Linux内存和硬盘管理技巧,提升系统性能和稳定性。使用`free`, `top`, `vmstat`监控内存,通过`sync`, `echo 1 &gt; /proc/sys/vm/drop_caches`清理缓存。利用Swap分区释放内存。借助`df`, `du`检查硬盘空间,清理无用文件,使用`clean-old`, `gzip`, `tar`压缩归档。查找大文件用`find`和`du`,确保
33 0