使用 auto.master 和让 autofs 自动挂载您的 NFS 挂载点与仅将信息放在 fstab 中有什么区别?Linux 红帽 5/6
很多时候当我删除一个文件夹时,它说由于.nfs文件而无法删除。
Error - Device or resource busy
Run Code Online (Sandbox Code Playgroud)
如何删除忽略这些错误的文件夹(rm命令中有任何标志)?或者我必须找出使用它的进程,然后首先终止该进程?
在这种情况下,我如何才能删除整个目录?
在我的脚本中,我有几层状态:
对于(2)和(3),我认为rcpinfo是最好的选择。但是,对于 (2),我无法弄清楚如何在不启动子 shell 的情况下将查询范围缩小到 NFS 服务(这对于此应用程序是不可接受的)。对于 (3),我不确定这些信息是否可以远程使用(ssh当然,无需输入)。
我正在研究 RHEL 6,无法访问标准发行版中未包含的程序。
我在一个有三个 Ubuntu 系统的实验室工作,我想通过 NFS 交叉挂载一些文件系统。然而,虽然系统有一些相同的用户名,但 UID 和 GID 不匹配,因为这三个系统是分开设置的。当我将 NFS 文件系统从一个系统挂载到另一个系统时,所有权显示错误。例如,如果服务器 1 上的 UID 1000 是 alice,而服务器 2 上的相同 UID 1000 是 bob,那么当服务器 1 挂载服务器 2 的导出文件系统时,bob 的文件似乎归 alice 所有。
那么有没有办法让 NFS (v4) 通过关联的用户名在服务器之间转换 UID?通过谷歌搜索,我看到了很多对 Kerberos、LDAP 或 NIS 的引用,对于这样一个简单的任务来说,这似乎是一种过度杀伤,而且可能不可能,因为这些系统不是集中管理的。这个链接似乎表明我问的是不可能的。这是正确的吗?
编辑:我已经尝试了所有/etc/idmapd.conf我能想到或在互联网上找到的配置,虽然 idmapd 进程显然正在运行,但到目前为止我还没有看到任何证据表明 NFS 正在尝试使用它,并且它从未对 NFS 挂载上报告的用户 ID 产生任何影响。
我需要搜索没有用户或没有组的文件。
find / -nouser -o -nogroup
Run Code Online (Sandbox Code Playgroud)
我认为这是可以的。但是,我不想搜索 NFS 共享。如何在 find 命令中排除 NFS 共享?
我想用 NFS 设置文件共享服务器。但是当我想显示导出的内容时,我得到了这个:
manuel@server ~ $ showmount
clnt_create: RPC: Port mapper failure - Unable to receive: errno 111 (Connection refused)
Run Code Online (Sandbox Code Playgroud)
它有什么问题?
当我配置 NFS 并在客户端 NFS 共享目录上创建文件时,我收到以下消息:permission denied。
我的配置:
http://www.server-world.info/en/note?os=CentOS_6&p=nfs&f=1

http://www.server-world.info/en/note?os=CentOS_6&p=nfs&f=2

问题出在哪儿?
(net-fs/nfs-utils-1.2.3-r1, 2.6.38.5-zen+ Gentoo)
谷歌搜索这似乎是一个完整的死胡同。man nfsstat对这个主题几乎一无所知。我能得到的最接近的是找出可能以前是“ newcreds ”的东西。
newcreds 必须刷新身份验证信息的次数。
我的问题是,我认为我在 OpenVPN 上看到的 NFS 性能低于标准,唯一我可以立即看到与所有 nfsstat Google 结果显着不同的是,我的“呼叫”字段完全等于“authrefrsh”,因此非常高. 所有搜索结果输出的 authrefrsh 始终为 0 或非常低的数字。在我可以继续调试其他一些方面之前,我可以使用找出这意味着什么。
监视操作正在出现一个基于 NFS 共享移植的包。emerge 在运行过程中确实会遍历一棵大树,但是以前的经验表明我看到的性能是异常的。
$ watch -n 1 nfsstat -c
Every 1,0s: nfsstat -c Sat May 21 23:04:55 2011
Client rpc stats:
calls retrans authrefrsh
308565 2211 308565
Client nfs v3:
null getattr setattr lookup access readlink
0 0% 172372 55% 17 0% 30485 9% 36057 11% 26831 8%
read write create mkdir symlink …Run Code Online (Sandbox Code Playgroud) 我将 OpenSuSE 12.1 与通过 LDAP 和 NFS 共享的家一起使用。ldap 存储映射。我的问题是我无法在启动时安装共享。它仅在手动重新启动 autofs 服务时有效。在 CentOS 6.3 上没有这样的问题。
我的/etc/nsswitch.conf:
passwd: files sss
group: files sss
hosts: files mdns4_minimal [NOTFOUND=return] dns
networks: files dns
services: files
protocols: files
rpc: files
ethers: files
netmasks: files
netgroup: files nis
publickey: files
bootparams: files
automount: files ldap
aliases: files
Run Code Online (Sandbox Code Playgroud)
我的/etc/openldap/ldap.conf:
SIZELIMIT 20
TIMELIMIT 15
#DEREF never
TLS_REQCERT demand
uri ldap://10.0.0.1
base dc=domain,dc=com
Run Code Online (Sandbox Code Playgroud)
我的/etc/sssd/sssd.conf:
[sssd]
config_file_version = 2
reconnection_retries = 3
sbus_timeout = …Run Code Online (Sandbox Code Playgroud) 考虑以下 Docker 容器:
docker run --rm -it -v /tmp:/mnt/tmp alpine sh
Run Code Online (Sandbox Code Playgroud)
这会将主机目录 /tmp 挂载到 alpine 容器内的 /mnt/tmp 中。
现在,在主机系统上,我将 NFS 卷挂载到 /tmp 目录:
mkdir /tmp/nfs
mount -t nfs4 192.168.1.100:/data /tmp/nfs
Run Code Online (Sandbox Code Playgroud)
挂载在主机系统上工作,我看到以下内容:
# ls /tmp/nfs
file1 file2 file3
#
Run Code Online (Sandbox Code Playgroud)
但是在 Docker Container 上,我看到一个空白目录:
# ls /mnt/tmp/nfs
#
Run Code Online (Sandbox Code Playgroud)
我知道我可以通过直接在 Docker 容器中进行挂载来解决这个问题。但是我真的很想知道为什么挂载在主机容器上有效,而在 docker 容器中无效?