projects
/
vmdk-backup
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3a73f64
)
create swap
author
Dobrica Pavlinusic
<dpavlin@rot13.org>
Thu, 2 Oct 2014 11:41:03 +0000
(13:41 +0200)
committer
Dobrica Pavlinusic
<dpavlin@rot13.org>
Thu, 2 Oct 2014 11:42:00 +0000
(13:42 +0200)
vmdk-backup.pl
patch
|
blob
|
history
diff --git
a/vmdk-backup.pl
b/vmdk-backup.pl
index
0205997
..
068325f
100755
(executable)
--- a/
vmdk-backup.pl
+++ b/
vmdk-backup.pl
@@
-116,14
+116,19
@@
mkdir $tmp unless -d $tmp;
my @umount;
my @umount;
+sub dev_to_backup {
+ my $dev = shift;
+ $dev =~ s{/dev/$sda}{/dev/mapper/nbd0p} ||
+ $dev =~ s{/dev/mapper/.+-([^-]+)}{/dev/mapper/$vg_backup-$1} ||
+ die "can't map $dev to new backup device!";
+ return $dev;
+}
+
foreach my $mount ( @mounts ) {
my ( $dev, $path, $fs ) = @$mount;
if ( exists $blks->{$dev} ) {
warn "working on $dev $path $fs\n";
foreach my $mount ( @mounts ) {
my ( $dev, $path, $fs ) = @$mount;
if ( exists $blks->{$dev} ) {
warn "working on $dev $path $fs\n";
- my $dev_backup = $dev;
- $dev_backup =~ s{/dev/$sda}{/dev/mapper/nbd0p} ||
- $dev_backup =~ s{/dev/mapper/.+-([^-]+)}{/dev/mapper/$vg_backup-$1} ||
- die "can't map $dev to new backup device!";
+ my $dev_backup = dev_to_backup($dev);
my $label = $blks->{$dev}->{LABEL};
$label = $label ? "-L $label" : '';
sh "mkfs.$fs $label $dev_backup";
my $label = $blks->{$dev}->{LABEL};
$label = $label ? "-L $label" : '';
sh "mkfs.$fs $label $dev_backup";
@@
-140,7
+145,13
@@
foreach my $mount ( @mounts ) {
chdir '/';
chdir '/';
-warn "FIXME create swap\n";
+if ( my $swap = (grep { $blks->{$_}->{TYPE} eq 'swap' } keys %$blks)[0] ) {
+ my $dev = dev_to_backup($swap);
+ my $label = $blks->{$swap}->{LABEL};
+ $label = $label ? "-L $label" : '';
+ warn "create swap on $dev\n";
+ sh "mkswap $label $dev";
+}
warn "cleanup...\n";
warn "cleanup...\n";