xmnt/README.md

41 lines
1.1 KiB
Markdown

# xMnt
A tool for mounting encrypted partitions.
## Use case
I have encrypted partitions that I need to mount and unmount from time to time.
I use GPG to encrypt the keys for each partition, save them as `${uuid}.key`
With `xmnt`, I can mount and unmount these partitions with one command.
## Usage
Presets are stored in `$XDG_CONFIG_HOME/xmnt/presets`.
For example, save the following content as `boot.yml` in the presets directory:
```yaml
type: blk
path: /dev/nvme0n1p2
mountpoint: /boot
```
Then when you run `xmnt boot`, the tool will look for encryption key according
to the UUID of `/dev/nvme0n1p2`, read the key, call `gpg --decrypt` to decrypt
the key when necessary, then use the key to open `/dev/nvme0n1p2`, and mount it
on `/boot`.
Directories for storing encryption keys are defined in
`$XDG_CONFIG_HOME/xmnt/xmnt.yml`. `xmnt` will recursively search these
directories for keys.
You can also use it without defining presets. See `--help` for detailed usage.
## Supported partition types
- luks encrypted partitions (e.g. ext4). luks "plain" format is not supported.
- regular unencrypted partitions
- zfs datasets (`keylocation=prompt`)