amr*_*bcl 5 zfs mount fstab zfsonlinux
我在 VM 中运行 Debian 10(使用 KVM),并且想以非 root 用户身份使用 ZFS。这就是我所做的。
我将此行添加到我的sources.list 文件中
deb http://deb.debian.org/debian buster-backports main contrib non-free
Run Code Online (Sandbox Code Playgroud)
这是我完整的sources.list 文件
deb http://deb.debian.org/debian buster main contrib non-free
deb-src http://deb.debian.org/debian buster main contrib non-free
deb http://deb.debian.org/debian-security/ buster/updates main contrib non-free
deb-src http://deb.debian.org/debian-security/ buster/updates main contrib non-free
deb http://deb.debian.org/debian buster-updates main contrib non-free
deb-src http://deb.debian.org/debian buster-updates main contrib non-free
deb http://deb.debian.org/debian buster-backports main contrib non-free
Run Code Online (Sandbox Code Playgroud)
我安装了ZFS
sudo apt install zfs-dkms zfsutils-linux -y
Run Code Online (Sandbox Code Playgroud)
然后在安装过程中出现以下错误
Failed to start Mount ZFS filesystems
Run Code Online (Sandbox Code Playgroud)
我通过运行解决了我的问题
sudo /sbin/modprobe zfs
sudo apt upgrade -y
Run Code Online (Sandbox Code Playgroud)
我将以下行添加到/etc/modules
zfs
Run Code Online (Sandbox Code Playgroud)
有 2 个磁盘连接到我的虚拟机:
我创建了一个池
sudo zpool create -f mypool mirror /dev/vda /dev/sdb
Run Code Online (Sandbox Code Playgroud)
看我的zpool list
$ sudo zpool list
NAME SIZE ALLOC FREE EXPANDSZ FRAG CAP DEDUP HEALTH ALTROOT
mypool 9.94G 291K 9.94G - 0% 0% 1.00x ONLINE -
Run Code Online (Sandbox Code Playgroud)
和我的zpool status
$ sudo zpool status
pool: mypool
state: ONLINE
scan: none requested
config:
NAME STATE READ WRITE CKSUM
mypool ONLINE 0 0 0
mirror-0 ONLINE 0 0 0
vda ONLINE 0 0 0
sdb ONLINE 0 0 0
errors: No known data errors
Run Code Online (Sandbox Code Playgroud)
然后我尝试委派ZFS权限。所以我添加了一个新用户:
sudo adduser zfsuser
Run Code Online (Sandbox Code Playgroud)
我更改了权限/mypool/
sudo chown zfsuser:zfsuser /mypool -R
sudo chmod u+rwx /mypool -R
sudo chmod go-rwx /mypool -R
Run Code Online (Sandbox Code Playgroud)
然后我给了权限
sudo zfs allow -u zfsuser create,destroy,mount mypool
Run Code Online (Sandbox Code Playgroud)
这是结果zfs allow mypool
$ sudo zfs allow mypool
---- Permissions on mypool -------------------------------------------
Local+Descendent permissions:
user zfsuser create,destroy,mount
Run Code Online (Sandbox Code Playgroud)
但是当我登录为zfsuser
su zfsuser
Run Code Online (Sandbox Code Playgroud)
即使我在上一个命令中授予了权限,用户也无法挂载
$ /sbin/zfs create mypool/test
filesystem successfully created, but it may only be mounted by root
Run Code Online (Sandbox Code Playgroud)
我缺少什么?我应该编辑 fstab 文件以允许 zfsuser 挂载吗?我该怎么做呢?
谢谢
| 归档时间: |
|
| 查看次数: |
2517 次 |
| 最近记录: |