[pbs-devel] [PATCH proxmox-backup] api: enhance directory existence check
    Christian Ebner 
    c.ebner at proxmox.com
       
    Wed Nov 29 16:00:47 CET 2023
    
    
  
> On 29.11.2023 15:51 CET Lukas Wagner <l.wagner at proxmox.com> wrote:
> 
> 
> 
> But that does not detect if another (empty) filesystem is already 
> mounted at that directory, right?
To add to Lukas response, you could compare the `st_dev` of parent and mountpoint
to check if there already if a different filesystem mounted, something like:
use std::os::linux::fs::MetadataExt;
...
match std::fs::metadata(&default_path) {
     Err(_) => {} // path does not exist
     Ok(stat) => {
         let basedir_dev = std::fs::metadata(BASE_MOUNT_DIR)?.st_dev();
         if stat.st_dev != basedir_dev {
             bail!("path {default_path:?} already exists and is mountpoint");
         }
         ...
    }
}
    
    
More information about the pbs-devel
mailing list