Remove sysvinit else clauses in NFS for Arch Linux

Currently the code tries to detect if Arch uses systemd via checking
comm= of PID 1. As access to proc filesystem might be restricted due to
hideproc set and systemd is default for all Arch Linux installations
since October 2012, let's just ditch that check.
This commit is contained in:
Bartłomiej Piotrowski 2016-03-29 11:24:01 +02:00 committed by Seth Vargo
parent 6c86045cd9
commit 919f3ee4e4
No known key found for this signature in database
GPG Key ID: 905A90C2949E8787
1 changed files with 3 additions and 19 deletions

View File

@ -3,31 +3,15 @@ module VagrantPlugins
module Cap
class NFS
def self.nfs_check_command(env)
if systemd?
return "/usr/sbin/systemctl status --no-pager nfs-server.service"
else
return "/etc/rc.d/nfs-server status"
end
return "/usr/sbin/systemctl status --no-pager nfs-server.service"
end
def self.nfs_start_command(env)
if systemd?
return "/usr/sbin/systemctl start nfs-server.service"
else
return "sh -c 'for s in {rpcbind,nfs-common,nfs-server}; do /etc/rc.d/$s start; done'"
end
return "/usr/sbin/systemctl start nfs-server.service"
end
def self.nfs_installed(environment)
Kernel.system("grep -Fq nfs /proc/filesystems")
end
protected
# This tests to see if systemd is used on the system. This is used
# in newer versions of Arch, and requires a change in behavior.
def self.systemd?
`ps -o comm= 1`.chomp == 'systemd'
Kernel.system("grep -Fq nfsd /proc/filesystems")
end
end
end