首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何同步/home/userA/transfer和/home/userB/transfer?

如何同步/home/userA/transfer和/home/userB/transfer?
EN

Unix & Linux用户
提问于 2020-02-12 19:56:51
回答 1查看 53关注 0票数 2

如何同步/home/userA/transfer和/home/userB/transfer?

我试着做一个符号链接。ln -s /home/userA/transfe /home/userB/transfer

塞林克不管用..。

代码语言:javascript
复制
lrwxrwxrwx   1 centos  centos   40 Feb 12 19:55 transfer -> /home/userB/transfer
EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2020-02-12 20:36:06

用户的主目录对其他用户的访问很挑剔。家里的所有东西都应该是那个家的用户拥有的。您可能面临权限问题,因此符号链接肯定是错误的。如果您不希望进行实时同步,并且只是不时地进行同步,那么您应该拥有访问这两个目录的权限,最有可能的选项是能够成为超级用户。然后,您可以执行同步并恢复自然所有权。你可以这样做:

代码语言:javascript
复制
id userB  # figure out the group of the userB, suppos the output is groupB
sudo -i   # become a superuser
rsync  -aP /home/userA/transfer/ /home/userB/transfer/ #sync using rsync
chown -R userB.groupB /home/userB/transfer # restore ownership

如果这对您有效,则可以将其优化为非交互式单行命令:

代码语言:javascript
复制
sudo bash -c "rsync -a /home/userA/transfer/ /home/userB/transfer/ && chown -R userB.$(id -gn userB) /home/userB/transfer/"

更新一个示例:

代码语言:javascript
复制
→ sudo ls -al /home/joker/trans/
total 8
drwxrwxr-x. 2 joker joker 4096 Feb 12 20:44 .
drwx------. 9 joker joker 4096 Feb 12 20:33 ..
-rw-rw-r--. 1 joker joker    0 Feb 12 20:33 file1
-rw-rw-r--. 1 joker joker    0 Feb 12 20:33 file2

→ sudo ls -al /home/vagrant/trans/
total 8
drwxrwxr-x. 2 vagrant vagrant 4096 Feb 12 20:33 .
drwx------. 4 vagrant vagrant 4096 Feb 12 20:34 ..
-rw-rw-r--. 1 vagrant vagrant    0 Feb 12 20:33 file1

→ sudo bash -c "rsync -aP /home/joker/trans/ /home/vagrant/trans/ && chown -R vagrant.$(id -gn vagrant) /home/vagrant/trans"
sending incremental file list
./
file2
              0 100%    0.00kB/s    0:00:00 (xfr#1, to-chk=0/3)

在这里,反式的用户玩笑是同步的用户流浪者,尝试与您的用户复制,并看到不同的。(小丑拥有sudo的权利)

(*)注意rsync命令中的斜杠,它们很重要

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/567242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档