私の小さなバックアップスクリプトは、sshを使って一時フォルダからバックアップを移動します。このように: - 同じ結果を sshとmvコマンドが動作しないスクリプト
... && ssh [email protected] "mv /path/to/temp/folder /another/path"
が、それを実行した後
はmv: can't rename /path/to/temp/folder: No such file or directory
私はターミナルで直接このコマンドを繰り返ししようとしたことを述べています。何が面白いですか
ssh [email protected] "ls /path/to/temp/folder/"
が役に立ちます。最初にリモートサーバーにログインしてからmv
を実行するだけで動作します。サーバー上にあるフォルダで、sshユーザーに書き込み権限がありますが、ssh
とmv
コマンドを組み合わせても機能しません。 私は何が欠けていますか?
クライアントはSolarisベースで、サーバーはDebianベースです。
編集:ここに完全なスクリプトは
#!/bin/sh
date=`date "+%Y%m%d-%H%M%S"`
BKP=/Core/
rsync -azP \
--link-dest=../current \
--exclude-from=$HOME/.rsync/exclude \
$BKP [email protected]:/shares/Backups/Saturn/incomplete_backup-$date \
&& ssh [email protected] \
"mv /shares/Backups/Saturn/incomplete_backup-$date /share/Backups/Saturn/$date \
&& rm -f /shares/Backups/Saturn/current \
&& ln -s $date /shares/Backups/Saturn/current"
あるrsyncの部分は魔法のように動作しますが、mvコマンド - ません。
P.S.私はルートとしてのロギングは悪い考えですが、サーバーはWD NASであり、デフォルトではルートアクセスのみが可能です。私はまだ調整が終わっていないので、再起動しても公開鍵の承認さえ維持されません。しかしそれは別の話です。
宛先と送信元の完全なパスを投稿できますか? – SilentMonk
リモートサーバーにrootアクセス権がありますか? –
命名規則は、それが一時ファイルであることを示します。あなたはそのファイルが常にそこにあると確信していますか?次のように:一時ファイルは、サーバー上の他のスクリプトによって定期的に作成(および定期的に削除)されます。 – grochmal