qdumpfs 1.7.0 → 1.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/.idea/qdumpfs.iml +9 -9
- data/Gemfile.lock +6 -4
- data/README.md +48 -2
- data/build.sh +14 -8
- data/lib/qdumpfs/option.rb +1 -1
- data/lib/qdumpfs/util.rb +3 -2
- data/lib/qdumpfs/version.rb +1 -1
- data/lib/qdumpfs.rb +3 -0
- data/run2_qdumpfs.cmd +1 -1
- data/run_list.cmd +1 -1
- data/run_qdumpfs.cmd +1 -1
- data/run_sync.cmd +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 84137d9c47fc2201cb2bfc18f8faaa470a3e019d0c17b88990c80e16964f0cbd
|
|
4
|
+
data.tar.gz: abf643910675dca1d31b37eb621db10ba16b612cb3f8626c13a94d0c9b958519
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: cec209e60e35e2d8f791b3fd7de687b148d53f3a17a7ffac0c6802b8808f3c3cbd1aa00b59e3d4951766e76f878bd6c7cef25587d1131485c1e9f7388e9f1b46
|
|
7
|
+
data.tar.gz: 26f587244ecefe4198e52d6ebe6e2c33905dedf1d9df95a4e7a553aed9d1f725adce8337c40b9c7db52d263cf7a152c57e803fe8f65c1eeaea19f23b2947c7bf
|
data/.gitignore
CHANGED
data/.idea/qdumpfs.iml
CHANGED
|
@@ -32,24 +32,24 @@
|
|
|
32
32
|
</library>
|
|
33
33
|
</orderEntry>
|
|
34
34
|
<orderEntry type="module-library">
|
|
35
|
-
<library name="rake (v13.
|
|
35
|
+
<library name="rake (v13.2.0) [path][gem]" type="rubylib">
|
|
36
36
|
<properties>
|
|
37
37
|
<option name="version" value="4" />
|
|
38
38
|
</properties>
|
|
39
39
|
<CLASSES>
|
|
40
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.
|
|
41
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.
|
|
42
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.
|
|
40
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.2.0/doc" />
|
|
41
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.2.0/exe" />
|
|
42
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.2.0/lib" />
|
|
43
43
|
</CLASSES>
|
|
44
44
|
<JAVADOC />
|
|
45
45
|
<SOURCES>
|
|
46
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.
|
|
47
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.
|
|
48
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.
|
|
46
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.2.0/doc" />
|
|
47
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.2.0/exe" />
|
|
48
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.2.0/lib" />
|
|
49
49
|
</SOURCES>
|
|
50
50
|
<excluded>
|
|
51
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.
|
|
52
|
-
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.
|
|
51
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.2.0/doc" />
|
|
52
|
+
<root url="file://$MODULE_DIR$/vendor/bundle/ruby/3.1.0/gems/rake-13.2.0/exe" />
|
|
53
53
|
</excluded>
|
|
54
54
|
</library>
|
|
55
55
|
</orderEntry>
|
data/Gemfile.lock
CHANGED
|
@@ -1,17 +1,19 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
qdumpfs (1.
|
|
4
|
+
qdumpfs (1.8.1)
|
|
5
5
|
|
|
6
6
|
GEM
|
|
7
7
|
remote: https://rubygems.org/
|
|
8
8
|
specs:
|
|
9
|
-
minitest (5.
|
|
10
|
-
rake (13.2.
|
|
9
|
+
minitest (5.25.1)
|
|
10
|
+
rake (13.2.1)
|
|
11
11
|
|
|
12
12
|
PLATFORMS
|
|
13
13
|
x64-mingw32
|
|
14
14
|
x86_64-darwin-22
|
|
15
|
+
x86_64-darwin-23
|
|
16
|
+
x86_64-darwin-24
|
|
15
17
|
|
|
16
18
|
DEPENDENCIES
|
|
17
19
|
bundler (~> 2.0)
|
|
@@ -20,4 +22,4 @@ DEPENDENCIES
|
|
|
20
22
|
rake (>= 12.3.3)
|
|
21
23
|
|
|
22
24
|
BUNDLED WITH
|
|
23
|
-
2.
|
|
25
|
+
2.3.27
|
data/README.md
CHANGED
|
@@ -27,9 +27,12 @@ Options
|
|
|
27
27
|
|
|
28
28
|
## 実行例
|
|
29
29
|
|
|
30
|
+
### バックアップ
|
|
30
31
|
|
|
31
32
|
バックアップを実行する場合。
|
|
32
33
|
|
|
34
|
+
「qdumpfs コピー元 コピー先」でバックアップを作成することができます。コピー先が存在する場合差分バックアップとなります。
|
|
35
|
+
|
|
33
36
|
```
|
|
34
37
|
qdumpfs /home/foo /backup
|
|
35
38
|
```
|
|
@@ -40,31 +43,74 @@ qdumpfs /home/foo /backup
|
|
|
40
43
|
qdumpfs --command=backup /home/foo /backup
|
|
41
44
|
```
|
|
42
45
|
|
|
43
|
-
|
|
46
|
+
### バックアップフォルダの同期
|
|
47
|
+
|
|
48
|
+
バックアップフォルダを同期することもできます。バックアップディスクが手狭になり、新しいディスクに移行したい場合に便利です。
|
|
49
|
+
|
|
50
|
+
"--command sync"オプションを指定することでバックアップフォルダを同期できます。
|
|
51
|
+
|
|
44
52
|
```
|
|
45
53
|
qdumpfs --command=sync /backup1 /backup2
|
|
46
54
|
```
|
|
47
55
|
|
|
48
56
|
バックアップフォルダの同期には膨大な時間が必要な場合があるため、実行時間を制限できます。以下は例えば1時間に制限する場合です。
|
|
57
|
+
|
|
58
|
+
実行時間が1時間を超えるとそこで処理が終了しますそこから次回継続することができます。
|
|
59
|
+
|
|
49
60
|
```
|
|
50
61
|
qdumpfs --command=sync --limit=1 /backup1 /backup2
|
|
51
62
|
```
|
|
52
63
|
|
|
53
|
-
|
|
64
|
+
バックアップフォルダを間引きたい場合、"--keep="オプションを指定することができます。 "100Y12M12W30D"を指定すると、100年間は年に1つ、12ヶ月間は月に1つ、12週間は週に1つ、直近30日間のバックアップを保持します。
|
|
65
|
+
条件に該当しないバックアップは同期されません。
|
|
66
|
+
|
|
54
67
|
```
|
|
55
68
|
qdumpfs --command=sync --limit=1 --keep=5Y6M7W10D backup1 /backup2
|
|
56
69
|
```
|
|
57
70
|
|
|
71
|
+
### バックアップフォルダの削除
|
|
72
|
+
|
|
58
73
|
"--command expire"で、"--keep="パターンに該当しないバックアップを削除できます。
|
|
59
74
|
```
|
|
60
75
|
qdumpfs --command=expire --limit=1 --keep=5Y6M7W10D backup1 /backup2
|
|
61
76
|
```
|
|
62
77
|
|
|
78
|
+
|
|
79
|
+
### バックアップフォルダから指定パターンを削除
|
|
80
|
+
|
|
63
81
|
"--command delete"で、バックアップに存在する指定したパスを削除できます(間違えてバックアップした内容を削除したい場合などに使用)。
|
|
64
82
|
```
|
|
65
83
|
qdumpfs --command=delete --delete-dir=backup1 --limit=1 r:/backup2
|
|
66
84
|
```
|
|
67
85
|
|
|
86
|
+
### バックアップの比較
|
|
87
|
+
|
|
88
|
+
"--command verify"でバックアップを比較することができます。
|
|
89
|
+
|
|
90
|
+
```
|
|
91
|
+
qdumpfs --command=verify j:/backup/2024/11/01 k:/backup/2024/11/01
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
### バックアップファイルの一覧
|
|
95
|
+
|
|
96
|
+
"--command list"でバックアップファイルを一覧表示することができます。
|
|
97
|
+
|
|
98
|
+
```
|
|
99
|
+
qdumpfs --command=list j:/backup/2024/11/01
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
例えばverifyで異なる結果が表示された場合、listした結果をdiffすることができます。
|
|
103
|
+
|
|
104
|
+
```
|
|
105
|
+
qdumpfs --command=list j:/backup/2024/11/01
|
|
106
|
+
qdumpfs --command=list k:/backup/2024/11/01
|
|
107
|
+
diff list_j__backup_2024_11_01.txt list_k__backup_2024_11_01.txt
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
|
|
112
|
+
|
|
113
|
+
|
|
68
114
|
## License
|
|
69
115
|
|
|
70
116
|
qdumpfs is a free software with ABSOLUTELY NO WARRANTY under the terms of the GNU General Public License version 2.
|
data/build.sh
CHANGED
|
@@ -5,15 +5,21 @@ set -x
|
|
|
5
5
|
#export NOKOGIRI_USE_SYSTEM_LIBRARIES=1
|
|
6
6
|
|
|
7
7
|
bundle_dir=./vendor/bundle
|
|
8
|
-
|
|
8
|
+
bundle config --local path $bundle_dir
|
|
9
|
+
|
|
10
|
+
if [ "$1" = "clean" ]; then
|
|
11
|
+
echo "rm -rf $bundle_dir"
|
|
9
12
|
/bin/rm -rf "$bundle_dir"
|
|
10
|
-
|
|
13
|
+
/bin/rm Gemfile.lock
|
|
14
|
+
exit 0
|
|
15
|
+
fi
|
|
16
|
+
|
|
17
|
+
if [ -d "$bundle_dir" ] ; then
|
|
18
|
+
echo "bunlde update"
|
|
19
|
+
bundle update
|
|
20
|
+
bundle clean
|
|
11
21
|
else
|
|
22
|
+
echo "bundle install"
|
|
12
23
|
/bin/rm -rf "$bundle_dir"
|
|
13
|
-
bundle install
|
|
24
|
+
bundle install
|
|
14
25
|
fi
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
data/lib/qdumpfs/option.rb
CHANGED
data/lib/qdumpfs/util.rb
CHANGED
|
@@ -38,8 +38,9 @@ class File
|
|
|
38
38
|
begin
|
|
39
39
|
File.unlink(dest) if File.anything_exist?(dest)
|
|
40
40
|
File.symlink(src, dest)
|
|
41
|
-
rescue
|
|
42
|
-
puts "force_symlink fails #{src} #{dest}"
|
|
41
|
+
rescue => e
|
|
42
|
+
puts "force_symlink fails #{src} #{dest} #{e.message}"
|
|
43
|
+
# puts "File.symlink('#{src}', '#{dest}')"
|
|
43
44
|
end
|
|
44
45
|
end
|
|
45
46
|
|
data/lib/qdumpfs/version.rb
CHANGED
data/lib/qdumpfs.rb
CHANGED
|
@@ -428,6 +428,8 @@ module Qdumpfs
|
|
|
428
428
|
start_time = Time.now
|
|
429
429
|
log("##### verify start #{fmt(start_time)} #####")
|
|
430
430
|
|
|
431
|
+
src = @opt.src
|
|
432
|
+
dst = @opt.dst
|
|
431
433
|
src_count, dst_count = do_verify(src, dst)
|
|
432
434
|
|
|
433
435
|
fputs(file, "#{src}: #{src_count}")
|
|
@@ -508,6 +510,7 @@ module Qdumpfs
|
|
|
508
510
|
system("rmdir /S /Q #{win_backup_path}")
|
|
509
511
|
else
|
|
510
512
|
# Linux/macOSの場合
|
|
513
|
+
system("chmod -R u+w #{path}")
|
|
511
514
|
system("rm -rf #{path}")
|
|
512
515
|
end
|
|
513
516
|
end
|
data/run2_qdumpfs.cmd
CHANGED
data/run_list.cmd
CHANGED
data/run_qdumpfs.cmd
CHANGED
data/run_sync.cmd
CHANGED
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.
|
|
4
|
+
version: 1.8.1
|
|
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
|
+
date: 2024-11-06 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: bundler
|
|
@@ -127,7 +127,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
127
127
|
- !ruby/object:Gem::Version
|
|
128
128
|
version: '0'
|
|
129
129
|
requirements: []
|
|
130
|
-
rubygems_version: 3.3.
|
|
130
|
+
rubygems_version: 3.3.27
|
|
131
131
|
signing_key:
|
|
132
132
|
specification_version: 4
|
|
133
133
|
summary: qdumpfs
|