赞
踩
【命令星级】 ★★★★★
【功能说明】
umount命令可以卸载已经挂载的文件系统。
【语法格式】
umount [option] [dir|device]
umount [选项] [目录|设备]
说明:
1)在umount命令及后面的选项和目录(或设备)里,每个元素之间都至少要有一个空格。
2)umount卸载可以接挂载点目录,也可以接设备文件。
【选项说明】
表8-13针对该命令的参数选项进行了说明。
表8-13 umount命令的参数选项及说明
**范例8-30:**卸载已挂载的光盘。
[root@centos7 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 476M 0 476M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.7M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/sda3 17G 13G 4.1G 77% /
/dev/sda1 1014M 160M 855M 16% /boot
tmpfs 98M 0 98M 0% /run/user/0
/dev/sr0 9.6G 9.6G 0 100% /mnt #请确认已经挂载,然后再使用卸载命令。
[root@centos7 ~]# umount /mnt #接挂载点就可以卸载,umount /dev/sr0这种卸载方式也可以。
[root@centos7 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 476M 0 476M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.7M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/sda3 17G 13G 4.1G 77% /
/dev/sda1 1014M 160M 855M 16% /boot
tmpfs 98M 0 98M 0% /run/user/0
**范例8-31:**生产场景下强制卸载的例子。
有的时候由于挂载的设备停止了响应(例如NFS),或者在当前挂载点的目录下,直接执行卸载命令就会无法卸载设备,而使用如下方式就可以轻松卸载:
这里简单举例如下,进入到挂载点目录进行卸载尝试。
[root@centos7 ~]# mount /dev/sr0 /mnt
mount: /dev/sr0 is write-protected, mounting read-only
[root@centos7 ~]# cd /mnt
[root@centos7 /mnt]# umount /mnt #因为当前在mnt目录中,所以无法卸载,此处执行方法一,退出当前目录卸载。
umount: /mnt: target is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
[root@centos7 /mnt]# umount -lf /mnt #方法二:使用-lf参数进行强制卸载。
[root@centos7 /mnt]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 476M 0 476M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.7M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/sda3 17G 13G 4.1G 77% /
/dev/sda1 1014M 160M 855M 16% /boot
tmpfs 98M 0 98M 0% /run/user/0
#已经看不到挂载的内容了。
【命令星级】 ★★★★★
【功能说明】
显示文件系统磁盘空号的使用情况。
【语法格式】
df [option] [file]
df [选项] [<文件或目录>]
说明:
1)在df命令及后面的选项和文件目录里,每个元素之间都至少要有一个空格。
2)如果不指定命令后面的文件参数,则会显示所有磁盘分区的使用情况,如果给定文件,则显示此文件所在磁盘分区的使用情况。
【选项说明】
表8-14针对该命令的参数选项进行了说明。
表8-14 df命令的参数选项及说明
**范例8-32:**显示磁盘的使用情况。
[root@centos7 ~]# df
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 487240 0 487240 0% /dev
tmpfs 497840 0 497840 0% /dev/shm
tmpfs 497840 7776 490064 2% /run
tmpfs 497840 0 497840 0% /sys/fs/cgroup
/dev/sda3 17814528 13560292 4254236 77% /
/dev/sdb1 392558 2301 367731 1% /mnt
/dev/sda1 1038336 163024 875312 16% /boot
tmpfs 99572 0 99572 0% /run/user/0
上述内容各列的说明如表8-15所示。
表8-15 显示磁盘使用情况的各列信息及说明
**注意:**第3列和第4列之和不等于第2列。这是因为默认的每个分区都预留了少量空间供root使用。即使遇到空间已满的情况,root仍然能登录和拥有解决问题所需的工作空间。清单中的Use%列表示普通用户空间使用的百分比,即使这一数字达到了100%,分区仍然留有root使用的空间。
**范例8-33:**不加参数和加文件参数的例子。
[root@centos7 ~]# df #不指定命令后面的文件参数,就会显示所有磁盘分区的使用情况。
Filesystem 1K-blocks Used Available Use% Mounted on
devtmpfs 487240 0 487240 0% /dev
tmpfs 497840 0 497840 0% /dev/shm
tmpfs 497840 7776 490064 2% /run
tmpfs 497840 0 497840 0% /sys/fs/cgroup
/dev/sda3 17814528 13560292 4254236 77% /
/dev/sdb1 392558 2301 367731 1% /mnt
/dev/sda1 1038336 163024 875312 16% /boot
tmpfs 99572 0 99572 0% /run/user/0
[root@centos7 ~]# df /usr/ #/usr分区在/dev/sda3磁盘上,一般不这样用。
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 17814528 13560292 4254236 77% /
[root@centos7 ~]# df /boot/ #/boot分区在/dev/sda1磁盘上,一般不这样用。
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda1 1038336 163024 875312 16% /boot
**范例8-34:**了解参数-h的用法。
[root@centos7 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
devtmpfs 476M 0 476M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.6M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/sda3 17G 13G 4.1G 77% /
/dev/sdb1 384M 2.3M 360M 1% /mnt
/dev/sda1 1014M 160M 855M 16% /boot
tmpfs 98M 0 98M 0% /run/user/0
使用参数-h后,就能以“1K、234M、2G”这样的人类可读的格式显示容量。
**范例8-35:**参数-i显示inode的使用情况。
[root@centos7 ~]# df -i #也可以多参数同时使用,例如-hi参数。
Filesystem Inodes IUsed IFree IUse% Mounted on
devtmpfs 121810 385 121425 1% /dev
tmpfs 124460 1 124459 1% /dev/shm
tmpfs 124460 717 123743 1% /run
tmpfs 124460 16 124444 1% /sys/fs/cgroup
/dev/sda3 8583952 74831 8509121 1% /
/dev/sdb1 102400 16 102384 1% /mnt
/dev/sda1 524288 332 523956 1% /boot
tmpfs 124460 1 124459 1% /run/user/0
**范例8-36:**参数-t显示指定类型的磁盘
[root@centos7 ~]# df -t ext4 #-t后面接文件系统类型,如ext2/ext3/ext4/xfs。
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sdb1 392558 2301 367731 1% /mnt
[root@centos7 ~]# df -t xfs
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 17814528 13560300 4254228 77% /
/dev/sda1 1038336 163024 875312 16% /boot
**范例8-37:**参数-T列出了文件系统的类型。
[root@centos7 ~]# df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
devtmpfs devtmpfs 487240 0 487240 0% /dev
tmpfs tmpfs 497840 0 497840 0% /dev/shm
tmpfs tmpfs 497840 7776 490064 2% /run
tmpfs tmpfs 497840 0 497840 0% /sys/fs/cgroup
/dev/sda3 xfs 17814528 13560300 4254228 77% /
/dev/sdb1 ext4 392558 2301 367731 1% /mnt
/dev/sda1 xfs 1038336 163024 875312 16% /boot
tmpfs tmpfs 99572 0 99572 0% /run/user/0
**范例8-38:**向磁盘写入数据提示如下错误:No space left on device,然后通过df -h查看磁盘空间,结果发现磁盘没满,那么请问这可能是什么原因?
解答:
可能是inode数量被耗尽了。用df -i可查看inode的使用情况。
导致上述inode满的原因之一有如下几种情况:
Linux系统目录/var/spool/clientmqueue(CentOS 5.x默认安装sendmail软件的邮件的临时队列目录)或/var/spool/postfix/maildrop (CentOS 6.x和CentOS 7.x软件的邮件的临时队列目录)很容易被大量小文件占满,导致出现“No space left on device”的错误。
原因分析:
系统中crond定时任务执行的程序有输出内容,输出内容会以邮件形式发给设置定时任务的用户,而若sendmail/postfix服务没有启动,则会产生类似下面代码所示的这些文件,时间长了就会把系统的inode数量耗尽,但是block的数量仍有剩余,所以使用df -h查看空间还有剩余。
解决方法:
小文件太多,直接用rm -f删除会失败,显示参数过长的错误信息,这是需要用到ls |xargs rm -f命令进行删除。若想要根治,可采用如下方法。
因为主要是由定时任务引起的,所以可在定时任务后加上>/dev/null 2>&1来解决:
00 00 * * * /bin/sh server/scripts/www_bak.sh >/dev/null 2>&1
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。