qdumpfs 1.8.1 → 1.8.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 84137d9c47fc2201cb2bfc18f8faaa470a3e019d0c17b88990c80e16964f0cbd
4
- data.tar.gz: abf643910675dca1d31b37eb621db10ba16b612cb3f8626c13a94d0c9b958519
3
+ metadata.gz: fdc68ddb0a3016a375adc9e55b92547ea98f9bf1af05bc5fed20a6dbe8cb26e1
4
+ data.tar.gz: c20bd623f45e39e22c05dd5b7e314f0b24799d567a8d5ac21e94cf9b06e93400
5
5
  SHA512:
6
- metadata.gz: cec209e60e35e2d8f791b3fd7de687b148d53f3a17a7ffac0c6802b8808f3c3cbd1aa00b59e3d4951766e76f878bd6c7cef25587d1131485c1e9f7388e9f1b46
7
- data.tar.gz: 26f587244ecefe4198e52d6ebe6e2c33905dedf1d9df95a4e7a553aed9d1f725adce8337c40b9c7db52d263cf7a152c57e803fe8f65c1eeaea19f23b2947c7bf
6
+ metadata.gz: 2c57a00118b6da4621fd3037c217969819c12103d3540851ca3ee3ea6ae1592229ca9453285055a8171e229a9c3e165a017b291f402e2142b3f07cec7a27a6f3
7
+ data.tar.gz: 86bc15230254cb36a429d53dbb13f2e56a72b1f3cbf6caced5fbdf3c729c6bcf4720d4fd8ef9c009d95f32c66401fa4a70180d00da2820b7bc3626328ac43edf
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- qdumpfs (1.8.1)
4
+ qdumpfs (1.8.2)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
data/README.md CHANGED
@@ -68,6 +68,13 @@ qdumpfs --command=sync --limit=1 /backup1 /backup2
68
68
  qdumpfs --command=sync --limit=1 --keep=5Y6M7W10D backup1 /backup2
69
69
  ```
70
70
 
71
+ バックアップの同期は、コピー先の最新の日付より新しいコピー元を選択して実行されます。これはバックアップの同期が途中で中断された場合、再開することができるようにするためです。
72
+ 例えばコピー先に2024/11/01のバックアップが存在する場合、コピー元の2024/11/01より後のバックアップデータ(例えば2024/11/02)があれば、それが同期されます(同じ日付は同期されません)。
73
+
74
+
75
+ ```
76
+
77
+
71
78
  ### バックアップフォルダの削除
72
79
 
73
80
  "--command expire"で、"--keep="パターンに該当しないバックアップを削除できます。
@@ -184,18 +184,24 @@ module Qdumpfs
184
184
  end
185
185
  else
186
186
  # 何も指定されていない場合
187
- if type == 'new_file' || type == 'symlink'
187
+ if type == 'new_file'
188
188
  stat = File.stat(filename)
189
189
  size = stat.size
190
190
  msg = format_report(type, filename, size)
191
+ elsif type == 'symlink'
192
+ # symlinkの場合File.statでエラーが発生する場合があるので使わない。
193
+ msg = format_report(type, filename, 0)
191
194
  end
192
195
  end
193
196
  log(msg)
194
197
  end
195
198
 
196
- def report_error(filename, reason)
197
- msg = sprintf("err_file\t%s\t%s\n", filename, reason)
199
+ def report_error(filename, ex)
200
+ msg = sprintf("err_file\t%s\t%s\n", filename, ex.message)
198
201
  log(msg)
202
+ ex.backtrace.each do |line|
203
+ log(line)
204
+ end
199
205
  end
200
206
 
201
207
  def log(msg, console = true)
@@ -1,4 +1,4 @@
1
1
  module Qdumpfs
2
- VERSION = "1.8.1"
2
+ VERSION = "1.8.2"
3
3
  end
4
4
 
data/lib/qdumpfs.rb CHANGED
@@ -125,8 +125,8 @@ module Qdumpfs
125
125
  @opt.report(type, file_name)
126
126
  end
127
127
 
128
- def report_error(file_name, reason)
129
- @opt.report_error(file_name, reason)
128
+ def report_error(file_name, exception)
129
+ @opt.report_error(file_name, exception)
130
130
  end
131
131
 
132
132
  def update_file(src, latest, today)
@@ -197,7 +197,7 @@ module Qdumpfs
197
197
  update_file(s, l, t)
198
198
  dirs[t] = File.stat(s) if File.ftype(s) == "directory"
199
199
  rescue => e
200
- report_error(s, e.message)
200
+ report_error(s, e)
201
201
  @error_files << [s, e.message]
202
202
  next
203
203
  end
@@ -234,7 +234,7 @@ module Qdumpfs
234
234
  chown_if_root(type, s, t)
235
235
  dirs[t] = File.stat(s) if File.ftype(s) == "directory"
236
236
  rescue => e
237
- report_error(s, e.message)
237
+ report_error(s, e)
238
238
  @error_files << [s, e.message]
239
239
  next
240
240
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: qdumpfs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.1
4
+ version: 1.8.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - src
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2024-11-06 00:00:00.000000000 Z
11
+ date: 2024-11-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler