挂载和卸载
挂卸载
1)mount,挂载:
将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录作为其它文件访问入口的行为。
一个目录下不能同时挂载多个设备,生效的只是最后挂载的,当取消挂载时,也是取消最后挂载的。
同时这个目录称为挂载点,此目录一般为空,若不为空,则会在挂载完成后临时隐藏挂载点下原有的文件。
挂载点通常在/media 或/mnt下。
挂载意味着使外来的文件系统看起来如同是主目录树的一部分。
访问前,介质必须被挂载。
按照默认设置,非根用户只能挂载某些设备(光盘、DVD 、软盘、USB 等等)
2)umount,卸载:
解除此关联关系的过程。
卸载时可以使用设备,也可以使用挂载点进行卸载。
摘除时,介质必须被卸载。
卸载时,最好用fuser看下设备是否在使用,正在使用的介质是卸载不掉的。
3)永久挂载:
使用mount和umount都是临时的,重启后都会消失。
只有把挂载项写到配置文件中才能实现永久挂载,且开机自动挂载和卸载。
同时可以在/etc/fstab中创建好后,直接使用mount -a 来挂载所有创建好的文件系统挂载。
配置文件:/etc/fstab
配置文件格式:
每行定义一个要挂载的文件系统。
可以参照已有的配置进行创建。
要挂载的设备或伪文件系统可以是:
设备文件;LABEL;UUID;伪文件系统的路径名。
挂载点:
需要挂载到那个目录上,是绝对路径
文件系统类型:
需要挂载的文件系统类型
挂载选项:
defaults:
bind:
pri:
转存频率:
0,不做备份
1,每天转存
2,每隔一天转存
自检次序:
0,不自检
1,首先自检,一般只有rootfs才有1
mount
mount - mount a filesystem,挂载
mount [options] [-t vfstype] [-o optlist] [device dir]
device :指明要挂载的设备;
设备文件:例如/dev/sda5
卷标:-L 'LABEL', 如 例如 -L 'MYDATA'
UUID, -U 'UUID'如 :例如 -U '0c50523c-43f1-45e7-85c0-a126711d406e'
伪文件系统名称:proc, sysfs, devtmpfs, configfs
dir :挂载点
/mnt,/media为固定挂载点
事先存在,建议使用空目录
进程正在使用中的设备无法被卸载
目录间的挂载,相当于目录建立硬链接
[options]
-a, --all 自动挂载所有支持自动挂载的设备( 定义在了/etc/fstab文件中,且挂载选项中有auto 功能)
-c, --no-canonicalize 不规范化路径
-f, --fake 测试运行
-F, --fork fork 掉每个设备 (use with -a)
-T, --fstab <path> 替换文件为 /etc/fstab
-h, --help 显示帮助信息
-i, --internal-only 不调用挂载.<type> helpers
-l, --show-labels 显示所有嗲有标签LABEL的挂载
-n, --no-mtab 不更新/etc/mtab ,mount不可见,也就是可以隐藏挂载,但可以在/proc/mount或/etc/mtab下看到
-o, --optlist 挂载文件系统的选项 ,多个选项使用逗号分隔
-O, --test-opts <list> 限制文件系统的设置 (use with -a)
-r, --read-only readonly ,只读挂载
-t, 指定要挂载的设备上的文件系统类型
--source <src> 明确指定源(path, label, uuid)
--target <target> 明确指定挂载点
-v, --verbose 显示详情
-V, --version 显示版本信息
-w, --rw, --read-write 读写挂载(default)
-L 'LABEL': 以卷标指定挂载设备
-U 'UUID': 以UUID 指定要挂载的设备
-B, --bind 挂载到一个子目录上 (same as -o bind),绑定目录到另一个目录上
-M, --move 移动子目录到另外的地方
-R, --rbind 挂载子目录到其他所有挂载的地方
--make-shared 标记子目录为共享目录
--make-slave 标记子目录为从目录
--make-private 标记子目录为私有目录
--make-unbindable 标记子目录为不可绑定的目录
--make-rshared 递归标记整个子目录内容为共享目录
--make-rslave 递归标记整个子目录内容为从目录
--make-rprivate 递归标记整个子目录内容为私有目录
--make-runbindable 递归标记整个子目录内容为不可绑定目录
[-o optlist]:
async : 异步模式
sync : 同步模式, 内存更改时,同时写磁盘
atime/noatime : 包含目录和文件,在web服务器上网页的更新上加上noatime
对于单个目录文件来说,使用chattr -R +A 目录或文件,来禁止atime
diratime/nodiratime : 目录的访问时间戳
auto/noauto : 是否支持自动挂载, 是否支持-a 选项
exec/noexec : 是否支持将文件系统上运行应用程序
dev/nodev : 是否支持在此文件系统上使用设备文件
suid/nosuid : 是否支持suid 和sgid 权限,非常安全的用法
remount : 重新挂载
ro : 只读
rw: : 读写
user/nouser : 是否允许普通用户挂载此设备,/etc/fstab 使用
acl : 启用此文件系统上的acl 功能
loop: 使用loop设备
defaults : 图形界面的挂载,相当于rw, suid, dev, exec, auto, nouser, async
简单用法:
mount
通过查看/etc/mtab文件显示当前已经挂载的所有设备。
与cat /proc/mounts相似
mount /dev/DEVICE mount_point
挂载设备到挂载点上,一般都是这样用的。
umont
umount - unmount file systems,卸载
umount [options][-t vfstype] [-O options] {dir|device}
选项情况和mount相似,但含义相反。
[options]
-a, --all 卸载所有的文件系统
-A, --all-targets 在当前的名空间中卸载说有的给定设备的挂载点
-c, --no-canonicalize 不规范化路径
-d, --detach-loop 若挂载的是loop设备,同样清空loop设备free this loop device
--fake 测试运行,不进行系统调用
-f, --force 强制卸载(in case of an unreachable NFS system)
-i, --internal-only 不调用卸载.<type> helpers
-n, --no-mtab 不写到/etc/mtab
-l, --lazy 当前分离文件系统,且稍后清除所有
-O, 限制文件系统的设置(use with -a)
-R, --recursive 递归卸载目标和其所有的子目录
-r, --read-only 万一卸载失败,那么尝试进行只读重新挂载
-t, 限制文件系统类型设置
-v, --verbose 显示详情
简单用法
umount DEVICE
umount MOUNT_POINT
fuser
fuser - identify processes using files or sockets,查看进程情况,查看使用了那些挂载的设备
fuser [options] namefile...
-a,--all 显示所有文件
-i,--interactive 在杀除之前进行询问 (ignored without -k)
-k,--kill 通过命名的文件来杀除进程
-l,--list-signals 列出可用的信号名
-m,--mount 使用命名的文件系统或块设备来显示所有进程
-M,--ismountpoint 仅NAME是个挂载点时,实现请求
-n,--namespace SPACE 在名称空间中搜索 (file, udp, or tcp)
-s,--silent 沉默模式
-SIGNAL 发送信号,而不是发送SIGKILL信号
-u,--user 显示用户id
-v,--verbose 详情输出
-w,--writeonly 仅杀死待用可写权限的进程
-V,--version 显示版本信息
-4,--ipv4 仅搜索IPV4套接字
-6,--ipv6 仅搜索ipv6套接字
- 重置选项
udp/tcp names [local_port][,[rmt_host][,[rmt_port]]]
示例:
fuser -v MOUNT_POINT
查看下哪些进程正在访问挂载的设备
fuser -km MOUNT_POINT
终止所有在正访问挂载点的进程
findmnt
findmnt - find a filesystem,查看文件系统,查看挂载情况。
findmnt [options] [device] [mountpoint]
-s, --fstab 在文件系统的静态表中搜索
-m, --mtab 在挂载的文件系统的表中搜索
-k, --kernel 在挂载的文件系统的内核表中搜索 (default)
-c, --canonicalize 标准化打印路径
-d, --direction <word> 搜索指导 - 'forward' or 'backward'
-e, --evaluate 打印所有TAGs (LABEL/UUID) 的评估
-f, --first-only 仅打印第一个找到的文件系统
-i, --invert 颠倒匹配功能
-l, --list 使用列表格式输出
-u, --notruncate 在列中不截断text输出
-O, --options <list> 通过挂载选项来限制文件系统的设置
-o, --output <list> 输出列
-r, --raw 使用原始格式输出
-a, --ascii 使用 ascii 字符为树状格式
-t, --types <list> 通过FS类型来限制文件系统的设置
-v, --nofsroot 对于绑定或btrfs挂载的不打印目录/dir
-R, --submounts 打印所有匹配的子挂载
-S, --source <string> 设备, LABEL= or UUID=device
-T, --target <string> 挂载点儿
可用的列:
SOURCE source device
TARGET mountpoint
FSTYPE filesystem type
OPTIONS all mount options
VFS-OPTIONS VFS specific mount options
FS-OPTIONS FS specific mount options
LABEL filesystem label
UUID filesystem UUID
PARTLABEL partition label
PARTUUID partition UUID
MAJ:MIN major:minor device number
ACTION action detected by --poll
OLD-TARGET old mountpoint saved by --poll
OLD-OPTIONS old mount options saved by --poll
SIZE filesystem size
AVAIL filesystem size available
USED filesystem size used
USE% filesystem use percentage
FSROOT filesystem root
TID task ID
ID mount ID
OPT-FIELDS optional mount fields
PROPAGATION VFS propagation flags
FREQ dump(8) frequency in days [fstab only]
PASSNO pass number on parallel fsck(8) [fstab only]
交换分区的挂卸载
swapon, swapoff - enable/disable devices and files for paging and swapping
swapon [options] [<spec>]
[options]:
-a, --all 从/etc/fstab中启用所有交换分区
-d, --discard[=<policy>] 如果被设备支持的话,启用swap discards
-e, --ifexists 默默地跳过不存在的设备
-f, --fixpgsz 若必要,重新引导启动交换分区空间
-p, --priority <prio> 指定交换分区设备的优先级
-s, --summary 显示有关使用的交换分区设备的总概括,查看的是/proc/swaps。
--show[=<columns>] 在定义的表中显示总概括信息
--noheadings 不显示头行信息,use with --show
--raw 使用原始格式输出, use with --show
--bytes 采用bytes的格式显示交换分区的尺寸大小,with --show output
[<spec>]:
-L <label> 同LABEL=<label>
-U <uuid> 同 UUID=<uuid>
LABEL=<label> 通过交换分区区域标签指定设备
UUID=<uuid> 通过交换分区区域UUID指定设备
PARTLABEL=<label> 通过分区标签指定设备
PARTUUID=<uuid> 通过分区UUID指定设备
<device> 设备名称被使用
<file> 文件名称被水影
Available columns (for --show):
NAME 设备文件或分区路径
TYPE 设备类型
SIZE 交互分区区域尺寸大小
USED 在使用的bytes大小
PRIO 交换分区优先级
光盘的挂卸载和刻录
挂载
mount /dev/cdrom /mnt/
卸载和弹出
eject - eject removable media
eject [options] device|mountpoint
eject -t 弹入磁盘
光盘刻录
wodim - write data to optical disk media
wodim [options] track1...trackn
详细选项用到再进行查找学习
USB挂载
查看USB是否识别
lsusb
lsusb - list USB devices
lsusb [ options ]
内核探测到SCSI设备的形式
/dev/sdaX 、/dev/sdbX 或类似的设备文件
挂载
mount /dev/sdbX /mnt
可通过日志来查看挂卸载情况
/var/log/messages
自动挂载
自动挂载
由autofs 包提供
系统管理器指定由/etc/auto.master 自动挂载器守护进程控制的挂载点
自动挂载监视器访问这些目录并按要求挂载文件系统
文件系统在失活的指定间隔5 分钟后会自动卸载
为所有导出到网络中的NFS配启用特殊匹配 -host 至 "browse"
参看帮助:man 5 autofs
支持含通配符的目录名
* server:/export/&
rpm -ql autofs
/etc/auto.master
/etc/auto.master.d
/etc/auto.misc
/etc/auto.net
/etc/auto.smb
/etc/autofs.conf
/etc/autofs_ldap_auth.conf
/etc/sysconfig/autofs
/usr/lib/systemd/system/autofs.service
/usr/lib64/autofs
/usr/sbin/automount
/usr/share/doc/autofs-5.0.7
直接匹配
直接匹配包括绝对路径名称
不会影响本地目录结构
示例:
/etc/auto.master:
/- /etc/auto.direct
/etc/auto.direct:
/foo server1:/export/foo
/user/local/ server1:/usr/local
automount
automount [options] [master_map_name]
-h --help 帮助
-p --pid-file f 写进程id到文件f中
-t --timeout n 在n秒中自动卸载,0表示不启用(0-disable)
-v --verbose 显示详情
-d --debug 日志的调试信息
-D --define 定义全局宏变量
-f --foreground 不转到后台,do not fork into background
-r --random-multimount-selection 使用ramdom复制服务器的选择
-m --dumpmaps [<map type> <map name>] 倾倒automounter maps并退出
-n --negative-timeout n 设置失败关键词查找的超时时间
-O --global-options 指定全局挂载选项
-l --set-log-priority priority path [path,...] 设置后台进程日志的冗长
-C --dont-check-daemon 如果后台进程已经在运行就不检查
-F --force 强制清除在开始菜单中已知的自动挂载
-V --version 打印版本,建立配置并退出