问题背景
设备的存储有限,所以就提供了一个在本地目录挂载远程目录的功能,根据linux文件挂载规则,某个文件挂载远程文件之后就只能看到远程文件夹的内容了。有些客户在挂载前没有提前转移走之前的本地文件线上环境不能轻易再切换,还有线上问题的排查不能直接去umount之后去查看本地文件,所以有了这次总结
现象
挂载前配置
root@root:~# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sr0
xvda
├─xvda1 vfat 2478-25BD /boot/efi
├─xvda2 xfs 7e050ddc-e179-4421-b94e-372debea76a6 /boot
└─xvda3 LVM2_member 7n8YcE-R8xL-7GOp-h4ve-qpS4-E3gI-fVM3km
├─sgapp--vg-swap swap 6d015279-af47-4910-b42b-f9dc97e82d15 [SWAP]
├─sgapp--vg-lv_root xfs 50a2a528-49e4-4474-8ef1-fab5c6ba22c1 /
├─sgapp--vg-lv_log xfs 2a26944b-8a40-465a-a0e4-13dc9885f511 /var/log
├─sgapp--vg-lv_app xfs 53dcb9a9-9411-4564-94f3-0820d1827482 /opt
└─sgapp--vg-lv_data xfs f0c47df3-0ae6-4c69-b710-6be3a48446fb /var/data
#本地时配置
root@root:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 16G 0 16G 0% /dev
tmpfs 3.1G 13M 3.1G 1% /run
/dev/mapper/sgapp--vg-lv_root 38G 2.1G 36G 6% /
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/mapper/sgapp--vg-lv_data 71G 1.8G 69G 3% /var/data
/dev/mapper/sgapp--vg-lv_log 38G 28G 9.9G 74% /var/log
/dev/mapper/sgapp--vg-lv_app 140G 15G 125G 11% /opt
我们关注分区“/dev/mapper/sgapp–vg-lv_data”挂载在/var/data目录,真正的数据在/var/data/sps 下面
/dev/mapper/sgapp–vg-lv_data 71G 1.8G 69G 3% /var/data
进行远程挂载后
#mount之后
root@root:~# df -h
Filesystem Size Used Avail Use% Mounted on
udev 16G 0 16G 0% /dev
tmpfs 3.1G 13M 3.1G 1% /run
/dev/mapper/sgapp--vg-lv_root 38G 2.1G 36G 6% /
tmpfs 16G 0 16G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 16G 0 16G 0% /sys/fs/cgroup
/dev/mapper/sgapp--vg-lv_data 71G 1.8G 69G 3% /var/data
/dev/mapper/sgapp--vg-lv_log 38G 28G 9.9G 74% /var/log
/dev/mapper/sgapp--vg-lv_app 140G 15G 125G 11% /opt
#...
//aaaa.com/Public/aaaa 2.0T 1.1T 931G 53% /var/data/sps/forensics
数据 存在文件夹/var/data/sps/forensics下实际对应远程//aaaa.com/Public/aaaa
此时只能查看远程的文件不能再看到本地文件
解决办法
创建一个本地文件,在这个文件上把原始的分区给挂载到本地,此时就能看到本地目录的信息
#挂载后的远程文件
root@root:~# ls -l /var/data/sps/forensics/
total 8192
-rwxr-xr-x 1 www-data www-data 82398 Jun 20 16:37 22.txt
-rwxr-xr-x 1 www-data www-data 0 Jun 20 16:30 '22 - 副本 (2).txt'
-rwxr-xr-x 1 www-data www-data 0 Jun 20 16:30 '22 - 副本 (3).txt'
-rwxr-xr-x 1 www-data www-data 0 Jun 20 16:30 '22 - 副本 (4).txt'
-rwxr-xr-x 1 www-data www-data 0 Jun 20 16:30 '22 - 副本 (5).txt'
-rwxr-xr-x 1 www-data www-data 0 Jun 20 16:30 '22 - 副本 (6).txt'
-rwxr-xr-x 1 www-data www-data 0 Jun 20 16:30 '22 - 副本 (7).txt'
-rwxr-xr-x 1 www-data www-data 0 Jun 20 16:30 '22 - 副本.txt'
drwxr-xr-x 2 www-data www-data 0 Oct 28 15:50 dicovery
drwxr-xr-x 2 www-data www-data 0 Oct 29 15:51 folder01
drwxr-xr-x 2 www-data www-data 0 Sep 21 15:32 SEC
drwxr-xr-x 2 www-data www-data 0 Oct 29 15:50 test
root@root:~#
root@root:~# pwd
/root
#创建临时目录
root@root:~# mkdir /data
#把分区mount /dev/mapper/sgapp--vg-lv_data 挂载在文件系统的/data目录
root@root:~# mount /dev/mapper/sgapp--vg-lv_data /data
#挂载
#可以看到原来的本地文件
root@root:~# ls -l /data/sps/forensics/
total 0
drwxr-xr-x 2 www-data www-data 6 Sep 17 15:06 appincident
-rw-r--r-- 1 root root 0 Oct 27 18:02 test.log
#用完记得umount
root@root:~# umount /data/
注意事项
不要在自己的分区上挂载自己,比如在/var/data 下面创建临时目录挂载“/dev/mapper/sgapp–vg-lv_data”
用完记得 umount
参考文章
https://blog.51cto.com/koulitsu/5056721
https://blog.csdn.net/lanachen/article/details/121097101