C++ 将文件服务器访问限制为运行时安装的U盘

C++ 将文件服务器访问限制为运行时安装的U盘,c++,linux,security,chroot,fileserver,C++,Linux,Security,Chroot,Fileserver,我想在linux下开发(C++)一个文件服务器进程,该进程能够为客户端提供对安装在U盘上的文件的访问。在运行期间,它必须满足以下要求: 当没有安装U盘时,客户端连接无法访问任何文件 安装USB记忆棒后,所有客户端连接的访问仅限于该USB记忆棒。不允许访问任何HDD文件 据我所知,限制进程文件访问的标准方法是使用chroot。但是,如果我没有弄错的话,必须在流程启动之前执行chroot。此时,要限制访问的U盘很可能尚未安装 所以我的问题是:有没有办法做到这一点?好的,让我问问外面的路。最好的解

我想在linux下开发(C++)一个文件服务器进程,该进程能够为客户端提供对安装在U盘上的文件的访问。在运行期间,它必须满足以下要求:

  • 当没有安装U盘时,客户端连接无法访问任何文件

  • 安装USB记忆棒后,所有客户端连接的访问仅限于该USB记忆棒。不允许访问任何HDD文件

据我所知,限制进程文件访问的标准方法是使用chroot。但是,如果我没有弄错的话,必须在流程启动之前执行chroot。此时,要限制访问的U盘很可能尚未安装


所以我的问题是:有没有办法做到这一点?

好的,让我问问外面的路。最好的解决方案是在文件服务器进程内实现文件路径过滤机制,以确保客户端访问受到限制吗?