挂载分区

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:重新挂载文件系统

 loop:使用 loop 模式用来将一个文件当成硬盘分割挂上系统

查看当前已挂载的分区

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文件,因为这些参数会对我们系统的性能造成影响。

umount 出现device is busy的时候,有时 fuser 和 lsof 也搞不定,可以直接使用 umount -l 强制卸载

mount总结的更多相关文章

  1. mount报错: you must specify the filesystem type

    在linux mount /dev/vdb 到 /home 分区时报错: # mount /dev/vdb /homemount: you must specify the filesystem ty ...

  2. linux mount/umount挂载命令解析。

    如果想在运行的Linux下访问其它文件系统中的资源的话,就要用mount命令来实现. 2.      mount的基本用法是?格式:mount [-参数] [设备名称] [挂载点] 其中常用的参数有: ...

  3. 如何利用mount命令将另外一个linux服务器上的目录挂在到本机?

    你先要在192.168.1.100上开启NFS服务并编辑/etc/exports文件: chkconfig --level 35 nfs on service nfs start vi /etc/ex ...

  4. mount常用挂载命令

    挂接命令(mount) 首先,介绍一下挂接(mount)命令的使用方法,mount命令参数非常多,这里主要讲一下今天我们要用到的. 命令格式: mount [-t vfstype] [-o optio ...

  5. udisk2阻止自动Mount某些设备

    1.在/etc/udev/rules.d/目录下添加一个诸如99.udisk2.rules 2.其中的内容诸如: # This file contains udev rules for udisks ...

  6. Linux 挂载管理(mount)

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

  7. ORA-01102: cannot mount database in EXCLUSIVE mode

    安装完ORACEL 10g数据库后,启动数据库时遇到ORA-01102: cannot mount database in EXCLUSIVE mode [oracle@DB-Server ~]$ s ...

  8. Ubuntu 14.04 掛載 網路磁碟 mount internet disk

    1.install cifs tool (Common Internet File System) 新增 /etc/apt/apt.conf.d/01proxy 檔案並加入以下字串,即可透過此台機器做 ...

  9. 在Linux上挂载Windows共享文件夹,如何开机自动挂载(mount)?

    按照一般的思路,我们先将文件夹挂载上去,命令如下: mkdir /mnt/share_software mount //192.9.206.43/share_software /mnt/share_s ...

  10. mount img

    直接挂载img文件有时会有  mount:您必须指定文件系统类型   的错误,但加 -t ext2 等类型还是没用. 这是因为img文件包含了mbr引导导致的问题.解决方法如下: $sudo fdis ...

随机推荐

  1. PAT 1064. 朋友数(20)

    如果两个整数各位数字的和是一样的,则被称为是“朋友数”,而那个公共的和就是它们的“朋友证号”.例如123和51就是朋友数,因为1+2+3 = 5+1 = 6,而6就是它们的朋友证号.给定一些整数,要求 ...

  2. [从jQuery看JavaScript]-匿名函数与闭包(Anonymous Function and Closure)

    http://blog.csdn.net/natineprince/article/details/4759533   jQuery片段: (function(){ //这里忽略jQuery所有实现 ...

  3. Android FrameLayout单帧布局

    FrameLayout:所有控件位于左上角,并且直接覆盖前面的子元素. 在最上方显示的层加上: android:clickable="true" 可以避免点击上层触发底层. 实例: ...

  4. 一看就懂的数据库范式介绍(1NF,2NF,3NF,BC NF,4NF,5NF)

    原文:http://josh-persistence.iteye.com/blog/2200644 一.基本介绍 设计关系数据库时,遵从不同的规范要求,设计出合理的关系型数据库,这些不同的规范要求被称 ...

  5. shell文件相关指令

    文件解压缩tar 请参考文档:http://blog.csdn.net/eroswang/article/details/5555415/ tar -zcvf ${standardpath}${fil ...

  6. 算法(Algorithms)第4版 练习 2.2.9

    package com.qiusongde; import edu.princeton.cs.algs4.In; import edu.princeton.cs.algs4.StdOut; publi ...

  7. Python- 列表内置方法

    列表,元组 查 索引(下标) ,都是从0开始 切片 .count 查某个元素的出现次数 .index 根据内容找其对应的位置 "haidilao ge" in a 增加 a.app ...

  8. POJ 2831 Can We Build This One:次小生成树【N^2预处理】

    题目链接:http://poj.org/problem?id=2831 题意: 给你一个图,每条边有边权. 然后有q组询问(i,x),问你如果将第i条边的边权改为x,这条边是否有可能在新的最小生成树中 ...

  9. ajax调试小技巧

    在编写ajax时出现了问题,通过myXmlHttpRequest.responseXML无法获取值. 可以尝试打印出responseText的值.截图如下所示:

  10. 学习c++的优秀博客(转)

    http://zhedahht.blog.163.com/  本博客讨论程序员面试题,并主要集中在C/C++.数据结构算法和算法上.http://saturnman.blog.163.com/ sat ...