Skip to content

mw-white/node-linux-mountutils

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

node-linux-mountutils

Node.js wrapper for Linux mount/umount.

Usage

var mountutil = require('linux-mountutils'); 

isMounted(path, isDevice)

isMounted checks to see if a specific mount exists, either by mountpoint or device. It takes 2 arguments:

  • path - the mountpoint or device
  • isDevice - true means to look for a device, else a mountpoint

The function returns an object with details of the mount if it exists. ret.mounted is always a boolean that indicates whether a mount exists. If there was an error, ret.error will contain a description. If the mount is there, there will be additional fields (see below).

Example:

// See if device /dev/sda1 is mounted var ret = mountutil.isMounted("/dev/sda1",true); console.log(JSON.stringify(ret)); // Returns: // {"mounted":true,"device":"/dev/sda1","mountpoint":"/boot","fstype":"ext2","fsopts":"rw,relatime,errors=continue"} // See if device /dev/notarealdevice is mounted ret = mountutil.isMounted("/dev/notarealdevice",true); // Returns: // {"mounted":false} // See if a device is mounted at /boot ret = mountutil.isMounted("/boot",false); // Returns: // {"mounted":true,"device":"/dev/sda1","mountpoint":"/boot","fstype":"ext2","fsopts":"rw,relatime,errors=continue"} 

mount(dev, path, options, callback)

mount is an asynchronous wrapper around the system mount binary. It will mount (or try to mount) a device (or network filesystem) 'dev' at the mountpoint 'path'. When it finishes, it calls the callback function with a single JSON object with result details.

Valid options:

  • fstype - filesystem type (ie. nfs, ext4, etc). Default autodetected
  • readonly - mount device read only
  • fsopts - mount options for filesystem (ie. acl,quota)
  • mountPath - path to mount binary (defaults to /bin/mount)
  • sudoPath - path to sudo binary (defaults to /usr/bin/sudo)
  • noSudo - don't use sudo when calling binaries (default: use sudo)
  • createDir - create the mountpoint 'path' if it doesn't exist (default: no)
  • dirMode - mode to use for mountpoint if createDir is true

Example:

// Mount /dev/sdc1 to /tmp/testmount mountutil.mount("/dev/sdc1","/tmp/testmount", { "createDir": true }, function(result) { if (result.error) { // Something went wrong! console.log(result.error); } else { // mount succeeded - do stuff here } }); 

umount(path, isDevice, options, callback)

umount is an asynchronous wrapper around the system umount binary. It will umount a device or mountpoint.

Arguments:

  • path - the mountpoint or device
  • isDevice - true means to look for a device, else a mountpoint
  • options - object, see below
  • callback - function, will be called with success or fail

Valid options:

  • umountPath - path to mount binary (defaults to /bin/mount)
  • sudoPath - path to sudo binary (defaults to /usr/bin/sudo)
  • noSudo - don't use sudo when calling binaries (default: use sudo)
  • removeDir - remove mountpoint after umount (default no)

Example:

// Unmount device mounted at /tmp/testmount and delete mountpoint mountutil.umount("/tmp/testmount", false, { "removeDir": true }, function(result) { if (result.error) { // Something went wrong! console.log(result.error); } else { // umount succeeded - do stuff here } }); 

About

Node.js wrapper for Linux mount/umount

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors