使用 Samba 时,如何在我编辑文件时阻止程序删除并重新创建文件?

使用 Samba 时,如何在我编辑文件时阻止程序删除并重新创建文件?

我有一台 Raspberry Pi,我已将其设置为家庭文件服务器。它运行的是 Ubuntu Server 21.04 和 Samba 版本 4.13.3-Ubuntu。

/etc/samba/smb.conf以下是我的文件的相关部分:

[NAS]
    comment = Samba Share for Us
    path = /media/4TB-NAS/Samba/
    browsable = yes
    read only = no
    valid users = @samba-users
    create mask = 0664
    directory mask = 0775
    force group = samba-users
    vfs objects = recycle
    recycle:repository = /media/4TB-NAS/Samba/.recycle
    recycle:keeptree = yes
    recycle:versions = no
    recycle:touch = yes
    recycle:exclude_dir = .recycle

[Guest]
    comment = MediaShare for Guests
    path = /media/4TB-NAS/Samba/MediaShare/
    guest ok = yes
    browsable = yes
    read only = yes

问题在于:每当我从桌面连接到 Samba 共享 NAS 并使用 Pluma 编辑(并保存)TXT 文件或使用 LibreOffice Writer 编辑(并保存)ODT 文件时,我认为这些程序实际上会删除旧文件,然后保存其新副本。我该如何阻止这种情况发生?(或者至少从 Samba 及其回收站功能中隐藏该行为?)

我注意到这种情况发生是因为我们有两个用户使用此 Samba 共享。如果一个用户创建了一个文件,他们将成为该文件的所有者。但是,如果另一个用户随后编辑该文件,他们实际上将成为该文件的新所有者。我实际上在网上找到了这个问题的记录:https://www.samba.org/samba/docs/old/Samba3-HOWTO/AccessControls.html#id2615338(查看底部的标题“MS Word 使用 Samba 更改文件所有者”)。这个问题(更改文件所有者)本身对我来说不是什么大问题。使用文件中的create maskdirectory maskforce groupsmb.conf,我可以轻松解决更改所有权的问题。

然而,当涉及到我的 Samba 回收站时,这个问题就更加令人头疼了。每次我编辑文件时,旧版本都会被发送到 Samba 的回收站!我不希望我的 Samba 回收站挤满那些我没有删除的旧版本文件。

我该如何解决这个问题?任何帮助或见解都将不胜感激!(=谢谢!

相关内容