system

package
v1.13.0-rc1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 11, 2016 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Index

Constants

View Source
const DefaultPathEnv = "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

DefaultPathEnv is unix style list of directories to search for executables. Each directory is separated from the next by a colon ':' character .

Variables

View Source
var (
	// ErrNotSupportedPlatform means the platform is not supported.
	ErrNotSupportedPlatform = errors.New("platform and architecture is not supported")
)

Functions

func CheckSystemDriveAndRemoveDriveLetter added in v1.12.0

func CheckSystemDriveAndRemoveDriveLetter(path string) (string, error)

CheckSystemDriveAndRemoveDriveLetter verifies that a path, if it includes a drive letter, is the system drive. This is a no-op on Linux.

func Chtimes added in v1.9.0

func Chtimes(name string, atime time.Time, mtime time.Time) error

Chtimes changes the access time and modified time of a file at the given path

func CommandLineToArgv added in v1.11.0

func CommandLineToArgv(commandLine string) ([]string, error)

CommandLineToArgv should not be used on Unix. It simply returns commandLine in the only element in the returned array.

func GetExitCode added in v1.13.0

func GetExitCode(err error) (int, error)

GetExitCode returns the ExitStatus of the specified error if its type is exec.ExitError, returns 0 and an error otherwise.

func IsAbs added in v1.9.0

func IsAbs(path string) bool

IsAbs is a platform-specific wrapper for filepath.IsAbs.

func LUtimesNano

func LUtimesNano(path string, ts []syscall.Timespec) error

LUtimesNano is used to change access and modification time of the specified path. It's used for symbol link file because syscall.UtimesNano doesn't support a NOFOLLOW flag atm.

func Lgetxattr

func Lgetxattr(path string, attr string) ([]byte, error)

Lgetxattr retrieves the value of the extended attribute identified by attr and associated with the given path in the file system. It will returns a nil slice and nil error if the xattr is not set.

func Lsetxattr

func Lsetxattr(path string, attr string, data []byte, flags int) error

Lsetxattr sets the value of the extended attribute identified by attr and associated with the given path in the file system.

func Mkdev added in v1.4.0

func Mkdev(major int64, minor int64) uint32

Mkdev is used to build the value of linux devices (in /dev/) which specifies major and minor number of the newly created device special file. Linux device nodes are a bit weird due to backwards compat with 16 bit device nodes. They are, from low to high: the lower 8 bits of the minor, then 12 bits of the major, then the top 12 bits of the minor.

func MkdirAll added in v1.7.0

func MkdirAll(path string, perm os.FileMode) error

MkdirAll creates a directory named path along with any necessary parents, with permission specified by attribute perm for all dir created.

func MkdirAllWithACL added in v1.13.0

func MkdirAllWithACL(path string, perm os.FileMode) error

MkdirAllWithACL is a wrapper for MkdirAll that creates a directory ACL'd for Builtin Administrators and Local System.

func Mknod

func Mknod(path string, mode uint32, dev int) error

Mknod creates a filesystem node (file, device special file or named pipe) named path with attributes specified by mode and dev.

func ProcessExitCode added in v1.13.0

func ProcessExitCode(err error) (exitCode int)

ProcessExitCode process the specified error and returns the exit status code if the error was of type exec.ExitError, returns nothing otherwise.

func Umask

func Umask(newmask int) (oldmask int, err error)

Umask sets current process's file mode creation mask to newmask and returns oldmask.

func Unmount

func Unmount(dest string) error

Unmount is a platform-specific helper function to call the unmount syscall.

Types

type MemInfo added in v1.4.0

type MemInfo struct {
	// Total usable RAM (i.e. physical RAM minus a few reserved bits and the
	// kernel binary code).
	MemTotal int64

	// Amount of free memory.
	MemFree int64

	// Total amount of swap space available.
	SwapTotal int64

	// Amount of swap space that is currently unused.
	SwapFree int64
}

MemInfo contains memory statistics of the host system.

func ReadMemInfo added in v1.4.0

func ReadMemInfo() (*MemInfo, error)

ReadMemInfo retrieves memory statistics of the host system and returns a MemInfo type.

type StatT added in v1.9.0

type StatT struct {
	// contains filtered or unexported fields
}

StatT type contains status of a file. It contains metadata like permission, owner, group, size, etc about a file.

func FromStatT added in v1.8.0

func FromStatT(s *syscall.Stat_t) (*StatT, error)

FromStatT exists only on linux, and loads a system.StatT from a syscal.Stat_t.

func Lstat added in v1.4.0

func Lstat(path string) (*StatT, error)

Lstat takes a path to a file and returns a system.StatT type pertaining to that file.

Throws an error if the file does not exist

func Stat added in v1.4.0

func Stat(path string) (*StatT, error)

Stat takes a path to a file and returns a system.StatT type pertaining to that file.

Throws an error if the file does not exist

func (StatT) GID added in v1.9.0

func (s StatT) GID() uint32

GID returns file's group id of owner.

func (StatT) GetLastModification added in v1.9.0

func (s StatT) GetLastModification() syscall.Timespec

GetLastModification returns file's last modification time.

func (StatT) Mode added in v1.9.0

func (s StatT) Mode() uint32

Mode returns file's permission mode.

func (StatT) Mtim added in v1.9.0

func (s StatT) Mtim() syscall.Timespec

Mtim returns file's last modification time.

func (StatT) Rdev added in v1.9.0

func (s StatT) Rdev() uint64

Rdev returns file's device ID (if it's special file).

func (StatT) Size added in v1.9.0

func (s StatT) Size() int64

Size returns file's size.

func (StatT) UID added in v1.9.0

func (s StatT) UID() uint32

UID returns file's user id of owner.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL