Вот решение для Perl с помощью Сети:: FTP. Ниже сценария должен распечатать имя файла и метку времени для каждого файла в файловом сервере. Можно легко расширить это для удовлетворения фактическим потребностям.
#!/usr/bin/perl use strict; use Net::FTP; use File::Listing qw(parse_dir); use POSIX qw(strftime); # Configuration Options my $FTP_SERVER = 'ftp_host_name'; my $FTP_USER = 'username'; my $FTP_PASS = 'password'; # Establish FTP connection my $ftp = Net::FTP->new( $FTP_SERVER, Debug => 0 ) or die "Cannot connect to $FTP_SERVER: $@"; $ftp->login( $FTP_USER, $FTP_PASS ) or die "Cannot login ", $ftp->message; $ftp->binary; # Get list of files my $files = $ftp->dir; foreach my $entry (parse_dir($files)) { my ($fileName, $type, $size, $mtime, $mode) = @$entry; next unless $type eq 'f'; my $timeStamp = strftime "%Y-%m-%d %H:%M:%S", gmtime($mtime); print "Name: $fileName\t Time Stamp: $timeStamp\n"; } $ftp->quit;
При создании VM Вы создаете виртуальный диск также. Этот диск может иметь фиксированный размер или динамично расширение. В первом случае файл не вырастет в последнем случае, файл имеет небольшой размер при запуске и вырастет по мере необходимости VM к максимальному размеру виртуального диска. Динамично расширяющийся диск может быть уплотнен с помощью шагов ответа Lukas.
То, когда Вы берете снимок, VBox создают новый файл, в котором все изменения будут, записало вместо исходного файла виртуального диска. Этот новый файл вырастет по мере необходимости до максимального размера виртуального диска. При взятии другого снимка в какой-то момент этот файл прекратит расти, VBox создаст другой файл, который вырастет на его очередь.
Если Вам не нужны снимки, то можно удалить их, данные будут фиксироваться в исходном файле виртуального диска (или исходный файл снимка в случае последовательных снимков.) Просто останавливают VM, выбирают снимок, Вы хотите удалить, использовать кнопку с Красным Крестом на вкладке снимков. Может требоваться много времени, в зависимости от объема данных в снимке.
Значок со стрелкой вверх должен восстановить снимок (и забыть все данные, измененные начиная с shapshot даты).
Можно использовать мой сценарий, чтобы скопировать и восстановить снимок и затем уплотнить его жесткий диск с:
sdelete -c C
на госте (загружают sdelete с http:// technet.microsoft.com/en-us/sysinternals/bb897443.aspx), который обнуляет свободное пространство. Я не знаю эквивалентный Linux (возможно, dd?).VBoxManage modifyhd winxp.vdi --compact
на хосте