mirror of
https://github.com/octoleo/restic.git
synced 2024-11-22 04:45:15 +00:00
Merge pull request #4527 from adamantike/cmd/copy/prefix-hostname-to-snapshot-paths
cmd: Add hostname to snapshot display output
This commit is contained in:
commit
1604922360
@ -126,11 +126,12 @@ func runCopy(ctx context.Context, opts CopyOptions, gopts GlobalOptions, args []
|
|||||||
if sn.Original != nil {
|
if sn.Original != nil {
|
||||||
srcOriginal = *sn.Original
|
srcOriginal = *sn.Original
|
||||||
}
|
}
|
||||||
|
|
||||||
if originalSns, ok := dstSnapshotByOriginal[srcOriginal]; ok {
|
if originalSns, ok := dstSnapshotByOriginal[srcOriginal]; ok {
|
||||||
isCopy := false
|
isCopy := false
|
||||||
for _, originalSn := range originalSns {
|
for _, originalSn := range originalSns {
|
||||||
if similarSnapshots(originalSn, sn) {
|
if similarSnapshots(originalSn, sn) {
|
||||||
Verboseff("\nsnapshot %s of %v at %s)\n", sn.ID().Str(), sn.Paths, sn.Time)
|
Verboseff("\n%v\n", sn)
|
||||||
Verboseff("skipping source snapshot %s, was already copied to snapshot %s\n", sn.ID().Str(), originalSn.ID().Str())
|
Verboseff("skipping source snapshot %s, was already copied to snapshot %s\n", sn.ID().Str(), originalSn.ID().Str())
|
||||||
isCopy = true
|
isCopy = true
|
||||||
break
|
break
|
||||||
@ -140,7 +141,7 @@ func runCopy(ctx context.Context, opts CopyOptions, gopts GlobalOptions, args []
|
|||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Verbosef("\nsnapshot %s of %v at %s)\n", sn.ID().Str(), sn.Paths, sn.Time)
|
Verbosef("\n%v\n", sn)
|
||||||
Verbosef(" copy started, this may take a while...\n")
|
Verbosef(" copy started, this may take a while...\n")
|
||||||
if err := copyTree(ctx, srcRepo, dstRepo, visitedTrees, *sn.Tree, gopts.Quiet); err != nil {
|
if err := copyTree(ctx, srcRepo, dstRepo, visitedTrees, *sn.Tree, gopts.Quiet); err != nil {
|
||||||
return err
|
return err
|
||||||
|
@ -207,7 +207,7 @@ func runLs(ctx context.Context, opts LsOptions, gopts GlobalOptions, args []stri
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
printSnapshot = func(sn *restic.Snapshot) {
|
printSnapshot = func(sn *restic.Snapshot) {
|
||||||
Verbosef("snapshot %s of %v filtered by %v at %s):\n", sn.ID().Str(), sn.Paths, dirs, sn.Time)
|
Verbosef("%v filtered by %v:\n", sn, dirs)
|
||||||
}
|
}
|
||||||
printNode = func(path string, node *restic.Node) {
|
printNode = func(path string, node *restic.Node) {
|
||||||
Printf("%s\n", formatNode(path, node, lsOptions.ListLong, lsOptions.HumanReadable))
|
Printf("%s\n", formatNode(path, node, lsOptions.ListLong, lsOptions.HumanReadable))
|
||||||
|
@ -144,7 +144,7 @@ func runRepairSnapshots(ctx context.Context, gopts GlobalOptions, opts RepairOpt
|
|||||||
|
|
||||||
changedCount := 0
|
changedCount := 0
|
||||||
for sn := range FindFilteredSnapshots(ctx, snapshotLister, repo, &opts.SnapshotFilter, args) {
|
for sn := range FindFilteredSnapshots(ctx, snapshotLister, repo, &opts.SnapshotFilter, args) {
|
||||||
Verbosef("\nsnapshot %s of %v at %s)\n", sn.ID().Str(), sn.Paths, sn.Time)
|
Verbosef("\n%v\n", sn)
|
||||||
changed, err := filterAndReplaceSnapshot(ctx, repo, sn,
|
changed, err := filterAndReplaceSnapshot(ctx, repo, sn,
|
||||||
func(ctx context.Context, sn *restic.Snapshot) (restic.ID, error) {
|
func(ctx context.Context, sn *restic.Snapshot) (restic.ID, error) {
|
||||||
return rewriter.RewriteTree(ctx, repo, "/", *sn.Tree)
|
return rewriter.RewriteTree(ctx, repo, "/", *sn.Tree)
|
||||||
|
@ -290,7 +290,7 @@ func runRewrite(ctx context.Context, opts RewriteOptions, gopts GlobalOptions, a
|
|||||||
|
|
||||||
changedCount := 0
|
changedCount := 0
|
||||||
for sn := range FindFilteredSnapshots(ctx, snapshotLister, repo, &opts.SnapshotFilter, args) {
|
for sn := range FindFilteredSnapshots(ctx, snapshotLister, repo, &opts.SnapshotFilter, args) {
|
||||||
Verbosef("\nsnapshot %s of %v at %s)\n", sn.ID().Str(), sn.Paths, sn.Time)
|
Verbosef("\n%v\n", sn)
|
||||||
changed, err := rewriteSnapshot(ctx, repo, sn, opts)
|
changed, err := rewriteSnapshot(ctx, repo, sn, opts)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return errors.Fatalf("unable to rewrite snapshot ID %q: %v", sn.ID().Str(), err)
|
return errors.Fatalf("unable to rewrite snapshot ID %q: %v", sn.ID().Str(), err)
|
||||||
|
@ -94,11 +94,11 @@ example from a local to a remote repository, you can use the ``copy`` command:
|
|||||||
repository d6504c63 opened successfully, password is correct
|
repository d6504c63 opened successfully, password is correct
|
||||||
repository 3dd0878c opened successfully, password is correct
|
repository 3dd0878c opened successfully, password is correct
|
||||||
|
|
||||||
snapshot 410b18a2 of [/home/user/work] at 2020-06-09 23:15:57.305305 +0200 CEST)
|
snapshot 410b18a2 of [/home/user/work] at 2020-06-09 23:15:57.305305 +0200 CEST by user@kasimir
|
||||||
copy started, this may take a while...
|
copy started, this may take a while...
|
||||||
snapshot 7a746a07 saved
|
snapshot 7a746a07 saved
|
||||||
|
|
||||||
snapshot 4e5d5487 of [/home/user/work] at 2020-05-01 22:44:07.012113 +0200 CEST)
|
snapshot 4e5d5487 of [/home/user/work] at 2020-05-01 22:44:07.012113 +0200 CEST by user@kasimir
|
||||||
skipping snapshot 4e5d5487, was already copied to snapshot 50eb62b7
|
skipping snapshot 4e5d5487, was already copied to snapshot 50eb62b7
|
||||||
|
|
||||||
The example command copies all snapshots from the source repository
|
The example command copies all snapshots from the source repository
|
||||||
@ -193,18 +193,18 @@ the unwanted files from affected snapshots by rewriting them using the
|
|||||||
$ restic -r /srv/restic-repo rewrite --exclude secret-file
|
$ restic -r /srv/restic-repo rewrite --exclude secret-file
|
||||||
repository c881945a opened (repository version 2) successfully, password is correct
|
repository c881945a opened (repository version 2) successfully, password is correct
|
||||||
|
|
||||||
snapshot 6160ddb2 of [/home/user/work] at 2022-06-12 16:01:28.406630608 +0200 CEST)
|
snapshot 6160ddb2 of [/home/user/work] at 2022-06-12 16:01:28.406630608 +0200 CEST by user@kasimir
|
||||||
excluding /home/user/work/secret-file
|
excluding /home/user/work/secret-file
|
||||||
saved new snapshot b6aee1ff
|
saved new snapshot b6aee1ff
|
||||||
|
|
||||||
snapshot 4fbaf325 of [/home/user/work] at 2022-05-01 11:22:26.500093107 +0200 CEST)
|
snapshot 4fbaf325 of [/home/user/work] at 2022-05-01 11:22:26.500093107 +0200 CEST by user@kasimir
|
||||||
|
|
||||||
modified 1 snapshots
|
modified 1 snapshots
|
||||||
|
|
||||||
$ restic -r /srv/restic-repo rewrite --exclude secret-file 6160ddb2
|
$ restic -r /srv/restic-repo rewrite --exclude secret-file 6160ddb2
|
||||||
repository c881945a opened (repository version 2) successfully, password is correct
|
repository c881945a opened (repository version 2) successfully, password is correct
|
||||||
|
|
||||||
snapshot 6160ddb2 of [/home/user/work] at 2022-06-12 16:01:28.406630608 +0200 CEST)
|
snapshot 6160ddb2 of [/home/user/work] at 2022-06-12 16:01:28.406630608 +0200 CEST by user@kasimir
|
||||||
excluding /home/user/work/secret-file
|
excluding /home/user/work/secret-file
|
||||||
new snapshot saved as b6aee1ff
|
new snapshot saved as b6aee1ff
|
||||||
|
|
||||||
@ -247,7 +247,7 @@ This is possible using the ``rewrite`` command with the option ``--new-host`` fo
|
|||||||
repository b7dbade3 opened (version 2, compression level auto)
|
repository b7dbade3 opened (version 2, compression level auto)
|
||||||
[0:00] 100.00% 1 / 1 index files loaded
|
[0:00] 100.00% 1 / 1 index files loaded
|
||||||
|
|
||||||
snapshot 8ed674f4 of [/path/to/abc.txt] at 2023-11-27 21:57:52.439139291 +0100 CET)
|
snapshot 8ed674f4 of [/path/to/abc.txt] at 2023-11-27 21:57:52.439139291 +0100 CET by user@kasimir
|
||||||
setting time to 1999-01-01 11:11:11 +0100 CET
|
setting time to 1999-01-01 11:11:11 +0100 CET
|
||||||
setting host to newhost
|
setting host to newhost
|
||||||
saved new snapshot c05da643
|
saved new snapshot c05da643
|
||||||
|
@ -153,7 +153,7 @@ command will automatically remove the original, damaged snapshots.
|
|||||||
|
|
||||||
$ restic repair snapshots --forget
|
$ restic repair snapshots --forget
|
||||||
|
|
||||||
snapshot 6979421e of [/home/user/restic/restic] at 2022-11-02 20:59:18.617503315 +0100 CET)
|
snapshot 6979421e of [/home/user/restic/restic] at 2022-11-02 20:59:18.617503315 +0100 CET by user@host
|
||||||
file "/restic/internal/fuse/snapshots_dir.go": removed missing content
|
file "/restic/internal/fuse/snapshots_dir.go": removed missing content
|
||||||
file "/restic/internal/restorer/restorer_unix_test.go": removed missing content
|
file "/restic/internal/restorer/restorer_unix_test.go": removed missing content
|
||||||
file "/restic/internal/walker/walker.go": removed missing content
|
file "/restic/internal/walker/walker.go": removed missing content
|
||||||
|
@ -96,7 +96,7 @@ func ForAllSnapshots(ctx context.Context, be Lister, loader LoaderUnpacked, excl
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (sn Snapshot) String() string {
|
func (sn Snapshot) String() string {
|
||||||
return fmt.Sprintf("<Snapshot %s of %v at %s by %s@%s>",
|
return fmt.Sprintf("snapshot %s of %v at %s by %s@%s",
|
||||||
sn.id.Str(), sn.Paths, sn.Time, sn.Username, sn.Hostname)
|
sn.id.Str(), sn.Paths, sn.Time, sn.Username, sn.Hostname)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user