你如何在 NixOS 中声明绑定安装?

kev*_*818 5 linux mount filesystems nfs nixos

我试图在我的 NixOS 配置中声明一个绑定安装。我正在尝试下面的配置片段,但是当我对其进行测试时(使用nixos-rebuild test),它会将操作系统发送到恢复模式。需要明确的是,我也希望/data能够联系到/srv/nfs

# 
# /etc/nixos/configuration.nix
#
fileSystems."/data" = {
  device = "/dev/disk/by-uuid/bobloblaw";
  fsType = "btrfs";
};

fileSystems."/srv/nfs" = {
  device = "/data";
  fsType = "bindfs";
};
Run Code Online (Sandbox Code Playgroud)

有什么建议吗?

kev*_*818 6

当然,在发布这个问题之后,我发现了这篇关于 NFS 和绑定安装示例的 NixOS wiki 文章:

https://nixos.wiki/wiki/NFS

TL;DR:fsType我应该使用options. 在写这篇文章的时候,维基有点过时了。options必须是字符串列表。

此代码片段似乎按预期工作:

# 
# /etc/nixos/configuration.nix
#
fileSystems."/data" = {
  device = "/dev/disk/by-uuid/bobloblaw";
  fsType = "btrfs";
};

fileSystems."/srv/nfs" = {
  device = "/data";
  options = [ "bind" ];
};
Run Code Online (Sandbox Code Playgroud)