Maison > Tutoriel système > Linux > le corps du texte

Apprentissage de la synchronisation de fichiers Rsync

WBOY
Libérer: 2024-05-02 21:04:15
avant
1072 Les gens l'ont consulté

Tout d'abord, comprenons le principe général de la synchronisation rsync : la synchronisation Rsync utilise ce que l'on appelle « l'algorithme Rsync » pour synchroniser les fichiers entre les hôtes locaux et distants. Cet algorithme ne transmet que différentes parties des deux fichiers, plutôt que chaque partie entière toutes les deux. le temps

Transmission, donc la vitesse de transmission est assez rapide. Le serveur Rsync ouvrira un canal de service (port) 873 et attendra la connexion client Rsync. Lors de la connexion, le serveur Rsync vérifiera si le mot de passe (passwd) correspond. S'il réussit la vérification du mot de passe,

.

Ensuite, vous pouvez démarrer le transfert de fichiers. Lorsque la première connexion est terminée, l'intégralité du fichier sera transféré une fois, et la fois suivante, seule la différence entre les deux fichiers sera transférée.

Ensuite, nous commencerons la construction préliminaire et terminerons d'abord les exigences de la tâche.

Serveur Rsync (192.168.177.130)

Installer l'outil rsync

yum -y install rsync
Copier après la connexion

(Par défaut, un fichier de configuration rsync sera généré dans le répertoire etc)

Modifiez le fichier de configuration rsyncd.conf (Vous ne pouvez pas ajouter de commentaires dans le fichier de configuration, sinon une erreur sera signalée)

uid = root                     
gid = root
use chroot = no
max connections = 4
#pid file = /var/run/rsyncd.pid      
lock file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log         
exclude = lost+found/
transfer logging = yes
timeout = 600
ignore nonreadable = yes           
dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2         
[test]                                  
path = /home/rsynctest
ignore errors = yes
read only = yes
write only = no
hosts allow = 192.168.177.131    
hosts deny = *
list = false
uid = root 
gid = root
auth users = root
secrets file = /etc/rsyncd.passwd
Copier après la connexion

Explication détaillée de la configuration

uid = root                 #设置运行rsync 进程的用户
gid = root
use chroot = no            #使用默认根目录
max connections = 4        #最大连接数
#pid file = /var/run/rsyncd.pid        #CentOS7中yum安装 不需指定pid file 否则报错
lock file = /var/run/rsyncd.lock       #指定支持 max connections 参数的锁文件
log file = /var/log/rsyncd.log         #此文件定义完成后 系统会自动创建
exclude = lost+found/
transfer logging = yes             #使rsync服务器使用ftp格式的文件来记录下载和上载操作在自己单独的日志中
timeout = 600   #通过该选项可以覆盖客户指定的IP超时时间。通过该选项可以确保rsync服务器不会永远等待一个崩溃的客户。超时单位为秒钟,0表示没有超时定义,这也是默认值。对于匿名rsync服务器来说,一个理想的数字是600。
ignore nonreadable = yes           #同步时跳过没有权限的目录
dont compress   = *.gz *.tgz *.zip *.z *.Z *.rpm *.deb *.bz2          #传输时不压缩的文件
[test]                          #此名字即客户端使用rsync来同步的路径
path = /home/rsynctest                 #实际需要同步的路径
ignore errors = yes     #指定rsyncd在判断是否运行传输时的删除操作时忽略server上的IP错误,一般来说rsync在出现IO错误时将将跳过--delete操作,以防止因为暂时的资源不足或其它IO错误导致的严重问题
read only = yes         #表示可以pull
write only = no         #表示不可以push
hosts allow = 192.168.177.131        #客户端同步的地址
hosts deny = *   #指定不允许连接rsync服务器的机器,可以使用hosts allow的定义方式来进行定义。默认是没有hosts deny定义。
list = false     #该选项设定当客户请求可以使用的模块列表时,该模块是否应该被列出。如果设置该选项为false,可以创建隐藏的模块。默认值是true。
uid = root       #获取文件的身份
gid = root
auth users = root  #客户端获取文件的身份 此用户并不是本机中确实存在的用户
secrets file = /etc/rsyncd.passwd   #用来认证客户端的秘钥文件 格式 USERNAME:PASSWD 此文件权限一定需要改为600,且属主必须与运行rsync的用户一致。(需自行创建)
Copier après la connexion

Créer le fichier de mot de passe correspondant

vim /etc/rsyncd.passwd
Copier après la connexion
格式如下:root:123456(前用户名后密码)
Copier après la connexion
修改文件权限:chmon 600 /etc/rsyncd.passwd
Copier après la connexion
启动rsync服务端:sudo rsync --daemon(客户端不用启动)
Copier après la connexion
Client Rsync (192.168.177.131)

Installer l'outil rsync

  yum -y install rsync (默认会在etc目录下生成一个rsync的配置文件)
Copier après la connexion

Configurer le fichier de mot de passe d'authentification

  echo passwd(只需要密码就行) >> /etc/rsyncd.passwd
Copier après la connexion

Modifier les autorisations

  chmon 600 /etc/rsyncd.passwd
Copier après la connexion

Test de synchronisation des fichiers :

  rsync -avz --progress --password-file=/etc/rsyncd.passwd root@192.168.177.130::rsynctest /tmp/rsynctest/
Copier après la connexion

Apprentissage de la synchronisation de fichiers Rsync

Test terminé !

Explication détaillée des paramètres de commande :

  -v, –verbose 详细模式输出

  -z, –compress 对备份的文件在传输时进行压缩处理

  -r, –recursive 对子目录以递归模式处理

  -t, –times 保持文件时间信息

  -o, –owner 保持文件属主信息

  -p, –perms 保持文件权限

  -g, –group 保持文件属组信息

  –-progress 显示传输进度

  --delete 删除客户端多余文件
Copier après la connexion

Le résumé n'est pas encore terminé, j'espère que vous pourrez signaler d'éventuels problèmes !

Faites-le

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:linuxprobe.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!