2017-03-01 5 views
1

lsyncdを使用して、変更されたファイルのバックアップを作成することはできません。サフィックスとして日付/時刻文字列を使用します。 luaを使用してlsyncd.confファイルのsuffixオプションを設定すると、デーモンを開始すると日付/時刻が1回計算され、各回の繰り返しで日付/時刻は更新されません。 これは、変更された各ファイル(同じ接尾辞付き)ごとに1つのバックアップファイルを作成することにつながります。ファイルごとに変更ごとに新しいバックアップファイルを作成したいと考えています。 私が使用して設定ファイルは以下の通りです:lsyncd cantは動的バックアップサフィックスを使用します

-- global settings 
settings { 
    delay  = 5, 
    maxProcesses = 5, 
    statusFile = "<STATUS_FILE_PATH>", 
    logfile  = "<LOG_FILE_PATH>", 
    insist  = true 
} 

-- target nodes 
nodes = { 
{ source = "/home/<USER>/sync", target = "<TARGET_IP>:/home/<USER>/sync"}, 
} 

-- execution 
time = os.date("*t") 
datetime = (time.year .. time.month .. time.day .. time.hour .. time.min .. time.sec) 
for _, node in ipairs(nodes) do 
    sync { 
    default.rsync, 
    source = node.source, 
    target = node.target, 
    rsync = { 
     compress = true, 
     checksum = true, 
     perms  = true, 
     rsh  = "/usr/bin/ssh -i /home/<USER>/.ssh/id_dsa -o StrictHostKeyChecking=no", 
     times  = true, 
     verbose = true, 
     _extra = { "--backup", "--suffix=" .. datetime }, 
    } 
    } 
end 

私はこのような、接尾辞オプションではbashの日付関数を渡すしよう:それは計算せずに文字列に変換され

_extra = { "--backup", "--suffix=_$(date +\"%Y%m%d%H%M%S\")" }, 

このような名前でバックアップファイルにつながる値は、:

testfile.txt_$(date +"%Y%m%d%H%M%S") 

私はlsyncdの2.1.4バージョンを使用することに限定されています。 動的バックアップファイルのサフィックスを作成することはできますか?

答えて

0

テストされていません。しかし、この

--suffix = `日付+ "%F"`

+0

が動作しないを試してみてください。ファイルは次のように保存されます:testfile.txt'date + "%F" ' –

関連する問題