systemd-coredumpとは誰ですか?なぜ彼は私のシステムにいますか?

1
2022.01.13

次の構成のrsyncがあります。

 rsync -aur4zvq --force /root/folder/on/local/ [email protected]:/root/folder/somewhere/on/remote

これはセキュリティ上の理由からrootとしてcrontabによって実行され、root権限でファイルをリモートに配置することになっています。

crontabは警告やエラーなしで機能し、ファイルは適切なフォルダーに配置されますが、驚いたことに、リモート上のファイルはルートではなくユーザーsystemd-coredumpに属しているようになりました。

過去には完璧に機能していました...何が起こったのですか?

私のcrontabは次のようになります

* * * * * rsync -aur4zvq --force /root/folder/on/local/ [email protected]:/root/folder/somewhere/on/remote

これをrsyncデーモンで行う方が良いですか?デーモンでrsyncを使用したことはありません。

デーモンを使用してこれを構成するにはどうすればよいですか?

回答
1
2022.01.13

RsyncがリモートユーザーIDをsystemd-coredumpと同じユーザーIDに設定している可能性があります。

つまり、 systemd-coredumpのユーザーIDが2で、ローカルシステム上のファイルがユーザーID 2のmax_musterによって所有されている場合、ファイルが転送されるときに、「2」はsystemd-coredumpとして解釈されます。

/etc/passwdでユーザーID値を確認し、その/etc/passwdのリモートシステムで同じユーザーID値を持っているユーザーを比較することで、システムでこれを自分で確認できます。

Rsyncにリモートマシンのユーザー所有権を変更させるには、コマンドを変更して次のようなchmodオプションを追加します。

 rsync --chown USER:GROUP -aur4zvq --force /root/folder/on/local/ [email protected]:/root/folder/somewhere/on/remote

そして、USER:GROUP、このようなroot:rootに変更します。

 rsync --chown root:root -aur4zvq --force /root/folder/on/local/ [email protected]:/root/folder/somewhere/on/remote

--chownオプションはRsyncバージョン3.1.0以降で機能することに注意してください。