rsync の概要
rsync パッケージは rsync ユーティリティを提供します。
これはネットワーク越しに、大容量のファイルアーカイブの同期をとることができます。
注記
LFS や依存パッケージが本ブックに示す最新安定バージョンでなかった場合には、BLFS
開発版においては、パッケージのビルドや処理実行が適切に行われないことがあります。
パッケージ情報
rsync の依存パッケージ
推奨
popt-1.19
任意
Doxygen-1.9.8, lz4, xxhash
rsync のインストール
セキュリティ観点から rsync
サーバーは、非特権のユーザーおよびグループにて実行することが推奨されています。 rsync をデーモンとして実行する場合、rsyncd
ユーザーおよびグループを作成します。 これは root
ユーザーになって以下のコマンドにより実現します。
groupadd -g 48 rsyncd &&
useradd -c "rsyncd Daemon" -m -d /home/rsync -g rsyncd \
-s /bin/false -u 48 rsyncd
以下のコマンドを実行して rsync をビルドします。
./configure --prefix=/usr \
--disable-lz4 \
--disable-xxhash \
--without-included-zlib &&
make
Doxygen-1.9.8 をインストールしていて、HTML API
ドキュメントをビルドしたい場合は以下を実行します。
doxygen
ビルド結果をテストする場合は make
check を実行します。
root
ユーザーになって以下を実行します。
make install
ドキュメントをビルドした場合は、root
ユーザーになって以下のコマンドを実行して、各ドキュメントをインストールします。
install -v -m755 -d /usr/share/doc/rsync-3.2.7/api &&
install -v -m644 dox/html/* /usr/share/doc/rsync-3.2.7/api
コマンド説明
--disable-lz4
: This switch
disables LZ4 compression support. Note that it uses the superior
'zstd' algorithm when this switch is in use, and zstd is provided
in LFS.
--disable-xxhash
: This
switch disables advanced xxhash checksum support. Remove this
switch if you have installed xxhash.
--without-included-zlib
:
This switch enables compilation with the system-installed zlib
library.
rsync の設定
設定情報
クライアントがリモートファイルにアクセスできるようにするためには、OpenSSH-9.5p1
パッケージをインストールしてリモートサーバーへ接続できるようにする必要があります。
以下は、rsync
をサーバーにて起動させて、ダウンロードだけができるようにする設定例です。 詳細なオプション (ユーザー認証など) については
man ページの rsyncd.conf(5) を参照してください。
cat > /etc/rsyncd.conf << "EOF"
# This is a basic rsync configuration file
# It exports a single module without user authentication.
motd file = /home/rsync/welcome.msg
use chroot = yes
[localhost]
path = /home/rsync
comment = Default rsync module
read only = yes
list = yes
uid = rsyncd
gid = rsyncd
EOF
rsync
における、より詳細な設定情報は https://rsync.samba.org/documentation.html
を参照してください。
ブートスクリプト
Note that you only need to start the rsync server if you want to provide an
rsync archive on your local
machine. You don't need this script
to run the rsync client.
Install the /etc/rc.d/init.d/rsyncd
init script
included in the blfs-bootscripts-20231119 package.
make install-rsyncd