| Server IP : 77.68.64.21 / Your IP : 216.73.217.59 Web Server : Apache System : Linux hp3-wp-1011352.hostingp3.local 3.10.0-1160.144.1.el7.tuxcare.els9.x86_64 #1 SMP Fri Jul 10 17:06:31 UTC 2026 x86_64 User : csh2516497 ( 2094697) PHP Version : 8.3.30 Disable Function : shell_exec,exec,system,popen,set_time_limit MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /usr/share/ruby/vendor_ruby/facter/ |
Upload File : |
# Fact: filesystems
#
# Purpose:
# This fact provides an alphabetic list of usable file systems that can
# be used for block devices like hard drives, media cards, etc.
#
# Resolution:
# Checks `/proc/filesystems`.
#
# Caveats:
# Only supports Linux.
#
Facter.add('filesystems') do
confine :kernel => :linux
setcode do
# fuseblk can't be created and arguably isn't usable here. If you feel this
# doesn't match your use-case please raise a bug.
exclude = %w(fuseblk)
# Make regular expression form our patterns ...
exclude = Regexp.union(*exclude.collect { |i| Regexp.new(i) })
# We utilise rely on "cat" for reading values from entries under "/proc".
# This is due to some problems with IO#read in Ruby and reading content of
# the "proc" file system that was reported more than once in the past ...
file_systems = []
Facter::Core::Execution.exec('cat /proc/filesystems 2> /dev/null').each_line do |line|
# Remove bloat ...
line.strip!
# Line of interest should not start with "nodev" ...
next if line.empty? or line.match(/^nodev/)
# We have something, so let us apply our device type filter ...
next if line.match(exclude)
file_systems << line
end
file_systems.sort.join(',')
end
end
# vim: set ts=2 sw=2 et :
# encoding: utf-8