mount

1 挂载mount

基本概念

挂载:将额外文件系统与根文件系统现存的目录建立起关联关系,进而使得此目录做为其它文件访问入库的行为

卸载:为解除关联关系的过程

注意:挂载点下原有的文件在挂载完成后会被临时隐藏,但数据不会丢失。所以挂载目录最好为空目录。

2挂载方法

  1. mount DEVICE MOUNT_POINT

其中DEVICE为要挂载的设备,可以是磁盘分区、卷标(LABEL)、UUID或者文件(文件格式化后也可以当做磁盘挂载);MOUNT_POINT为挂载点。

例如:

  1. [root@local ~]# mount /dev/sdc1 /mnt/sdc1
  2.  
  3. [root@local ~]# mount -U "95c37ae8-7bd9-4d8b-ba17-61aaf39f292f" /mnt/sdc1
  4.  
  5. [root@local ~]# mount -L "SDC1" /mnt/sdc1/ #SDC1位分区?dev/sdc1的卷标。

以上三种方法都可以把/dev/sdc1分区挂载到/dev/sdc1目录下,现在就可以进入/mnt/sdc1目录访问/dev/sdc1磁盘,此时在/mnt/sdc1上的所有对数据的操作都会保存至/dev/sdc1分区。

挂载之前必须创建文件系统,既就是格式化分区。

3查看挂载的命令

  1. dflsblk或者cat /proc/mounts

可以通过执行 df 命令来显示当前以及挂载的设备

  1. [root@local ~]# df
  2. Filesystem 1K-blocks Used Available Use% Mounted on
  3. /dev/sda2 12254344 6357184 5251632 55% /
  4. devtmpfs 1001592 0 1001592 0% /dev
  5. tmpfs 1016064 88 1015976 1% /dev/shm
  6. tmpfs 1016064 9292 1006772 1% /run
  7. tmpfs 1016064 0 1016064 0% /sys/fs/cgroup
  8. /dev/sda1 194235 123782 56117 69% /boot
  9. tmpfs 203216 16 203200 1% /run/user/0
  10. /dev/sr0 8086368 8086368 0 100% /run/media/root/CentOS 7 x86_64
  11. /dev/sdc1 1998672 6144 1871288 1% /mnt/sdc1 #可以看到分区已经挂载成功
  1. [root@local ~]# lsblk
  2. NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
  3. fd0 2:0 1 4K 0 disk
  4. sda 8:0 0 20G 0 disk
  5. ├─sda1 8:1 0 200M 0 part /boot
  6. ├─sda2 8:2 0 12G 0 part /
  7. └─sda3 8:3 0 1G 0 part [SWAP]
  8. sdb 8:16 0 5G 0 disk
  9. ├─sdb1 8:17 0 976M 0 part
  10. ├─sdb2 8:18 0 975.6M 0 part
  11. └─sdb3 8:19 0 975M 0 part
  12. sdc 8:32 0 5G 0 disk
  13. └─sdc1 8:33 0 2G 0 part /mnt/sdc1
  14. sr0 11:0 1 7.7G 0 rom
  1. [root@local ~]# cat /proc/mounts
  2. rootfs / rootfs rw 0 0
  3. sysfs /sys sysfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0
  4. proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
  5. devtmpfs /dev devtmpfs rw,seclabel,nosuid,size=1001592k,nr_inodes=250398,mode=755 0 0
  6. securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0
  7. tmpfs /dev/shm tmpfs rw,seclabel,nosuid,nodev 0 0
  8. [. . . . .]
  9. tmpfs /run/user/0 tmpfs rw,seclabel,nosuid,nodev,relatime,size=203216k,mode=700 0 0
  10. /dev/sdc1 /mnt/sdc1 ext4 rw,seclabel,relatime,data=ordered 0 0

4 mount常用命令选项

-t    vsftype:指定要挂载的设备上的文件系统类型

-r:readonly,只读挂载

-w:read and write,读写挂载

-n:不更新/etc/mtab,mount不可见,既就是mount命令看不到已经挂载成功

-a:自动挂载所有支持自动挂载的设备(指定了在/etc/fstab文件中,且挂载选项中有auto功能)

-L"LABEL":以卷标指定挂载设备

-U "UUID":以UUID指定要挂载的设备

-B,--bind:绑定目录到另一个目录上

-o option:挂载文件系统的选项,多个选项同时使用用逗号分隔。是一个神奇的选项。

async:一步挂载

sync:同步挂载

atime/noatime:禁用或启用自动更新atime,包含目录和文件

diratime/nodiratime:目录的访问时间戳

auto/noauto:是否支持自动挂载,是否支持-a选项

exec/noexec:是否支持将文件系统上运行应用程序

dev/nodev:是否支持在次文件系统上使用设备文件

suid/nosuid:是否支持suid和sgid权限

remount:重新挂载

ro:只读挂载

rw:读写挂载

user/nouser:是否运行普通用户挂载此设备,默认管理员才能挂载

acl:启用此文件系统上的acl功能

默认:相当于re,nosuid,dev,exec,auto,nouser,async

5其它挂载相关的命令

(1)查看挂载点的挂载情况:findmnt MOUNT_POINT

  1. [root@local ~]# findmnt /mnt/sdc1
  2. TARGET SOURCE FSTYPE OPTIONS
  3. /mnt/sdc1 /dev/sdc1 ext4 rw,relatime,seclabel,data=ordered
  4. [root@local ~]# findmnt /mnt/sdc2
  5. TARGET SOURCE FSTYPE OPTIONS
  6. /mnt/sdc2 /dev/sdc2 xfs rw,relatime,seclabel,attr2,inode64,noquota

(2)查看正在访问指定的文件系统的进程:

lsof MOUNT_POINT,fuser –v MOTN_POINT

  1. [root@local ~]# lsof /mnt/sdc1
  2. COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
  3. bash 1615 root cwd DIR 8,33 4096 2 /mnt/sdc1
  4. bash 2024 root cwd DIR 8,33 4096 2 /mnt/sdc1

可以看到有两个用户正在访问/mnt/sdc1目录

  1. [root@local ~]# fuser -v /mnt/sdc1
  2. USER PID ACCESS COMMAND
  3. /mnt/sdc1: root kernel mount /mnt/sdc1
  4. root 1615 ..c.. bash
  5. root 2024 ..c.. bash

(3)终止所有正在访问指定的文件系统的进程

  1. [root@local ~]# fuser -km /mnt/sdc1
  2. /mnt/sdc1: 1615c 2024c

接下来查看是否成功

  1. [root@local ~]# lsof /mnt/sdc1

可以看到以及踢成功,不过在实际应用时,最好提前发通知,以免用户在线导数据丢失

6 卸载

卸载命令:umount    DEVICE

或者umount     MOUNT_POINT

  1. [root@local ~]# umount /dev/sdc1 #卸载/dev/sdc1

以及看不到/dev/sdc1说明卸载成功

  1. [root@local ~]# df
  2. Filesystem 1K-blocks Used Available Use% Mounted on
  3. /dev/sda2 12254344 6869184 4739632 60% /
  4. devtmpfs 1001592 0 1001592 0% /dev
  5. tmpfs 1016064 84 1015980 1% /dev/shm
  6. tmpfs 1016064 9232 1006832 1% /run
  7. tmpfs 1016064 0 1016064 0% /sys/fs/cgroup
  8. /dev/sda1 194235 123782 56117 69% /boot
  9. tmpfs 203216 16 203200 1% /run/user/42
  10. tmpfs 203216 0 203216 0% /run/user/0
  11. /dev/sdc2 1038336 32944 1005392 4% /mnt/sdc2

下来用另一种方法卸载/dev/sdc2

  1. [root@local ~]# umount /mnt/sdc2
  2. [root@local ~]# df
  3. Filesystem 1K-blocks Used Available Use% Mounted on
  4. /dev/sda2 12254344 6869184 4739632 60% /
  5. devtmpfs 1001592 0 1001592 0% /dev
  6. tmpfs 1016064 84 1015980 1% /dev/shm
  7. tmpfs 1016064 9232 1006832 1% /run
  8. tmpfs 1016064 0 1016064 0% /sys/fs/cgroup
  9. /dev/sda1 194235 123782 56117 69% /boot
  10. tmpfs 203216 16 203200 1% /run/user/42
  11. tmpfs 203216 0 203216 0% /run/user/0

以及看不到/dev/sdc2,说明卸载成功

7 修改/etc/fstab文件,设置自动挂载

查看/etc/fstab文件

  1. [root@local ~]# cat /etc/fstab
  2. #
  3. # /etc/fstab
  4. # Created by anaconda on Sun Apr 16 10:18:50 2017
  5. #
  6. # Accessible filesystems, by reference, are maintained under '/dev/disk'
  7. # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
  8. #
  9. UUID=dddd23d1-1012-4bac-9717-56b9b469e0c2 / ext4 defaults 1 1
  10. UUID=316d8677-25b8-49af-b4eb-54daa20b6595 /boot ext4 defaults 1 2
  11. UUID=dacd6ddd-d765-4646-b98c-0579f2732749 swap swap defaults 0 0

可以看到,每行定义一个要挂载的文件系统,有六个字段,每个字段对于的含义:

第一个字段:要挂载的设备或者伪文件系统

设备文件、卷标(LABEL)、UUID、伪文件系统名称(proc、sysfs)

第二个字段:指定挂载点

第三个字段:文件系统类型

第四个字段:挂载选项

sync、atime/noatime、diratime/nodiratime、auto/noauto、exec/noexec、dev/nodev、suid/nosuid、

remount、ro、rw、user/nouser、    acl

第五个字段:转存频率

0:不做备份

1:每天转存

2:没隔一天转存

第六感字段:启动时自检次序

0:表示不自检

1:首先自检,一般只有rootfs才用1

挂载mount的更多相关文章

  1. Linux分区和挂载(mount命令的学习)

    当Windows系统出现问题的时候,可能需要重装系统,这个时候我们往往会使用系统盘将系统重新安装在C盘上,其他盘上的文件都没有受到重装系统的影 响,这就是分区的好处之一.同样,在Linux中也需要分区 ...

  2. vue 手动挂载$mount() 获取 $el

    手动挂载$mount() 如果没有挂载的话,没有关联的 DOM 元素.是获取不到$el的. https://vuejs.org/v2/api/#vm-mount var MyComponent = V ...

  3. 【转】vue 手动挂载$mount() 获取 $el

    原文:https://www.cnblogs.com/CyLee/p/8425183.html 手动挂载$mount() 如果没有挂载的话,没有关联的 DOM 元素.是获取不到$el的. https: ...

  4. 自动挂载mount

    # 自动挂载mount(/etc/fstab) /dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0 # 第一列:/dev/fd0 挂载源 ...

  5. Linux系统 nfs 共享及 挂载mount 配置

    要把 A服务器(192.168.1.1)的 /home 目录挂载到 B服务器(192.168.1.2)的/mnt目录 我们先在 A 服务器上编辑/etc/exports 文件, 添加下面这行代码 /h ...

  6. 挂载mount、卸载umount、挂载光盘U盘

    mount [root@localhost ~]# mount sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime,seclabel) ...

  7. 【转载】linux挂载mount参数优化

    一. 1) 蓝色:表示经过优化的xfs mount时的参数defaults,noatime,nodiratime,nobarrier,discard,allocsize=256m,logbufs=8, ...

  8. Linux编程 8 (挂载mount,查看磁盘df du,搜索grep,压缩zgip,归档tar)

    一. 挂载存储媒体 linux文件系统将所有的磁盘都并入一个虚拟目录下,当使用新的存储媒体之前,需要把它放到虚拟目录下,这项工作称为挂载(mounting) 1.1 mount 命令 在linux上用 ...

  9. linux挂载mount参数优化

    一. 1) 蓝色:表示经过优化的xfs mount时的参数defaults,noatime,nodiratime,nobarrier,discard,allocsize=256m,logbufs=8, ...

随机推荐

  1. sqlldr用法

    SQL*LOADER是ORACLE的数据加载工具,通常用来将操作系统文件迁移到ORACLE数据库中.SQL*LOADER是大型数据仓库选择使用的加载方法,因为它提供了最快速的途径(DIRECT,PAR ...

  2. AngularJS学习笔记4

    9.AngularJS  XMLHttpRequest $http 是 AngularJS 中的一个核心服务,用于读取远程服务器的数据. <div ng-app="myApp" ...

  3. [编织消息框架][网络IO模型]BIO

    既然跟网络内容有关就不得不学习网络IO模型,时代在进步,技术也在进步,采取使用那种网络IO模型就已经确定应用程序规模 阻塞IO(blocking IO) 在linux中,默认情况下所有的socket都 ...

  4. linux C/C++ 日志打印函数

    //宏定义日志文件名 #define PROCESSNAME  "log_filename" //当日志文件大于5M时,会删除该文件,该接口使用方法 参照printfvoid Wr ...

  5. 开发Angular库的简单指导(译)

    1. 最近工作上用到Angular,需要查阅一些英文资料,虽然英文非常烂,但是种种原因又不得不硬着头皮上,只是每次看英文都很费力,因此决定将一些比较重要的特别是需要反复阅读的资料翻译一下,以节约再次阅 ...

  6. 安装node-saas包报错问题

    项目中用到一些sass写的样式,但是每次一编译就报错 按照它上面的提醒,npm rebuild node-sass --force,还是一样有错.不过仔细看看他的错误信息我发现了其中这条: gyp v ...

  7. Centos 7 安装mysql后出现 ERROR 2002 (HY000)解决方案

    Centos 7 安装mysql后出现 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib ...

  8. ObjectARX自定义实体的最近点和垂点捕捉算法

    最近点用pickPoint来计算,垂点用lastPoint计算. 一般AcDbCurve类可以用AcGe类的 getClosestPointTo 来实现计算需要的点值. 下面是代码示例: case A ...

  9. path sum i

    Problem Statement:  Path sum i Given a binary tree and a sum, determine if the tree has a root-to-le ...

  10. [js笔记整理]DOM 篇

    一.节点类型 1.元素节点:HTML元素 2.文本节点:元素标签中的内容 3.属性节点:元素的属性 (检测节点类型:node.nodeType //元素=1,属性=2,文本=3) 二.使用DOM获取元 ...