Techopedia Explains Network Block Device (NBD)
Linux can make use of a remote server as one of its block devices if NBD is compiled into the kernel. Whenever the client computer wishes to read /dev/nd0, a request is sent to the server through TCP. The server then responds with the requested data. This is useful for stations having low disk space (or maybe even diskless, if booted from a floppy) since it allows them to use other computers' disk space.
In contrast to the Network File System (NFS), it is possible to use any file system with NBD. However, if another user has already mounted NBD read/write, one must make sure that no one else mounts it again.
Even though NFS, SMB/CIFS and other similar protocols are useful, they may not be ideal for some requirements. Listed below are some scenarios where NBDs are used more often than other prevalent file-sharing protocols:
- If a client is able to offer better tools for low-level maintenance of disks (e.g., newer versions of fsck) when compared to the server, provision of NBD access seems sensible.
- A scenario where the client might need extended network disk space for which a conventional network file system might not be sufficient.
- An instance where the server may not have the ability to support the data structure or file system on the device intended for exporting.
- During certain conditions where the application of NBDs may bring better performance as opposed to implementing conventional network file systems.