0

我已经在主客户端服务器上配置了 glusterfs,该服务器复制到从服务器到相同的路由中,glusterfs 在两台服务器上都安装了 root 用户。

** 在两台服务器中我都有这个用户:**

omar
johan
charlie
nisha
robert

安装步骤是这样的:

# apt-get install glusterfs-server
# gluster peer probe slave
# gluster peer status
> State: Peer in Cluster (Connected)
# gluster volume create replica replica 2 transport tcp master-client:/home/charlie/replica slave:/home/charlie/replica
# gluster volume start replica

通过主客户端配置客户端

# mkdir /home/charlie/replica_editor
# mount.glusterfs master-client:/replica /home/charlie/replica_editor

测试集群,使用 charlie 作为用户在 replica_editor 上创建文件:

charlie@master-client:~/replica_editor$ touch test
root@master-client:/home/charlie/replica_editor# ls -ltr
>        -rw-rw-r-- 1 charlie   charlie  0 May 26 08:56 test

查看主服务器副本文件系统:

root@master-client:/home/charlie/replica# ls -ltr
>        -rw-rw-r-- 1 charlie   charlie  0 May 26 08:56 test

当查看从服务器复制的文件系统时,它具有相同的创建日期,相同的权限,但所有者不是查理,是其他用户,在这里无关紧要。

root@slave:/home/charlie/replica# ls -ltr
>    -rw-rw-r-- 1 robert   robert  0 May 26 08:56 test

当手动将所有者更改为具有 root 权限的 charle 时,它​​会将 replica_editor 所有者更改为另一个所有者。

root@slave:/home/charlie/replica# chown charlie:charlie test
>    -rw-rw-r-- 1 charlie   charlie  0 May 26 08:56 test

charlie@master-client:~/replica_editor$ ls -ltr
>    -rw-rw-r-- 1 johan   johan  0 May 26 08:56 test

为什么会发生这种情况,而我没有在安装中指定有关用户的任何内容。

4

1 回答 1

0

我可以同化这一点:

主客户端服务器有一些用户,glusterfs-slave 不知道这是哪些用户,因此它使远程文件的所有者成为主客户端的同一用户,但由他的主 UID 标识。我想像一个远程形式。作为这个

root@master-client:/home/charlie/replica# ls -ltr
-rw-rw-r-- 1 charlie   charlie  0 May 26 08:56 test
root@slave:/home/charlie/replica# ls -ltr
-rw-rw-r-- 1 1004   1004  0 May 26 08:56 test

当看到主客户端 passwd 文件时,我可以看到:

root@master-client:~# cat /etc/passwd | grep 1004
charlie:x:1004:1004

在 slave passwd 文件中看起来相同,我看到了这个:

root@slave:~# cat /etc/passwd |grep charlie
charlie:x:1002:1002

如果我希望副本文件由 slave-charle 用户拥有,我只需要仔细编辑 passwd 文件并将 charlie UID 更改为与 master-client 相同

root@slave:~# vim /etc/passwd
before:    charlie:x:1002:1002
after:     charlie:x:1004:1004

如果 UID 1004 已经是用户的 UID,只需交换它们即可。然后我们会自动看到:

root@slave:/home/charlie/replica# ls -ltr
-rw-rw-r-- 1 charlie   charlie  0 May 26 08:56 test
于 2014-05-27T16:23:51.413 回答