I’ve been playing around with helloSystem, an up and coming FreeBSD desktop environment that mirrors the MacOS experience quite well. Since it’s based in FreeBSD I’ve had to brush up on a few FreeBSD-isms that are distinctly different from Linux.
Since I’m dual booting this helloSystem BSD system alongside my Arch Linux install, I want to be able to access files on my Arch system from the BSD system. My Arch system uses LVM, which posed a challenge as LVM is a distinctly Linux thing.
To get it to work I needed to load a couple modules (thanks to the FreeBSD forums for help)
- fuse
- geom_linux_lvm
You can do this at runtime by using the kldload
command
kldload fuse
kldload /boot/kernel/geom_linux_lvm.ko
To make the kernel module loading survive a reboot, add them to /boot/loader.conf
geom_linux_lvm_load="YES"
fuse_load="YES"
You can now scan your BSD system for LVM partitions:
geom linux_lvm list
The LVM partitions are listed under /dev/linux_lvm. The last step is to mount them with FUSE:
fuse-ext2 -o rw+ /dev/linux_lvm/NAME_OF_LVM_PARTITION /mnt/DESIRED_MOUNT_FOLDER
rw+ indicates a read/write mount.