Handle physical & virtual block devices
npm install disk``sh`
$ npm install --save disk
Internals:
- MBR – Master Boot Record
- GPT – GUID Partition Table
- CHS – Cylinder-Head-Sector Addressing
- apple-partition-map – Apple Partition Map
- BlockDevice – Block device handling
- RamDisk – In-memory block device
Block Devices:
- VHD – Microsoft Virtual Hard Disk format
- UDIF – Apple's DMG / UDIF (Universal Disk Image Format)
- UDF – OSTA Universal Disk Format
File Systems:
- FAT32 – FAT32/16/12 file system driver
- ExFAT – ExFAT file system driver
- HFSX – Apple HFS+ file system driver
- NTFS – NTFS file system driver
`js`
var Disk = require( 'disk' )
Set up a device to work with.
This can be anything with a blockdevice compatible API.
`js`
var device = new BlockDevice({
path: BlockDevice.getPath( 0 )
})
Create a disk:
`js`
var disk = new Disk( device )
Open the device:
`js`
// This also attempts to detect it's block size if unspecified,
// as well as reading the MBR & GPT on the device
disk.open( function( error ) {})
Read or write the MBR (disk.mbr) from or to the device:
`js`
disk.readMBR( function( error, mbr ) {})
disk.writeMBR( function( error ) {})
Read or write the GPT (disk.gpt) from or to the device:
`js`
disk.readGPT( function( error, gpt ) {})
disk.writeGPT( function( error ) {})
Verify the backup GPT;
NOTE: The callback will be called with an error and
the backup GPT if it doesn't verify.
`js`
disk.verifyGPT( function( error, backupGPT ) {})
Close the device:
`js``
disk.close( function( error ) {})
#### Disk
- Disk.MBR: See mbr
- Disk.GPT: See gpt
#### new Disk( device )
Properties:
- device
- mbr
- gpt
Methods:
- open( callback )
- close( callback )
- getEFIPart()
- readMBR( callback )
- writeMBR( callback )
- readGPT( callback )
- writeGPT( callback )
- writeGPT( callback ): Not implemented