rsync シークレット失敗

rsync シークレット失敗

rsyncを使用してローカルバージョンと同じリモートディレクトリを作成しようとしているので、同様のことをしました(以下の「my」を適切に置き換えます)。

rsync -avhe 'ssh -p 7822' --progress --delete  \
    /mylocaldir myusername@myremotehost:~/myremotedir`

このコマンドの出力には警告が表示されますが、エラーメッセージは表示されません。

perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
    LANGUAGE = (unset),
    LC_ALL = (unset),
    LC_NUMERIC = "c",
    LANG = "fr_FR.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
building file list ... 
70 files to consider
Online/index.html
         582 100%    0.00kB/s    0:00:00 (xfer#1, to-check=67/70)

sent 2.28K bytes  received 48 bytes  665.71 bytes/sec
total size is 919.11K  speedup is 394.47

ただし、リモートディレクトリを確認しても何も更新されません。何度も試してみました。ここで何が起こっているのでしょうか?助けてくれてありがとう。

以下の最初のコメントへの回答で更新してください。これは私の/ etc / profileファイルの内容です。

# System-wide .profile for sh(1)

if [ -x /usr/libexec/path_helper ]; then
    eval `/usr/libexec/path_helper -s`
fi

if [ "${BASH-no}" != "no" ]; then
    [ -r /etc/bashrc ] && . /etc/bashrc
fi

ベストアンサー1

rsync実行中なので、ロケールのエラーメッセージは重要ではありません。代わりに、2つのディレクトリ定義が正確に望ましくなく、間違った場所でファイルを探しているようです。

あなたはソース/mylocaldirと目的地を持っています~/myremotedir。これは~/myremotedir/mylocaldirファイルが配置されるターゲットに作成されます。

/mylocaldirコンテンツをコピーするには、~/myremotedir次のようにソースディレクトリに末尾を提供する必要があります。/

rsync -avh -e 'ssh -p 7822' --progress --delete \
    /mylocaldir/ myusername@myremotehost:myremotedir

読みやすいようにコマンドを2行に分けました。作成したとおりに有効なシェル構文ですが、必要に応じて\最初の行末の文字を削除して一緒にリンクします。


ロケール設定に関するPerlエラーメッセージは、ログインプロセスの一部として実行される特定のプログラムからのものです。 、MacOSアプリのようで、path_helperコメントの重要性についてアドバイスすることはできません/etc/bashrc

もちろん、別のオプションは、問題のあるアプリケーションを識別するのではなく、エラーが発生しなくなるようにターゲットシステムにフランス語のロケールファイルをインストールすることです。

おすすめ記事