sub glusterfs_is_mounted {
my ($volume, $mountpoint, $mountdata) = @_;
- $mountdata = PVE::ProcFSTools::read_proc_mounts() if !$mountdata;
-
- if ($mountdata =~ m|^\S+:$volume/?\s$mountpoint\sfuse.glusterfs|m) {
- return $mountpoint;
- }
+ $mountdata = PVE::ProcFSTools::parse_proc_mounts() if !$mountdata;
+ return $mountpoint if grep {
+ $_->[2] eq 'fuse.glusterfs' &&
+ $_->[0] eq $volume &&
+ $_->[1] eq $mountpoint
+ } @$mountdata;
return undef;
}
sub status {
my ($class, $storeid, $scfg, $cache) = @_;
- $cache->{mountdata} = PVE::ProcFSTools::read_proc_mounts()
+ $cache->{mountdata} = PVE::ProcFSTools::parse_proc_mounts()
if !$cache->{mountdata};
my $path = $scfg->{path};
sub activate_storage {
my ($class, $storeid, $scfg, $cache) = @_;
- $cache->{mountdata} = PVE::ProcFSTools::read_proc_mounts()
+ $cache->{mountdata} = PVE::ProcFSTools::parse_proc_mounts()
if !$cache->{mountdata};
my $path = $scfg->{path};
sub deactivate_storage {
my ($class, $storeid, $scfg, $cache) = @_;
- $cache->{mountdata} = PVE::ProcFSTools::read_proc_mounts()
+ $cache->{mountdata} = PVE::ProcFSTools::parse_proc_mounts()
if !$cache->{mountdata};
my $path = $scfg->{path};
$server = "[$server]" if Net::IP::ip_is_ipv6($server);
my $source = "$server:$export";
- $mountdata = PVE::ProcFSTools::read_proc_mounts() if !$mountdata;
-
- if ($mountdata =~ m|^\Q$source\E/?\s\Q$mountpoint\E\snfs|m) {
- return $mountpoint;
- }
-
+ $mountdata = PVE::ProcFSTools::parse_proc_mounts() if !$mountdata;
+ return $mountpoint if grep {
+ $_->[2] eq 'nfs' &&
+ $_->[0] eq $source &&
+ $_->[1] eq $mountpoint
+ } @$mountdata;
return undef;
}
sub status {
my ($class, $storeid, $scfg, $cache) = @_;
- $cache->{mountdata} = PVE::ProcFSTools::read_proc_mounts()
+ $cache->{mountdata} = PVE::ProcFSTools::parse_proc_mounts()
if !$cache->{mountdata};
my $path = $scfg->{path};
sub activate_storage {
my ($class, $storeid, $scfg, $cache) = @_;
- $cache->{mountdata} = PVE::ProcFSTools::read_proc_mounts()
+ $cache->{mountdata} = PVE::ProcFSTools::parse_proc_mounts()
if !$cache->{mountdata};
my $path = $scfg->{path};
sub deactivate_storage {
my ($class, $storeid, $scfg, $cache) = @_;
- $cache->{mountdata} = PVE::ProcFSTools::read_proc_mounts()
+ $cache->{mountdata} = PVE::ProcFSTools::parse_proc_mounts()
if !$cache->{mountdata};
my $path = $scfg->{path};