node-linux-blockutils ===================== Node.js wrapper for Linux lsblk utility to read information on available block devices Usage ===== var blockutils = require('linux-blockutils'); getBlockInfo(options, callback) ------------------------------- getBlockInfo parses the output from the util-linux lsblk command and returns an array of objects describing the block devices in the system. Options is an object with zero or more of the following options: * ignoredev - (string) regexp of devices to ignore * ignoremajor - array of device major numbers to ignore * onlyStandard - (boolean) only parse "disk" and "part" entries * lsblk - (string) - full path to lsblk binary (defaults to '/bin/lsblk') Example - get all devices: var blk = require('linux-blockutils'); blk.getBlockInfo({}, function(err,json) { if (err) { console.log("ERROR:" + err); } else { console.log(JSON.stringify(json,null," ")); } }); Example - ignore sdb, sdc, and loop0: var blk = require('linux-blockutils'); blk.getBlockInfo({"ignoredev":"^(sd[bc]|loop0)"}, function(err,json) { if (err) { console.log("ERROR:" + err); } else { console.log(JSON.stringify(json,null," ")); } }); Example - ignore all loop and cdrom devices (major #7 and #11): var blk = require('linux-blockutils'); blk.getBlockInfo({"ignoremajor": [7,11]}, function(err,json) { if (err) { console.log("ERROR:" + err); } else { console.log(JSON.stringify(json,null," ")); } });