All Projects → samalba → buse-go

samalba / buse-go

Licence: MIT License
A block device in user space for Linux in Golang

Programming Languages

go
31211 projects - #10 most used programming language

Projects that are alternatives of or similar to buse-go

virtnbdbackup
Backup utiliy for Libvirt / qemu / kvm supporting incremental and differencial backups.
Stars: ✭ 62 (+34.78%)
Mutual labels:  nbd
stiefelsystem
Boot your operating system on a different hardware device via network 👢
Stars: ✭ 27 (-41.3%)
Mutual labels:  nbd
overlaybd
Overlaybd: a block based remote image format. The storage backend of containerd/accelerated-container-image.
Stars: ✭ 138 (+200%)
Mutual labels:  blockdevice
Sekura
Encryption tool that's heavily inspired by the Rubberhose file system (https://en.wikipedia.org/wiki/Rubberhose_(file_system)).
Stars: ✭ 51 (+10.87%)
Mutual labels:  nbd

Linux block device in user space in Golang

How to use it

Checkout the file driver_example.go for a simple in-memory block device.

Here is how to test, open a terminal:

go build
sudo modprobe nbd
sudo ./buse-go /dev/nbd0

And in another terminal:

mkfs.ext4 /dev/nbd0
mkdir /mnt/test
mount /dev/nbd0 /mnt/test
echo it works > /mnt/test/foo

You can check out the logs in the first terminal...

How does it work?

It uses NBD (Network Block Device) behind the scene. A NBD server and client is automatically setup on the same machine. This project has been inspired by BUSE in C.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].