我是一名 Linux 新手,我有一个非常基本的问题。我有三台机器 -
machineA
machineB
machineC
所有这些机器都安装了 Ubuntu 12.04,并且我对这三台机器都有 root 访问权限。
现在我应该做以下事情 -
Create mount point /opt/exhibitor/conf
Mount the directory in all servers.
sudo mount <NFS-SERVER>:/opt/exhibitor/conf /opt/exhibitor/conf/
我已经/opt/exhibitor/conf
在上述三台机器上创建了目录。现在我不确定如何/opt/exhibitor/conf
在这三台服务器上创建挂载点并挂载目录?
有什么想法吗?
答案1
由于工作人员在计算机上使用 Windows,因此我在服务器上使用 Samba。/etc/smb.conf 中的示例条目:
[Projects]
comment = Projects share
read only = true
path = /home/kovica/Projects
browsable = yes
writable = no
valid users = kovica
create mask = 0644
此条目共享目录 /home/kovica/Projects。没有人可以写入/删除/更改其中的文件。客户端必须进行身份验证,并且唯一有效的用户是 kovica。您可以使用以下命令将用户添加到 samba
smbpasswd -a kovica
使用此命令可以为用户 kovica 设置密码。这是客户端在进行身份验证时必须使用的密码。
答案2
使用 NFS 的话,情况是这样的:
mount -t nfs machine2:/path/to/data /opt/exhibitor/conf/
这假设 machine2 在您的 /etc/host 或 DNS 中定义,或者您必须输入其 IP 地址(假设它是静态的。)
通过编辑 /etc/fstab,您可以使其“永久”存在,就像每次重新启动时它都在那里一样:
machine2:/path/to/data /opt/exhibitor/conf nfs rsize=8192,wsize=8192,timeo=14,intr
nfs 和 mount 手册中定义了这些参数:
man mount
man nfs
请注意,我想象其中一台机器不使用 NFS 挂载,因为它本身具有“参展商”数据。
NFS 的一个可能缺点是,我已经很久没有使用它了,但是当我前段时间使用时,如果目标机器出现故障,则在该挂载点上的读取或写入会阻止应用程序尝试。这是一个低级内核阻止,它完全阻止 KILL 终止访问 NFS 的进程。我希望随着时间的推移这个问题会得到解决,但您需要测试一下才能知道会发生什么。Samba 解决方案在这方面更安全,因为它利用了网络流量并且是非阻塞的,但是,我发现在我这边很难设置……我从未使用过的另一件事是基于 SSH 的连接(与 NFS 相反)。我从未使用过它,我测试过一次,它有效……您可以创建一个隧道,然后使用该隧道挂载目录。非常实用,而且不会像 NFS 那样阻塞。此外,所有流量都经过加密。但是它可能速度较慢(坦率地说,有了我们今天拥有的快速服务器……您应该没问题。)