ssh user@source_server 'tar c --use-compress-prog=pbzip2 -C /source/dir .' | tar x --use-compress-prog=pbzip2
А вот вариант, когда команда запускается на стороне отправителя:
# Находимся в исходной директории
tar c --use-compress-prog=pbzip2 . | ssh user@target_server 'tar x --use-compress-prog=pbzip2 -C /target/dir'
tar cf — /source | pv -trab -B 500M | (cd /destination; tar xf -)
Можно добавить ко второму tar модификаторы:
p — попытка полного воссоздания прав (default для пользователя root)
S — восстанавливать файлы как разреженные (если на источнике есть такие файлы, то убыстряет)
k — не переписывать файлы, если они есть на приёмнике
Во время копирования показывается объём файлов, время, текущая скорость, средняя скорость копирования.
При копировании 700GB c reiserfs на ntfs-3g достигнут результат:
700GiB 5:17:19 [37,7MiB/s] [37,7MiB/s]
tar -axvf /shares/Public/twonky_backup.tar.xz -C / .
вот так распаковываю архив в скрипте, а оно распаковывает с правами для папок 775, а не 755. из-за чего это может быть? читал доку, так и не понял что надо чтобы оно ориентировалось на маску дестинейшена при распаковке а не на то что в него туда запаковано, хотя, по идее, запаковано ровно то же самое...
Извлекается от рута в корень... куда копнуть?
сабж: нужно создать архив, в котором будет только структура директорий, находящихся внутри какой-либо.
например есть директория test1, внутри нее test2 и test3. Нужен архив в котором при открытии будут только директории 2 и 3, без "корневой" 1.
Расшифровка. Хочу создать бекапчик некоей проги, которую для восстановления нужно будет всего-лишь распаковать в корень системы, но не получается, в архив попадает совершенно ненужная test1 как вершина иерархии пакуемых директорий.
В общем, подскажите как сделать правильно :)
стабильно надежно, чо:
srvsec plugins # wget docs.cacti.net
--2011-09-27 10:30:54-- docs.cacti.net
Resolving docs.cacti.net... 173.225.179.10
Connecting to docs.cacti.net|173.225.179.10|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 1063681 (1.0M) [application/octet-stream]
Saving to: “plugin:aggregate-v0.75.tgz”
100%[===================================================================>] 1,063,681 112K/s in 9.3s
2011-09-27 10:31:04 (112 KB/s) — “plugin:aggregate-v0.75.tgz” saved [1063681/1063681]
srvsec plugins # tar xvvzf plugin\:aggregate-v0.75.tgz
tar (child): Cannot connect to plugin: resolve failed
gzip: stdin: unexpected end of file
tar: Child returned status 128
tar: Error is not recoverable: exiting now
srvsec plugins # mv plugin\:aggregate-v0.75.tgz aggregate-v0.75.tgz
srvsec plugins # tar xvvzf aggregate-v0.75.tgz
drwxrwxr-x reinhard/reinhard 0 2010-09-19 00:38 aggregate/
-rw-rw-r-- reinhard/reinhard 18952 2010-09-11 14:45 aggregate/setup.php
-rw-rw-r-- reinhard/reinhard 29450 2010-09-05 23:16 aggregate/aggregate_functions.php
-rw-rw-r-- reinhard/reinhard 10555 2010-07-12 01:01 aggregate/color_templates_items.php
-rw-rw-r-- reinhard/reinhard 31534 2010-09-11 17:46 aggregate/aggregate.php
-rw-rw-r-- reinhard/reinhard 19264 2010-08-01 22:40 aggregate/color_templates.php
-rw-rw-r-- reinhard/reinhard 7615 2010-09-11 14:45 aggregate/README
-rw-rw-r-- reinhard/reinhard 1124434 2010-09-19 00:38 aggregate/aggregate_manual.pdf
-rw-rw-r-- reinhard/reinhard 15237 2010-04-09 12:23 aggregate/LICENSE
-rw-rw-r-- reinhard/reinhard 4669 2010-04-09 12:23 aggregate/color_html.php
srvsec plugins #
mac:archive kblcuk$ time tar xzf archive.tar.gz
real 1m19.125s
user 0m0.187s
sys 1m8.534s
kblcuk@virtual-ubunutu:~$ time tar xzf archive.tar.gz
real 0m0.570s
user 0m0.164s
sys 0m0.620s
Time того же архива, но в расшаренной папке, даёт примерно такое же время (1 минута с копейками) как и на маке. Единственная разница, которую вижу – hfs+ на маковском диске, и ext3 на виртуальной убунте (ну и разные версии tar и gzip – но до этого как-то никогда не думал, что там осталось ещё что оптимизировать). Собственно вопрос – каким образом файловая система может повлиять на скорость разархивирования архива?
midnight-commander.org вот, собственно, новый патч, исправляющий открытие tar.xz. Обычные tarы тоже открываются. А вот как поправить автоопределение lzma, созданных при помощи lzma из пакета core/xz-utils ума не приложу. Раньше mc определял этот формат, но этим была вызвана бага midnight-commander.org Как вообще этот lzma новый определять — непонятно. Ну можно было быопределять не по сигнатурам а по суффиксу имени файла. Но все-таки у любого формата должны быть сигнатуры. Так что косяк с производителей lzma (старый lzma, кстати, имел сигнатуры)