Linux学习——磁盘管理、挂载

前言:前段时间在安装Oracle的时候提到了挂载这个词,之前也听到过但是一直没搞明白,后来查阅了很多资料,终于有了一个整体的理解,在此进行总结。

一切皆文件

Linux系统中“一切皆文件”,普通文件、目录、字符设备、块设备和网络设备(套接字)等在Unix/Linux都被当做文件来对待。虽然他们的类型不同,但是linux系统为它们提供了一套统一的操作接口。
也就是说每一个设备都有一个文件名,在/dev目录下存放。
Linux学习——磁盘管理、挂载_第1张图片

分区设备文件名
/dev/hda1(IDE硬盘接口)
/dev/sda1(SCSI硬盘接口、SATA硬盘接口)

含义:hd代表IDE硬盘,sd代表SCSI硬盘或SATA硬盘;a代表第一块硬盘,1代表第一个分区

磁盘管理

命令:
df (列出文件系统整体的磁盘使用量)
du(检查磁盘空间使用量)

[root@localhost dev]# df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        471M     0  471M   0% /dev
tmpfs           487M  248M  239M  52% /dev/shm
tmpfs           487M   21M  466M   5% /run
tmpfs           487M     0  487M   0% /sys/fs/cgroup
/dev/sda3        18G   18G  301M  99% /
/dev/sda1       297M  191M  107M  65% /boot
tmpfs            98M   36K   98M   1% /run/user/1000
tmpfs            98M     0   98M   0% /run/user/0

[root@localhost oracle]# du -a
0	./.mozilla/extensions
0	./.mozilla/plugins
0	./.mozilla
4	./.bash_logout
4	./.bashrc
4	./.kshrc
4	./.oracle_jre_usage/d42e64860c7b9f4d.timestamp
4	./.oracle_jre_usage
4	./.cache/abrt/lastnotification
4	./.cache/abrt
4	./.cache
0	./.config/abrt
0	./.config
4	./.bash_history
4	./.bash_profile
8	./.viminfo
13396	./data/DP_LES2.0.1_UTF8_20201103.dmp
4	./data/DP_LES2.0.1_UTF8_20201103.log
152952	./data/DP_RQP_20201103.dmp
112	./data/DP_RQP_20201103.log
5320	./data/LES2.0.1_UTF8_20201103.dmp
20	./data/LES2.0.1_UTF8_20201103.log
117472	./data/RQP_UTF8_20201103.dmp
104	./data/RQP_UTF8_20201103.log
289380	./data
289416	.

检查根目录下每个文件占用的容量

[root@localhost oracle]# du -sm /*
0	/bin
175	/boot
248	/dev
43	/etc
428	/home
0	/lib
0	/lib64
0	/media
0	/mnt
10054	/opt
du: cannot access ‘/proc/63240/task/63240/fd/3’: No such file or directory
du: cannot access ‘/proc/63240/task/63240/fdinfo/3’: No such file or directory
du: cannot access ‘/proc/63240/fd/3’: No such file or directory
du: cannot access ‘/proc/63240/fdinfo/3’: No such file or directory
0	/proc
2570	/root
du: cannot access ‘/run/user/1000/gvfs’: Permission denied
21	/run
0	/sbin
0	/srv
0	/sys
16	/tmp
4188	/usr
391	/var

挂载

挂载(mounting)是指由操作系统使一个存储设备(诸如硬盘、CD-ROM或共享资源)上的计算机文件和目录可供用户通过计算机的文件系统访问的一个过程。

前面提到Linux一切皆文件,当我们想使用Linux 系统中这些硬件设备时,只有将Linux本身的文件目录与硬件设备的文件目录合二为一,硬件设备才能为我们所用。合二为一的过程称为“挂载”。

如果不挂载,通过Linux系统中的图形界面系统可以查看找到硬件设备,但命令行方式无法找到。比如插入一个外部设备U盘,需要将它挂载到Linux文件系统上才能直接使用,添加一个硬盘,分区格式化后需要挂载到一个目录才能直接使用。

挂载条件

1、挂载点必须是一个目录。
2、一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内容将不可用。对于其他操作系统建立的文件系统的挂载也是这样。

命令:

mount 挂载
mount /dev/sdb1 /mnt

umount 卸载
umount /mnt

注意:当你的当前路径为/mnt下,即在挂载文件的里面时,卸载会失败,提示:Dev is besy.解决办法:退出挂载的目录。
当有别的程序正在访问挂载的文件时,也会提示卸载失败,通过 lsof /mnt 查看是哪个进程占用了/mnt,kill -9 $pid ,然后再卸载。
使用:umount -l /mnt (-l : 卸载前检查占用该挂载文件的程序并迅速kill掉,以达到快速卸载的目的)

你可能感兴趣的:(linux,操作系统)