どこでも検索した後、私は私の質問に対する特定の答えを見つけることができませんでした。
Windowsには、 FTPbox というアプリケーションがあります。これは、設定された期間ごとにローカルフォルダーとftpフォルダーを自動的に同期します。
私の質問は、Ubuntuを使用して同じことをどのように達成するのですか?主なことは、ここで私が手動でそれをしなければならないことです。それは、人間の介入を必要としない完全に自動化されたプロセスである必要があります(明らかに、そのクラスが人間の介入LOLである場合、これを設定する必要があります)。
有益な回答を期待して感謝します。
-エドワード
最初の解決策
インストールlftp
Sudo apt-get install lftp
その後、スクリプトを作成します
#!/bin/bash
Host='mysite.com'
USER='myuser'
PASS='myuser'
TARGETFOLDER='/new'
SOURCEFOLDER='/home/myuser/backups'
lftp -f "
open $Host
user $USER $PASS
lcd $SOURCEFOLDER
mirror --reverse --delete --verbose $SOURCEFOLDER $TARGETFOLDER
bye
"
upload.sh
という名前の場所に保存します。 +x
許可を与えます。
Sudo chmod +x /path_to_script/upload.sh
crontab
期間ごとにこのコマンドを実行するようにx
を設定します
Crontabの実行を編集するため
crontab -e
5分ごとにコマンドを実行するためのコードは
*/5 * * * * /path_to_script/upload.sh
毎時間
0 */1 * * * /path_to_script/upload.sh
午前4時に実行する
0 4 * * * /path_to_script/upload.sh
ソリューション2
LFTP
が読み取れるlftp-script
という小さな簡単なスクリプトを作成します。
open ftp://username:[email protected]
mirror -v --only-newer /home/local/path/ /website.com/public_html/
最後に、LFTP
を実行して、同期を開始できます。私が書くがコマンドを置くようにcrontabを設定する
lftp -f /path/to/lftp-script
このようなもの
*/5 * * * * lftp -f /path/to/lftp-script
ソリューション
インストールcurlftpfs
Sudo apt-get install curlftpfs
fTPをローカルにマウントするために必要なことは、これらのコマンドを実行してdirを作成することです。
mkdir hostr
リモートftpディレクトリをローカルにマウントします
Sudo curlftpfs -o allow_other ftp://user:[email protected] Host
user:passは、ftpアカウントにログインするためのユーザー名とパスワードです。
次の行を使用して、自動マウントのためにcurlftpfs
をfstab
に追加できます。
curlftpfs#user:[email protected] /mnt/Host Fuse rw,uid=500,user,noauto 0 0