BillHung.Net


powered by FreeFind     sms

sitecopy Command Reference

25 Mar 2007

My Setting

~./sitecopyrc

#サイト名
site linux
#サーバ名
server <FTP URL>
#ユーザー名
username <FTP user name>
#パスワード
password <FTP password>
#サーバ上のパス
remote /
#ローカルのパス
local /home/billh/web/
#URL
#url http://www.example.com/
#プロトコル
protocol ftp
#passiveモードを使用しない場合は下のコメントを外す。
#ftp nopasv
#ファイルの変更をチェックサムを使って確認する
state timesize
#パーミッションをローカルと同じにする
permissions all
#ローカルでファイルの移動があった場合、サーバのファイルも移動する
checkmoved
#~/public_html/directory/以下をアップロードしない。(実際に使うときはコメントを外す)
#exclude /directory
#bkpという拡張子を持つファイルをアップロードしない。(実際に使うときはコメントを外す)
#exclude *.bkp
		

Commands

sitecopy -i linux
sitecopy: Initializing site 'linux' (on <FTP url> in /)
sitecopy: All the files and directories are marked as NOT updated remotely

sitecopy -u linux
sitecopy: Updating site 'linux' (on <FTP url> in /)

sitecopyで楽々サイト更新

Source: http://0x100.com/FreeBSD/sitecopy.html

 

導入

このサイトのコンテンツは一度自宅サーバにアップロードして確認し、それからホスティング業者のサーバに転送しています。その際、両方ともクライアントマシンからアップロードしていたのですが、自動的に自宅サーバとホスティング業者でデータを同期させようと思いsitecopyを導入しました。以下設定メモ。

インストール

  1. cd /usr/ports/www/sitecopy
  2. make install
  3. make clean

設定

  1. mkdir -m 700 ~/.sitecopy
  2. touch ~/.sitecopyrc
  3. chmod 600 ~/.sitecopyrc
  4. vi ~/.sitecopyrc

設定ファイル ~./sitecopyrc

#サイト名
site example
#サーバ名
server ftp.example.com
#ユーザー名
username hogehoge
#パスワード
password pass
#サーバ上のパス
remote ~/public_html/
#ローカルのパス
local /home/hogehoge/public_html/
#URL
url http://www.example.com/
#プロトコル
protocol ftp
#passiveモードを使用しない場合は下のコメントを外す。
#ftp nopasv
#ファイルの変更をチェックサムを使って確認する
state checksum
#パーミッションをローカルと同じにする
permissions all
#ローカルでファイルの移動があった場合、サーバのファイルも移動する
checkmoved
#~/public_html/directory/以下をアップロードしない。(実際に使うときはコメントを外す)
#exclude /directory
#bkpという拡張子を持つファイルをアップロードしない。(実際に使うときはコメントを外す)
#exclude *.bkp

初めての実行

ローカルとサーバの間で既に同期が取れている場合
sitecopy -c example
サーバにはまだ何も転送していない状態で、サーバにデータをアップロードし同期を取る場合
sitecopy -i example
別のホストなどローカルにファイルがない環境で、サーバからデータをダウンロードし同期を取る場合
sitecopy -f example ; sitecopy -s example

上記のコマンドの内、exampleは.sitecopyrcに書いたサイト名を入力します。

サーバとの同期

sitecopy -u example と入力し実行すれば更新されたファイルのみアップロードされます。