Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type FilterFunc ¶
FilterFunc is a type defining a callback function for GetMount(), used to filter out mountinfo entries we're not interested in.
It takes a pointer to the Info struct (not fully populated, currently only Mountpoint is filled in), and returns two booleans:
- skip: true if the entry should be skipped
- stop: true if parsing should be stopped after the entry
func FstypeFilter ¶
func FstypeFilter(fstype ...string) FilterFunc
FstypeFilter returns all entries that match provided fstype(s).
func ParentsFilter ¶
func ParentsFilter(path string) FilterFunc
ParentsFilter returns all entries whose mount points can be parents of a path specified, discarding others.
For example, given `/var/lib/docker/something`, entries like `/var/lib/docker`, `/var` and `/` are returned.
func PrefixFilter ¶
func PrefixFilter(prefix string) FilterFunc
PrefixFilter discards all entries whose mount points do not start with a specific prefix
func SingleEntryFilter ¶
func SingleEntryFilter(mp string) FilterFunc
SingleEntryFilter looks for a specific entry
type Info ¶
type Info struct { // ID is a unique identifier of the mount (may be reused after umount). ID int // Parent indicates the ID of the mount parent (or of self for the top of the // mount tree). Parent int // Major indicates one half of the device ID which identifies the device class. Major int // Minor indicates one half of the device ID which identifies a specific // instance of device. Minor int // Root of the mount within the filesystem. Root string // Mountpoint indicates the mount point relative to the process's root. Mountpoint string // Opts represents mount-specific options. Opts string // Optional represents optional fields. Optional string // Fstype indicates the type of filesystem, such as EXT3. Fstype string // Source indicates filesystem specific information or "none". Source string // VfsOpts represents per super block options. VfsOpts string }
Info reveals information about a particular mounted filesystem. This struct is populated from the content in the /proc/<pid>/mountinfo file.
func GetMounts ¶
func GetMounts(f FilterFunc) ([]*Info, error)
GetMounts retrieves a list of mounts for the current running process, with an optional filter applied (use nil for no filter).
func PidMountInfo ¶
PidMountInfo collects the mounts for a specific process ID. If the process ID is unknown, it is better to use `GetMounts` which will inspect "/proc/self/mountinfo" instead.