我在/mnt/ SMB /下挂载了一个smb共享文件夹,我可以访问这些文件。当我使用命令卸载这个共享文件夹时:
umount /mnt/smb/当然,我不能使用命令列出共享文件夹内容:
ls /mnt/smb/但问题是,当我从同一台机器上的PHP文件运行ls命令时,可以列出共享SMB文件夹的内容!PHP文件的内容如下:
我犯了什么错。是否需要其他命令才能完全卸载SMB共享?我也使用了下面的命令,但没有运气:
fusermount -u /mnt/smb/发布于 2018-02-17 09:41:31
请根据需要重复umount命令,直到根据shell中的D0( ls )安装了/mnt/smb文件夹。然后,它还应该根据mount命令:
mount | grep /mnt/smb这样这个份额就不会再挂载了。如果某些进程仍然列出远程内容,则必须缓存它(不过,在这种php系统调用情况下不太可能)。
当然,任何命令都可以看到挂载点,因为它是一个目录。目录中包含的任何本地文件都将由php或shell列出。
为了解决最后一个问题,您可以首先从本地目录中移动/删除文件(当共享是<#>而不是挂载的时候),然后将chmod 0 /mnt/smb作为根目录来指示非挂载,并在未挂载时创建ls-错误。
https://unix.stackexchange.com/questions/424750
复制相似问题