我有一个异构共享,位于 Linux 和 Windows 系统之间,托管在 NetApp 上。在 Linux 上,我使用以下选项挂载共享:
mount.cifs -o username=`logname`,dom=DOMAIN,cifsacl,multiuser,user_xattr,sec=krb5,iocharset=utf8,noserverino,mapchars //host/share /home/`logname`/mnt
所有权限(从 Windows 设置)均正确遵守。但是,有一个奇怪的行为:
如果用户使用 或 打开他在 Windows 上创建的文件(或其副本) ,vim
则vi
该文件将以readonly
模式打开。如果他使用 修改并写入它:w!
,文件被锁定,并且无法再读取,即使是管理员或 root 用户 ( permission denied
)。只能删除Gedit 用同样的方式打开这些文件:只读。
但是,当使用 打开此类文件时nano
,它会被精确地[converted from DOS format]
,并且在保存时,它会被标记为[dos format]
。文件被写入,并且不会发生任何问题。
你知道它为什么会表现得如此吗?
/etc/vimrc
编辑:我已经尝试使用这些选项禁用备份并交换文件:
set nobackup
set nowritebackup
set noswapfile
:w! ++ff=dos
也尝试过:w! ++ff=unix
,但没有成功。